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