#include <stdio.h>
#include <math.h>
#include <stdlib.h>
int Determine(int m);
int main()
{
int i,j,radix,num,flag,k,m;
int A[100]= {0};
while(1)
{
scanf("%d",&num);
if(num<0) break;
else
{
scanf("%d",&radix);
if(!Determine(num)) printf("No\n");
else
{
i=0;
m=0;
while(num)
{
A[i++]=num%radix;
num=num/radix;
}
for(k=i-1; k>=0; k--)
{
m+=A[k]*pow(radix,i-1-k);
}
if(!Determine(m)) printf("No\n");
else printf("Yes\n");
}
}
}
}
int Determine(int m)
{
int flag=1,j;
if(m==2);
else if(m==1) flag=0; //1不是素数
else
{
for(j=2; j<=m/2+1; j++)
{
if(m%j==0)
{
flag=0;
break;
}
}
}
return flag;
}