semeru/Code-Code-CloneDetection-POJ104 huggingface dataset:
int huiwen(int num)
{
	int i,*shuwei,number,gao=0,t=1,a,z;
	number=num;
	for(;;)
		if(num/10!=0)
		{
			gao++;
			num=num/10;
		}
		else break;
	shuwei=(int*)calloc(gao+1,4);
		for(i=gao+1;i>=1;i--)
		{
			shuwei[i-1]=number/pow(10,i-1);
			a=number/pow(10,i-1);
			number=number-a*pow(10,i-1);
		}
		for(i=1;i<=gao+1;i++)
			if(shuwei[i-1]!=shuwei[gao+1-i])
			{
				t=0;
				break;
			}
		if(t==1)
			z=1;
		else
			z=0;
		free(shuwei);
		return z;
}

int main()
{
	int num,i=1,j,m,n,a[1000]={0},t[1000]={0},w=0;
	scanf("%d %d",&m,&n);
	for(num=m;num<=n;num++)
		if(huiwen(num)==1)
		{
			a[i-1]=num;
			i++;
		}
	for(i=1;i<=1000;i++)
		if(a[i-1]!=0)
			for(j=2;j<a[i-1];j++)
				if(a[i-1]%j==0)
				{
					t[i-1]=1;
					break;
				}
	for(i=1;i<=1000;i++)
		if(a[i-1]!=0&&t[i-1]==0)
		{
			printf("%d",a[i-1]);
			w=1;
			break;
		}
	for(j=i+1;j<=1000;j++)
		if(a[j-1]!=0&&t[j-1]==0)
			printf(",%d",a[j-1]);
	if(w==0)
		printf("no");
}
int main()
{
	int m,n,i,b,r,q=0,l=0,j,p;
	scanf("%d%d",&m,&n);
	for(i=m;i<=n;i++)
	{q=0;
        p=i;
		for(j=2;j<=i;j++)
		{
			if(i%j==0){
				b=j;
				break;}	
		}
		
    while(p!=0)
	{
    r = p % 10;
    q *= 10;
    q +=r;
    p /= 10;
	}
	if(q==i&&b==i)
	{
		if(l==0) {
		  printf("%d",i);l++;}
	 else 
	 {
		 printf(",%d",i);
            
	 }
		
	}
	

	}	
	if(l==0) 
		printf("no");

return 0;
}
void main()
{
	long m,n,i,j,k,len,temp,num;char a[50];
    num=0;temp=0;
		scanf("%ld%ld",&m,&n);
	for(i=m;i<=n;i++)
		{
		for(j=2;j<i&&i%j!=0;j++);
		if(j==i)
		{ len=(int)log10(i)+1;
		for(k=0;k<len;k++)
		a[k]=(i%(int)pow(10,k+1))/(int)pow(10,k);
		for(k=0;k<len&&a[k]==a[len-1-k];k++);
		if(k==len){printf("%ld",i);num=num+1;temp=i;break;}
		}
	}
	 if(temp==0)printf("no");
		if(temp<n&&temp!=0)
		{for(i=temp+1;i<=n;i++)
		{
		for(j=2;j<i&&i%j!=0;j++);
		if(j==i)
		{ len=(int)log10(i)+1;
		for(k=0;k<=len;k++)
		a[k]=(i%(int)pow(10,k+1))/(int)pow(10,k);
		for(k=0;k<len&&a[k]==a[len-1-k];k++);
		if(k==len){printf(",%ld",i);num=num+1;}
		}
		}
		}
		
}
int h(int x)
{
	int r=0,i,y=x;
	for(i=0;;i++)
	{
		if(x==0)
			break;
		else
			r=r*10+x%10,x=x/10;
	}
	return (r==y)?1:0;
}
void main()
{
	int m,n,i,j,u=0;
	scanf("%d %d",&m,&n);
	for(i=m;i<=n;i++)
	{
		for(j=2;j<=sqrt(i);j++)
			if(i%j==0)
				break;
		if(j>sqrt(i)&&h(i)==1)
		{
			if(u==0)
				printf("%d",i);
			else
				printf(",%d",i);
			++u;
		}
	}
	if(u==0)
		printf("no\n");
}
void main()
{   int n,m,i,u,a[1000],j=0,p,k,temp,t=0;
    scanf("%d%d",&m,&n);
    for(p=m;p<=n;p++)
	{
    	 
        temp=p;t=0;
        while(temp>0)
		{
			k=temp%10;
            t=t*10+k;
            temp=temp/10;
		}
        if(p==t)
		{    u=sqrt(p);
	        for(i=2;i<=u;i++)
		     if(p%i==0)break;
		    if(i>u)
			{  j++;a[j]=p;}
		}
	}
if(j==0)printf("no");
else {printf("%d",a[1]);
for(i=2;i<=j;i++)
printf(",%d",a[i]);}


 

 
}
int sieve[100010]={1,1,0};
int q[1000];
int l=0;
int m,n;

