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