#include <iostream>
#include <string.h>
using namespace std;
int memo[20000000];
const int max1=8000000;
void f(int m,int n){
memset(memo,0,sizeof(memo));
int ans=m+1;
for(int i=m;i<max1;i++){
if(memo[i]==0){
if(n==0){
ans=i;
break;
}else{
n--;
for(int j=i*2;j<max1;j+=i){
memo[j]=1;
}
}
}
}
cout<<ans<<endl;
}
int main() {
int m,n;
while(true){
cin>>m>>n;
if(m+n==0)break;
f(m,n);
}
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8c3RyaW5nLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgppbnQgbWVtb1syMDAwMDAwMF07CmNvbnN0IGludCBtYXgxPTgwMDAwMDA7CnZvaWQgZihpbnQgbSxpbnQgbil7CgltZW1zZXQobWVtbywwLHNpemVvZihtZW1vKSk7CglpbnQgYW5zPW0rMTsKCWZvcihpbnQgaT1tO2k8bWF4MTtpKyspewoJCWlmKG1lbW9baV09PTApewoJCQlpZihuPT0wKXsKCQkJCWFucz1pOwoJCQkJYnJlYWs7CgkJCX1lbHNlewoJCQkJbi0tOwoJCQkJZm9yKGludCBqPWkqMjtqPG1heDE7ais9aSl7CgkJCQkJbWVtb1tqXT0xOwoJCQkJfQoJCQl9CgkJfQoJfQoJY291dDw8YW5zPDxlbmRsOwp9CgppbnQgbWFpbigpIHsKCWludCBtLG47Cgl3aGlsZSh0cnVlKXsKCQljaW4+Pm0+Pm47CgkJaWYobStuPT0wKWJyZWFrOwoJCWYobSxuKTsKCX0KCQoJcmV0dXJuIDA7Cn0=