                                                               :?#@@@@@@@@@@@@@@@@@@@@@#S%*;,                                                         
                                                             ,*#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S*,                                                      
                                                            ,%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@?,                                                    
                                                           ,S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#:                                                   
                                                           *@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#,    ,,,,,                                         
                                                           %@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+:*%##@@@#%:                                       
                                                    ::::;?S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@S,                                      
                                                  ,:#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+                                      
                                                  ;#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+                                      
                                                   ,?#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#:                                      
                                                     ,*S#S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#;                                       
                                                        ,+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S*@@@@@@@@@@%                                        
                                                      :*%#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@?,:@@@@@@@@@@#,                                       
                                                      ,,,S#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#;  ;@@@@@@@@@?;,                     ,::,              
              ,::,                                      ,+,%@@@@@@@@@%%#@@@@@@@@@@@@@@@@@@@@@@?,  ?@@@@@@@@@S                  ,:;*%#@@#%+:,          
          ,:*S@@@#%*;:,                                    :+@@@@@@@@@S%?%%##@@@@@@@@@@@@@@@@?*+:,#@@@@@@@@@@;             :;*%#@@@@@%?%@@@#%*;,      
      ,;*%#@@#??S@@@@@#S?+:,                                 :?S%%S@@#@@@@@@@@@@@@@@@@@@@##*S+   ,@@@@@@@@@@@?         :+%#@@@@@@%+;,   ,;%@@@@#S?+;,,
,:;*?S@@@@@%:,   ,;+#@@@#@@#%*;,                               ,,,*%+*@@@@@@@@%SS@@*?@##%:: ,:   ,#@@@@@@@@@@S,   ,:+%#@@S?+;?@@@S+       *@@@@@@@@@@#
#@@@@#@@@@@*      :?@@@#+:;*%#@@S?+:,,             ,,,            , ?@@@@@@@@@@S+*: :%%::      ;+;S@@@@@@@@@@?**%S#@@#%+,   *@@@@@@%,    *@@@@@@#*+*%S
#%*+;?@@@@@@%    :#@@@@@@+   ,;*@@@@@##S%%%%%%%%SS####+       ,,:+*?#@@@@@@@@@@@%*+;:;;      :S@@@@@@@@@@@@@#SSSS#@@@+     ;@@@@@@@@%   ,#@@@@@@@@:   
+   ?@@@@@@@@;  ,S@@@@@@@@:   ,+#@@#?++++++***%@@@##@@@%: ,;*%#@@@@@@@@@@@@@@@@@@@@@@#%*:   +#@@@?%@@@@@@@@?,   +#@@@@S:   :#@@@@@@@*   ,?@@@@@@@@:   
;   *@@@@@@@#:   *@@@@@@@?   ,S@@@@@#:       *S@@@%:+#@@@%#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S*%@@#?:;#@@@@@##?    ;@@@@@@@#:   ;@@@@@@#,     *@@@@@@@,   
    :@@@@@@#:    ,S@@@@@#,  ,S@@@@@@@#:    ,?@@@@@@S,,?@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+,+@@@@@@@@+     ?@@@@@@@@*    *@@@@@?       +@@@@@#,   
     S@@@@#:      ;@@@@@;    %@@@@@@@S,    +@@@@@@@@S%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@+     ,#@@@@@@#,     %@@@@:        ;#@@@S    
     *@@@#:        %@@@%     ,#@@@@@@;     ,S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%,      +@@@@@@*      ,#@@%          :S@@%    
     :@@@;         :@@#,      +@@@@@?       :@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#,        %@@@@#,       ;@@;           ,S@?    
     ,#@;           *@+        %@@@#,        +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@;         ,#@@@+         +?             ,*;    
      ;:            ,:         :@@@+          ?@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*           ;@@S,                               
                                *@S           ,S@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#%@@%             ?@+                                
                                ,*:            :#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%@#,             ,+,                                
                                                ;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%:                                                 
                                                ?@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;                                                 
                                               +@@@@@@@@@%?@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#,                                                
                                              ,#@@@@@@@@#,?@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*                                                
                                              *@@@@@@@@@: %@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*%@@@@@@@@#,                                               
                                            ,;#@@@@@@@@;  *@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;,S@@@@@@@@?;,                                             
                ,;:,,                   ,+?S@@@@@@@@@@+   +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@: ,S@@@@@@@@@@S?+:,                 ,;*%%+           ,,    
   :*+          +#@@#?,             ,;?S@@@@@@@@@@@@@+    ?@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+  ,S@@@@@@@@@@@@@#%+:,            :S@@#?:          +@S,   
  :#@#:      ,,  ,?@@@#?;,      ,;*S@@@@@@@@@@@@@@@S:     S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%   ,*#@@@@@@@@@@@@@@@#%+:,     ,;?@@@@#;,,,::::,,,*#@@%:  
 ,#@@@@%*?SS####S#@@@@@@@#*:,;*%#@@@@@@@@@@@@@@@S?:      ,#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S,    ,+?#@@@@@@@@@@@@@@@@#%*;,;S@@@@@@@@@@@@@@@@##@@@@@*  
  :%@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@S?+:         ,#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@?        ,:+?S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#+   
    +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#%*;,            ,?@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@?,           ,;*%#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#S@@@?    
     :%##S#@@@@##@@@@@@@@@@@@@@@@@@S%+:,               ,%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%,              ,:+?S#@@@@@@@@@@@@@@@@@@@@@@@@@@#@#?,    
        , :**+:,,,:;+*?%SS#####%*;:                   :S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S:                  ,:+?S#@@@@@@@##SS%*+;*%#@#+,,,      
                          ,,,,,                      ,S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S,                      ,::::::,,,        ,:,          