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