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