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