                                               ,SS@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*,,,,,,    :#@@@@@@@@@@@@@@@@@@@@@*     
                                                ::%?@@*#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@*          :#@@@@@@@@@@@@@@@@@@@@@S     
                                                  ,,+#,*@S@#?@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@*:%@?          :#@@@@@@@@@@@@@@@@@@@@@#,    
                                                     ;,,#*%;;@@@@##@@@@@@@@@@@@@@@@@@@##@@@@S#@@@%#@@@S@#;   +?          ,S@@@@@@@@@@@@@@@@@@@@S%:    
                                                        +;, +@S%@?#@@@@@@@@@@@@@@@S+#@*@@@@?,S@@@+#@@+,+,                 *@@@@@@@@@@@@@@@@@@@@+;:    
                                                            +%:%@S@@@@@@@@@@@@@@@@##@%+@@@+  ?@##:S+:                     :#@@@@@@@@@@@@@@@@@@S      ,
*;,                                                            +@@@@@@@@@@@@@@@@@@@@%,+S?:   :*:S:?,                       +@@@@@@@@@@@@@@@@@@; ,:+*%#
@@@S%*;:,,                    ,,,::;;,                 ,,:;+*%S#@@@@@@@@@@@@@@@@@@@@@SS%*+;:,   ;,,            :*?***++;;:::S@@@@@@@@@@@@@@@@#%S#@@@@@
@@@@@@@@@#SS%%???***????%%%SS###@@@@@#*          ,:+*%S#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#S%*;,            *@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%:     :*%#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S*:       ,%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#####@@@@@@
@@@@@@S?**+++++++++++***?#@@@@@@#@@@@@@@#+ ,*S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S*,   +#@@@@@@@%%@@@@@@S#@#@@@@@@#@@@+,,,;?@@@@@@
@@@@@@@S;             :*%#@@@@@?,;%@@@@@@@S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#?;%@@@@@@@?: ,%@@@@@@@@#@@@@@@*#@%   ;@@@@@@@@
@@@@@@@@@;          :S@@@@@@@@@S;  :?#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#?,  ,%@@@@@@@@@@@@@@@%;%+,  :#@@@@@@@@
@@@@@@@@@#:        :#@@@@@@@@@@@@;  ,?@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#*;,,%@@@@@@@@@@@@@@@#;,:   ,S@@@@@@@@@
@@@@@@@@@@S,      :#@@@@@@@@@@@@@#+%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##@@@@@@@@@@@@@@@#;      *@@@@@@@@@@
@@@@@@@@@@%,     ,#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#,      ,S@@@@@@@@@
@@@@@@@@@#:      ,%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*        :#@@@@@@@@
@@@@@@@@@+        ;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#:         +@@@@@@@@
@@@@@@@@?          S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@?          ,?@@@@@@@
@@@@@@@%,          ;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@:           ,S@@@@@@
@@@@@@#:            S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@?             :#@@@@@
@@@@@@+             ;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@:              +#@@@@
@@@@@?,              %@@@@@@@@@@@@@@@@#####################SSSSSSSSSSSSSSSS%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*                *SSSS
@###?,               ;????*******+++++++++;;;;;;;;::::::::::::,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,                  ,,,,
;;;:,                                                                                                                                                 
                                                                                                                                                      
                                                                                                                           ,                          
                        ::::::::::;;;;;;;;;;+++++++++++************???????????????????????%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*,?%%;                       
                       ,*###################@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*;S?,                       
                        +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+                          
                       ;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;                         
                      :#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#,                        
                     ,%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@?                        
                     *@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;                       
                    :@@@@@@@@@@@@@@@@@@@%?@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S,                      
                    %@@@@@@@@@@@@@@@@@@S,*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+                      
                   :@@@@@@@@@@@@@@@@@@S: ?@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S@@@@@@@@@@@@@@@@@@S                      
                   ?@@@@@@@@@@@@@@@@@#:  *@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#,%@@@@@@@@@@@@@@@@@@,                     
               ,,;+#@@@@@@@@@@@@@@@@#:   +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S ,S@@@@@@@@@@@@@@@@@?;:,                  
           ,;*%#@@@@@@@@@@@@@@@@@@@#;    :@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%  ,S@@@@@@@@@@@@@@@@@@@#S?+;,             
      ,:*%#@@@@@@@@@@@@@@@@@@@@@@@#:     :@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*   ,%@@@@@@@@@@@@@@@@@@@@@@@@S?+:,        
  ,;*%#@@@@@@@@@@@@@@@@@@@@@@@@@@S:      :@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@?    ,%@@@@@@@@@@@@@@@@@@@@@@@@@@@#S*;:,   
?S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%,       ;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%      *@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#%+;
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#+         *@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#,      ;S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@#*,          ?@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@:       ,*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@