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