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