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