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