#include <set>
#include <bitset>
#include <queue>
#include <deque>
#include <set>
#include <bitset>
#include <queue>
#include <deque>
#include <stack>
#include <sstream>
#include <iostream>
#include <iomanip>
#include <cstdio>
#include <cstdlib>
#include <cmath>
#include <ctime>
#include <cstring>
#include <string>
#include <cassert>
#include <vector>
#include <list>
#include <map>
#include <algorithm>
#include <functional>
#include <numeric>
#include <utility>
using namespace std;
// -------------------- Khai bao cac container --------------------
typedef vector <int> vi;
typedef vector <vi> vvi;
typedef pair <int, int> ii;
typedef vector <ii> vii;
typedef vector <string> vs;
typedef long long int64; //NOTES:int64
typedef unsigned long long uint64; //NOTES:uint64
typedef unsigned uint;
const double pi = acos(-1.0); //NOTES:pi
const double eps = 1e-11; //NOTES:eps
const int MAXI = 0x7fffffff;
const int dx[] = {1, 0, -1, 0};
const int dy[] = {0, 1, 0, -1};
const char dz[] = "SENW";
// -------------------- Dinh nghia lai cac phep toan --------------------
#define forn(i,a,b) for (int i=(a),_b=(b); i<_b; i++)
#define rforn(i,b,a) for (int i=(b)-1,_a=(a); i>=_a; i--)
#define Reset(a,b) memset((a),(b),sizeof(a))
#define endline putchar('\n')
#define space putchar(' ')
#define EXIT(x) {cout << x;return 0;}
#define fi first
#define se second
#define pb push_back
#define all(x) (x).begin(),(x).end()
#define mp(X,Y) make_pair(X,Y)
#define foreach(i, c) for(typeof((c).begin()) i = (c).begin(); i != (c).end(); i++)
#define present(c, x) ((c).find(x) != (c).end())
#define sz(a) a.size()
#define two(x) (1 << (x))
#define two64(x) (((int64)(1)) << (x))
#define S(x) scanf("%d",&x);
#define input freopen("input.txt","r",stdin);
#define deb(i,a,n) for(i=0;i<n;i++){cout<<a[i]<<" ";}
#define db(x,y) printf("%d %d\n",x,y);
#define op(x) printf("%d\n",x);
char s[1001];
//int max1[1001];
//int points[1001];
int main()
{
//input;
string out[1001];
string outb,outa,max1,max2,out1,out2;
int points[1001],i,j=0,k,length,templemgth=0,l;
scanf("%s",&s);
length=strlen(s);
for(i=0;i<length;i++)
{
if(s[i]>64&&s[i]<91)
{
points[j]=i;
++j;
templemgth=0;
}
}
//cout<<"j="<<j<<endl;
//cout<<j<<endl;
/*for(k=0;k<j;k++)
{
cout<<points[k]<<endl;
}*/
if(j==0)
{
//cout<<"y1"<<endl;
for(i=0;i<length;i++)
{
if(s[i]!='0')
{
l=i;
break;
}
}
if(i==length)
{
cout<<'0';
return 0;
}
else
{
for(i=l;i<length;i++)
{
cout<<s[i];
}
return 0;
}
}
if(j==1)
{
//cout<<"y2"<<endl;
for(i=0;i<length;i++)
{
if(s[i]!='0')
{
l=i;
break;
}
}
for(i=l;i<length;i++)
{
if(s[i]>64&&s[i]<91)
cout<<'9';
else
cout<<s[i];
}
return 0;
}
if(j==2)
{
//cout<<"y3"<<endl;
for(k=0;k<points[1];k++)
{
if(s[k]>47&&s[k]<58)
out[1]=out[1]+s[k];
else
out[1]=out[1]+'9';
}
for(k=points[0]+1;k<length;k++)
{
if(s[k]>47&&s[k]<58)
out[2]=out[2]+s[k];
else
out[2]=out[2]+'9';
}
if(out[1]<out[2])
{
for(i=0;i<out2.length();i++)
{
if(out2[i]!='0')
{
l=i;
break;
}
}
for(i=l;i<out2.length();i++)
{
cout<<out2[i];
}
return 0;
}
else
{
for(i=0;i<out1.length();i++)
{
if(out1[i]!='0')
{
l=i;
break;
}
}
for(i=l;i<out1.length();i++)
{
cout<<out1[i];
}
return 0;
}
}
if(j>2)
{
for(i=0;i<j-2;i++)
{
//cout<<"i="<<i<<endl;
for(k=points[i]+1;k<points[i+2];k++)
{
if(s[k]>47&&s[k]<58)
out[i]=out[i]+s[k];
else
out[i]=out[i]+'9';
}
}
if(points[j-1]<length)
{
for(i=points[j-1]+1;i<length;i++)
outb=outb+s[i];
}
if(points[0]>0)
{
for(k=0;k<points[1];k++)
{
if(s[k]>47&&s[k]<58)
outa=outa+s[k];
else
outa=outa+'9';
}
}
sort(out,out+j-2);
if(outa>outb)
{
if(outa>out[j-3])
{
for(i=0;i<outa.length();i++)
{
if(outa[i]!='0')
{
l=i;
break;
}
}
for(i=l;i<outa.length();i++)
{
if(outa[i]>64&&s[i]<91)
cout<<'9';
else
cout<<outa[i];
}
return 0;
}
else
{
for(i=0;i<out[j-3].length();i++)
{
if(out[j-3][i]!='0')
{
l=i;
break;
}
}
for(i=l;i<out[j-3].length();i++)
{
if(out[j-3][i]>64&&out[j-3][i]<91)
cout<<'9';
else
cout<<out[j-3][i];
}
return 0;
}
}
else
{
if(outb<out[j-3])
{
for(i=0;i<out[j-3].length();i++)
{
if(out[j-3][i]!='0')
{
l=i;
break;
}
}
for(i=l;i<out[j-3].length();i++)
{
if(out[j-3][i]>64&&out[j-3][i]<91)
cout<<'9';
else
cout<<out[j-3][i];
}
return 0;
}
else
{
for(i=0;i<outb.length();i++)
{
if(outb[i]!='0')
{
l=i;
break;
}
}
for(i=l;i<outb.length();i++)
{
if(outb[i]>64&&out[j-3][i]<91)
cout<<'9';
else
cout<<outb[i];
}
return 0;
}
}
return 0;
}
//cout<<out[0]<<endl;
//cout<<out[1]<<endl;
//cout<<points[j-1];
}
I2luY2x1ZGUgPHNldD4KI2luY2x1ZGUgPGJpdHNldD4KI2luY2x1ZGUgPHF1ZXVlPgojaW5jbHVkZSA8ZGVxdWU+CiNpbmNsdWRlIDxzZXQ+CiNpbmNsdWRlIDxiaXRzZXQ+CiNpbmNsdWRlIDxxdWV1ZT4KI2luY2x1ZGUgPGRlcXVlPgojaW5jbHVkZSA8c3RhY2s+CiNpbmNsdWRlIDxzc3RyZWFtPgojaW5jbHVkZSA8aW9zdHJlYW0+CiNpbmNsdWRlIDxpb21hbmlwPgoKI2luY2x1ZGUgPGNzdGRpbz4KI2luY2x1ZGUgPGNzdGRsaWI+CiNpbmNsdWRlIDxjbWF0aD4KI2luY2x1ZGUgPGN0aW1lPgojaW5jbHVkZSA8Y3N0cmluZz4KI2luY2x1ZGUgPHN0cmluZz4KI2luY2x1ZGUgPGNhc3NlcnQ+CgojaW5jbHVkZSA8dmVjdG9yPgojaW5jbHVkZSA8bGlzdD4KI2luY2x1ZGUgPG1hcD4KI2luY2x1ZGUgPGFsZ29yaXRobT4KI2luY2x1ZGUgPGZ1bmN0aW9uYWw+CiNpbmNsdWRlIDxudW1lcmljPgojaW5jbHVkZSA8dXRpbGl0eT4KCnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgovLyAtLS0tLS0tLS0tLS0tLS0tLS0tLSBLaGFpIGJhbyBjYWMgY29udGFpbmVyIC0tLS0tLS0tLS0tLS0tLS0tLS0tCnR5cGVkZWYgdmVjdG9yIDxpbnQ+IHZpOwp0eXBlZGVmIHZlY3RvciA8dmk+IHZ2aTsKdHlwZWRlZiBwYWlyIDxpbnQsIGludD4gaWk7CnR5cGVkZWYgdmVjdG9yIDxpaT4gdmlpOwp0eXBlZGVmIHZlY3RvciA8c3RyaW5nPiB2czsKCnR5cGVkZWYgbG9uZyBsb25nIGludDY0OyAvL05PVEVTOmludDY0CnR5cGVkZWYgdW5zaWduZWQgbG9uZyBsb25nIHVpbnQ2NDsgLy9OT1RFUzp1aW50NjQKdHlwZWRlZiB1bnNpZ25lZCB1aW50OwoKY29uc3QgZG91YmxlIHBpID0gYWNvcygtMS4wKTsgLy9OT1RFUzpwaQpjb25zdCBkb3VibGUgZXBzID0gMWUtMTE7IC8vTk9URVM6ZXBzCmNvbnN0IGludCBNQVhJID0gMHg3ZmZmZmZmZjsKY29uc3QgaW50IGR4W10gPSB7MSwgMCwgLTEsIDB9Owpjb25zdCBpbnQgZHlbXSA9IHswLCAxLCAwLCAtMX07CmNvbnN0IGNoYXIgZHpbXSA9ICJTRU5XIjsKCi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tIERpbmggbmdoaWEgbGFpIGNhYyBwaGVwIHRvYW4gLS0tLS0tLS0tLS0tLS0tLS0tLS0KI2RlZmluZSBmb3JuKGksYSxiKSAgICAgZm9yIChpbnQgaT0oYSksX2I9KGIpOyBpPF9iOyBpKyspCiNkZWZpbmUgcmZvcm4oaSxiLGEpICAgIGZvciAoaW50IGk9KGIpLTEsX2E9KGEpOyBpPj1fYTsgaS0tKQojZGVmaW5lIFJlc2V0KGEsYikgICAgICBtZW1zZXQoKGEpLChiKSxzaXplb2YoYSkpCgojZGVmaW5lIGVuZGxpbmUgICAgICAgICBwdXRjaGFyKCdcbicpCiNkZWZpbmUgc3BhY2UgICAgICAgICAgIHB1dGNoYXIoJyAnKQojZGVmaW5lIEVYSVQoeCkgICAgICAgICB7Y291dCA8PCB4O3JldHVybiAwO30KCiNkZWZpbmUgZmkgICAgICAgICAgICAgIGZpcnN0CiNkZWZpbmUgc2UgICAgICAgICAgICAgIHNlY29uZAojZGVmaW5lIHBiICAgICAgICAgICAgICBwdXNoX2JhY2sKI2RlZmluZSBhbGwoeCkgICAgICAgICAgKHgpLmJlZ2luKCksKHgpLmVuZCgpCiNkZWZpbmUgbXAoWCxZKSAgICAgICAgIG1ha2VfcGFpcihYLFkpCiNkZWZpbmUgZm9yZWFjaChpLCBjKSAgIGZvcih0eXBlb2YoKGMpLmJlZ2luKCkpIGkgPSAoYykuYmVnaW4oKTsgaSAhPSAoYykuZW5kKCk7IGkrKykKI2RlZmluZSBwcmVzZW50KGMsIHgpICAgKChjKS5maW5kKHgpICE9IChjKS5lbmQoKSkKI2RlZmluZSBzeihhKSAgICAgICAgICAgYS5zaXplKCkKCiNkZWZpbmUgdHdvKHgpICAgICAgICAgICgxIDw8ICh4KSkKI2RlZmluZSB0d282NCh4KSAgICAgICAgKCgoaW50NjQpKDEpKSA8PCAoeCkpCiNkZWZpbmUgUyh4KSAgICAgICAgICAgIHNjYW5mKCIlZCIsJngpOwojZGVmaW5lIGlucHV0IGZyZW9wZW4oImlucHV0LnR4dCIsInIiLHN0ZGluKTsKI2RlZmluZSBkZWIoaSxhLG4pIGZvcihpPTA7aTxuO2krKyl7Y291dDw8YVtpXTw8IiAiO30KI2RlZmluZSBkYih4LHkpICAgICAgICAgIHByaW50ZigiJWQgJWRcbiIseCx5KTsKI2RlZmluZSBvcCh4KSAgICAJCSBwcmludGYoIiVkXG4iLHgpOwoKY2hhciBzWzEwMDFdOwovL2ludCBtYXgxWzEwMDFdOwovL2ludCBwb2ludHNbMTAwMV07CgppbnQgbWFpbigpCnsKCS8vaW5wdXQ7CglzdHJpbmcgb3V0WzEwMDFdOwoJc3RyaW5nIG91dGIsb3V0YSxtYXgxLG1heDIsb3V0MSxvdXQyOwoJaW50IHBvaW50c1sxMDAxXSxpLGo9MCxrLGxlbmd0aCx0ZW1wbGVtZ3RoPTAsbDsKCXNjYW5mKCIlcyIsJnMpOwoJbGVuZ3RoPXN0cmxlbihzKTsKCWZvcihpPTA7aTxsZW5ndGg7aSsrKQoJewoJCWlmKHNbaV0+NjQmJnNbaV08OTEpCgkJewoJCQlwb2ludHNbal09aTsKCQkJKytqOwoJCQl0ZW1wbGVtZ3RoPTA7CgkJfQoKCX0KCgkvL2NvdXQ8PCJqPSI8PGo8PGVuZGw7CgoJLy9jb3V0PDxqPDxlbmRsOwoJLypmb3Ioaz0wO2s8ajtrKyspCgl7CgkJY291dDw8cG9pbnRzW2tdPDxlbmRsOwoJfSovCgkJaWYoaj09MCkKCQl7CgkJCS8vY291dDw8InkxIjw8ZW5kbDsKCQkJZm9yKGk9MDtpPGxlbmd0aDtpKyspCgkJCXsKCQkJCWlmKHNbaV0hPScwJykKCQkJCXsKCQkJCQlsPWk7CgkJCQkJYnJlYWs7CgkJCQl9CgkJCX0KCQkJaWYoaT09bGVuZ3RoKQoJCQl7CgkJCQljb3V0PDwnMCc7CgkJCQlyZXR1cm4gMDsKCQkJfQoJCQllbHNlCgkJCXsKCQkJCWZvcihpPWw7aTxsZW5ndGg7aSsrKQoJCQl7CgkJCQljb3V0PDxzW2ldOwoJCQl9CgkJCXJldHVybiAwOwoJCQl9CgkJfQoJCglpZihqPT0xKQoJewoJCS8vY291dDw8InkyIjw8ZW5kbDsKCQlmb3IoaT0wO2k8bGVuZ3RoO2krKykKCQkJewoJCQkJaWYoc1tpXSE9JzAnKQoJCQkJewoJCQkJCWw9aTsKCQkJCQlicmVhazsKCQkJCX0KCQkJfQoJCQlmb3IoaT1sO2k8bGVuZ3RoO2krKykKCQkJewoJCQkJaWYoc1tpXT42NCYmc1tpXTw5MSkKCQkJCQljb3V0PDwnOSc7CgkJCQllbHNlCgkJCQkJY291dDw8c1tpXTsKCQkJfQoJCQlyZXR1cm4gMDsKCX0KCglpZihqPT0yKQoJewoJCS8vY291dDw8InkzIjw8ZW5kbDsKCQlmb3Ioaz0wO2s8cG9pbnRzWzFdO2srKykKCQl7CgkJCWlmKHNba10+NDcmJnNba108NTgpCgkJCQlvdXRbMV09b3V0WzFdK3Nba107CgkJCWVsc2UKCQkJCW91dFsxXT1vdXRbMV0rJzknOwoJCX0KCQlmb3Ioaz1wb2ludHNbMF0rMTtrPGxlbmd0aDtrKyspCgkJewoJCQlpZihzW2tdPjQ3JiZzW2tdPDU4KQoJCQkJb3V0WzJdPW91dFsyXStzW2tdOwoJCQllbHNlCgkJCQlvdXRbMl09b3V0WzJdKyc5JzsKCQl9CgkJCgkJaWYob3V0WzFdPG91dFsyXSkKCQl7CgkJCWZvcihpPTA7aTxvdXQyLmxlbmd0aCgpO2krKykKCQkJewoJCQkJaWYob3V0MltpXSE9JzAnKQoJCQkJewoJCQkJCWw9aTsKCQkJCQlicmVhazsKCQkJCX0KCQkJfQoJCQlmb3IoaT1sO2k8b3V0Mi5sZW5ndGgoKTtpKyspCgkJCXsKCQkJCQoJCQkJCWNvdXQ8PG91dDJbaV07CgkJCX0KCQkJcmV0dXJuIDA7CgkJfQoJCWVsc2UKCQl7CgkJCWZvcihpPTA7aTxvdXQxLmxlbmd0aCgpO2krKykKCQkJewoJCQkJaWYob3V0MVtpXSE9JzAnKQoJCQkJewoJCQkJCWw9aTsKCQkJCQlicmVhazsKCQkJCX0KCQkJfQoJCQlmb3IoaT1sO2k8b3V0MS5sZW5ndGgoKTtpKyspCgkJCXsKCQkJCQoJCQkJCWNvdXQ8PG91dDFbaV07CgkJCX0KCQkJcmV0dXJuIDA7CgkJfQoKCX0KCgoJaWYoaj4yKQoJewoJCWZvcihpPTA7aTxqLTI7aSsrKQoJewoJCS8vY291dDw8Imk9Ijw8aTw8ZW5kbDsKCQlmb3Ioaz1wb2ludHNbaV0rMTtrPHBvaW50c1tpKzJdO2srKykKCQl7CgkJCWlmKHNba10+NDcmJnNba108NTgpCgkJCQlvdXRbaV09b3V0W2ldK3Nba107CgkJCWVsc2UKCQkJCW91dFtpXT1vdXRbaV0rJzknOwoJCX0KCX0KCgoJaWYocG9pbnRzW2otMV08bGVuZ3RoKQoJewoJCWZvcihpPXBvaW50c1tqLTFdKzE7aTxsZW5ndGg7aSsrKQoJCQlvdXRiPW91dGIrc1tpXTsKCgl9CglpZihwb2ludHNbMF0+MCkKCXsKCQlmb3Ioaz0wO2s8cG9pbnRzWzFdO2srKykKCQl7CgkJCWlmKHNba10+NDcmJnNba108NTgpCgkJCQlvdXRhPW91dGErc1trXTsKCQkJZWxzZQoJCQkJb3V0YT1vdXRhKyc5JzsKCQl9Cgl9CgoJc29ydChvdXQsb3V0K2otMik7CglpZihvdXRhPm91dGIpCgl7CgkJaWYob3V0YT5vdXRbai0zXSkKCQl7CgkJCWZvcihpPTA7aTxvdXRhLmxlbmd0aCgpO2krKykKCQkJewoJCQkJaWYob3V0YVtpXSE9JzAnKQoJCQkJewoJCQkJCWw9aTsKCQkJCQlicmVhazsKCQkJCX0KCQkJfQoJCQlmb3IoaT1sO2k8b3V0YS5sZW5ndGgoKTtpKyspCgkJCXsKCQkJCWlmKG91dGFbaV0+NjQmJnNbaV08OTEpCgkJCQkJY291dDw8JzknOwoJCQkJZWxzZQoJCQkJCWNvdXQ8PG91dGFbaV07CgkJCX0KCQkJcmV0dXJuIDA7CgkJfQoJCWVsc2UKCQl7CgkJCWZvcihpPTA7aTxvdXRbai0zXS5sZW5ndGgoKTtpKyspCgkJCXsKCQkJCWlmKG91dFtqLTNdW2ldIT0nMCcpCgkJCQl7CgkJCQkJbD1pOwoJCQkJCWJyZWFrOwoJCQkJfQoJCQl9CgkJCWZvcihpPWw7aTxvdXRbai0zXS5sZW5ndGgoKTtpKyspCgkJCXsKCQkJCWlmKG91dFtqLTNdW2ldPjY0JiZvdXRbai0zXVtpXTw5MSkKCQkJCQljb3V0PDwnOSc7CgkJCQllbHNlCgkJCQkJY291dDw8b3V0W2otM11baV07CgkJCX0KCQkJcmV0dXJuIDA7CgkJfQoJfQoJZWxzZQoJewoJCWlmKG91dGI8b3V0W2otM10pCgkJewoJCQlmb3IoaT0wO2k8b3V0W2otM10ubGVuZ3RoKCk7aSsrKQoJCQl7CgkJCQlpZihvdXRbai0zXVtpXSE9JzAnKQoJCQkJewoJCQkJCWw9aTsKCQkJCQlicmVhazsKCQkJCX0KCQkJfQoJCQlmb3IoaT1sO2k8b3V0W2otM10ubGVuZ3RoKCk7aSsrKQoJCQl7CgkJCQlpZihvdXRbai0zXVtpXT42NCYmb3V0W2otM11baV08OTEpCgkJCQkJY291dDw8JzknOwoJCQkJZWxzZQoJCQkJCWNvdXQ8PG91dFtqLTNdW2ldOwoJCQl9CgkJCXJldHVybiAwOwoJCX0KCQllbHNlCgkJewoJCQlmb3IoaT0wO2k8b3V0Yi5sZW5ndGgoKTtpKyspCgkJCXsKCQkJCWlmKG91dGJbaV0hPScwJykKCQkJCXsKCQkJCQlsPWk7CgkJCQkJYnJlYWs7CgkJCQl9CgkJCX0KCQkJZm9yKGk9bDtpPG91dGIubGVuZ3RoKCk7aSsrKQoJCQl7CgkJCQlpZihvdXRiW2ldPjY0JiZvdXRbai0zXVtpXTw5MSkKCQkJCQljb3V0PDwnOSc7CgkJCQllbHNlCgkJCQkJY291dDw8b3V0YltpXTsKCQkJfQoJCQlyZXR1cm4gMDsKCQl9Cgl9CglyZXR1cm4gMDsKCX0KLy9jb3V0PDxvdXRbMF08PGVuZGw7Ci8vY291dDw8b3V0WzFdPDxlbmRsOwoKCS8vY291dDw8cG9pbnRzW2otMV07CgkKfQoKCg==