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