/*
TASK:crazy
LANG:C
*/
#include <stdio.h>
#include "module.h"
int masx[21],masy[21];
void prostox(long z)
{
  int i,k;
  for(i=0;i<=20;i++) masx[i]=0;
  k=1;
  for(i=2;i<=z;i++)
    if(z%i==0)
      {
        if(masx[k-1]!=i)
        {
          masx[k++]=i;
        }
        z/=i;
        i--;
      }
  masx[0]=k-1;
}
void prostoy(long z)
{

  int i,k;
  for(i=0;i<=20;i++) masy[i]=0;
  k=1;
  for(i=2;i<=z;i++)
    if(z%i==0)
      {
        if(masy[k-1]!=i)
        {
          masy[k++]=i;
        }
        z/=i;
        i--;
      }
  masy[0]=k-1;
}
int prost(long z)
{
  long i;
  for(i=2;i<z;i++)
    if(z%i==0) return 0;
  return 1;
}
int main(void)
{
  long x, y;
  long i;
  
  while (1)
  {
  getnum(&x, &y);
//   scanf("%ld %ld",&x,&y);
   if(prost(x+1))
     {
       prostoy(y);
       if(masy[1]!=y)
         setnum(x+1,masy[1]);
//        printf("%ld %ld\n",x+1,masy[1]);
       else
       {
         prostox(x);
         if(y==2)
          {
/**/            setnum(masx[1], y+1);
            break;
          }
         for(i=1;i<=masx[0];i++)
           if(!prost(masx[i]+1))
            {
              setnum(masx[i], y+1);
//        printf("%ld %ld\n",masx[i],y+1);
              break;
            }
       }
     }
   else
     if(prost(y+1))
       {
         prostox(x);
         if(masx[1]!=x)
           setnum(masx[1], y+1);
//        printf("%ld %ld\n",masx[1],y+1);
         else
           {
             prostoy(y);
             if(x==2)
               {
/**/                 setnum(x+1, masy[1]);
                 break;
               }
             for(i=1;i<=masy[0];i++)
               if(!prost(masy[i]+1))
                {
                  setnum(x+1, masy[i]);
//        printf("%ld %ld\n",x+1,masy[i]);
                  break;
                }
           }
       }
   else
    {
      int b=0;
      prostox(x);
      prostoy(y);
      for(i=1;i<=masx[0];i++)
       if(!prost(masx[i]+1))
         {
           setnum(masx[i], y+1);
//        printf("%ld %ld\n",masx[i],y+1);
           b=1;
           break;
         }
      if(b==0)
       for(i=1;i<=masy[0];i++)
         if(!prost(masy[i]+1))
           {
             setnum(x+1, masy[i]);
//        printf("%ld% ld\n",x+1,masy[i]);
             b=1;
             break;
           }
      if(b==0)
        setnum(x, y);
//        printf("%ld %ld\n",x,y);
    }
  }

return 0;
}
