#include <bits/stdc++.h>
using namespace std;
bool solve() {
  int N;
  scanf("%d", &N);
  vector<int> A(N), B(N);
  for (int i = 0; i < N; i++) scanf("%d", &A[i]);
  for (int i = 0; i < N; i++) scanf("%d", &B[i]);
  int64_t s = 0, added = 0;
  for (int i = 0; i < N; i++) {
    s += B[i];
    if (s >= A[i]) {
      s -= A[i];
    } else {
      added += A[i] - s;
      s = 0;
    }
  }
  if (added > B[N - 1]) return false;
  int64_t now = added;
  for (int i = 0; i < N; i++) {
    if (now >= A[i]) {
      now = B[i];
    } else {
      now += B[i];
      if (i == N - 1) now -= added;
      if (now < A[i]) return false;
      now -= A[i];
    }
  }
  return true;
}
int main() {
  int T;
  cin >> T;
  while (T--) printf(solve() ? "YES\n" : "NO\n");
  return 0;
}
