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