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