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