#include<iostream>
#include<string>
#include<algorithm>
using namespace std;
long long m[100],c[10000],prime[200];
int main(){
	long long n,p;
	int count=0,i=2;
	while(true){
		bool t=true;
		for(int j=2;j*j<=i;j++){
			if(i%j==0)
				t=false;
		}
		if(t==true){
			prime[count]=i;
			count++;
		}
		if(count==200)
			break;
		i++;
	}
	while(true){
		cin>>n>>p;
		if(n==-1&&p==-1)
			break;
		for(int i=0;i<p*p;i++){
			c[i]=1000000;
		}
		if(n==0)
			n++;
		int i=n+1,count=0;
		while(true){
			bool t=true;
			for(int j=0;j<200;j++){
				if(i!=prime[j]&&i%prime[j]==0)
					t=false;
			}
			if(t==true){
				m[count]=i;
				count++;
			}
			if(count==p)
				break;
			if(i%2==1)
				i+=2;
			else
			i++;
		}
		for(int i=0;i<p;i++){
			for(int j=0;j<=i;j++){
				c[i*p+j]=m[i]+m[j];
			}
		}
		sort(c,c+p*p);
		cout<<c[p-1]<<endl;
	}
	return 0;
}