#include <iostream>
#include <cmath>
using namespace std;
bool is[10000001];
int prm[663969];
int huiwenn[1000],r;
int getprm(int n)
{
int i,j,k=0;
int s,e=(int)(sqrt(0.0+n)+1);
memset(is,1,sizeof(is));
prm[k]=2;k++;is[0]=is[1]=0;
for(i=4;i<n;i+=2)
is[i]=0;
for(i=3;i<e;i+=2)
if(is[i])
{
prm[k]=i;k++;
for(s=i*2,j=i*i;j<n;j+=s)
is[j]=0;
}
for(;i<n;i+=2)
if(is[i])
{
prm[k]=i;
k++;
}
return k;
}
void huiwen()
{
int i,j,k,t;
k=getprm(9989999);
for(i=0;i<k;i++)
{
j=1;char a[19],*x,*y;
sprintf(a,"%d",prm[i]);
t=strlen(a);
if(t!=4&&t!=6)
{
x=a;y=a+t-1;
while(x<=y)
{
if(*x!=*y)
{
j=0;
break;
}
x++;y--;
}
if(j)
{
huiwenn[r]=prm[i];
r++;
}
}
}
}
int main()
{
int i,x,y;
r=0;
huiwen();
while(~scanf("%d%d",&x,&y))
{
for(i=0;huiwenn[i]<=y;i++)
{
if(huiwenn[i]>=x)
printf("%d\n",huiwenn[i]);
if(huiwenn[i]==9989899)
break;
}
printf("\n");
}
return 0;
}
#include <cmath>
using namespace std;
bool is[10000001];
int prm[663969];
int huiwenn[1000],r;
int getprm(int n)
{
int i,j,k=0;
int s,e=(int)(sqrt(0.0+n)+1);
memset(is,1,sizeof(is));
prm[k]=2;k++;is[0]=is[1]=0;
for(i=4;i<n;i+=2)
is[i]=0;
for(i=3;i<e;i+=2)
if(is[i])
{
prm[k]=i;k++;
for(s=i*2,j=i*i;j<n;j+=s)
is[j]=0;
}
for(;i<n;i+=2)
if(is[i])
{
prm[k]=i;
k++;
}
return k;
}
void huiwen()
{
int i,j,k,t;
k=getprm(9989999);
for(i=0;i<k;i++)
{
j=1;char a[19],*x,*y;
sprintf(a,"%d",prm[i]);
t=strlen(a);
if(t!=4&&t!=6)
{
x=a;y=a+t-1;
while(x<=y)
{
if(*x!=*y)
{
j=0;
break;
}
x++;y--;
}
if(j)
{
huiwenn[r]=prm[i];
r++;
}
}
}
}
int main()
{
int i,x,y;
r=0;
huiwen();
while(~scanf("%d%d",&x,&y))
{
for(i=0;huiwenn[i]<=y;i++)
{
if(huiwenn[i]>=x)
printf("%d\n",huiwenn[i]);
if(huiwenn[i]==9989899)
break;
}
printf("\n");
}
return 0;
}