                                                                                                                                                      
                                                                                                                                                      
                             ,,::;;;;;;::,,                                                                                                         ,:
                           :;+*?????????*++;:,                                                                                               ,,;+?%S#@
                         ,+?%SSSS####SSSS%%?*+:,                                                                                        ,,;*?S#@@@@@@@
                        :?S###@@@@@@@@@###SS%?*;,                                                                                   ,:;*S#@@@@@@@@@@@@
                       :?#@@@@@@@@@@@@@@@@@##S%*:                                                                                   ,;?#@@@@@@@@@@@@@@
                      ,+S@@@@@@@@@@@@@@@@@@@@#S?;,                                                                                 :?@@@@@@@@@@@@@@@@@
                      ;*S@@@@@@@@@@@@@@@@@@@@@#%;,                                                                               ,:%@@@@@@@@@@@@@@@@@@
                     ,+*%S@@@@@@@@@@@@@@@@@@@@#+:,,,,,,,    ,,,,                                                                 ,+#@@@@@@@@@@@@@@@@@@
                     :+*?%#@@@@@@@@@@@@@@@@@@#*;;;;;:::::,,:;;::,,,                                                              :%@@@@@@@@@@@@@@@@@@@
                    ,:;+*%S#SSSS#@@@@@@@@@@#S?+++++++;;;;;+++++;;::,,                                                            :*S@@@@@@@@@@@@@@@@@@
                    ,:;;+?%S%%%%%%S########S%????******+**???**+++;;:,,,                                                          :%#@@@@@@@@@@@@@@@@@
                   ,:::;+*????????%SSSSSS#SS%%%%?????????%%%%%??**++;;::,,,                                                  ,;??%S@@@@@@@@@@@@@@@@@@@
                   ,:::;+********??%%%%%%%%%%%%%??%SS%%S####SSS%%??**++;;::,,                                                 +#@@@@@@@@@@@@@@@@@@@@@@
                   ,:::;+*+++;;++**?????%%%%%%%??S#####@@@@@@###SS%%???*++;;:,,                                              ,+#@@@@@@@@@@@@@@@@@@@@@@
                  ,::::;**++;;;;+****??%%%%%%???S@@@@@@@@@@@@@@@@##SSS%%??*++;;:,,                                           ;S@@@@@@@@@@@@@@@@@@@@@@@
                  ,::::;++++;;;;+*****?????****?S@@@@@@@@@@@@@@@@@@@@##SS%%??*++;::,                                         +#@@@@@@@@@@@@@@@@@@@@@@@
                   ,::::;+++;;;;;+++++++++++++*%#@@@@@@@@@@@@@@@@@@@@@@@@##SS%??*++;:,,                                     :%@@@@@@@@@@@@@@@@@@@@@@@@
                    ,,,:::;;;;;;;;;;;;;;;;;;;+*%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##S%??*+;;::,,,,,,            ,,:::,           :%@@@@@@@@@@@@@@@@@@@@@@@@
                       ,,,,::::::::::::::::;++?S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##S%%?**++++++;;;;:::,,,,:+?%SS?;,           ,:;*%S@@@@@@@@@@@@@@@@@@@
                              ,,,,,,,,,,,:;;+?%#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#SSS%%%%%%%%?????**??S#@@@@@%:                ,;%@@@@@@@@@@@@@@@@@
                                      ,,:;+*?%S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@####@@@@@@@@@@*::,,             ,?@@@@@@@@@@@@@@@@@
                                     ,::;+*?%S#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#SS%?**;;:,,,,,,,:?@@@@@@@@@@@@@@@@@
                                   ,,:;++*?%S#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##S%%%?%#@@@@@@@@@@@@@@@@@
                                  ,::;+**?%S#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
                                ,,:;;+*??%S#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
                              ,,::;++*?%%S#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##SSSSS#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
                             ,,:;;+**?%%S#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#%?***+++*?#@##S%?*++*?#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
                           ,,::;;+**?%SS#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#?+;::,,,:+?%?*+;;:, :?@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
                          ,,::;++**?%SS#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%;,     ,;*?*;,    ;%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
                         ,,::;++*??%SS#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#+,     ,:;++;,   :%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
                        ,,:;;++*??%SS#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S;       ,,:,   ,?@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
                     ,,,,:;;++*??%SS#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%:            ,*#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
                 ,,,,,,:::;++*??%SS#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#*:          ,*#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
              ,,,,,,,,::::;++*?%%S##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%+,        ,+#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
              ,,,,,,,::::::;++*?%S#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S*:,      ,+#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
               ,,,,,,,::::::;;+*?%SS####@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S?+,      :S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
                ,,,,,,,:::::::;+*?%%%SSSSSS#####@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#S?+:,    ,?@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
                 ,,,,,,,,::::::;+*???????%%%%%%SSSSSS#####@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#S%?+:,    :%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
                   ,,,,,,:::::::;+++*********???????%%%%%%SSSSSS#######@@@@@@@@@@@@@@@@@@##SS%%?*+:,    :S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
                    ,,,,,,,,:::::;;;;;;;+++++++++********???????%%%%%%%%%SSSSSSSSSSSSSSS%%%??**+;;,,    ,%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
                     ,,,,,,,,::::::::::::::::;;;;;;;;;;+++++++++*********??????????????****+++;;:,,     ,*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
                       ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,:::::::::::;;;;;;;;;;;;;;+++++++;;;;;;;:::,,,        ;S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
                        ,,,,,,,,,,,                       ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,             ,?@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@