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