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