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