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