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