#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <math.h>

#define SET -1

void sort(int *A,int N){
	int tmp;
	for(int i=0;i<(N-1);i++){
		for(int j=(N-1);j>i;j--){
			if(A[j-1]<A[j]){
				tmp=A[j-1];
				A[j-1]=A[j];
				A[j]=tmp;
			}
		}
	}
}

int frac(int *L,int N,int now,int x,int depth){
	//printf("now=%d\n",now);
	if(now==x){return 1;}
	if(now>x){return -1;}

	int ans;
	int *L2=(int*)malloc(sizeof(int)*N);
	for(int i=0;i<N;i++){
		L2[i]=L[i];
	}

	for(int i=depth;i<N;i++){
		if(L2[i]!=SET){//printf("A=%d\n",L[i]);
		
			L2[i]=SET;
			ans=frac(L2,N,now+L[i],x,depth+1);
			L2[i]=L[i];
			if(ans==1){
				free(L2);
				return 1;
			}
		}
	}
	free(L2);
	return -1;

}

int calc(int *A,int N,int x){
	int max=0;
	for(int i=0;i<N;i++){
		max+=A[i];
	}
	if(max<x){
		return -1;
	}
	if(max==x){
		return 1;
	}

	for(int i=0;i<N;i++){
		if(A[i]<=x){
			//printf("A=%d\n",A[i]);
			if(frac(A,N,A[i],x,(i+1))==1){

				return 1;
			}
		}
	}

	return -1;
}

int main(){
	int N,Q;
	int *A,m;

	scanf("%d",&N);
	A=(int*)malloc(sizeof(int)*N);
	for(int i=0;i<N;i++){
		scanf("%d",&A[i]);
	}
	sort(A,N);

	scanf("%d",&Q);
	for(int i=0;i<Q;i++){
		scanf("%d",&m);
		if(calc(A,N,m)==1){
			printf("yes\n");
		}else{
			printf("no\n");
		}
	}
	
	return 0;
}
