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