#******#*#*#####*****#######*******#*******************###@@@@@#########**++++*#@@@@W@WWWW@W@#W@@@@@@@@W@@@W@@#@##@@@#####@*#####@#@@#*#*@@#*#@@###@##*#*#@@###@@***##@@@*
#**#***######*#####***+*######*#**####************************#####@@######*##*+::++#@@@WWWWW@W@@@@W@@WW@W@#W@@@@@@@@##@@@####**#@@@@@@####@##@W@W@####@@@@@@@@#***@@@#@#+
##*##******##*******###****####**#***************************##########@@@@#########*++++**###@@WW@W@W@W@@@#@@#@@@W@@@#@@@@#@@####W@@@#@@@#@#@W@@@@@#@###@@##@@#W@@@##+:+*
#####****#****##*###***########***#*************************#**#####**####*#####@@#*#####********#@@@W@W@WW@@@@@@WW@@@@@@@@###@#@@W@@@@#W@#@@#@@@##@@@##@##@@@@@@@*.,:**#:
*###*###******************####**********************************####*****##########@@@@@######****##@@W@WWWWW@@WWWW@@W@@@@@@@#@*@WW@@@@#@#@@####@#@@@@#@##@#****##@@@*::*#
********************************#******************************##########******##########@@@@@###*#*###****#@@##@WW@@WW@WW@@@@@@@@W@@@W@W@#@@@@@@##@@#@#@#*#***#**.####***
****++*+++++++***************************************************##*##########*#*#**#*######@@@@@@@######*#******+*#@WWWWWW@@W@#W@WWW@###@##@@@@@@@@#@@#@@@#*@#@@*#@@@@###
+**************+****************************************#*#####***##############**###############@@#@@W###*##*###**++++##@@#@##@@WW@@@###*#@@@@@@@@@#@#*@@#**@@W@@#@WW@@##
************************************************************#***################################@@@@#@#*****##*@**#@@@W#@##*#@##**#@#@@@@##*#@@WWWW@@#@#@@@@@@@@@@#@*#@#@@
++*****++****+++*****************************************###***####*******#####################*####**#@######*@@###@@@WWWW@@@####@@@@@@@##@@@@@@W@W@@@@@@@@@@@@@@@@@#@@@@
++*+*++++++++++*****++***********************************#####*########*###################@###@#*@#*WW@#@@#@#*#@****#@@WW@@WWW@@W@@@@@@@@@@*@@@@@@W@@@W@@@@@@@@@@@@@@@@@@
+++**+****************##*******************###***************#################################+*@*@#+##@##@#@*#@@##@+*##@@WWW@WWW@@@W@@@@@@##@W@@@@@@@WWW@@#@W@@@@@@@##*@@
***********************************######****#**###************###########################W#####@@@#*W#@W@@@@##@@@@#@@###@@WWWWWWW@W@WW@@@@@@@@W@W@W@@W@@@@@@##@@@@@@@@@@W
************************************#********########****#******####***#*##############*****####WW@#*#@#W@@W@##W@@@#@####@#@@@@@@@@WWW@@@@@@@@*@W@@@@W@@#@@@@@##@@WW@@@#W@
*********+************************************#****************###############*########@@@@#*##W@##*+#*@@@@@##@@@@W@*#@##@@@#@@@@@@@@@@@@W#**:..:#WW@@@@@@@@@@@@@#@##W@###
*********************+*****+******************************##########################@##@*@@#*@*@W@W@#W@@@@@@@#@##*#@#@#@@@@@@@@@@@@@@@@@#++..::::..+#@@@@@@@@@@@@##@#*@@@#
************#****#******+**+*+*##**************##*#***############################@@W#@@#@@###*W@@@##@#@@@@@@#@@@#####@W@@@@@@@@@@@@W@*:.::+.:::+:+.#@@@@@@@@@#@@@@@#@@@#@
************:***###**##*#*#*##***##*########********##***#########################@@@@@@#W@@@@+W@@@*@@#@@@@@@@##@@@####W@@@@@@@@@@++*+:::::::::::::*@@@@##W@@@@@@@@@#@@@@@
*****###***#**###@@##**#@######**##*##########***#********##################@#@@@@@@@@@@#@@W###@@@W*#@#@W@@#@@@@#@@##@@@###@@@@@@@@@@@@@@##***+:*+**+*:*:*++*#W+@@@W@@@@@#
************#@@####@@###@#####**#**###############@#*@####**#################@@@@@@@@@@@@@#####@W#@*@@#@@@@#@@@@@@@@@@#@@#@@#@@@@##@@@#@@#@@@++#**+**@++.###++@@#@@@#@#@@@
************#@@@#@@@#@@##@##@@########################*#*#@*#*##################@@@@@@@@@@@@###@@#@*##@@@@@@#@@@@@@@@@@@@#@@#@@@@@@@@@@###@#@+#*+++++**##+*++++++**#@@@#@@
******##****#@@@*@@@####@@@#@@*##*###########*@##@##@@@@###*############@@@@@#####@@#@W@@@@@#@@@@@@##@WWWWW@##@@@@@@@@@@@@W@@@@@@@@@@@@@@#@@@#@@W@####***#+*++++@@@@@@@#@@
************#*@@@@@##@@#####@@###@############@@#W@#@#@@####*#@@############@@@###*#@#@@@##@@@@@@@@@##*@WW@@@#@@@@@@@@@@W@@@@#@@@@@@@W@@@@@@@@@@@@@@@#@@#@@@##@@@@@@@@@@@@
**********#*#*+#@##@#@@##@*#@@@*@@*########*#@#@##@@##@@@@@@######@@#########*@@@@W@@@@@@W@@@@@#####*+#*+W@@@#@@W@@@@@@@@@@*@@@@@@@@@@@@@#@@@@@@@@@@@#W@@@@@@@@W@@@@@@@@W@
*###########@@@##@#@#@@##@##@@@*@############@@@@#@@@W@#@@@@#*#######@########******@@@@@@@#@@@###@##++#*#@#@@@@@W###@@@@@@@#@@@WW@WW@@@@@@@@@@@@W@@@@#@@@##@@@@W@@@@@@W@+
*#########@@@@@#@#@@@#@##@@@#@##@*##########@##@@@@###@@@@#@#################**###@W@W@@@@W@+W@##*@*#****+#@@@##*###@W@W@@@W#@@*++W@@@@@@#@@@@@@#@@@@*#@@@@@@@@@@WW@@@@@@.
*#######@@@@@@@#@@#@@##@#@@@##@#@*@@@@@@@@@@@#@#W@W#@#@@@@@@#########*@@####@#####@WWW@W@@@W@@@##*@#**W#@##@@@@W@*##@@@W@@@@@@@@WW@@@@@@@#@@@@@@@@@@W@@@@@@@W@@@@WWW@@@W@@
#####@@@@@@@@@@#@@@@@@#@#@@W######@@@@@@@@@@@@W###**##@@#@#@###@#@W@W@@##@@@W@@@@@@@@#W@@@W@@@@@#+@##*W#@#*@@@@#@#@@@@@@#@@@@@W*@@@W@@@@@@@@@@@@@@@W@#*@W@@@WW@@@#+#@@W@@+
#####@####@##@@@@@@@@@*@@#@@@@########@@@@#W#@####@**##@@##@###W@W@@#@@@@@W@@@@@@#@@@#@W@@@W@@#@@#@###@##@#@@###@@@@@@W@@@#@#@W@@@@@@@@@@@W@@WW@@@@WW@@@@W@@W@@@@@@@@@@W*@
***+**#***#**#@#@@@@@@#@W#@@###@@@@@@##@@@@###@@##@@W##W@@@#@@@@@@#@@@WWW@@W@@W@@W@@@#@#@@@@@@@@@@@@@###*@#*@#@@@@@@@@@@W@@@#@@@@@@@@@@@@@@@@W@@@@@WW@@@@W@@@@#@@@@@@@@@@@
**++++++++++*@@##@@@@#@#W@@##*****+**@@##@####@W@@@@#@#@#@@#*#@@@@@@@WWWWWW@@WW@#@@@@W@#:*#@WW#@@@@@#####*#*@@#@@@@@W@@@WW@@@@@@@@W@@@WW@@@@@W@@@@@@W#W@@W@@@@W@@@@@@@W@##
#########*###@#@@@@@@@@@@@@@@####****#@@@@@@@#@@@W@@@@@@@@W@#@@@@@@@@WW@WW@WW@@@@@@@@@@*###:***####@####*::+W@@@@@@#@W@@@#WW@@@@@W@W@W@W@@@@WW@W@WW*W.@@@@@WWW@@@@@#@@@@@@
+***####*#*#####@@W@@@@@@@W@@#@@@****#####@@#@W@W@@@W@@#@@@@@@@@@@@@@@W@WWWW@@@@@@@@@@@+*#W**..:+:::,  , , @@@#@#@@@@@@@@@#@@@@@@@@@WW@WW@@@WWW@WW@W@@W@WW@@WW@@WW@@###@#@
#**#*#####@#######@#@@@#####*#*#**#**#@@#@@@###@@W@W@W@@@##@@@#@@@@@@@@WWWW@@@@@@@@@@@#@+#@##,:#@.,.,.,@,,.@@@@@@@@WW@W@W@@@WW@W#@W@@@@WW@@@@@WWWWW@@@W@@@@WWW@WW@@#*###@#
##*########@########*#@##@@@@@@#@###@@@#@@@@@@@W@@@@@@@@#@@@W@@@@@@@@@@W@W@@@@@@@@@@@@@+##**+,.#+:,.:.,#,,,:#*++W@@@@@W@W@@@@@@@W@W@@@W@@@@@WW@@@WW@###@@@*@@@@####@####@@
#**#*####@##@######@@@@@W@@#######*##@@#@@W###@W@@W@@@@@@@@@@@@@@W@@@@@WW@@@@@@@@@@@@@@+W@#*#:+..,,,,,,,+********@@W@@WWW@@@@W@##W@@W@@@WWW@@W@@WWWW@#@#@@@@++##@W@####@@@
###*############@@@@@@@@@@###*####*@@#@@#@@@@@@W@@W@@W@@@@@@@@@@@@@W@WWW@@@@@@@@@@@@@@#W@@#+++:+++**+:.,,, :***+*W@WW@@W@@@WWW###WW@W@@###@@@W@#@W@@#*###*:+W@@*+++**##@##
##*+*****@@#@@@@@@@@@##*##@#######@@W@@@@@W@@@@@@@W@@@@@@@@@@@@@@@@W@@@@@@@@@@@@@@@W@#@W@@##:....,,, ,,,,,,*+****+@@@#@@@@#@W#@#@@@@W@@##@@*WWWW@#@@@###*#@#@*++++*#@@@@**
*###***@#@#@###*****######@@@@#@##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@W@@@@W#@W@@@@#***##*W@W@*:+.+.:+,.,*W@:,+******#@@WWWWW*+WW@@###@W@@#WW@WWWWW@WW@#######@W@++******#@WW
######@@@@####@#@########@@@#@@@@####WW@@@@@W#@@@@@@@@@@@@W@@@@@@@@@@@@@+#@W@@W*:*#****WW@@*::*W::+,,*###W@@#******#W@@WWW+.WW@@@@@WW@@@WWW@+###W@WW@@##@##+*+*+****###@##
@@#@@@@@@@#@@@@@@#######@@@@#@@@@@@@@@@@@@@@@#@@WWW@@@@@W@@@@@@@@@@@@W@W*++*W@:+++*****W@*@W.+*@..+,##@#@@@@@@@****+.+:+#W+.@W#@@@#WW@@@@W@W#*++#WW@#@W###*#******+**#*#@@
##@###@@#@##@@@@#@#@####@@@@@@@@##@@@@@@@@@@##@@W@@@@@@@@@@@@@@@@@@@@@@@@#:+#:*:+:****+@#.##:+#W..+###@##@@@@@@@@@**:::::+.*W@#@W@W@@@@@@@@++*+++:*#+.,   ,****++**#@@*#@@
@###@@##@@@##@@@@@#@#@@@@@@@@@@@@@@@@@#@@@@@#@@#@@@@@W@@@@@@@@@W@W@WW@W@+:@*:*:*+:****W###@**+,+*@@@@@@@@@@@@@@@@@@@#::::+:,W@:@@WW@@@W#W@@++::#:W#.:,.,,+++++**#*+**##@@@
@#@##@@#@#@@#@@@@@@#@##@@@@@@@@W@@@WW@@W@@@@@@#@@@@@@@@@@@@@@@*+++::::+:++###.:**:*:#+@@##W@**@@#@@@@@@@@@@@@@@@@@@@@@@*+@#, #:WWWWW@W@@W@@++:+::+#+:,,,, ,++++++*######@@
#@#@@@@@W@@@@@@@@@@#@#@@@@@@@@@@@@@@@@@WW@@@#@@@@@@W@@@@@@@W@#:+++++#++*++:*W@*:++**+*W@#*#*#*@@#@@@@@@@@@@@@@@@@@@@@@@#@@,,.,.+W@@WW@W@W@@+*+#*:+:,,,,, ,.+++++::++**###@
*#**#*###@#@@@#@@@@@#@@@WWW#@@#@##**+++:*+*@@@@WW@WWW@W@WWW#@#+:*+*#@@@@#++++:#W@++*.@WW@##*#*@@@@@@@@@@@@@@@@@@@@@@@@#+:,,,,.,*@W@@#@WW@@@+*+@*++:,,,@.,,::+:::++++++***+
####@#*#**#@#@@@@@#@@@@#:::*+:+:::+++#*+#+#@@@@@@@WW@#+:.,,.**##*@@@@@@@@@@@::*+*W@#@W@@@*##*#@#@@@@@@@@@@@@@@@@@@@@@@#*,,..,,,#@W@+:WWW@@@++*@@:+:,, @,,,@W::#*:+++++***+
#####@@@##@@##@##@@@@@#W*+*#++:@:++@+@:*@**@@@#*:.,,.,.,, ,:*+##@@@@@@@@@@W.#@**##W@**@@@###*+*@#@@@@@@@@@@@@@@@@@@@W@+,,,,,,, @@W@*#@WW@@*@@@@#++: ,:@.,,@@@@W@+++:++****
@@@######**@@@@@@@@@@@@##+*#+++++++.##W@*+.,,,,,,,,,,@,,,,::#@#@@@@@@@@@@@@:@*+++@@@@@#++****##@W#@@@@@@@@@@@@@@@@@@@+@# .,.,,,,@W@+*WWWW@++++W@++.,,+*..:#W#@W@*+:+++#*##
#@@@##@@#@#@@@@@#@@@@@##W:##:::::::..,,,,,,,,,, *,,,.......*W*#@@@@@@@@@@@@::+++@W@@@@@@#####@#**WW@@@@@@@@@@@@@@@W@@:W,,.,,,,,,,:W::WWW@@@#++:+@@:+**:..,@@@@@@@#***#@#@@
@#@@#@##@*#@@@@@#@@@#@@@@@@*..,.,,,,, + ,, ,,,,.......::+::##@@@@@@@@@@@@@W::+++@*#@@@W@####@@##+*:W@@@@#@@W@@@@@@@@#:@,,,.,,,,,,,,..W@@@W*@+:+:++:,, ,,,,W@@@@@@@@##@@@@@
@@@@###@*@#@@@#@@##@##++.,,,,,, ,:,,,,,,,,......,.,...::::++##@@@@@@@@@@@@@:::++@#*:#WW@##@*###**+W++#W@@@@@@@@@@@##+:,, ,* ,,,,,,.,+@W@@W:+:+:+#+,.,,,,:+W@@W@@@@@@#@@W@@
@##@#@#@@@@@@#@@@@@W@+#::.,,,,,,,....,..,.,,...........:::::*#@@##@@@@@@@@@::+:+#@@*++##*+,,, .::@+@:+:*@W@#@@@@@W::+:, ,,+,,,,,, . +WW@WW++++:+#@+*,,,,,,@@@@@@@#@WWW@@@@
#@##@##@##@@@@@@@#:+*:@++::,.,.,,..,..,...,,...........:+++++##@@##@@@@@@@@:+++:+++**@*.,.  :+#+:#W+W#++::#W@@W@@W+,:,,,,:+:+.:+++++++#WWW++:W+:::,, ,,,,+@W@W@@@@@@@@@@W@
#@@@@##@@@@@W@*::++*,*##**+:.,,,,,:,.,..................:+*#@@@#@@#@@@@@@@#+:++++*++*#@*:+,., .++#W::+@@*#@:*WW@@@:,:,,.+:..*+:::+.::.W@W@++:@+++.,,,@,,,*@WWW@@@@WWW@@@@@
###@@@#@@@*:..:++:*,+**++***::.,.......,.............::+@@@#@@@@@@##@@@@@@##+*:++++++++., ,,,,,++@W:+++:+@+#+++@W#@::,++*...+,,::..:,WWWW#+++@:++.,,,*,,,@@WWW@@@W@WW@@@W@
@#@@#@@#:::::::++#,::++++**#++:.,,.:,....,......+:++++++##@#@@@#@@@###@@##@#@@@*:++@++:,,,,.,,,++:*:++:++@W##+:@:*@#*++:,,, * .:.+...@WWW*+++W:++.,,,+,,,@@@WWW@WWWW@#@@@@
########@#+:::++#,:+:::+++++***+:..,:,,...::++++:+:::+:@##@@@@W@@#@@@@###@#@####*++#++:,,,.*, ,++:+++++:+W@+:*W+#*+*:::,,,,,+,,, .,,,*@W@:+++W:+:.,,++,,,@@WWWWW@@WW@#@@#@
+*######@#@*+++*,++::::+++++++**++:.::++++++:+:+:::.#@,**#@#@@@@@@#@@@@@@@######+++@:+:,. *+.,,+++:+++:+*W#++:++W*+*..:.,:,.@::::*#@,##@W:::*@:::.,,#:,,,@@@WWWWW@W@W@@@@@
*::+#######@***:++:::+::::+++++*#**:+::+:+::::+@:..,##.#*#@@@@@@@W#@@@@@##*+***@@#+@+*. . *:,,,##W@@#++++##+:++#@+#*,*+.:@..#:,:::++:+:@#W#+:+++:,,,.,,,,@@WWWW@@@W@@###@@
###+,:*###@#@@*+:::::::::++:++++**#**+:.:#*,,.+@,,.,::+@###@@@@@@W#W@@@#@#@#***++#W#:*.,,,.,,.:#**###@:++++++:@W@W#+,,*:.: ,:,,:..,,++*++++@W*:+:,,,,,,,:W@@WWWW@@@@@W@#W@
#*##@@@@######@@*+:::::::::::+++****#**:.++..,.:.:.::.###@@@@@@@@@#@@@W@@#@@@#***++#W@,,.:###+..*###*##++:++*+::W@#+::.,,,,.:,,,..,,*##**+++:@W*,,,:*#@+.@W@@@@@@@@@W@@#WW
**#+############@*++::::::::++++*+****#**:.:.::.:...,:@@#@W@@@W@@@#@@@@@@@#@@@@*@#+*+#@++. ,,.,::###@*@@@#+++++:#+*::,:, ,,..,,,..,,+#+@W@*+*#*@@*:, ,..+@WW@@@@@@@@@##@@W
@#####@######@@#@@@++::::::::+++++++**#*#++:....:...W#:@#@W@@@@@W@##@@@@@W#@***+*@:+*+:,,,,,.::::+#####@@W+*@*:**++.,,.,+:,:,,:.:,. #W+W+*+., ,+:  ,,,.,+W@@@@@@@W@@@@@W@W
*#####@@@#@@@@##@##@*+:::+:++++:+++********++:*@...:W**@#@@@@@@#@@@W@@#+******#*+++:W#.,:,,,:+.:::::*##@@@W@@@@###@*#,..,. :, #W,,.,@#.,,, ,, ,+,,,,+,**WW@W@@WWWW@@@@@@@W
####@@@@@@@@@@@@####@@*+::+++++++++++******#**::....::+#WW@@@@@@#*:*********#*##*+*+*#*.:,,,,,:::::::+#@W@@@W@@@@@W@#+,,@@,+, W@.,. ,, ,,,,,,,,+**::# , W@@@WWW@WW@@@@@@@W
###@@@@@##@@@@@@*###*@@**+:::::++++++++*******+++::**###@@W@##***+..+*+*****###**+#*++.,,,*,,,::::::::*@W@W@@@@@@@W#@#+,@* +, W#.,,,,,,,,,,, , .., *:,, W@W@W@WW@W@@@@@WWW
###@#@##@####@@###*####@@*+:::++++++++++*+***#*#++::@@@**++++:....:..:*+****#@#**+#**+,,,,*,,,::::::+*WWWWWW@W@@@WW@@#**#*,+, W*:,,,,::,,, , ,,.,, ..,,,W@@@@@W@W@@@@WW@WW
*#@@@##@@@@##@#@@@###*@####*:++++:++:+++++*******++:.:+:::.,........:.+*****#@@*++#*++.,..*.,,:::++::@WWWWWWWW@W@WWWW@@@@*,+,,@+.,,.:,  ,,  ,,,.,,,,,.,+W@W@@@@WW@@@@WWWWW
#@@@@*@@##@@#*@#@@@@#*##*#@@*::++++++++:++++*******+++:.................+***#@@*++#**:,.,#+..,**+:+#@WWWWWWW@WW@@W@WWWWWWW:*,,.:.,., ,,, , , ,,, ,,,,,+@#W@W@@@WW@W@W@@WWW
##*###*#####@###@##*#*###@##@#*:+++++::++:+:+*+*******,,..............::.:***#@+*+#*+:,.,::,.:#####@WWWWWWWWW@WW@W@W@@@@W@@W..,,.,,,,,,  ,, *,..,,,,,.##*#WW@@@W@@@@WWWWWW
####@@###@@##@###@*@#+@######@@#++:+::+:++:++++******#:,:...............::.+##@#++++*:,. ::,.+#####@WWWWWWW@WWW@WWWW@@WW@W@@#.,,.,,, , . ,W @,.. ,,,.+#*#+*WW@@WWWWWWWWWWW
#*####@@@##@##*##*###*#######@#@@**+:++++++++++++++++++.................::::+*@##+++*: .,:,.**##@@@WW@WWWW@@@@W@WWWW@@@WWWWW:*..,,,,, .* ,+, ,..,, .+#@##*##@WWW*#*###WWWW
*##@@#@@@@###@##@##*##@*@###*@*##W#+++:+++:+:+++++++:+:................:::::::+#@@*+*:,. .,,**@@@@@WWWWW@W@@W@W@WWWWWWWWW@@WW:+,,.,,,,,,,,, , ...,.+#@W*####*@WW**+*#+WWWW
:.*##@#@@@@#**@@##@#**@@####*#**W##W**+++:+:++:++++::::..............::::::::::++#W**.,.:+:*@@@#@@WWWWWWWW@@@@@@WWW@@WWWW@@@WWW,,.,.,,,, , ,,:.,.+@W@@W@*#*##*@W:+::+*WWWW
:::+*###@@#@@@##@###@**########+@***@@*+++:+::+:++:+:::.......::....:::::::::::++**#*+.*@######@@@WWWWWWWWWW@W@@WWWWWWW@@WW@WWW.,,,,, ,,,,:,++*:+:@W@WW@#####@*#*++*++WWWW
++*+*###@@@@#@@##@#*#@**####*##*#+:@#@@@*++++++++++:++:...::.........:..::::..::.*,++*.:++*+*@WWWWWWWWWWWW@WWWW@WWWWWWWWWWW@W@@+,...., ,,W*:*::::*:.+WW@@##@##@#++++#@@@@W
###**####@@@@@@@###@#*##*##@##@##*+@#+#@@#++++++::+:::+::::.:.:.......::..::..,,,:,.+,.+++**@@@@WWWWWWWWWWWWWWWWWWWWW@WW@WWW@WW@.,,..,,,@:.*::+::.::*..#WW###@@@:+##@@@#@@
##:+*++**#@@@@@@@@*#@@###**##@###@*##*#@#@@**+::::+:::+++:.:........:...,,, ,,,,,:..:.+**@#@@#W@WWWWWWWWWWWWWWWWWWWWWWWWW@WW@WW@.,:,:++*WW@+:+::+:++,#:::+W@###@**###@@@@@
@#@+++:++*##@@@@@@@####*##*###+*##*##++W##@@***+++:+:+:*::..:.:....,,,: ,,,,,.:+.:,.W#@@*#***#WWWWWWWWWWWWWWWWW@WWWWWWWWW@WW@W@* ,++++:::+##@*:::+:+*:::*:.:W#*#@:@@#W@@WW
@@@@*.:*+++##@@@@@@@@##@#####@+*@###@**@+###@@+*+::+:+*++..:...,  , ,,,,,.:..,,,,,.+::::@#**#@@WWWWWWWWWWW@W@WWWWWWWWWWWW@WW@@W,.:+#**,.:*#***@#*.++::+::::WW@###*#@@@W@W@
@@@@@#..:+++*##@@@@@@@@##@####**@##*#**#+**@*@*+*+++++::.+,,,,,  , ,,.+.,, ,, +*..#*++++@#*##@@@WWWWWWWWWWWWWWWWWWWWWWWWW@W@WW@#++@+*@*..#*#@#**###::..,..:@WW@##@@@@@@@@@
@@@@@@@::*++++*@@@@@@@@@#####*#####@#*@@#*#@*#*****+***,,+  ,  ,,..,,,:  ., ,,@*+:@*++*+@#*#@@@@WWWWWWWWWWWWWWWWWWWWWWWW@WWWW@@W@:***:*W*W*####@#*##*,.,..,WW@@#@@@@@@@WWW
@@@@@@#@+.++++++###@@@@@@###@###*###@#**#*@#**@#**:#**#  ,,,..,,,,+,,,  +*,,,,@*+:#*+++***##@@@@WWWWWWWWWW@WWWW@WWWWWWWWWWWWW@W@+**+**+,*@#+##*##@@#..:.::.W@@W#@@@@@@@W@W
@@@@@@@@##.:+++++*##@@@@@@@#*@@###**###@@*#@@*##*+*++*+,,..,, ,, :+. , ,#:,,,.++*::+++**####@@W@WWWWWWWWWWWWWWWWWWWWWWWWWWWWW@@#+*+++###W###@*#@@@#@:.+.::+@@#*@#@@@@@WWWW
@@@@@@@@#@@.:+++:++#@@@@@@@@#####*#####@**######*+*#*+:,,.,, , , *+,,.,,:.,,,:::#:+*+***####@W@@WWWWWWWWWWWWW@W@WWWWWWWWW@WWWWWW::+*@**++*###**#@@@@.,::.::@WW:+@@@W@@@WWW
@@@@@@@@@@@#+.++++++*#@@@@@@@@##@@*###*#@@###@#@***@+*+, .,:.,  ,**,,.,,,,,,::+:#:++++*#W@#@@W@WWWWWWWWWWWWWWWWWWWWW@WWWW@WW#WW#::,.,,,..+*#*###@#*#...:..+:+.*WW##W@@WWWW
@@@@@@@@@@@@W#.+++++++##@@@@@@@@#@@#*##*+##@#@@@@##@*+:, ..#.,,  .  ,:,, ,,,.:+:#*W***#@@@#@@W@WWWWWWWWWWWWWW@WWWWWW@WWWW@#+..,..,.,......:+**###*@+.....:+::+.+@#W@W@#@@@
@@@@@@@@#*::,,...,+++++*##@@@@@@@@#@#**#@*####*#@@###*. ,..:.,  ,, ,,:,,#,,,,:W:@#@*+*#@@@#@WWW@WWWWWWWWWWWWWWWWWWWWWW#.,.:::.:.::....:....:.:.+*@#,.....:::.@##@WW@@@@@@W
@@@@@#*:::::+:...,:+++++*#@@@@@@@@@@@@@######*@@#@@###:,,+.   ,, ,:.,:,,@,,,,*@+##@***#W@@@WW@@W@WWWWWWWWWWWW@#+....:::::::+.:.,:...,,.,.:.+.:.*@+,:..,::++:.@+*@@@@@+.,,,
@@@#*++::::+:+:,*,,.*+*++#@#@@@@@@@@@@@@@#####@##@###@:..+*.,,:,,#*,,:,,@,,,.*#:#*#@#@@@@#@@@@@W@@@WWWW@#:,,,...:::+::::::+.::::.:...,.....::+#W...::..:+++:,+**+**.,,..++
@@##*++++:+:::++,..,:,++++*#@@@@@@@@@@##@@#####@@@@@@@*@@@@@:##:+@*:,*,.,,,,:+*#WWWW@@@#@@W@@WWWW@*:,,,,..:......:::::::::.::..*:,:...,....:.++*:+++:..***...#**:,,..:.:::
@@##*+++:.::::::+.:.+,+*****##@@@@@@@W@@#@@######@@@@@@@W@@WW@@@@#*+.+.+,,,+#@@@@@@W@@@@@@W@+.,,,..........:....:.:.:+:.:::.:...@+:......:.::::.:++++:+::..*+.,,.....:.:++
@@#***+...:::::::+..*,,:*+*++**@@@@@@@@@@#@@@###W@@W@@@@W@@@#@#W@@#@W#W.*+:#@@@@W@@@@@@@@@W+................:....:::::...:.+.:..:,:....:..:..+..:::++...*#:,,...:......:::
@@#**###.::::::::+:: ....*++++****##@@@@@@@#@W##@WW@@@W@@@@@@@@##@@@W##:#:.@@@@@#@@@@@@@@@@W+..,....:....:.....:.::::::...:.:..::....::...:+::..:.+..+#:,,...:+..:.....+++
@##**+++:::::::++::::,,,.,+*+*+*#*##@@@@@@W@#@@@@@W@@@@@@@@@@#@W@#W@W@@W:#@**######@@@@@@#WW+:.,,..:....,.::+:...:.::::::...::::.::.::.:...:+:.,..+*+,,.:,:::.:..:.....:::
##**+::::::::::::+:+:+..,.,:++*+++..,*@###@@@@@@@@@W@@@@@@W@@@@@@@WW@@@*:#*+:::+####@@@#@@@W++.:,...........#,::....:.:::::::.:....+..:::..,+W:+*+..:..:+++:,,:,.:..:..+::
##*++:::::::::::+:+::+:.,,.,:+.,,,..:+########@@@@@@@W@@@@W@W@@@@@@W@@@*+@++:+::::*####@@@@@+++.:,:.:.......,::...::.:::+.:...,:+#+.:.,,,,,.W#W.::.+....#:.,,,:..:..:,::::
#*+++::::.:::::::::.+.:+:,,.,,..,,.:+:+*######@@@@@@W@@@@@@@@W@W@@@@@@@#***++::++**#####@@@@++++............:.....:+#+:+::.:+*+:, ,,,,,,,,:WW@#+:+:++*:.,.,,,,........::::
**++:::::::::::::::+:+::::,,.,+.,..++++****###@W@@@@@@@@W@W@@@@@@W@W@W@#***#####***#########+*+*:.....:.:....:::+++*@#+#*+:,,,,,,,,,,,,,:+W@WW@#.*+:+,,,:,:W@.....:...:::.
#+*::::::::.:+::::++:::::+:,.,+,..:++++*****#@@@WW@W@@@@@@WW@@@@@@@@@W@@@#*#*##@########@@##@++**.:...:.:::.:..++*@W@@@@@.,,,,,,,,,,,,,:+@WWW@W@.*,:*:+:+:W@W:.+:.:..,::+:
##+*::.::.:::::::::::::++:++,.*,,.:++***+++**@@W@@W@@W@W@@WW@@@@@@@@@WW@##**###*#*@#######@@+@**+*::.....:...:++@@@@#W@,W@++:,, ,,,,,,***@@WW@W@::++*+**:W@W@+::+:::::*:+*
*#@*+.:.::.:::::::+::::+:::++.,...::*+:+*+++*#W@@@@@WW@WW@@W@@@WW@@@@@@*##+*#**########W@W@@*+##+*+.:.,.:...,.+:##+@W@@WW#W@@:.,,,,,.*+*#WWWWW@#*.:+#*+*.W@@*+.:+:+#*#**+*
**#**+.:.::::.::::::::+:::::++:,.,:,*#*#**++@WWW@@@@WWW@@@W@@@@@@@@@@@@#***#***###@#@@WW@@W#****@+**:,.,,,,,+#+**@*@@W@@#.#W@@.,,,,.*#@@WWWWWW@##.#**:+*,WW@*::W@*+**#@@##
*##*#*+::::.:::::::::+::++:+::++.::,,++*##***W@@W@@@@W@@WWW@W@@@@W@@@@#@*+####@#@@@@*::+++####***@*:,,,.:+:+@*##*WW@@WW@@W@@@#:,.:#WW@WWWWWWWW@@@.***:.#,::*#@W#@#@@@#**@@
###***#+::::::::::+++::+::+:+:+:,.:,.,+@@###@W@@@@@@@@WWW@@@@@@@@@@W@@@@@@@#@##@#@:+++:.#*++++*####.,,,@@#W@@@@*W@WWWW@@W@W@W@@@#@##@@WW@WWWWW@@@:+##::+.:+++:+*++*@W@W@*+
###***#@+:::.::::::::::...+:++::,,,.,..:@@@@@@@@W@@@@@WWW@@W@@@@W@@@@@#@*@@##@##*@@*.,,,@*@###*+++#.,,+W@@@W@@@#@@@WWW@W@@WW@W#+##W@WWWWWWWWWWW@@*.**:+***++++++:++*++##@W
####**####::::::::::+**,.+:++::.,,,,,.,,:@@@@@W@WWW@@@@@@WWW@@@**@@@#W###**#W*#@#@W.,,,,@#.:##@@@*++**W@W@@W@@W@@@@WWW@W@W@@W@##@@@WWWWWWWWW@WW@@#.*##@##@@#*+++++::+***:+
#*######@**+::.:::::++#.+:::+:+,,,,,,,,,..#@@@@@@@@WW@@@@@W@#@@#**+*@@#*:::.:@##@@@.,,,+@@#@W@WW@@WWWW@W@W@WWWW@@@WWWWWWW@@@@W@W@WWWWWWWWWWW@WW@W@,#@@@@@@@@#@#*::+*+++**#
########@*#*+::::.:::::+:+++:::,,,,,..,.,,,#@@@@@@@@W@WW@WW##*@#*#*@@#@+.,,,,+*#@@@:.:+:#@##@*#@@@@@@WW@@WWW@WW@W@@@W@@@WW@@WW@W@@@WWWWWWWWW@@@WW@.+@@@@#@@@#####*+++*++::
############*:+.::::::::::+:::.,.,,,,,,,.,.,*W@@@@W@@@@@@@W@#+*##@@@*.,:+,,,.**W@W#+:,..+*#@W++*@##@@WWWWWWWWW@WW@##WWW@@@WWWW@@@@@@W@WWWWWW@WWWW@+.@#@@#@@@@#@@@#***++++:
##############:*.:::::::::::::,,,,,,,,,,,.,.,+@@@@W@@WW@@@@@@@@@@+,.,,,  ,,,:##W@@@##.:*#*#*W*#+@#@@W@WWWWWW@W@W@WW@*+*@WWWW@@W@@@@W@@WWWWWW@WWWW@*.@@@@@##@@#@###@####*::
######@######@@:*+.:.::::::+::,.,,,,,,,,,,,.,..@W@@@@@@@W@#@W*:,,,,,,,,,,,,,+#@W@@###*WW@#:@@#*@@W@@WW@WWWWWWW@WWWW@@WWW@*@@W@@WW@W@W@@WWWWW@WWWW@#,##@#@@@@#@@##@@@@#+*+*
**####@#######*@::+::::...:::.,,.,,,,,,,,,,..,,.@@@@W@@W@@*.,,,,,,,,,,,,,,,,*#@W@@@#@WWWW@##WWWW@@@W@WWWWWWWWWWWWW@@@@@@@@WWWWWWW@WW@@@WWWWW#WWWW#@,#*#@@@@@@@#@####@@###*
**####@######@#*@+:+.::.::::+,,,,,,,,,,,,,,,,,,.,*@*##*:,,: , ,,,,,,,,,,,,+,+@@@@@#@@@@W@WWWWW@@@@@@@W@@WWWWWWWWWWWW@W@@##@@W@WW@W@@@@@@@WWW*WWWW@@,##@@@@@@@@@@##@###*##@
#*####@#@###*####@+:+.....:.:,,,,,,,,,,,,,,,.,.,,:++,, , ,:,,   ,,,,,,,,,,,,*#W#@@@W@@W@@WWW@@@WW#@W@WW@@WWWWWWWWWWW@@#@W@WWW@WWWWWW@@@W@@@W#@@***@.+@#@#@@@@@@@#####*****