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