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