func_code_string: #include <bits/stdc++.h>   using namespace std;   int main() {     int t;     cin >> t;     while (t--) {       long long n, k, d1, d2;       cin >> n >> k >> d1 >> d2;       if (n % 3 != 0) {         cout <<  no  << endl;         continue;       }       long long w1, w2, w3;       bool flag = true;       if (k - 2 * d1 - d2 < 0 || (k - 2 * d1 - d2) % 3 != 0) flag = false;       if (flag) {         w1 = (k - 2 * d1 - d2) / 3;         w2 = d1 + w1;         w3 = d1 + d2 + w1;         if (w1 > n / 3 || w2 > n / 3 || w3 > n / 3) flag = false;       }       if (!flag) {         flag = true;         if (k + 2 * d2 - d1 < 0 || (k + 2 * d2 - d1) % 3 != 0) flag = false;         if (flag) {           w3 = (k + 2 * d2 - d1) / 3;           w1 = w3 + d1 - d2;           w2 = w3 - d2;           if (w1 > n / 3 || w2 > n / 3 || w3 > n / 3 || w1 < 0 || w2 < 0)             flag = false;         }       }       if (!flag) {         flag = true;         if (k + d2 - 2 * d1 < 0 || (k + d2 - 2 * d1) % 3 != 0) flag = false;         if (flag) {           w1 = (k + d2 - 2 * d1) / 3;           w2 = d1 + w1;           w3 = d1 - d2 + w1;           if (w1 > n / 3 || w2 > n / 3 || w3 > n / 3 || w3 < 0) flag = false;         }       }       if (!flag) {         flag = true;         if (k - 2 * d2 - d1 < 0 || (k - 2 * d2 - d1) % 3 != 0) flag = false;         if (flag) {           w3 = (k - 2 * d2 - d1) / 3;           w1 = w3 + d1 + d2;           w2 = d2 + w3;           if (w3 > n / 3 || w2 > n / 3 || w1 > n / 3) flag = false;         }       }       if (flag)         cout <<  yes  << endl;       else         cout <<  no  << endl;     }     return 0;   }   