### # #### ### ### ### #########
# ## ### # ## # ## #
# ## ### # ## # ##
# # # ## # ## ##
# # ## # ## # ##
# # ## # ## # ##
## # ## # ## ## #
#### # ## # #### ## #
#### # ## # ### ######
#### # ## # ### ## #
### # ## # # ##
## # ## # # ##
### # ### # ##
## # ### # ##
## # ### # ##
# # # ## # ##
## # # ## # ##
## # # ## # ## #
# ##### ### # ### #########