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