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