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