@@@@@@@@@##$#@@@@@@@@@@@@@@####$&%=?%%&=???=%&$##@##$$$$$&$&$$#$$&?%$#$$$$$$$###
@@@@@@@@@#&#@@@@@@@@@@@@@@@@#$&%=?+%&=+;!!+*+?%$$###$$&$$&$&&$$##$%*%$$$$$$$$###
@@@@@@@@#&$#@@@@@@@@@@@@@@@#$&%=?+?&$%!:*+??**?%&$##$$&&$$&$$$$###&*!&$$$$$$$###
@@@@@@@#&%#@@@@@@@@@@@@@@@#$&%=?+&&%%$=+**!+;:!+=&$##$$&$$$$$$####$*:+$$$$$$$###
@@@@@@#&%&#@@@@@@@@@@@@@@@#&%=?++%#$&$%+!?%+--:!+=&$#$$$&$$$$###@#$?::=$$$$$$###
@@@@@@$=%$@@@@@@@@@@@@@@@#$%=??++%&$&$&=?==?*--:!?%&$#$$&$$$$#####$%*-;&$$$$$###
@@@@@#%=%$@@@@@@@@@@@@@@#$&%=?+++=$$$=%&???*:~~-:*?%$###$$$#$######&*:-*$$$$$$##
@@@@#%=%&#@@@@@@@@@@@@@@#&%==?++**=$$??&=?&:,,,~-;*?%$###$$##$##@##%?;--=$$$$$##
@@@@&==%&#@@@@@@@@@@@@@#$&%=?++*!!+%%%&&&%=!,,,,~-!+=%$###$#@######&=*:-;&$$$###
@@@#===%$#@@@@@@@@@@@@@#&%=??+**!+%%*???++==-,,,,~:!?=&$#########@#&=+!--+$$$###
@@#%?=%&$#@@@@@@@@@@@@#$&%=?+**!!*?=*&&&=!*:,,,,,,-;+=%&#####@#####$%+;---=$$$##
@@$??=%&$#@@@@@@@@@@@@####$$&=??+*!;!+%%;------:;*?=&$##$#@##@#####$=*!:--;&$$##
@#=?==&$$##@@@@@@@@@@@@@@@@###$$&%?*!*%=!--;*+=%&$$$$&$####@######@#=*!!---+$$##
#%??=%&&$#@@@@@@@@@@@@@###########$%??$&+-;+=%$$##$&%===&##@########?*!!:---%$##
$???=%&$##@@@@@@@@@@@@#$$$$$$######$%%$%::*=%&&$&&%==%%%&$#@@#######=;?+;--~;&##
=??=%%&$##@@@@@@@@@@@@#####$$&$#####$%?*-:!?%%&&&%?+=&$$$$#@########%*=?+---~+$#
+??=%%&$##@@@@@@@@@@@@######$%?%$###$%+:~-;+%%&$$&%%%&$$$$#@#####@##&=?+;---~-=#
???=%%$$##@@@@@@@@@@@@@#####@&$$%&###&*-,~:+=%&$##%$$###$$$#######@#$?;*!----~;$
???=%&$###@@@@@@@@@@###@##$###$*=&%$#&+-,~:*!?%=$##$*%##$$$#######@#$+:*:!:--~~+
??==%&$##@@@@@@@@@@@###@@#$$$&=+?=&&$&+:,~-;:+=%%%%?=&$&=%&#@######@#=!!*!:---~-
??==%&$##@@@@@@@@@@##$######$$&=??%&&&?:,~--:;*=&&&&&%=++=&$@########%**:!:---~~
??==%$$##@@@@@@@@@@#$$&&&$&&%=?+*?=%&&?:~,~~-~~:;!**!!;;!+=$@########&;!;:-----~
??==&$$##@@@@@@@@@@#$&%=???+**!!*+?%&&+:~~~~~,,,,,,,,,~~:!?$@########&*!;:-----~
???=&$$##@@@@@@@@@@#$%=?+**!!;;!!*?%$%+:~~~~,,........,,-:+$@######$&=*;--:-----
???=&$$$#@@@@@@@@@@@$&=?*!!;;;;;!+=&$=!-,~~~~,........,~~:+$##@###$&=?+;:-:;----
???=&&$$#@@@@@@@@@@@#&%?+*!;;;;;!+=$$=;~.,~~~,.......,,~-:+#@@@###&%==?!:-:-:---
?+?=&&$##@@@@@@@@@@@#$&=?*!!;;;;!+%$$%!-,,-~~,......,,~~-;?@@@##&&%%=?+!:::;;---
++?=%&&##@@#@@@@@@@@##$%?+*!!;;!!?&$$$=!-:;-~,,...,,,~~-:!&@@@#$====?+*!;:;:----
*+?=%&$##@@#@@@@@@@@@#$&%?+*!!!!*?$$$#$=!?$?:,...,,,~~-:;+##@###?++++++*!;-::;--
*+?=%&$#####@@@@@@@@@##$%=?+**!*+=$$$#$%*:;*-,..,,,~~-:;*=@#$%=?+*!!****!:--;!-~
*+?=%%$#####@@@@@@@@@###$%=?+***+?=&&%++!~~-,,,,,,~~--:!!*=&=??*!;;;;;*!;::~~:-~
*+?=%%$$#####@@@@@@@@@##$&%=?++++??==+;;;:-~~,,,,,~~~-:::--!+?!;:::;;;!*!;:-!!:~
*+?=%%$$#####@@@@@@@@@###$&%=?????=====+;;;;:~~~~~,,,~~-:-~-:::::::!+*+?*!;::;;~
*+??%%&$#####@@@@@@@@@####$&%%===%&&%%%=?+*;;:~~~,,,,,~~~~~~--::::;*???=??*:;;--
*++?=%&#######@@@@@@@@#####$&&%%&$$&&&&%&&?;-~~~,,,,,,~~~~~-~--:;;*?=======+::;*
*++?=%&$#########@@@@@######$&&&$#$%=??%#$%=+;-~~~~,~,~~------;!;;!+%&%===%%*!**
*++?=%&$#########@@@@@@######$&&&&&=+;:!&#$%?+*:---~~~-:------+=+;!+%&%====$+**-
*++?=%&$###########@@@@######$$&$$$&=+!!=##&?+*+!!!;--:;:--:--**+*!+%&%%===%&;~~
*++?=%&$$#########$#@@@@######$&&$##$%%%$##$&%=?+***!+=+;::!!;!***;*==%%===?$+--
**+?=%&$$########$###@@@@#####$&&%&&$$#######&%=?***?##$&++???+*!!;!?%%%===?&%!-
**+?=%&$$######$#$$$#@@@@@@####$&%==??=%$&=$#$&%=?+=#@##$&??===+!!+?%&%====?=$?-
**+?=%&$#######$#$$$$@@@@@@@###$&%=??+?=%?**@#$&===$#@##$$$???+!*+=%%&%%=%=??$&;
**+?=%&$$#####$$#$$&$@@@@@@@@###$&%=??===?*!%@#&%==&#####$===??++???==&%%%=??=&!
**+?=&&&$$####$$#$&&&@@@@@@@@@@##$&%%%%%%=?++##$&%==$#####%=$&&%%%==%&&&%%==??&=
**+?=&$$$$####$$#$$$#@@@@@@@@@@@###$$&&&&&%==%@#$&%==#####$%$&%=%$$$$$&&%%==??=&
**+?=&$$$$#####$$&&$#@@@@@@@####@@###$$&%%=??+&@#$%=?%####$&&&&%$$$$$$&&&%%=??+&
!*+?=&$$$$$##$#$$%+%$@@@@@@@#########$&%=??++*+$##&%??%####&&&+!$$$$&&&&&%%%=?+?
!*+?%$$$$$$##$##$#$#@@@@@@@@########$$&%?++****?@#$&=??&##$+$%?+$$$$&&&&%%%%=??+
!*+?%&$$$$$##$##$$$##@@@@@@###$$####$&%=?+**!!!*%@#$&=??$$#$$$&$$$#$&&&&%%%%%=??
!*+=&&&$$$$$#####$$####@@@@##$$$$###$&%=+**!!!!**$@#&%=?=$$$$$&$$$$$$&&&%%%%%%=?
!*+%&&$$$$$$#########@@@#@@##$$$$$#$$&=?+**!!!***?##$&%?*=$$$#$$$$$$$&&&%%%%%%=?
!!+&&&&$$$$$##$######@@@#@@##$$&$$$$&%=?+**!!!***+=##&;,,~+&$$$$$$$$&&&&&%%%%%%=
!!?&&&&&&$$$###########@#####$$&&$$$&%=?++******+++&@=:::::%$$&&$$$$$&&&&%%%%%%%
!*=&$&$&$$$$################$$$&&&$$&%==?+*****+++?=#$=+:;:=$$%%&$$$$$&&&&&%%&&%
!+%&&&$&$$$$######$########$$$$$&&&&&%==?+++**++++=%$$=++*+%$$%?=&&&&&$&&&&&%&&&
!=&&&&&&$$$$#$$$$$$$#####$$$$$$$&&&&&%%=??++++++???%$$=*!+?%$&=+?&===%&&&$$&&&&&
*%&$&&$$$$$$$&&$$$&$#####%$$$&&$&&&&&%%=???++++??+?&&&=!!++%$&?!*%++?==%%&$$$$$&
?&&$$$$&&%%%$%%%$$&$$#$$$&&&$&&&$&%%%%===???+???++%$=%?***+%$%*!!=***++?=%%&&$$$
&$$&&%%=====&=%%%&&$$#$$$&&&&&%%&&%%%%===?????++*?&%===**+*&$=;!;?;;;!!+++?=%&$$
&%==???????=&?%=%&&$$#$$$&=%&%%=%%%?====?????++**=&?=%=*!**&$+:::+;::::;;!*+?=%&
??+++++????=%===%%&$#$$$$%?=%%=??==+++??????+**!*%=?&%*!!!+$&!:::+:-::;:;;!*+?=%
+******+++?%=?==%=&$$$$$&%???=??+??!;!!**+??*!!;*%+=$%;!*!?$%;:;:*:;:;;;;!!**++?
*!!!!!!**+?&=?==%%&$$&$$&+=?+++***!:--::;!++!;;!+=*%$=+?++=$=;;!;+!!!!!!!!!****+
;;;;;;;!!*?&?====%%$$%&$&%=?++**!!;-~~~~:;*+!!!!%?+%&%=?+*%$?;!!;?*!*!!!********
::::::;;!*+%??=====$&%%&&%=?+**!!;-~~~~~-;*+*!!+%!!=?%=*!!&&+;;;;+!!!*********!!
----:::;;!*%?==%??%&%%%&$%==+*;;;:~,,,,~-;*+*!!=?!+%=%?!!+$&;::::*;;!*+?+++***!!