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