#include <bits/stdc++.h>
using namespace std;
using INT = long long;
int a[1000100], b[1000100];
bool ok(int x, int n) {
  int r = b[1] - x;
  for (int i = 2; i <= n; i++) {
    if (a[i] > r + b[i]) return 0;
    r = min(b[i], r + b[i] - a[i]);
  }
  return 1;
}
int main() {
  int t;
  cin >> t;
  while (t--) {
    int n;
    scanf("%d", &n);
    for (int i = 1; i <= n; i++) scanf("%d", &a[i]);
    for (int i = 1; i <= n; i++) scanf("%d", &b[i]);
    INT suma = 0, sumb = 0;
    for (int i = 1; i <= n; i++) suma += a[i];
    for (int i = 1; i <= n; i++) sumb += b[i];
    if (suma > sumb) {
      puts("NO");
      continue;
    }
    int st = 0, ed = b[1] + 1;
    while (st + 1 < ed) {
      int md = (st + ed) >> 1;
      if (ok(md, n))
        st = md;
      else
        ed = md;
    }
    int r = b[1] - st, flag = 0;
    for (int i = 2; i <= n; i++) {
      if (a[i] > r + b[i]) {
        flag = 1;
        break;
      }
      r = min(b[i], r + b[i] - a[i]);
    }
    if (r + st < a[1]) flag = 1;
    if (flag)
      puts("NO");
    else
      puts("YES");
  }
  return 0;
}
