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