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