`.###`  ,.**+znz+;.+,,#++#*+#,+nxnznx*inxMMnzxMMxz:zxxWMnM@@@@@MMWWWWWWWWWWW@@@@@@@@@@@@@@@@@@@@@WWW@@@@@@##@@@@@#####WxW@############################
`####```.:*##+zn#;,::.i+++;;z:*nxx#zn#+xxMMMMWWWx*`+nMWMnnW@@@MxW@WWWWWWWW@@@@@@@@@@@@@@@@@@@@@WWW@@@@@@#@#####@######WxW@############################
```## `` i#z+*##i,:..`,*+i:;+:;nxz+:nxMMMMMMWWWMx#:+nMWWxnxWWWxMMWWWWW@@@@@@@@@@@@@@@@@@@@@WW@@@@@@@@@@@##############WnM@############################
.```#``  ,#z+++,;:;..`.,,,;+#;;#zz+,nMWWWxMWWWWWxxnnnzMWxxMMMWWWWWWW@@@@@@@@@@@@@@@@@@@@@@@@WWW@@@@@@@################WnM@###################@########
,#`##`.` ,#z#++,:,,```.,..;z+;,;nnz#n*xWWWMMMMWMxxxnxMMWxxMMWW@@@@WW@@@@@@@@@@@@@@@@@@@@@@@@@WWMW@@@@@@###############WnM@####@@@##@#########@########
,```#`.  `*#+*+,+;,```,,``.#+.,innxxMixWWWWMMMWxxnnnMnMWWWWWWW@@@@@@@@@@@@@@@@@@@@@@@@@@@@@WWWMMMMW@@@@@@#############WzM@@@@WWWW@#@@@#######@########
.``` .` #.i#:*z*#+..``,,.`inz,*#nnxxxxMMWMMMWWWMxxxxM*nWWWMMWWW@@@@@@@@@@@@@@@@@@@@@@@@@@@@@WWWMMMMW@@@@@@############WzW@@WWWWWW@@@@@#######@@@@#####
`````,``#:##.;zxnz:,i*i*+i*xxnnnxxxxMMMMxMMWW@@@WMMWW+nWMxMWWW@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@WWWMMMxMWW@@@@@######@@@#W#W@WWWWWWW@@@@@#######@@@@@#@@@
*+****.:*#nz*,nxnnn#nnznxxxMMxxxxxxMMMWWMWWMW@@@WWWWW#nMxMWW@@@@@@@@@@@@@@@@@@@@@@@@W@@W@@W@@WWWWWWMxMWWW@@@@@@@@@@@@#W#W@WWWWWWW@@@@@#######@@@@@#@@@
xxxxxxnxxxxxx#xMMMMxxxxxxxMMMxxxxxxMMWWW@@MW@@WWWWWWW#nxxMWW@@@@@@@@@@@@@@@@@@@@@WW@@WWWWWWWWWMMMWWWWMWW@W@@@@@@@@@@@#W#W@WWWWWWW@@@@@@######@@@@@#@@@
MMMxxxxxxxxxxMMMMMMxxxxxxxMMMxxxxxxMMW@@@@MxMMMMMWW@@nnMWWW@@@@@@@@@@@@@@W@@@@@@@@WWWWWWWWWWMMxxnMMWWMMWWWWWW@@@@@@@@#W#W@WWWWMMM@WWW@#######@@####@@@
xxxxxxxxxxxxMMMMMMMxnzz##+xMMxnnxxnzxW@@@@WxxxxxMxWWMxxWWW@@@@@@@@@@@@@@@WWW@WWWWWWWMMMMMMMMxxnnMMMxWWWMWWW@@W@@@@@@@#W#WWWWWMMMM@WWMW#######@W@###@@@
,:::::::;*+zxMxxnnx*:,,;i:ii*+**+#znxW@@@@WxxxMMMMWMxMWWW@@@@@@@@@@@@@@WWWWWWWWWWWWWMxxxxxxxnnnnxMMMWW@MWW@W@@@W@#####W#WWWWWMMMM@WWxW#######@@@@@#@@@
.....`...,,:*z#Mxi;,,;,,,.,:i+zznnnnxW@@@@WznxMMMxMxxMW@@@@@@@@@@@@@@@@WWWWMMWMWMMMMxxxzzznnnznnxMMMMWW@MWWW@@@@@@@@##@#WWWWWMMMMW@WW@#######@@@@@@@@@
.......:,,,i+++nM*,,,,:;i*+#zzznnnxxxW@@@@Wz##nMMxxMWW@@@@@@@@@@@@@@@@@WWWWMMxxMxxxnnznnzzznxxxMWWMMWWWWWMWW@@@@@WW@@#@#WWWMWMMMMW@WW@#######@@@@@W@@@
,,;:,,,,.,,####nxx**++++###zznnnnnxxMWWWW@@z++#zzxMWWW@@@@@@@@@@@@@@@WWWWMMMxxxxnnnnnzznxxMMMMMWWWWWWWWWWMMW@@@@@W@@@#@#WWWMMMMMMW@@W@#######@@@@WWW@@
++*i*;:;ii#znnzMMn+*++#zz+i+nxxxxxMMWWWMMMWx+++#zxMWW@@@@@@@@@@@@@@@@WMxxMxxxxnnxnzznnxxMMWWWWW@@@WWMMWWWWMWWW@W@WW@@#@+WWWMMMMMMW@@@@#######@@@WWWWW@
nnnzzzzzzznxxxnzxMnnnnnnnnxxMMnxxMMMWWWMMMMMn##znMWW@@@@@@@@@@@@@@@@WMxnnnz##nz#zznnnxMMMMMWWWW@@@@@@WW@WWWMMW@W@@@@@@WzMMWMMMMMMWWWW@#######@@WMWWMW@
xxxxxxxxxxxxMMnxxxxx+zxxxxMMMMM#MMMMWWWMMMMMMMxxxMW@@@@@@@@@@@@@@@@@WMnzzz#**++#z#####zznxxMWW@@@@@@@@WW@WWWMWWWW@@@@@WWMMWMMMMMMWnnxn#######@WMMWWMW@
nnnzzzzzzznxMxnnxxn+z*nznn*;zxMzMWMMWWWMMMMWWMxxxWW@@@@@@@@@@@@WWWWWWMxzz##+*i***#++#+++#znnxMMWW@@@@@WWWW@WMMWWW@@@@WWW@WWMMMMMMM##nz#####W@WMMMW@WWW
i*;;:;;;;iznxxz#n*iii;iii;inxxxMWWMMWWWMMMWWMnnMWWW@@@@@@@@@@WWWWWWxxMxn#+++*i;iii***+**+#znxxxxxMW@@@@@WWW@WWWWW@@@@W@@WWWMMMxMxM##nn#@@@@@@WMMMW@WW@
#``###`##.#nxxznn:#`###. # #xxxMWWMMWWWMMMWW+`+MWWW@@@@@@@@@WWWWWWxzznxnz++*ii;;;;iiii*i*+#znnxxxxMWW@@@@WW@@WWMM@@@@@WWWWWMMxxxxM+#nx#@@@##@@WMMMWWWW
:`;`.#`##`*zxx#;n*#`###` ##inxMMWWMMWWWMMMWW#,nWWWWWWW@@WWWWWWWWMMz###nnn+**ii;;:;;;iiii;i+#z##zxMMMMW@@@WWW@WWMMW@@@WW@@WWMxxxxxM#zxx@@@@@##@@MWWWW@@
+`*``.`###;zxx+:z+#.###. ##in+MMWWMMWWMMMMMWz*WWWWWWWWWWWWWWMMMMxn#+++#zzz*ii;;:::;;;iiiii*##*++#nxMxxxW@@@W@@WWxMW@WWW@@WWW@@W@@@WW@@@@@@@####WMWWW@@
Mnz,ii` ##:zxx+:#i#. ##.`##*znMMWWMMWWMMMMMWnzWWWWWWWMWWMMWWxxxxn#+**++*###**;;;:::::;;iii*##i***+#nMMxxM@@@W@@WxxMWWWW@@WW@##########@@@@#####WMMW@@@
WWMxn+*i;;,zxx+##i#``##`` #iinMMMWMMMMMMMxxWxxWWWWWWWMWMxxMMxnxnz+*i**ii*##+*;:::::::;;ii*+#+ii***++#nMMMMW@WW@@MxMWW@@@@WW@##########@@#######@WWW@@@
WWWWMxxxx#:znn+zx* ,.##., #.#nMMzWMxxxMMMzzWxMWWWWMMMMMnnxMxnnnz+**ii;;ii*+++i::;:::::;;i*+#+iiii*+**+#nMMWWWW@@WMMW@@@#@WW@##########@@########MW@@@@
WWWMWMMMMzzMxx+;zz...##`, #.znMM#MMxxxxxMxxMxMWWWMMxMMxnxxxxnzn+**iii:;;;i*++*;;:;:::::;i*#+*iiii**i***+zMMWWWW@@WMW@@@##@@@@@#########W@######@MW@@@@
W@WWWWMWM*;MWM*inni`:#``,`#.#nxMxMMxxxxMMM@WMMW@WMxxMxxxxxnxnnz****i;::;i;****i;:::::::;;*++*;;ii****+++#nMWWWW@@WWW@@@##@@@W@@@@######@######@@WW@@@@
M@@@WWWWWnnMMMx#xMn.: +n;``.i#xnnWWWWWWMMM@WWMWWWMMMMxMMxnxxnn#***i;;::;;iiii*i*;::::::;;*+*i;;ii*+++####znxWWW@WW@WW@@@#@@@MW@@@@@##############@@@@@
M@@@@WWWWWWWWWWWMMMz;,nx*:,.:zMnxWWWWW@@@@@WWMWWWMMMMxWWMxMxnz#**ii;;;;:;;ii;;ii*i::::::i++*;;ii*+***++#+++#nWWWWWWWWWW@#@@#MMWW@@@###############@###
M@@@@@@@WWWWWWWWWWWM+,+MM+,;nMMMMWW@WWW@@@WWMMWWWMWMMMWWMMMxn##*iii;;:;;:;ii;:;;iii;::::i++iiii*******+****+#xMMWWMxWWWW@@@@WMWW@@####################
WW@@@@@@@WWWWWWWWWWWn+#MMMnxMMMWWWW@@@W@@@WxxMMWWWWWWWWWWMMxn#+*iii;;;;;;;;i;:;:::;;;::;i+*iiii*******iiii**+zxMMn++xWMMW@@@@@@@######################
WW@@@@@@@@@@@@WWWWWWWWWWWMMMWMMWWW@@@@@@@@WMxMMWWWWMWWWWWWMnz++*iiii;;;;;;;ii;:::::::;;i*+iiiii*iiiiiiiiii***+nxx+**+MMxMW@@@@@#######################
W@@@@@@@@@@@@@@WWWWWWWWWWWMxMWWWMMM@@@@@@@@xxMMWWWWW@WWWWMxnz++**iiiii;;;;;i;;::::,,:;;i+*iiii;i;;iiiiiiiii***#nn*ii*zxnnM@#@@@@@@@@@@####@###########
W@@@@@@@@@@@@@@@@@WWWWWWWWMMMMWMxMMW@@@@@@WMMMMWWWW@@WWWWMxn#++***iii;;;;;;;;;::,,,:;;i**;;;;;;;;;;;iiiiiii***+#z+i;i+zz##W@@@########################
W@@@@@@@@@@@@@@@@@@@WWWWWWWMWWWxMMMWW@@@@@WMMMMWWMW@@@WWWMnz#++**iiii;;;;;;;ii;::::;;i*i;:;;;;;;;;;;;iiiii***ii*z#i;ii+z++n@@##################@#####@
W@@@@@@@@@@@@@@@@@@@WWWWWWWWxWMMMWMWW@@@@@WMWMMMWWW@@WWWWMnz#++***iiiiiiiii****ii;;;;;;;::;;;;;;;;;;iiii****i;;i*#+i;i*+#*#W@###################@###@@
xxM@@@@@@@@@@@@@@@@@@WWWWWWWWWMMMWWW@@@@@@WWWMMMWWW@@WWWWMnz#++***iiii*+++****i;:::,:;;:;;;;;;;;;;;;ii******i;;i*+#*;ii*##*#W@######################@@
xxxxW@@@@@@@@@@@@@@@@@W@@W@@@@@MWWWW@@W@@@@@@@WMMWW@@@WWWMnz##+***ii*##+***iii;;:::,:;::;;i;;;;;;;;iii******i;;;i*+#*iii*#++n@@######################@
xxxxxW@@@@@@@@@@@@@@@@@@@@@@@@@@WWW@@@W@@@@@@@WMWWWW@W@WWMnz##+****+z#+**ii;;;;;;;;;::::;iii;;;;;;;ii********;;;;i*+#*iii*###M@######################@
xxxxxxW@@@@@@@@@@@@@@@@@@@@@@@@@WW@@@@W@@@@@@@@WMWWWWWWWWMnzz##+++#z#+*iii;;;;;;;;i;:::;;iiiii;;;;;ii*******+i;;;;i*#+i;ii*##z@######################@
xxxxxxxW@@@@@@@@@@@@@@@WWWWWWWWWW@@@WWW@@@WWWWWWMWWWWWWWWMnzz##+##z+ii;;;;;iiii;ii;;;:::;iiiii;;;ii******+#zz+i;;;;i*#+;;ii*##x@###################@@@
xxxxxxxx@@@@@@@@WWWWWWWWWWWWWMWMM@@WWMM@@WWWWWWWMWWWWWWWMWxnzz##zz+iii;;;;iiiiiiiiiii;::;ii***i;i*+++#znnnz#++ii;;;;i*++i;ii+zzW###################M@@
xxxxxxxxM@@@@@@@WMMMMMMMMMMMMMMMM@@MMMM@@WMMMMMMMMWWWWWWMWMxnnznn+*iiii;iiiiii**i***ii;;;i****ii*++++##++****i;**i;;;i*+*i;i*+zn@##################@#@
xxxxxxxxxW@@@@@@WMMWWMMMMMxxxxMxW@@MMMM@@WMMMMMMWMWWWMWWWMMMxnnn#**iiiiiiiiii*****+**ii;;i*****;i************;;;**;;;;;i+*;;i*#zM@@################M@@
xxxxxxxxxM@@@@@@MMMMMxxxxxnnnxxxW@WMMxM@@WMMMMMMMWMWWMWMWMMMxxn#+*iiiiii;;;;ii***++++*iiii**++**iii**********;;;i**;;;;;i+*;i*+zzW@################M@@
xxxxxxxxxx@@@@@@MxxxxxnnxnnznxxxW@WxxznW@WxMMMMMMWMWWWMMMWMMxxn#+**iiiiii;;ii*******++*iii**++++**iiii*******;::;i**i;;;;*#*ii*+zn@################W@@
xxxxxxxxxxW@@@@@Wxxxxnznnnz#znxxW@Mnnz#W@WnMMMMMMMMWWWMMMWMMxnn#+***iiiiiiii*+++++**++**iii*++#+++*****i*****i;::;i*+i;:;i+#ii**zzW###############MW@#
xxxxxxxxxxM@@@@@Wnxxnn##zz+**nxxW@Mxnn+M@WzMMMMMMMMWWWMMMWWMxnn#++**ii****i+nnz**+**+++*iiii*++++++***********i;:;;i*+*;;;*##i**+nx################@@#
xxxxxxxxxxMW@@@@Wxxxxn*+z#;,.#nxWWMxxn+x@WzMMMMMMMMMWWWMMMWWMxxz#+**i**++#nMMn#***i*+++*iiii**++++++***********i;;;;ii**;;i*##ii*zn@##################
xxxxxxxxMxxM@@@@Wnnxxn,:##.``+nnMWxxnn#n@WnWWWWWWWMMWWWxMMMWWWxz#++**++#zxMxnz+****++++*iiiii*+++++++***********i;;;;;i*+ii*+z+i*+n@@@################
xxxxxxxxxxxM@@@@@nnnnz..i*.``+nxMMxMxxzz@WnMMMMWWWMMWWWMxMMxMWMz##+++#zxxnz#+******++++*iiiii**++++++***********+i;::;;i*+*i*+#+**#W@@@@@@###########@
xxxxxxxxxMxM@@@@@nxxxn,`;i..`*znMMxxnnzz@WxMMMMMMMMMWWWMMMMxxxxz#####zxxn#++*******++++**ii;ii**++++++**iiiiiii**+i:::;;i+#*i*+#**+x@@@@@@###########@
xxxxxxxMMxxMW@@@@nnnnz:`.,,.`+nnxMxxxxnx@@WWWWWWWWWWMMMMMMMxnnnz##+###z#+*****ii***+++***iiiiii**++++++*ii;;iiiii**;:::;i*+#ii*+#*+z@@@@@#############
xxxxxxxMxMMMW@@@@xxxxz:``.:,:+xMWWMMMMMM@@@@WWMMMMMWMMMWMxMxnnnz##++++++****iii*****+*****iiiiii**++++++*i;;;;iiii**;;;;;i*#+ii*#++#W@@@@#############
xxxxxxxxMxMMMWW@@xxxn;;,;i*++#nM@MxxxxxM@@@@@@MMMMMWWWMWMMMMxnnz##+++****iiiiiii***********i;;;;ii**+++++ii;;;;;iii*i;;;;i*+#+i*+z+#x@@@@#############
xxxxxxxMMxMMMWWW@xnnn#+**++++#nMWMxMMMMW@@@@@@WMMMMWWWWMWMMMMnznz##+****iiii***************i;;;;;ii****++*i;;;;;;iii**;;;;i*+++*+z++z@@@@#############
xxxxxxxxxMMMWWWW@xznnz####zzzzxWWWMxMMMMWWWWWMMMMMMWWWWWMWMMMxnnz##+**********iiiiii*******i;;:::;i****++iii;;;;;iii*+*;;;;ii*++*#z#zM@@##############
xxxxxxxMMMMW@@@@@Mnnnz###zzzzznMMMxxxxxMMWWWMMMMMMMWWWWWWWMMMMxnz##+********iiiiiiiii**+***i;;,,:;i*+++++iiiiii;iiiii*+i;;;;ii*#++zzznW@##############
xxxxxMMMMW@@@@@@@Mnnnnzz#zznnnnxMWMxMMMMWWWWWWWWWWMWWWWWWWWMMMxnz##++*****iiiiiii;;ii*++***i;;::;ii*#++**iiiiiiiiiii**+*i;;;;i*+#++znzx@##############
MMMMMMWW@@@@@@@@@Wnnxnzz#zzz##znxxxxxMWWWWWWWWWMMMMW@WWWWWWWWMxnnz#++****iiiiii;;;;;i*++**iiii;;ii*++*****************+#*i;;;ii*+###nnnM@#############
MMWW@@@@@@@@@@@@@Wzznzz########znMMMMMMMMMMMMMMMMMMW@WWWW@@WWMxnnz#+++***iiii;;;;;;;i*+*******iii**+**iii******++****++##*i;;ii*++#zznnnW#############
@@@@@@@@@@@@@@@@@@zznzzz##zzzznnnMWWWWMMMWWMWWWWWWWW@WWWW@@@WMxxnz##++***iii;;;;;;;;i*++**+++++**++***iiii*******++**++##+*i;;i**++#znnzn@############
@@@@@@@@@@@@@@@@@@nxxnnzzzzznnnxxMWMMWWWW@@WWWWWW@WW@WWWWW@@WMMxnnz#++***iii;;;;;;;;ii+++++iii*+++*iiiiiii*****++*++**+##*ii;;ii*++#znnnzx@###########
@@@@@@@@@@@@@@@@@@xxxnzzzzzzzznnnxMWWWWWW@@WWWWW@@WW@WW@WMW@WWMxxnz##+***ii;;;;:;;;;iii****iiii**iiiiiiiii***++++*****+##*i;;;;i*+++#nzzzn@###########
@@@@@@@@@@@@@@@@@@nnnz####zzzznnxMWWWWWWWWWWWW@@@@WW@@W@WWW@@WWMxnnz#++**ii;;;;;;;;;iiiiiiiiiiiiiiiiiiiiii***+##+******#z*i;;;;i**++#zzznz@###########
@@@@@@@@@@@@@@@#@@nznz#####zzznnnxMMMMMMMWWW@@@@@@WW@@WW@WWWWWWMxxnz#++**iii;;;;;;iiiiiiiiiiiiii;;;;;;iii**++#z+**iii**#n+i;;;;i**++#zzzxx@@##########
@@@@@@@@@@@@@@@#@@Mnxn#++#zzzzznnxMMMMMWW@@@@@@@@@WW@@@W@WMMMWWMxxnnz#+**iii;;;;;;iii*i*iiiiii;;;;;;;;i**+##nz#**i*iii*#x#*i;;;ii*++zzzzMW@###########
@@@@@@@@@@@@@@@###@xxnz####zzzznnxMWWW@@@@WWWWWWWWWW@@@W@@MMxMWMMMxnnz#+**iiii;;iii*****iiiiii;;;;;;;i*++#znz#+**i**i**#z***i;iii*+#nzzxW@############
@@@@@@@@@@@@@@@##@Mnnz##zzzzznxxMWWWWWWWWWWWWWWW@WWWWW@@@@WMMxMWMMxnnz#++**iiiiiii*******iiiii;;;;;;*+++**+###+*i*****+#+iiiiiiii*+znzzM@@############
@@@@@@@@@@@@@@####WxxnzzznxMMWWWWWWWWWWWWWW@@@@@@@@WWW@@W@@WWMMWWMxnnnz#++**iiiii*********iiiiiiii*++*i*ii++++**i*****+#*ii;;;;i**#nnznW@#############
@@@@@@@@@@@@@@####@MMxxMMWWWWWWWWWWWWW@WW@@@W@@@@@@@WW@@@@@WMWWWWWMxnnnz#++***i**************+++++**i;:i**++++*******+#+ii;;;;;i*+#nnnM@##############
@@@@@@@@@@@@@@###@@WWWWWWWWWWWW@WWWWWW@@@@@@@@@@@@@@@W@@@@@@WM@WWWWMWxnnz#++*****+**+++++++####+i;;;;:;i*++++******+++#*ii;;;;ii*+#xnnW###############
@@@@@@@@@@@@@@#@@WWW@WWWWWWWWWWWW@W@WW@@@@@@@@@@@@@@@WW@@@@@@WW@@WWMWMnnnz#+++***++++###zznzz+ii;::;;;i***+********++++*i;;;;;ii*+zxnx@##@@###########
@@@@@@@@@@@@@WWW@@@@WWWWWWWW@WWW@W@@@@@@@@@@@@@@@@@@@WW@@@@@@@W@@@WWMWxnnnz#+++****+###zzz###+iii;;i**ii***********+##*ii;;;;;i**+zxxW##@@@@@#########
@@@@@@@@@WWWW@@@@@@@@@WWWWWWW@@@@@@@@@@W@@@@@@@@@@@@W@W@@@@@@@@@@@W@WWWxnznz#++*****ii*++####++**ii*i:;i***********+#+*i;;;;;;i*++zxM@##@@@@@@########
@@@@@@WW@@@@@@@@@@@@@@WW@@@@@@@@@W@@W@@@@@@@@@@@@@@WWWW@@@@@@@@@@@@@@WWMxzznz++**iiiiiii*+++++***ii;::i*iii***iiii*+#*ii;;;;;ii*+#nxW##@@@@@@@@#######
@@@@@@@@@@@@@@@@W@@@@@@@@@@@WW@@@@@WW@@@@@@@@@@@@@@@@@W@@@@@@@W@@@@@@@W@Mnzzz#+**iiiiiii**++++****iiiiiiii***iiii**++*ii;;;;;ii*+#nM@##@@@@@@@@@######
@@@@@@@@@@@W@@@@@@@@@@@W@@@@@@W@@@@W@@@@@@@@@@@@@@@@WWWW@@W@@WW@@@@@@@W@Wxn#zz#+**iiiiiii***********iiiii***iiiii**+*ii;;;;;ii**+#nM##@@@@@@@@@@######
@@@@@@@@W@@@@@@@@@@W@@@@@@W@@@W@@@WW@@@@@@@@@@@@@@@@@WWWWW@@@WW@@@@@@@@WMxxnzzz#+**iiiiiii********iiiii****iiiiiii*+*i;;;;;;ii*++zxW##@@@@@@@@@@@#####
@@@@WW@@@@@@@@WW@@@@@@@W@@@@@W@@WWW@@@@@@@@@@@@@@@@@@WWWW@@@WW@W@@@WWWWWxnxMnzzz#+**ii******************iiiiiiiiii*+ii;;;;;ii**+#zx@#@@@@@@@@@@@@#####
@@@@@@@@@@@@@@@W@@@@@@@@WW@@@WW@@@@@@@@@@@@@@@@@@@@@@WWW@@@@@@W@@@@WWWWWxznMMnzz##+*******************iiiiiiiiiiii*+ii;;;;;ii**+#nM##@@@@@@@@@@@@@####
@@@@@@WW@@@@@@@@@@WWW@WWWW@@@@@@@@@@@@@@@@@@@@@@@@@WW@W@@@WW@@@@@@@WWWWWxznxxMxnzz#+***************iiiii;;iiiiiii***iii;;;ii**++zxW##@@@@@@@@@@@@#@###
@@@@@@WWW@@@@@@@W@@@@@W@@@@@@@@@@@@@@@@@@@@@@@@@@@W@@W@@@@WW@WWWWWWWWWWWxzzxnnMMxnz#++************iiii;;;iiiiiiii*+*ii;;;iii**+#zM@#@@@@@@@@@@@@@#####
@@@@@WW@W@WW@WWWW@@@@@@W@@@@@@@@@@WW@@@@@@@@@@@@@WW@W@@@@@W@@WWWWWWWWWWWxzzxnnnxMxnzz#+++*****i**iiiii;;;;;iiiii**+iii;;iii**++#nM##@@@@@@@@@@@@######
@@@@@WWWWWWWWW@@@@@@@@@@@@@@@@@@@@@@@W@@@@@@@@@@W@@W@@@@@@@@@@WWWWWWWWWWxzznxnzznMMxnz##+++*****iiiii;;;;;;;iii**+*iiiiiii***+#zx@##@@@@@@@@@@@@@@@###
@@@@@@WWWW@@@@@W@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@W@WW@@@@@@@@@@@WWWWWWWWWWMzznxnzzzzxMWMnzz#+++***iiii;;;;;;iii***++*iiiiii***++#zM@#@@@@@@@@@@@@@@@@###
@@@W@W@@@@@@W@@@@@@@@@@@@@@W@@@@@@@@@@@@@@@@@@W@WW@@@@@WWW@@@@@WWWWWWWWWMzznxnzzzzznxMWMnzz#++****iii;iiii****++#+*iiiii***++#znW##@@@@@@@@@@@@@#@####
WW@@@@@W@@@@@@W@@@@@@@@@@@@@@@@@@@W@@@@@@@@@WW@@@@@@@@@WWWWWW@@@WWWWWWWWWnznnnnzzzzznnxMWMxnz#+++***iii****++##z#***iiii***++#zn@#@@@@@@@@@@@@#@@#####
@@@@@W@@@@WW@@@@@@@@W@@@@@@@@@@@@@@@@@@@@@@@W@@@@@@@@@@@WWW@W@@@WWWWWWWWWxznnnnzzzzzznnnxMWMxnz##++****++###znnz+***iii****++#zx@#@@@@@@@@@@@@@@@@@###
@@@@@@@W@WW@WW@@W@@@@@@@@WW@@@@@@@@@@@@@@@W@@@@@@@@@@@@@@W@@@@@@@WWWWWWWWMzznnnzzzzzznnnnnxxMWMxnz######zznxMWMz+***iii****+##zx@@@@@@@@@@@@@@@@@@@###
@@@@W@@@@WW@@@@W@@@@@WW@@@@@@@@@W@@@@@@@@W@@@@@@@@@@@@@@@WWW@@@@@@WWWWWWWWnznnnnzzzzznnnnnnnnxMWWMxnnnxxMW@@@@Wn#+*********+#znx@@@@@@@@@@@@@@@@@@@###
@@@@@@@@WW@W@@@@@@W@@@@@@@@@@@@@WW@@@@@@@@@@@@@@@@@@@@@@@@WW@@@@@@WWWWWWWWxzznnnzzzzzznnnnnnnnnxMW@@@@@@@@@@@@Wxn#+*******++#znx@@@@@@@@@@@@@@@@@@####
@@@@@@@@@@@@@@@W@@@@@@@@W@@@@WWW@@@@@@@@@@@@@@@@@@@@@@@@@@WW@@@@@@@WWWWWWWWnznnnnzzzzzznxxnnnnnnxxMWW@@@@@@WWWMxxz#+******++#znx@@@@@@@@@@@@@@@@@@@###
@@@@@@@@@@@WW@@@W@@@@W@@@WWW@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@WW@W@@@@@WWWWWWWWxzznnnnzzzzznnxxxxnnnxxxxMMWWWWMMWMMxnzz#++***+++#znnW@@@@@@@@@@@@@@@@@@###
@@@@@@@@WW@@W@@@@W@@@@@@@@@@@W@@@@@@@@@@@@@@@@@@@W@@@@@@@@@W@WW@@@@@WWWWWWWWnzznnnnzzzzznxxxxxxxxxxxMMMMWMxMMMWMxz##++**++++#zznM@@@@@@@@@@@@@@@@@@###
@@@@@WW@@WWWWWWW@@WW@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@WWWWWWWWMzznnnnnzzzznnxxxxxxMMMMMMMWMxMMMWWWxzz#++++++++##zzn@@@@@@@@@@@@@@@@@@###
@@@W@@@WWWW@@W@@WW@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@WWWWWWWWnzznnnnnzzznnxxxxxxMMMMMMWMxMMMMW@Wxnz#+++++++++##znW@@@@@@@@@@@@@@@@@###
@@@@@@@WW@@@WW@@@@@W@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@W@@@@@@@WWWWWWWWnznnnnnnzzznnxxxxMMMMMWWMMMMMxW@@WMnz##++++++++###zM@@@@@@@@@@@@@@@@@###
@@@@@@@@WWW@@@@W@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@W@@@@@@@@@WWWWWWMzznnnnnnnnnnxxxMMMMMWWMMxMMxW@@@WMnz##+++++++++##zx@@@@@@@@@@@@@@@@####
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@WWWWWWWxzznnnnnnnnnnxxxMMMMMMxxxMxM@@@@@Wnz##+++++++++##zx@@@@@@@@@@@@@@#@####
@@@@W@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@WWWWWWWxzzznnnnnnnnnxxxMMMMxxxxxM@@@@@@Wnz##+++++++++##zx@@@@@@@@@@@@@#######
@WW@@@WW@@@W@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@WWWWWWWnzzznnnnnnnnnxxxxxxnnxxM@@@@@@@Wnz##+++++++++##zxW@@@@@@@@@@#########
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@WWW@WWnzzznnnnnnnnnnxxxnnnnxW@@@@@@@Wxz##+++++++++##zxW@@@@@@#############
@@@@@@@@@@@@@W@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@WWW@@WxzzznnnnnnnnnnnnnnnxW@@@@@@@@Wxz##+++++++++##znW@@@########@#######
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@WMM@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@WWxzzzznnnnnnnnnnnnnW@@@@@@@@@Wxz##+++++++++##znM@@@@@@@@@@@########
@@@@@@@@@@@@@@@@@@@@@@@@@@@WMxxW@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@WxzzzzzznnnnnnnnnM@@@@@@@@@@Wxz##+++++++++##znM@@@@@@@@@@@########
@@@@@@@@@@@@@@@@@@@@@@@@WMxxxnM@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@WxzzzznnnnnnnnnnW@@@@@@@@@@@Mz###++++++++##znx@######@@@#########
@@@@@@@@@@@@@@@@@@@@@@WMxxxxxxW@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@WMnznnnnnnnnnnM@@@@@@@@@@@@Mz###++++++++##znxW@@@@@@@@@#########
@@@@@@@@@@@@@@@@@@@WMxxxxxxxxM@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@MnnnnnnnnnnM@@@@@@@@@@@@@Mn###++++++++##znxW@@@@@@@@@@########
@@@@@@@@@@@@@@@@WWMxxxxxxxxxxW@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@WxnnnnnnnM@@@@@@@@@@@@@@Mnz##+++++++###znxM@@@####@@@@#######