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