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