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