`:                                                                                              
                                      `::                                                                                             
                                       ::                                      .                                                      
       .   ,.                 .:       :::                                    ::`                                                     
       :  .:                   :,      ,:: ``.                                ::,         ,                                           
       :, :                    .:`      :::::                  .::`           :::         ,.                                          
       ::,:      ::   ``   `::. ::     .:::                   ::              ,::`         .       .:,  .:`                           
       :::        `:  .:   :::: .::    ::::.                 ::               .:::   ,``     ,    ::   ::::,                          
       `::    ,:`  :,  :.  ::`:: :: ,:   :::                 :.                ::: `::::,   `:,   ::   ::  :                          
        ::`    ::  `:  ::  ::`::..:::,:  `::.                ::                ::: :::.::   `::  `::   ::`:                           
        ::::   ,:   :. ,:  .::.::`::: :,  :::  .             ::::::::,   :::,  .::`::,,:::   ::   ::   :::`                           
        `::::`  ::  `:  :,      ::.:: `:   ::: :              .::::::::.::.,::  ::.::::: ::  ::   ::    :::. .                        
         :,,::. ::   :` .:      ::,::  :.   :::,                     ,::::` ::  `::::::,  ::.,:.  .:     ,:::`                        
         ::  ::. :   `:          ::     :     `                       :::::::,   .,.:::       :`                                      
          :    :`     :          ,:,                                 ::: ::::                                                         
                                  ::                           ...,::::`                                                              
                                  ::                            .,:::,                                                                
                                  ,:`                                                                                                 
                `,      `         .:,                                                                                                 
                :        :        ::                    ::                                                                            
               .:         :`     `::::`                 ::                                                                            
               .:          ,::,::::::::,                ::.                                                                           
               `:,            .::. ::::::               :::                                                                           
                ::                 ::`.:::              :::                                                                           
                ::.                ::` ,:::             :::,``::,            `                                                        
                 ::::::            .::  :::.      ,,    `:::::`            ::.`                                                       
           ::  `::::.  .           `::   :::     ::.    ,:::              ::     ,:::`                                                
          :,.::::`::                ::    :::    ::.``.` :::,      `,,   `:.   `::.:::                                                
          : : ::  ::,               :: `::::::   ::::::::`:::     ,:,::  ,::   :: .::::                                               
          :`,  :` .::               ::,::,  ::,   ,::::::::::`    :: ,:  :::   :: .: ,:.    ,:`                                       
          :,.  :,  ::.              ::.:     ::.       `::`:::    :: ,:  ,::   :: ::  `:`   :::                                       
          ::, .:,  .::              ::.       ::   `   ::: ,::,,  :::::   ::   ::::,        :::`     ,:,                              
           :::::    ::              .:.        ::  `:::::   ,:::  .:::          :::         `:::     ,::                              
            ,::     ::,             `:          :,  `:,`                                     :::      ::.                             
                    ,::              :           :                                           ,::.     :::                             
                    ,::                                                                       :::     ,::                             
                    ,:,                                                                       :::      ::`                            
                    ::`                                                                       .::,     :::                            
                  `::,                                                                         :::     :::                            
                ::::                                                                  .`      ::::`     ::                            
                                                                                :,  `:::     .:::::     ::                            
                                                                              ::::: ::::,    ::::::     `:`                           
                                                                        :     :::::`::::,    ::,:::,     :.                           
                             `:,,                            ,`,`      :::,  .::::::::::     ::.::::     .,                           
                            ::                               ::::`     :: :` `:::,::::::     :::::.:      :                           
                           :                       ``  `::   :::::`:: `:: .:  ::: ::::::     :::::``:     .                           
                          :                 ,:    `::: .:::  ,:::::::. ::, :, :::` :::::`   ,`::::  :`                                
                          :             :`  ::, ,:::::,..::. ,:::::::: :::`:: :::` ::`:::..:  ,::`   :                                
                          ::,``         ::   :: .::: ::.  ::  ::`:::,: `::::: .::`  :: ,:::               `,                          
                          `::::::::,    ::   :::`::: ,::` ,:  ::,,:: :, `:::,  ::`   :                    .:                          
                                ..::::  ::. `:::.:::  ::.  :, ::. ..  :   ``                               `                          
                                    ::, ::: ::::::::  ,:,  .:         :                                                               
                                     :: .::::: ::,::   :.                                                                             
                             :      :::  ::::,  ::                                                                                    
                              ::::::::     `     .                                                                                    
                                ,:,,.                                                                           .                     
                                                                                                               .                      
                                                                                                              :                       
                                                                                                             :`                       
                                                                                                           `:                         
                                                                                                          `:                          
                                                                                                         `:                           
                                                                                                        ,:                            
                                                                                    .:+@@@,            ::                             
                                                                                :@@@@@##++@@          ::`                             
                                                                             `#@@@+'''''''@          ::`                              
                                                                           `@@@+'''''##@@@.         ::.                               
                                                                          '@@+''''''+@            `::.                                
              .:`                                                        #@@''''#@@@+            `::.                                 
    .,         .::                                                      +@#'''@@:.`             .::.                                  
   ,@@@:        .::.                                                   ,@@'#@@`                .::,                                   
   '@##@+        `:::                                                  @@'@#                  ,::,                                    
   ,@###@@         :::,                                               +@'@@                  :::,                                     
    @####@#         ::::                                 .+##@@@##+,  @@@@                  ::::                                      
    #@####@@         .:::,                            :@@@@@@@@@@@@@@@@#                   ::::                                       
     @#####@@         `::::`                        :@@@#;::,,,,,::;+#@@@+                ::::                                        
     ;@#####@@          :::::                      @@#:,,,;@:,,'#,,#';;,@@               ::::                          `              
      @@#####@#          :::::.                    @:,@,@::',,,::,,+:@@,@@              ::::                          #@@             
       @@######+          .:::::                   @:,;,@:,,,,,,,,,,,::,@@           `:::::                         +@@@@'            
       ,@######@:           :::::.                ,@,,,:@:,,,,,,,,,,,,,,@@           :::::                        '@@@##@@            
    #+` ;@######@,           ,:::::               +@,,,:@:,,,,,,,,,,,,,,@@          :::::                       ,@@@####@@            
    @@@@+#@######@.           `:::::              @@,,,;@:,,,,,,,,,,,,,,#@`         ::::                       @@@#####@@:            
     @@#@@@#######@`            ,::::.            @@,,,'@::::,,,,,,,,,,,#@.         `,`                      ;@@@######@@             
     :@###########@@`             ::::,           @@@@@@@@@@@@@;,,,,,,,,#@.                                `@@@#######@@.             
      #@###########@@`             ,::::          @@@@@@@@@@@@@@@',,,,,,#@,                               :@@@#######@@'              
       @@###########@@               ,:,         .@@@@@@@@@@@@@@@@@,,,,,#@,                              #@@########@@#               
       `@@###########@@                          '@++:#@@@+;;;;+@@@@,,,,'@.                            `@@@########@@#                
        .@@###########@@                         #@:,,:@@;,,,,,,,:#@,,,,;@,                           :@@@########@@+'@@              
         `@@###########@@                        @@,,,,@#,,,,,,,,,,,,,,,;@,                          #@@#########@@@@@@@.             
          `@@###########@@                       @@,,,,@;,,,,,,,,,,,,,,,:@:                         @@@##########@@@##@@              
           ,@############@@                      @#,,,,@:,,,,,,,,,,,,,,,:@:                       .@@@###########@####@@              
            ;@###########@@@                    `@',,,,@:,,,,,,,,,,,,,,,:@;                      ;@@@################@@.              
             @@###########@@@                   `@:,,,,@:,,,,,,,,,,,,,,,:@;                     @@@#################@@+               
              @############@@@                  ,@:,,,,@,,,,,,,,,,,,,,,,:@:                    @@@#################@@@                
              ,@###########@@@@                 +@,,,,:@,,,,,,,,,,,,,,,,:@'                  `@@@#################@@@                 
               +@#########@#+@@#                @@,,,,:@,,,,,,,,,,,,,,,,,@'                 ;@@@#################@@#                  
                @@#######@@+++@@@               @#,,,,:@,,,,,,,,,,,,,,,,,@'                #@@##################@@+                   
                 @@#####@@+++++@@#              @+,,,,:@,,,,,,,,,,,,,,,,,#'               @@@@#################@@#                    
                 `@#####@#++++++@@#             @;,,,,:#,,,,,,,,,,,,,,,,,#+             .@@@+@@###############@@+                     
                  :@###@@++++++++@@#            @:,,,,;#,,,,,,,,,,,,,,,,,'#         `;@@@@#+++@@#############@@#                      
                   '@##@++++++++++@@#           @:,,,,;+,,,,,,,,,,,,,,,,,:#      `#@@@@@#+++++#@@###########@@#                       
                    @@@@+++++++++++@@+          @,,,,,';,,,,,,,,,,,,,,,,,:@    '@@@@@@@#+++++++@@@#########@@@                        
                    `@@@++++++++++++@@'#@,     `@,,,,,;;,,,,,,,,,,,,,,,,,,+  '@@@@#+#@@+++++++++@@########@@@                         
                     `@@@++++++++++++@@@@@`    ,#,,,,,+:,,,,,,,,,,,,,,,,,:#`@@@#++++@@#++++++++++@@######@@@                          
                       @@#++++++++++++@@@@@`   :;,,,,,+:,,,,,,,,,,,,,,,::,+@@#+++++@@@++++++++++++@@#####@@                           
                       :@@+++++++++++++@@@@@`  ;:,,,,,+,,,,,,,,,,,,,,,,@#,@@+++++++@@+++++++++++++#@@@##@@:                           
                        @@@+++++++++++++@@##@: #,,,,,,+,,,,,,,,,;,,,@:,;::@@++++++@@#++++++++++++++#@@##@@                            
                         @@#++++++@@@@@@@@@+@@'@+@,##,#,::,:,,,:@;,,,,:+@@@@++++++@@@@+++++++++++++#@@@@@                             
                         :@@++++++@@@@@@@@##@`@#;#,;',#,#',@#,,,,::+@@@#  @@++++++++#@++++++++++++@@  @@.                             
                          @@@+++++#@@#####+@@ +@@#+';:':,,,:::'#@@@@@.    @@++++++++@@++++++++++#@@`  `,                              
                           @@#+++++@@@+++++@@  `;@@@@@@@@@@@@@@@@'.       @@++++++++@#+++++++++#@@                                    
                           ,@@++++++@@+++++@@       .;'+#@#+;;.           @@++++++++@@++++++++#@@                                     
                            #@@+++++@@#+++#@+        :'                   @@++++++++#@+++++++@@#                                      
                             @@#+++++@@+++#@:        '''`                `@@++++++++@@++++++@@#                                       
                             `@@++++#@@+++@@         `''',               ,@@+++++++#@#+++++@@+                                        
                              '@@++++@@+++@@          ''''.              ,@#+++++++@@++++#@@;                                         
                               @@#+++@@+++@@        ;''''''              :@#++++++#@++++#@@:                                          
                                @@+++@@++#@# '':   ''''''''              :@#++++++@@+++#@@,                                           
                                ,@#++#@#+@@; '''';:''''''''              .@#+++++#@#++#@@.                                            
                                 #@#++@@+@@` ''''''''''''';.;'''.        .@#+++++@@++@@@                                              
                                  @@++@@+@@  ;''''''''''''''''''         `@#++++@@#+@@@                                               
                                  .@#+@@+@@  '''''''''''''''''''          @#++++@@+@@@                                                
                                   +@+#@#@@  ''''';,,,,,,:''''';          @#+++@@+@@#                                                 
                                    @@+@@@''''''':,,,,,,,,,'''''''.       @#++@@#@@'                                                  
                                    .@#@@@'''''';,,,,,,,,,,,''''''';      @##@@@@@:                                                   
                                     #@@@@'''''',,',,,,,:;,,;''''''';;'   @#@@@@@.                                                    
                                      @@@@'''''',@@+,,,,@@;,,''''''''''   @#@@@@                                                      
                                      ,@@@'''''',;@:,,,,;@:,,''''''''''   @@@@'                                                       
                                       @@@'''''',,,,,,,,,,,,,''''''''''   +@@                                                         
                                       .@@''''''',,,,,,,,,,,,''''''''':   '@@                                                         
                                       .@@,;''''::,,,,,,,,,,,''':`:'',    ;@#                                      .,::::::::         
   .,::::::::::::::.`                  ;@@  ''''',,,,,,,,,,,''',          ,@#               `               `.:::::::::,.    `        
