#include <bits/stdc++.h>
#pragma GCC optimize ("O3")
#pragma GCC target ("sse4")
using namespace std;
#define X first
#define Y second
#define pb push_back
typedef pair<int, int> ii;
typedef long long ll;

const int maxn = 5e5+5;

int n, D;

int d[maxn];
int cur[maxn];
int run[maxn];

int main()
{
	scanf("%d %d", &n, &D);
	for(int i = 1; i<= n; i++) scanf("%d", &d[i]);
	cur[n+1] = 1;
	for(int i = n; i>= 1; i--)
	{
		cur[i] = (2*cur[i+1]> d[i])?cur[i+1]+d[i]:cur[i+1];
	}
	run[1] = D;
	for(int i = 1; i<= n; i++)
	{
		run[i+1] = min(run[i], abs(run[i]-d[i]));
	}
	int q; scanf("%d", &q);
	while(q--)
	{
		int x; scanf("%d", &x);
		if(run[n+1] || cur[x+1]<= run[x]) puts("YES");
		else puts("NO");
	}
}