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