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