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