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