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