#include <bits/stdc++.h>
using namespace std;
bool dp[40001];
int imos[40002];
int main() {
  int N, L, M, R;
  cin >> N >> L >> M >> R;
  L *= 2, M *= 2, R *= 2;
  dp[M] = true;
  for (int j = 1; j <= (40001); ++j) imos[j + 1] = imos[j] + (dp[j] ? 1 : 0);
  for (int i = 1; i <= (N); ++i) {
    int m;
    cin >> m;
    int mn = m * R, mx = m * L / 2;
    for (int j = 0; j < (2 * M + 1); ++j) {
      int l = max(0, j - mx), r = j - mn;
      dp[j] = false;
      if (r >= 0)
        if (imos[r + 1] - imos[l] > 0) dp[j] = true;
      l = j + mn, r = min(j + mx, M * 2);
      if (l <= M * 2)
        if (imos[r + 1] - imos[l] > 0) dp[j] = true;
    }
    for (int j = 0; j < (40001); ++j) imos[j + 1] = imos[j] + (dp[j] ? 1 : 0);
  }
  cout << (imos[2 * M] > 0 ? "YES\n" : "NO\n");
}
