semeru/Code-Code-CloneDetection-POJ104 huggingface dataset:
void main()
{ 
	int m,n,i,j,p,t,rev,s,f=0,g=0;
	int su,hui;
	scanf("%d %d",&m,&n);
	for(i=m;i<=n;i++)
	{
		su=1;hui=0;
		for(j=2;j<i;j++)
		{
			if(i%j==0)
			{
				su=0;
				break;
			}
		}
		t=1;
		while(t<i)
		{
			t=t*10;
		}
		t=t/10;
		p=i;s=1;rev=0;
		while(t!=1)
		{
			rev=rev+(p/t)*s;
			p=p%t;
			t=t/10;
			s=s*10;
		}
		rev=rev+p*s;
		if(rev==i)
			hui=1;		
		if(su==1&&hui==1)
		{
			if(f==0)
			{
				printf("%d",i);
				f=1;g=1;
			}
			else
			printf(",%d",i);
		}
	}
	if(g==0)
		printf("no");
	printf("\n");
}
void judge_huiwen(int n,int t[])
{
	if(n/10==0)
		t[0]=10*t[0]+n;
	else if(n/10!=0)
	{
		t[0]=n%10+10*t[0];
		n=n/10;
		judge_huiwen(n,t);
	}
}

void judge_sushu(int n,int t[])
{
	int i;
	for(i=2;i<n;i++)
		if(n%i==0)
		{
			t[1]=1;
			break;
		}
}

void main()
{
	int m,n,i,t[2]={0},x=0;
	scanf("%d %d",&m,&n);
	for(i=m;i<=n;i++)
	{
		judge_huiwen(i,t);
		judge_sushu(i,t);
		if((t[0]==i)&&(t[1]==0))
		{
			printf("%d",i);
			x=1;
			break;
		}
		t[0]=0;
		t[1]=0;
	}
	for(i=i+1;i<=n;i++)
	{
		judge_huiwen(i,t);
		judge_sushu(i,t);
		if(t[0]==i&&t[1]==0)
			printf(",%d",i);
		t[0]=0;
		t[1]=0;
	}
	if(x==0)
		printf("no");
	printf("\n");
}
int main()
{
	int m,n,i,j,k=1,s=0,t=1;
	scanf("%d%d",&m,&n);
    for(i=m;i<=n;i++)
	{
        for(j=i;j!=0;j=j/10)
		{
               s=10*s+j%10; 
		}
		if(s==i)
		{
           for(j=2;j*j<=i;j++)
		   {
			   if(i%j==0)
			   {  
                   k=0;
				   break;
			   }
		   }
		   if(k==1&&t==1)
		   {
			   printf("%d",i);
			   t=2;
		   }
		   else if(k==1&&t!=1)
		   {
			   printf(",%d",i);
		   }
		}
		k=1;
		s=0;
	}
	if(t==1)
		printf("no");
	return 0;
}
int hui(int p,int a);
int su(int q);
void main()
{
	int m,n,i,flag=0,blag=0,k=0,array[1000];
	for(i=0;i<1000;i++)
		array[i]=0;
	scanf("%d %d",&m,&n);
     for(i=m;i<=n;i++)  
	 {
		 if(hui(i,i))
		 {
			 flag=1;
			 if(su(i))
			 {
				 blag=1;
				 array[k]=i;
				 k++;
			 }
		 }
	 }   
		 if(blag==1)
		 {
			 for(i=0;i<k-1;i++)
				 printf("%d,",array[i]);
			 printf("%d",array[k-1]);
		 }
		 else
			 printf("no");


}
int hui(int p,int a)
{
	int r,fan=0;
	do
	{
		r=p%10;
		fan=fan*10+r;
		p=p/10;
	}while(p!=0);
	
	if(fan==a)
		return(1);
	else
		return(0);
}
int su(int q)
{
	int r,chu=2;
	while(chu<q)
	{
		r=q%chu;
		if(r==0)
			break;
		else
			chu++;
	}
	if(chu==q)
		return(1);
	else
		return(0);
}
void main()
{
	long int q,p;
	long int m,n,i,j,k=0,t,temp,flag=0;
	long int a[100],s[500];

	scanf("%ld%ld",&p,&q);

	for(m=p;m<=q;m++)
	{
		n=m;
		for(i=0;;i++)
		{
			if(n==0)
				break;
			else
			{
				a[i]=n%10;
				n=n/10;
			}

		}
		for(j=0;j<i;j++)
		{
			temp=0;
			if(a[j]!=a[i-j-1])
			{
				temp=1;
				break;
			}
		}

		if(temp==0)
		{
			s[k]=m;
			k++;
		}
	}
	temp=0;
	
	for(i=0;i<k;i++)
	{	
		for(j=2;j<sqrt(s[i])+1;j++)
		{
			if(s[i]%j==0)
			{
				temp=1;
				break;
			}
		}

		if(temp==0)
		{
			if(flag==0)
			{
				printf("%d",s[i]);
				flag++;
			}
			else
			{
				printf(",%d",s[i]);
				temp=1;
			}	
							
		}
		
		temp=0;

	}

	if(flag==0)
		printf("no");
	printf("\n");
}
int main()
{
	int zhishu(int x);
	int inttostr(int y);
	int m,n,i,num[100]={0},v=0;
	scanf("%d%d",&m,&n);
	for(i=m;i<=n;i++)
	{
		if(zhishu(i)==1)
		{
			if(inttostr(i)==1)
			{
				num[v++]=i;
			}
		}
	}
	if(num[0]==0)
	{
		printf("no");
		return 0;
	}
	for(i=0;i<v;i++)
	{
		if(i==0)
		{
			printf("%d",num[i]);
		}
		else
		{
			printf(",%d",num[i]);
		}
	}
	return 0;
}