void init()
{
    int i,j;
    scanf("%d%d",&n,&m);
    for(i=2;i<330;i++)
    {
        if(!sieve[i])
        {
            j=i;
            while(i*j<100010)
            {
                sieve[i*j]=1;
                j++;
            }
        }
    }
}

int jud(int x)
{
    int t=x,u=0;
    while(t)
    {
        u=u*10+t%10;
        t/=10;
    }
    return u==x;
}

void solve()
{
    int i;
    for(i=n;i<=m;i++)
    {
        if(!sieve[i] && jud(i))
        {
            q[l++]=i;
        }
    }
}

void print()
{
    int i;
    for(i=0;i<l;i++)
    {
        printf("%d",q[i]);
        if(i<l-1)   putchar(',');
    }
    if(!l)  printf("no");
    putchar('\n');
}

int main()
{
    init();
    solve();
    print();
    return 0;
}
int main ()
{
	int m,n,i,w=0;
	int a[50],j=1;
	scanf("%d%d",&m,&n);
	int huiwen(int i);
	int susu(int i);
	for (i=m;i<=n;i++)
	{
		if (i==huiwen(i))
			w=1;
		w=w * susu(i);
		if (w==1)
		{	a[j]=i;
		    j++;
		}
	}
	if (j==1)
		printf("no");
	else 
	{
		for (i=1;i<j-1;i++)
			printf("%d,",a[i]);
		printf("%d",a[i]);
	}
	return 0;

}
int huiwen (int i)
{
	int n=0;
	while (i!=0)
	{
		n=i%10+10*n;
		i=i/10;
	}
	return n;
}
int susu(int i)
{
	int j,w=1;
	for (j=2;j<=i/2;j++)
		if (i%j==0)
			w=0;
	return w;
}
void main()
{
int test1(int);
int test2(int);
int m,n,x,i,k=0,f1=0,f2=0;
int r[100];
scanf("%d %d",&m,&n);
for(i=0;i<=(n-m);i++)
{
x=m+i;
f1=test1(x);
f2=test2(x);
if(f1 && f2) {r[k]=x;k++;}
}
if(k>0) 
{printf("%d",r[0]);
for(i=1;i<k;i++)
printf(",%d",r[i]);
}
else if(k==0) printf("no");
printf("\n");

}
int test1(int x)
{
int j,f1=1,s;
s=sqrt(x)+1;
for(j=2;j<s;j++)
{if(x%j==0){f1=0;break;}}
return(f1);
}
int test2(int x)
{
int n,j,s=10,f2=1;
int a[5];
if(x>9999) n=5;
else if(x>999 && x<10000) n=4;
else if(x>99 && x<1000) n=3;
else if(x>9 && x<100) n=2;
else n=1;
for(j=0;j<n;j++)
{
a[j]=(x%s)*10/s;
s=s*10;
x=x-a[j];
}
for(j=0;j<n/2;j++)
{if(a[j]!=a[n-j-1]) {f2=0;break;}}
return(f2);
}
int turn(int m)
{
	int n,k;
	n=m;
	int i=0;
	int a[100];
	while(n!=0)
	{a[i]=n%10;i++;n/=10;}
	k=i;
	for(i=0;i<k;i++)
	{
		n*=10;
		n+=a[i];
	}
	if(n==m)return 1;
	else return 0;
}
		



int check(int m)
{
	int i,test1=1,test=0;
	for(i=2;i<=sqrt(m);i++)if(m%i==0)test1=0;
	if(test1!=0)test+=1;
	if(turn(m))test+=1;
	if(test==2)return 1;
	else return 0;
}

void main()
{
	int m,n,t=0,i;
	scanf("%d%d",&m,&n);
	for(i=m;i<=n;i++)
	{
		if(check(i)&&t==0){printf("%d",i);t=1;}
		else if(check(i))printf(",%d",i);
	}
	if(t==0)printf("no");
}
int ss(int p)
{
   int x;
   if(p==2)return 1;
   else
   {
     for(x=2;x<p;x++)
	 {
	 if(p%x==0)break;
	 }
     if(x>=p)return 1;
	 else return 0;
   }
}


int huiwen(int p,int q)
{
  if(p==0)return q;
  else huiwen(p/10,q*10+p%10);

}




