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