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