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