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