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