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