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