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