#include<stdio.h>

int n,A[20];

int solve(int i,int m)//再帰関数
{
	int r,l;
	if(m==0) return 1;//m=0の場合、作れる
	if(i>=n) return 0;//与えられた数列以上の場合、失敗
	l=solve(i+1,m);//iを用いなかった場合
	r=solve(i+1,m-A[i]);//iを用いた場合
	if(r>l) return r;
	else return l;
}

int main(void)
{
	int q,M,i;
	
	scanf("%d",&n);
	for(i=0;i<n;i++) scanf("%d",&A[i]);
	scanf("%d",&q);
	for(i=0;i<q;i++){
		scanf("%d",&M);
		if(solve(0,M)==1) printf("yes\n");
		else printf("no\n");
	}

	return 0;
}