void main()
{
   int m,n,coun=0;
   scanf("%d %d",&m,&n);
   int i,ci,temp;
   for(i=m;i<=n;i++)
   {  ci=0;
	   temp=huiwen(i,ci);
      if(ss(i)==1&&(temp==i))
	  {coun++;
	  if(coun==1)printf("%d",i);
	  if(coun>1)printf(",%d",i);
	  }
   
   }
  if(coun==0)printf("no\n");
}
int main()
{
    long m,n,i,s=0;
    long v,j,k,sum=0;
    double h;
    int a[100],b[100];
    scanf("%d %d",&m,&n);
    for(j=m;j<=n;j=j+1)
    {
      v=1;sum=0;
      for(i=0;;i++){h=pow(10,(double)i);if((int)j/(int)h==0)break;}
      for(k=0;k<i;k++){h=pow(10,(double)k);a[v]=(int)j/(int)h;v++;}
      for(k=1;k<i;k++){b[k]=a[k]-a[k+1]*10;}
      b[k]=a[k];
      for(k=i;k>=1;k=k-1){h=pow(10,(double)(i-k));sum=sum+b[k]*(int)h;}
      if(sum==j)
      {
        for(k=2;j>k&&j%k!=0;k=k+1);
        if(k==j){s=s+1;if(s==1)printf("%d",sum);else printf(",%d",sum);}
      }
    }
    if(s==0)printf("no");
    return 0;
}
int huiwen(int a);
int prime(int a);
int main()
{
    int m,n,i,t=0;
	scanf("%d%d",&m,&n);
	for (i=m;i<=n;i++){
		if (huiwen(i)&&prime(i)){
			if (t){
				printf(",");
			}
			printf("%d",i);
			t++;
		}
	}
	if (t==0){
		printf("no");
	}
	printf("\n");
	return 0;
}
int huiwen(int a)
{
	int i,b=0;
	for (i=a;i>0;i/=10){
		b=b*10+i % 10;
	}
	if (a==b){
		return 1;
	}else {
		return 0;
	}
}
int prime(int a)
{
	int i;
	if (a==1){
		return 0;
	}
	for (i=2;i<a;i++){
		if (a%i==0){
			return 0;
		}
	}
	return 1;
}
int sushu(int x)
{
	int r,s;
	r=sqrt(x);
	for(s=2;s<=r;s++)
		if(x%s==0)break;
	if(s>r)return 1;
	else return 0;
}
int huiwen(int y)
{
	int k,e=y;
	for(k=0;e!=0;)
	{
		k=e%10+k*10;
		e=e/10;
	}
	if(k==y)return 1;
	else return 0;
}
void main()
{
	int m,n,a,b,c,d[300],i,j;
	for(i=0;i<300;i++)d[i]=0;
	scanf("%d %d",&m,&n);
	j=0;
	for(a=m;a<=n;a++)
	{
		b=0;c=0;
		if(sushu(a))b=1;
		if(huiwen(a))c=1;
		if((b==1)&&(c==1))
		{
			d[j]=a;
			j++;
		}
	}
	if((j==0)&&(d[0]==0))printf("no\n");
	else
	{
		for(i=0;i<j-1;i++)
			printf("%d,",d[i]);
		printf("%d\n",d[j-1]);
	}
}
int chengfang(int n)
{
	int i,ans=1;
	for(i=1;i<=n;i++)ans*=10;
	return ans;
}

int ws(int n)
{
	int i;
	for(i=1;i<32;i++)
		if(n/chengfang(i)==0)
		{
			return i;
			break;
		}
}

int sushu(int n)
{
	int i,ans=1;
	for(i=2;i<=sqrt(n);i++){
		if(n%i==0){
			ans=0;
		}
	}
	return ans;
}

int huiwen(int n)
{
	int i,t=ws(n),ans=1;
	for(i=1;i<=t/2;i++){
		if(n/chengfang(i-1)%10!=n/chengfang(t-i)%10)
			ans=0;
	}
	return ans;
}

