/*
ID: aznfy1
PROG: dualpal
LANG: C++
*/
#include<stdio.h>
#include<string.h>
#include<iostream>
using namespace std;
int num[500];int len;
void change(int x,int b)
{
int i=0;
while(x!=0)
{
num[i]=x%b;
x=x/b;
i++;
}
len=i;
}
int judge()
{
for(int i=0;i<len/2;i++)
{
if(num[i]!=num[len-i-1])
return 0;
}
return 1;
}
int main()
{
freopen("dualpal.in","r",stdin);
freopen("dualpal.out","w",stdout);
int m,n;
while(cin>>n>>m)
{
int i=0;
for(int j=m+1;;j++)
{
int time=0;
change(j,2);
time+=judge();
change(j,3);
time+=judge();
change(j,4);
time+=judge();
change(j,5);
time+=judge();
change(j,6);
time+=judge();
change(j,7);
time+=judge();
change(j,8);
time+=judge();
change(j,9);
time+=judge();
change(j,10);
time+=judge();
if(time>=2)
{for(int i=len-1;i>=0;i--)
cout<<num[i];
cout<<endl;i++;}
if(i==n)
break;
}
}
return 0;
}