require'prime'
t={}
Prime.each(1e6){|i|t[i]=true}
while(n,x=gets.split.map &:to_i)[0]>m=0
d={0=>true}
#n.times{
(1..1e6){|i|d[i]=1}
#i=gets.to_i;(i..x).each{|j|d[j-i]&&(d[j]=true;m<j&&t[j]&&m=j)}
#}
#puts m<1?:NA:m
end