MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMx#;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;*nMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMxMMMMMMMM
MMMMMMMMMMWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM#;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;izMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMxMMMMMMMM
MMMMMMMMMWWWWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMM#;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;nMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMxMMMMMMMM
MMMMMMMWW@@@@@WWWWMMMMMMMMMMMMMMMMMMMMMMMMM#;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;izMMMMMMMMMMMMMMMMMMMMMMMMMWWWMMMMMMMMMM
MMMMMMMW@@@@@@@@@WWMMMMMMMMMMMMMMMMMMMMMMMz;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;inMMMMMMMMMMMMMMMMMMMMMWWWWWWWWMMMMMMMM
MMMMMMW@@@@@@@@@@@WWMMMMMMMMMMMMMMMMMMMMMxi;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;*xMMMMMMMMMMMMMMMMMMWWWWWW@@@WWMMMMMMM
MMMMMW@@@@@@@@@@@@@WWMMMMMMMMMMMMMMMMMMMM+;;;;;i#zznnnnnnnnnnnnnnnnnnxxxxxxxxxx#;;;;;;#MMMMMMMMMMMMMMMMMW@@@@@@@@@@@WMMMMMM
MMMMWW@@@@@@@@@@@@@@WMMMMMMMMMMMMMMMMMMMz;;;;;;;#W@WWWWWWWWWWWWWWWWWWWWWWWWWWWW#;;;;;;inMMMMMMMMMMMMMMMW@@@@@@@@@@@@WMMMMMM
MMMMWW@#@@@@@@@@@@@@WMMMMMMMMMMMMMMMMMMM*;;;;;;;;n@@WWW@@@WWWWWWWWWWW@WWWWW@WWW#;;;;;;;+MMMMMMMMMMMMMMMW@@@@@@@@@@@@@WMMMMM
MMMMMW@#@@@@@@@@@@@@@WMMMMMMMMMMMMMMMMMzi;;;;;;;;iM@WWWWWWWWWWWWWWWW@@@@@@@@@WW#;;;;;;;inMMMMMMMMMMMMMW@@@@@@@@@@@@@@WMMMMM
MMWMWW@#@@#####@@@@@@WMMMMMMMMMMMMMMMMxi;;;;;;;;;;+WWWWWWWWWWWWWWWWWWWWWWWWWWWWz;;;;;;;;#MMMMMMMMMMMMMW@@@@@@@@@@@@@@WMMMMM
MMWWWW@#@@#####@@@@@@@WMMMMMMMMMMMMMMMz;;;;;;;;;;;;nWWWWWWMMMMMMMxxxxxxxxxW@WWWz;;;;;;;;ixMMMMMMMMMMMMW@@@@@@@@@@@@@@WMMMMM
MMWMWW@#@@@##@@@@@WW@@@WMMMMMMMMMMMMMM*;;;;;;;;;;;;iMWWWWxiiiiiiiiii;;iiiiixWWWz;;;;;;;;;zMMMMMMMMMMMMW@@@@@@@@@@@@@@WMMMMM
MMMMWW@@#@@@@@@@@@WW@@@WMMMMMMMMMMMMMni;;;;;;;;;;;;;#WWWWW#;;;;;;;;;;;;;;;;inWWz;;;;;;;;;*MMMMMMMMMMMMW@@@@@@@@@@@@@@WMMMMM
MMMMWWW@##@@@@xxWW@@@@@WWMMMMMMMMMMMM#i;;;;;;;;;;;;;in@WWWM*;;;;;;;;;;;;;;;;ixWz;;;;;;;;;ixMMMMMMMMMMMW@@@@@@@@@@W@@@WMMMMM
MMMWWWW@##@@@WxnM@@@@@@WWWMMMMMMMMMMM*;;;;;;;;;;;;;;;iMWWWWxi;;;;;;;;;;;;;;;;*nn;;;;;;;;;izMMMMMMMMMMMW@@@@@@@@WMW@@@WMMMMM
MMMWMWW@##@@@@@@@@@@@@@WWWWWMMMMMMMMxii;;;;;;;;;;;;;;;+WWWWWz;;;;;;;;;;;;;;;;;i+;;;;;;;iii+MMMMMMMMMMMW@@@@@@@WMW@@@@WMMMMM
WWWMMMW@@#@####@@@@@@@@WWWWWMMMMMMMMzii;;;;;;;;;;;;;;;inWWWWW+;;;;;;;;;;;;;;;;;;;;;;;;;iii*MMMMMMMMMMMW@@@@@@@@@@@@@@WMMMMM
WWWMMMW@@#######@@@@@@@WWWWWWMMMMMMM#;ii;;;;;;;;;;;;;;;iMWWWWxi;;;;;;;;;;;;;;;;;;;;;;;;iiiixMMMMMMMMMMW@@@@@@@@@@@@@@WMMMMM
MMMMMMWW@#########@@@@@WWWWWWMMMMMMM+;;;;;;;;;;;;;;;;;;;+WWWWWn;;;;;;;;;;;;;;;;;;;;;;;;iiiinMMMMMMMMMMW@@@@@@@@@@@@@@WMMMMM
WWWWWMMW@#########@@@@@WWWWWWWMMMMMx*;;;;;;;;;;;;;;;;;;;izW@WWW#;;;;;;;;;;;;;;;;;;;;;;iii;i#MMMMMMMMMMW@@@@@@@@@@@@@WMMMMMM
WWWWMMMWW@##########@@@WWWWWWWWMMMMxi;;;;;;;;;;;;;;;;;;;;*M@WWWMi;;;;;;;;;;;;;;;;;;;;;iii;izMMMMMMMMMMW@@@@#@@@@@@@@WMMMMMM
WWWWWWWWW@@#########@@@WWWWWWWWWMMMxi;;;;;;;;;;;;;;;;;;;;;+WWWWWni;;;;;;;;;;;;;;;;;;;iiiiiizMMMMMMMMMWW@@@##@@#@@@@@MMMMMMM
WWWWWWWW@@###########@@WWWWWWWWWWMMxi;;;;;;;;;;;;;;;;;;;;;inWWWW@#i;;;;;;;;;;;;;;;;;iiiiiiizMMMMMMMMWW@@@######@@@@@WMMMMMM
WWWWWWWW@@############@WWWWWWWWWWMMxi;;;;;;;;;;;;;;;;;;;;;;zWWWWWMi;;;;;;;;;;;;;;;;iiiiiiiizMMMMMMMMWW@@@######@@@@@WMMMMMM
WWWWWWW@@@@##########@@MMWWWWWWWWWMxi;;;;;;;;;;;;;;;;;;;;;iM@WWWWzi;;;;;;;;;;;;;;;;iiiiiiiizMMMMMMMMW@@@@########@@@MMMMMMM
WWWWWW@@@@@##########@WMMMWWWWWWWWMMi;;;;;;;;;;;;;;;;;;;;izWWWWWMi;;;;;;;;;;;;;;;;;iiiiiiiinMMMMMMMMW@@@@##########@MxMMMMM
WWWWWWWW@@@###########WMMMWWWWWWWWWM*;;;;;;;;;;;;;;;;;;;;*MWWWWW#;;;;;;;;;;;;;;;;;;iiiiii;inMMMMMMMWW@@@@#########@MxxxMMMM
WWWWWWWW@@@##########@MMMMMMWWWWWWWM+ii;;;;;;;;;;;;;;;;;;zW@W@Wxi;;;;;;;;;;;;;;;;;iiiiiiiiixMMMMMMMWW@@@@@########WMMMMxxMM
WWWW@W@@@@@#########@MMMMMMMMMMMWWWWz*ii;;;;;;;;;;;;;;;;*WWWWWW+i;;;;;;;;;;;;;;;;iiiiiiiii*MMMMMMMMWW@@@@@#######@WMMMMMMxx
WW@WWWW@@@#########@WMMMMMMMMMMMxMMWx*iii;;;;;;;;;;;;;;in@WWW@xi;;;;;;;;;;;;;;;;iiiiiiiiii+MMMMMMMMMWW@@@@######@WMxMMMMMxx
MWWWWWWWWW@@@@@@@@WWWWMMMMMMMMMMMMMMM#*ii;;;;;;;;;;;;;;+WWWWWW+;;;;;;;;;;;;;;;;;iiiiiiiiiizMMMMWMMMMMWWW@@@@@@@@WMxMMMMMMxx
MWWWWWWWWWWWWWWMMW@WWMMMMMMMMMMMMMxMMz**i;;;;;;;;;;;;;inWWWWWxi;;;;;;;;;;;;;;iiiiiiiiiiiiiMMMMMMMMMMMWMW@@WW@@WMMxMMMxxMxxx
MWWWWWWWWWWWWWMMMMWWWMMMMMMMMWMMMxxxMx**ii;;;;;;;;;;;;+WWWWWW+;;;;;;;;;;;;+xxMMniiiiiiiii+MWMMMMMMMMMWMWWMMMMWMMMMMMxxxxxxx
MWWWWWMWWWWWWWMMMMMMMMMMMWMMMMMxxxxMMM+**ii;;;;;;;;;;ixWWWWWnii;;;;;;;;;;;+WW@@niiiiiiiiizWWWMMMMMMMMMWWMMMMMMMMMMMMMxxxxxx
MWWWWWMMMWWWWMMMMMMMMMMMMMMMMMMxxxxMMM#**iii;;;;;;;;;#WWWWWW*;;;;;;;;;;;;;+WWW@niiiiiiii*MWWWMMMMMMMMMMMMMMMMMMxxxxMMxzznxx
MWWMMMMMMMWWWMMMMMMMMMMMMMWWWMn;iizMMMx+**ii;;;;;;;;ix@WWWWn;;;;;;;;;;;;;;#W@WWniiiiiiii#MWWMMMMMMMMMMMMWMMMMxxxxxxxni:*;zx
MWWMMMMMMMMWWMMMMMMMMMMMMMWWWxi,*#;zMMM#**iii;;;;;;;#WWWWWW*;;;;;;;;;;;;;;#W@WWniiiiiiiinWWWMMMMMMMMMMMMMMMMMxxxxxMn;.;n*;n
MMMMMMMMMMMMMMMMMMMMMMMMMMWMMz,.:z**xMMn****ii;;;;;iM@WWW@n;;iiii;;;;iiiii#W@WWxiiiiiii+MWWMMMMMMMMMMMMMMMWMxMMMMxni;;++i*+
MMMMMMMMMMMMMMMWMMMMMMMMMMMMMn::*z:*zMMM+****ii;;;;#@@WWW@xznnnnnnnnnnnnnnMW@WWniiiiii*nMMWMMWMWMMMMMMMMMWWMMMMMMMn*z#*;,++
MWWMMMMMMMMMMMMMMMMMMMMMMMMMMxz*z*,,+MMMn*****ii;;iM@WWWWWW@@@@@@@@@@@@W@WWW@@Wniiiiii+MWWMMxMMWWWWMMMMMWWMMMMMMMMxzi+i:,:+
WWWMMMMMMMMMMMMMMMMMMMMMMMMMMxxz***:*xMMW#****ii;;zWWWWWWWWWWWWWWWWWWWWWWWWW@@WniiiiiixWWMMxxMMWWWWMMMMWWWMMMMMxxMMxz*+:,;n
WWW@WWWMxMMMMMMMMMMMMMMMMMMMMxxxx#+;+MMMWx******i*MWWWWWWWWWWWWWWWWWWWWWWWW@@@@niiiii#WWWMxxxMMWWW@WMMMMWMMMWWMxxxMMxxz+#xM
WWW@WWWWMMMMMMMMMMMMMMMMMMMMMMxxxMxzxMMMMMni***++nW@WW@@@@@@WWWWWWWWWWWWWWWW@@@niiii+MWWWMxxxMMWWW@WWMMMMMMMMWWMxxMMMMMMMMM
MMW@@@@WWWMMMMMWWMMMMMWMMMMMMMMMMMMMMMMMWMMzi***#WWWMMMxxxxxxxnnnnnzzzz###++++**i;i*xWWWMxxxxxMWWW@@@WMMWWMMMMWMxxMMMMMMMMM
MMW@@@@WWWWWWMWMMMMMMMWMMMMMMMMMMMMMMMMMWMMxzi***+++*ii;;;iiiii+*iiiiii;;;;;;;;;;;inWWWMxxMMMMMW@@@@@@@WWWMMxMWMMMMMMMMMMWW
MMW@@@WWWWWW@WMMMMMMMMMMMMMMMMMMMMMMWMMMMMMMMziii****ii;;;;;i+xWMx+iiiiiiiiiiii;;izMMMWMMMMMWWWWWWWWWWWWWWWMxxMMMMMMWWMWWWW
MMW@@@WWWWWW@@WWWMMMMWMMWMMMWMMMMMMWWMMWWMMMMM#iii****iiii;*nW@WW@Wx+iiiiiiiiii;izMMMMMMMMMMMWWWWWWWWWWWWWWWMxxMxMMMWWWWWWW
WMW@@@@WWWW@@@@@@WWWWWWMWWMMWWWMMMWWWMWWWWMMMMMziiii****ii+M@W@@@@@@Wzi**iiii*i*nMMMMMMMWWMMMMMWWWWWWWWWWWWMMxxMxMMMWWWWWWW
@W@@@@@@WWW@@@@@@@@@WWWWMWMMMWMMMWWWWWWWWWWMMMMMn+;iii***+M@W@@@@@@@@W+*******#xWWWMMWMWWWWWMMMW@@@WWWWWWWWMMxMMMMWWWWWWWWW
MMWW@@@@@@WWW@@@@@@@@@@WWWWMMMMMMWWWWWWWWWWMMMMMMMzi;;ii*nWWW@@@@@@@@@n*****+nWWWWWWWWWWWWWWWWWWW@@@@WWWWWWMMMMMMMMWWWWWWWW
MMMMW@@@#@@WMMWWW@@@@@WW@@WWMMMMWWWWWWWWWWWWMWMMMMMx#i;;iMWWWW@@@@@@@@W+**+nWWWWWWWWWWWWWWWWWMMMW@@@@@@@@WWWMMMWWWWWMMMW@WW
MMMMMMW@@###@@@WWWWMMMMMMMMWWMMWWWWWWWWWWWMMMMMMMMMMMx#**W@WWWW@@@@@@@W#+nMWWWWWWWWWWWWWWWWWMMMWWW@@@@@@@@@WWMMWMWMMxMW@@WW
MMMMMMM@@@#########@@@@@WWWWWMMWWWWWWWWWWWWWMMWWWMMMMMMxxW@@@@@@@@@@@@WMWWWWWWWWWWWWWWWWWWWWWWWWWW@@@@@@@@@@WWWWWWxxMW@@WMW
WWMMMMWWWW@#############@@@@@@WW@@@@WWWWWWWWWWWWWWWWMMMMW@WW@@@@@@@@@@WWWWWWWWWWWWWWWWWWWW@@@@@@##@@#@@@@@@@@@@@@@WW@@@@WMW
WWWWWWWWMWW@@###############@@@@@@@@WWWWWWWWWWWWWWWWWMMMW@WMMMMMMMMxxMWWWWWWWWWWWWWWWW@@@#@@@@@###@##########@@@@@@@@@WWMMW
WWW@WWWWWWW@@@@@############@@#@@@@@WWWWWWWWWWWWWWWWWWWWW@Mnnnz#+#zzzzWWWWWWWWWWWWWWWW@@##########@##########@@@@@@@@WWWMWW
@@@@W@WWWWWWWWW@@############@#@@@@@WWWWWWW@@@@@@@WWWWWW@@WxnxMnzxxnnx@WWWWWWWWWWWWWW@@####@@#################@#@@@@WMWWMWW
@@@@@@@@WWWWMMMW@@@@#########@#@@@@@WWWWWWWWWWWWWWWW@@@@@@@MMxMn+xxxMW@WWWWWWWWWWWWWW@@####@@#####@@@########@##@@WWMMWWWWW
@@@@@WW@@WWWMMWWWWWW@@#######@#@@@W@WWWWWWWWWWWWWWWWW@@@@@@@WMMxnxMW@@@@WWWWWWWWWWWWW@@####@#####@@WW@@####@#@@@@@WWWMMMWWW
@@@@@@@####@@@@@WWWWW@@########@@WWWWWWWWWWWWWWWWWWWWWWW@@@@@@@@@@@@@@@WWWWWWWWWWWWW@@@#########@@WWWW@@@@####@@@WMWWMMMWWW
@@##############@@@@WW@@######@@WMWWWWWWWWWWWWWWWWWWWWWWW@@@#@######@@@WWWWWWWWWWWWWW@@#########@WWWMMW@@###@@@@WMMMWMMMWWW
@#########@@@@W@@@@@@W@@@@####@@MMMMMWWWWMMWWWWWWWWWWWWMMW@#@#######@@@WMMMMMWWWWWMWW@@@@@@####@@WWMMMW@@@##@@@@MMMMWMMMWWW
@########@@@WWWWW@@WWWWW@@@###@WMMMMMMWWMMMMMMMMMMWWMMMMMW@@@#######@@WWMMMMMMMMWWWW@@@@@@@@@##@@WWMMMMW@@@@@@WWMMMMWMMMWWW
@@#######@WWWWWMMMMWWWWWWW@@#@WWMWWWMMWWMMMMMMMMMMWMMMMMMW@@########@@WMMMMMMMWWWWWW@@@@@@@@@@@@WWWMMMMWWWW@@@WWMMMMWMMMMWW
@@#######@WWW@@WWMMWWW@WWWWW@@WWWWWWMMMWMMMMMMMMMMMMMMMMMW@@#########@WMMMMMMMWWWWWW@@@@@@@@@@@@WWWWWWMWWWWWWWWWMMMMWMMMMWW
@@@######@@WW@@@WWWWWWWWWWWWWWWWWWWWMMMWMMMMMMMMMMMMMMMMMW@@#########@WMMMMMMMMMWWWW@@@@@@@@@@@@WWWWWWMMWWWW@WWWMMMMWMMMMWW
@@@####@@@@WW@@@@WWWWWWWWWWWWWWWWWWWMWWWMMMMMMMMMMMMMMMWW@@##########@WMMMMMMMMMMMWW@@@@@@@@@@@@WWWWWWMMWWWW@WWWMMMMWMMMMWW
@@@####@@@@@@@@@@WWWWWWWWWWWWWWWWWWWMWWWMMMMMMMMMMMMMMWW@############@WMMMMMMMMMMWWW@@@@@@@@@@@@@WWWWWMMWWWW@WWWMMMMWMMMMWW
@@@####@@@@@@@@@@@WWWWWWWWWWWWWWWWWWWWWWMMMMMMMMMMMMMMMW@############@WMMMMMxxxMMMWW@@@@@@@@@@@@@@WWWWMMMWWW@WWWMMMMMMMMMWW
@@@###@@@@@@@@@@@@@WWWWWWWWWWWWWWWWWWWWWWMMMMMMMMMMMMMMW@############@WMMMMMMMxxxMMW@@@@@@@@@@@@@@WWWWWWWWWW@@WWMMMMMMMMMWW
@@@@#@@@@@@@@@@@@@@WWWWWWWWWWWW@WWWWWWWWWMMMMMMMMMMMMMMW@###########@@WMMMMMMMMMMxMMW@@@@@@@@@@@@@WWWWWWWWWW@WWWMMMMMMMMMWM
@@@@#@@@@@@@@@@@@@@@WWWWWWWWWW@@@WWWWWMMMMMWMMMMMMMMMMMWW@#########@@@WMMMMMMMMMMMMMWW@@@@@@@@@@@@WWWWWWWWWW@WWWMMMMMMMMMWM
@@@##@@#@@@@@@@@@@@@WWWWWWWWWW@@@@WWWWMMMMWWMMMMMMMMMMMMWW@#######@@@WWMMMMMMMMMMMMMMMW@@@@@@@@@@@WWWWWWWW@@@@WMMMMMMMMMMWM
@@@##@####@@W@@@@@@@@WWWWWWWWW@@@@@WWWWMMMWWWMMMMMMMMMMMMW@########@WWMMMMMMMMMMMMMMMMMW@@@@@W@@@@WWWWWWWW@@@@WMMMMMMMMMMMM
@@@@######@@@@@@@@@@@@@@WWWWWWWWWW@@WWWWMWWWWMMMMMMMMMMMMMW@#####@@WWMMMMMMMMMMMMMMMMMMMWW@@@WW@@@@WWWWWWW@@@@WMMMMMMMMMMMM
@@@@@######@WWWWWWWW@@@@WWWWWWWWWWWWWWWWWWWWWMMMMMMMMMMMWMW@###@@@WMMMMMMMMMMMMMMMMMMMMMWWW@@WWW@@@@@@@WWWWW@@WMMMMMMMMMMMM
@@@@@@@@###@WW@@@W@@@@@@@@@@WWWWWWMWWWWMWWWW@WMMMMMMMMMMWMM@@@@@@WWMMMMMMMMMMMMMMMMMWWMMWWW@@@WMW@@@@@@@@WWWW@WMMMMMMMMxMMM
@@@@@@@@##@@@@@@@@@@@@@@@WW@@@@WWWWWWWWMWWMM@@WMMMMMMMMMWWMW@@@@@WWWWMMMMMMMMWWWMxMW@WMMWWW@@@@WMW@@@@@@@WWWW@WMMMMMWMxMMMM
@@@#@@@@###@@@@@@@@@@@@@WWWW@@@@WWWWWWWMWWWM@@@WWMMMMWWMWWWWWWWWWWWMMMMMMMMMMWWMMMW@WWMMWWW@@@@@WWWW@@@@WWWWW@WWMMMMWMxMMMM
@@@@@@@@##@@@@@@@@@@@@@@WWWWW@@@@WWWWWWWWWWMW@@@WMMMWWWMMWWWWWWWMMMMMMMMMMMMMWWMMW@WMMzxWWW@@@@@@@@@@@@WWWWWWWWWMMWMMWxMMMW
@@@@@@@@@@@@@@@@@@@@@@@@WWWWWWWWWWWWWWWWWW@WW@@@@MMMWWWWMWWWWWWWMMMMMMMMMMMMMMWMW@WMWznxWWW@@@@@@@@@@@WWWWWWWWWWMM@@WMMMMMW
@@@@@@@@@@@@@@@@@@@@@@@@@WWWWWWWWWWWWWWWWW@@MWW@@@MMWWWWMWWWWWW@WWWWWWWWMMMMMMWWWWMMW*+zWWW@@@@@@@@@@@WWMMMWWWWWW@#@@WMMMWW
@@@@@@@@@@@@@@@@@@@@@@@@@WWWWWWWWWWWWWWWWW@@WMWW@@WMMWWWMMWWWWW@@WWWWWWWWMMMMWWWWMMMM*i+MWW@@@@@@@@@WWMMMMMMW@@@@##@@@MMMMW
@@@@@@@@@@@@@WW@@@@@@@@@@WWWWWWWWWWWWWWWWWW@WMMMW@@WWWWWMMMW@WW@@@@WWWWWWWWMMW@WMMMxMz;izWWW@@##@WWWWWW@@@@@@######@@@WMMMM
@@@@@W@@@@@@@@@@@@@@@@@@@@WWWWWWWWWWWWWWWWW@@MMMMW@@WMWWWMMW@W@@@@@@WWWWWWWMWW@WWMxxxM#*zMW@@#####################@@@@@MMMM
@@@#@WW@@@@@@@@@@@@@@@@@@@WWWWWWWWWWWWWWWW@@@MMMMW@@WMMWWWMWWW@@@@@@WWWWWWWMMWWWWMMMMMWMzzW@@####################@@@@@WWMMM
@@@##@W@@@@@@@@@@@@@@@@@@@WWWWWWWWWWWWWWWWW@@MMMMWW@WMMMWWWWW@@@@@@@WWWWWWWMxnxWWWWWMW@WWMW@#####################@@@@@WMWWW
@@@##@W@@@#@@@@@@@@@@@@@@@@WWWWWWWWWWWWWWWW@WMMMMMW@@WMMWWWWW@@@@@@@WWWWWMxz+*zWWWMMMMWMM@@@#####################@@@@@@WWWW
@@@@#@W@@@#@@@@@@@@@@@@@@@@WWWWWWWMMMWWWW@@@@WWWWWW@@@MMMWWWWWW@@@WWWWWMn+****z@WMMMMWMMMW@@#####################@@@@@@WMWW
@@@@#@W@@@@@@@@@@@@@@@@@@@@WWWWMMMMMMMWWWWWWW@@@@W@@@@MxxxxMMMWWWWWMxz+*******z@WMMMWWMMMWW@@####################@@@@@@WWWW
@@@@#@W@@@@@@@@@@@@@@@WW@@WWWWWMMMMMMMWWWWWWWW@@@WW@@@n****+++++###+*i********n@WWWWWMMMMWW@#####################@@@@@@WMWW
@@@@@@WWW@@@@@@@@@@@@WWW@WWWMMMMWWMxMMW@@@WWWWW@@@@@@@x***********************x@@@WWWWMMMMMW@####################@@@@@@WMWW
@@@@@@@WWWW@@WWWWW@@@WWWWWWMMMW@WMxxMWW@@WWWMWWWW@@@@@W***********************M@@@@W@@@WMMMMW#####################@@@@@WWWW
@@@@@@@@@##@@WWWWWWWWWWWWWWWWW@WMxxxMWWWWWWMMMMMMW@@@@W+*********************+M@@WMWWMW@MMMMW#####################@@@@@@WWW
@@@@@@@@########@@@@@@@@@@#@@@@xxnxxMMWWWWWMMMMMMWW@@@@#*********************+W@@MMMMMMWWMMMM#####################@@@@@@WWW
@@@@@@@@####################@@MxxnnxMMW@@WWMWWWWWWW@@@@n*********************+W@WMMMMMMMMMMMM@############@@@@@@@WWWWMMMMxx
@@@@@@@@####################@WMxnnnnxWW@@WWWMMMMWWWW@@@M**++*****************#WWWMMMMMMMMMMMM@@@@@@WWWWMMMMMMMMMMxxxxxxxxxx
@@@@@@@@@###################@WMxxxxxxMW@@WWWWWWWWWWWW@@M+++++++************+zxWWWMMMWMMMMMMMMMMMMxxxxxxxxxxxxxxxxxxxxxxxxxx
@@@@@@@@@###################@@MMxxxxMW@@@WWWWWWWWWWMWWWWn#++++++**********+xWWWWWWWWWWWWMMMWMMxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
@@@@@@@@##################@@@@WMMMMMMW@@@WWW@@@W@@@WWWW@@Wn++++++******++#nW@WWWWWWWWWWWWMWWMxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
@@@@@@@@@@@@@@@@@@WWWWWWWWWMMMMMMMMMMMW@#@W@@@@W@@@@@@@@@@MzzzzzzzzznnnxxW@@@WWWWWWWWWWWWWMxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
@@@WWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMW@#@@@@@@@@@W@@@@@@WMMMMMMMMMxxxMMW@@@@WWWWWWWWWWWMxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWW@@@@@@@@@@@@@@WMMxxMMMMMMMMMMMMW@@@@WWWWWWWWWMxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMW@@@@@@@@@@@@@WMxMMMMMMMMMMMMMxMW@@@WWWWWWWWMxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMW@@@@@@@@@@@@WWMMMMMMMMMMMMMMWW@@@@@@W@@WWWMxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMW@@@@@@@@@@@@WWWWWWWWWWWW@W@@@@@@@@@@@@@@@WMxxxxxxxxxxxxxxxxxxxxxxxMMxxxxxxxxxx
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM@@@@@@@@@@@@@WWWWWWWWWW@@@@@@@@@@@@WMW@@@MMMMMMMMMMMMMMMMMMMMMxxMMMMMMMMMMMMMM
MMMMxxMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMW@@@@W@@@@@@@W@@@@@@WW@@@@W@WW@@@@@@@@WWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMx+i*xMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWW@@@@##@@@@@@@@@WWWWWMxxxxMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMx*;:#MMWWWWWWWWWWWWWWWMMMMMMMMMWWWWMMMMMMMMMMMMMW@@@@@@@@@@@@WWMxnnnnz##+#nnnnxnnnxxxxMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
xx+;;ixMMWWWWWWWWWWWWWWWMMMMMMMMWWWWMMMMMMMMMMMMMMMMMMWWWWWWWWMMxnz#+++++++++++++***++#znxMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
xn*;;zMMMWWWWWWWWWWWWWMMMMMMMMMWWWWWMMMMMMMMMMMMMMMMxxnnnnxnnz###+++++#+++++++++*********+#znnxxxMMMMMMMMMMMMMMMMMMMMMMMMMM
x*;:+MMMMMWWWWWMMWWMMMMMMMMMMMMWWWWMMMMMMMMMWWMMMMnz#+***++++++++****+++++**+++***************++#nxxxMMMMMMMMMMMMMMMMMMMMMM
*;:*xMMMMMWWWWWMMWMMMMMMMMMMMMMMWWWMMMMMMMMMMMxn#+********************+*+++************************+#nxMMMMMMMMMMMMMMMMMMMM
;;inMMMWWWWWWWWWWWWMMMMMMMMMMMMWWWMMMMMMMMMxz++********************++*#*+++++**+**********************+#znxMMMMMMMMMMMMMMMM
:;zMMWWWWWWWWWWWWWWMMWWMMMMMMMMWWMMMMMnnnz+***********************+++++*+++++++++**************************#znxMMMMMMMMMMMM
;#MWWWWWWWWWWWWWWWMMMMMMMMMMMMMWWMxxxz********+++**************+**+++*+**+*+*++*++*****************************+#znnnxxMMMM
#MWWWWWWWWWWWWWWWWWWMMMMMMMMMMMMx#+++**+++++++++++***********i*****++++**+##+*+nxn+***********************************++#nx
MMWWWWWWWWWWWWWWWWWWMMMMMMMMMMMn+****+++++++++++**************+++*i#nn+**#xx++#xxz++**************************************+
MMMMMMMMMMWWWWWWMMWWWMMMMMMxxn#+******+++++++******i**********zxn*i#xx#++#xn++#zzz+****************************************
MMMMMMMMMMMMWWMMMMWWMz++#z#+++++*******+++++++****iiii********#nx+*+nxz+#z##++++*++****************************************
MMMMMMMMMMWWMMMMMMMMz+****++++#+*********+++++*******iii******+zz#++zzz#+++*+#**++****i***+#*******************************
MMWWWMMMMMMMMMMxnz#++++++++++##**********+++++##****ii***iiiii+++#+##++++***##znz+***++#znn#*******************************
WWWWWMMMMMMMxnz+**+++++++**++#+***********++++nx*ii*ii+nz++**ii*#zzzzz#zznnnnn#++#znxxxxxxn*******#************************
WWWWMMMxxnz#++++++++++++****+#+************+++xn*******nxxxxnz###znzz#zzzz#+###zxxMxxxxxxxz*******##+##+*************iiiiii
MMxxnz#+++++++++++++++++****++************+z#+xnnn+****nxxxxxxxxxxnzznnnnnnnxxxxxxxxxxxxxxn*******+nnzn+*+*iiiiiiiiiiiiiiii
##++++++++++++++++++++++***+#+************+xxnnnnn+i***nxxxz#nnz##z#*#n##########znnxxxxxxx+*******#xzn*iz+****************
+***+++++++++++++++++++++++++***********++*+znxz+*iiii*nxn+*+#xz*+zznzzz++nxz*zxx#+++#nnxxxz***ii*z#nxz*+xz++++++++++++++++
***************************************i#nz*i#z++*ii*i*nn+*n**+i#nnnzznzz##+++##z+#xxz+zxxxn****ii+nnx#+zxn+++++++++++#####
************************i*iiiiiiiiiii**i+xxz+zz*+z##***nzinxx+;znnnz##++ii#zxxxxn##zn*###nxn*i*z+i*#xxzzxxn#++++###########
*****************************iiiii*i*****nxnz#z+nMx#**+n#+nxniznnnzzznz#;;##z#z#znn#*#nx##nn+**zn#**+nxxMxx################
*****+++******************************++*nxxnzxxMWx+i*+n*#*z#+xnnz#zzz+#;;##zz#z#nnnzizxn++n#**#xn#++zMMMMx###############z
*****++++++*******************+++++#+++++#xMMxxxMWx*i*+n*zi+izxxn+**+#z#i;+##z##zzxxx##n+z+x#**#xMx##nMMMMn#############zzz
###+++++++++++***********+***++#########z#nMMMxxxxn*ii+z+xnzixMx+***+#nx*iznnMxnMnxMMx#nzM#nz**#xMMn#nxMMMz##########zzzzzz
zzzz###########++***+++++++++++######zzzxz#zxMMxz#n#*i+z#MMz*xMx*i**++#n+*nxnMMnxxnMMx#xWWznz++#xMMxznMMMxz########zzzzzzzz
#zzz####zzzzzzz####++###zzz##+####+++##zxn##nMx###zn++##zxM##xxnn#++++###+nxnxxnxxnxMMznWMnnn++#xMMMnnMMMznz#######zzzzzzzz
zzzzzzzzzzzzzzzz###zzzzznnnzzzzz#######zxMn#nMMn#zxM#+z#n#z+zxxnnxz+++####zxnnxnnnzxMMznxxnzn##+zxMMxxMMnzxz#######zzzzzzzz
Mnzzzzzzzzzzznzzzzzznnnnnnnnzzzzzz#####zMWMznMMxnxWWz*#+#*+*zxxz**+**+#zzzzz##+++++xMMznzznznz##znMMMMMMxMMnzzzzzzzzzzzzzzz
WWxzzzzzzzzznnnzznnnnnnnnnnnzzzzznz####zxWWMxMnnMWWWx##+nzx+zxxn++++#zxxzzzzzzzznnzxMMznxxxnxnzzMznMMMMxMWWnzzzzzzzzzzzz###
@@Wxzzzzzznnnnnnnnnnnnnnnnnnzzzzznzz####nWWWMznMWWWMxzz#zMM##xxnxMxxMxMMz#zzzzzznMnMMMzMWWnnnnnnMMznMMnnMWMnzzzzzzzzzzzzzzz
@@WWMnzzzznnnnnnnnnnnnznnnnnzzzzznnz####zMWWMnxWWWMMxnnzzMMz+xxxnMxxMxMMz#nnzzz#zzxMMx#MMWznnzzxWWxznMzxMWMnzzzzzzzzzzzzzzz
@@@@WMnzzzznnnnnnnnnnnnnnnxnzzzzznnzz###znMWMxMMMxnnxxxxzxzz+xMMnxMxMMxMz#xMxzz##zMMMnzzzM#MnzzxWWWx#xnMWWMzzzzzzzzzzzzzzzz
@@@@@WWxzzznnnnnnnnnnnnnnnxnzzzzznnnz####znMWMMxzznxMxxMzn+z+nMMxxMnxxnxz#nxnnzzznWWMzxxnnzMnzznWWWM#nxMWMn#zzzzzzzzzzzzzzz
@@@@@WWWMnznnnnnnnnnnnnnnnxnzzzzznnnnz#zzzzzxMMnznMWMxxWnxxMz#MMMxnxxMMMz#MxMMxxnMMMnnWWWnxMzzznW@WMznMWMMz##zzzzzzzzzzzzzz
@@@@W@WWWWMnnnnnnnnnnnnnnnxnzzzzzznxnzzzMnzznMMznMWWMxMWxnWWM#xMWMxxxxMxz#nxMxxxMWMxzxWWxnMMzz#zWWWMzxWWMMz####zzzzzzzzzzzz
@@@@W@@WWWWMxnnnnnnnnnnnnxxnzzzzzznnxnzzMWxnMMMxWWWWMxMWWnMWWn#MWMMMxnnn##znnxMWMMMznznMnMWMz##zMWWWMMWWMMz####zzzzzzzzzzzz
@@@@W@WWWWWWWMnnnnnnnnnnnnnnzzz###znnxnnMWWxnxMWWWWMxxMWWMnMznnzMWMMMMMxxnxxxMMMMMzxWxxzMWWMzz##xWWWWWWWMx#######zznzzzzzzz
@@@@@@WWWWWWWWWxnnnnnnnnnnnzzzzz##znxxxnMWWMMnxWWWMnxMMWWWxnxMWnzxMMMMMMMMMMMMMMxzxWWMzxWWWMz###zWWWWWWWMz#######zznnzzzzzz
@@@@@@@WWWWWWWWWMnnnnnnnnnnzzzzz##zznxxxxMWWWMxWWMnnMMMMWWWnxWWWnzzxMMMMMMMMMMMnznnWMznMWWWMz##znxWWWWWMx##zzz###zznnzzzzzz