______________________________________________________________________
/ Computers can figure out all kinds of problems, except the things in \
\ the world that just don't add up.                                    /
 ----------------------------------------------------------------------
        \   ^__^
         \  (oo)\_______
            (__)\       )\/\
                ||----w |
                ||     ||
 _____ _  _         ____   ___  _  _         _ _____ __         _  ___  ___  
|___ /| || |       |___ \ / _ \| || |       / |___  / /_       / |( _ )/ _ \ 
  |_ \| || |_        __) | | | | || |_      | |  / / '_ \      | |/ _ \ (_) |
 ___) |__   _|  _   / __/| |_| |__   _|  _  | | / /| (_) |  _  | | (_) \__, |
|____/   |_|   (_) |_____|\___/   |_|   (_) |_|/_/  \___/  (_) |_|\___/  /_/ 
                                                                             
                                                                                                                                                                                                        
                                                                                                                                                                                                        
                                                                                         `.:@@@@@@@@@@@@@@@@;.`                                                                                         
                                                                                    ,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@:`                                                                                   
                                                                               `'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#.                                                                               
                                                                            ,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@:`                                                                           
                                                                         :@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'`                                                                        
                                                                      .@@@@@@@@@@@@@@@@@@@@@@@@##########@@@@@@@@@@@@@@@@@@@@@@@@:                                                                      
                                                                   `;@@@@@@@@@@@@@@@@@@#+:                    .'+@@@@@@@@@@@@@@@@@@#`                                                                   
                                                                  #@@@@@@@@@@@@@@@@+                                :#@@@@@@@@@@@@@@@@.                                                                 
                                                               `@@@@@@@@@@@@@@@+                                        ;@@@@@@@@@@@@@@@,                                                               
                                                             `#@@@@@@@@@@@@@;                                              .@@@@@@@@@@@@@@.                                                             
                                                            '@@@@@@@@@@@@'                                                    :#@@@@@@@@@@@@`                                                           
                                                          ,@@@@@@@@@@@@`                                                         +@@@@@@@@@@@#                                                          
                                                         @@@@@@@@@@@#                                                              ;@@@@@@@@@@@,                                                        
                                                       ;@@@@@@@@@@+                                                                  :@@@@@@@@@@@                                                       
                                                      @@@@@@@@@@#                                                                      :@@@@@@@@@@,                                                     
                                                    ,@@@@@@@@@@                                                                          '@@@@@@@@@@                                                    
                                                   @@@@@@@@@@,                               `:#@@@@@@@@@;.                                @@@@@@@@@@`                                                  
                                                  @@@@@@@@@+                             `'@@@@@@@@@@@@@@@@@@+`                             .@@@@@@@@@:                                                 
                                                .@@@@@@@@@                             :@@@@@@@@@@@@@@@@@@@@@@@@+`                            #@@@@@@@@#                                                
                                               ;@@@@@@@@+                            '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@`                           .@@@@@@@@@                                               
                                              #@@@@@@@@.                          ` @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@,                            @@@@@@@@@                                              
                                             @@@@@@@@@                           , @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@`'                           +@@@@@@@@`                                            
                                            @@@@@@@@#           :@@#`           ,`;@@@@@@@@#:.  .@@@@@@'   :+@@@@@@@@@ @            ;@@#`          `@@@@@@@@`                                           
                                           @@@@@@@@;   `       @@@@@@#         ,@ @@@@@@@@@@@@@@@ '@@@ :@@@@@@@@@@@@@@`:#         .@@@@@@:           @@@@@@@@`                                          
                                          @#@@@@@@,   `       @@@@@@@@+       `@@ @@@@@@@@@@@@@@@@ @@ #@@@@@@@@@@@@@@@+.@#        @@@@@@@@.           @@@@@@#@`                                         
                                         @@@@@@@@`           @@@@@@@@@@       @@# @@@@@@@@@@@@@@@@+,@ @@@@@@@@@@@@@@@@+`@@`      @@@@@@@@@@     ``     @@@@@@@@`                                        
                                        @@@@@@@@            `@@+   @@@@.     ;@@@ @@@@@@@@@@@@@@@@+.@ @@@@@@@@@@@@@@@@..@@@      @@@@   `@@#            #@@@@@@@`                                       
                                       #@@@@@@@             @@#     @@@+     @@@@ #@@@@@@@@@@@@@@@`;@`@@@@@@@@@@@@@@@@ @@@@.     @@@'    `@@`            #@@@@@@@                                       
                                      ;@@@@@@@             '@@      @@@+    `#@@@+ @@@@@@@@@@@@@@# @@``@@@@@@@@@@@@@@: @@@@@     @@@      :@@             #@@@@@@@`                                     
                                     .@@@@@@@          `#+@@@       @@@+    +@@@@@, +@@@;     ..  '@@@  ..     `#@@#  @@@@@@     @@@       '@@+'.       `  #@@@@@@#                                     
                                     @@@@@@#.           #@@'        @@@.    @@@@@@@#    .;#@#   `@@@@@@.   ,@#'`    ,@@@@@@@.    @@@'       .@@@            @@@@@@@+                                    
                                    @@@@@@@,              `        :@@@     @@@@@@@++  `  +@@@' @@@@@@@#` @@#@  `  '#@@@@@@@#    @@@@                        @@@@@@@.                                   
                                   @@@@@@@;                        @@@@    :@@@@@@@@ :@@@ `@@@@ :@@@@@@@ @@@@# @@@@ .@@@@@@@@    ,@@@:                        @@@@@@@                                   
                                  '@@@@@@#                        @@@@:    @@@@@@@@ :@@@@``@@@@;`@@@@@@# @@@@# @@@@@ @@@@@@@@     @@@@`                       `@@@@@@@                                  
                                 `@@@@@@@                        +@@@@     @@@@@@@+ @@@@@ '@@@@;`@@@@@@# @@@@@ ,@@@@: @@@@@@@#    +@@@@                        ;@@@@@@+                                 
                                 @@@@@@@         `#@@@@@,       #@@@@:    @@@@@@@@ '@@@. ,@@@@@ `@@@@@@@ @@@@@#  @@@@ @@@@@@@@     @@@@@       .#@@@@#.         #@@@@@@`                                
                                '@@@@@@.       :@@@@@@@@@@@.   #@@@@#    `@@@@@@@@ @@@ ;@@@@@@@ +@@@@@@@ +@@@@@@# @@@`,@@@@@@@#    .@@@@@    @@@@@@@@@@@#        @@@@@@@                                
                                @@@@@@+       @@@@@@@@@@@@@@@ '@@@@@     @@@@@@@@'`@@@.@@@@@@@' @@@@@@@@, @@@@@@@@:@@# @@@@@@@@.    ;@@@@@ :@@@@@@@@@@@@@@,      `@@@@@@#                               
                               @@@@@@@      `@@@@@@@@@@@@@@@@@ #@@@     '@@@@@@@@ @@@@@@@@@@@@ `@@@@@@@@# ;@@@@@@@@@@@ @@@@@@@@@     '@@@ #@@@@@@@@@@@@@@@@+      '@@@@@@`                              
                              ,@@@@@@      `@@@@@@;` `+@@@@@@@@ @#      @@@@@@@@# @@@@@@@@@@@' .@@@@@@@@@  @@@@@@@@@@@'`@@@@@@@@'     '#`#@@@@@@@+` ``#@@@@@+      @@@@@@@                              
                              @@@@@@+      @@@@#        ,@@@@@@@`      '@@@@@@@@ +@@@@@@@#@@@ . @@@@@@@@+  @@@@#@@@#@@@ #@@@@@@@@      ;,@@@@@@+        '@@@@`      @@@@@@;                             
                             #@@@@@@      '@@@'           @@@@@@:      @@@@@@@@ `@@@  @@  @@@ # #@@@@@@@ . @@@  @@; +@@# +@@@@@@@       @@@@@@,          `@@@@      '@@@@@@                             
                             @@@@@@.      @@@+         `@@ @@@@@@      @@@@@:  `@@@,  @@   @@ #: @@@@@@. # #@+  '@   @@@#   #@@@@+     ;@@@@@.:@+         `@@@;      @@@@@@+                            
                            @@@@@@@      :@@@         '@@@#`@@@@@.    .@@@'  .@@@@@  ;@@#  @@ @@; @@@@, @@ #@  ,@@@  @@@@@:  `@@@#     @@@@@+.@@@@         ;@@@      .@@@@@@                            
                            @@@@@@       @@@         @@@@@@`#@@@@@    .@@. `@@@@@@@ `@  #+ @@ :@@:.@@# @@@ @@  @  +# :@@@@@@;  @@@    `@@@@@ @@@@@@`        @@@       @@@@@@+                           
                           @@@@@@#      `@@@        @@@@@@@  @@@@@    .@: :@@@@@@@@ .@  '# @@.`@@@ @@.'@@@ @@ `@  ,@ ,@@@@@@@@  @#    #@@@@+ #@@@@@@,       `@@#      `@@@@@@                           
                           @@@@@@       +@@       `@@@@@@@   @@@@@    `+ `@@@@@@@@@  #@@@  @@+ @@@ @@ @@@+ @@  #@@@  +@@@@@@@@# :#    @@@@@   '@@@@@@#       @@@       #@@@@@+                          
                          @@@@@@+       @@@      ,@@@@@@#    +@@@@;    ; @@@@@@@@@@`  @@   @@@ @@@`@@ @@@`,@@;  @@   @@@@@@@@@@. ,    @@@@@    .@@@@@@@      .@@.       @@@@@@                          
                          @@@@@@       `@@,     '@@@@@@;     .@@@@+     ,@@@@@@@@@@@  @@  '@@@ @@@ @@.@@@ #@@@  @@` ,@@@@@@@@@@@ `    @@@@@      @@@@@@@      @@#       #@@@@@+                         
                         +@@@@@+       @@@     @@@@@@@`      `@@@@#     @@@@@@@@@@@@##@@@;@@@@ @@#,@@@`@@ @@@@@'@@@,@@@@@@@@@@@@ `   `@@@@+       @@@@@@@`    :@@       `@@@@@@                         
                         @@@@@@        @@.    @@@@@@@        `@@@@#     @@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@ +@@@@@@@@@@@@@@@@@@@@@+    `@@@@+        +@@@@@@`    @@;       @@@@@@,                        
                        .@@@@@#       @@#    @@@@@@@         `@@@@#    .@@@@@ #@@@@@@@@@@@@@@# @@@@@@@@@@'`@@@@@@@@@@@@@@@ '@@@@@    `@@@@+         ,@@@@@@.   .@@`      `@@@@@@                        
                        @@@@@@    @:,@@@    @@@@@@+          `@@@@#    :@@ #@  @@@@@@@@@#@@@@ ;@@@@@@@@@@@ @@@@@:@@@@@@@@` ,@ .@@     @@@@@          `@@@@@@.   '@@'.#`   @@@@@@                        
                        @@@@@@    :@@@#    @@@@@@:           ,@@@@+    ;@+ @@@ ,@@@@@@@@`'++  @@@@@@@@@@@@: :++ @@@@@@@@@ +@@  @@     @@@@@            @@@@@@.   :@@@@    :@@@@@+                       
                       :@@@@@'            @@@@@@:            #@@@@:    ;@+ @`;: @@@@@@@@@+.: '@@@@@@@@@@@@@ +.:@@@@@@@@@# @ .# @@     @@@@@             @@@@@@`            @@@@@@                       
                       @@@@@@            #@@@@@'     ..      @@@@@     .@+ @@@ `@@@@@@@@@@#@ @@@@@@@@@@@@@@ +@@@@@@@@@@@# #@@.`@@     @@@@@      ...     @@@@@@            @@@@@@                       
                       @@@@@@           ,@@@@@#   `@@@@@#    @@@@@     `@@  #@ :@@@@@@@@@@@@ @@@@@@@@@@@@@@;+@@@@@@@@@@@@ .@  #@#     @@@@@+   .@@@@@:   `@@@@@@           .@@@@@'                      
                      :@@@@@:           @@@@@@   .@#   :@.  ;@@@@@    ; @@@ +@#@@@@@@@@@@@@@ @@@@@@@@@@@@@@;+@@@@@@@@@@@@#@@ .@@, '   .@@@@@   @#   ,@#   ;@@@@@'           @@@@@@                      
                     `@@@@@@           @@@@@@    #:     @@  @@@@@'   ## @@@@@@@@@@@@@@@@@@@@ @@@@@@@+@@@@@@;@@@@@@@@@@@@@@@@@@@@ `#    @@@@@` .@      #;   @@@@@@           @@@@@@                      
                      @@@@@@          `@@@@@#           @@ .@@@@@   .@@ .@@@@@@@@@@@@@@@@@@@`@@@@@@@;@@@@@@ @@@@@@@@@@@@@@@@@@@@ +@@   @@@@@# ,@            @@@@@#          ,@@@@@;                     
                     .@@@@@'          @@@@@@            @# @@@@@@   @@@, @@@@@@@@@@@@@@@@@@@#:@@@@@@,@@@@@@.@@@@@@@@@@@@@@@@@@@  @@@   ,@@@@@ `@+           #@@@@@           @@@@@@                     
                     '@@@@@          `@@@@@'           @@ .@@@@@;  `@@@@  @@@@@@@@@@@@@@@@@@@;@@@@@' @@@@@#@@@@@@@@@@@@@@@@@@@' '@@@#   @@@@@# @@:           @@@@@#          @@@@@@                     
                     @@@@@@          #@@@@@          #@@; @@@@@@   +@@@@#  @@@@@@@@@@@@@@@@@@@@@@@@  @@@@@@@@@@@@@@@@@@@@@@@@' .@@@@@   #@@@@@` @@@.         #@@@@@          +@@@@@                     
                     @@@@@#          @@@@@#       ,@@@@  ;@@@@@'   @@@@@@#  '@@@@@@@@    #@@@@@@@@#   @@@@@@@@@`   #@@@@@@@#  `@@@@@@`   @@@@@@  #@@@'       `@@@@@,         .@@@@@'                    
                    `@@@@@'         `@@@@@.     .@@@@.   @@@@@@    @@@@@@@@`   @@@@@      +@@@@@@@    @@@@@@@@      @@@@@    '@@@@@@@+   #@@@@@'   #@@@'      @@@@@#          @@@@@#                    
                    :@@@@@          :@@@@@     .@@@     @@@@@@'   .@@@@@@@@@@, '@@@@       @@@@@@@  ` @@@@@@@    `  ,@@@@  @@@@@@@@@@@    @@@@@@     +@@@     #@@@@@          @@@@@@                    
                    #@@@@@          @@@@@@     @@#     ,@@@@@@    +@@@@@@@@@@@``@@@#        @@@@@@###:@@@@@@'    `  `@@@# @@@@@@@@@@@@    ;@@@@@@     .@@:    .@@@@@          @@@@@@                    
                    @@@@@@          @@@@@#    ,@@      @@@@@@`    @@@@@@@@@@@@+ @@@#        #@@@@@@@@@@@@@@@    ``  `@@@. @@@@@@@@@@@@     @@@@@@+     ;@@     @@@@@          ,@@@@@                    
                    @@@@@#          @@@@@'    @@:     @@@@@@#     @@@@@@@@@@@@' ,@@@         @@@@@@@@@@@@@@+    `   ,@@@  @@@@@@@@@@@@     `@@@@@@`     @@     @@@@@          `@@@@@:                   
                    @@@@@+          @@@@@;    @@     +@@@@@@      @@@@@@@@@@@@   #@@`        @@@@@@@@@@@@@@         @@@   @@@@@@@@@@@@      #@@@@@@     @@.    @@@@@           @@@@@;                   
                   .@@@@@:          @@@@@;    @@    ,@@@@@@,      @@@@@@@@@@@#    +@#        ,@@@@@@@@@@@@@`       @@#    `@@@@@@@@@@@       @@@@@@@    @@,    @@@@@           @@@@@@                   
                   :@@@@@           @@@@@'    @@.  `@@@@@@#       @@@@@@@@@@@                 @@@@@@@@@@@@+                @@@@@@@@@@@       `@@@@@@+   @@.    @@@@@           @@@@@@                   
                   +@@@@@           @@@@@#    @@#  @@@@@@@        @@@@@@@@@@@                 @@@@@@@@@@@@.                ,@@@@@@@@@@        ;@@@@@@: `@@    `@@@@@           @@@@@@                   
                   @@@@@@           ;@@@@@    .#@ @@@@@@@         .@@@@@@@@@#                 @@@@@@@@@@@@                 .@@@@@@@@@@         @@@@@@@`:#@    :@@@@@           +@@@@@                   
                   @@@@@@           `@@@@@     # #@@@@@@;          @@@@@@@@@@         ,+   `  @@@@@@@@@@@@       @       ` :@@@@@@@@@;          @@@@@@@ @     @@@@@#           :@@@@@                   
                   @@@@@@            @@@@@+     :@@@@@@#           ;@@@@@@@@@'  `@@@  +@`     @@@@@@#@@@@@+     @@  :@@'   @@@@@@@@@@           .@@@@@@@      @@@@@;           :@@@@@                   
                   @@@@@#            @@@@@@    `@@@@@@@             @@@@@@@@@@@@@@@@  ;@@+` `@@@@@@`:@@@@@@,  :@@@  @@@@@@@@@@@@@@@@             +@@@@@@#    @@@@@@            `@@@@@,                  
                   @@@@@#            .@@@@@@   @@@@@@@               @@@@@@@@@@@@@@@  .@@@@@@@@@@@#` `@@@@@@@@@@@@  ;@@@@@@@@@@@@@@.              @@@@@@@,  ,@@@@@@            `@@@@@:                  
                   @@@@@#             @@@@@@@ +@@@@@@;,@#`            +@@@@@@@@@@@@@   @@@@@@@@@@@  ` @@@@@@@@@@@:  .@@@@@@@@@@@@@             :@@ @@@@@@@ ,@@@@@@,            `@@@@@:                  
                   @@@@@#             :@@@@@@@ +@@@@@ #@@@@;`           :@@@@@@@@@@@   .@@@@@@@@@@  ` :@@@@@@@@@#   ;@@@@@@@@@@+            .@@@@#'.@@@@@ ;@@@@@@@              @@@@@:                  
                   @@@@@#              @@@@@@@@, #@@   +@@@@@@@:                +@@@#.@` #@@@@,@@+ `   @@;#@@@#, @;+@@@#.               .@@@@@@@#   '@@. @@@@@@@@               @@@@@:                  
                   @@@@@+               @@@@@@@@@.       `+@@@@@@@:       ,@@@@@. #@@@@@;    ` @@.`# + @@'     `@@@@@@` +@@@@'`      .@@@@@@@#,        #@@@@@@@@'               @@@@@:                  
                   @@@@@#               `@@@@@@@@@@;         .+@@@+;.  :@@@@@@@@@@ '@@@@@@@@#, @@;##@@`@@# #@@@@@@@@@ '@@@@@@@@@#` `##@@@#;         .@@@@@@@@@@#                @@@@@:                  
                   @@@@@#                `@@@@@@@@@@@@'`         :  ,@@@@@@@@@@@@@@`'@@@@@@@# +@@@@@@@@@@@ `@@@@@@@@ @@@@@@@@@@@@@@;  ,.         :@@@@@@@@@@@@+                 @@@@@:                  
                   @@@@@#                  @@@@@@@@@@@@@@@@+++,,'+@@@@@@@@@@@@@@@@@@ #@@@@@@ ,@@@@@@:@@@@@@ +@@@@@@ @@@@@@@@@@@@@@@@@@#',,;++@@@@@@@@@@@@@@@@:                 `@@@@@:                  
                  `@@@@@+                 @ '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@, @@@@@@'`@@@@@@' @@@@@;.@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ :+                `@@@@@.                  
                   @@@@@#                #@@: +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@:.@@@@ #@@@@@@  ;@@@@@@ '@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@``@@@                `@@@@@.                  
                   @@@@@@                @@@@@, '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@+ @@@@@@    @@@@@@: @@@ '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+ `@@@@@'               :@@@@@                   
                   @@@@@@               :@@@@@@    ;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'.@@..@@@@@'     @@@@@@ @@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+    +@@@@@@               :@@@@@                   
                   #@@@@@               @@@@@@#        .+#@@@@@@@@@@@@#'.        ,#@@@@ @@ +@@@@@  `#  ,@@@@@ @@`+@@@@'         '+@@@@@@@@@@@@@+;        `@@@@@@`              @@@@@@                   
                   '@@@@@               @@@@@@`                        :@@+         .@@:;@ +@@@@`  @@`  @@@@@ @@ @@+          @@@                         @@@@@@+              @@@@@@                   
                   .@@@@@              :@@@@@@                         `#@#  `+@@#.   :# @ +@@@@  ,@@@  ,@@@@ @'.#   `;@@@,  +@##                         #@@@@@@              @@@@@@                   
                   `@@@@@'             @@@@@@@                          @` +@@@@@@@@+  ` @ ,@@@+  @@@@   @@@@ @ #  ,@@@@@@@@@` #`                         `@@@@@@              @@@@@+                   
                    @@@@@+             @@@@@@+                           #@@@@@@@@@@@@`  ,;`@@@;  @@#@;  @@@# @   @@@@@@@@@@@@@`                           @@@@@@;             @@@@@:                   
                    @@@@@@             @@@@@@.                         ,@@@@@@@@@@@@@#+`  # @@@;  @@#@;  @@@ .'  #@@@@@@@@@@@@@@#                          @@@@@@'            .@@@@@`                   
                    @@@@@@            .@@@@@@          @@@@@#.        @@@@@@@@@@@#;       @ `@@#  @@@@` `@@# @       `#@@@@@@@@@@@.       `#@@@@@.         @@@@@@#            ;@@@@@                    
                    '@@@@@            .@@@@@@        @@@@@@@@@@#    .@@@@@@@@@@;    `@@@. ;@ ;@@  ,@@@  @@@ ,@  @@@#    `@@@@@@@@@@#    :@@@@@@@@@@`       @@@@@@#            @@@@@@                    
                    .@@@@@,           .@@@@@@       @@@@@@@@@@@@#: +@@@@@@@@@;       @@@@ `@@  +.  ##   #, :@# @@@@;      `@@@@@@@@@@  @@@@@@@@@@@@@;   `  @@@@@@#            @@@@@@                    
                     @@@@@+           .@@@@@@      @@@@@##@@@@@@# @@@@@@@@@+         @@@@+ @@@+     '    ,@@@, @@@@,        ,@@@@@@@@@`:@@@@@@##@@@@@.  `  @@@@@@#            @@@@@+                    
                     @@@@@@           .@@@@@@     '@@@;     +@@#`@@@@@@@@@`.+    `   @@@#  @@@@@@`  .  +@@@@@  ,@@@        '+ #@@@@@@@@:`@@@      @@@@     @@@@@@#  `  `     ,@@@@@.                    
                     @@@@@@           `@@@@@@,    @@@:`      `+`@@@@@@@@# #@@        @@+ # ;@@@@@@. ` @@@@@@@ #; @@.       #@@ ,@@@@@@@@;`'        @@@`    @@@@@@#        `  #@@@@@                     
                     :@@@@@.           @@@@@@#    @@@          @@@@@@@@'  @@@`       @#`@#``@@@@@@@  ;@@@@@@@ @@#`@;       @@@   @@@@@@@@+         ,@@'    @@@@@@:           @@@@@@                     
                      @@@@@#           @@@@@@@    @@+         @@@@@@@@.   @@@'      `@ @@@+ @@@@@@@  @@@@@@@+ @@@,+#       @@@    @@@@@@@@'         @@+   .@@@@@@.          `@@@@@+                     
                      @@@@@@           @@@@@@@    @@+  `     @@@@@@@@ ,   :@@@      +'#@@@# @@@@@@@: @@@@@@@.`@@@@ @      .@@@     #@@@@@@@;       `@@;   @@@@@@@           ;@@@@@`                     
                      #@@@@@`          .@@@@@@'   @@@       @@@@@@@@ #@   .@@@      @ @@@@' @@@@@@@+ @@@@@@@  @@@@;@.     @@@@   ,# #@@@@@@@`      @@@    @@#@@@@           @@@@@@                      
                      `@@@@@+           @@@@@@@    @@+     @@@@@@@@ @@@    @@@'    ;@.@@@@  @@@@@@@#`@@@@@@@  #@@@#.@     @@@+   @@@ #@@@@@@@      @@'   ;@@@@@@;          `@@@@@@                      
                       @@@@@@           #@@@@@@;    +.    ,@@@@@@@ #@@@+   @@@@   `@++@@@'  :@@@@@@@.@@@@@@# ` @@@@ @+   #@@@    @@@@ @@@@@@@@     '.    @@@@@@@           '@@@@@.                      
                       +@@@@@`          `@@@@@@@          @@@@@@@:,@@@@#   .@@@@  @@'@@@@  `.@@@@@@@.@@@@@@@ ' @@@@ @@, ,@@@@   .@@@@@ @@@@@@@'         @@@@@@@#           @@@@@@                       
                       .@@@@@#           @@@@@@@@        @@@@@@@# .@@@@@    @@@# @@@`@@@@ #,`@@@@@@@.@@@@@@@ + +@@@ @@@..@@@    ;@@@@@ `@@@@@@@        ,@@@@@@@           `@@@@@#                       
                        @@@@@@           `@@@@@@@#       @@@@@@@  `@@@@@     @; @@@@`@@@@`@+`@@@@@@@.@@@@@@# @#.@@@ @@@@' @;    +@@@@#  +@@@@@@+      `@@@@@@@#           @@@@@@`                       
                        +@@@@@'           #@@@@@@##     #@@@@@@.   @@@@@      :@@@@@:@@@@`@+ @@@@@@@.@@@@@@+ @+.@@@ @@@@@@      @@@@@;   @@@@@@@     .@@@@@@@@  `         @@@@@@                        
                         @@@@@@            @@@@@@@@@    @@@@@@@    @@@@@     @@@@@@@#:@@@ @+ @@@@@@@.@@@@@@+ @;#@@@ @@@@@@@,    @@@@@`   .@@@@@@'   :@@@@@@@@.           ;@@@@@#                        
                         @@@@@@,           `@@@@@@@@@, .@@@@@@     @@@@@  `@@@@@@@@@@ @@@:'  @@@@@@# @@@@@@+ ' @@@#.@@@@@@@@@.  @@@@@     @@@@@@@  @@@@@@@@@+            @@@@@@                         
                         .@@@@@@            .@@@@@@@@@@, ,#@@@     @@@@@,#@@@@@@@@@@@ @@@@  `@@@@@@+ @@@@@@+  +@@@ :@@@@@@@@@@@ @@@@@     .@@@; `@@@@@@@@@@#            ,@@@@@@                         
                          @@@@@@`            .@@@@@@@@@@@@.        +@@@@;#@@@@@@@@@@  `@@@@ `@@@@@@+ @@@@@@@ ,@@@#  '@@@@@@@@@@ @@@@@        .+@@@@@@@@@@@#             @@@@@@.                         
                          .@@@@@@             .@@@@@@@@@@@@@@@@@@@++@@@@+@@@@@@@@@@    #@@@@ @@@@@@` @@@@@@`,@@@@    ;@@@@@@@@@ @@@@@ @@@@@@@@@@@@@@@@@@@#             ,@@@@@@                          
                           @@@@@@.             `@@@@@@@@@@@@@@@@@@+'@@@@+'@@@@@@@'      +@@@@ '@@@@  @@@@@ '@@@@      `@@@@@@@@ @@@@@ @@@@@@@@@@@@@@@@@@;              @@@@@@.                          
                           ,@@@@@@               +@@@@@@@@@@@@@@@@+'@@@@+,@@@@@@         :@@@@; #@@  +@@.`@@@@@         #@@@@@@ @@@@@ @@@@@@@@@@@@@@@@@               :@@@@@@                           
                            @@@@@@:                #@@@@@@@@@@@@@@+;@@@@#.@@@@,            #@@@@``#  ,' #@@@@,            #@@@@`@@@@@ @@@@@@@@@@@@@@@.                @@@@@@,                           
                            :@@@@@@                  +@@@@@@@@@@@@+;@@@@@.@@`                #@@@#    .@@@@.                +@@.@@@@@ @@@@@@@@@@@@@`                 +@@@@@@                            
                             @@@@@@#                    +@@@@@@@@@+;@@@@@                  `@. #@@@  ;@@@, @#                  :@@@@@ @@@@@@@@@#,                   `@@@@@@`                            
                             .@@@@@@`                `@@:`  ,+++++,:@@@@@                  '@@@`,@@@`+@+ @@@@                  :@@@@@ +++++;   .@##                 @@@@@@@                             
                              @@@@@@@                `@@@@@#       :@@@@@                  @@@@@+ @@@ `.@@@@@`                 +@@@@@        @@@@@#                :@@@@@@                              
                               @@@@@@+                @@@@@@       :@@@@@         .#@@@@##`@@@@@@; #@@ @@@@@@#.#@@@@@,         @@@@@@       .@@@@@+                @@@@@@+                              
                               '@@@@@@`               @@@@@@       :@@@@@      `#@@@@@@@@:+@@@@@@ @ #@';@@@@@@ @@@@@@@@@,      @@@@@@       #@@@@@+               @@@@@@@                               
                                @@@@@@@               @@@@@@,      :@@@@@.   ,@@@@@@@@@@@ @@@@@@.@@  @@ @@@@@@:#@@@@@@@@@@+    @@@@@@       @@@@@@`              '@@@@@@`                               
                                `@@@@@@#              +@@@@@@      ,@@@@@` '@@@@@@@@@@@@#,@@@@@@ #:   @+;@@@@@@`@@@@@@@@@@@@@` #@@@@@      '@@@@@@              `@@@@@@#                                
                                 '@@@@@@;             `@@@@@@@     `@@#` #@@@@@@@@@@#`   @@@@@@'+@    ,@ @@@@@@.   +@@@@@@@@@@@. +@@#     ,@@@@@@#              @@@@@@@                                 
                                 `@@@@@@@`             @@@@@@@@.      .@@@@@@@@@@@+     :@@@@@@ @.:    @.@@@@@@@     :@@@@@@@@@@@:  `   `@@@@@@@@              @@@@@@@                                  
                                   @@@@@@@             `@@@@@@@@@@++@@@@@@@@@@@@#       @@@@@@@`@ +  ,'+#:@@@@@@:      :@@@@@@@@@@@@@+#@@@@@@@@@#             #@@@@@@'                                  
                                   .@@@@@@@             +@@@@@@@@@@@@@@@@@@@@@@        #@@@@@@#:#.@  @#`@`@@@@@@@        +@@@@@@@@@@@@@@@@@@@@@@             ;@@@@@@@`                                  
                                    +@@@@@@#             #@@@@@@@@@@@@@@@@@@@,        .@@@@@@@`@'#@` @@ @ @@@@@@@#         #@@@@@@@@@@@@@@@@@@@             ,@@@@@@@                                    
                                     @@@@@@@#             +@@@@@@@@@@@@@@@@:         `@@@@@@@# @.@@+ @@ @ `@@@@@@@+          @@@@@@@@@@@@@@@@@             `@@@@@@@                                     
                                      @@@@@@@#             `@@@@@@@@@@@@@: ;`       `@@@@@@@@  @`@@+ @@`#  #@@@@@@@+        +` #@@@@@@@@@@@@'             `@@@@@@@.                                     
                                       @@@@@@@#              .@@@@@@@@+ `+@@@;     '@@@@@@@@;  :`@@+ @@.@   @@@@@@@@@`    .@@@@. ;@@@@@@@@'              `@@@@@@@;                                      
                                       `@@@@@@@#                      +@@@@@@@@@@@@@@@@@@@@@    ,@@' @@@    ,@@@@@@@@@@@@@@@@@@@@#.                     `@@@@@@@#                                       
                                        .@@@@@@@#                     @@@@@@@@@@@@@@@@@@@@@     @@@  @@@     #@@@@@@@@@@@@@@@@@@@#`                    .@@@@@@@#                                        
                                         .@@@@@@@#                    .@@@@@@@@@@@@@@@@@@@,     @@@ .+@@`     @@@@@@@@@@@@@@@@@@@@                    ,@@@@@@@#                                         
                                          ,@@@@@@@@                    #@@@@@@@@@@@@@@@@@;     `@@# +`@@#      @@@@@@@@@@@@@@@@@@                    :@@@@@@@@`                                         
                                           .@@@@@@@@`                   @@@@@@@@@@@@@@@@+      @@@ +# @@@       @@@@@@@@@@@@@@@@                    #@@@@@@@#                                           
                                            .@@@@@@@@.                   #@@@@@@@@@@@@@;      `@@# @@:`@@#       @@@@@@@@@@@@@@                    @@@@@@@@#                                            
                                             `@@@@@@@@+                   :@@@@@@@@@@@        @@@ #@'@ ;@@,       '@@@@@@@@@@#                   `@@@@@@@@#                                             
                                              `@@@@@@@@@                    :@@@@@#'         @@@ `@ `@+ +@@:        :#@@@@@+                    '@@@@@@@@'                                              
                                                @@@@@@@@@.                                 '@@@  +#,#`@  ;@@@`                                 @@@@@@@@@.                                               
                                                 #@@@@@@@@@                             '@@@@;   @;@# @    @@@@+`                            ,@@@@@@@@@                                                 
                                                  ;@@@@@@@@@,                           #@#.     @+#+ @      +##:                           @@@@@@@@@@                                                  
                                                   `@@@@@@@@@@`                                  .@`+;@                                   +@@@@@@@@@'                                                   
                                                     #@@@@@@@@@#                                  @` @                                  :@@@@@@@@@@`                                                    
                                                      .@@@@@@@@@@+                                .+ @                                .@@@@@@@@@@#                                                      
                                                        #@@@@@@@@@@+                              .+ @         `                    ,@@@@@@@@@@@``                                                      
                                                         .@@@@@@@@@@@#`                           #  #`                           :@@@@@@@@@@@+                                                         
                                                           +@@@@@@@@@@@@,                                                      `@@@@@@@@@@@@@                                                           
                                                             #@@@@@@@@@@@@#`                                                 ;@@@@@@@@@@@@@`                                                            
                                                               #@@@@@@@@@@@@@#.                                          `;@@@@@@@@@@@@@@,                                                              
                                                                 #@@@@@@@@@@@@@@@;`                                   .#@@@@@@@@@@@@@@@,`                                                               
                                                                   +@@@@@@@@@@@@@@@@@#.                          .'@@@@@@@@@@@@@@@@@@`                                                                  
                                                                     :@@@@@@@@@@@@@@@@@@@@@+:,.`         ..:+@@@@@@@@@@@@@@@@@@@@@+                                                                     
                                                                      ` #@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@.                                                                       
                                                                          `#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@,                                                                          
                                                                              +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#`                                                                             
                                                                               ` `+#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+,                                                                                 
                                                                                      `++@@@@@@@@@@@@@@@@@@@@@@#+:                                                                                      
                                                                                          `    :;;'''';;,