int zhishu(int x)
{
	int k=0,j;
	for(j=2;j<x;j++)
	{
		if((x%j)==0)
		{
           return(0);
		}
		else
		{
			k=k+1;
		}
	}
	if(k==j-2)
	{
		return(1);
	}
}

int inttostr(int y)
{
	int data[8],t,l,q=0;
	for(t=0;y>0;t++)
	{
		data[t]=y%10;
		y=y/10;
	}
	l=t;
	for(t=0;t<l;t++)
	{
		if(data[t]!=data[l-1-t])
		{
			return(0);
		}
		else
		{
			q=q+1;
		}
	}
	if(q==l)
	{
		return(1);
	}
}
int huiwen(int n)
{
int a,b; 
b=0;
a=n;
while(a!=0)
{
b=b+a%10;
a=(int)a/10;
b=b*10;
}
b=b/10;
if(b==n)
{
return 1;

}
return 0;


}
int shushu(int n)
{
int i;
for(i=2;i<n;i++)
{
if(n%i==0)
return 0;	
 
}
 return 1;

}
int main()
{
 int m,n;	 int t;
 scanf("%d %d",&m,&n);
 int i,count=0;
 for(i=m;i<=n;i++)
 {


  if(huiwen(i)&&shushu(i))
  {count++;
   printf("%d",i);
   t=i;
   break;


  }
  

  } for(i=t+1;i<=n;i++)
 {


  if(huiwen(i)&&shushu(i))
  {count++;
   printf(",%d",i);
   t=i;
  


  }
  

  }


if(count==0)printf("no");
return 0;


}
void main()
{
	int huiwen(int x);
	int sushu(int x);
	int m,n;
	int i,t=0;
	scanf("%d %d",&m,&n);
	for(i=m;i<=n;i++)
		if((huiwen(i))&&(sushu(i)))
		{
			t++;
			if(t!=1)
				printf(",");
			printf("%d",i);
		}
	if(t==0)
		printf("no\n");
}
int huiwen(int x)
{
	int y=0,t;
	t=x;
	while(x!=0)
	{
		y=y*10+x%10;
		x=x/10;
	}
	if(y==t)
		return(1);
	else
		return(0);
}
int sushu(int x)
{
	int i,t,r=0;
	t=sqrt(x);
	for(i=2;i<=t;i++)
		if(x%i==0)
		{
			r=1;
			break;
		}
	if(r==0)
		return(1);
	else
		return(0);
}
void main()
{   int f(int k);/*???????*/
    int g(int k);/*????????*/
	int length(int k);/*????????*/
	int i,m,n,N=0;
	int a[1000];/*????????*/
	scanf("%d%d",&m,&n);
	for(i=m;i<=n;i++)
		if(i%2!=0)
		{	if(f(i)&&g(i))
			{N++;
			a[N-1]=i;
			}
		}
		else if(i==2)
			{N++;
			a[N-1]=i;
			}
	if(N==0)
		printf("no\n"); 
	else 
	{
		for(i=0;i<N-1;i++)
			printf("%d,",a[i]);
		printf("%d\n",a[N-1]);
	}
}

int f(int k)
{
	int i,p;
	if(k>=4)
	{
    	p=sqrt(k);
    	for(i=2;i<=p;i++)
		if(k%i==0)
		{
		return 0;break;
		}
		else if(i==p)
			return 1;
	}
    else if(k==3)
		return 1;
	else return 0;
}

int g(int k)
{
	int p,i,q,r;
	if(k>=10)
	{  p=length(k);
	   
	   for(i=1;i<=p/2;i++)
	   {   q=k/pow(10,i-1);
	      r=(int)(k/pow(10,p-i));
		if((q%10)!=r%10)
		{return 0;
		break;
		}
		else if(i==p/2)
			return 1;
	   }
	 }
	else if(k>1)
		return 1;
	else return 0;
}

