#include<stdio.h>
#include<string.h>
int compare(char *s,int n1,int n2,int p1,int p2)
{
int cp=0,cn=0,nl,pl,ic,jc,kc=0,fc=0;
///////////
pl = p2-p1;
nl = n2-n1;
ic=p1;
while(fc==0&&ic<=p2)
{
if(s[ic++]=='0')
{
cp++;
}
else
fc=1;
}
jc = n1;
fc=0;
while(fc==0&&jc<=n2)
{
if(s[jc++]=='0')
{
cn++;
}
else
{
fc=1;
}
}
if((pl-cp)>(nl-cn)) return 1;
else if((pl-cp)==(nl-cn))
{
while(kc<=pl)
{
if(s[p1 + kc]>s[n1 + kc]) return 1;
else if(s[p1 + kc]==s[n1 +kc])
kc++;
else
return 2;
}
}
else
return 2;
///////////
}
int main()
{
char s[1001],n[1001];
int p1=0,p2=0,n1=0,n2=0,i,j,len,flag=0,alpha=0,res;
scanf("%s",s);
len = strlen(s);
for(i=0;i<len;i++)
{
if(48<=s[i]&&s[i]<58)
{
n[i]=s[i];
n2++;
if(i==len-1)
n2=i;
}
else if(flag==0)
{
n[i]='9';
alpha = i;
flag=1;
n2++;
}
else
{
n[i]='9';
res = compare(n,n1,n2-1,p1,p2);
if(res==2)
{
p1=n1;
p2=n2-1;
}
n1=alpha;
res=compare(n,n1,n2-1,p1,p2);
if(res==2)
{
p1=n1;
p2=n2-1;
}
n1=alpha+1;
if(i==len-1)
n2=i;
else
n2=i+1;
alpha=i;
flag=1;
}
}
res = compare(n,n1,n2,p1,p2);
if(res==2)
{
p1=n1;
p2=n2;
}
flag=0;
for(i=p1;i<=p2;i++)
{
if(flag==0&&p1!=p2&&n[i]=='0')
{if(i==p2)
printf("%c\n",n[i]);
}
else
{
flag=1;
printf("%c",n[i]);
}
}
return 0;
}
I2luY2x1ZGU8c3RkaW8uaD4KI2luY2x1ZGU8c3RyaW5nLmg+CmludCBjb21wYXJlKGNoYXIgKnMsaW50IG4xLGludCBuMixpbnQgcDEsaW50IHAyKQp7CiAgICBpbnQgY3A9MCxjbj0wLG5sLHBsLGljLGpjLGtjPTAsZmM9MDsKICAgIC8vLy8vLy8vLy8vCiAgICBwbCA9IHAyLXAxOwogICAgbmwgPSBuMi1uMTsKICAgIGljPXAxOwogICAgIHdoaWxlKGZjPT0wJiZpYzw9cDIpCiAgICB7CgogICAgICAgIGlmKHNbaWMrK109PScwJykKICAgICAgICB7CiAgICAgICAgICAgIGNwKys7CiAgICAgICAgfQogICAgICAgIGVsc2UKICAgICAgICAgICAgZmM9MTsKICAgIH0KICAgIGpjID0gbjE7CiAgICBmYz0wOwogICAgd2hpbGUoZmM9PTAmJmpjPD1uMikKICAgIHsKICAgICAgICBpZihzW2pjKytdPT0nMCcpCiAgICAgICAgewogICAgICAgICAgICBjbisrOwogICAgICAgIH0KICAgICAgICBlbHNlCiAgICAgICAgewogICAgICAgICAgICBmYz0xOwogICAgICAgIH0KICAgIH0KICAgIGlmKChwbC1jcCk+KG5sLWNuKSkgcmV0dXJuIDE7CiAgICBlbHNlIGlmKChwbC1jcCk9PShubC1jbikpCiAgICB7CiAgICAgICAgd2hpbGUoa2M8PXBsKQogICAgICAgIHsKICAgICAgICAgICAgaWYoc1twMSArIGtjXT5zW24xICsga2NdKSByZXR1cm4gMTsKICAgICAgICAgICAgZWxzZSBpZihzW3AxICsga2NdPT1zW24xICtrY10pCiAgICAgICAgICAgICAgICBrYysrOwogICAgICAgICAgICBlbHNlCiAgICAgICAgICAgICAgICByZXR1cm4gMjsKICAgICAgICB9CiAgICB9CiAgICBlbHNlCiAgICAgICAgcmV0dXJuIDI7CiAgICAvLy8vLy8vLy8vLwp9CmludCBtYWluKCkKewogICAgY2hhciBzWzEwMDFdLG5bMTAwMV07CiAgICBpbnQgcDE9MCxwMj0wLG4xPTAsbjI9MCxpLGosbGVuLGZsYWc9MCxhbHBoYT0wLHJlczsKICAgIHNjYW5mKCIlcyIscyk7CiAgICBsZW4gPSBzdHJsZW4ocyk7CiAgICBmb3IoaT0wO2k8bGVuO2krKykKICAgIHsKICAgICAgICBpZig0ODw9c1tpXSYmc1tpXTw1OCkKICAgICAgICB7CiAgICAgICAgICAgIG5baV09c1tpXTsKICAgICAgICAgICAgbjIrKzsKICAgICAgICAgICAgaWYoaT09bGVuLTEpCiAgICAgICAgICAgICAgICBuMj1pOwogICAgICAgIH0KICAgICAgICBlbHNlIGlmKGZsYWc9PTApCiAgICAgICAgewogICAgICAgICAgICBuW2ldPSc5JzsKICAgICAgICAgICAgYWxwaGEgPSBpOwogICAgICAgICAgICBmbGFnPTE7CiAgICAgICAgICAgIG4yKys7CiAgICAgICAgfQogICAgICAgIGVsc2UKICAgICAgICB7CiAgICAgICAgICAgIG5baV09JzknOwogICAgICAgICAgICByZXMgPSBjb21wYXJlKG4sbjEsbjItMSxwMSxwMik7CiAgICAgICAgICAgIAogICAgICAgICAgICBpZihyZXM9PTIpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHAxPW4xOwogICAgICAgICAgICAgICAgcDI9bjItMTsKICAgICAgICAgICAgfQogICAgICAgICAgICBuMT1hbHBoYTsKICAgICAgICAgICAgcmVzPWNvbXBhcmUobixuMSxuMi0xLHAxLHAyKTsKICAgICAgICAgICAgCiAgICAgICAgICAgIGlmKHJlcz09MikKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgcDE9bjE7CiAgICAgICAgICAgICAgICBwMj1uMi0xOwogICAgICAgICAgICB9CiAgICAgICAgICAgIG4xPWFscGhhKzE7CiAgICAgICAgICAgIGlmKGk9PWxlbi0xKQogICAgICAgICAgICAgICAgbjI9aTsKICAgICAgICAgICAgZWxzZQogICAgICAgICAgICAgICAgbjI9aSsxOwogICAgICAgICAgICBhbHBoYT1pOwogICAgICAgICAgICBmbGFnPTE7CiAgICAgICAgfQoKICAgIH0KICAgIHJlcyA9IGNvbXBhcmUobixuMSxuMixwMSxwMik7CiAgICAKICAgIGlmKHJlcz09MikKICAgIHsKICAgICAgICBwMT1uMTsKICAgICAgICBwMj1uMjsKICAgIH0KICAgIGZsYWc9MDsKICAgIGZvcihpPXAxO2k8PXAyO2krKykKICAgIHsKICAgICAgICBpZihmbGFnPT0wJiZwMSE9cDImJm5baV09PScwJykKICAgICAgICAgICAge2lmKGk9PXAyKQogICAgICAgICAgICAgcHJpbnRmKCIlY1xuIixuW2ldKTsKICAgICAgICAgICAgfQogICAgICAgIGVsc2UKICAgICAgICB7CiAgICAgICAgICAgIGZsYWc9MTsKICAgICAgICAgICAgcHJpbnRmKCIlYyIsbltpXSk7CiAgICAgICAgfQogICAgfQogICAgcmV0dXJuIDA7Cn0K