#include <bits/stdc++.h>
#pragma comment(linker, "/STACK:100000000000000")
using namespace std;
const long long int INF = 2e9 + 1;
int main() {
  int T;
  cin >> T;
  for (int(Q) = 0; (Q) < (T); (Q)++) {
    long long int n, k, d1, d2;
    cin >> n >> k >> d1 >> d2;
    bool can = false;
    for (int(i) = 0; (i) < (2); (i)++)
      for (int(j) = 0; (j) < (2); (j)++) {
        long long int a = 0;
        long long int b = (i ? -1 : 1) * d1;
        long long int c = b + (j ? -1 : 1) * d2;
        if (k - b - c >= 0 && (k - b - c) % 3 == 0) {
          long long int x = (k - b - c) / 3;
          if (x >= 0 && x + min(b, c) >= 0) {
            long long int maxi = max(a, max(b, c));
            long long int val = 3 * maxi - a - b - c;
            long long int delta = n - k;
            if (delta >= val && (delta - val) % 3 == 0) can = true;
          }
        }
      }
    printf(can ? "yes\n" : "no\n");
  }
}