int main()
{
	int n,m,i,t=0;
	scanf("%d%d",&n,&m);
	for(i=n;i<=m;i++){
		if(sushu(i)==1){
			if(huiwen(i)==1){
				printf("%d",i);
				t=i;
				break;
			}
		}
	}
	if(t==0)printf("no");
	else {
	for(i=t+1;i<=m;i++){
		if(sushu(i)==1){
			if(huiwen(i)==1){
				printf(",%d",i);
			}
		}
	}
	}
	return 0;
}
main()
{
      int m,n,i,j,o=0,a[1000];
      scanf("%d %d",&m,&n);
      for(i=m;i<=n;i++)
      {
            for(j=2;j<i;j++)
            {
                if(i%j==0)
                break;
            }
            if(j!=i)
            continue;
            if(j==i)
            {
                int k=0,d=i,c=0,s,l;
                while(d!=0)
                {
                     a[k]=d%10;
                     d=d/10;
                     k++;
                }
                for(l=k-1;l>=c;l--)
                {
                    if(a[l]==a[c])
                    s=1;
                    else
                    {
                    s=0;
                    break;
                    }
                    c++;
                }
                if(s==1)
                {
                        o++;
                        if(o==1)
                        printf("%d",i);
                        else
                        printf(",%d",i);
                }
            }
            
      }  
       if(o==0)
            printf("no");
      getchar();
      getchar();
}
void main()
{	int sushu(int k);
	int huiwen(int number);
	int m,n,i,t,s=0;
	scanf("%d",&m);
	scanf("%d",&n);
	t=m;
	for(i=t;i<=n;i++)
		if(sushu(i)==1&&huiwen(i)==1) {printf("%d",i);t=i;s++;break;}
	for(i=t+1;i<=n;i++)
		if(sushu(i)==1&&huiwen(i)==1) printf(",%d",i);
	if(s==0) printf("no");	 
}
int sushu(int k)
{    int s;
     for(s=2;s<=k;s++)
	    if(k%s==0) break;
	 if(k==s) return(1);
	 else return(0);
}	
int huiwen(int number)
{	int num,sum=0,a;
	num=number;
	for( ;num!=0; )
		{a=num%10;
		 num=num/10;
		sum=sum*10+a;
		}
	if(sum==number) return(1);
	else return(0);
}
int sushu(int a)
{ int i,j=0,m;
  for(i=2;i<=sqrt(a)+1;i++)
  {if(a%i==0)
  {return 1;j++;
  break;}}

  if(j==0)
  {return 0;}
}
int huiwen( int a)
{ int i,j,m,n=0;
char c[100]={0};
	for(i=0;;i++)
	{if(a/10!=0||a%10!=0)
		{c[i]=a%10;
		a=a/10;
		}
	else break;
	}
	for(j=0;j<=i-1;j++)
	{if(c[j]!=c[i-1-j])
	 n++;
	}
	if (n==0)
		return 0;
	else return 1;
}
void main()
{ int a,b,c,d,e[100]={0},i,j;
	scanf("%d %d",&a,&b);
		for(i=a,j=0;i<=b;i++)
		{ d=huiwen(i)+sushu(i);
			if(d==0)
			{e[j]=i;
			j++;}
		}
		
	if(j==0)
		printf("no");
	else 
	{for(i=0;i<=j-2;i++)
	 printf("%d,",e[i]);
	 printf("%d",e[j-1]);
	}
}
int sushu(int n)
{
	int i;
	for(i=2;i<=sqrt(n);i++)
	{
		if(n%i==0) return 0;
	}
	if(i=sqrt(n)+1)
		return 1;
}
int huiwen(int n)
{
	int temp=n,k,m=0;
	while(temp>0)
	{
           k=temp%10;
           m=m*10+k;
           temp=temp/10;
    }
    if(m==n) return 1;
    else return 0;
}
int main()
{
	int m,n,i,flag=0;
	scanf("%d %d",&m,&n);
	for(i=m;i<=n;i++)
	{
		if(sushu(i)==1&&huiwen(i)==1)
		{
			printf("%d",i);
			flag=1;
			break;
		}
	}
	for(i=i+1;i<=n;i++)
	{
		if(sushu(i)&&huiwen(i))
		{
			printf(",%d",i);
			
		}
	}
	if(flag==0)
		printf("no");    
		
	return 0;
}
int y=0;
void main()
{
	int m,n,i,j,k=0,l,x,p=0;
	int a[10000],b[10000];
	scanf("%d%d",&m,&n);
	int huiwen(int j,int x,int y);
	for(i=m;i<=n;i++)
	{
		for(j=2;i>=j;j++)
			if(i%j==0)break;
		if(i==j)
		{
			if(j>=1000000&&j<10000000)
				x=7;
	        if(j>=100000&&j<1000000)
				x=6;
			if(j>=10000&&j<100000)
				x=5;
			if(j>=1000&&j<10000)
				x=4;
			if(j>100&&j<1000)
				x=3;
			if(j>10&&j<100)
				x=2;
			if(j>=0&&j<10)
				x=1;
	
			a[k]=j;
			k=k+1;
		}
	}
	for(l=0;l<k;l++)
	{	
		n=huiwen(a[l],x,y);
		if(n==a[l])
		{
			b[p]=a[l];
			p=p+1;
		}
	}
	if(p==0)
		printf("no");
	else
	{
	for(l=0;l<p-1;l++)
		printf("%d,",b[l]);
	printf("%d",b[p-1]);
	}
}
		   
