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