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