                                                         ;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#,   ,:+*???*;,                                 
                                                         *@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+:*%#@@@@@@@@S,                                
                                                 :::,:;*S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S@@@@@@@@@@@@@%                                
                                                 S@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@:                               
                                               ;S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@:                               
                                               :?@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S,                               
                                                 :?@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#:                                
                                                   :*#S%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%:                                 
                                                      ,+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%+@@@@@@@@@@@S                                   
                                                    :*S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@* :@@@@@@@@@@@S,                                  
                                                   ,;;;?@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%:  ;@@@@@@@@@@@S:                                  
                                                       %*%@@@@@@@@@@SS@@@@@@@@@@@@@@@@@@@@@@@@@@@S    ?@@@@@@@@@@@:                        :;+;,      
     ,;*%S?+:,                                        ,, :##@@@@@@@@@S??%S#@@@@@@@@@@@@@@@@@@@@@@#*:,,S@@@@@@@@@@@*                   ,;+?S@@@@@S*:,  
 ,:+%#@@@@@@@#S?+:,                                       :+#@#@@@@@@@@@#SSSS#@@@@@@@@@@@@@@@@@@;:::,:@@@@@@@@@@@@#,             ,;*%S@@@@@@#??#@@@#%*
%#@@@#%+:;?S@@@@@@@S?+:,                                    ,*;SS#@@@#@@@@@@@@@@@@@@@@@@@@@##?;S+    ;@@@@@@@@@@@@@;         ,+?S@@@@@@@S?+:,  ,:*S@@@
@@@@?,      ,+@@@@S#@@@#%+:,                                   :,;S+*S@@@@@@@@@?%%#@S;S@#SS::  ,,    :@@@@@@@@@@@@@*    ,:+?S@@@S?*?#@@@?        :%@@@
#@@@#?;     ,%@@@@#?::*%@@@#%*;:,,               ,,               ,:#@@@@@@@@@@@S;%+, +S%::       :::,%@@@@@@@@@@@?+;+?%#@@@#?;, ;S@@@@@@%     +S@@@@@
@@@@@@@%;   ?@@@@@@@#+  ,;?@@@@@@#SS%%?????%%%SS###%:         ,,:;+?@@@@@@@@@@@@#?+;:,,;;       ,?@@@@@@@@@@@@@@@@@@@@@@@@#:   ,%@@@@@@@@@:  :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:            ,,                                
                                              ?@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+                                               
                                             *@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#:                                              
                                            ;@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S,                                             
                                           ,#@@@@@@@@@@?S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@?                                             
                                           ?@@@@@@@@@@%:@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@:                                            
                                          :@@@@@@@@@@#,,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#%@@@@@@@@@@?                                            
                                          ?@@@@@@@@@#: ,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%,%@@@@@@@@@#:                                           
                                     ,:+?S@@@@@@@@@@;   S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@* ,S@@@@@@@@@#%*;:,                          ,,:,        
       +??*;,                    ,:*%#@@@@@@@@@@@@@;    S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*  ,S@@@@@@@@@@@@@#%+:,                   ,*%#@@%,       
      ,*#@@@@?,              ,:+%#@@@@@@@@@@@@@@@#:    ,#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S   ,%@@@@@@@@@@@@@@@@#%*;,              :S@@@%;,        
        ,?@@@@#?+,       ,:+%#@@@@@@@@@@@@@@@@@#*,     ;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@:    +#@@@@@@@@@@@@@@@@@@#S*;,       ,;?@@@@@#+:,,,:::,,
%SSSSSSS#@@@@@@@@#?: ,:+%#@@@@@@@@@@@@@@@@@@#?+,       +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+     ,;?S@@@@@@@@@@@@@@@@@@@@S?+:, +#@@@@@@@@@@@@@@@@@#
@@@@@@@@@@@@@@@@@@@@S#@@@@@@@@@@@@@@@@@@#%+:,          ;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#,         :+?S#@@@@@@@@@@@@@@@@@@@#S@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S?+:,             ,%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%,            ,;*%#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#%*;,                 :S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S:                :;*%#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@#S#@@@@@@@@@@@@@@@@@@@@#%*:,                    :#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#:                   ,:+?S@@@@@@@@@@@@@@@@@@@@@@@@@@@@