int length(int k)/*?????????*/
{
	int i,m=1;

	for(i=1;;i++)
		if(k>=pow(10,i))
			m++;
		else break;
	return m;
}
int hws(int x)
{    int a[10],b=x,i,j,s=0,k=1;
     a[0]=x%10;x=x/10;
     for(i=1;x!=0;i++)
{    a[i]=x%10;x=x/10;
}    for(j=i-1;j>=0;j--)
{    s=s+a[j]*k;
     k=k*10;
}    if(s-b==0) return(1);
      else return(0);
}
int ss(int x)
{    int i,j,k=1;
     for(i=2;i<x;i++)
{    if(x%i==0)k=0;
     else k=k*1;
}    if(k==1) return(1);
     else return(0);
}
void main()
{   int m,n,j,i,s=0;
    scanf("%d%d",&m,&n);
    for(i=m;i<=n;i++)
{   if(hws(i)==1&&ss(i)==1)
  {if(s==0)  printf("%d",i),s++;
    else printf(",%d",i);
} } if(s==0) printf("no");
}
void main()
{
	long int m, n, j, t, r, ss(long int x), hw(long int y);
	long int hwss[100]={0};
	scanf("%ld%ld", &m, &n);
	t = 0;
	for(j=m; j<=n; j++)
	{
		if(j==1)
			continue;
		else
		{
		    if(ss(j)==1&&hw(j)==1)
		    {
			hwss[t] = j;
		 	t = t+1;
		    }

		    else
			   continue;
		}
	}
	if(hwss[0]!=0)
	{
		for(t=0; hwss[t+1]!=0; t++)
		{printf("%ld,", hwss[t]);}
		printf("%ld", hwss[t]);

	}
	else
		printf("no");

}

long int ss(long int x)
{
	long int i, z1;
	z1 = 1;
	for(i=2; i<=x/2;i++)
	{
		if(x%i==0)
		{z1 = 0;break;}
		else
		{continue;}
     }
	return(z1);
}

long int hw(long int y)
{
	long int z2, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10;
	a1 = y/1e9;
	a2 = (y-a1*1e9)/1e8;
	a3 = (y-a1*1e9-a2*1e8)/1e7;
	a4 = (y-a1*1e9-a2*1e8-a3*1e7)/1e6;
	a5 = (y-a1*1e9-a2*1e8-a3*1e7-a4*1e6)/1e5;
	a6 = (y-a1*1e9-a2*1e8-a3*1e7-a4*1e6-a5*1e5)/10000;
	a7 = (y-a1*1e9-a2*1e8-a3*1e7-a4*1e6-a5*1e5-a6*10000)/1000;
	a8 = (y-a1*1e9-a2*1e8-a3*1e7-a4*1e6-a5*1e5-a6*10000-a7*1000)/100;
	a9 = (y-a1*1e9-a2*1e8-a3*1e7-a4*1e6-a5*1e5-a6*10000-a7*1000-a8*100)/10;
	a10 = y-a1*1e10-a2*1e9-a3*1e8-a4*1e7-a5*1e5-a6*10000-a7*1000-a8*100-a9*10;
	if(a1!=0)
	{
		if(a1==a10&&a2==a9&&a3==a8&&a4==a7&&a5==a6)
			z2 = 1;
		else 
			z2 = 0;
	}
	else if(a2!=0)
	{
		if(a2==a10&&a3==a9&&a4==a8&&a5==a7)
			z2 = 1;
		else
			z2 = 0;
	}
	else if(a3!=0)
	{
		if(a3==a10&&a4==a9&&a5==a8&&a6==a7)
			z2 = 1;
		else
			z2 = 0;
	}
	else if(a4!=0)
	{
		if(a4==a10&&a5==a9&&a6==a8)
			z2 = 1;
		else
			z2 = 0;
	}
	else if(a5!=0)
	{
		if(a5==a10&&a6==a9&&a7==a8)
			z2 = 1;
		else
			z2 = 0;
	}
	else if(a6!=0)
	{
		if(a6==a10&&a7==a9)
			z2 = 1;
		else
			z2 = 0;
	}
	else if(a7!=0)
	{
		if(a7==a10&&a8==a9)
			z2 = 1;
		else
			z2 = 0;
	}
	else if(a8!=0)
	{
		if(a8==a10)
			z2 = 1;
		else
			z2 = 0;
	}
	else if(a9!=0)
	{
		if(a9==a10)
			z2 = 1;
		else
			z2 = 0;
	}
	else
		z2 = 1;
	return(z2);
		
}
void main()
{
	int a,b,x,m,n,i,j,p=0,s,sign;
	double k;
	scanf("%d %d",&m,&n);
	i=m;
	for(i=m;i<=n;i++)
	{
//		printf("i:%d  ",i);
		x=0;
		a=i;
		s=i;
		for(;a!=0;)
		{
			b=a%10;
			x=10*x+b;
			a=a/10;
		}
		if(x==s)
		{
	//		printf(" huiwen");
			sign =0;
			k=sqrt(x);
			for(j=2;j<=k;j++)
			{
				if(x%j==0)
				{
					sign = 1;
					break;
				}
			}
			if(sign == 0)
			{
	//			printf(" prime");
				p++;
				if (p==1)
					printf("%d",x);
				else if (p>1)
					printf(",%d",x);
				
			}
		}
	}
	if(p==0)
		printf("no");
}
int s(int n)
{
	int i;
	for(i=2;i<n;i++)
		if(n%i==0)return 0;
		return 1;
}
int h(int n)
{
	int a=0,k=n;
	while(n!=0)
	{
		a=a*10+n%10;
        n=n/10;
	}
	if(a==k)return 1;
	else return 0;
}
void main()
{
	int m,n,i,j[100],k=0;
	scanf("%d%d",&m,&n);
	for(i=m;i<=n;i++)
		if(s(i)==1&&h(i)==1)
		{j[k]=i;k++;}
	if(k==0)printf("no");
	else
	{for(i=0;i<k-1;i++)
         printf("%d,",j[i]);
	   printf("%d",j[k-1]);}

}
int main()
{int m,n,b,i,j,k,l,x,y,t,r,a[100]={0};
 scanf("%d%d",&m,&n);
 i=0;for(k=m;k<=n;){if(k==2){printf("2");k++;i++;}else if(k%2==0){k++;}else {l=log10(k);for(j=2;j<=sqrt(k);j++){x=k%j;if(x==0)break;}
 if(j<=sqrt(k)) {k=k+2;continue;}else{t=k;for(j=0;j<=l;j++){r=t/(pow(10,l-j));a[j]=r;t=t-r*pow(10,l-j);}
 for(j=0;j<=l/2;j++){if(a[j]!=a[l-j])break;}if(j<=l/2)k=k+2;else {if(i==0)printf("%d",k);else printf(",%d",k);i++;k=k+2;}}}}
 if(i==0)printf("no");printf("\n");return 0;}
