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