:::::::::::::::::::::::                #@@  '''''',,,,,,,,,;''''          ,@+              `:          `:::::::::::,`                 
:::::::::::::::::::::``                @@@  ''''''';,,,,,,''''''           @'              ::    `.:::::::::::::`                     
:.....`                                @@+  .''''''''''''''''''',          @,              ::::::::::::::::,`                         
                                       @@+   ''';''''''''''''''';          @.              `:::::::::::,`                             
                                       @@    ''''',''''''''''''';          @                 ,:::::,                                  
                                      ,@@    .'`  ''''''''    `.           @                                                          
                                      '@#        `''''''''                 @                                                          
                                      +@+         ''''''''                 @                                                          
                                      #@'          ;''''';                 @                                                          
                                      @@,         :''''''                  @                                                          
                                      @@.       `'''''''                  '@                                                          
                                      @@        ''';:.                    #@                                                          
                                      @@                                  @@                                                          
                                      @@                                  @@                                                          
                                      @@                                  #@                                                          
                                      @@                                  #@                                                          
                                      @@                                  +@                                                          
                                      @@                                  ;@                                                          
                                      @@                                  .@:                                                         
                                      @@                                   @+                                                         
                                      @@                                   @@                                                         
                                      @@                                   @@                                                         
                                      @@                                   +@                                                         
                                      @@                                   .@`                                                        
                                      +@                                    @,                                                        
                                      #@                                    @#                                                        
                                      @@@+;.                                ;@                                                        
                                      @@@@@@@@@@#;.                         .@                                                        
                                      @@###@@@@@@@@@@@@+:``           `;@@@@@@`                                                       
                                     ,@@########@@@@@@@@@@@@@@@@##@@@@@@@@@@@@,                                                       
                      ,              +@@##############@@@@@@@@@@@@@@@@@@@####@#                                                       
                     :::             #@@@#####################@@@@###########@@                                                       
                    `:::             .@@@@@@@@##########################@@@@@@@@                                                      
                    ::::             +@.@@@@@@@@@@@@###############@@@@@@@@@@.@@:                                                     
                   ::::              @@    ,'@@@@@@@@@@@@@@@@@@@@@@@@@@#:`    .@@                                                     
                  ::::.              @'          ,'#@@@@@@@@@@@@@@@+,          '@`                                                    
                `::::,              `@'                  .,:;:,                ,@:                                                    
               `::::,               `@:                                        `@@                                                    
              `::::.                :@.                                         @@                                                    
             `::::`                 '@`                                         @@`               ,::::,                              
            .::::                   @@                                          #@:               `:::::::`                           
           `::::                    @@                                          :@#                 ,:::::::,                         
           :::.                     @@                                          `@@                   `:::::::,                       
          :::`                      @@                                           @@                      `:::::::                     
         :::                        @@                                           @@`                        `::::::                   
        :::                         @@                                           '@;                           ,:::::                 
       :::                          @@                                           `@#                             `::::,               
      ,::                           @@                                            @@                                ,:::`             
      ::                            @#                                            @@                                   ::,            
     ::                             @;                                            '@                                    `:.           
    ::                              @;                                            `@;                                                 
   .:                               @:                                             @#                                                 
   :                                @.                                             +@                                                 
  :,                                @`                                             ,@