@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@#?S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@###@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@#S#@@@@@@@@@@@@@@@@@@@@@@@@@@S@@@@%***+++**;::,,:;*?S#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;                   ,%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#*                     ,:;;:+@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#S@@@@@@@@@@#@@@@@@@@@@S*,                           :@@@@@@@@@#@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;                              ;%@#@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@%%#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@?                                 *@@@@@@@S%#@@@@@@#@@S@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+                                 ,#@###??SSS@@@@@@@%*S%##@#%%#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#S%:::                                 :*%S+*?S##@@@@@@@%+S@?*%?%#S%#SSS#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@##S##S+,                                    ,*%,:+S@@@@@@@@@@#*+%%?*+%SS?*S#@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@S?%S#@@@@@@@@@@@@?;,, ,,                                      ,*#* ,%S@@@@@@@@@#;;???%SS###@S@@S#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%+:                                             +**; +#SS#@@SS@S?*?%#S##@##S%%+%%*#SSS#@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%*+:                                               *S,  ;;%;%??+?%+*%S?SS#@@@S%?:;%***%?%S#@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@?:                                                  ,*: ,++,,:*::;::*%%%#@@@@@@@;;:+%#@@@@#%##%@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@%,                                                    , :??++*;,+%S**#@@@@@@@@@#*:%SS#SSS#@@?%@*@@@@@@@@@@@@S@#@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@*                                                   ;?, ,;??;,;S@##+%##@@S#S%*++*???#@@#S#@@?%*+@@@@@@#@@#S?%SS@#S#@##@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@*                                                   :S: ,:: ;%@@@@+;?**+;+??*?%S%%?%%%??%%?@#*;+S##SSSSS?*?SSSS?+?##@@@@@@
@@@@@@@##@@@@@@@@@@@@@@@@@@@+                                                    :,    +@@@@#+,;;;*S#@@@@@@@@@@@@@#%?*;*?%,+%*%#@@S++%S%;**?S@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@+,                                                         ?%++::+%S#@@@@@@@@@@@@@@#%?%?**?;*;,*S%+S%;;+*+::?%%@%@#SS##@@@
@@@@@@@@@@@@@@@@@@@@@@@@#%+:,                                                          , :*%#@@@@@@@@#S%**???*+++*?%??%?S;:##%;,,:+***S##???%S#@@@@@@@
@@@@@@@@@@@@@@@@@@@@@S?;,                                                                +S@@@@#S%?*;?%%* ,++?S#%;%@S?@S%*,;;:,:::*??%?+?%S#@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@#,                                                                    :%S*;;;:;?*%%%*?SS**%??S##*:?*,  ,:;+?S#@#S#%+%%S##@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@+                                                                       ,:?#@%?#@%@@@#@@S+?%?+++,:,,+?S#@@@@@@@@@@@@#@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@#:                                                                        ,?####S?+#@@@%+;;++:::;*?S#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@;                                                                          :@@@@@%:**+;+?%%*:;?S@@@@@@SS#@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@S;                                                                          *S?+;;,:?#@@S+;*S@@@@@@@*,  ,+@@@@#%*+;*#@@@@@@@@@@@##@@
@@@@@@@@@@@@%?%S@@@#:                                                                         ,;*%S%,%#S*::?@@@@@@@@@@+     *@@S:     ,%@@@@@@@@@@@@@@
@@@@@@#@@#?:    ,%@@+                                                                         ,%SS?; ;;;*%@@@@@#@@@@@#;,,:+?S@@@S?;,   +@@@#@@@@@@@@@@
@@@@@@@@@@S;     ;#@#+                                                                        :%**+*%##@@@@#*%#@@@@@@S*?S@@@@@@@@@%,   +S@@@@@@@@@@@@@
@@@@@@@@@@#*,  :+%#@@@?:,                                                         :+;:+?,     ,,,+??%SSS#@@@#@@@@@@@@@@@@@@@@@@@@#:     ,*@@@@@@@@@@@@
@@@@@@@@@S:    :#@@@@@@@#?:                                                  :+**+;;;+?+     :#%?;?%S######@@@@@@@#@@@@@@@@@@@@@@S,       :*%@@@@@@@@@
@@@@@@@@@;    : ;@@@@@@@@@@S%?*+;:::,                                      ,*@@@@@@#S%+     ,S@@@%?%S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*,   :; :S#@@@@@@@@@
@@@@@S*;,,    , ;@@@@@@@@@@@@@@@@@@@#?+,  ,,,  ,;*****?*+;:,   ,:;+****+++*#@@@@@@@@@@+     *@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+     ,,+#@@@@@@@@@@
@@@#*;,       ,+#@@@@@@@@@@@@@@@@@@@@@@#S##@#SS#@@@@@@@@@@@##SS#@@@@@@@@@@@@@@@@@@@@@@:     +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@?,      ?%*+;+#@@@@@@
@@@@#S%+      +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@?      ,#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%,       ,S@@S?S@@@@@@
@@@@S#S,     ,#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#+        *@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*         ,%@@@@@@@@@@
@@@@@@#,     +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+         ;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#?*;    :::*@@@@@@@@@@
@@@@@@+      S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@:         ;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#:   +@@@@@@@@@@@@@
@@@@@#,      ;S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#,         *@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+    *@@@@@@@@@@@@
@@@@@%        ,+#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@?         ,#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@?, , ;@@@@@@@@@@@@
@@@@@* ,:,   ;S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+         ,S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@?,,;,,S#SS#@@@@@@@