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