int huiwen(int j,int x,int y )
{
	if(j==0)
	{
		return(y);
	}	    
	else
	{
		y=y*10+j%10;

		huiwen(j/10,x-1,y);
	}
}
int sushu(int n)
{
	int i,j,r;
	j=1;
	for(i=2;i<n&&j==1;i++)
	{
		if(n%i==0)
		{
			j=0;
			break;
		}
	}
	if(j==1)r=1;
	else r=0;
	return(r);
}
int huiwen(int n)
{
	int weishu;
	int i,j=1,r;
	for(i=0;j==1;i++)
	{
		if(n/(int)pow(10,i)==0)
		{
			j=0;
			break;
		}
	}
	weishu=i;
	int num[10];
	for(j=1;j<=weishu;j++)
		num[j]=(n%(int)pow(10,j)-n%(int)pow(10,(j-1)))/(int)pow(10,(j-1));
	int k=1;
	for(j=1;j<=weishu&&k==1;j++)
	{
		if(num[j]!=num[weishu-j+1])
		{
			k=0;
			break;
		}
	}
	if(k==1)r=1;
	else r=0;
	return(r);
}
void main(void)
{
	int m,n,num[100],i;
	for(i=0;i<100;i++)
		num[i]=-1;
	scanf("%d",&m);
	scanf("%d",&n);
	int l=0;
	for(i=m;i<=n;i++)
	{
		if((sushu(i)==1)&&(huiwen(i)==1))
		{
			num[l]=i;
			l++;
		}
	}
	if(num[0]==-1)printf("no\n");
	else if(num[1]==-1)printf("%d\n",num[0]);
	else
	{
		printf("%d",num[0]);
		for(i=1;i<l-1;i++)printf(",%d",num[i]);
		printf(",%d\n",num[l-1]);
	}
}
void main()
{
	int m,n,i,p,flag,a,exist,w,b;
	scanf("%d %d",&m,&n);
	exist=0;
	for(i=m;i<=n;i++)
	{
		a=0;
		flag=1;
		for(p=2;p<=i/2;p++)
		{
			if(i%p==0)
			{
				flag=0;
				break;
			}
		}
		if(flag==0)
			continue;
		w=i;
		while(w>0)
		{
			b=w%10;
			a=a*10+b;
			w=w/10;
		}
		if(a==i)
		{
			printf((exist==1)?",%d":"%d",i);
			exist=1;
		}
	}
	if(exist==0)
		printf("no");
}
int main()
{
	int m,n,k,i,j,sum=0,flag=0,r,s,t,o,p,sum1=0;
	long a[100000],b[100000];
	scanf("%d %d",&m,&n);
	j=0;
	for(k=m;k<=n;k++)
	{
		for(i=2;i<k;i++)
		{
			if(k%i==0) break;
		}
		if(i==k)
		{
			a[j]=k;
			j++;
			sum++;
		}
	}
	j=0;

	for(i=0;i<sum;i++)
	{
		if(a[i]>=2&&a[i]<=9)
		{
			b[j]=a[i];
			j++;
			sum1++;
			flag=1;
		}
		
		if(a[i]>=100&&a[i]<=999)
		{
			for(r=0;r<=9;r++)
			{
				for(s=0;s<=9;s++)
				{
					for(t=0;t<=9;t++)
					{
						if(r*100+s*10+t==a[i])
						{
							if(r==t)
							{
							b[j]=a[i];
							j++;
							sum1++;
							flag=1;
							}
						}
					}
				}
			}
		
		}
		if(a[i]>=1000&&a[i]<=9999)
		{
			for(r=0;r<=9;r++)
			{
				for(s=0;s<=9;s++)
				{
					for(t=0;t<=9;t++)
					{
						for(o=0;o<=9;o++)
						{
						if(o*1000+r*100+s*10+t==a[i])
						{
							if(o==t&&r==s)
							{
							b[j]=a[i];
							j++;
							sum1++;
							flag=1;
							}
						}
					}
				}
			}
			}
		
		}
		if(a[i]>=10000&&a[i]<=99999)
		{
			for(o=0;o<=9;o++)
			{
				for(p=0;p<=9;p++)
				{
			for(r=0;r<=9;r++)
			{
				for(s=0;s<=9;s++)
				{
					for(t=0;t<=9;t++)
					{
						if(o*10000+p*1000+r*100+s*10+t==a[i])
						{
							if(o==t&&p==s)
							{
							b[j]=a[i];
							j++;
							sum1++;
							flag=1;
							}
						}
					}
				}
			}
				}
		
		}
		}
	}
	if(flag==0) printf("no");
	else
	{

	for(i=0;i<sum1;i++)
	{
		if(i==0) printf("%ld",b[i]);
		else
			printf(",%ld",b[i]);
	}
	}



	return 0;
}
int su(int a)
{
	int i,z=1;
	for(i=2;i<a;i++)if(a%i==0)z=0;
	return z;
}

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

