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