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