+++****i+xnnnnnnnnnnnnnnnn+:;;;;;i*ii*iiiiiii;;;;ii:::::::::i;:;;;::::;;;:,,,.`
#++++*++nnnnnnnnnnnnnnnnnnni::;;;iiii*ii;ii;;;;;;;;i:::::::i;,,::::;:::;;;,,.``
##+++*#nxnnnnnnnnxxnnnnnnnnz::;;*iii**i;i;iii;;;;;;;;::::,;i,,,,:;;:,.,::;:,.``
#++++*zxnnnnnzznnnxnnnnnnnnni:;iiiiii*i;iiiiiii;;;;;;;:::,i;,,.,;::,...:::;,.``
++++**znznnnzznnnnnnnnnxnnnn+:;*iii;i*i;iiiiii;;;;;;;i:::;;;:,,:;::,...,::;:,.`
**ii**znnnnzzzznnnnnnnnnnnnn#:;*iiiii*ii;iiiii;iii;:;;;:,i;;;::::::,...::::;,..
**ii*+znzzzzzznnznznnnnnnnnnz:iiii***iii*iiii;iii**;;;i,,i;;:;::::::,,,::::;:.,
++++++znzzz#zz+***#nnnnnnnnnz;iiiii*;;;**iiiiiiii*iii;;:,i;:::::::::::::::::;,.
+++++##nzzz#z++#z+*znnznnnnnziiiiiii;;;;*iiii;i+*i;;i;;;;;:,.,::::::::::::::;,.
++++++znzz#z##*i*z*#nnznnnnnz*i;iiiii;iii;i;;;;**i;ii::i;;:...::::,.,:::::::::.
+++++#znzzzz#*iii++*znznnnnnz+iiiiiiiiiii+**i;i*i*ii;::ii;:,.,:::,...,:::::::;.
+++++#nnzzzz*iiii*#iznnznnnnz+;iiiii;;;;i*+iii;;i;:::::;i;;::::::.....,:::::::`
iii*++zzz#n#iiiiii#i#zzznnnnz+;ii;ii;;:**+ii;i;;;;;:::::i;;;:::::.....,:::::::`
**i**#nz##n*iiiiii#i+zzznnnnz+:iiiiii;:*ii**;i:;;;;:;;::i;;::::::....,::::::::.
#++++#nz#z#iiiiiii#i*zzznnnzz#:i;;;ii;;ii;*iii;;;;;;;;;;;;;:::::::,.,:::::::::.
#####+z##z**#iiiii#i*z#znnnzz#:i;iii+i;ii;;::;;;;;;;;:;;;;:::::::::::::::::,,:.
###++#z##zi#z*iiii#ii##zznnzzz:;;*ii*;;;;;::;;;;;;i;::;;:;::::::::::::,::::,,:.
++##+zn##ziz++iiii#ii##zznnnzzi:i*;ii;ii;;;;;;;;;i;;;:;;,;::,::::::::,..,:,.``.
ii**+*n###**;+iii*+ii###znnnzz+,**;ii;;i;;;;;;;;:;ii;;;;.;::..:::::::,.`.:,````
iiii*+n###*;:+iii+*ii###znnnzz#;;*;i*;;i;;;;;;;;;:;i;:::.;:,..,:::::::..,,.`` `
iiiii+n###i::*iii#*i*###znnnzzz*:*iiii;;;;;;;;;;;::;:,:,.:::..,::::::::,,,,````
iiiii#n##zi;;*ii*zii*##zzznnzznzi:;;;**i;;;;;;;;;::;;::..,i:::::::::,,:,,,,,```
+**ii#n##zi+*iiiz#ii+##zzznnnznz#:;;;;;;;;;;;;;;;::::;,...;;:::::::,``.,,,,:.`.
#+++i#n##ni+iii#n*ii###zzznnnzzzz+,i;;;;;;;;;;:;;;::;:....,;:::::::.```,,,:....
+##++#nz#x+iii#n#ii*z##zzznnnnzzzz*,ii;;;;;i;;;::;;;:......,;::::::,``.,,:,....
+++++#nz#xx+#nxn*iizz###zzznnnnnzzz*:;ii;;;;i;;:i;:,....,...,;:,:::,..,,:,.....
++++++nz#xxxxxx+ii#z####zzznnnnzzzzz#i;*ii;;ii;::;::::,,,,,,.,,,,,,,,,,:,......
##+++#zz#nzxxxz**zzzzzz#zzznnnnzzzzzz##i*+;;iiii::;***i:,,,,..,;:::::::........
##+++znz#n+nxz**zzzzzzz#zzzznnnnzzzzz####*;;**;iii**+***;:,.,,:::,..........`..
##+++n+zzzz+++znnzzzz###zzzzzzznzzzzz#####;ii+**+**++*i**i:,::::,,,.........``.
##++zz#nnznnxnnnzzzz####zzzzzzzzzzzzzz###z+***+++i;:;;;i**i;::::,,,....,,..```.
##+#n#nnnnznnnnzzzz####zzzzzzzzzzzzzz#####+++++**,:i;*i;***::;::,,:...:,,,.````
#++zn#nnnnnnnnzzzz######zzzzzzzzzzz######+++++++;::ii::;*+*::;;:,,:..:,,,,..```
zznxznnnxnnnnnzz########zzzzzzzzz#########+++**+:;;i;:,;+*i::;:::,...:,,,,,.```
xxnnnnnnxnnnnz###########zzzzzzzz##########++***i::i:::;+*;::::;,....,,,,,,,.``
znnnnnxnnnznnz#############zzzz#z##########++*****;;:i;i+*i::,:,,....,,,,,,,.``
nxnnnxxnnnzzzz######++#####zzzzzzz#########+++***++;i+++***i:;;,,....,,,,,,,```
xnnnxxnnnnzzz#######+++#####zzzzzzz########+++******++*****iii;:,,..,,,,,,,..``
nxxxxnnznzzz########+++#######zzzzz########++++**************ii;:,,.,,,,.,,.```
nxxxnnnzzzz#######+#+++########zzz#########++++++***********iiii;.:...`````````
nxxxnnnnzz########+#+++########zz##########+++++++**********iiii;.,..``````````
nxxxnnnnzz########++#++#################++++++++++**********i*ii;:.,..`````````
nxxnnnnzz#########+++++#################++++++++++************ii;::.,.`````````
znxnnnzzz#########+++++################+++++++++++************ii;;;,.,.````````
znxnnnnzz#########+++++##########+#####++++++++++++**********iii;;:;,.,.```````
zznxnnzzz###########+++##############++++++++***+++**********iii:;:,;,.,.``````
##znnnzzz##########++++#########+####++++++++***++************ii,;,,,;..,.`````
###zxnnzz########++++++##++#####+#+#++++++********************ii,;,,,,:...`````
z#+znxnzz##########++++++++++####++++++++++****++************iii,;,,,,::`,.````
n#+#zxnzz########+++###++########+++++++++++++++++++*********iii,;,,,,,:,.,````
znz#znnnzz##########++++++##++##+++++++++++++++++++***********i;,;,,,,,,:.,.```
#znzz#znnnzz##########+++++++++++++++++++++**+++++++**********i:,;,,,,,,,:,,```
#+#nzz+i+#nnznzzzzz########++++******++++++*****+++***********i::;,,,,,,,:.:```
##*#z**+++*+zzz+++#+*++++++######++*ii***********+************i::;,,,,,,,:.:.``
##+izii*++zz####*+++*+******++++++++++**i***i****************i;:,;,,,,,,,:.,.``
###izi*+**z#++##***++#************ii**++++*iiiiiii**********i;:;,;,,,,,,,:.,,``
###*#**+*+#++++z***+++**iiii**iii***iiii***++***iiii********i;::,;,,,,,,,:..,``
###*+*++*##++++z***+++**i**i***ii*iiiiiiiiiii*iiii**i**i****;;;:,;,,,,,,,:..,``
###++++**z#++++#***+++**i**i*i*iiiiiiiiii;i;ii*i;;;;;;;ii*i;;:;:,;,,,,,,,:..,``
###*+#***z+++++#***+++**i**i***ii**iiii;i;i;ii**ii;;i;;;;;iiii::,;,,,,,,,:..,``
##+iz+*+*z+++++#***++#*iiii***ii**iiii;iiii;iiiii;i+***;;;ii;:::,;,,,,:,,:..,``
##+#*****z++++#+***+*++*****iiii**iiiiiiiiiii*i;;i**iii*;;i;i:::,;,,,:::::..,` 
#+#+ii+*+z++++#*i**+*;;++**++++++++++*****+**ii;;***iii*i;iii:::,;:,::::::.,,` 
#z*#+;**+n#++#*ii**+*;+i;;;;;;;;;:::;;;;;;iii;i;;*i*iii*i;ii;;:;:;:,::::::.,.` 
##+#+;i*+#++***ii*i+**;i********iiiii;;;i**;:ii;**iiiii*iiii,,,,:i::;:::::.,.` 
#*##+;i**++*i*ii**i+*;;+**#######+i*##++++++,*i;**iiiii+;ii;;i;,:;::;::::,.,`` 
z*zz#;*******ii**ii**;+i+*+######i+*++####++:*i;**iiii**;ii;iii,:;::;::::,.,`` 
z*zzzii++********i**i*+*+++#####+**#i*#####+;*ii*+*iii*i;ii;*ii,;;::;;::,:.,`` 
z*zzz#;**++**iiiii**i#**i*#*+###i*+########+i*iii++*i*+;iiii**i:;;:::;;:,:.,`` 
z+zzzz+i***+#+***++;+#*+##++*##+i+#*+#*i*+*i+**iii##++*iiii***i:;;::::,,:,,.`` 
z#zzzzz#*i+*ii***+ii#+i*+#i*#z#*+z+*#+*#*i##+**i*ii***iiii****i,i;::::::;,:.```
zzzzzzzzz#*i+++++iizz*i++i+zz#**z+i##*##**#i++i*iiiiiiiiii++**i,*;:::::i,,:.```
zzzzzzzzzzz#+*iii+zzz#*+#*##+**##*+#*#+#i*#*+#+iiiii;;;;;*++**i,ii::;;;,,;,.```
##zzzzzzzzzzzzzzzzzzz+*zz+ii+z**++**##*i+i**####+i;;;;i*+++++*;:::::,,,,;:...``
##+zzzzzzzzzzzzzzzzz+*#zzzzzzzz#zz#zzz###z#z#########+#+++++*i:;:,,,:;;;,.....,
#zi+zzzzzzzzzzzzzzz##*zzzzzzzzzzzzzzzzz##############+++++++i::;,;i*;:,......,:
#z*i+zzzzzzzzzznzzz*#+zzzzzzzzzzzzzzzzzzzzzzz#+*i****+**iii::;;:;;,,,,.......:;
##z*i*zzzzzzzzzzzzz+*zzzzzzzzzzzzzz#########+**i**iiiii*****i;,:i,,,........,;i
###n+ii+##zzzzzzzzzzzzzzzz########+++++**iiii*********+*****+###z#++++++++##*ii
##+#zz#######++++++++***++###+########zzzznnnnnxxxxxxxxnnnnnnnzzzzzz#####+++***
###############zzzznnnnxxxxxMMMMMMMMMMxxxxxxxnnxnnnnnnnnnnnzzzzzzz#####++#++*++
zzznnnxxxxMMMMMMMMMMMMMMMMMMMMxxxxxxxxnxxxxxxnnnnnnnnnnnzzzzzzzzzzz#####+++++++
MMMWWWWWWWWMMMMMMMMMMxxxxxxxxxxxxxxxxMMxxxxxxxnnnnnnnnnnzzzzzzzzzzzz#####++++++
xxxMWWWWMMMMMMMMMMxxxxxxxxxxxxxxxxxxMMxxnzzzzznnnnnnnnnnzzzzzzzzzzzz######++#++
xxxxWWMMMMMMMMMMxxxxxxxxxxxxxxxxxxxxMMxxnz##++*+znnnnznzzzzzzzzzzzzzz#########+
nxxxWMMMMMMMMxxxxxxxxxxxxxxxxxxxxxxMxxxxxzz#+*ii*znnzzzzzzzzzzzzzzzzzzz#zz#####
nxxxWMMMMMMMxxxxxxxxxxxxxxxxxxxxxxMMxxxxxnz##+*i;*nnnzznzzzzzzzzzzzzzzzzzzz####
nnxxMMMMMxxxxxxxxxxxxxxxxxxxxxxxxxMMMMxxxxnz##+*i;#nnnnnnzznzzzzzzzzzzzzzzz###z
nxxxMMMMxMxxxxxxxxxxxxxxxxxxxxxxxMMMMMxxxxnnz#+*i;*znnnnnzznnzzzzzzzzzzzzzz####
nxxxMMMxxxxxxxxxxxxxxxxMxxxxMMMMMMMMMMxxxnnzz##++i*znnnnnzznnnzzzzzzzzzz##zzznn
nnxxxMMxMMxxxxxxxxxxxMMMMMMMMMMMMMWMMxxxxnzzzz###**#zznnnzzznnzzzz#zzzzznnnnnnx
xxxxxMMxMMxxxxxxxxxxMMMMMxMMMMMMMMMMxxxxxnzzz####+++#zzzznzz##zzz#zzznnnnxxxxxx
xnxxxMMMMMMMxxxxxxxMMMMMMMMMMMMWWWMMxxxnxnnzz#++#z#zzz#+#nznnnnnnxnnnnnxxxxxxxx
xnxxxxMMMMMMMMxxxMxMMMMMMMMMMMMWWWWMxxxnnnnzz####znnzzzz#nnzxnxnnnxxxxnxxxxxxxx
xnnxxxMMMMMMMMMMMMMMMMMMMMMMMMMWWWWWxnnnnnnnzz###znnzznzzxnnxxxxxxxMMMMxxMMMMxx
nnnnxxMMMMMMMMMMMMMMMMMMMMMMMMWWWMMMMxnxnnnnzzzznxxnzzn#nxxnxxMMMMxxMMMMMMMMMMM
nnnnxxMMMMMMMMMMMMMMMMMMMMMMMMMxxxxxxxxnnnnnzzzznxnzzzznnxMnxMMMMMMMMMMMMMMMMMM
nnnnxxMnxMMMMMMMMMMMMMMMMMMMMxxnnnnnnnnnnnnnnnzznMxxxxnnnxMxxMMMMMMMMMMMMMMMMMM
nnnnnxMnnxMMMMMMMMMMMMMMMMMMxxxnnxxnnnnnnnnnnnnnnMMxxxnnxMxxMMMMMMMMMMMMMMMMWWW
nnnnnxMxnnMMMMMMMMMMMMMMMMMMMxxxnnnnznz#znnnnnnxxMMxxxnnxMxxxMMMMMMWWWWWWWWWWWW
nnnnnxMMnnxMMMMMMMMMMMMMMWMMMMxxxnxn*#++#zzznnxxxxMMxxnnxMxM#MMMMMWWWWMMMMMMMMM
nnnnnxxMnnxxMMMMMMMMMMMMWMMMMMxxxxMx##zz#+z##znnnxMMxxxxxMnx#xMMMMMMMMMMMMMMMxx
nnnnnnxMxxxxxMMMMMMMMMMMMMMMMMxxxMMxxxz+++*+++zznxMMMxxxxMnn+nxxxxMMMMMMMMMMMMx
nnnnnnxMMxxxnnMMMMxMxxxxxMMMMMxxMMMxxxxxn#++#++#z#xMMxxxxxnz#nxxxxxMMMMMMMMMMMM
nnnnnnxMMxxxnnnxxxxxxxxxxxxxMMMxMMMxxxxnnnz##z+*+zxMMMxxnnzz#nxxxxxMMMMMMMMMMMM
nnnnnnxMMxnxxnnnnnxnxxxxxxxnxMMMMxxxxxnzzzzzznz++*#xxMxxnzzz#zxxxxMMMMMMMMMMMMM
nnnnnnxxWxnxxnnnznnnxxxxnnnxnxMMMxxxxnzzzzzzznxn#**#xxxxnnzz+zxMMMMMMMMMMMMMMMM
nnnnnnxxWMxnnnnnnnznxxxxnznnnxMxxxxxxx++#+++#znxz#**+xxxnnz###MMMMMMWWMMMMWWWMM
nnnnnnnxMMxnnnnnnnnnxxxxnzznnxMxxnnnnnz##++**++*#zz+*+znnnzz##MMMMMWWWWWWWWWWWW
nnnnnnnxMMxnnnnnznxxxxxxn#++#xMxxxnnzznnzz#++++*ii+##+*+nnz##+xMMMWWWWWWWWWWWWW
xnnnnnnxMMxnnnnnzzxxxxxx#z+*#xMxxnnnzzzzznzzz#+**iii****+#z#z+nMMWWWWWWWWWWWWWW
xnnnnnnxxMxnnnnznznxMMxzz#*i+xxnnnnzzzzzzznzznnz#+********+#z#+xMWWWWWWWWWWWWMM
xnnnnnnnxMxxnnznnznnxMx#z+**+xxnnnzzzn#+#+++++++#z#+++******+#+nMWWWWWWWW@WWWWM
nnnnnnnnxMxxnznznzzzznxzzz*+*nnnnzzzzn#++++***+*iii**********++zxMWMMxWWWWWWWWW
nnnnnnnnnxxxnnzzznzzzznx#z+++zzznzz#+++*+++******iii*******+++++##znxnznnznnnnx
xnnnnnnnnxxxnnzzzzzz#zznn#z+zznzzz#++**ii;;i***+##++*+*******++++#znxxnnnnnnnnx
nnnnnnnnnxxnznznnnnzzz#zzzz#xxxz#+++****;;;i;i*+nxz##+***+++++++#zznnxnxnnxxnxx
nnnnnnnnnxxxznnnnnnzzz###znxxxn##++******iii****+***+*****+++++##znnnxxxxnxxxxx
nnnnnnnnnnxnnnnnnnnzzzzz##znxxn##++***ii+***iii*iiii******++++##zzxnnxxxMxxMxMM
nnnnnnnnnnxxxxnnnnzzz#zzz#znxxnz+**++*i*+*iiiiiii******+++++++#zzzxxxxxxxMxMxMM
xnnnnnnnnnxxxxnnnnzzzzzzzzzznxz*;::;;iii****ii**i+#z++++**++++#zzznxxxxMxMMMMMM
xnnnnnnnnnxxxxxnnnnzzzzzzzznnn+i;:,:::;;;;;;;i;i*i**iiiii*+++##zzznxxxxMMxMMMMM
xnnnnnnnnnxMxxxnnnnnzznnnnnnn#+i;:,,:;::i::::::*+ii**ii;:;**+####znnxMxxMxxxMxM
xnnnnnnnnnxMxxxnnnnnnnnnnnnnn#+i;:,,::i:::::,,:**i***ii;;;::;#z##xWnnxMxxxxxxxM
xnnnnnnnnnxMxxxxxnnnnnnnnnnnz#+i:,,,,;:i:,::,,:+i*****ii;:::;+###zxMnnxMxxxxMxx
xnnnnnnnnnxMMxxxxnnnnnnnnnxxn#*i;,,,,,:;i:,,,,:+i*****i;:,,::+##zzxMxnnxxxxxxxn
xxnnnnnnnnxMxxxxnnnnnnnnnnxxn#**;:,,,,,:;i:,,,:+*+****;::,,,;##+zzxWWWMMxxxxxxn
xxnnnnnnnnnMMxxxnnnnnnnnnnxxx#;**;:,,,,,,ii;,,;+++***;;:,,,,:+++zzxW@@@@@@W@@@@
xxnnnnnnnnnMMxxxnnnnnnnnnxxxxzii*i:,,;:,,,;;;:;+++**;:;;,,.,,#zzznxxWW@@@@@@@@@
xxnnnnnnnnnxMxxxxxnnnnnnxxxxxz*:**;.:*;::,,:;:;+#+***;,:,,.,,+#z##znnnx@@@@@@@@
xxnnnnnnnnnxMxxxxxxnnnnnxxxxxz;,i*i,,i:.;;,,:;i+#++z+i;,,,,,,*++++#znnnM@@@##@@
xxnnnnnnnnnxMMxxxxxnnnnnxxxxxz;.,i*i::,..,,,:;*#z#zz+**:,,,,.;i**##zz#znW@@@@#@
xxnnnnnnnnnxMMxxxxnnnnnnnxxxxz:,.,;*i,:,,,,:i*+znxx#+**;,,...,i*+znnz#+#zW@@@@#
xxnnnnnnnnnnMMxxxxxnxxnxnnxxxz*;:::::::,,..:*+#nMMx#+i;:,,,..,+#zzz#####zzW@@@@
xnnnnnnnnznnxMMxxxnnxxxxnnxxxz#+i::,,,,.,..,znxMMMx#+;::,,....+###+++++##znW@@@
xnnnnnzznzznxMMxxxnnxxnxxxxxxn###i,,,,..,...zxxMMMx#*,,:,,,...*+++*++++++##nW@@
nnnnnnzznzznxMMxxxnnxxnxxxxxxxzzz*,,,,..:,.;*+zxxxnz*;:,,,,...i**+***++++++znW@
nnnnnnzznnzzxMMxxxnxxxxxxxxxxxxnnii;,...;****i;*zzzz+*i:,,,.,,;**+++iii*+++#zzW
nnnnnnzznnzznMMxxxxxxxxxxxxxxxMMn#+;.,.,#z#+*::ii*+z++i::;i*i;;;i+++***i*++###x
nnnnnnzznnzznxMxxxxxxxxxxxxxxxMMn##;,.:#nz##*;;:,i;#++*i+##+*ii;:*+*******+++#n
nnnnnnnnnnzznxMxnxnxxxxxxxxxxxxMx##*,;znnzzz#+i;ii;++##z###++*i;;;+**iiii*+**+n
xnnnnnzzznzzzxMxxnnxxxxxxxxxxxxxxz#*+xxnnnzznz*i*i;+znz##z###+i;;:**iii*i*++**z
xnnnnnnzznzzzxMxxnxxxxxxxnnnnnxxxz+#znnxnznnzn#*i;#nzz##zz#zz+i;;:iiiiiiii***+#
xnnnnnnzznzzznMMxMMMxxxxxxxzzzznn#######znznz#z+;*xxzz#nzznz#*ii::i;;iiiiii**+#
xnnnnnnzznzzznMMMMMMMxxxxxxn#zzz######+++#nz#+++*#nxnnnn#zzzz*i;;;;;;;;iiii**+#
xnnnnnnnznnzznxMMMMMMMxxxxxn+znz######++**#++***++#nxnnzzz###i;;;;;;;iiiii***+#
xnnnnnnzznnzzzxMMMMMxxxxxxxnzzzzzzz#+###++***i*i**+#zz#+zz#+*i;;;;;i;;iiii***#n
xnnnnnnzznnzzzxMMMMxxxxxxxxnzzznnnnnnz#z#+++***i**iii*++++*ii;;;;;;i;;iiii**zxx
xnnnnnnnzznzzzxMMMMMxxnnnxxxzzznzzzznnn##++*+++*i*iii****ii;;;;;;i;;iiiiii+zxxx
xnnnnnnnzznzzznMMMMMxnnnxxxzz#nnnnzzzz#zzz#+*****i+*iiiiii;;;;;;;;;iiiii*#nxnxx