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