?%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S:                       ,;?#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S%S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+                  ,,       :*#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@:                 ,%#%*;,     ,*#@@@@@@@@@@@#%#@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@?,                *@@@@@#?;,    ,+??*+*?S@@@@@@@@@@@@@@@@@@@@@#@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%;             ;%@@@@@@@@@#?;,       ::,;+?@@@@@@@@@@@@@##########@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S*;::,,,, ,?S@@@@@@@@@@@@@@#%*+;+?S#@S*;%@@@@@@@@@###############
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%?#@@@@@@@@@@@@@@@@@S*;S@@@@@@@@@@@####+,S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@####%%###############
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##@@@@@@@@@@@@@@#*:   +@@@@@@@@@@@@@@@@*,%@@@@@@@@@@@@@@@@@@@@@@@@@@@@#######SS###############
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#%+;::;+%S*,      ;@@@@@@@@@@@@@@#@*,%@@@@@@@@@@@@@@@@@@@@@##############################
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S+,                ,S@@@@@@@@@@@@@@??@*,?@@@@@@@@@@@@@@@@######################%S##########
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%,                  ?@@@@@@@@@@@@@@@@@@@?,?@@@@@@@@@@###############S##########S%S######SS%#
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#,               ;?+*@@@@@@@@@@@@@##S%?**;  :;*S@@##################SSS#S##SSSS###SSSSSSSSSS#
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#,               ;@@@@@@@@@#S%*;:,,  ,:;*%S*, ,:%S##SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#?#@@@@@@@@@@@@@@@@+;,,:,     :;,+??%*;;+;::,   ,:;+*%S@@@@@@#*, ,+?%%%SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S#@@@@@@@@@@@@@@@@@@SSS*,   ,+*:+;,        :*%S#@@@@@@@@@@@@SS?, :+*???%%%%%%%%%SSSSSSSSSSSSSSSSSSSSSSSSSS%**%
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S?:,                ,:+?#@@@@@@@@@@@@@@@@@@#%: ,;+*???%%%%%%%%%%%%%%%%%%%%%%SSSSSSSSSSS%*+%
@@@@@@@@@@@@@@@@@@@S%??%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#*:              :*?%SS#@@@@@@@@@@@@@@@@@@@@@@@#%; ,:+**?????%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%SSS
@@@@@@@@@@@@@@@@@@*,    :%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%,                ;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#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#@@@@@@@@@@@@@@%                         ,+#@@@@@@##SS#@@@@@@@@@@@@@@@@@@@@@@@@@##?: :;+*********?%S@@@@@@@@@@
@@@@@#S%??***++++;,:+??+;+????%SS%@@@@@@@@@@@@@@@@@@@@#,                           ,%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#S+,,;+****+*%S@@@@@@@@@@@@@
%?**++;;;;;+**?%%S###@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+                              :%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#S+:;*?%SS#@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#,                               :#@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@###@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S,                             ,*#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%:,                       :++%#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#;    ,,,,:,,,;::,    ;#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#:   ,#@##@@#@@@@#:   ,%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+    *@@@@@@@@@@@@S,   ,S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@,    S@@@@@@@@@@@@@*    :@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#,   ,@@@@@@@@@@@@@@#,    S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@,   +@@@@@@@@@@@@@@@?    %@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;   %@@@@@@@@@@@@@@@@;   ?@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+  ,#@@@@@@@@@@@@@@@@S,  +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@?,  ,%@@@@@@@@@@@@@@@@#,   *@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@