#include <stdio.h>
#define MAX_N 20
#define MAX_M 200

int A[MAX_N];
int dp[MAX_N][MAX_M+1];
int n;

int solve(int pos, int m) {
    if (m < 0) {
        return 0;
    }
    if (dp[pos][m] >= 0) {
        return dp[pos][m];
    }

    if (m == 0) {
        dp[pos][m] = 1;
    } else if (pos >= n) {
        dp[pos][m] = 0;
    } else if (solve(pos+1, m)) {
        dp[pos][m] = 1;
    } else if (solve(pos+1, m-A[pos])) {
        dp[pos][m] = 1;
    } else {
        dp[pos][m] = 0;
    }

    return dp[pos][m];
}

int main(void) {
    int i, j, q;
    for (i = 0; i < MAX_N; i++) {
        for (j = 0; j < MAX_M+1; j++) {
            dp[i][j] = -1;
        }
    }

    scanf("%d", &n);
    for (i = 0; i < n; i++) {
        scanf("%d", &A[i]);
    }

    scanf("%d", &q);
    for (i = 0; i < q; i++) {
        int m;
        scanf("%d", &m);
        if (solve(0, m)) {
            puts("yes");
        } else {
            puts("no");
        }
    }

    return 0;
}