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