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