void main()
{
	int m,n;scanf("%d %d",&m,&n);
	int i,l=0,a[100],*x=a;
	//i=hui(12321);
	for(i=m;i<=n;i++)
		{if(su(i)*hui(i)==1){l++;*x=i;x++;}
		 else;}
	if(x-a==0)printf("no");
	else{
		printf("%d",a[0]);
	for(i=1;i<l;i++)printf(",%d",a[i]);
}}
int huiwen(int);
int sushu(int);
int main(){
	int m,n;
	scanf("%d %d",&m,&n);	int i,k,*sz=(int *)malloc(sizeof(int)*(n-m));
	k=0;
	for(i=m;i<=n;i++){
		if(huiwen(i)){
			if(sushu(i)){
			sz[k]=i;
			k++;}
		}
	}
	if(k==0){printf("no");}
	else{
		printf("%d",sz[0]);
		for(i=1;i<k;i++){
			printf(",%d",sz[i]);
		}
	}
	return 0;
}
int huiwen(int x){
	int z=0,y,wei[10];
	for(y=x;y>0;y=y/10){
		wei[z]=y%10;
		z++;
	}
	for(y=0;y<z/2;y++){
		if(wei[y]!=wei[z-1-y]){
			return 0;
		}
	}
	return 1;
}
int sushu(int w){
	if(w==2){
		return 1;
	}
	int u,v=0;
	for(u=2;u<w;u++){
		if(w%u==0){
			v++;
		}
	}if(v==0){return 1;}else{return 0;}
}
int f1(int i)
{
	int t,c=1;
	for(t=2;t<=(i/2);t++)
		if(i%t==0)
		{c=0;break;}
	return(c);
}
int f2(int i)
{
	int t1=0,t2=i;
	while(t2!=0)
	{
		t1=t1*10+t2%10;
		t2=t2/10;
	}
	if(t1==i)
    return(1);
	else return(0);
}

void main()
{
	int n,m,i,c=0;
	scanf("%d %d",&m,&n);
    
	for(i=m;i<=n;i++)
	{
	if(f1(i)&&f2(i))
	{if(c==0)
	{printf("%d",i);c=1;}
	else
		printf(",%d",i);
    }
	}
	if(c==0)
		printf("no");
	printf("\n");
	
}
main ()
{
	int a,b,i,j=0,k=0,h=1,v,l,c=0,leap=1,q;
	int m[22];
	scanf("%d%d",&a,&b);
	for(i=a;i<b+1;i++)
	{c=i;
	j=0;
	leap=1;
while(c!=0)
    
{ 
	m[j]=c%10;
	c=c/10;
	j=j+1;
	}
   
  for(k=0;k<(j/2);k++)
    {
	  if(m[k]!=m[j-k-1])
    {leap=0;
    break;}}
  v=(int)(sqrt(i));
   for(l=2;l<v+1;l++)
   {if(i%l==0)
	   {leap=0;
	   break;}}
	if(leap==1)
	{	if(h==1)
	printf("%d",i),h=h+1;
	else printf(",%d",i);
	}
    
	}
   if(leap==0&&h==1)
	   printf("no");
 }
int main()
{
 int a,b,i,m,n,j,k=0,t,g[100],l;
 scanf("%d %d",&a,&b);
 for(i=a;i<=b;i++)
 {t=i;m=1;n=0;
 while(t!=0)
 {m=t%10;t=t/10;n=n*10+m;}
 if(n==i)
 {for(j=2;j<i/2;j++)
 {if(i%j==0) break;
 if(j==i/2-1) {g[k]=i;k=k+1;}
 }
 }
 }
 if(k==0) printf("no");
 else printf("%d",g[0]);
 for(l=1;l<k;l++)
 {printf(",%d",g[l]);}
}
int n,m;
int ans[100];
int look=0;
int i;
int check1(int num);
int check2(int num);
int main(void)
{
	scanf("%d %d",&n,&m);
	for(i=0;i<100;i++)
	{
		ans[i]=0;
	}
	for(i=n;i<=m;i++)
	{
		if(check1(i) && check2(i))
		{
			ans[look]=i;
			look++;
		}
	}
	if(look==0)
	{printf("no");
	return 0;}
	printf("%d",ans[0]);
	for(i=1;i<look;i++)
	{
		printf(",%d",ans[i]);
	}
    return 0;
}

