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