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