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