int prime(int k)
{ int i,n;
  n=sqrt(k);
  for(i=2;i<=n;i++)
	  if(k%i==0) break;
  if(i>n) return(1);
  else return(0);
  
}

int same(int k)
{ int m=0,n;
  n=k;
  while(n>0)
  { m=m*10+n%10;
    n=n/10;}
   
  if(m==k) return(1);
  else return(0);

}

void main()
{ int n,m,i,t=0;
  scanf("%d%d",&m,&n);
  for(i=m;i<=n;i++)
    if(prime(i)&&same(i)) 
   { if(t>0) printf(",");
	 printf("%d",i);
	 t++;
   }
 if(t==0) printf("no");

}
int su (int n)
{
	int i,p=0;
	for (i=2;i<n;i++) 
		if (n%i==0) { p=1; break;}
	return(p);
}
int huiwen(int n)
{
	int s=0,m;
	m=n;
	while (n!=0)
	{
		s=s*10+n%10;
		n=n/10;
	}
	if (s==m) return(0);
	else return(1);
}
void main()
{
	int m,n,i,a[100],k=0;
	scanf("%d%d",&m,&n);
	for (i=m;i<=n;i++)
		if ((su(i)==0)&&(huiwen(i)==0)) a[k++]=i;
	if (k==0) printf("no\n");
	else 
	{
		for (i=0;i<k-1;i++) printf("%d,",a[i]);
		printf("%d\n",a[k-1]);
	}
}
int huiwen(int i)
{
	int temp=i,k,n=0;
	while(temp>0)
	{ 
		k=temp%10;
		n=n*10+k;
		temp=temp/10;
	}
	if(n==i)
		return(0);
	else 
		return(1);
}
int zhishu(int i)
{
	int j,s=0;
	if(i==2 || i==3) return(0);
	for(j=2;(j*j)<=i;j++)
	{
		if(i%j==0) s++;
	}
	if(s==0) return(0);
	else return(1);

}
void main()
{
	int m,n;
	int x[100];
	scanf("%d%d",&m,&n);
	int i,k=0;
	for(i=m;i<=n;i++)
	{
		if(huiwen(i)==0 && zhishu(i)==0)
		{
			x[k]=i;
			k++;
		}
	}
	if(k==0) printf("no\n");
	else
		for(i=0;i<k;i++)
		{
			if(i!=k-1)
				printf("%d,",x[i]);
			else
				printf("%d\n",x[i]);
		}
}
int xp(int a){
	int s=1,i;
	for(i=1;i<=a;i++){
		s=10*s;
	}
	return(s);
}							//????????10?x?????????
int circle(int s){								//	?????????????????????????????????-1?
	int i=0,a[100],s1=0,s2=0,n;
	int xp(int a);
	while(s>=10){
		a[i]=s%10;
		s=(s-a[i])/10;
		i++;
	}
	a[i]=s;
	n=i+1;
	for(i=0;i<=n-1;i++){
		s1=s1+xp(i)*a[i];
		s2=s2+xp(n-1-i)*a[i];
	}
	if(s1==s2){
		return(s1);
	}else return -1;
}
int main(){
	int m,n,i,yn=1,k,a[1000],counter=0;
	
	scanf("%d %d",&m,&n);
	for(i=m;i<=n;i++){
		yn=1;									//yn?????i?????????????1?
		for(k=2;k<=i-1;k++){
			if(i%k==0){							//?i??k?????yn??0???i?????
				yn=0;
			}
		}										//??for???????yn=1,????i??????
		if(yn==1){								//????i???????????
			if(circle(i)!=-1){
				counter=counter+1;
				a[counter]=circle(i);			//???????????a[]??				
			}			
		}		
		
	}
	//???????
	//?????????????????????a1,a2,...,an)?????????????
	//??????n-1????????????????????????????????~
	if(counter!=0){
		for(i=1;i<=counter-1;i++){
			printf("%d,",a[i]);
		}
		printf("%d",a[counter]);
	}else	printf("no");
	
	return 0;
}

