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