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