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