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