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