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