nznnxx,......+x#.................,,,,,...;+,,,,**iixi....``````````````````..`......,,.,:*i;;i*nz+++nxxMxMxMxxnxMxnn##xxnMMxxMxMMMMMMMMMMMMMMxxxMMMMMM
xnnnMi.......#x#.................,,,,,...,#:,,,,**iixi..```````````````````````.........,:,,,,:+*;:;**zz#zzxzzz+z#++;izz#MMzxMzxxxMxMMxMMMMMMxxxMMMMMx
nznMn........#xz......................,,,.+;,,,,,*iiixi.```````````````````````````..``..,,...,;:,,,,:;;;i*#+*i;*;:;,,ii;zzi+#iz++xxxnzxxxMMMxxxMxMMMx
***#z,.......znz.........................,;+,,,,i,*i;ixi.`````..``.`````````````````````...``..,......,,,,:;::,,,..,..:,,**:*+:*;inzz+*zzxxxn#nnxnzznn
#xxn#z+*;:,..nnz...................,,,,,,,,:,,,+#*ii#++z;.``..............````````````````````...````.....,,.....`..`....,:.::.:.,*ii::+++zz#i***iii**
i#z##i**iii:,;::,,,,,,::;;;;+*+++##i,,,,,,,:izz+#nzz#nMWn;`........................`.``````````.``````````.....`.``.``.`...`......,,,.,:::ii;:;;;;:;;i
,,,,,,,,,,,,,,,,,i*++++*i;;:::::;;;;;;;;;;;;:ii*ii;:::::;::...................................```````````````````````````````.`.`.........,,,.,:,....,
,,,::::::::::::::i***ii*i***i***++####zzzzn#xxnnxnnnnnzz#++,....................................`..`````````````````````````````````````.`.```````````
;;;;;;;;;;iiii*zxnznnxxMMxnxnnnnzzzz###+++xnxMMMxxxxnnnnnzz#i...........................................````````..````````````````````````````````````
+###zznxxMxMnMWxMMMMMMMMMMxMn#zznzzz###+nznxnnzz#zz+*izz#i*#+#i;::,,.....................................`````````````````````````````````````````````
MMMMMMMMMMxMMMMMMMxnzzz##+++***++#z#i;;;iziiiii*#zxnnnnnz+##*++*;;;;;::;;ii;;i;;:,.....................................````````````.``````````````````
MMxxxxxxxnnxxxxxnnxzn#+###++#+**i;:,,,,:#;:ii***+*i*;:::::;ii**++*i;,.`.*zz#++++###+***ii;:,...............................```````````````````````````
xxnnnnnnnnnnzz#+##zzzz#+++**i;:::::::::#+*#+++#+:..........,:;;;;;:::ii*zxxxxz#+##znnnnz####++++***;,.............................````````````````````
xnnnnnnnnnnnnnnnnnnnnnnnz##+###+*iii;;;*+**+*:..............,.....,:;iii;::i*+**i:..,;;*#nxxMx*:,*#nx#+*ii;,.....................`````````````````````
nnnnnnxxxnnnnnnnnnnzznzzzzz#*;i+#zzz#+*ii;;;;;:::,,,,,,,,,,,,,,,,,,,,,,,,;i**i;,.:i*+*;,``.:i*+*:;ii#*.```.,:,...................................`````
zzzzznnnnnnnnnnnzzzzzzzzzzzzzz++#z#++#znxxnz#*i;:,,,.,,:,,,,,,,,,,,,,:::::,,,,;*#+*;,.:*++*:........................,,.....................```````````
#########zzzzzzzzznzznzz#zzzzzzzz######*:i+znxMMxxz#i;,,i*nii,,::,::::::::::::::::;*zn#i,.,i##*:.,,,,,,,,,,,,,,,,,,,,,,::,,.........................``
###############zzzzzz####znnnz#++*i;;:,,,,,,:;*#nxMM#i.,i+##x+;:::::::::::::;;;;;;;;;i*zxn+;.,:+#+;,:::::::::::::::::::::;i*;,........................
+++++++++###########zzzzz#+***#nz#+i:,,,,,,,,,,,,;*+++**+**i;;;;;;;;;;;;;;;;;iiiiiiiiiii*#nMM#;,,;#z*::;;;;;;;;;;;;;ii*+++**+#+*,.....................
++++++++++++++#########zzzzznnz##+++#zn#i:,::::::::::::::::;;;;;;;iiiiiiii***************++#nMWxi:;;*z+;iiiiiii***iiiii+zzzzzznzz*....................
*****++++++++++++++#######zzzzzzznnzz+::*zxz*;::;;;;;;;;iiiiiiii********++++++++#######+####znxMM*;i**#z********iiiiiiii+zzzzzznzz#...................
**********+++++++++++++########zzzzzznnn#*:;+xx#i;;iiiii******++++++#########zzzzzzzzzzzzzzzzznnxxii***+#****iiiiiiiii;;i#zzzzzzn#+;..................
iii***********++++++++++++++########zzzznnnn#i:izxz*iii***++++######zzzzzzzzzzzznnzzzzzzz#zzzzzznnn;i***++*iiiiiiii;;;;;i**i;;;::*+n:.................
iiiiiiiii*******++++**+++++++++++#####zzzzznnnx#i,inx#ii**+++###zzzzznnnnnnnnnnzzzzzzzzzzz#zzzzzzzz+;i****iiiiiii**+++#nznnnxxWW@WM#i.................
;;;iiiiiiii*******************++++++++###zzzzznnnx#;:+xn+**++##zznnnnnnnnnnnzzzzzzzzzzzzzzz########ziiiiiii*++##nnnnMWMMMMzxxnnnxxWz*.................
x#*i;;;iiiiii**********************+++++####zzzzznnxn*:*nn####++#znnnnnnzzzzzzzzzzzzzzzzz######++*****++#zzznxMWMMxxnz#nM#++zWxzz#xn*.................
xxxxn+;;;iiiiii**********************+++++#####zzzznnxn*i+n#++++++zzzzzzzzzzzzzzzzzz##++*******i+###znnxWWWMxnz#+*ii;*#x#***izM###xn*.................
nxxxxxn+;;;iiiii**************iiiii*****++++#####zzzznnx#*+z++****+zzzzzzzz##+****ii;i*+++##znxMMWMWWMzz##+*ii;;;i*#n###**;**+x#+#xn#i;;;;;:::::,:::,,
Mxnxxxxx#;;;;iii************iiiiiiiii*****+++++#####zznnx#*+z****ii++*i;::::;i*+++#znxMxMWMzMxxz##+*;iii;;;i*#nxnxn#*i#++**i*ix+**xz+iii*iii*+++#++++#
xxMxxnxxxn;;;iii****+++*****iiiiiiiiiii******++++++###zznx+*+#**ii*i;i*+##znnxxMMWWMMxz###+i;;;;:::i,,,:;zMMzz*ii++#x#z**:i;:iz*,:Mz+::::,,,:,::::::;:
nnnxMxxxxx;;;ii***++++++****iiiiiiiiiiiiii*******+++++##zn+i*+*++#znnnxxMMMxxnz#+*i;;;:::++:..`...`;,*Mz++ii*zznx#+iiiz**;***iz#;;Mz*,:;:,:::,,,,:,:,:
xxxnnnxxx+:;;ii**++++++++***iiiiiiiii;;iiiiiii*******++##zi;*i+nn#Mxn##+*i;;:;::,,...,:i;#+*+znnx*`;,ii;;inz#+ii*#znx+z:i``..;#n#+W#*,:;::,:;,:;:;:::,
xxxxxnnxx::;;i**++++##++++**iii*znnnnzi;;;;iiiiiiiiii**++#*#;xWWx*z*i:::,,...,:;+*#xMMMx#x#zz#*;;;++#nznzii*+nnnz*ii**zi*::.,i#*+zW#i:::,,,,,:,,,:::;:
xxxxxxzx#,::;i****+#####+++*ii;*nnnnnnnz#xnz##+**iiiii*+++#+*Mzi;#+*i,;i+z#+xxMxn+#*;;;i*#**i#+zn#znMx;;iin#**i*+nnn#*++***i;*i**nM#i:::::::::::::;:::
nxxxxx#n#:;+nxMMMxnz######+**i;;znnxxMMMnMMMMxxxxxxxxznxxz#+n:,:::#*+xxxnz*+i;;;i*#zxMnxzx#n+#ii;i+n#nzn#;i*#xz#*ii+#*#***+*;:.,;zW#;;;;;;:::;;i;;:;;:
Mxxxnn+xnnxxxxxxxxxxxn####++*i;;#MxMMMMMMMMMMMMMMMMMMMMMMM#+z`::i:i*i:;;i+++xzMzn##i;;;;i#i*i#+zn##*;z;;i*z*ii*##xz+i;++***ii;iz#xM*;::;;ii;;::;:::i*;
MMxnnz#nnxxxxxMMxxxxxxxn###+*i;+xMMMMMxxxxMMMMMMMMMMMMMMMM###.:::::;*nnxzz++i:;:ii##xxnx#x#n##ii;*+zxnzn+:+zzn#*:,,,:izxzii++#zxWM;:;:::::;;;:;;:;i;::
MMxxx#*nxxxMWW@@@@@WMxxxxz#+*i;ixnxMxxxxxxxnxxxxMMMMMMMxMM#+#,:;,:,ii::;;***nzxzx##i;;:;*#iii++zn##zx*;;i**;,,,,:::;*zxW@WW@@WMMMni.,;:;;:i:::;;:;::::
MMxxxzxxxMW@@####@W@@WMxxMn+*ii#xMMxxxxnxxxxxxxxxxxxxMMMMM#++.::::,iizxxzn++i:;:ii#+xxxx#x+z##ii;:**;nn#;.,,,::;*zx@@WMz*i;:::,,..```,::;:::;;::::;:;:
MMxxnnxxMW@####@MMMMxxMMxxMx+i#MxxxxxnxxxxxxxxxxxxxxxxxxMxz++,;;;::i;:;;;***znxzx##i;:;;#+ii*+zxx,,::;,..:::*zM@@Mz#*i:,,``````````` ::ii;i;;::::::;;;
MMxxnxxMW@####MnnnxMW@@@WMMMx+#MxxxxxxxxxxxxxxxxxxxxxxxxMxz+i.,,;,:;izxxzx++i:::;*++xxMznx#nz+i:,`.,...,;+xWWxnz##*+:.,``         `.;+:;i:::::::,::::;
MMxnxMMW@###@xnzxW@@WWWWWWMMxMxxxxxxxxxxxxxxxxxxxxxxxxxxMxz*:`,,,:,;i;:;;i*+zxxxn++i:,.`,;:` `````..:*znWxxz+;i;,..`   .;i:,,,,:;ii***i;i;;:i::;;:::::
MxxxxMM@###@nznW@WWx#i;;i*#xMxxxxxxxxxxxxxxxxxxxxxxxxxxxMxz**;:i:::;*nxMMn**;:.`````..,,i*;.,:;i+#nMWxx#i:``````   `.;++*i***++++#++*:::::::,:,,::::;:
MxxxMMW####nnx@WMz:,;*+**ii;zMxxxxxxxxxxxxxxxxxxxxxxxxxMMxz*;i;i;:,ii:,.````...,,,,,,:i+znzxMWMxnz*i;,``````    `:i**ii**+##++#++#*ii::;;*;;::::;:::::
MxxxMMW###Mzx@Wx;:i#+iii;;;;;nMMxxxxxxxxxxxxxxxxxxxxxxxMMxz*:.;;:,ii:..,,,,,,,;i+znMWWMMxz#*i:,,.``````     `,i**ii*++#nnzznxn*i;:;;::;;ii:;::i;i:;:;;
MxxMMW@##@zxWWn,i##i*#x@#.`` ,xxxxxxxxxxxxxxxxxxxxxxxxxMMxz*i,,:,*i;,,:;i+znMWWWMxnz#+i:..`````````     `,i*+*i**++#nMMMxxnnxn:..:;;;:;:;;;:ii;:::::::
nMxMMW@##znWWz,*z+i+n@@@n    zzxxxxxxxxxxxxxxxxxxxxxxxxMMxz*;,,i+::+xWWWWMnz###+i:,,.`````````      `.;+++i**+++#nnMxxnxxMMMM*,.,;;:;;;;;;;;:;;ii;::::
xxxMMW@#MnWWx:*z+i+x@@@@x   :#@@xxxxxxMxxxxxxxxxxxxxxxMMMxz**;i;*zWMn#+**ii;:,...```````      `.,:;i*ii***+++#nxxnnnnnnxMMMMxi**;;;:;;:;;;:::;:;;;;:;i
MxxMMW@#nxWM;i#+i#x@@@@@W.,.++@#WxxxxxxxxxxxMWW@@@@WWMMMMM#+MnMWWn++++*,.``````````     `.,:;iiiiii*++###+znxxnnnnnnnnxMMMMMxx+::::::;;;:::::i;::;*::i
MMMMMW@WxWW#;*#;+MW@@@@@Wii:z#M@@MxxxxxxMxMWM#**+zxW@@@@WWW@Mxz*i**+++`````       ``.,,:;iii**++++#####**znnnnnnnnnnnnxMxMMx#i;*:::::;;::;;::i::::ii;;
MMMMMW@xMWM:*++*+@@@@@@@@i*i+#MWWWMMMMxxxxWz```.`...:i+zxWniiizzz*i::`     `....::;iii*++#####z###++##zxMzxxnxnnnnnzzxxxz#i;;;ii;::ii***:;;:::;::::;ii
MMMMMW@xMW#;*#i##z@@@W*M@ii+inW@@WzMMMMMxMM: ``,`.....,,,;..``.```   ,;:,,:;;ii**+####++###+#*i**##MMMMznnnnxxnnnz+#+*ii;i;:::,,;ii:::;ii;iiii;:,ii;;i
MMMMMWWxWW;i*+*#*+#@@Wx#@;,+;MW@@M*#MMMMMMMi.`````.....,,,.````   .:*iii****++++####+##+#+*+#nMM#n#ni:x:zxnnznzz*i:;i::::::::i;:;:;;i:::;;:ii;:;:::;;:
MMMMMWMMWM,*+*##:iiiWWWWM::#;W@@Wxz#xMMMxxxn;:::,,```.....`    .:ii;*+#######zzzznzznnnnxzMMMxx*;*;#ixn+zxnz#*;:;:::;:;:,:::;::::::i::::::::::,:::;;;;
MMMMMWMMWz:++i+*,,;i,+M#;;i*,+xx@Mxn+MMMMMMxn+*i;;;;:,,.,;,. ,,:;i*#nxnnnxxMxnnnznnxxxxnz#x+:.z#i;+#,*#zzzzz*::,::;;;::;i::,:::;:;,:,,,,::;:,,,::,,::;
MMMMMWMMW+:z*i+*,,,:*,,#*;.****#xM*::nMMMMMxxx+##+**iiii*+*:.;ii##nxMMxxxxnnnxxxxxxxxxxxzini#+x;#i,xz+*nzxnz;ii;;ii:;;;;;;;i;;;;;;:;;;::::::::::::i:::
MMMMMWMWW*;xiiz*:,,:,i:;z*;zz+:;:.:;i+MMMMMMMxMxMxz+++***iiii*#znxMxxnnxxxxxxxxxxxxnnnxMz:;++zx+*n;*:#,#xMni;;i*i;i:;ii;;;::::;i:;:,i;;:;:;;;;;:::;i:i
MMMMMMMWWi;Wi*i*Mz;:,;,i,`:#i*..,,::;inMxxMMMMxxMxxz###+***+#znnxnnxxxxxxxxxxxnxnxnxxxMWz:;#inii+.+#zxz+Mn*;;;;;;iii;;;;;i::;:ii;;,:;;;;;:::::::,:::,,
MMMMMMMWWi;Wi*;*#@@ni;;;  `:zi:,,,,,:;iMMMMMMMMM+*#nnnzn#++zz#+nnnnxxxxxxxxxxxnxxxxxxxMM+*in;x**xnz++#xWzi;:::;:::;;;:;;;:;;:::::;;;::::,,:::;i:::::::
MxMMMMMWWi;W*++##@@W#i+i``,i+#::::::::;zMMMMMMMM#i:::;*+++**ii#nnnxxxxxxxxxxxxxxxxxnnxxx*+*xzn#++#x@@WWn*;::;ii:;::::::::::::;::::::,::i:;:;:;::::,,,,
WMMMMMMMWi;Wn*#+@@@@@z#;,,:;;*#;i#zzz*+xMMMMMMMMxi;,:i*i;:,;;*nnnxxxxxxxxxxxxxxxxnxxMMWx#z#++#xW@@@@WMzi;ii;;;;;i::i;;;:;::::;;:::::::;:i;::;:;:,,,,,:
MMMMMWxMW+*Mn*+:x@xnMx#*;;ii++#*;xWWx*n@nMMMMMMMM+:,:;*i:,:;:+nnnxxxxxxxxxxxnxxxxMW@@@@M+zM@@@@@@WWWx**i*;;i;i;*:;ii;i++#ii:::::;::;::i:::::::,::,,:::
MMnxxnxWWz;nni*:#@WxMM,:i***i*z*+W@@WiM@ixMMMMMMMx+;;;;;::;i#nxxxxxxxxxxnnnxznxxxxMW@@@@@@@@@@@@@Wx#**;*+*i;;*ii;iii*iii;;;i;;:::i;;;;;:;;;;::,;:::::;
zzznzznWWx;+M;+;:@@nM*`,izz+*i,;M@@@Wn@@;#MMMMMMMMMMxnz+++zxxxnnnxxnnnnnnnzzzn#zxznzznxxxMMWWMMnz##****+iii++*+*;:;;;;;;;i;;:;;;i**i;i++;;iii::;;::;;:
+znnnzzWWW;iM**; x@M+,,`**+#,.;:xxWWWW@@,zMMMMMMMMMMMMMMxxxxznnnnnnnxxnzzz#zzzzznz####+z#z###z##+++#*++#+#;iiii*;i;;i::;i#+;;;;;:::;;:;;*;;;ii:;::::;;
###z##zxWW+:n+;i.;@#,,,ii*#i.,;.i+xMW@@W.xMWWWMMMMMMMMMxnxnxznxnnnnznznznnz###zn#z##z###+#++#++++znz+***i*iiii;;;i;;;:ii;;,::*i;i;;i;;i;;**:::i:;:::i;
z*+z###nWWx:*x.i:`i:::;i+M@Wz::;,i#W@@@n,WMWWnxznznMMxnxnznznn#zzxznn#zz#z#z#z####z##zzzMni+##+#++*+#z+***i***iii*;iiii**i;i;ii;+*;i:;;;;;::,,;;:::;::
+i+###z#WWWi,x*`ii,;i;iizzxW#;:,;;n@@@@*;WMWMxznzzn#znxzznnznnnnx#n###zzzznznz#z##zzzzz+#z####***+*i*+#**++zii*iiii*i;;:;;;;::;;;i:;::;:;;*i;,,;;::i;:
+++++##+nWWn.*x````,iii+zzzzz#;::;:M@@W,#MMWMzxznzzzznnz#znnnnzznzx##nnzznnzzznx#z+#++#+++++++##+******i*ii**iiii+*;;;ii*+#iii::;;;;:;;;:;i;ii;ii;:;;:
*++++z+*+WWWi`z.``..:i;nz#zz##iii;*;zni,MMMMxznzz##zzzzznzzzxzznn##nzzi+z##zz#n+i*zn+++##++++#*#+i#**ii;iiii+*iiii*i;i;;;;i+*iii*;;;;:;;;;;;;:::::;*;:
*++*+++i*nWMx.,.```.,:;W######*iiii*;;.*WMWWxzzz#z#zxxnn*znnzz;+##z#nn+*+++###z#++zz+**+******z#**;*#iiii;;;;;;;iii;;;;i;ii:;+ii*i;i::;;:;::;;:;;;;i:;
#+++******WMWz`.````,:+@Wn##+##iii;::.,xMMWM#nzz#n###zzzxnn*#zzz+#++###++#+++##+##z+:z******+**i*iii;;;iiiz**i;ii;;;i;;:;;;;;;;;i;:ii::;;;i;:::::i;;;;
*i*i***+++zWWW*`.`.``;*WW@Mz#z#ii:,,.,#MMWMx#z###n++#z#n#z+*#+#z+z#zzz+zz##+++##i*i****i++n**+*i*ii;;;;ii;;+*;ii;*i:;;iii;;;;i;;ii;:;:::;:;;;:ii;:;:::
*++++*+#*+*xWWW*`.`..`;i+zx#WMx#``...iMMMWMznz##zz+#####+#######*##zz#i+n*#*+***i***iiii**#*i*iiiiiiii;;ii;;;i;i;+;i;;;:;;i;;;i;:;;;;;;;:;ii;;*:::::::
*+++++#*++++MWWW+`...,..::;i**i:....iMMMWMx#z####zn+#+####++#z++++***++#+*+#*+**iii*i*iiiiiii;iii;i;iii;iii;**;;;;:;;:::;::;;i;;;:ii;;;i;;;;:;::;::;::
*+++++z##z#+#WWWWz,`,i*,.`..,.``...iMMMWWxx#z++z+###+####z#zM+i+++*+*+#z+i*i***ii*iii*ii;i;ii;ii*:;*;;i;iii;;;iiii;;;;;;;;;;;::;;;;;::ii:i;:;**::ii:::
*****#+#++#++nWWWWM*.`:++i;:,,,..,#MWMWWMzz#+##+#++z*z*+#+++z++++*+++i+*++#*i*ii*i+;i;;iiiiii;;;iii;;;;;;;i;i*i:;i;ii:::::::;;;;::;;:::::;;i;;;;:i:;:,
*ii***+##++##zzWWWWWx+,.``..``.:+xMWMMWMzn####n#++++zzz+***+++**+**+**i;#z*i**iii**++i;ii;i*;;;;;;;*;;;;;::ii;ii;i;i;;::;:::;;:::;;;;;:::;;::;::;;;::;
i***i**++++++#+zxWWMMWWn#+***#nMMMMMWWMn##*++z##+++#++#++++*+**iiiiii**ii++iii+*iii*;i**;;;*;i;ii*ii;;;;;;::i:;i::;;;:::;:;:;::;;;;;i;;:::;;:;;;::;:ii
i;i;iii;;*i***+#nnM@WMMMMMWWMMMMMMWWWMnz#++##zi+*++**##++*#*++*i,;****iiiiiiii***i;i*i;;;i;;:i**::;*;;:;+**i;**i;:;;;;:,;:;::::::;:;:;;;::::;++::::,;;
;:;;;;:;;:;ii;ii+#+nWWWWWMMMMWWWWWWMxn#++++#++**i*+****+*i*+##*:,ii+i+**iiiiii;;ii;;ii;ii;;;,i;;:;::::::::*;;:ii:::,:::i*i;;:::;:::::::;::;;;;:;iii;:;
i;i;*;;,;;i;i;iii;;i*#xMWWWWWWWWWMxn#++++i**+***+**i;ii*iiiiii*iii+;i+*iii:;i;;;;;i;;;*;;:;:;;;*:i::::::::::;::;;::::;;;;::*;::,::::,::::::::;:::;i:::
i;;;;;;;;;;;i:;ii;i:;;i;i*#znnn#z#+***#z+;****+*+:iiii+;iiiii*;ii;i;;*ii*i;:;;;;;*::;i;;;;;:;ii;;::::::;:;:::::;::;:;:i::;;:;;:;;::;;::;:;ii:::::,::::
;;;::;;i;;;;;;;::;;;:;;;;;;;;;;;;;;iiii+iii;i***iii;;*;i;;i;;ii;;;:;;;;i;;i*;;;;;;;::;:;:;;;;:;*;;;;;::::,::i:::::;:;:;:::;**:;::::ii;,;ii*;;;:ii:::::
.:i;:::;;;;;;i;;;;;:;;:::::::;;;:;;::;;::;ii**iiii;i;i*+i:*;*ii;*#:;;;;;;;;;:;i*i;;;;**::.::;;:;;i*::;;i*:;,:;i:;::;i;::;;:ii;:;;:;::;;;;:;*;::;i;::,:
.ii;:;i;;ii:;:;;;;;:i;;::i:::;;;;i*;:::;;:;i;;;:;;;;;:;i;*i;:;i;;;:i;;;i;i;;;;;;;;:;;iii;:;::i;:ii;i;z+*;:*;;i;i;::::::,::::::.::,:;;::::::::::,,,:,::