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