:+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++******
:++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*******
:++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*****
:++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++***
:+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++**
:++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*
:++++++++++++++++++++++++++++++++++++++++++++++::+++++**#**++++++++++++++++++++++++++++++++++++++++*
:+++++++++++++++++++++++++++++++++++++++++++:+*#***##########**++++++++++++++++++++++++++++++++++++*
::+++++++++++++++++++++++++++++++++++++++++++###################+++++++++++++++++++++++++++++++++++*
::+++++++++++++++++++++++++++++++++++++++++*#####################*++++++++++++++++++++++++++++++++++
::++++++++++++++++++++++++++++++++++++++*###**##########**###*####**++++++++++++++++++++++++++++++++
::++++++++++++++++++++++++++++++++++++*##***##@@##@#######*########**+++++++++++++++++++++++++++++++
::++++++++++++++++++++++++++++++:++++****###@@@@####**##*###*######**+++++++++++++++++++++++++++++++
::++++++++++++++++++++++++++++++:+++***###@@@@########**#**#**###*##**+:++++++++++++++++++++++++++++
::+++++++++++++++++++++++++++:+++:+**##@@@@@@#########****#*##*#@#*#**:+:+:+++++++++++++++++++++++++
::++++++++++++++++++++++++++++++++**#@@@@@@@@#####***##*****##**#@#*#*++::++++++++++++++++++++++++++
::++++++++++++++++++++++++++++:++**@##@@@@@@#######***###***###*####***::.:++:++++++++++++++++++++++
::++++++++++++++++++::::::++++++**@###@@@@@#####**###*####***##*####**++::.:::++:::+++++++++++++++++
::++++++++++++++++++::::::++:+++*@*###@@@@#####**#########****##*#*#@+*:::..::+++:++++++++++++++++++
::++++++++++++++++++:::::::+++**@*###@@@@#*##**#*#####@##@#**+###*#*##+*+...:+:+::::++++++++++++++++
::++++++++++++++:::::::::::::*+#*#*##@@@@*+****######@@@@@@****##****@+++:...:::::::::::++++++++++++
::+++++++++++++:::::::::::::++****##@@@##****#####@##@@@@@@#+***##***#*++:::..+:::::::::++++++++++++
::+++*:+++++::::::::::::+:+:+*#***####@#*++**#####@#@@@@@@@#****##****#+++:...:::::::::::::+++++++++
::+++++:++++:::::::::::::::++#*+**##@@#++++++***####@@@@@@@@#+***##***#*:+:.:..+:::::::::::+++++++++
::+++++++++:::::::::::::::++*#****#@@*++::::++***##@@@#@@@@@@+****#*+**#+++....::::::::::::::+++++++
::+++++:++::::::::::::::+:++#*+**#@@*+:::::::+++***#@@@@@@@@@#****##+++#+:+:....::::::::::::::++++++
::++++++::::::::::::::::++++***##@@*:::..::::++++**##@@@@@@@@#+****#*++*#+++....:::::::::::::::::+++
::++++++:::::::::::::::::++**+#@@@#+::....:::++++***###@@@@@@@+*#**#*+++*:++:...:::::::::::::::::+++
::+++++::::::::::::::::::++#*+@@@#+:::...:::::++++***###@@@@W@******:::::::::::..::::::::::::::::+++
:::+++::::::::::::::::::+++***@@@+::::....::::+++++*#####@@@@@#+******++**+*+:.:.::::::::::::::::+:+
:::+::::::::::::::::::::++**+#@@#+::::::.:::::+++++***###@@@@@@++***##+:+#++++.:.:::::::::::::::::++
:::+::::::::::::::::::::++**+@@@*:::::::.::::::++++*****###@@@@*+*****+++#++++.:.:::::::::::::::::++
:::+::::::::::::::::::::++*+*@@@+:::::::.::::::++++++****#@@@@@*+******+***+++:::.:::::::::::::::::+
:::+:::::::::::::::::::++**+*@@@+::::..:.:::::::++++*****##@@@@*+*****++++#+++::+.:::::::::::::::::+
.::+:::::::::::::::::::+*+*+*@@@+:::.....:::::::++++*****###@@@@++****+*++#++++.:.:::::::::::::::::+
.::+:::::::::::::::::::+*+*+*@@#::::......:..:+++++++*****###@@@+++****+++**+++::::::::::::::::::::+
.::+:::::::::::::::::::+*++**@@#::........:+#*++++*********###@@*++****+:++#++*::+.::::::::::::::::+
.::+:::::::::::::::::::***+**@@#::.....:.+#*..::++++*******####@*+*+*+*++++#++*+:+:::::::::::::::::+
.:::::::::::::::::::::+***++*@@#::.::..:+#*+::++*+***********##@#++++***+++#++++:+:::::::::::::::::+
.:::::::::::::::::::::+*+*+*#@W@+:::..::#*+*+*####*#***++****##@@*++****++:**+*+:+:::::::::::::::::+
.:::::::::::::::::::::*#**+*#@@@##::::::++++#@@W@W@@#*+++***###@@*++**+#+++**+++:++::::::::::::::::+
.:::::::::::::::::::::****+*#@W@**+:::::++**+,+@@#@@*+:++****##@@#++++*#++++***+:+:::::::::::::::::+
.::+::::::::::::::::::******#@WW@@@*:..++*:*..:@##@*+::++***###@@#*++*+*#++:*+*++:+::::::::::::::::+
.::+::::::::::::::::::******#@WW@+##*.:+**:+:::+##*+::+++***###@@@*++**+#+++*+**+:+::::::::::::::::+
.::+::::::::::::::::::****+**@WWW+@W@..+**::++**+++:::++****####@@#*++*+**+++*+*+:+::::::::::::::::+
.::::::::::::::::::::+****+*#@WWW*+*+.:+*+++::+++::::+++***######@@*++*++#+++*+*+::+:::::::::::::::+
.::::::::::::::::::::+******#@@WW@*+:.:+*+++:::::::::+++***######@##*+++:*+++#+*+::+:::::::::::::::+
.::::::::::::::::::::+******#@@WW@*+:::+++++:::::::::+++**##########*++++**++*+*++:+:::::::::::::::+
.::::::::::::::::::::+******##@W@@*+::++++++:::::::::++***########@##++++**+:*+**+:+:::::::::::::::+
.::::::::::::::::::::+******##@WW@#+::++*+++:.::::::+++***###########*+*++*++****+:++::::::::::::::+
.::::::::::::::::::::+****+**#@W@@#+::++***+:...::::+++***#######@##@***+:**+****+:++::::::::::::::+
.::::::::::::::::::::+#****+*#@WW@*+.:+++***::.:::::+++***##########@#+*++#*+**+**:++::::::::::::::+
.:::::::::::::::::::::#***++*#@@W@*+.:+++**#+::::::+++******########@#*+++***+*+**+:+::::::::::::::+
.:::::::::::::::::::::#***++*##@W@#+::+****#:.:::::+++******########@#**++***+*+**+:++:::::::::::::+
.:::::::::::::::::::::#******##@@W#+++*#***:::::::++++******#######@@#*+*+***+*+#*+:+::::::::::::::+
.:::::::::::::::::::::#**#***##@@W@*+::+++::::::::+++++*****#######@@#*+*+***+*+**+:+:::::::::::::::
.:::::::::::::::::::::***#+*+##@WW@*+:::::::::::::++++++****#######@##***+***+*+#*+:+:::::::::::::::
.:::::::::::::::::::::*#*#+*+##@@WW@*:::::::::::::+++++++****#####@@#****+********++++::::::::::::::
.:::::::::::::::::::::+#*#+*+#*@@WW@#+::.::::++++:+++++++****#####@#****++*********+:+::::::::::::::
.::::::::::::::::::::::**#+*+**#@WWW@++*++***###+::++++++****####@@*+**+*+*********+:+::::::::::::::
.::::::::::::::::::::::+*#**+*##@@WW@*+*++*+++++:::++++++****####@#*#**+++#*+*******++::::::::::::::
.:::::::::::::::::::::::***+*+**@@WW@#++::::+++++::++++++***####@#**#*++*+**+***+#**+++:::::::::::::
.:::::::::::::::::::::::+**+*+**#@@WW@#+++++**+++::+++++****###@#**#**+*++#*+***+#**++++::::::::::::
.::::::::::::::::::::::::+*+*+**#@@@@@@*+++*++:+++::++++***###@#**#**+++++**+#**+#**++++::::::::::::
.:::::::::::::::::::::::::++*+**##@@@@@#*:::::::++:++++****##@***##**++++***+#**+#+**+++::::::::::::
.::::::::::::::::::::::::::+++***#@@@@@@#+::.:::::+++*****####@@#***++*++#***#**+#*+*+++::::::::::::
.:::::::::::::::::::::::::::+*+**##@@@@@@#:::::::+++****#####******++**+*#*++#**+#*+**++::::::::::::
.::::::::::::::::::::::::::::+****###@#@@@*:::+++++*#***###*******++***+*##++#***#**+*+++:::::::::::
.:::::::::::::::::::::::::::::****###@#@@@@+++++**###***+********++***+***#+*#*****#+*++::::::::::::
.:::::::::::::::::::::::::::::++***####*+++++++++++++++*+********++***+***#+*#******++++::::::::::::
.:::::::::::::::::::::::::::::++**##*+::++++++++++++++++++*******+*****#*##+*#**+##**+++::::::::::::
.::::::::::::::::::::::::::::::++**::::::::++++++++++++++++************###***#***##**+++::::::::::::
.::::::::::::::::::::::::::::::++:::::::::::++++++++++++++++++*********###***#****#*+*++::::::::::::
.::::::::::::::::::::::::::::::+:::::::::::::+++++++++++++++++**********@**#*****##*+*+++:::::::::::
.:::::::::::::::::::::::::::::::::::..:::::::::++++++++++++++***********#***#*#**##*+++++:::::::::::
.::::::::::::::::::::::::::::::.:......::::::::+++++++++++++++++*********#**#****@**+++++:::::::::::
.::::::::::::::::::::::::::::::........:::::::::++++++++++++++++++********#####**##**+++++::::::::::
.:::::::::::::::::::::::::::::.........:::::::::++++++++++++++++++++****+*#####*###**+:+++::::::::::
.:::::::::::::::::::::::::::::.........:::::::::+:::++++++++++++++++++++++*#*##*+@##++++:+::::::::::
.:::::::::::::::::::::::::::::.........:::::::::::::+++++++++++++++++++++++#*##**##**+++:+::::::::::
.::::::::::::::::::::::::::::.........:::::::::::::++++++++++++++++++++++++*#*#***#**+++++::::::::::
.:::::::::::::::::::::::::::..........:::::::::::::++++++++++++++++++++++++*#**#*###+***+:::::::::::
.:::::::::::::::::::::::::::.........:::::::::::::++++++++++++++++++++++++++**+#**##++**++::::::::::
.:::::::::::::::::::::::::::.........::::::::::::::+++++++++++++++++++++++++**+**##**++*++::::::::::
.:::::::::::::::::::::::::::........:::::::::::::::++++++++++++++++++++++++++**:@*@#*+++++::::::::::
.:::::::::::::::::::::::::::........::::::::::::::::+++++++++++++++++++++++++**++#*@**+++++:::::::::
.::::::::::::::::::::::::::........:::::::::::::::::++++++++++++++++++++++++++*+:#*#**+++++:::::::::
.::::::::::::::::::::::::::.........::::::::::::::::+++++++++++++++++++++++++++++:#****++++:::::::::
.::::::::::::::::::::::::::.........:::::::::::::::++++++++++++++++++++++++++++**++*#+*:++*+::::::::
.:::::::::::::::::::::::::..........:::::::::::::::+++++++++++++++++++++++++++++#@+#*+++++**::::::::
.::::::::::::::::::::::::::........:::::::::::::+++++++++++++++++++++++++++++++*#@#*#++++++*+:::::::
.:::::::::::::::::::::::::.........::::::::::::+++++++++++++++++++++++++++++++++*@@##*++*:**+:::::::
.:::::::::::::::::::::::::.........:::::::::::++++++++++++++++++++++++++++++++++*@@#@****++*+:::::::
.:::::::::::::::::::::::::........::::::::::::++++++++++++++++++++++++++++++++++*@W@@#***++*+:::::::
..::::::::::::::::::::,,:..........:::::::::::