int check1(int num)
{
	int j;
	for(j=2;j<=sqrt(i);j++)
	{
		if(i%j==0)
			return 0;
	}
	return 1;
}
int check2(int num)
{
	int len=0;
	int ctr1;
	int number1[100];
	int number2[100];
	int temp=num;
	while(temp!=0)
	{
		temp=temp/10;
		number1[len+1]=temp;
		len++;
	}
    number1[0]=num;
	for(ctr1=0;ctr1<len;ctr1++)
	{
        number2[ctr1]=number1[ctr1]-number1[ctr1+1]*10;
	}
	temp=0;
	for(ctr1=0;ctr1<len;ctr1++)
	{
		temp=temp*10+number2[ctr1];
	}
	if(temp==num)
		return 1;
	else return 0;
}
int f(int n)
{int x=0,t;
t=n;
while(n>0)
{x=x*10+n%10;
n=n/10;
}
if(t==x)return 1;
else return 0;
}
int g(int i)
{int j,t=0;
	for(j=2;j<i/2;j++)
		if(i%j==0) {return 0;break;}
		else t++;
if(t==i/2-1) return 1;		
}
void main()
{int m,n,i,k=0;
scanf("%d %d",&m,&n);
for(i=m;i<=n;i++)
{if(f(i)&&g(i))
	{k++;
	if(k==1)printf("%d",i);
	else printf(",%d",i);
	}
}
if(k==0)printf("no\n");
else printf("\n");
}
int pp(int p);
int hv(int h);
main()
{
      int n,m;
      scanf("%d %d",&n,&m);
      int i=0;
      int count=0;
      for(i=n;i<=m;i++)
      {
        // printf(" %d ",i);
        // printf(" %d \n",pp(i));
         if(pp(i)&&hv(i))
           {
              //printf(" %d ",count);
              if(count==0)
                {
                    printf("%d",i);     
                }
              if(count>0)
                {
                    printf(",%d",i);     
                }
              count++;           
           }
      }
     if(count==0)
     {
        printf("no");
     } 
      getchar(); getchar(); getchar(); getchar(); getchar(); getchar(); getchar(); getchar(); getchar(); getchar();
}
int pp(int p)
{
    int i=0;
    if(p==1)
       return(0);
    if(p==2||p==3||p==5)
       return(1);
    for(i=2;i<=sqrt(p);i++)
    {
       if(p%i==0)
       {
          return(0);
       }
    }
    return(1);
}
int hv(int h)
{
    int a[8];
    int i=1;
    while(h>0)
    {
       a[i]=h%10;
       h/=10;
       i++;
    }
    i--;
    //printf("i= %d ",i);
    //int s=0;
    //for(s=1;s<=i;s++){printf("%d",a[s]);}printf(" ");
    int j=0;
    for(j=0;j<=i/2;j++)
    {
       if(a[j+1]!=a[i-j]) 
       {
          // printf("  0 \n");
       return(0);}
    }                         //printf("  1 \n");
    return(1);                 
}
f1(int x)
{
int a,b,p[100];
for(a=0;x!=0;a++)
{p[a]=x%10;
x=x/10;}
a--;
for(b=0;b<=a;b++)
{if(p[b]!=p[a])break;
else a--;}
if(b<a) return 0;
else return 1;
}
f2(int x)
{
	int a,b;
	for(a=2;a<=x;a++)
	{	b=x%a;
	if(b==0)break;}
	if(a==x) return 1;
	else return 0;
}
void main()
{int a,b,c;
scanf("%d%d",&a,&b);
c=0;
for(;a<=b;a++)
if(f1(a)==1&&f2(a)==1&&c==1)
printf(",%d",a);
else if(f1(a)==1&&f2(a)==1)
{printf("%d",a);
c=1;}
if(c==0)printf("no");
}
int is_huiwen(long x)
{
	long r=0,xx;
	xx=x;
	while (xx!=0)
	{
		r=r*10+xx%10;
		xx=xx/10;
	}
	if (r==x) return 1;
	else return 0;
}
int is_sushu(long x)
{
	int y,f=1;
	if (x==2) return 1;
	else if (x%2==0) return 0;
	else
	{
		for (y=3;y<=(int)sqrt(x);y+=2)
			if (x%y==0) f*=0;
		return f;
	}
}
void main()
{
	long m,n,a,num[50];
	int i,f=-1;
	scanf("%d%d",&m,&n);
	for (a=m;a<=n;a++)
		if (is_sushu(a) && is_huiwen(a))
		{
			f++;
			num[f]=a;
		}
	if (f==0) printf("%d",num[0]);
	else if (f>0)
	{
		printf("%d",num[0]);
		for (i=1;i<=f;i++)
			printf(",%d",num[i]);
	}
	else printf("no");
}
int f1(int x)
{
	int i,j=1;
	for(i=2;i<=sqrt(x);i++)
	{
		if(x%i==0)
		{
			j=0;
			break;
		}
	}
	return(j);
}
int f2(int x)
{
	int s[10];
	int i,j,k=1;
    for(i=0;x!=0;i++)
	{
		s[i]=x%10;
		x=x/10;
	}
	for(j=0;j<i-1;j++,i--)
	{
		if(s[i-1]!=s[j])
		{
			k=0;
			break;
		}
	}
	return(k);
}
void main()
{
	int m,n,i,j;
	scanf("%d%d",&m,&n);
	j=1;
	for(i=m;i<=n;i++)
	{   
		if(f1(i)&&f2(i))
		{
		  printf("%d",i);
		  j=0;
		  break;
		}
	}
	if(j==1)
		printf("no");
	for(j=i+1;j<=n;j++)
	{
		if(f1(j)&&f2(j))
			printf(",%d",j);
	}
}
int revchk(int);
int main()
{
	int m,n,i,j,flag,tag=1,*t,*p,count=0;
	scanf("%d %d", &m, &n);
	t=(int*)calloc(n-m+1,sizeof(int));
	p=t;
	for(i=m;i<=n;i++){
		flag=1;
		for(j=2;j<(int)sqrt(i)+1;j++){
			if(i%j==0){
				flag=0;
				break;
			}
		}
		if(flag)
			if(revchk(i)){
				*(t++)=i;
				count++;
			}
	}
	t=p;
	if(!*t)
		printf("no");
	i=0;
	while(*(t)){
		printf("%d",*(t++) );
		if(i++<count-1)
			printf(",");
	}
	free(p);
	return 0;
}

