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