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