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