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