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