#include <bits/stdc++.h>
using namespace std;
void solve() {
  long long n, m, k;
  cin >> n >> m >> k;
  long long arr[n];
  for (int i = 0; i < n; i++) cin >> arr[i];
  for (int i = 0; i < n - 1; i++) {
    if (abs(arr[i + 1] - arr[i]) > k) {
      if ((arr[i] - arr[i + 1]) > 0) {
        m += min(arr[i] - arr[i + 1] + k, arr[i]);
      } else {
        if (m < (arr[i + 1] - arr[i] - k)) {
          cout << "NO\n";
          return;
        } else {
          m -= (arr[i + 1] - arr[i] - k);
        }
      }
    } else {
      m += min(arr[i] - arr[i + 1] + k, arr[i]);
    }
  }
  cout << "YES\n";
  return;
}
int main() {
  ios::sync_with_stdio(0);
  cin.tie(0);
  int t = 1;
  cin >> t;
  for (int i = 0; i < t; i++) {
    solve();
  }
  return 0;
}
