def solve (i, m, n, ary)

  #現時点で作成した数がmと一致したらTRUEを返す．
  if m == 0
    return true
  #iがnを超えた場合，aryを用いてmを作ることができないのでfalseを返す．
  elsif i >= n
    return false
  end

  #どちらの条件も満たさなかった場合，今参照しているary[i]を用いる場合と用いない場合で再度関数を呼び出す．
  res = solve(i + 1, m, n, ary) || solve(i + 1, m - ary[i], n, ary)
  return res
end


size_of_ary  = gets.to_i
ary          = gets.split.map &:to_i
size_of_aryM = gets.to_i
aryM         = gets.split.map &:to_i

aryM.each do |m|
  puts solve(0, m, size_of_ary, ary) ? :yes: :no
end

