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