#include <stdio.h>
#include <math.h>
#define MAX 1024
int N,M;
int judge(int);
int judge(int x)
{
if(x==1)
return 0;
else
{
for(int i = 2;i<=sqrt(x);i++)
{
if(x%i==0)
return 0;
}
return 1;
}
}
int main()
{
int flag = 0,temp,flag2 = 0,n[MAX],KK = 0;
scanf("%d %d",&N,&M);
for(int i = N;i<=M;i++)
{
flag = judge(i);
if(flag)
{
int t = 0,num[MAX];
temp = i;
while(temp>0)
{
num[t++] = temp%10;
temp/=10;
}
int k = t;
for(int j = 0;j<t;j++)
{
temp+=num[j]*pow(10,k-1);
k--;
}
flag = judge(temp);
if(flag)
{
flag2 = 1;
n[KK++] = i;
}
}
}
if(!flag2)
printf("NO");
else
for(int g = 0;g<KK;g++)
{
if(g<KK-1)
printf("%d,",n[g]);
else
printf("%d",n[g]);
}
return 0;
}