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