```````                                                                        
                                                                `,:;ii*********ii;:,`                                                                 
                                                           `.:i*++++***************++*i:.`                                                            
                                                        `,i+++++++++*******************+++i,`                                                         
                                                      ,i+#++++++++++********************+++++i,`                                                      
                                                   `:+##++++++++++++*******************+++++++#+;`                                                    
                                                 `;#####+++++++++++++*****************++++++++++##i`                                                  
                                                :#z######++++++++++++*****************+++++++++++###;`                                                
                                              ,#z########+++++++++++++***************++++++++++++++###,                                               
                                            `iz##########++++++++++++++**************+++++++++++++####z*`                                             
                                           ,#z###########+++++++++++++++************++++++++++++++#######:                                            
                                         `izzz############++++++++++++++**********+++++++++++++++########zi`                                          
                                        `+zzzz#############++++++++++++++++++++++++++++++++++++++#########z+`                                         
                                       .#zzzzzz#############++++++++++++++++++++++++++++++++++++###########z#,                                        
                                      ,zzzzzzz#############+++++++++++++++++++++++++++++++++++++############zz:                                       
                                     ,zzzzzzzzz##############++++++++++++++++++++++++++++++++++#############zzz:                                      
                                    :zzzzzzzzzz###############++++++++++++++++++++++++++++++++###############zzz:                                     
                                   ,zzzzzzzzzzzz##############+++++++++++++++++++++++++++++++##############zzzzzz:                                    
                                  ,zzzzzzzzzzzzzz##############+++++++++++++++++++++++++++++###############zzzzzzz,                                   
                                 .zzzzzzzzzzzzzzz###############+++++++++++++++++++++++++++###############zzzzzzzzz.                                  
                                `#nzzzzzzzzzzzzzz#################+++++++++++++++++++++++#################zzzzzzzzz#`                                 
                                *nnnzzzzzzzzzzzzzz#################+++++++++++++++++++++##################zzzzzzzzzz+`                                
                               ;nnnnzzzzzzzzzzzzzzz#################+#+++++++++++++++++#################zzzzzzzzzzzzni                                
                              .nnnnnnzzzzzzzzzzzzzzz###################++++++++++++#####################zzzzzzzzzzzzzz,                               
                              *nnnnnnnzzzzzzzzzzzzzz########################+++########################zzzzzzzzzzzzzzz#`                              
                             ,#nnnnnnnnzzzzzzzzzzzzzz##################################################zzzzzzzzzzzzzzzni                              
                            `+zznnnnnnnzzzzzzzzzzzzzzz###############################################zzzzzzzzzzzzzzznnnn.                             
                            ;zzzznnnnnnnzzzzzzzzzzzzzzz#############################################zzzzzzzzzzzzzzzznnnn+                             
                           .#zzzznnnnnnnnzzzzzzzzzzzzzzz#z#########################################zzzzzzzzzzzzzzzzznnnnn:                            
                           izzzzzznnnnnnnzzzzzzzzzzzzzzzz#######################################zzzzzzzzzzzzzzzzzznnnnnnn#`                           
                          .#zzzzzznnnnnnnznzzzzzzzzzzzzzzz############++*ii***++####################################zzzzzz:                           
                          izzzzzzzznnnnnnnzzzzzzzzzzzzzzzzzzzz#####*;:,,,,,,,,,::i****************************************i`                          
                         `#zzzzzzzznnnnnnnnnnzzzzzzzzzzzzzzzzz##+;,,.............,,:i**************************************.                          
                         ;zzzzzzzzzznnnnnnnnzzzzzzzzzzzzzzzzzz#;,....````````````...,:i*********************************i**:                          
                        `+zzzzzzzzzzznnnnnnnnzzzzzzzzzzzzzzzz*,...```.,:;;;;;:,.````..,;*************************iiiiii**i*i`                         
                        ,zzzzzzzzzzzznnnnnnnnnnzzzzzzzzzzzz#;,.```.;iiiiiiiiiiiii;.```..:********************iiiiiiiii**i***,                         
                        *zzzzzzzzzzzzznnnnnnnnnnnzzzzzzzzz#:..``.i****iiiiiiii*****i. ``.,i***************iiiiiiiiiiiii*****;`                        
                       `#zzzzzzzzzzzzznnnnnnnnnnnnzzzzzzz#,.```;*******iiiiiii*******;```.,i*********iiiiiiiiiiiiiiiiii*i*i*i.                        
                       ,zzzzzzzzzzzzzzznnnnnnnnnnnzzzzzz#,.``.*+********iiiii********+*. ``,i****iiiiiiiiiiiiiiiiiiiii*i*****,`                       
                       izzzzzzzzzzzzzzznnnnnnnnnnnnzzzzz:.``,++++*******************++++. ``,iiiiiiiiiiiiiiiiiiiiiiiiiiii*i**;`                       
                      `#zzzzzzzzzzzzzzzznnnnnnnnnnnnzzzi.``.++++++*****************++++++. ``,iiiiiiiiiiiiiiiiiiiiiiiiii*ii**i.                       
                      .zzzzzzzzzzzzzzzzzznnnnnnnnnnnnn+.``.+++++++****************++++++++` `.:iiiiiiiiiiiiiiiiiiiiiiii*iiii**,`                      
                      :zzzzzzzzzzzzzzzzz#nnnnnnnnnnnnn:```*+++++++++*************+++++++++*` `.iiiiiiiiiiiiiiiiiiiiiiiiiiiii**:`                      
                      izzzzzzzzzzzzzzzzzzznnnnnnnnnnn+.` ;#+++++++++++*********++++++++++++:  `:iiiiiiiiiiiiiiiiiiiiiiiiiii***;`                      
                     `+zzzzzzzzzzzzzzzzzzznnnnnnnnnnn,` `++++++++++++++******+++++++++++++#+` `.iiiiiiiiiiiiiiiiiiiiiiii*iii**i`                      
                     `#zzzzzzzzzzzzzzzzzzzznnnnnnnnn#.` ;###++++++++++++++++++++++++++++++#+;  `:iiiiiiiiiiiiiiiiiiiiiiiiii***i.`                     
                     .zzzzzzzzzzzzzzzzzzzzznnnnnnnnni` `+##++++++++++++++++++++++++++++++###+` `.iiiiiiiiiiiiiiiiiiiiiiiiiii***,`                     
                     ,zzzzzzzzzzzzzzzzzzzzzznnnnnnnn,` :#####+++++++++++++++++++++++++++#####:  `;iiiiiiiiiiiiiiiiiiiiiiii*i***,`                     
                     :zzzzzzzzzzzzzzzzzzzzzzznnnnnnz`  *######++++++++++++++++++++++++#######*  `:iiiiiiiiiiiiiiiiiiiiiiii*****:`                     
                     ;zzzzzzzzzzzzzzzzzzzzzz#nnnnnn+` `#########++++++++++++++++++++++#######+`  ,iiiiiiiiiiiiiiiiiiiiiiii*i***;`                     
                     izzzzzzzzzzzzzzzzzzzzzzzznnnnni` .########++++++++++++++++++++++#########.  .iiiiiiiiiiiiiiiiiiiiiiii*ii**;`                     
                    `izzzzzzzzzzzzzzzzzzzzzzz#nnnnn;` :###########+++++++++++++++++###########,  .iiiiiiiiiiiiiiiiiiiiiiiiiii**;.                     
                    `izzzzzzzzzzzzzzzzzzzzzzzzznnnn:` ;################+++++++################;  `iiiiiiiiiiiiiiiiiiiiiiiii*i**;.`                    
                    `*zzzzzzzzzzzzzzzzzzzzzzzz#znnn,  ;#################++++##################;  `iiiiiiiiiiiiiiiiiiiiiiiiiii**i.`                    
                    `*zzzzzzzzzzzzzzzzzzzzzzzzzznnn,  ;#######################################;` `iiiiiiiiiiiiiiiiiiiiiiii*ii**i.`                    
                    `*zzzzzzzzzzzzzzzzzzzzzzzzzzznn:  ;#######################################;` `iiiiiiiiiiiiiiiiiiiiiiiii*i**i.`                    
                    `izzzzzzzzzzzzzzzzzzzzzzzzzzznn;  :#######################################:. `iiiiiiiiiiiiiiiiiiiiii*iii***;.`                    
                    `izzzzzzzzzzzzzzzzzzzzzzzzzzzzni  .z#####################################z,. .iiiiiiiiiiiiiiiiiiiiii*ii****;.`                    
                    `;zzzzzzzzzzzzzzzzzzzzzzzzzzzzn+  `#z##################################zz#.. ,iiiiiiiiiiiiiiiiiiiiii*ii****;.`                    
                    `:zzzzzzzzzzzzzzzzzzzzzzzzzzzzzz`  *zzzz#############################zzzz*..`;iiiiiiiiiiiiiiiiiiiii*iii****:.`                    
                     ,zzzzzzzzzzzzzzzzzzzzzzzzzzzzzz.  :zzzzz##########################zzzzzz;..`iiiiiiiiiiiiiiiiiiiiii*iii****:``                    
                     .zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzi  `#zzzzzz#######################zzzzzzz....iiiiiiiiiiiiiiiiiiiiii*iii****,``                    
                     `#zzzzzzzzzzzzzzzzzzzzzzzzzzzzz+`  izzzzzzz##z##############zzzzzzzzzzz*...:iiiiiiiiiiiiiiiiiiiiiiii*i****,``                    
                     `+zzzzzzzzzzzzzzzzzzzzzzzzzzzzzz,  .zzzzzzzzzzzzzzz#####zzzzzzzzzzzzzzz,...iiiiiiiiiiiiiiiiiiiiiiii**i***i.`                     
                     `izzzzzzzzzzzzzzzzzzzzzzzzzzzzzz*  `izzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzi...:iiiiiiiiiiiiiiiiiiiiiiii**i***i.`                     
                     `:zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz,  .+zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz+...,iiiiiiiiiiiiiiiiiiiiiii*ii*i***;.`                     
                      .zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz+` `,zzzzzzzzzzzzzzzzzzzzzzzzzzzzzz#,...;iiiiiiiiiiiiiiiiiiiiiiii**i****:.`                     
                      `#zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzi `.:zzzzzzzzzzzzzzzzzzzzzzzzzzzzz:...:iiiiiiiiiiiiiiiiiiiiiiiiii******,.`                     
                      `izzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz#: `.:zzzzzzzzzzzzzzzzzzzzzzzzzzz:...,iiiiiiiiiiiiiiiiiiiiiiiiiiiii***i.`                      
                      `:zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz#,`..,#zzzzzzzzzzzzzzzzzzzzzzz#,...,*iiiiiiiiiiiiiiiiiiiiiiiiiii*****;.`                      
                       .#zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz#,`...*zzzzzzzzzzzzzzzzzzzzz*....,+iiiiiiiiiiiiiiiiiiiiiiiiii*i*****,.`                      
                       `*zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz#,....:#zzzzzzzzzzzzzzzzz+:....:z*iiiiiiiiiiiiiiiiiiiiiii*********i,``                      
                       `:zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz;.....:*zzzzzzzzzzzzz*:.....in#iiiiiiiiiiiiiiiiiiiiiiii*********:.`                       
                        `#zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz+,......:i+##z##+i:......:+nziiiiiiiiiiiiiiiiiiiiiiiiii********,.`                       
                        `izzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz#*,...................,*znn+iiiiiiiiiiiiiiiiiiiiiiiiiii******i.``                       
                         .zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz#*:...............;+znnnziiiiiiiiiiiiiiiiiiiiiiiiiiii******:.`                        
                         `inzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz#*;,......,:i+znnnznn*iiiiiiiiiiiiiiiiiiiiiiiiiii******i,.`                        
                         `.znzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz######zzznznnznz#iiiiiiiiiiiiiiiiiiiiiiiiiiii******:.`                         
                          `inzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz*iiiiiiiiiiiiiiiiiiiii*****i******i,.`                         
                          `.zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzznz+iiiiiiiiiiiiiiiiiiiiii**ii********:.`                          
                           `inzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzziiiiiiiiiiiiiiiiiii******ii*******i,.`                          
                           `.#nzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz*iiiiiiiiiiiiiiiiiiii**i*ii********,.`                           
                            `:nnzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz#iiiiiiiiiiiiiiiiiiiiiii***********;.``                           
                             `*nnzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz*iiiiiiiiiiiiiii**ii*iii**********i,.`                            
                             `.#nnzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz+iiiiiiiiiiiiiiiii*i*iiii**********:.`                             
                              `,znnnzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz*iiiiiiiiiiiii*iiii***i***********:.``                             
                               `;nnnnzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz+iiiiiiiiiiiii******i*************;,.`                              
                                `*nnnnzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz#*i*********iii*******************i,.``                              
                                `.+nnnzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz*ii******iiiiii*******************,.``                               
                                 `.#nnnnnzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz#iii******iiiii*******************,..`                                
                                  `.#nnnnnzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz*********************************:,.`                                 
                                   `.#nnnnnnzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz+********************************:,.`                                  
                                    `.#nnnnnzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz********************************:..`                                   
                                     `.+nnnnnnzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz+*****************************+*:,.`                                    
                                      `.*nnnnnnnzzzzzzzzzzzzzzzzzzzzzzzzzzzzz#*****************************+i,..`                                     
                                       ``iznnnnnnnnzzzzzzzzzzzzzzzzzzzzzzzzzz+****************************+i,..`                                      
                                        ``:#nnnnnnnnzzzzzzzzzzzzzzzzzzzzzzzz#**************************+**:,.``                                       
                                         ``.*nnnnnnnnnnnnzzzzzzzzzzzzzzzzzzz+***********************+**+i:,.``                                        
                                           ``:#nnnnnnnnnnnzzzzzzzzzzzzzzzzz+*+*********************+*+*;,.```                                         
                                            ``.innnnnnnnnnnnnzzzzzzzzzzzzzz*************************+i,..``                                           
                                             ```,+nnnnnnnnnnnnnnnnnzzzzzzz+*******************+***+*:,.```                                            
                                               ```,+nnnnnnnnnnnnnnnnnnnzz#*********************++i:,..``                                              
                                                ````,*znnnnnnnnnnnnnnnnzz+********************+i:,..``                                                
                                                   ``..;+nnnnnnnnnnnnnnn#*****************++*;,...``                                                  
                                                     ```.,i+nnnnnnnnnnnz***********++*+++*;,,..```                                                    
                                                        ``...:i#znnnnnn+*********+++*i;:,....```                                                      
                                                          ````...,:i*++*******iii;:,,.....```                                                         
                                                              `````..................`````                                                            
                                                                   `````````````````