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