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