#include <stdio.h>
#include <string.h>
#include <string>
#include <iostream>
#include <math.h>
#include <vector>
#define SZ 100005
using namespace std;
int prim[SZ];
vector<int> v;
void primgen()
{
v.push_back(2);
prim[2]=0;
for(int i=3;i<SZ;i+=2)
{
if(prim[i]==0)
{
v.push_back(i);
for(int j=i*3;j<SZ;j+=i)
prim[j]=1;
}
}
//cout<<v.size()<<"\n";
}
int main()
{
int mult[5];
int m,max_;
string s;
primgen();
while(cin>>s)
{
if(s=="0")
break;
memset(mult,0,sizeof(mult));
max_=0;
m=0;
for(int j=0;j<s.size();j++)
{
m=0;
//max_=0;
for(int k=j;k<j+5;k++)
{
if(k==s.size())
break;
m*=10;
m+=(s[k]-'0');
if(m==2 || (prim[m]==0 && m%2==1))
{
if(m>max_)
max_=m;
}
}
}//
cout<<max_<<"\n";
}
return 0;
}