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