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