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