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