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