#include <bits/stdc++.h>
#pragma GCC optimize(2)
using namespace std;
int a[1005];
int cmp(int a, int b) { return a > b; }
long long read() {
  long long w = 1, c, ret;
  while ((c = getchar()) > '9' || c < '0') w = (c == '-' ? -1 : 1);
  ret = c - '0';
  while ((c = getchar()) >= '0' && c <= '9') ret = ret * 10 + c - '0';
  return ret * w;
}
int main() {
  int n, s;
  n = read();
  s = read();
  for (int i = 1; i <= n; i++) {
    cin >> a[i];
  }
  sort(a + 1, a + n + 1);
  int sum = 0;
  for (int i = 1; i <= n; i++) {
    sum += a[i];
  }
  sum -= a[n];
  if (sum > s)
    cout << "NO";
  else
    cout << "YES";
  return 0;
}
