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