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