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