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