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