#include <bits/stdc++.h>
using namespace std;
int main() {
  long long n, k, d1, d2, ans, i, j, a1, a2, a3;
  int t;
  scanf("%d", &t);
  while (t--) {
    scanf("%lld %lld %lld %lld", &n, &k, &d1, &d2);
    if (n % 3 != 0) {
      printf("no\n");
      continue;
    }
    j = n / 3;
    i = ((-2) * d1) + d2;
    i = k - i;
    if (i % 3 == 0) {
      i = i / 3;
      a1 = i;
      a2 = i - d1;
      a3 = i - d1 + d2;
      if (a1 >= 0 && a1 <= j && a2 >= 0 && a2 <= j && a3 >= 0 && a3 <= j) {
        printf("yes\n");
        continue;
      }
    }
    i = ((-2) * d1) - d2;
    i = k - i;
    if (i % 3 == 0) {
      i = i / 3;
      a1 = i;
      a2 = i - d1;
      a3 = i - d1 - d2;
      if (a1 >= 0 && a1 <= j && a2 >= 0 && a2 <= j && a3 >= 0 && a3 <= j) {
        printf("yes\n");
        continue;
      }
    }
    i = ((-1) * d1) - d2;
    i = k - i;
    if (i % 3 == 0) {
      i = i / 3;
      a1 = i - d1;
      a2 = i;
      a3 = i - d2;
      if (a1 >= 0 && a1 <= j && a2 >= 0 && a2 <= j && a3 >= 0 && a3 <= j) {
        printf("yes\n");
        continue;
      }
    }
    i = ((1) * d1) - d2;
    i = k - i;
    if (i % 3 == 0) {
      i = i / 3;
      a1 = i + d1;
      a2 = i;
      a3 = i - d2;
      if (a1 >= 0 && a1 <= j && a2 >= 0 && a2 <= j && a3 >= 0 && a3 <= j) {
        printf("yes\n");
        continue;
      }
    }
    i = ((-1) * d1) + d2;
    i = k - i;
    if (i % 3 == 0) {
      i = i / 3;
      a1 = i - d1;
      a2 = i;
      a3 = i + d2;
      if (a1 >= 0 && a1 <= j && a2 >= 0 && a2 <= j && a3 >= 0 && a3 <= j) {
        printf("yes\n");
        continue;
      }
    }
    i = ((1) * d1) + d2;
    i = k - i;
    if (i % 3 == 0) {
      i = i / 3;
      a1 = i + d1;
      a2 = i;
      a3 = i + d2;
      if (a1 >= 0 && a1 <= j && a2 >= 0 && a2 <= j && a3 >= 0 && a3 <= j) {
        printf("yes\n");
        continue;
      }
    }
    i = ((1) * d1) + ((-2) * d2);
    i = k - i;
    if (i % 3 == 0) {
      i = i / 3;
      a1 = i - d2 + d1;
      a2 = i - d2;
      a3 = i;
      if (a1 >= 0 && a1 <= j && a2 >= 0 && a2 <= j && a3 >= 0 && a3 <= j) {
        printf("yes\n");
        continue;
      }
    }
    i = ((-1) * d1) + ((-2) * d2);
    i = k - i;
    if (i % 3 == 0) {
      i = i / 3;
      a1 = i - d1 - d2;
      a2 = i - d2;
      a3 = i;
      if (a1 >= 0 && a1 <= j && a2 >= 0 && a2 <= j && a3 >= 0 && a3 <= j) {
        printf("yes\n");
        continue;
      }
    }
    i = ((-1) * d1) + ((2) * d2);
    i = k - i;
    if (i % 3 == 0) {
      i = i / 3;
      a1 = i - d1 + d2;
      a2 = i + d2;
      a3 = i;
      if (a1 >= 0 && a1 <= j && a2 >= 0 && a2 <= j && a3 >= 0 && a3 <= j) {
        printf("yes\n");
        continue;
      }
    }
    i = ((1) * d1) + ((2) * d2);
    i = k - i;
    if (i % 3 == 0) {
      i = i / 3;
      a1 = i + d1 + d2;
      a2 = i + d2;
      a3 = i;
      if (a1 >= 0 && a1 <= j && a2 >= 0 && a2 <= j && a3 >= 0 && a3 <= j) {
        printf("yes\n");
        continue;
      }
    }
    i = ((2) * d1) - d2;
    i = k - i;
    if (i % 3 == 0) {
      i = i / 3;
      a1 = i;
      a2 = i + d1;
      a3 = i + d1 - d2;
      if (a1 >= 0 && a1 <= j && a2 >= 0 && a2 <= j && a3 >= 0 && a3 <= j) {
        printf("yes\n");
        continue;
      }
    }
    i = ((2) * d1) + d2;
    i = k - i;
    if (i % 3 == 0) {
      i = i / 3;
      a1 = i;
      a2 = i + d1;
      a3 = i + d1 + d2;
      if (a1 >= 0 && a1 <= j && a2 >= 0 && a2 <= j && a3 >= 0 && a3 <= j) {
        printf("yes\n");
        continue;
      }
    }
    printf("no\n");
  }
  return 0;
}
