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