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