//?????????????????????????????????????
int judge1(int n)
{
	int i,u=1;
	for(i=2;i<n;i++)
	{
		if(n%i==0)
		{
			u=0;
			break;
		}
	}
	return u;
}
int judge2(int n)
{
	char s[10];
	int i,t,r,u=1;
	for(t=n,r=1;;r++)
	{
		t=t/10;
		if(t==0)
			break;
	}
	for(t=n,i=r-1;i>=0;i--)
	{
		s[i]=t%10+'0';
		t=t/10;
	}
	for(i=0;i<r-i-1;i++)
		if(s[i]!=s[r-i-1])
			u=0;
	return u;
}
void main()
{
	int m,n,i,u=0;
	scanf("%d%d",&m,&n);
	for(i=m;i<=n;i++)
		if(judge1(i)&&judge2(i))
		{
			printf("%d",i);
			u=1;
			break;
		}
	i=i+1;
	for(;i<=n;i++)
		if(judge1(i)&&judge2(i))
			printf(",%d",i);
	if(u==0)
		printf("no");
}
int main()
{
	int zhi(long int r),hui(long int r);
	long int m,n,t=0,n1,n2,u=0,i;
	int a[1000];
	scanf("%d %d",&m,&n);
	for(i=m;i<=n;i++)
	{
		n1=zhi(i);
		n2=hui(i);
		if(n1==0&&n2==0)
		{a[t]=i;t++;u=t;}
	}
	if(u==0)printf("no");
	else
	{
	for(t=0;t<u-1;t++)
		printf("%d,",a[t]);
            printf("%d",a[u-1]);
	
	}
}

int zhi(long int m)
{
	long int i,k,z=1;
	k=sqrt(m);
	for(i=2;i<=k;i++)
		if(m%i==0)break;
	if(i>k)z=0;
	return z;
}

int hui(long int m)
{
	long int a[200];
	long int n,num,t=0,k,r;
	num=log10(m);
	for(n=0,k=num;n<=num;n++)
	{
		r=pow(10,k);
		a[n]=m/r;
		m=m-a[n]*r;
		k--;
	}
	for(n=0;n<=num/2;n++)
		if(a[n]!=a[num-n]){t=1;break;}
	return t;
}
int y=0;
int anti(int x)
{
	y=10*y+x%10;
	x=x/10;
	if(x!=0)
		anti(x);
	return(y);
}
int su(int n)
{
	int i,a=1;
	for(i=2;i<=sqrt(n);i++)
	{
		if(n%i==0)
			a=0;
	}
	return a;
}
void main()
{
	int x1,x2,m,n=0,a,i,j=0;
	scanf("%d%d",&x1,&x2);
	for(i=x1;i<=x2;i++)
	{
		m=anti(i);
		y=0;
		a=su(i);
		if(m==i&&a==1)
		{
			j++;
			if(j==1)
				printf("%d",i);
			else
				printf(",%d",i);
		}
		else
			n++;
	}
	if(n-1==x2-x1)
		printf("no");	
}
int m,n;
int huiwen(int x,int y)
{
	if(x==0)
		return y;
	else
	{
		y=y*10+x%10;
		return huiwen(x/10,y);
	}
}
int zhishu(int k)
{
	int z;
	for(z=2;z<=sqrt(k);z++)
	{
		if(k%z==0)
			break;
	}
	if(z>sqrt(k))
		return 1;
	else 
		return 0;
}
void main()
{
	int m,n,i,c=0,t=0,a;
	scanf("%d%d",&m,&n);
	for(i=m;i<=n;i++)
	{
		t=huiwen(i,0);
		if(t==i)
		{
			a=zhishu(i);
			if(a==1)
			{
				c++;
				if(c==1)
					printf("%d",i);
				else
					printf(",%d",i);
			}
		}
	}
	if(c==0)
		printf("no");
	printf("\n");
}
long int m,n;
int a[1000001];
long int i,j;
int flag;
int check(long int i)
{
	int s[100];
	long int m,flag,t;
	m=i; 
	t=0;
	while (m>0)
	{
		t++;
		s[t]=m%10;
		m=m/10;
	}
	flag=0;
	for(m=1;m<=t/2;m++) if (s[m]!=s[t-m+1]) 
	{
		flag=1;
		return(0);
		break;
	}
	if (flag==0) return(1);
}
main()
{
	for(i=1;i<=1000000;i++) a[i]=1;
	a[1]=0;
	for(i=2;i<=1000000;i++) if (a[i]==1)
		for(j=2;j<=1000000/i;j++) a[i*j]=0;
	scanf("%ld %ld",&m,&n);
	flag=0;
	for(i=m;i<=n;i++) if ((a[i]!=0)&&check(i)) 
	{
		if (flag==0) printf("%ld",i);
		else printf(",%ld",i);
		flag=1;
	}
	if (flag==0) printf("no");
	printf("\n");
}
int zhishu(int x) 
{ 
int b,j; 
b=(int)sqrt(x); 
for(j=2;j<=b;j++) 
{ 
if(x%j==0)break; 
} 
if(j!=(b+1))return(0); 
else return(1); 
}

