#include <bits/stdc++.h>
using namespace std;
const double PI = atan(1.0) * 4;
const long long int INF = 1e7 + 9;
long long int arr[105];
int32_t main() {
  ios_base::sync_with_stdio(false), cin.tie(NULL), cout.tie(NULL);
  long long int t;
  cin >> t;
  for (long long int ii = 0; ii < t; ii++) {
    long long int n, m, k;
    cin >> n >> m >> k;
    for (long long int i = 0; i < n; i++) cin >> arr[i];
    long long int cur = m;
    if (n == 1) {
      cout << "YES" << '\n';
      continue;
    }
    bool g = true;
    for (long long int i = 0; i < n - 1; i++) {
      if (arr[i] < arr[i + 1]) {
        long long int diff = arr[i + 1] - arr[i];
        if (arr[i + 1] - arr[i] > k) {
          long long int x = diff - k;
          if (cur < x) {
            g = false;
            break;
          }
          cur = cur - x;
        } else {
          if (arr[i] >= (k - diff))
            cur = cur + (k - diff);
          else
            cur = cur + arr[i];
        }
      } else {
        long long int x = arr[i + 1] - k;
        x = max(x, 0LL);
        cur += (arr[i] - x);
      }
    }
    if (g)
      cout << "YES" << '\n';
    else
      cout << "NO" << '\n';
  }
  return 0;
}
