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