int nixu(int x,int z)
{
	if(x==0)return z;
	else return nixu(x/10,z*10+x%10);
}

int huiwen(int x)
{
	if(x==nixu(x,0))return 1;
	else return 0;
}

void main ()
{
	int m,n,i,count=0;
	scanf("%d%d",&m,&n);
	for(i=m;i<=n;i++)if(zhishu(i)&&huiwen(i))count=i;
	if(count==0)printf("no\n");
	else
	{
		for(i=m;i<=n;i++)
		{
			if(zhishu(i)&&huiwen(i))
			{
				printf("%d",i);
				if(i!=count)printf(",");
			}
		}
	}
	putchar(10);
}
void main()
{
        int i,j,m,n,a[10000],sum=0,k=0,b[10000],P,r=0,t;
	scanf("%d%d",&m,&n);
	for(i=m;i<=n;i++)
	{
		sum=0;
		P=i;
		for(j=0;;j++)
		{
			t=P%10;
			P=P/10;
			sum=sum*10+t;
			if(P==0)
                            break;
		}
		if(sum==i)
		{
			a[k]=i;
			k++;
		}
	
	}
	

	for(i=0;i<k;i++)
	{
		for(j=2;j<a[i];j++)
			if(a[i]%j==0) break;
			
			if(j==a[i])
			{
				b[r]=a[i];
				r++;	
			}
		
	}

	if(r==0)
		printf("no\n");
			
			for(i=0;i<r;i++)
				if(i!=(r-1))
					printf("%d,",b[i]);
				else printf("%d",b[i]);
}
/*#include<stdio.h>
void main()
{
	int n,i,j,k,sum=0,a[20],all=0;
	scanf("%d",&n);
	for(i=0;i<n;i++)
	{
		scanf("%d",&a[i]);
	}
	if(n==0)
		all=60;
	else
	{
	for(i=0;i<n;i++)
	{
		sum=3+a[i];
		if(sum<60 && i!=n-1)
			continue;
		if(sum<60 && i==n-1)
			break;
		if(sum>=60)
			j=i;
			break;
	}
	
	if(i=n-1)
	{
			all=60-3*(i+1);
	}
	else
	{
		if(sum-3>=60)
		all=a[j]-(sum-3-60);
		if(sum-3<60)
			
				all=a[j];
	}
	}
	printf("%d",all);
}*/
void main()
{
	int i,n,m,j,flag=0,temp=0,a,b,c,d,e,f,k,p,t=-1,x[19];
	char s[7];
	scanf("%d %d",&n,&m);
	for(i=n;i<=m;i++)
	{
		for(j=2;j<i;j++)
		{
			if(i%j==0)
			{
				flag=1;
				break;
			}
			else 
				flag=0;
				continue;
		}

		
		if(i/100000>0 && i/1000000==0)
		{
			a=i/100000;s[0]=a+48;
			b=(i-a*100000)/10000;s[1]=b+48;
			c=(i-a*100000-b*10000)/1000;s[2]=c+48;
			d=(i-a*100000-b*10000-c*1000)/100;s[3]=d+48;
			e=(i-a*100000-b*10000-c*1000-d*100)/10;s[4]=e+48;
				f=(i-a*100000-b*10000-c*1000-d*100-e*10);s[5]=f+48;

		s[6]='\0';
		}
		if(i/10000>0 && i/100000==0)
		{
			a=i/10000;s[0]=a+48;
			b=(i-a*10000)/1000;s[1]=b+48;
			c=(i-a*10000-b*1000)/100;s[2]=c+48;
			d=(i-a*10000-b*1000-c*100)/10;s[3]=d+48;
			e=(i-a*10000-b*1000-c*100-d*10);s[4]=e+48;
		s[5]='\0';
		
		}

		if(i/1000>0 && i/10000==0)
		{
			a=i/1000;s[0]=a+48;
			b=(i-a*1000)/100;s[1]=b+48;
			c=(i-a*1000-b*100)/10;s[2]=c+48;
			d=(i-a*1000-b*100-c*10);s[3]=d+48;
		s[4]='\0';
		
		}
		if(i/100>0 && i/1000==0)
		{
			a=i/100;s[0]=a+48;
			b=(i-a*100)/10;s[1]=b+48;
			c=(i-a*100-b*10);s[2]=c+48;
			s[3]='\0';
		}
		if(i/10>0 && i/100==0)
		{
			a=i/10;s[0]=a+48;
			b=(i-a*10);s[1]=b+48;
	
			s[2]='\0';
		}
		p=strlen(s);
		k=0;
		while(2*k<=p && s[k]==s[p-1-k])/*????????????????????*/
		{    
			k=k+1;
		}
		if(2*k>=p)
		  temp=1;
		 else
		  temp=0;

		 if(temp==1 && flag==0)
		 {
			 t++;
		 x[t]=i;
		 }
		 
	}
	if(t==-1)
		printf("no");
	else
	{
	for(k=0;k<t;k++)
		 printf("%d,",x[k]);
	printf("%d",x[t]);
	}
}
void main()
{
	int i,j,m,n,k=0;
	scanf("%d %d",&m,&n);
	for(i=m;i<=n;i++)
	{    

		for(j=2;j<=i/2;j++)
		{
			if(i%j==0)
             break;
		}
		if(j>=i/2)
		{   int a,b,c;
		    a=i;
			b=0;
		    while(a>0)
			{
				c=a%10;
				b=b*10+c;
				a=a/10;
			}
         if(i==b)
		 {     
			 if(k==0)
			 {           
			   printf("%d",i);
			   k++;
			 } 
		       else
			   {
				   printf(",%d",i);
				   k++;
			   }
		 }
		} 
	}
	      if(k==0)   
			  printf("no\n");
}
int ss(long num)
{
   long i,j,k;
   k=sqrt(num)+1;
   if (num==2) return 0;
   if (num==1) return 1;
   for (i=2;i<=k;i++)
   {
       if ((num%i)==0) return 1;
   }
   return 0;
}

