$h={}
def d n,l
$h[l+[n]]||=n<0?[]:n>0?l.flat_map{a,*b=l.rotate!;d(n-a,b.sort).map{|i,j|[i,(j+[a]).sort]}}.uniq: [[l,[]]]
end
def s e,f
$h[[e,f.sort]]||=e[0]?f.max>e.max&&f.any?{a,*b=f.rotate!;d(a,e).any?{|i,j|s i,j+b}}:1
end
(*e,f=gets.split.map(&:to_i).sort
puts s(e,[f])?:YES:"NO")while gets[0]>?0