int revchk(int test)
{
	int i,j,*n;
	int digit=(int)(log(test)/log(10))+1;
	n=(int*)calloc(digit,sizeof(int));
	*(n+digit-1)=(int)(test/pow(10,digit-1));						//??????????
	for(i=digit-2;i>=0;i--){
		test=test-pow(10,i+1) * (*(n+i+1) );
		*(n+i)=(int)(test / pow(10,i) );							//???????
	}
	for(i=0,j=digit;i<j;i++,j--){
		if( *(n+i)==*(n+j-1) )
			continue;
		return 0;
	}
	return 1;
}
int f(int n)
{
	for(int i=2;i<=sqrt(n);i++)
	{
	if(n%i==0)
	return 0;
	}
	return 1;
}
int g(int n)
{
	int i=0;
	int a[20];
	int * p=a;int * q;
	while(n!=0)
	{
		a[i]=n%10;
		n=n/10;
		i++;
	}
	q=&a[i-1];
	while(*p==*q&&p<=q)
	{	p++;q--;}
	if(p>=q)
		return 1;
	if(p<q)
		return 0;
}
int main()
{
    int m,n,i,t=0;
	scanf("%d %d",&m,&n);
    for(i=m;i<=n;i++)
	{
		if(f(i)==1&&g(i)==1)
		{
		  if(t==0)
         printf("%d",i);
		  if(t>0)
	     printf(",%d",i);
		  t=1;
		}
	}
	if(t==0)
		printf("no");
	return 0;
}
int huiwen(int x)
{
	int z=0;
	while(x)
	{
		z=z*10+x%10;
		x=x/10;
	}
	return(z);
}
main()
{
	int i,j,k=0,flag=0,l,a,b,c[1000],t;
	scanf("%d%d",&a,&b);
	for(i=1;i<1000;i++)
	{
		c[i]=0;
	}
	for(i=a;i<=b;i++)
	{
		t=1;
		for(j=2;j<=sqrt(i);j++)
		{
			if(i%j==0)t=0;
		}
		if(t)
		{
			l=huiwen(i);
			if(l==i)
			{
				k++;
				c[k]=i;
			}
		}
	}
	if(k==0)
	{
		printf("no");
	}
	else
	{
		for(i=1;i<=k;i++)
		{
			if(flag)
			{
				printf(",");
			}
			printf("%d",c[i]);
			flag=1;
		}
	}
}
int huiwen(int n)
{
	int m=0;
	while(n!=0)
	{
		m=m*10+n%10;
		n=n/10;
	}
	return(m);
}
int sushu(int n)
{
	int i;
	if(n%2==0&&n>2)
		return(0);
	else if(n==2)
		return(1);
	else
	{
		for(i=3;i<=sqrt(n);i+=2)
		{
			if(n%i==0)
				break;
		}
		if(i<=sqrt(n))
			return(0);
		else
			return(1);
	}
}
void main()
{
	int m,n,k,a=0;
	scanf("%d%d",&m,&n);
	for(k=m;k<=n;k++)
	{
		if(k==huiwen(k)&&sushu(k)==1)
		{
			if(a==0)
			{
				printf("%d",k);
				a++;
			}
			else
				printf(",%d",k);
		}
	}
	if(a==0)
		printf("no");
}
int main()
{
	int m,n,flag[100000],i,j,flagio=0,temp;
	int judge(int k);
	scanf("%d %d",&m,&n);
	temp=m;
	for(i=m;i<=n;i++)flag[i]=1;
	for(i=m;i<=n;i++)for(j=2;j<=sqrt(i);j++)if(i%j==0)flag[i]=0;
	for(i=m;i<=n;i++)if((flag[i])&&(judge(i))){temp=i;printf("%d",i);flagio=1;break;}
	for(i=temp+1;i<=n;i++)if((flag[i])&&(judge(i)))printf(",%d",i);
	if(flagio==0)printf("no");
	return 0;
}
int judge(int k)
{
	int i=0,l,sum=0,scale=1,tem;
	tem=k;
	while(k>=pow(10,i))i++;
	i--;
	while(i>=0)
	{
		l=k/pow(10,i);
		sum=sum+l*scale;
		k=k-l*pow(10,i);
		scale=scale*10;
		i--;
	}
	if(sum==tem)return(1);
	else return(0);
}