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