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