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