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