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