@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@#@@@@@@@@@@@@@@@#@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@#@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@WWWnMW@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@M#+**i#M@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Wz#z+;;ii#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@nMz;;;;i;;i*+zW@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@WWW@@@@@@@@@@@@@@@Wi#z;;:;i;iiii;#MMx@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Wx##+**iiii*++#znxMW@@@@W#iii;;:;;;ii;;;;;**x@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Wxz+ii;;;;;;;iii;;;;;ii+#znxxxn#+*;;;+*ii;;;izz@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@WMx#+;;i;;;;;;;:i+++;;;;;;;;;;;;i*+#nxxxxM#+ii;;;+x@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@MMxz++*i;;;;:::::::;;;;:::::;::;;;:;;;;;;;*+znxxnz++#W@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@W@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@WMxz+*ii;;;;::::::::::::::::::::::::::::::::::::;;i+#nMW@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
WWWWWW@WW@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@WMMn+**iii;;;:;;;::::::;;;:::::::::::::::::::::::;**i::;;;*+zxMW@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
WWWWWWWWW@WW@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@WWMn#**i;;;:::::::,,,,,,,,,,,::::::;::::::::::::::::iii;:i**;:;;;i+#nMW@@@@@@@@@@@@@@@@@@@@@@@@@@@
WWWWWWWWWWWWWWWWWW@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@WMxz*ii;iiii;:::::,,::;::::::,,,,,,,,,::::::::::::::::::::;;i;:i**;;;;;i*#nMW@@@@@@@@@@@@@@@@@@@@@@
WWWWWWWWWWWWWWWWWWWWWWWWWWWWWW@@@@@@@@@@@@@@@@@@@WMxz+*i;ii*iii;;;:::::::;;;;;;;;;:::::,,,,,,,,,,:::::::::::::::::::;;::::;;;;;i+zxWW@@@@@@@@@@@@@@@@@
WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW@@W@@@WWWWW@WWMMn+*iiiiiiiiiiiii:::::::;;;;;;;;;;;;;:;::::::,,,,,,,,,::::::::::::::::::::::;;;;;;i*#nMW@@@@@@@@@@@@@
WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWMn#*iii*iiiiiiiiii;:::::::;;;;;;;;;;;;;;;;;;;:::::::::,,,,.,,,,,:::::::::::::::::;;;;;;;i*#xW@@@@@@@@@@
WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWMx#*ii***iiiiiiiiiii;:::::::;;;;;;;;;;;;;;;;;;;;;;;;::::::::::,,,.,.,,,:::::::::::::::::;;;i*i*M@@@@@@@@@
WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWMxz**ii**iiiiiiiiiiiii;:::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::,,::,,,..,,,:::::;;::::::;;i*;+W@@@@@@@@
WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWMn+iii****iiiiiiiiiiii;;;::,::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ii:,,:;:;:::::,,,,,,,,::;;;;;::;;ix@@@@@@@@
WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWMn+iii****iiii*i;iiiiiii;;:::,,:::::::::::::::;;;;;;;;;;;;;;;;;;;;;i+;,,:;;;;::;;;;;::::,,,,,,::;;;;izW@@@@@@@
WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWMx#*ii******i****i;iiiiiii;;:::,,:::::::::::::::::::::;;;;;;;;;;;;;;;;*;,,:;;;;;;;;;;;;;;;;;;:::,,,,,:;#W@@@@@@@
WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWMxz*ii*************i;iiiiiii;;:::,,::;;::::::::::::::::::::::;;;;;;;;;;;;;:,:;;;;;;;;;;;;;;;;;;;;;;;;;::::xWWW@@@@
WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWMz*i;i*************ii;iiiii**;;::,,,;i;i:::::::::::::::::::::::::::;;;;;;;;:,:;;;;;;;;;;;;;;;;;;;;;;;;;;;i*#WWWW@@@
WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWMn+i;i*i************iii;iii****;;:::,,:::::::::::::::::::::::::::::::::::::;;:,:;;;;iiiii;;;;;;;;;;;;;;;;;;i++n#WxW@@
WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWMn#i;i**ii***********iiii;iiii**i;:::,,,:::::::::::,::::,:::::::::::::::::::::::,,:;;;;;;;;;iiiiiiiiiiiiii;;;i+i+**iM@@
WWWWWWWWWWWWWWWWWWWWWWWWWWWWWMx#*i;i***i**********iiiiii;iii***i::,,,,,::::::::,::,,,,,,,,:,:,:::::::::::::::::.,:::::::::::;;;;iiiiiiiiii;;i+;;::;xWW
WWWWWWWWWWWWWWWWWWWWWWWWWWWMx#i;;i*ii************iiiiiii;i;ii;:,,.,.,,,::::::,,,,,,,,,,,,,,,,,,,,:,:,::::::::::.,:::::::::::::::::;;;;;iii;;i+;;:::i*W
WWWWWWWWWWWWWWWWWWWWWWWWWMMzi;i**i***+**i****iiiiiiiiiii:;;:,,,,,,,.,,,,::::,,,,,,,,,,,,,,,,,,,,,,,,,,,::::::::.,::::::::::::::::::::::;;;;;;+;:::;;#W
WWWWWWWWWWWWWWWWWWWWWWWWMn*:iiiii**++***i****iiiiiiiiii;::,,,,,:::,.,,,,:::,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,::::::.,,::::::::::i:::::::::::;;;;;*i,::::;*
WWWWWWWWWWWWWWWWWWWWWWMn*;:,;i;**++****ii****iiiiiiiiii;:::::::,,,,,,,.,::,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,:::,.,,::::::::::::::::::::::;;;;;*i:::::::
WWWWWWWWWWWWWWWWWWWMMx+:::::;;:*++*****ii****iiiiiiiiii;::::,,,:::,,,,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,:,,.,,,:::::::::::::::::::::;:;;;**,,,,,,:
WWWWWWWWWWWWWWWWWWMz#;:,,,::::,********ii**iiiiiiiiiiii;,,,::::::;,..,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,..,:,:::::::::::::::::::;::;;;i*,,,,,,,
WWWWWWWWWWWWWWWWWx#;::,,,,,,;:,ii;i****ii*iiiiiiiiiiii;;,:::;;ii*i,,...,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,.,,::::::::::::::::::::::;;;;i+,,,.,,,
WWWWWWWWWWWWWWWM#;::,,,,,,,,:,,:,,,;***;i*iiiiiii;;;;;;;,:i******i,....,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,.,,:,::,,:,:,:::::::::::::;;;i+,,....,
WWWWWWWWWWWWWMzi:::,,,,,.,,,,,,,,,,,i**;iiiiiiii;;;;;;;:,;*******i,.....,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,.,,,,,,,,,,,,::::::::::::::::;+,.,....
WWWWWWWWWWWx#i:,,,,,,,,....,.,,...,,i*i;iiiiii;;;;;;;;;:,;*******i,..,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,.,,,,,,,,,,,,:,:::,,::::::::;;*:......
WWWWWWWWWMzi:,,,,,,..,.....,.,....,,;ii;iiiii;;;;;;;;;;:,;*******i,,,,...,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,.,,,,,,,,,,,,,,,,,,::::::::;:;*:......
WWWWWWWMzi:,,,,,,,,..............,,.,ii:iii;;;;;;;;;;;::,;*******i,,......,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,..,,,,,,,,,,,,,,::::::::::;;:;*:......
WWWWWMn*:,,,,,,,,.,.............,,.,:ii:ii;;;;;;;;;;;;:,,;******ii,,.......,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,..,,,,,,,,,,,,,,,,::::::::;;:;i:......
WWWWW+:,,,,,,,,.....................,,i::i;;;;;;;;;;;;:,,;*****iii,.........,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,..,,,,,,,,,,,,,,,,::::::::;;:;i;......
WWWWM;,,,,.,.,............,..........,i,,;;;;;;;;;;;;;:,,;*****iii,..........,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,..,,,,,,,,,,,,,,,,::::::::;;::i;......
MMMMM;,,,,.,..,,,..................,,,;,:;;;;;;;;:;;;;:,,;**iiiiii,,.......,.,...,,,,,,,.,,,,,,,,.,,,,,,,,,,,..,..,,,,,,,,,,,,,,,,,:::::::;;::i;....`.
MMMMM:,.,..,:,,,,..........,,.,.....,:,,:;;;;;;;;::;;;:,,;iiiiiiii,,.......,.....,,,.,.,...,,,,.....,,,,,,,,,..,..,..,,,,,,,,,,,,::::::::;;;::;;,,,...
MMMMM:,...,;i;;;iii**ii;::,,,.,......:,,,:;;;;;;::::;;,.,;iiiiiii;,.................................,,,.,,,,,..,..,..,,,,,,,,,,::::,:::;;;;;::;i,,,,,,
MMMMx,.,,::,..,.....,,::;iii:ii;:,,..,,,,:;;;;;:::::;;,.,;iiiiiii;............................,.......,...,,...,..,..,,,,,,,,,::::::;;;;;;;;::;;,,::,,
zMMMx,,,,,,,................,...:::,,,.,::;;;;::::::::..,;iiiii;;;.............................................,.....,,,,,,,,::;;;;;;;;:::::::;;...,,,
ixMMx,,...,,,.,.,.................,..,...,::::::::::::..,iiiiii;;:...................................................,,,,,,,,:;;;;;;;;;:::::::;i....,,
*#xz#,.....,,.............................,,:::::::::,..,iiii;;;::....................................................,,,,,,,:;ii;;;;;:,,:::::;;.`...,
;:ii;.......,.............................,,,:::;;;iii;.:i*ii;;::,............................,,......................,,,,.,,:;iiiiiii:,,::::::;......
,,:;;.....................................,,,:::;iii*i;.:****;:,,..`...........................................,.......,,,...,:;i+++*i:,,,:::,:;...,,.
,,,::............................,,::;;i**++i,,,,;iiii;.:***;:,.........................................................,,....,,:i#z#+:,,,:::,:;.....:
.,:::...............,,,::;ii*+###zzzzz#z###zzz;...:;;;:.,;;;:,..........``.`.................................................,;:,:;*+z:,,,::,,:;.....M
.,,,,...,,,:;;ii*++#############zzzzzzzzzzzzzzzi..,,,,...,,,,,.....`..````...................................................,ii;,.:;*,,,,,,,,:;.....M
..,,;**+++#########zzzzzzzzzzzzzzzzzzzzzzzzzzzzz+.........,,,......``.`````...................................`.`.............;ii;,.,:..,,,,,,:;.....n
..,,i+###nMMMMMMMMMMMMMMMMMMMMzzzzzzzzzzzzzzzzzzz+.................``..``....................................``.`....``.......:::::,......,,,,::.....+
,,,,i#z++nWWWWWWWWWWWWWWWWWWWWzzzzzzzzzzzzzzzzzzzz+.................`.........................................`................,,..,.....,,,,,,:.`...:
.,,,i#+;*nWWWWWWWWWWWWWWWWWWWWzzz++++++#zzzzzzzzzzz+..............`...........................................................,:::,..,:,.,::,,,:.``..:
.,,.i##++xWWWWWWWWWWWWWWWWWWWWzzz;:::::izzzznnnznnzn+.........................................................`.`..``.........,,,,.,.,:::..,,,,:.```.:
....i#ii+xWWWWWWWWWWWWWWWWWWWM;zz*ii;;::#zzzzznznnnzn*...............``.............................`..`......`.`...`.........,,..,:.,::::,...,,```.,,
....i#**+xWWWWWWWWWWWWWWWWWWWM*zzzzzzzzzzzzznnnnnnnnzn,...........`.```..........................................`.............,...,..,::::,..,:..`,,,
....i#+*#nWWWWWWWWWWWWWWWWWWWMzzzi**++#zznnnnnnnnnnnnz,...........```........................................................,,,,..,,,,.,,,...,,...,,,
....*##*+nWWWWWWWWWWWWWWWWWWWWzz#;;::::;;iznnnnnnnnnnn,i;.........`````................................`........``..................,,,,,,,,,..,..,,,,
....*##zzxWWWWWWWWWWWWWWWWWWWWzz#i;:,::;;;#nnnnnnnnnnn.in;........````.......................................................,,.............,..,`.,,,,
....*##zzxWWWWWWWWWWWWWWWWWWWWzzzzzz##+*iiznnnnnnnnnnn.*nn:.........```.........................................`..........,,i;,...............:.,::,,
....*####xWWWWWWWWWWWWWWWWWWWWzz#++#zzzzznnnnnnnnnnnnz.*nnz,..:,....```....................................................;ii*;...............,..,...
..,,*#z+znMMxxMMMMMxnnMMMMMMMxnn#;;;;i*+znnnnnnnnnnnnz.*nnnz,.ii;,..`...........................................`.........,;*:*i,...........,..,`.....
.,,,*#z+zzznzzz#zznnzzzzzzzzzznnz*i;:;;iznnnnnnnnnnnnz.*nnnn#.i*;,..`......................................,,...`.........,;*i:*...............,,,,...
,,,,*#z#zzznzzzzz#zzzznnnnnnnnnnnnnnz#*znnnnnnnnnnnnnz.+nnnnn*:*i,.````.........................................`..........;**::;..........,,..,inx###
,,,,*#z+#zznzzzzzzznzz##znnnnnnnnnnnnnnnnnnnnnnnnnnnn#.+nnnnnn;.,,.````.........................................`...........;+*,;..............,;+zznn
::::*zz*;z#zznznnznn#nnnnz##znnnnnnnnnnnnnnnnnnnnnnnn#.+nnnnnnn:.:`````````.````............................................,::,..............,,:ii*zn
;;;;i#zi.n:*nnxxnnnn+znnnnnnz##znnnnnnnnnnnnnnnnnnnnn#.#nnnnnnn#..``````````````````````````.`...`````````````````.```````````.``.`.............i;;i*z
**++i+#;.z,;nnn#zznnznnnnnnnnnnz###znnnnnnnnnnnnnnnnn+.#nnnnnnnn+.````.```..`````````````````.`````````````````````````````````````.```````````,#znnnx
+*++++#;.+.,nnz;+znnnnnnnnnnnnnnnnnz+##znnnnnnnnnnnnn+.znnnnnnnnni````.````````````````````````.````````````````````````````````````.``````````,#znnxx
##+++##;`;..nnz;+zz#*znnnnnnnnnnnnnnznz#++#znnnnnnnnn+.znnnnnnnnnz,``..````.````````````````````````````````````:,`````````````````````````````,znziiz
+####++;`;..zzzi+zz+;zzzzzzzzzzzzzzzznnzzz#+++znnxxxn*.znnnnnnnnnn;``..````..````````````````.`````````````,,,,,:,:,:,`````````````````````````.*z####
**++##+;`,.,###;+##*:#zz#izzzzzzzzzz#zzzzzzzzz#++#nnx*.nnnnnnnnnnn;.`..```````````````..```````````````````..;:.,.;:;:.````````````````````````...,,,:
iii**+#;`..,##+++##*:#zz#,#zzzzzzzzzzzzzzzzzzzzzz#+++i.nnnnnnnnnnn;.;``````````.````````````````````````````````......``.`````````````..```````.``````
iiiii*i.`..:#######*;zzz#.zzzzzzzzzzzzzzzzzzzznnnn#:i;.nnnnnnnnnnn:,z:..`````````````````````````````````````````.````````````````````````````.,,,,,,,
ii*****:`..+nz##z#z#*zzz#.zzzzziizzzznzzzznnnnnnnn#::;,z+znnnnnnnn:,zz*,....``````````````````````````````````````.```````````````````````....:i******
i****ii.`..zxz#zz#zzzzzz#.zzzzz;,zzzzzzzzzzznnnnnn#:;;,+..:nnnnnnn,,nnnz+i;:,,....................................................,,,,,:::;;;i+#++++++
iiii;;:..`.zMz#zz#zz#zzz#,zzzzz;,zzzzzzzzzzznnznnn#:;;,+...nnnnnnn,:nnnnnnnnzzz##++++++******iiiiiii;;;;;;;;;;;;;;;iiiii***++++####zzzzzzzzzzzz#*+++++
;i;;;;:,..`+zznzzzzz#zzzz*zzzzz;,zzzznznzznznnnnnn#:;;:+...nnnnnnn,:nnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnzzzzzzzz#iii***
iii;;;;:,,`,i#znzzzzzzzzzzzzzzz;,zzzzznnzznnnxMxnnnz+;:zi:,nnnnnnn,:nnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnzzzzzz+iiii*i
iiiii;;;::...:+#znzzzzzzzzzzzzz;,zzzzzzzznnn#*zMxnnnn::nnnznnnnnnn.:nnnnnnnnnnnnnnnxMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMnznzzzzz+;iiiii
iiiiii;;;::.``,*+#nnzzzzzzzzzzz*:zzz#zzz#zn+.`.zMnnnn::nnnnnnnnnnn.;nnnnnnnnnnnnnnnMWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWxzzzzzzz+iiiii;
iii;i;;;:::,```.;*+znzzzzzzzzzzzzzzz#*#z#zz,```,xx#+z:;nnnnnnnnnnn.;nnnnnnnnnnnnnnnMWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWxzzzzzzz*;;;;ii
;i;;;:::::::,,...,*+znzzzzzzzzzzzzzz##**#z*.`.``+x#*+:;nnnnnnnnnnz.;nnnnnnnnnnnnnnnMWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWxzzzzzzz+iiiiii
;;;;;;;;;;;::,.....i+#znzzzz#zzzzzzz+*+##z:`````,x#;*:;nnnnnnnnnnz.innnnnnnnnnnnnnnxWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWxzzzzzzz+iiiiii
ii;iii;;;;;;;;:,,...:+#znzzz#zzzzzzzz#*i+#.`````.zx+*,;nnnnnnnnnnz.innnnnnnnnnnnnnnMWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWxzzzzzzz*iiiiii
iiiiiiiiii;;;;;:,,...,+zznnz#zzzzzzzz*##+*.``````*xnn,;nnnnnnnnnn#.innnnnnnnnnznnnnxMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMnzzzz###*iiiiii
iiiiiiiiiii;;;;:::,...,*#znn#zzzzzzz##+z+i``````.:xnn,innnnnnnnnn#.innnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnznnnnnnzzznnzznnzzzznzzzz#######zzzz*iiiiii
iii;;;;;;i;;;;;;:::,,...i#z#nnzzzzzz#*+z+;`````..,xnn,i#innnnnnnn#.*nnnnnnnzzzznnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnznzzzzzzn#znn#*zzii***ii*i
i;iiiiiii;i;;:::::,,,....:+##nxzzzzzz#*++:````...,znn,i*.;nnnnnnn+.*n#+###################znnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnznzzzzzn+;izz::*+,;+*****i
i;;iii;;ii;;;;;;;;:::,,...,;#zzxnzzzz*+#*:`````.,*nxn.ii..;nnnnnn+.*n#nnnnzznnnnnznnnnn#znz#nnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnzzzzzzzz:i;z#,;**,i*iiiii*
i;i;iiiiiiiiii;;;;;;::,,....;+#znxzzz#iz*,````.:x#Wxn.i;...;nnnnn*`*nznnni,,*znz;:innni;;znz#nnnnnnnnnnnnnnnnnnnnnnnnnnnnnnzzzzzzzzzi**zzi*##i#iiiiiii
i;;;iiiii;;iiii;;;;;::::,,...:+##zxnzzzz*:````.,*W;xn.*:.``.*nnnn*`+nznn+...i#z*,,:#n#,:;+nn#znnnnnnnnnnnnnnnnnnnznzzzzzzz##++#z#zzz#+zzz#zzz##ii*iiii
;;iiiiiiiii;i;;;;;;;::::,,....,i##zxxzzz*:````..,Mnxn.*:````.+nnni.+nznn+.,,+nz*,;;zz#:;;#nnnznnnnzzzzz###+++***ii;;;;;;:::;;*zz#############z#iiiiiii
;;;;;iiiiiiiiiiii;;;::::,,,.....;+#znMzz*:````.`,n#xn.*,`````.znni`#nznnz:,;nnz#*i+zzz*;+znnnzn*;:::::;i;;;;i*+++++###zzzzznnnzzzzzzzzzzzzzzzz+iiii;;;
;;;;;;;iiiiiiiii;;;;;;;;:::,,....:+zznMni:```.,..+@xn.+,`.```.,nni.#nz#nnzznnzzz#zzzzzzzzzzzzznz###zzzznnnnnnnnnnzzzzzzzzzzzzzzzzz##+++******+zi;;:;:;
ii;;;;;;;;;;;;;i;;;;;;;;;;;::,....,+znz#i:```....*#zn.+,```````*n;.#nnz###################zznnnnnnzzzzzzzzzzzzzzzzz##++*****++++##znnxMMMWWWWWMi;;;;;;
i;;;:;;;;;;;;;;;;;;;;;;;;;;;::,,...,+zz*i:```.,.,i*zz.+.````.``,n;.#nnnnnnnnnnnnzzznznzzzznnnnnzzz##+++++++++###zznnxxxMMMWWWWWWWWWWWWWWWWWWWWM;;;;;;;
i;;;;;;;;;iiiii;;;;ii;;;;;;;:::,,....iz+#,```.:..:*zz.#.```````.z:.#nzzzznnnnzzzz##+++*****++++##zznnxMMMWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWM*i;;;;;
ii;;;;;;;;;iiii;;;;;;;;;;;;;:::,,,....;*+,````...:izz.#.````.``.#:.zz#:iii***++#zznxxMMMMWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWMMMx*iiii;i
i;;;i;;;;;;iiiii;;;;;;;;:;;;;;:::,,.....:.````,.,;;#z.#,````.```+:.znz#xMWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWMMMMMMMxxxxxxnnnni;;iiii
;i;;;;;;;;;;;;;;;iiii;;;;;;;;;::::,,....`````.,,.:.+z.#;.```````+,.nnz#xMMWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWMMMMMMMMMxxxxxxxxxnnnnnnnnnnnnnnzi;;;;;;
ii;ii;;;;;;;iiiiiii;;;;;;;;;;;;;:::,....``````...:,##.zz:````.`.+,,nnz#nxMMMWWWWWWWWWWWWWWWWWWWWWWMMMMMMMMxxxxxxxnnnnnnnnnnnnnnnnnnnnnnnnz+++zz;;;;;;;
i;;;;;;;;;;;ii;;;i;;;;;;;;;;;;::::::,,..``````.,,,.##.znn+,``..`#.,nnz#nnxxMMMMMWWWWWMMMMMMMMxxxxxxnnnnnnnnnnnnnnnnnnnnnnnnnzzzzzzzzzzzzz#i*+zzi;;;;;;
iiiii;;;;;;;;;;;;ii;;;;;;;;;;:;::::::,,...````.,,..zz.znnnn*..`.#.,nnzznnnxxxxxxxxxxxxxnnnnnnnnnnnnnnnnnnnnnnnnnnzzzzzzzzzzzzzzzzzzzzzzzzz#zzz#i;;;:::
iii;;;;;;;;;;;;;ii;;;;;;;;;;;;;;;;;:::,,.....``.;..#z:xxnnnnz;..z.,nn#znnnnnnnnnnnnnnnnnnnnnnnnnnnnnzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz#;;;:::;
ii;i;;;;;;;;;i;;;;;;;;;;;;;;;:;;;:::::,,,.....`....##;MWxxxxnn#+z.:nn#nnnnnnnxxnnnzzznnnnnzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz###z+;:;;;ii
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::,,,,,...``..`##;nxWWxxxnznz.:nn#nnnnnnnnnzz+iiizzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz######+i;;;i;i
;;;;;;;;;;;;;;;;;;;;:::::;:;;;::::::::,,,,,,...````++;nnnMWMxx++z`:nn#nnnnnnnnzzz+**+zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz####+++###zz##+z+iiiii;;
;;i;i;i;;;;;;;:::::;;::;::;:::::::,::::::::,,..````.i;nnnnnMWMn##`;nn#nnnnnnnnzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz####++++++++++######++++++*iiii*i
;;;;;;;;;::::::::::;:::;:::::,::,,,,,,,,,,,,,,..````.,znnnnnnMWM#.;nn+nnnnnnnzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz######++++++###+++++++++##+++****i*********
;;;i;;::::::::::::::::::::::,::,,,,,,,,::::,,,,.``````.*nnnnnnxM+`inn+nnnnnnnzzzzzzzzzzzzzzzzzzz#####+++++++########++++++++++++###+*iii;;;:;i********
;;;;::::::,:::::::::;:::::::::::,::::::::::::,,,.```````:#nnnnnzi`inn#nnnnnnzzzzzzzzz########+++###########++++++++++++++###+++*ii;;;;;;iii***+****i**
:::::::::,,,:::::::::::::::;;;:::::::::::::,,,,....``````.;#nnzni`*nn#nnnnnzz#####zzzznnnz#######+++++++++++++######++*ii;;;;:;;;;iiiiii******+++*****
:;;;;;::,,,,,::::::;;;;:;:;;;;;;;;;;;;;::::,,,.......``````.iznz;`*nn+nnnnnnnnz####+######z##+#+++#########+++*ii;;:::,,,,,:;;;iiiiii****i************
;;;;;::::,::::::::;:;ii;i;iiii;i;;;;;::,:::,,,............```,*#:`*x+innnnnzz#+#++++*++++++######++***ii;;;::,,,...........,,:::;;;iiiii**+********+**
::,:::::::::;;;;;iiiiiiiiiiiiii;;;;;;;;:;;::,,,,,,,.........`..:,,z+.:nnnzzz+++*****i***iiiiii;;;::,,,,....`````````.``.````..,::;;iii*i******++******
;;::;iii;;;;;;iiiiiiiiiiiiiiiiii;;;ii;;:::::,,:,,..............`.,,..,nnz#+*iii;;;;;;;;:::,,....```````````````````````.`````..,,:;;iiiiiiiiiii*******
iii;iiiiiiiii;iiiiiiiii*iiiiiiiiii;;;;;:::,,:,,,.............`````.``.;ii;:::,,,,,.....`````````````````````````````````..````...,,::;;;iiii**********
*****ii*iiiiiiiiiiii**iiiiiii;;i;;;;;;;::,,,,,,,,,,..........``.`````````..`````````````````````````````````.``````````....```.`..,,::;;;;iiiiiii*ii**
********iiiiii;;iiiiiiiii;iiiiiii;;;;;::,,,,,,,,,,,,..........`.....````````````````````````````````.```````.`.....................,,::;;;;iiiiiii****
******iiiiiiii;;iiiiiiiiiiiii;iii;;;;;::::,,,,,,,,,,,................``.````````````````````````````.`..............................,,,,::;;;iiii*****
****iiii*iii;;;;iiiiiiiiiiiiiii;;;;;;:;:::::::::,,,,,,,,...............`````````````````````````.`.............................,.,,,,,,,,::;;iiiiiii**
****iiiiiiiiiii;i*****i***iiiiiiii;;;;;;;;:::::::,:,,,,,,..............````..```.````````````...................................,,,,,,,,,,::;;iiiiii**
*iiiiiiiiiiiiii;;i**iiiiiiiiiiiiiiiii;;;;;;;:::::::,,,,,,,..................``...`..`.`..................................,..,..,,,,,,,::::::;;iiiiiiii