@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S?#@@@@@@@@@@@@@@@@#@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#S%#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@#@@@@@@@@@#%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#**S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@##@@@@#@@@@@@@@@@@@@@@%****++***+;:::+*%S#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@S#######@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@S:                   ,;#@@@@@@@@@@@@@@@@@@@@##@@@@@@@@@@@@@@@@@@@@@@@@@@@?;S#@@@@@%*###@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#S#@@@@@@S:                      :?%?%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#S@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%**S@@@@@%;                             S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@#:                               %@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*                                :#@@@@@@@@#S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*,                                ?@@@@@#@%%@@@@@@@@@##@%##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##S%%:                                ;@##@#*?#@@@@@@@@@@@??%S@@@%S#@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#SS##S?+:,,                                    :+%%%S#@@#@@@@@@@@#?*##?#S%S#S%%%SS#@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%;,,  ,,                                            :SSS@@#@@#@@@@@%+????+?S#%*%S#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%+:                                                    ;@%S#SS##@@@@#+;?%%SSS##@#S@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#*++:                                                      ;%%?+%%S#@@@S???S#####%S?#??*?SS###@@@@@@##@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@?;,                                                         ,;:,;*%?S?*?+*SS%##@@##**;+??+?%%SS#@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@?,                                                           ,,:*#%*;++;+%%#@@@@@@@S;*:+%S@@@@@@#@@@S@#S@@@@@@@@@@#@@@@@@@
@@@@@@@@@@@@@@SS@@@@@@@@@@@#,                                                           :+%##%;:?S%?#@@@@@@@@@#+;%SSSSSSS@@@@@@#S%S?@@@@@@@@@@%SS@@@@@
@@@@@@@@@@@@@@#@@@@@#@@@@@@@;                                                           ?@%+:;?#@#?*##@###S%?**?SSS#@@@SS@@@@@@?#?;%@@@@@@@@@@#%%S####
@@@@@@@@@@@@@@@@@@@@#@@@@@@@+                                                           ,: :?#@@@?;%?*++*???%SSS%?%S%S?*S##SS##%+*;@@@@###S%%?%*???S#@
@@@##@@@@@@@@@@@@@@@@@@@@@@@;                                                              :%@@#?,;;+?S@@@@@@@@@@@@@@S%;*%%S%?#@S,?S?S##@S;+***+*%#@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@#?;                                                               ,+:,;%#@@@@@@@@@@@@@@#%%?**?+SSS#?*S;:?#**%%*:,:;*%S@@#S#@
@@@@@@@@@@@@@@@@@@@@@@#%+:,                                                                   :%@@@@@@@#S+?????***???*?%?S#@@@#;,S#?+,,,:*%S?S?SS#@@@@
@@@@@@@@@@@@@@@@@@@@@*,                                                                       ,S#%%%%*+*%%+;**?S#S?*?#@@@@@SS@S;:*:  :++???%?S#@@@@@@@
@@@@@@@@@@@@@@@@@@@@+,                                                                         :::++;;+SS%*?S%??SS??@@@###%;%*: ,:;;;;+?++?S#@#@@@@@@@
@@@@@@@@@@@@@@@@@@@+                                                                            ;##@@%*@@SS@@@@?+?S%**??*+::,:;+?%S%%#@@@S#@@@@@@@@@@@
@@@@@@@@@@@@@@@@@#;                                                                             :#@###?+%#@@#%+++***???;;+?%S@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@S,                                                                              ?@@@@#;+?*;;+?SS%+;+*%#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@%:                                                                               :?*++:,+%#@@#?++?#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@S@@#;                                                                                  *?%;*@@#?;:?#@@@@@@@@@@@@@@@@@@@@#S%%S#@@@@@@@@@@@
@@@@@@@#S@@@@@@@@@?,                                                                             :*?%%%,;+;:;?@@@@@@@@@@@@@@@@@@@@@*,,    ,:%@@@@@@@@%
@@@@@@@@@@@@@@@@@@S+,                                                                            *#S?*++?%#@@@@@@@@@@@@@@@@@@@@@@@@*,    :%#@@@@@@@@@@
@@@@@@@@@@@@@@@@@*,                                                                              :;:+%S#@@@@@@@@@@@@@@@@@@@@@@@@@@@@#%??%#@@@@@@@@@@@@
@@@@@@@@@@@@@@@@S,       :;,                                                        ,   :*:     ,,*SSSSSS#@@@@@@@@@@@@@@@@@@S*?#@@@@@@@@@@@@@@@@@@@@@#
@@@@@@#@@@@@@@@@S:    ,+ ,*#%*++;:,,                                          ,;++?S#S%*+:     ,S++%#@@@@@@@@@@@@@@@@@@@@@@@#S#@@@@@@@@@@@@@@@@@@@@@@S
@@@@@@#@@@@@@@%:,     ,,  ?@@@@@@@@#%+:    ,   ,:**+;;;;+;:,,     ,,:;;;:::::*#@@@@@@@@@@+     ?@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@*:           ;S@@@@@@@@@@@@S%S##S%%#@@@@@@@@@@@@#S???S#@@@@@@@@@@@@@@@@@@@@@@,     ?@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@?; ,,       ,+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%      :#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@%S+       ;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%,       ?@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@?       ?@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@?         +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@S       ?@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@;         :@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@?       +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@:         :@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@;       ,S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#,         +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@