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