int huiwen(long num)
{
    long i,j,k,x;

	char num2[10];

	k=1;
	while (num>=10)
	{
	 
		num2[k]=num%10+48;
	   num=num/10; k++;   
	
	}
    num2[k]=num+48;
   
	x=k/2+1;
	for (i=1;i<=x;i++)
	{
	   if (num2[i]!=num2[k-i+1]) return 0;
	}
	return 1;
}

int main()
{
    long i,n,m,k,ans;
	
	scanf ("%d %d",&n,&m);
	k=0;
	for (i=n;i<=m;i++)
	{
	   ans=ss(i);
	   if (ans==0) 
	   {
	      if (huiwen(i)==1)
		  {
		   if (k==0) printf ("%d",i);
		      else printf (",%d",i);
            k++;
		  }
	   }
	}
	if (k==0) printf ("no\n");
}
int sushu(int m)
{int i,j,k=1;
j=m/2;
for(i=2;i<=j;i++)
if(m%i==0)k=0;
if(k==1)return(1);
else return(0);}
int huiwen(int m)
{int t=0;
while(m)
{t=t*10+m%10;
m=m/10;}
return(t);}
void main()
{int m,n,i,j,t=0;
scanf("%d %d",&m,&n);
for(i=m;i<=n;i++)
{if(sushu(i)&&(i==huiwen(i)))
{if(t==0)printf("%d",i);
else printf(",%d",i);
t++;}}
if(t==0)printf("no");}
int sushu(int n)
{  
	      int i,a,z;
		   a=sqrt(n);
		  for(i=2;i<=a;i++)
		  {
		    if(n%i==0)
		  {
			  z=0;break; 
		  }
		  }
		if(i>a)
		{
			z=1; 
		}
		return(z);
}
int huiwen(int n)
{  int y,i,t,w=0,s=0;
    s=n;
    for(i=n;i>0;i=(i/10))
	{
		t=i%10;
		w=w*10+t;
	}
	if(w==s)
	{
		y=1;
	}
	else y=0;
	return(y);
}


void main()
{ 	int m,n,i,k,t,j=0,s=0;
	scanf("%d%d",&m,&n);
	for(i=m;i<=n;i++)
	{  
		 k=sushu(i);
		t=huiwen(i);
		if(k==1&&t==1)
		 s=s+1;
	}
     if(s==0)
		 printf("no");


		for(i=m;i<=n;i++)
	{
		k=sushu(i);
		t=huiwen(i);
		if(k==1&&t==1)
		{	printf("%d",i);break;}
		
	}
     for(j=i+1;j<=n;j++)
	{
		k=sushu(j);
		t=huiwen(j);
		if(k==1&&t==1)
			printf(",%d",j);
	 }
	 
}
int sushu(int k)
{
	int i,t;
	t=1;
	for(i=2;i<=k/2;i++)
		if(t==1)
			if(k%i==0)
				t=0;
	return(t);
}
int hw(int k)
{
	int a[10],i,len=1,ws,t=1,n;
	for(i=1;!(k/len>0&&k/(len*10)==0);i++)
		len*=10;
	ws=i;
	for(i=1;i<=ws/2&&t==1;i++)
	{
		n=k/len;
		if(k%10!=n)
			t=0;
		k=k-n*len;
		k=k/10;
		len/=100;
	}
	return(t);
}

