#include <cstdio>
#include <cstring>
int cook[30];
bool dp[1000001],prime[1000001];
int main() {
	for(int i=2;i*i<=1000000;i++) {
		if(prime[i]) continue;
		for(int j=i*2;j<=1000000;j+=i) prime[j]=true;
	}
	int n,x;
	while(scanf("%d %d",&n,&x),n) {
		for(int i=0;i<n;i++) {
			scanf("%d",&cook[i]);
		}
		memset(dp,0,sizeof(dp));
		dp[0]=true;
		for(int i=0;i<n;i++) {
			for(int j=0;j<=x;j++) {
				if((j-cook[i])>=0) dp[j]|=dp[j-cook[i]];
			}
		}
		bool NA=true;
		for(int i=x;i>0;i--) {
			if(dp[i]&&!prime[i]) {
				printf("%d\n",i);
				NA=false;
				break;
			}
		}
		if(NA) printf("NA\n");
	}
}