.-=+*******++- .=+*******++=:.
.-+###*=======*##-. .:+***+=:. +##*======+*##*: .****+=:.
.+##*-. +##*. =*****+-:. .+##*=+*###+: =##+ .*##- .===+*###*=: .:. .==-.
.=##*. .=###* ..-=+*###+=. .*##=.:-=*####=. :###-....::=##*. .-*###: .--. -**- :##+=.-###.
.###+------:::+####* .-###* .*##*####*=:###- -*##########*: :=###+: .+##+ -###: :*#*-.*##= ..:. ...
:=+*#############*: .-*##=. .-++=-:. +##+ .:---+###*: .:+##*=. :**++###- -###*. -*++. -###. :#*+. .+#*=
.......+####*. .=*##+: .:-+##*: .=*##+:. .-*##*-. =#######--####* .*##= +##+ ... .*##+. ... .
.=####+. .=*##+: .-=+*###*+-. :=###=: .-*##+:. +#######+##*###. :###: :###: :**+. ..*##+. +##*:+*.
-####=. .-*##+. :##*+-:. :=*=. .-*#+: .####++####*.*##- =##* +##+ .*##= :#####+=-:. :*####*.
:###*: :*#*: :##. .. =###=.:+*+-. +**- =*#+ .###- -##*. .-###+*####+:=--==-.
.*##=. .:. :##: *##=. ..=: :###..*##- +##+ ..:-=###=.
.-: +*. :##: :-: .... :+#+. :##*. :*##+. .....:.
+#. :##. :. .+##- .=##*-.:=+*#######.
+#: :##. .-. :=*+=*###*+=-+###*.
+#: .=- :##. .-: .. =##*-. .-=*##+.
. +#- :#+ :#*-. +#*::. =#- -###**#######:
=#: +#= -#= -#*+#=. .=###=+**=: .##: .--===-::###:
:#= .:. =#+ =#*. .*#= :**. :####. .:=#+. =#*. .+#*=.
=#: .+#*. -#* .*##: =##= .+*: .+##=.... :*+:. :##+. . .:
.**..-*++#: -#*-:. =##: *##= .+*. :###*++**#**###+==--:. :*###*+: .=**#****: ...
:#+**: -#= +###=+*=:. =##: +*#= .=#: .+#+++++==--:.:::-==*+==*####+-. ***#++**##=-::. -*+*+*+:
.*#+. .#+ .*##*=-=**. =##-:::::=#=--=*+: =#: ::::+#- *#+#: .:#*-=+***+=--:...:. =#:. .#*
.+++###*+++##+++++*##*#####===+##=--====+#=--:. -#- .. .=*#+=---:::++=. :#+ ..:--=+*##+=-:.. :**=-+*-
.:-==*#****#-. *##-::-::::.=#- =#: :#= .+**==-::.. .:-==:---===+++*****+. -#*::-=+**+=-::. .::-:.
:#+. :#+ *#- .:. +#. .#+ :**--=++**+=-:.. +#. ..-=*##*+===--.
-#= .**. +#: .-======--:** +*. :**. ..:-=+++++=--:.. **::-==+++++==--::::-===.
=#- +#. +#- .=#+=-::--+#*+-. -#: .:. .............:--=+#*- .-==-::..
.=#-+#: =#= =**####**++#**##+---:::::::::::::-----==+#*+++********+++++++++++++++++==-.
=##*. :#+ :=+****######***=--=======+======-----:::**....
:-: .** ...... +#.
-#-
:#=
.#*
+#-
.:.
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@* +@@@@***+*-@@@@@*****@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@**----:-@-----@**-+#+------++####+-- -*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*@%#########%@ @%########################%#--*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*-- -#############@ %####################%%%%%%%%%%%**@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@**#%%-%%@%##############@:####################%%%%%%%%%%%%%%=-*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#+@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*---##%%%%%%%######%#########%####################%%%%%%%%%%%%%%#+- +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#+@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+--+#####%%%%%%%%%%%%%%%####################%%%%%%%%%%%%%%%%##########= -*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%- =############%%%%%###%%%%##########%%%%%%%%%%%%%%%%%%%%%%%###############+*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*-@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@-+#################%######%%#######%%%%%%#########%%%########################*--*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%#@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*=##############################################################################+-:**@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#+@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ -################################# #######+-%#####################################* -@@@@@@@@@@@@@@@@@@@@@--@@@@%+-#@@@@@@@@@@@@@@@@
@@@@@@@@@@@#@@@@@@@@@@@@@@@@@* -################################ #%%%###= *%###################################-- +@@@@@@@@@@@@@@@@@@@@++@+++#++@@@@@@@@@@@@@@@@@
@@@@@@@*@@@--@@@@@@@@@@@@@@@ =#########################% #####=+#%%%###= + ###################################### -@@@@@@@@@@@@@@@@@@@@@@@@@@*-@@%--@@@@@@@@@@@@@
@@@@@@#+-#@%#@@@@@@@@@@@@@@+ *#############*-*#########- :#####*++%%%###% * *##########=+#########################:-@@@@@@@@@@@@@@@@@@@++@@###@@@*+@@@@@@@@@@@@@@
@@@@@@@*-@@@@@@@@@@@@@@@@@*:*##############% ########*-*@%%+%=-@+ %%%#### @% ##########*- -*######################*@@@@@@@@@@@@@@@@@@@@++#+++++-++#@@@@@@@@@@@@@@
@@@@@@@++@@@@@@@@@@@@@@@*-+*###############+ %%%####+*@@@@@--+@@@ -%%%%###-@@@*-=@%#####-@@*++##**+###############***@@@@@@@@@@@@@@@@####@@@++++##-@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@%###%%%##############* %%%##+-*@@@@@@@**@@@@##%%%%##@@@@@@+--*%##*+*@@@*--=++##############+++++*%@@@@@@@@@@@@@@*++#@@###+++*@@@@@@@@@@@@@@@
@@@@@@+#@@@@@@@@@@@@@-+#%%%%##############=- %%%#:-%@@@@@@@@*+@@@@+##%%%##*@@@@@@@@-:*#++*@@@@@@:+################-=*##--**@@@@@@@@@@@@@@@@@++@@@@@++#@@@@@@@@@@@@
@@@@@@##@@@@@@@@@@@@@ @%%%#############%--# +###--##@@@@@@%%*%@@@@@-=%%%%%--#@@@@@@@*:-#**%%#%%%+: -#############**-@**----*@@@@@@@@@@@@@@@@@@#+++%#+#@@@@@@@@@@@@
@@@@@@@%##@@@@@@@@@@@ -%%%#############* #@ ###-:%%%%%%@@@%#+%@@@@@@+**%### *@@@@%#+%*--*###=------ -+####***+%*#+++@@@@@@@@@@@@@@@@@@@####-+@*---=#@@+@@@@@@@@@@@
@@@@@@@*-+@@@@@@@@@@@ %%%#############* -*- -: *@@###%@@@@@*--++ @@@@%#%*: -*%%#+- ***-+++: *##+++ % #*++-@@@@@@@@@@@@@@@@@@#++*#+++++++#@@*@@@@@@@@@@@
@@@##--+++-@@@@@@@@@@*%%#############- :- +@@***@@@@@@@@@@@@@#@@@@@@@%- %@%%%@@%*@@@@@@@**@@@@@@@@@:-++++##=+#+++@@@@@@@@@@@@@@@@@%+-+@#--+#@@#@@@@@@@@@@@@@@@
@@@%#@@@++@@@@@@@@@@@%%%############ -*--*@@--******@@@@@@@@@@@@@+@@@@@@@@@@*@+#%@@@@@-- -----*@@@@*-+- @@:+-=-@@@@@@@@@@@@@@@@@@@@@%@#++#######+++-*@@@@@@@
@@@@@@@@#--@@@@@@@@@@%%%###########+=@@@@@@ ----*@@@@@*%@@@@@@@@@@+%@@@@@@+ +@@@@@@@@%= : @@@@@@@@@@@@@@@@@%##-+----##+*#####@@@@@@@@@@
@@@@+-++@@@@@@@@@@@@@-%%##########++@@@@@@: -@@@@#+@@@@@@@@@@+@@@@@@@+ ---- --%@@@@@%+ *@@@@@@@@@@@@@@@@%##@@##@-+++%@@@@@@@@@@@@@@@
@@@%--*@**@@@@@@@@@@+ %%%#######=++@@@@@+ ++ ++++ @@@@#+@@@@@@@@@@+@@@@@@@# @@@@+ #@@@+ -@@@@@@#:++ @@@@@@@@@@@@@@@@@@*-*@@@@@@@@@@@@@@@@@@@@@
@@@%-#@%-+@@@@@@@@@@--@-####%*--*+#@@@@- -*@% -@@@@@* @@@@@#+@@@@@@@@@@#@@@@@@@@@ %@@@@@* -@@@@*: @@@@@@@#@**- @@@@@@@@@@@@@@@@@%#@#%@@@@@@@@@@@@@@@@@@@
@@@@@#+*@@@@@@@@@@@@@@@:###* -*@@=#@@@* -@@@+ *@@@@*- @@@@@@##@@@@@@@@@@#@@@@@@@@@ :---- -@@@@@*- @@@@@@@%@@@*-@@@@@@@@@@@@@@@@@%##-*@@@@@@@@@++@@@@@@@@
@@@@@##%@@@@@@@#+#@@@@@=### --@@@+#@@@+ - @@@@+ -- @@@@@@##@@@@@@@@@@@@@@@@@@@@ : @@@@@@@ @@@@@@%%%%*-@@+++++@++=++@@@##=#@@@@#####+@@@-#@@@@@@@
@@@+@@@++##@@@@%#@@@@@@:+- %%%##%+#@@@+ *@@@@+ @@@@@@#+@%%#+###@@*@@@@@@@@@ % **: -@@@@@@@* @@@@@@+****%@@@%#@#+@@###+#@##=++-=++#####@@@++###%@@%
@#+++--------@@@+++%@@@ .-+#****=+#@@@+ @@@@@@+ : :@@--@@@@@@+#+%%@@@%+#%#+%@@@@@@@ @*- :@@@+ @@@@@@@@*:@@@@@@:-::@@@@#*@##%@#*#-++@#-=++@@@@@%##@%+--+##+*##=
++-=@@@*+@@%++#%++-#@@@*@@@#@%:*-:#@@@*-@@@@@@* *@%---*** -*@@@@@+%@@@@@@@@@%#++#@@@@%*--:-----*- -@@@@@@@@@@@@@@#==*- @@@@+#@@@@@@@@@@+---+++++++++##@@@###@@####@
@@#%@@@++@@@#++%@@#+--+=---+@@ -%%+%@@@@@@@@@@%- +****-****@@@@%#@@@@@@@@@@@@@%%#@@@%@@@@@@@@***@@@@@@@@@@@@@%#-%*++* @@@@@@@@@@@@@@@@@@@@%+++%@@@@@@@@@@@@@@++#+%
@@@@@@@%+#@@#@@@@@@@@@+--#@@@@ -+++:+#%@@@@@@@@@@@@@@@@@@@@@@@@@+#@@@@@@@@@@@@@@@@+#%@@@@@@@@@@@@@@@@@@@@@@%#+# -*+++#- *@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@%#@@@@@ -+++- +%%+##@@@@@@@@@@@@@@@@@@%##+@@@@@**@@@@@@@@@@@%#*%%%%@@@@@@@@@@@@%%@###@@* +++++++*:@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@- *++*#- %@@@%#+######%%%%###%#%%@@@@@@@@**@*@@@@@@@@@@@@%%%%############%@@@@@%*+*++++++++- *@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@%--=*+++*%+-*@@@@@@@@@@@@@@@@@@@@@@@@@@@@ *@@@-+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@-**+++++++++++:-@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@##+++**++***- -@@@@@@@@@@@@@@@@@@@@@@@@@@+#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@--++++++++++++++-+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@+%%#+++*#*++++# #@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+ -++++++++++++++@ +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@%-*%%#*++++##*+++*==*@@@@@@@@@@@@@@@@@@@@@@@@@%-****-**---+*--@@@@@@@@@@@@@@@@@@*:--+++++++++++++++@ +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@-%%%#+++++++***++++*+ -*@@@@@@@@@@@@@@@@@@@@@@@@@@%@@%%####* @@@@@@@@@@@@@@@@*- =+++++++++++++++++@ +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@ =%%#+++++++++++++++++*=++-*-*@@@@@@@@@@@@@@@@@@@@@-#*****=+**@@@@@@@@@@@@@@@@+ **++++++**++++++++++@ +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@ %%%*++++++++++++++++++++++*=+:--*@@@@@@@@@@@@@@@@@@--+*+*@@@@@@@@@@@@@@@@@*--+*+++++*=-#*++++++++++- *@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@ %%%%**+++++++++++++++++++++++++++- -**@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@**-*:-=+++++++##- :+++-==+-*++-*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@#%%%++++++++++++++++++++++++++++++*+----**@@@@@@@@@@@@@@@@@@@@%*---=-*+++++++*:: =- *: +:=-*@+ - %@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@%--*@@- --+***+++++++*%=---**+++++++++++-+:---**@@@@@@@@**----+*- +++++++++*%:*- *@@****@@@@ *@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@*--@ @@*+ --##*+++% :***-:-++++++++++++:*@@*----****--*%@@@@@*+++++++++++-+@**@@@@@@@@@@@@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@+ - %@@@@@*+---=+**: -@@@@**:::------++ @@@@@@@@@@@@@@@@@@ --+++++++****@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%******@@@@@@@@@@******* @@@@@@@@@@@@@@@@@@ *@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%-**----+@@@+-*:@@@@@@@@@@@@@@@@@@@@@* : +**@@@@@@@***@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@**---***###*++++*-:*@@@@@@@@@@@@@@@@@@@@@@ -##########+++=--::--***@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*-=###################+- +@@@@@@@@@@@@@@@@@@@ ###########+++++===+*#: -*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@# #######################%- +@@@@@@@@@@@@@@@@ =#################++##=-@@@# +++@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@* *#########################%*- %@@@@@@@@@@@@@@ =##########%* -#####@- @@@@@@@***------*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ +###########################%@* ---********** %###########@*+####* *@@@@@@@@@@@@@@@**--:-**%@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ =#############################%+ @@%******** *###############-%@*- @@@@@@@@@@@@@@@@@@@@@@@**+---+*@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ =###############################- @@@@@@@@@% ##############*#= ***---+*@@@@@@@@@@@@@@@@@@@@@@@@@**----**@@(617399)@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ :############+####################+@@@@@@@@- @############*===#- *@@@@%*--:-****@@@@@@@@@@@@@@@@@@@@@@**-*@(617399)@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ : -%#######%*######################-@@@@@@* @@#############==+*#* *@@@@@@@@@****----****@@@@@@@@@@@@@@@@@@@(617399)@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ +@- +#####@-+=++###################:*@@@@* *%####################* @@@@@@@@@@@@@@@@@@@%**+---*@@@@@@@@@@@@@(617399)@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@* *@@@# -*-@++===####################+ @@%- *######################@ @@@@@@@@@@@@@@@@@@@@@@@@@@+------*****%@(617399)@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@%%:-==+*######################*%%+*#################**+++*#@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%%%%@@@@@@@@@@@05/22
---++===------=============+++++++++********########%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%@@%%%@@%%%%@%%%%%%%%%%%%%%%%%%%%%%#%%%%%%%%%%%%%%%%%%%%%@@
----====-----------=--==========+++++*+*******######%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%@@@@%@%%%@@@@%%%%%%%@@%%%%%%@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
::-----=---------------==========+++++++*******######%%%%%%%%%%%%%%%%%%%%%%%@%%%%%%%%%%%%%%%%%%%@@@@@@@@%@@%%%@@%%%@@%@@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%@@@@@@
:::--------------------=--========++++++******#######%%%%%%%%%%%%%%%%%%%%%%%%%#**++**#%%%%%%%%%%@@@@@@%@@@@@@%%%%%%@%%%@@@@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%@@@@@@
..::------------------------========++++++******#####%%%%%%%%%%%%%%%%%%%%#*+===----=====*#%%%%%@@@@%%@@@@@@%%%@@@@%%@%%@@@@%%%%%%%%%%%%%%%%%%%%%%%%%%%@@%%%@@@@@@@@
...::--------=----------------=========++++*******###%%%%%%%%%%%%%%%%%%#+-===---====++====+#%%%%@@@@%@@@@@@@@%@@@@@@@@@@@%%%@@%%%%%%%%%%%%%%%%%%%%%%%%%@@@%@@@@@@@@
....::------===---------------==-========+++****########%%%%%%%%%%%%%%*==+#%%#====+%@@@@#+==#@@%@@@@@@@@@@@@%%@@@@@%@@@@@@@@@@@@%%%%%%%%%%%%%%%%%%%%%%%@@@@%%@@@@@%
..:=-==-----=-===-------------------===++++++****######%%%%%%%%%%%%%%#--+@@@@@*=##*+%@@@@====#%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%%%%%%%%%@@%%%%%%%#%%%%%%%%%%%@%
.....::---------==-------=--------=======++++*+*######%%%%%%%%%%%%%%%+=--*%%#*=#@%%===**+===+*%%%@%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%%%%%%%%@%@%%%%*=-*##***+=+%%%%
........----------====---=----------=======++++**######%%%%%%%%%%%%%%----------=#=+-==++====++#%%@@%%%%@@@%@@%@@@@@@@@@@%%@@@@@@@@@@%%%%%%%%%@@%%#=--------+#%%%%@@
.........-======-----===+==-----------=====++++****##%%%%%%%%%%%%%%%#====+=----------===%@%##%%%%%%@@@@@@@@@@%@@@@@@@@@@%%%%@@@@@%%@@%@@%%%%%%%#+----===--=%@@%%@@%
.........::--=------------========--=======++=+**#*##%%%%%%%%%%%%%%%%**=#@%---=+****+===@@@#@%@@@@@@@@@%%%%%%@%%@@@@@@@@%@@@%%%%%@@%@%@%%%#*+=--------====*%@%%@@@@
.............:--=====------------====+=++====++*****##%%%%%%%%%%%%%%%%==#@%-+%%%%%%%@@%#%@*+*#%@@@@%%%@%%%%%@@%%@@@%@@@%%@@%%@%%%%%#*+++=---------=+++**#%%%@@%%%%%
...............:-----==--------------==++==+++++****#%%%%%%%%%%%%%%%%%=-=*%++======+++*#%%+++#%%%@%@%%%%%%%%@@%@@@@%%%%%%@@%%#*+==-----------=+*#%%%%%%%%@@@%%%@@@@
................:-------------=----------==+***+***####%%%%%%%%%%%%%%%*-----------=========#*%%%%%%%%%%%%@%@@@%@@%%%%%%%#*+=------------=+*#%%%@@@%%@@@@@@@@@@@%@@%
..................:----------------------------==+*##%%%%%%%%%%%%%%%%%=----------=-===+==+#*#%%%%%%%%%%%%%%%%%%%#**==------------====+*#%%@%%%@@%%%%%@@@%%@@@@@%%%%
...................:-------------------------------+==+#++*####%%%%%%%######========++*##***#%#####***#*#%#==#*----------====+++*#%%%%%%@@%@@%@@%@@@@@@@%%%@@%%%%@@
.....................-------------------=====------+*--=+-.:::-===+++*##%#*===--------+==-==------::..::+%=-=#+-------===**%%%%@@%@%@%%%%%@@@%%%@@@%%@@@@%%@@@@@@@@
......................:-----------------===+++++=--+#--=#--::.::-:::-------=-------------------:::....::##=-=@+--===+*#%%%%%%%@@@@%%@@%%@@@@@@@@@@@@@@@@@%%@@%@@@%%
........:..............:-----------------=++++***#*#%=--%=---:::::-:::----------====--------:::.:::.:::-##--+%+==*#%%@%%%@%%%%%%@@@@@@@%@@%%@%%@@%%@@@@%@@@@@%@@@@@
-:.......::.............:---------------==+****####%%#++#+-----:::::-:..:::-----+++=--::::::::.:::....::#@###%%*#%%%%%%@@@@%%%@@@@@@@@@@@@@@@@@@@%%@@@@@%%@@@@@@@@@
---:......:::.............--------------==+****####%%%%%%#*+=-=--:::::::::::..:--------::.....:.....:::++#%###%%%%%%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%@@@%@
=---:.......:::............:-----------===+***###%%%%%%%%%%##+=------::...::::---------:.::.........::-#%%%%%%%%%%%%%@%@@%@%%@@@@@@@@@@@@@@@@@@@@%%@%@@@@@%%@@@@@%@
*+----:......:::............:---------===+***##%%%%%%%%%%%%%#**=---:----::::::----------.............:=*%%%%%%%%@%%%%@@%@@@%@@@@@@@@@@@@@@@@@@@@@%@@@@@@@@@@@%@@@@@
***=---:......::::...........:---------=++**##%%%%%%%%%%%%%%%%#+---------:::------------:........:...:=#%%%%%%%@%%%%%%@@%@@@%@@@@@@@@@@@@@@@@@@@@@@%@@@@@@@@%%@@@@@
****+=---:......:::............---------+*##%%%%%%%%%%%%%%%%%#%*=-::::----::------------:..........:::=#%%%%%%%%@@@%%%%@%%@@@@@@@@@@@@@@@@@@@@@@@@@@%%@@@@@@@@@%@@@
###***+=---:.....::::...........:----==-=*#%%%%%%%%#####%%%%%#%*--:::::-----------------:...........::=%%%%%%%%%%%%%@@@%%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%@@@%@@@
%#####**+=---:.....::::..........:--=+++=*#%%%%%%#****##%%%@@@@#=-::::::::-------------:.:::::.::....:+%%%%%%%%%%%%%@@@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%@@@@@@@@@@@
%%%%####**+=--::...:::--:.........:-=+**##%%%%%#***##%%%@@@@@@@#=-:--::::::-------------::::.::....:::=#%%%%%%%%%%%%@%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%@@@@@@@@@@@@
%%%%%%####***=--::.:::--=-::.......:-=****#%#*****##%@@@@@@@@@@%+---:::::.::------------:.........:::::*#%%%%%%%@%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%#@@@@@@@%%@@@@@
%%%%%@@@%####**+=--::---=+++=-:::::--=+*********##%@@@@@@@@@@@@%*---:::::::-===-------===------:::..:..=#%%%%%@@@@@%@@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%#%@@@@
%%%%%%%%@@%%###**=-------=****++===+++*********##%@@@@@@@@@@@@@%*+**#%%@@%@@@%*-------+%####%%%%%%##*+++#%%@@%%@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%%@@@@
%%%%%%%%%%%@@%###**+==---=+***************######%@@@@@@@@@@@@@@@@@@%#%%@%%%%%%*------+#%########%@%%%%%@@@@@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%#%@@
%%%%%%%%%%%%%%@%%##****+++****###********######%@@@@@@@@@@@@@@@@@@@#####%%%%%@#=--++=#%###########@%@@@@@@@@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%@@
@@%@%%%%%%%%%%%%%%%###*********##############%@@@@@@@@@@@@@@@@@@@@%#%%%%%####%%==#%@%%%%%##########@@@@@@@@%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
%@@@@@@%%@%%%%%%%%%%%####*******#############@@@@@@@@@@@@@@@@@@@@%##%%%%%%##%%%%%%%%%#%%############@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@%%@%%%%@@%%##*****###########%%%@@@@@@@@@@@@@@@@@@@@%%%%%%%%%#%##%%%###%%%%%%%%#########%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@%@@@@@@@@@@@@@@@@%@@@@%%########%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%%%%@%%%%%%#######%%%%%%%%##########%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
%@%@@@@@@@@@@@@@@%@@@@@@@@@@%%###%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%@%%%%%%%%%##%#######%#%##%###%%%%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#%@@%%%%%%%###%%#####%%%%%%%%%%%%%%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@%@%%%@@%##%%%#%%%#%%%@%%%%%%%%%%%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%@%%@%%%%@%%#%%%##%%#%%%%@@%%%%%%%%%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%@%%@@@@@@@%%%%%%%%%%%%@@@%%%%%%%%%%%@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%@%%@@@@@@@@@%@%%%%%%%%@@@@%@@@%%%%%%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%@@@@@@@@@@%%%%%%%%%%@@@@@@@@%%%%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%@@@@@@@@@@%@%%%@@@%%@@@@@@@@@@%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%@@%@@@@@@@@@@@@%%%%@@@%%@@@@@@@@@@@%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%@@%@@@@@@@@@@@@%%%%%@%%%@@@@@@@@@@@@%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%%%@@@%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%@@@@@@@@@@@@@@@@%%%%%@@@@@@@@@@@@@@@@@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%@@@@@@@@@@@@@@@@%%%%@@@@@@@@@@@@@@@@@@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%@@@@@@@@@@@@@@@@@%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%%@@@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%@@@@@@@@@@@@@@@@%%%%@@@%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%@@@@@@@@@@@@@@@@@@%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@(617399)@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@(05/22)
##############################*#****+++++++==-----:-:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
#################################******++++====--:--:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
####################################****+++++====---:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
####################################****+*+=++=------::::::::::::::::::::::::--==++==-:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
%#######################################**+++====----::::::::::::::::::::-=+***####*****=-:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
@@%##########*#########################****++++====--::::::::::::::::::-+#***###****++****+-:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
@@@%########**+##########################****++===----::::::::::::::::=**+=-:-*****-...:-***-::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
@@#******#***#*+###########################**+++==--=-:::::::::::::::-##+.....=*-==+-...:****-:::::::::::::::::::::::::::::::::::::::::::::::::::::::-:::::::::::::
%@@%@%#########***########################*****+===---:::::::::::::::+*##=---+*=:--***+++***++:::::::::::::::::::::::::::::::::::::::::::::::::::::=*#==-===+*+-:::
@@@@@@@@#########*****#######################**++=-----::::::::::::::##########*=**#**+******+-::::::::::::::::::::::::::::::::::::::::::::::::::-*########+-::::::
@@@@@@@@%#******#####***+*##################*#*++===-:::::::::::::::-****+*##########***-.:-=::::::::::::::::::::::::::::::::::::::::::::::::::-+####***##*::::::::
@@@@@@@@@%###*###########********#############*++==--::::::::::::::::==*-.-###*++=+=+***:.:=.-::::::::::::::::::::::::::::::::::::::::::::-=+*########****+::::::::
@@@@@@@@@@@@@###*****############********####***++==--::::::::::::::::**=.:#+-:--::::::=-.=++=::::::::::-::::::::::::::::::::::::::-=+++*#########**+++=-::::::::::
%@@@@@@@@@@@@@%######**##############*****##****+===-:::::::::::::::::*#*=:+*****#*+++=---***-:::::::::::::::::::::::::::::::-=+**###########**=-::::::::::::::::::
%%%@@@@@@@@@@@@@##############*###########**+++*++==---:::::::::::::::=###########*********=+:::::::::::::::::::::::::::-=**############*+==:::::::::::::::::::::::
@%%%@@@@@@@@@@@@@%#############################**+=--:::::::::::::::::*############***+**+===::::::::::::::::::--=+*#############*****=-:::::::::::::::::::::::::::
@@%%%%@@@@@@@@@@@@%################################+**+-+==----::-::-:--==-=**********+--=+=-:------==-=-:-+*==##########****+++=-:::::::::::::::::::::::::::::::::
@@@@%%%@@@@@@@@@@@@@%##############################++##*+#%%%%*+++++++--:=+***########+**#**#######%%%%%+-*#*-+#######***+=::::::::::::::::::::::::::::::::::::::::
@@@@@%%#%@@@@@@@@@@@@%#######################*+**##+-##*-####%%#*%%%#######*####################%%%%%%%%=-*#*:*##***+=-::::::::::::::::::::::::::::::::::::::::::::
%@@@@@@%##%@@@@@@@@@@@@####################***+====-:*##:*####%%%#*#############****#########%%%%%%%%%%#--##+-***=-::::::::::::::::::::::::::::::::::::::::::::::::
##%@@@@@%##%@@@@@@@@@@@@%#################*++++=---::-++-+#####%%%#%##%%%%######++**###%##%%%%%%%%%@%%%#=:-==--==::::::::::::::::::::::::::::::::::::::::::::::::::
###%@@@@@%###%@@@@@@@@@@@%################*+++==--:::::::-=+*######%%%#%%%%%%%##########%%%%%%%%%%%%%%#++=-----::::::::::::::::::::::::::::::::::::::::::::::::::::
*####%@@@@@%###%@@@@@@@@@@%###############*+==---::::::::::--+*######%%%%%%%%%##########%%%%%%%%%@%%%%*=-:::::--:::::::::::::::::::::::::::::::::::::::::::::::::::
=+####%@@@@@%###%@@@@@@@@@@@#############**+=-::::::::::::::-==*########################%%%%@@%%%@%%%%+=:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
==+*####%@@@@%####%@@@@@@@@@@############*+==-::::::::::::::::-=*#*#######%#############%%%%@@%%%%%%%%+-:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
====+*####%@@@@%###%@@@@@@@@@@%#########*+--:::::::::::::::::-:=*#########%%#############%%%%%%%%@%%%%+-:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
--====+#####%@@%%###%@@@@@@@@@@%#########=-::::::::--===-------=*#####%#################%%%%%%%%%@%%%%+-:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
--=---==+#####%@%%###%%@@@@@@@@@%####***#+-:::::--======-=-::::-*###%%%%################%####%%%%%%%%#=::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:::----===+*####%%%###**#%@@@@@@@%##*+===-:::---===------::::::-+#####%%%###################%%%%%%%%##+-:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::----==+*####%####+++*%@@@@@@%#*+====-:======---::::.::::::+####%%##%##############%%%%@%%%%@%%#%#=-::::::::::::::::::::::::::::::::::::::::::--::::::::::::::
::::::::-----==+########+===+*#####*+============--:::::::::::::=####%%#####***#######****#####%%%%%%%%+-::::::::::::::::::::::::::::::::::::::::::::::::::::-:::::
:::::::::::----==+*#####*+=======================-::::::::::::::====---::::::-+#######*---------:---=+++-:::::::::::::::::::::::::::::::::::::::::::::::::::::-::::
:::::::::::::----===++***+================-------::::::::::::::::::----:------=######*=----------::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::-:::
:::::::::::::::----===========---========-------:::::::::::::::::::----------:-*##***=------------:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::----=========----------------:::::::::::::::::::-------------**=:::--------------::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::-----=======--------------::::::::::::::::::::--------------:-------------------::::::::::::::::::::::::::::::::::::::::::::::::::::::::.::::::
:::::::::::::::::::::::---=====-------------:::::::::::::::::::::------------------------------------:::::::::::::::::::::::::::::::::::::::::::::::::::::::.:::.::
::::::::::::::::::::::::::----------:::::::..::::::::::::::::::::-------------------------------------::::::::::::::::::::::::::::::::::::::::::::::::.::::::::::::
:::::::::::::::::::::::::::::-----:..:::::::::::::::::::::::::::---------------------------------------::::::::::::::::::::::::::::::::::::::::::::::::::.:::::::.:
::::::::::::::::::::::::::::::::..::::::::::::::::::::::::::::::-::-----------------------------------:::::::::::::::::::::::::::::::::::::::::::::::::::.:::::.::.
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::-::-:----------------------------------.:::::::::::::::::::::::::::::::::::::::::::::::::::::::::.:
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::-:-----------------------:-------------.:::::::::::::::::::::::::::::::::::::::::::::::.:::...:::::
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::-:---::::::-------------:::-----------:-:.:::::::::::::::::::::::::::::::::::..::::::::::.:....::..:
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::-:--::-::::::----------::::--:----------::::::.:::::::::::::::.::::::::::::::::::::....:.:..........
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::-:--::-::::::-----------::::::::--------::::::::::::::::::::::::::::::::::.:.::::::::..:...::...:...
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::--:::::::::-------::--::::::::-----::::::::::::::::::::::::::::::::::::.:..::::::......:..:....:.:
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::-::-:::::::::::------:---:::::::::----::::::::::::::::.:::::::::::::.:::::.:..::.......::............
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::-::-::::::::::::---------:::::::::::---:-::.:::::::::::::.::.:::..::....:::::.......::.:......::.....
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::-:::::::..:.:------::---:::::::::::-::::-:.:....:.::..:.:..:::..:::::::......:..:..................
:::::::::::::::::::::::::::.:.:::::::.::::::..:::::.:::::::::-::::::::::..:::------:::::......::::::-::::::....:.:::......:::....:.:..:.......:..........:.........
:::::::::::::::::::::::.:::.::..:..::::::::::::....:::.::::::-::::::.::...::::------::::.......::::---::::.::...:.::::.:::.....:::::......::.....::................
::::::::::::...::.::..::..:.::.::::..::...:.:..:.....::::::::-::::::::....::.:-----:::-::.......::::-:::::..:....:.::::::..........::...:...::....::...............
::::::::::::.:..::::::::::...:::....:::.....:::.::::::::::::::::::...:....::..:----:---::......:::::-::..:...:.:....:..::.....:.:.......:..:.......:...............
::::::.:::..::.........::..:::...::.:::::::....::.:::::::...:::::::::.....::..:-----:---::::...::::::::.........:.:::......:.......................................
:...:::....:.::...:....:..........::.........:.:..:::...:.::::-::::::.....:::.::---:::--.........:::......::.......::.......:..........:...........................
:..::........::......:::::.:.......:....::.......:..:..::....:::..........:...:::-:..:..................:...:.........:::............................(617399)......
.:..:.....:....................::.:::.....:......:.....::..............................:..::.:.......:..::.........:.......:.......................................
:::.........:..:::.............................:......::.......:........::..::..::........:...........:.......:....................................................
::.::.::.........:::.....................:.:.........:...:.......:....:............................................................................................
......::..............:..................................................................................................:..................................(05/22)
@@@%=====#@@@@@@@@@@@@@@@@@@@@@@@@@*==========+%@@@*============*#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#*=========+#*+==--------------::::::-===++#%@@@@@@@@@@@@@@@@
@@@*====*@@@@@@@@@@@@@@@@@@@@@@@@@@#+=========*@@@#===+#*===+*+====++#%@@@@@@@@@@@@@@@@@@@@@@@@%%%%###==========:...=++*%%%%%%%%@@@@@@@@@@@@@@@@@@%%%#::---+%@@@@@@
@@#+===*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%****#@@@@%+==+%@@===*@@@#+======+*%@@@@@@@@@@@@@@@@%=:.....::===========-=#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%%%%%##*=-=*%@@@
*+=======++**%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%@@%===+*+====**+============+++++++++++++++++-=-==========++=====+*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%%%%%%%%%%%%%%%%#+@
=================+*#@@%##@@@@@@@@%#**###%@#*===*@%+========================+++++++++=-=+****++=========+#%%%###%@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%%%%%%%%%%%%@%%%%%%%:.
============================+++==========+======+========+*%@#+===+*****##@@@@@@%*+=:.+%%%%%%%%########%%%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@%%%%%%%%%%%%%%%%%%%%%@@@@@@+
=================================+*#+====*++======+#%%%@@@@@@@@@@@@@@@@@%*+=--. -+#%%%%%%%%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%%%%%%%%%%%%%%%%%%%@@@@@@@@@@@@@
==============================+==========*@%+====%@@@@@@@@@@@@@@@@@@@%=: : .:=*#%%%%%%%%%%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%%%%%%%%%%%%%%%%%@@@@@@@@@@@@@@@@@@@
=========+###+++========*###%@@@%#####*==========+@@@@@@@@@@@@@@@#*=: :*%%%@@@@@@@@@@@@@@@@@%@@@@@@@@@@@@@@@@@@@@@@@%%%%%%%%%%%%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@
======*#@@@@@@@@@#*++====#@@@@@@@@@@@@@+==========%@@@@@@@@@@@@*. .-+*%@@@@@@@@@@@%%%###%@%%@@@@@@@@@@@@%%%%%%%%%%%%%%%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
=+#%@@@@@@@@@@@#+=========%@@@@@@@@@@@@%==========%%%%###+++++++--=+#@@@@@@@@@@@%#*++======*@@@@@@@@@@@%%%%%%%%%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
%@@@@@@@@@@@@@@%++=++====*@@@@@@@@@@@@@@%#========================*@@@@@@@@@@@%*=========+*%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%##%@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@#===+@@@@@@@@@@@@@@@@@#========================+*++*#%@@@@@*========+%%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%#####%@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@+===*@@@@@@@@@@@@@@%%%%@%*++*==*%%%*::::*####%@@@@@@@@@@@@@@*=======+%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%######%@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@+===*@@@@@@@@@@@@@+=====#@@@@@@@@@@+.- .=%%%%%%%%%%%%%%%%%%%%*+======#%@@@@@@@@@@##%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%######%@@@@@@@@@
@@@@@@@@@@@@@@%##*====+++*#%%%@@@@@@=====+@@@@@@@@@@+.=:#%%%%%%%%%%%%%%@@@@@@@@%+=====*%@@@@@@@@@@####%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#########@@@@@@@@
@@@@@@@@@@@@@@%================+#%@*====*@@@@@@@@@@-.. +@@@@@@@@@@@@@@@@@@@@@@@#=====+%@@@@@@@@@@@%######@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#########%@@@@@@
@@@@@@@@@@@@@@@+=====+*===========*+=====++++++****- .*@@@@@@@@@@@@@@@@@@@@@@@@+====+%@@@@@@@@@@@@@@@######%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@###%%####%@@@@@
@@@@@@@@@@@@@@@@%%%%@@@*=================++++++==== -%@@@@@@@@@@@@@@@@@@@@@@@%+===+%@@@@@@@@@@@@@@@@########%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%###@@@%##@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@#+===============#@@@@@@@@* .-@@@@@@@@@@@@@@@@@@@@@@@@%*==*@@@@@@@@@@@@@@@@@@####%######%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@###@@@@@%@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@*================@@@@@@@* .*@@@@@@@@@@@@@@@@@@@@@%%###*+@@@@@@@@@@@@@@@@@@%####@@@#######%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@####@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@+================@@@@@@@. .@@@@@@@@@@@@@@@@@@@%########*#@@@@@@@@@@@@@@@@@%####@@@@@%#######%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%###%@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%@@%%%%*====@@@@@@+ :+%@@@@@@@@@@@@@@@%#*####@#####@@@@@@@@@@@@@@@@@%####@@@@#+=-==+######%%%%%@@*#%@@@@@@@@@@@@@@@@@@####@@@@@@@@@
##%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#**#@@@@@% . .:%@@@@%+*%@@@@@@@**####%@@@=####@@@@@%%+%@@@@@@@####%@@@@---#%#%#+*##################%@@@@@@@@@@@@@*##@@@@@@@@@
#*+*###%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@* .:=@@@@@####%@@@@*+*####@@@@@*+####@@@#####%@@@@@@####%@@@@*#%=::-=-+##@%%#+++****########%#########%*###@@@@@@@@
@@%%###+*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@* :=%@@@@@####*%@@**###*=-*@@@@@-+####@@#####*%@@@@@####%@@@@@@:=****+*********#****%%%%###################%@@@@@@@
@@@@@@@#+++**#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+ @@@@@@@%####=+*###*+==*%@@@@@@:*####@#######@@@@@####@@@@@@#***#%@@@#*+--++#@@@@@%%%%%########%%%%%####%@@@@@%*#
@@@@@@@@@@@%*++##%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@* :*@@@@@@%##########****+*+%@@@@*.+############@@@%####@@@%##*+=@@@@@@@@@@%==*#@@@@@%###########%%%%%%%%%#*%%%%%%@
@@@@@@@@@@@@@@%%%#****##*****#**#%@@@@@@@@@@@@@* :@@@@@@@#=######+***#%%@%%*+#@@@*.+############%@#####@@%-*+#%@@@@@@@@@@@@%*+**=+@%=##########%%%%%%%%%%@%#**#@@%
@@@@@@@@@@@@@@@@@@@@@%%%@@@@@@@#+*@@@@@@@@@@@@@* :@@@@@@@#%@%%##+-*+*%@@@@@@#=#%@@*.+#######@#########%@@#*=#@@@@@@@@@@@@@@*@#%#*++%.-####%%%++%%%%%%%##%@%++#@%%%
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%++#@@@@@@@@@@@@% :+@@@@@@@@@@@%%+**+%@@@@@@@@%=*#%%+-#######@@########@@@#=*%@@@@@@%@@@@@@@%%@%%#***+:+###%@@%#%%%%%%%%#****%%#+++
@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@%%*+%@@@@@@@@@@@+ .=*%@#@@@@@@@%%#***@@@@@@@@+@@***#%*#######@@@+######@@@+*+@@@@@@@#*@*%%%%@%@@@#%##*%+%%%@%%%%%%%%@@@%@@@%+=-+%%#
@@@@@@#=**@@@@@@@@@@@@@@@@@@@@@@@@#++%@@#=##%@@@@. -#-@%@@@%%%%%##*#*@@@@@@%%%#@%***@@#######@@@#=#####@@*=*#@@@@@@@#*@#@@@@@@@%%%%%%*@@%%%%%@@@@@@@@@@@@@@%=*%%@@@
@@@@@@#+#%++%@@@@@@@@@@@@@@@@@@@@@#:*+*%%+#%#+=@@*-.-=%@@@@%%%%%###%*@@@@@@@@@*@@#%*+@%######@@@@+*####@@:-*#@@@@@@@%*@@@@@@@@@@@@@%%%%%%%####@@@@@@@@@@@@@@@@@%%@@
@@@@@@@++###+#**=*@@@@@@@@@@@@@@@@#:-++++:*###=*%%%%*+#@@@@@%%%%%%%%%@@@@**@@@*@@@##*#%######@@@%%**##%@@=+%%@@@@@@@@*#@@@@@@@@@@@@%%%%@@@%####@@@@@@@@@@@@@@@@%%%@
@@@@@@@@*+########*+@@@@@@@@@@@@@@%:--+*#-.+##=##@@%%%%%%%%%%%%%%*%%%%%@@**%%%#@@@@*#**####*%@@%%%%#%@@@%+=%%@@@@@@@@@=@@@@@@@@@@@@@#*+%@@@%####%@@@@@@@@@@@@@@%%%@
*****+=++:=#######%%+@@@@@@@@@@@@@%-#=%@@-:.+*+=***=:#@@@@@@@@@@@#%%#@@@@#*@@@@@@@@@*%#*=+=-#@@@%%%@@@@@#*=*#@@@@@@@@@=@@@@@@@@@@@@@#=*@@@@@@%####@@@@@@@@@@@@@%%%@
+++++++*##########=#@@@@@@@##@@@@@#-##=@%+@####-#+*#*@@@@@@@@@@@@%*@*@@@@%*@@@@@@@@@#@#*-+--#@@@%%@@@@@@@#=*+=#@@@@@@@**@@@@@@@@@@@@@+@@@@@@@@@*=##@@@@@@@@@@@@%%%#
#################*=###***+=**==*++-+##*=:+#####+:#=- .*@@@@@@@@@%%#%%%%@@@#+@@@@@@@@@*#*+=@%@@@@%%@@@@@@@%+**#@@@@@@@@#%%@@@@@@@@@@@%=*@@@@@@@@@%###@@@@@@@@@@@@%+=
#################*.+####################*###%##%%%##-:-@@@@@@@@@%%%%%%%@@@@+@@@@@@@@@%***:@@@@@@%%@@@@@@@@@:+*#%@@@%%%%*%%@@@%%%@@@@#=#@@@@@@@@@@####%@@@@@@@@@#-=%
############################################*+++*%%%%%%%%%@@@@@@%%%%%%@@@@@**@@@@@@@@@-**#@@%@@@%@@@@@@@@@@#.***%@@*@@@%%*@@@@%%%@@@%+#@@@@@@@@%%@%%%%@@@@@%@@@##@@
###################################***+===++--++*#*%%%%%%%%%%@@@@@%%=#@@@@@**@@@@@@@@@+=**@%%%%%@@@@@@@@@@@@#:**%@@*@@@@@#@@@@@@%%%%%%%%@@@@%%%%%%%%%%%%%%@%#%@@@@@
##################################+==-**#%*=*#@@%%%*%%%%%%%%%@@@@@@#=+%%%%%%+#@@@@@@@%-=***#%%%%@@@@@@@@@@@@@@#*#**=**@@@@@%%%%**@@==%@@@@@@@@@@@@@%-##@@@@%%%%@@@@
###################***+*########=*+=#@@@#-=#%@@@@%%%%%*#@@@@@@@@@@@@%-*###@@@@@@@@@@+-==+++#%%%%%%%%@@@@@@@@@@@##--=. :-: #==*@@@@@@@@@@@@@@@@+#%@@@@@@@%%%%
#################*+@@@@@*=+######=###%#:.-+%@@%####%@* =@@@@@@@@@@@@@%+****@@@@@%#+-::.:%@@@@@@@@@@@@@@@@@@@@@@@@@@@%%-..:---:.::=@@@@@@@@@@@@@@@@@@@@##@@@@@@@@@@@
##*##*++#########-%@@@@@@@%######+=%##*#+-====#%%@@@@- =@@@@@@@@@@@@@@--+**#%**-...:-+%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%*+=++##+++@@@@@@@@@@@@@@@@@@@@##%@@@@@@@@@@
@@@@@@@@##=*#####*+@@@@@@@@@@#=###*+####*=##%@@@@@@#- .%@@@@@@@@@@@@@@- =-=++: .::=--=@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#=++++-=%@@@#%@@@@@@@@@@@@@@@@@@%#%@@@@@@@@@@
@@@@@@@@@@@@%##*++*@@@@@@#==*%#=######+#=*%@@@@@@@#. =@@@@@@@@@@@@@@@= :=+*%%#@#--#@*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%@@@@@@@@@@@%%%%%@@@@@@@@@@@@@@##@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@%=*#+=*######*=:#@@@@@@@@.= :#@@@@@@@@@@@@@@@% -%@@@@@@@%@@@*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#%%%%%@@@@@@@@@@@@@@%##@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@#=+##########-#@@@@@@@--:.@@@@@@@@@@@@@@@@@@-:#@@@@@@@@+%%*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*@@@@@@@@@@@@@@@@@@@@###@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@%@#-#########%+@@@@@%:+* *@@@@@@@@@@@@@@@@@@+:#@@@@@@@@@#%@@@@@@@@@@@@@@@@@@@@@@@@@@%##########%@@@@@@@@*@@@@@@@@@@@@@@@@@@@@@*#%@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@#+=+-*+*#########@-@@@@@* @-.@@@@@@@@@@@@@@@@@@@+.+@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@%#%%#*%%@@%%###@@@@@@@@@@@@@@@@@@@@@@@@@@--*#%@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@%-*#*-*#%########@-@@@@@* + =@@@@@@@@@@@@@@@@@@@#.:.=#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%#@@@@@@@@#*#@@@@@@@@@@@@@@@@@@@@@@#::=--%@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@%=##+-+########%*#@@@@@* .%@@@@@@@@@@@@@@@@@@@@+%#=:.-#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*@@@@@@@@@@*#@@@@@@@@@@@@@@@@@@@#=.:-==-%@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@+*#-+#*#######*@@@@@@* :@@@@@@@@@@@@@@@@@@@@--%%%%%+:.-*#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@%@@@@@@@@@@@@@@@@@%*-.--=*#*-*@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@%**++#=**=+*@@@@@@@@* +@@@@@@@@@@@@@@@@@@@* :%%%%%%#..-: .:=+%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%+::-=+-=####++@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#++++=*%%@@@@@@@@@* .#@@@@@@@@@@@@@@@@@@@+ %%%%%%# :=@@**==:-+***###*####%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#=::-+%%*--=+++++*+@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@* .#@@@@@@@@@@@@@@@@@@@* :-*#*=- .%@@@@@@@#+===---=====-::----==+++***#%%@@@@@@@@@@@%#+=-:+*+++*%+=-*%#*=+%%#@@@@*=
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@* .#@@@@@@@@@@@@@@@@@@@%+ .-. =@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%**==---:::::-----:.::=#+-=+==-+-=*++=*##*++#*##*=+
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@* .#@@@@@@@@@@%*==+@@@@%* ====*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%%%%%%#=:-**#++#@@*=*###*+=*%*=++--=.+
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@- .*@@@@@@@@@@@@@@*=@@%*. @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%+:+%##%%+=*####%%%#++=**--* -
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@- :-%@@@++##%@@@@@@#-=--: *@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*=@@@@+#@@@@@@@@@@@%##-==.:
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@* :-*:. .-.:::+%@@@*--=-. .*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%=:.-=+*@@@@@@==*#@@@@@@@@@@@@@%+--.:=*
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@% :... *@@=---:.-==-: :@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#.+@@@@%+=*++%*::.*@@@@@@@@@@@%+:::-=+++
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ .=+#@@@@@@*-=--. ::.:=-*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=:@@@@@@@@@@@@@@#+=+@@@@@@@@@@+.-=+++++++
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#**=@@@@@@@@@@@@@%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%.=@@@@@@@@@@@@@@@=+++:@@@@@*+=-=++++++++++
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@--@@@@@@@@@@@@@@@%=:++-.++-=+++++++++++++++
(eyes:snake)@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@# :@@@@@@@@@@@@@@@#*.=++=-=+++++++++++++++++
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@* +@@@@@@@@@@@@@@@#=:+++++(617399)++++++++++
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@* =@@@@@@@@@@@@%#=:-+++++++++++++++++(05/22)
..............................=#==++=-===++---****+******************************************************************#=........................
............................=*+=-=-+*****--=---===+********************************************************+--********+**+-....................
..........................:*+.--:-*****=+*--==+*************************************************************--=***+++=:...-*=..................
.........................:#--:..---****+#:-=*******************#***************************:+************+=#----:...........=*:................
.........................#*****+-:-=+++%*--*******+-*+*********%*********+++++++++++==+++=-:-+=*==-::......*-:-:.............:#=...............
........................=#*=--******+--#++***+++*++=++-++++===-#--===--:::::::::::::...........:##:........-=::-.........::----*-..............
.......................=%*=---*********%=-**********=%+*******+#=:=+*++=-:::-------------------=*:=#-+**+==-+----==++++********=%..............
......................:%*=----+********%+-=******-=*:###********@+********+********************%+::-#+********-=-**************+*=.............
......................%**-------+***+-**#=-*****+-+=#-.-##**##**@%##***************************@@@@@@@%****%:#=-=***************+%.............
.....................-%=*=--++++==******%=******=-*@@@@@@%@@%%@@@@@@%*************************+#-=+*#@@@@@@#:-#:-+***************#-............
.....................++=*=-=********+**=+@**##%#-+%-.......+****#=.+%*++********************-+%.......:+@%%#%@@*-=*****##******+*+#............
.....................++=*+=********+-+++%*@#%%+-:%:.........:##**%..=#+-=******************+-*:.........+#*...+#-=@#*-:%==***+%-=+%-...........
.....................=*++-++*******=-#%%+-@:**==*=.......:::::+#*%=..:#*-=*****************--...........-%-...-%+-+%@#:@=-***#=*+-+%...........
......................%*=-=-=******---@...@-****@.....=*=----=+##*%=-..+#=-+**************--..-+++.......:..:=.@==-*#==%+-***#.:%+*%:..........
......................+*--==-+****+-+-#...%*****%...........:----##%:...-%+-=+**********+-+..=-...:---====-..-*@-+-+*.%%+-+*%...=%*#...........
.......................#--=*--+***=-**+...:%*+*##:.-=++**#%@@@@@@@#@#.....*#+==+******+=-#=..=%%@@@@@@@@@@@@%+.*%#-=***+#+**-....###...........
.......................*=-=*=--+**+-*#+....*#+=@+#@@@@@@@@@@@@@@+*:-@+.....-##+=-+***=-+#-...*@@+-#@@@@@@@@@#@###*-=*%::%***.....*@=...........
.......................#=-+*+---***-=%*..:+=#--@@@@@@@@%@@@@%@@@#...:%-......=##*+=-++*#:....-@@#-*@@@@@%@@@*.:+%=-**+..%*#=.....+@............
.....................::#=-+*--=-=**=--*+....:%@@#+#@%:.=@@@#:+@@@....:-........-*#*+-#+.......+@@@@@@@@%*%@@#..=+-**%...@*#......==............
....................#=-%--=*+--*-=**-=+=*=...*@@#--@@%%@@@@@%%@@@................:=*+%+:......-@#=+%@@+-*%@#:..=-=*#+...@%-....................
...................++.:@=-=+-=-=+-=*+-+*++*+::@=*@-=@@%=+**=..=@#...................:+*%#=.....#@+:..:*@#-..:-.+++*%....%-.....................
...................*=.-%*---=-+-=+-=*+-=***-+*%-.-=+@@###***#@@@%%%%%*..................=+=.....=@@@@@@%##%%#*-%+*%-...........................
...................=*.+*=---**##+=---=++-=**+-***++=-+*+-:----::.................................--::.........:%*#@:...........................
....................%*#+----+***%#===---=--=+**-+*-...........................................................+*#:%:...........................
...................:++---=++*#****#*==++=-----***+*#=........................................................-@*..=*...........................
..................-------#%#*#-=**#+=+*##%#+====****##+................................@.....................::....%:..........................
...............-=-----=+**-+#=-=##+--=-=*##+-==+***##==+++=:...........................::..........................*=..........................
.............:#+-+*+-:+...=%---+*-=--=--*#-=:.........:-=++#%*+..................................................:++...........................
..............:...........%+---%-=-=----+##=--....................................=*=..........................:+*.............................
.........................=%=--+#*=-+-=*-=**#+=*=...............................-**:%-........................=*+...............................
.........................+#=--=*+*-++-*=-+-=*=--*=.............................=#:+*......................-*+:.................................
.........................-#=-+-+=*-+*-=*=-=-+*=-:+#+=:..........................:-:....................-**-....................................
..........................#*---***=-*-=**+---**+----:-=++++=-:.....................................:=*%+#=.....................................
........................-*+%*--=+**-==-*+=*=--**=--++.......:-===+====++++=-::..............::-=++##=+#*%=.....................................
....................:=+*--*+-=*=--**---*+-***--=*#--*#...................@=+++++++++++*%%##**@=+*****%**##.............................(617399)
................-=+*++++#-+--=-*+***---**-=***=-=**+--+=.................+*++++++++++++++++**==*******#**#=.............................(05/22)
@@
---: :*@@ -*+@*%----====*--
..:=+*===* %-=*=-++--++++++------++*#*-
:-**+---------- @-----------------------::.:.-:
:..====------------- @:-----------------::::::::::::*: -
=+++-::::::---------------------------------::::::::::::+##+: +
:***:---::::::::::::::------------------::::::::::::::--------+%*:
:*%+----------:::::--::::--------:::::::::::::::::::::-------------+- #
#+---------------:-----::------:::::---------:----------------------+#+- :
**-----------------------------+---------------------------------------+*** -- -#
@%+----------------------------@------*@---------------------------------=** ## --+:+-
: -+: *@%+---------------------=*----+#-:::--*@#-:------------------------------=*@- :: :: *= .=:
-+#- -: @@=------------*+--------#%@-----++:::--:@*@@=--------*+---------------------+@- ++ -+ =+
=# **=------------:@=:------*-.=:=+#.+@:::---@+ -*--------=*%+--------------------+ ++-++++#++-
== .::=*=-------------+*@:::---+-:....+@...#=:::----..:*#-:----#-:+-+-=+=-------------++- .===: ==+::#
.---:::-------------@@:::-=#=......:#....--:::--.....:=#-.-++....-#*+=------------+++=+*: -- + -++:
#= +#::::------------+@-@---*@+.......=@....+--::::=......:*@++++.....%#=-------------#*--+@*+ - +*
. +@.::------------*%--*--+# :.....:--:....:##::--##.....:-=*+=--*===+*%%=----------+++:----- =::*##==.:.
=## +:::------------+@-:-%=*@%%%%%%***-.--:.....+*+-*.....+--*@+---:@%**@%%@#=--++# @++++: -##*+--+++=- #-
-+*+-- =::-----------=#@@@@@@@=-***------ :-......+@@....- :**: :**- .-@*-++++**-++= :++ -##*--+
.=-: ++. .::-----------%-##= #------ =........=-:=- +#######+++++: -+++# *+**- :: . ==-:::::===+-
-#= .::----------+- @@@@@@@@@@%***- =:........++. @@@@@@@@@@@@@@@@*: .*%@+ --#+###+-+=----
*++ =::--------=*+ -@@@@@@@@@@@@@@@@- -+........++ @@@@@@@@@***%@@@@@*+ :#@* -- -:#*++:
=*:.++ %.=:----++*+- :#@@@*-+@=---#%@@@@- -+........=+ -#@+ =@*- =#@@@@# =+-+@# -+.
:-:- @---:%#:.+ *@@* @ -*@@@- -+.........+ +@*----%@@@: +@@@ :.-=.# =# --
-+= :- *--+@%...+ @** @@--*%@@@@@ -:.........: +@@@@@@@@@@+ @@ ....=+ +--+ :-=-: ++-- : -#-
:= ==:. :=: %+**-::::+ @@- @@@@@@@@@@@ -+.::----.-+ +@-@@@@#+%@= #@ ===++ =-:=-:==== ==*==+=+==== +=::: .
-++*######= ++= @@#+ ===*+ @ @@%@@@@- %- +--::..:+-:-- +@ -%@* +@ ** @+% =-:-- -=-*+--#*+- :-: =##+-=+--*
++#+ =+ -+-:+++- - :-.%=**: * %- -**---@-- +:.......::-+- -+*%****+*@* -**=% + +*##++++++++-: --- :---
: =+: ==. :+++*##+: @#-=+-. =#*----=---- --............:-: - -- :+#++++#- .==: :=-=.
- -*# @#+++@+--: +-..............-=: :---@@-+++=@@
@#++++%..-=-:. :----.....*...........-+---::::::::::-:.-:. -#*+++++:@*
#%-++=-*#:...:------::::-:::......--...*-.............::::::::::..... #=+++++++++*#:
.+=++++++=-%#:......................=#...--............................#%++++++++++++#
-::=++=-++++-@#.......................................................:*#++++++++++++:@
-+=::=++++=-=++++*+:.....................-=---=--++=-#................+##*+++++++++++++ @
-#:::++++++++++++++=%*+- ....................= :-====*%.............. %**+++++++++++++++ @
@=::+++++++++++++++++==**@#=.................+*+==++-.............. +#+++++++==+++++++++ @
@:::-=++++++++++++++++++++=**#+=-.............--:-:...........--==+#++++++=#%#+++++++++*#=
-=::-+++++++++++++++++++++++++=+%%#*:....................:=+=###++++++#%*=#*@*##%*:@*%+.
:#=::=%#*=+++++++++==+++==+++++++++#*+-=...........==+***@*+++++++=-**@@%--***- -@%-
+#-+@:-++#*=-+++++@*+*+#*++++++++++%+-++*++--.+*+=-:..-*+++++++++#+-+-: :+:
:*%@: :-**#++=*@* ::#%######++@+................@*#++++++=---
------ ------@+................@-
+#+#***+--+#+#..................:#%@%*--.::::.--+---
-==#==:--------:+#*=..................@+---------*****#%#=**-
-#+------------------+@*:..............=%----------====+**+-#%=:---
+@*=--------------------:-*#:............@*---------.**---=-=@-....-+++#++++-:
@.------------------------.-@*#========-*@:-----------+----+@-..... .....==+*%*--
@--------------------------:+@ --------@=-------------#+.=@+.................. --#**+-
@----------------------------*+ +%------------==-%+--++++--............. ......--++*++:
@@+---------+------------------- *@------------+**+=@- -+****#===:................ -:
@-*#.-----:==------------------@* -@*.------------+==-.@- -----=#===..........
@ .=+*+=+:+***=-----------------@= -#-:------------------+@ :-++*+---:....
@+ ...:*%*+***=------------------=- **---------------------+@ ---+****-
@+......=@***---------------------------------------=++**+-+@(617399)(05/22)
. .:::::::. .%@@@@@@@@@:.
.-=+*********++==--:. .#%%%@@@@@@@@
.--=***+++++++++++*******. .==. .....*%@@@@@@
====:. :+*+=-:.::--====++**+===-:. .:-====---======.. :**: .**= ...=*@@#*
@@@@#= ........ +**+==+*+===---::.. ..:+++=...-++++++++**+=====++****+++=:.... :--=+**+++++. =+***++======: ...=+++
@@@@@* .:***=. -: .:-:.:::. ........-*%@@@@#**%@@@@+=++++++++++++++++***#*+**:.... -*+=-:**=... ..=**.::::---. .@@
@@@@@% :=*=: ::-: -: .-: .....+#######%@@@#+++**++++=**+++++++++++++*##+--=++#@%***= -** -** .@@
------- .-: -:. ....:=%%%%@@@@%*====++++++++++++==@@@%#****#%%@@@@@%%%+-::::::. -** -** .@@
@@@@@@@ ..:. . . :%=:::::+*****+++*#.-++++++++++++++++++++=+##-:..........#%%%%#=:.. -** -** .@@
@@@@%##: =-: .=-: .%+++++**++++*%@@@#.=+++=++++++==+++++++++++=#*-:. .......=*:. -** **: .@@
###*+=== -*%%+ =@@@%######*-.*@@@#:+++-=@@@%=----+%@@@@@+++++*@@+-. .....-** **: .@@
.-+++ ..--. @- :-= =++=.. .*@@@#:++=+#@@@@@%::.+@@**@@@@@@@@@@@@- .....++++****+++++ **: .@@
.:: :. +: .. .*@@@@++=+@%+*@@@%::+%@%::@@@%*=======*+: .=*#*=..........-**..... -+++******++ .@@
:- . :: -* ... .-#@@@@@%+++@*.=@@@%::-#@@##@@@#-:::::::#%-... ...--=-:..........-**.. .:::+*=..............*#####@@
..... . .. :: : .........+@@@+-=#+++%*:+@@@%:::+@@@@@@@#-::::::::+#*-:.......................-**..........=*= ..+#%%%%%%%%@@@@@@@@
.=#=:.. .. .. .........+@@%+++==+=:=#@@@@%.::=%%%%%##+-::::::-=%@@%%:......................-*+..........=*=. ...-*@@@@@@@@%%%%%@@
..:=*=--. .= :. .+-. ......:=#@+.---++++++=*@@@%::::::::::::::-+##+==*@@*=....................................:==. ..-*#@@@@+=====@@
...=*@% .. :. . -: .......=###+----=+#########*-====----------+@@@@%#####:........................................ ...*#@@@@%#####
...=*- .......-==+%@@@@@%========+*%@@@@@@@@@@@@@@@#**+:............................ ................ ...+*@@#=:...
.-*******. .. . ....:+####*#@@@%+===++==++##+=====+*@%*++=...:=+: ........................ .-:.............. ..-===..
..*@@@@@@%= .+++: .+*##**###+---:...-*+...-##*=....#%@@%######%@#: .......................:::+*=.............. ......
%%@@@@@@+-* ..:: :#####@*-......=%@@@%%%%####%#::@@@@@@@@@@@%+:. ...... ..........===***++=-.......... ...##=...
@@+......... .:. .: .-: --=-*@@@@@@@@%=:.:+@#...=####@@@@@@@@%%@%-:... ...........**:::--........ .%@@@@%-...
@@*:.. ..:+#=...::::::::=###+:::+#######*+*#+++-=%@@#: .......**:.................%@@@@@@@@@
@@@@:. .*@= .+##++*############*++**#::::++=+*###%+-.... .**:.................%@@@@@@@@@
+*%@=. . .. -..:::::*@= .*%#==+*#*++#*=====-::::-:::-+++++#*###*+***+=-. .===**..................+*@@@@#+++
:. ::--==+********#@= .*@%=====-.-#+::::::::::::::=++++##+*##*********=-. .-=+**=--:................=++=:...
===-: .:. ...:--=+**********++==*%+-: .*@#.......-#+:::::::::::::-+++++##**###*+++*******+=---------------:::. -**==-..... ..........
... .. .:-+***********+=---::. .*@= ...#@# .-#+::::::::::::=+++++*##**####=...:--+***********************++**:...... ......*#
::::::-:::+##+ :-=******+====-:-: .*@= .*@@@# .-#+:::::::::::-+++++######*#####%: .::-=++**********************=-... .......:
%%%%%%%%@@@@@* .:+******+=-. .: .=#= .*@@@# .-*+---::::::-=+++++#+#%#########%: .. .===----::-+*******-. ......
--======%@@@@#-=+****+=:. :=. . .*@@@# ..-##+-::::::+++++##=@@########..--.. :-+******=:.
@%*. :-+###******+=. +@=. .*@--= .:==+=.:::::::=++++##*@@@%#######=+*+=:. ...=*******- hello.. oh...
. .-=******+=-. .- :*-. ...*@::: .-#+..::::::::=+++####@@@@%#######*+++++:. .:+******:
.+****=-:. .: ..-%@@-:: .-#+.:::::::::=++*####@@==%%###########@-. :******+ ...
.*****= . :-@@@=:: .-#+::::::::::=+*#####-:.:#@#############%-. -****** .-.
=****:. = .-:. .:. .. .@%-::. .-#+.:::::::-=++####@%:....-############%@=. .****+- ::-::::
****= .. =@+.#-:::: .:+=.:::::--=+++####@%:. ..-%@*######*#@=. .=****+. .-.
****=.:. .-+%%:. =@*.*=:::: ...::::-=+++++*####@%:. :+*+######*#@*+- .-****+- .-.seeyU
+***+ . .. .*@#+.. .-+%@+.*%:::: ..::::::=++++++#*+##@%:. ...%@#####*#@@@%=:.. :=*****-. .-.
=****. .: . :: .:*%=.....*@#=:.*@=:::.::::::::::::+++++*###-##%%:. .-+%#####@@#+++++-... .-*****+:. ....-.
:+****=. =. =@@%****#@@= .*@-::::::::::::::::++++*#########:. ..#@%#*=%@=. .:=+*-. :=****+=: ...:-:::.
-+****=:. -. .: ... *@+-%%*=#%= .*@:::::::::::::::--+++++#########:. ..=#@=.*%-. .+@=. :+****=: :-.
.=****+: :. .- .#=..:*@=.. .*@:::::::::::::::=++++++*########:. :+%=..... ..... .=****+: ..
:=****=. .. ..*@%:.+#- .**:::::::::::::-=++++++++*#####%%:. ..... .=****+: .::goodbye bye
-+****=: =: ..:+*=-... .*-:::::::::::.:++++++++++++#####%:. :+****+: .:: .:-:::.
:+****+=-: -: ..:%@=. .*=::::::::::-=+++++++++++++*#####:. :=****+-. ...-:.... .::.-...
:=+*****+=:::. . .-=:. .*%-:::::---=+=+++++++++++++###+##*+. .:-+****+. :::.-:... ::
.:-+*****+-:. -. .*@+-===+++++++++++++++++++#######%%:.. .-=*******@*... -. :: bye
:-=*******+=-:. .*#+++++++++++++++++++++++++#+######**- .:-=++*****+=-.=@@#+. ..:::::::: :: .
:-=+********+=-. ..:#+++++++++++++++++++++*++++#########%- .:-=+********+=:..:::+@@@#.g o... :- ....:-::::.
:: :: .:-=+******+=-:. .=%##***+++++***++++++*#################=--=+*******+===--: .+@@@@@@@#. .-. .....-..
*@- -@*. .:=+*******+=---:::-+#################**#############************+=-:. .#@@@#--=#@@@@@@@#. :. 617399
*@@- :%@- . :-=+*********************************************************. .#@@@@@@@@@@@@@@@@+:.
-=#@*..=*: = .:-===+*************************************************+. .-*@@@@@@@@@@@@%+++#@%*-.......:==....==:...=+++++++++++
.........=@@@+. -**************************************************= .:=%@@@@@@@@@@@@###%@@@%##*****%@@####@@%**#@@+=======@@
....=#%%%%%%@@@@#=. +**************************************************=. .::------#@@@@@@@@@@@@@@---=@@@@@@@@@@@@@@@@%%#%%%%#--
*%%%@@@@@@@@@@@@*: +****************************************************+: ..:::::::=%@@@@@%#..:+@@@@@@@@@@@@@@=--=#@+-..
:::... #@*:::*@@@@@@@@@+. .-=+***************************************************- ...-%@@@@@@@@@@@@@@@@@=::-@@@@@@@@@@@@
@@@@*-..=#@@@@@@@@@@@#=... .=**************************************************=. ...*@@@@@@@@@@@@###%@@@@@@@@%###+=--
****%@#+==%@@@@@@@%#=... .**************************************************+. .-+****#@@@@@@+++*%@@@#***....=*@@
+++++++++++*%@@@@@+... :=*************************************************+:. ......-@@@@@@*++*@@@@:.... ...@@
====:.....=*%@@@@@+:.... :=+************************************************+. ..=*@@@@...:#@@@:. .==
###*-.....*@@@@@@@@%##+. :+***********************************************=:. -%@@@...:#@@@-... ...
::::+#####@@@@@@@@@@@@*. .+************************************************: -%@@%###%%@@@@%:. ..:#%
.......+%@@@@@@@@@@*. -***********************************************:. -%%:......-%@@@-:::::*%@@
..+@*:..+#%@*. :+*********************************************=. ..:+%%-------+@@@@@@@@@#:.:-
.+@*. ..=@%+:. .=*********************************************: .:@@@@#******#@@@@@@@@#+=+@@
.+@*.....=@@@*: :+********************************************: .. .:@@@@*+.. .=+@@@@@@@@@@@@
.+@@#####%@@@*: -+*******************************************: .=#*....-+@@@@.. .-----(05/22)
. :*****- =**********+:. =************=-.. .-=*********+-=+**##############%%%%%%%%%%%*=:
=****=. -+*********= -***+-=***+=+****++-:. .::::---**********%@@@%%%%*********++=======++++++*@@@@@%%###+:
-+***=. ..::====-.. :+**+: .***= ..-+******+=:. :*%@@@@@%%***********#***-:::::::::::::::::::::::::::::-+++*####%@%+:
=+*******++==::. :: :***+=+****=++************+++++++++++++++++#*#**********++*****+=-::::::::::::::::::::::::::::::::.. .:==***#%@%+.
*****************+=-..:--... ...:-==---:.-=***=.:+************************+++++++++*#*+====++*********+-:::---::::::::::::::::::::::::::::::::::::.. .-=-=*@@
****************************+++**********+******+********+=:.-****+=====--.. .:=+*%@*::::::::--------::::::::::::::::::::::::::::::::::::::::... ..:::::=#
*********************************+=-+****=++******+-:::. :=+*##@@@@@#+-:::::::::::::::::::::::::::::::::::::::::::::::::::...... ..:::::::.
******************************+**********=.:+****:. :*%@@%@@@@@*=-::::::::::::::::::::::::::::::::::::::::::::::::::..... ...:::::::::
*********+---+++********=---:. .:-----=**********+: -=*%@@@@@@#*=-:::::::::::::::::::::::::::::::::::::::::::::...... ....:::::::::::
******=-. ..-=++****-. .+**********: =@@@@@@%*=::::::::::::::----:::::::::::::::::::::::::::....... ....:::::::::::::::
*+-:. -+*********: :**********::::---+++++++##*+-:::::::::::--=++******+:::::::::::::::::::::::... ......::::::::::::::::::
:. :++*++****=. .:-***************************++==-:::::=**********=::::::::::::::::::::::::::::....................::::::::::::::::::::::::
...-***+ .-*******************************+=-=-+*********+-::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
.+***=. .:::: :=++=**=:::=%%%%#+-:::---=+*****************+::::::::::::::::::::-**====+#*=::::::::::::::::::::::::::::::::::::::::::::
.+***=. .+*****- .. .+@#@@#=..........::-----=+++******-::::::::::+*+-:::::::=***#######*+++=-:::::::::::::::::::::::::::::::::::::
:--=****+++=-:::. .*****+: +@*@@+:.::::::::::::::::::::+*****=:::::::::::+%@#=:::::::.=**############=::::::::::::::::::..-=:::.::::::::::
:****************+-:.=****=. .#@@@*:::::::::::::::::::::::-*****+::::::::::::::+@@%+-:::::==-::=#*-=**####*+=+-:::::::::::::..+#*=+*+=-..:::::
+*****+=***********=+*****++++++====#@@=::::::::::::::::::::::::+****+::::::::::::::::*%@@#=:::::::::-#= ..:**:..-=++++=-::::::::::..##-::-=*+.:::::
.::::. =*****************++++++****@@#::::::=-::::-===:::::::::+***+::::::::::::::::..##=@@#=--::::::#- .+*-.:::::-==+=--:::::::.*#-::::.. :::::
.-+***************- ....=@@#.:::::##=##+*###*-::::::-***=:::::::::::::::::::+#..=@@*+#+-. :#*.. .:*=::::::::::.:::::::::=#-::::::::::::
.=**************** =@@@=:::::-###**=---:=-..:---%@#+.:::::::::::::::::::-#= .=%@**#*-:#*.. .:-+:.::::::::::::::::::*=::::::::::::
.+**************** .@@@@....-=*##- ... .=+%#=-=@@#-:::::::::..::::::::-#= .-+%@#####=-: ::.:**=::::::::::::::::::-#+:::::::::::
.: .::::=**** +@@@%+*==##=-. :+#%@#-..-@@#-::::::::=+=::::::::-#- -+*##@@@@%%#######*+##*--:::::::.:-::::::+#:::::::::::
--:. .-==- :@@@@%: =#+-#+-....:-*##@@=. @@#-::::::.=#++*:::::::*#. ###-:-:=#%#%@@@@@@@@%%%##*-::::::###=:.. .#+.:::::::::
-=+=---:. -@@@%#+-#+.-@@==######%@@#: =@%=:::::::**:=#=..::::*-. =-:*%%###*=-::=+####%%%*-::.:::::#*==+*+-:=#*.::::::..
.:----+=:.. -@@%####*. :@@##*###%@@%###=. #@#::::::=#+ =@# ::::++:. %@%--=*%%@@*+=---====:::::=-:..#=::::+***##=..::.:-+
.-+++==-. .+@@@ +#*:..:*@@###%@@##%%%*-. .@@+:::::*#. =@#.::::+=:. .*@@- .-=*%%@@=.. ..:::::-+*- #+::::::::-=#= .:++-
...:=++--::.. ...... .=@@%=--::::::%@%%@@@@@%%%%%@%=. =@%:...:## .@@-::::=:. :+%@%*. .-#%@%- ...:::::=#*#+::::::::::=#-:=+=:.
.:::-====--=====-==-: -@@%:::::::-*+#@%*#@@- :+%@%+: =@%: +#- -@%:::::. :@@#-:..:. +##%@%+.:#*=::::-+#+::::::::::.:-=+-..:
..:--:.. .-+=. -@@%::::::-*::::::*@@- -*%@@=..=@%: *#= :#@+:-+-. =@@+ .. :#####%@*:@@%*-::::#*-::::::--:.:++-.:::
:++-. :@@%+:::::#+::::::+@@- =####+::+@%.:## +@@:*#- #@%: +-------*######@@*+%@%#=...:=::---========::-+++
.-. .:-=+: +@@*+:.=##=::::::*@@#- +#*#+@%-:+#+-## .%@##+. .@@#. #*##############@@#-*@@#*++=--==--:::.. :+*#+::-
-*==. -++-. -*--:. @@#-*.###::::::-%@##+=:-:==*#*+**@%: +#+## -@@%+. =@@-. -*#################..:#@@@::::::.:::::.=**=::
-+-:++:..... -%=+=::+-:-+*..+@@#**##=::::::%@#*- +*****+=#**@@.:*#*#= ..*%@+. %@#-. -*#######*++*######.::::*@@=::::::::::.=#+ .::.
++---+-==*+. -@#++++%=---*=+=*@@%%##-:::::=@@##: :**##=-=####@@:=###+ .:::*#+. @@##=:. .=#*##@@@#+ :=+*#@#.. ..+@@:.:::::::::-*#: :::
=+--------=+. -%##+=-#@+--*--:-#@@%#*:::-::#@%#+. *+**==+#+--*@@=####- .:::--: @@####*=*##*%@@@@##-.. .-#@@: .:%@*:::::::::::-#* :::
=====+*++%*-------::+ -#-*: #%@+=+*===*@@%#=:::-::*@%#+. *#*+*#*=. .*@@#*##- .:::. @@####***+**#@@@@@#+-. :+*. .:%@#:::::::::::=#.:::
+++++++=----------*-.......--.....-#--*.:*.----#-+=-@@*+-::::::=@@#=. .=++####*: .-*@@+##- .::.. *@%###+:.=*###%%%#*#*: ...+@%=:::::::::-#=:::-
-----------------=*---===+*==**=++#+--=*%+-----+@-*#@@+-:::::::-@@#+*****--#@@%# -%@*.:. .:: ..#@%- .:..=#####--*##- -#+ .. -@@-::::::::-**::+*
-----------------=@+--------------------=---:--=##@-*%%+::::::::-%@%####----*%@@: -#@@ ... .:: .@@#=:-.::-****=-*##- :#@* . ...:@@=:--::::::=##*:
--------------------------------------------=+++**+---#*-::::::::.=@@###=-----=#:. +%@*.::...:: -@@#*-++++=*####*##* -@@*. . .:::+@@*=-==--..:--.
-----------------------------------===+***++##++=-+===%#=:::::::::.+@%####*---=#*-. +%@*.::::::. .-%@%*-:. :==*=+=. .+++==-:...=+==-@@#=..-=+=-.
----------------------------------+**#==-:=*=-..:::-==+#+::::::::---#@++++--=####+. .:#%@#=-::::...... =@@%%%****++++**++*..*@=::::::::... :@@#-:::-=+=-:::
-------------------===+=--------*=+*-. .-%*-:. ..::---+*=::::::::.:.=*=----:*####+ .+#*#%*+-::::::::.. .*%#*@@@@@@@@@@@@@-**= ... .@@*:::::::-===
-----------------=+: ..=*+------*---:-%@#+: .:----::=@%=::::::::::::-%#+=-..=++*=+#%@@%-........... ...::#@@%###%@@%* .%@::::::::...
--=--=++---------#: :------+*:--=-+#****-::. #@%:::::::::::::-%@@@@%+++#@@@%#+: :=+*++--++= .-@*::::::::::
.--*=-----=+ ...-*---=+----=*--:.. -*@@#=:::::::::::::*@*###%@@@%#*#*+. .:-----: .:+*++++#*: ....... ...=#+:::::::::
.:--=++= -**=--*------+-*=:. -@@@*##:::::::::::::*@%*+=::-.-#%@-. :+**+#######+*#%%%#= -*#**--*#*-:::::::=*+. .. .*#-::::::::
... :*=-+*=------=*%- .@*@@#*::::::::::::::*@#:. .:-*#= .=##--#*:*#-..:=###*-. -*##*+==##+=*#####*##*=-.. .. .:#=::::::::
.-*+----------#- .#*%@#*=.:::::::::::::*@%- ...*###=-: *# .=#*#+ .+##: .##+....##- :**:-=*######*==. .. :*+::+*::::
.:.-#----------+ :%+=@@-*:::::::::::::::=@@- .. ..-+*- *#: .=##*: =#+. ##- .:*#- -#+ .--..+####= .. *@*=-:::::
-+*+#=+=--------- # -@ #@+-=:::::::::::::::=@@+. *#*:.:*#=. ..-.. -= = :*#.=#: *@@*:. .#@#*:::::::
:#=-=#=-:-------- # -@+@#:*-:::::::::::::::*@@%@*-.. =#######**=-. :###+. :**=:+###*: =%@@- .-%%*##:::::::
:*--+#*--------:=- -@@@+.=::::::::::::::::%@#:-*%@#- .. .:--+++++###*+=####+. .*##= :--:.--+++=--=*+=:. .-*@%#**#-::::::
.+=-#+-=-------=. -@@%.::::::::::::::::::@@#:::::+%@#=-. ......:=*####*##***+==*###****##**+-::. .... :=#@##*=-=#=::::::
.:=+++-*==*+=: -@@*.::::::::::::::::::%@%::::::-@@#%@@%*+:. ...:--==-+++++++*##%@@+:.. ... ...:+%%#*+#*----+*++*-::
.-++++*=:: -@@-:::::::::::::::::::*@@::::::-@%* .-=**%#+===---=----:. :+=--. .-*%%#+::=##*+++++=**=*--:
-@@*::::::::::::..:::::+@@%#=-=*#@@: -+***###*****#%%####**+++===-:: ... .:-+*#@+=+++=:+*#=:-=*+::+#=-*#*
-@@#::::::::::.-:...:::+@@@@@@#@@*. ....::==**###%%%%%#####%@%%*-+#*+**#+#*=++*=--=++-**##*+
=@@#..:-:::::::=***=:::+@@@****=. :::::::-*%#==-++-. =*=---=+*=:=*++##*@+
*@@#: ##+=::::::::+#:::*@@@. :+%+:=+--+*=------:=++*==##-@#
*@%#+ %#+*+++-:::::=#*##%@@= .=##-:*+-------:::::*=-#**@%
=@@%#=%@@@*@%%%*=-:.=##*#@@@- :*%@#*+=.. .#%=*::-----::::::=###@%*=
:@@%@@@@@= .*#*#%@#**#%@@@@@% .-@+:::--+#*##*#%%@#-::::::::::-+%%%%*+++
@@@@@*+- .=#*##@@%%@%*#= .*%=:::::::::::-%#+*%+::::::::-*@#*+++++++
-==*. .:::. soulrot :@*::::::::::::--*%+++@-:::=*###*++++++++++
##::::::::::::----*%++#@**%*+++++++++++++++
-@%::::::::::::----=@*++*#*+++++++++++++++++
-@*:::::::::-------*%(617399)+++++++++++++++
-@*:::::::::----=*%#+++++++++++++++++(05/22)