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