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