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