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