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