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