void main()
{
	int m,n,k,bg,ans[1000],j=0,i;
	scanf("%d%d",&m,&n);
	if(m>=2)
		bg=m;
	else
		bg=2;
	for(k=bg;k<=n;k++)
		if(sushu(k)&&hw(k))
			ans[j++]=k;
	if(j==0)
		printf("no\n");
	else
	{
		for(i=0;i<j-1;i++)
			printf("%d,",ans[i]);
		printf("%d\n",ans[j-1]);
	}
}
int main(int argc, char* argv[])
{
	int m,n,rn=0,r=0,i=0,j=0,a,l=0,num,k=-1,re[1000]={0};

	scanf("%d%d",&m,&n);

	for(i=m;i<=n;i++)
	{
		l=0;
		for(j=2;j<i;j++)
		{
			a=i%j;
			if(a==0)
			{
				l++;
			}
			
		}
		if(l==0)
		{
			rn=0;
			r=0;
			num=i;
			while(num!=0)
			{
			  r = num % 10;
              rn *= 10;
              rn += r;
              num /= 10;
			}
			if(rn==i)
			{
				k++;
				re[k]=i;
				
			}
		}
	}
	if(k==-1)printf("no");
	else{
	    for(i=0;i<=k;i++)
		{
			if(i==k)printf("%d",re[k]);
			else printf("%d,",re[i]);
		}
	}
	
	
	return 0;
}
int p=0;
int huiwen(int x)
{
	int m,n;
	if(x==0)
		return(0);
	else
	{
		m=x%10;
		n=x/10;
		p=(p+m)*10;
		huiwen(n);
	}
	return(0);
}
int sushu(int x)
{
	int m,i,t=1;
	m=sqrt(x);
	for(i=2;i<=m;i++)
	{
		if((x%i)==0)
		{
			t=0;
			break;
		}	
	}
	return(t);
}
void main()
{
	int m,n,i,j=0,a[100]={0};
	scanf("%d %d",&m,&n);
	for(i=m;i<=n;i++)
	{
		p=0;
		huiwen(i);
		if((p/10)==i)
		{	
			if(sushu(i)==1)
			{
				j=j+1;
				a[j]=i;
			}
		}
	}
	if(a[1]!=0)
	{
		for(i=1;i<j;i++)
			printf("%d,",a[i]);
		printf("%d",a[j]);
	}
	else
		printf("no");
}
long int huiwen(long int m,long int n)
{
	
	if(m==0)
	   return(n);
	else
	   return(huiwen(m/10,n*10+m%10));
}
int sushu(long int n)
{
	long int i;
	for(i=2;i<=sqrt(n);i++)
		if(n%i==0)
			break;
	if(i>sqrt(n))
		return(1);
	else
		return(0);
}
			
void main()
{
	long int m,n,i,j;
	scanf("%ld%ld",&m,&n);
	int p=0;
	for(i=m;i<=n;i++)
	{
		if((i==huiwen(i,0))&&sushu(i))
		{
			if(p==0)
			{
				printf("%ld",i);
				p++;
			}
			else
				printf(",%ld",i);
		}
		
	}
	if((i==n+1)&&p==0)
			printf("no\n");

}
int main()
{
    int huiwen[]={11,101,131,151,181,191,313,353,373,383,727,757,787,797,919,929,10301,10501,10601,11311,11411,12421,12721,12821,13331,13831,13931,14341,14741};
    int m,n,i,count=0;
    scanf("%d%d",&m,&n);
    for(i=0;i<29;i++)
    {
    if(huiwen[i]>=m&&huiwen[i]<=n)
     {count=i;break;}}
     for(i=1;i<29;i++)
     {if(count==0)
     {printf("no");break;}
     if(huiwen[i]>=m&&huiwen[i]<=n&&i!=count)
     printf(",%d",huiwen[i]);
     if(huiwen[i]>=m&&huiwen[i]<=n&&i==count)
     printf("%d",huiwen[i]);}
     getchar();
     getchar();
     }
void main()
{
	int m,n,i,j,x,y,flag=1;
	char a[7];
	scanf("%d %d",&m,&n);
	for(i=m;i<=n;i++)
	{
		if (i==1) continue;
		else 
		{
			for(j=2;j<=sqrt(i);j++)
			{
				if(i%j==0) break;
			}
			if (j>sqrt(i))
			{
				x=(int)(log10(i)+1);
				for(y=0;y<x;y++)
					a[y]=((i%(int)pow(10,y+1))-(i%(int)pow(10,y+1))%(int)pow(10,y))/(int)pow(10,y);	
				for(j=0;j<(x-1)/2.0;j++)
					if(a[j]!=a[x-1-j]) break;
				if (j>=(x-1)/2.0)
				{
					if (flag==1) flag=0;
					else printf(",");
					printf("%d",i);
				}
			}
		}
	}
	if (flag==1) printf("no");
}
int m,n;

int zhi(int n)
{
	int i,t;
	t=n/2;
	for (i=2;i<t;i++)
	{
		if (n%i==0) return 0;
	}
	return 1;
}

int hui(int n)
{
	int temp,h;
	temp=n;
	h=0;
	while (temp>0)
	{
		h=h*10+temp%10;
		temp/=10;
	}
	if (n==h)
	{
		return 1;
	}
	else
	{
		return 0;
	}
}

int main()
{
	int i,flag=1;
	scanf("%d%d",&m,&n);
	for (i=m;i<=n;i++)
	{
		if (hui(i) && zhi(i))
		{
			if (flag!=1)
			{
				printf(",%d",i);
			}
			else
			{
				printf("%d",i);
				flag=0;
			}
		}
	}
if (flag==1)
{
printf("no");
}
//	scanf("%d%d",&m,&n);
	return 0;
}