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