// بسم الله الرحمن الرحيم
#include <bits/stdc++.h>
using namespace std;
#define FlashIO ios_base::sync_with_stdio(false); cin.tie(nullptr); cout.tie(NULL);
#define all(v) v.begin(), v.end()
#define rall(v) v.rbegin(), v.rend()
#define int long long
#define el "\n"
#define sp " "
int dx[4] = {1, -1, 0, 0};
int dy[4] = {0, 0, 1, -1};
const int oo = 2e18, Mod = 1e9+7;
const int N = 1e5;
void Art() {
int a,b,c,n;
cin>>a>>b>>c>>n;
int mx=max({a,b,c});
int cnt=3*mx-(a+b+c);
if(n<cnt){
cout<<"NO"<<el;
return;
}
n-=cnt;
if(n%3==0)
cout<<"YES"<<el;
else cout<<"NO"<<el;
}
signed main() {
FlashIO;
int tc = 1;
cin >> tc;
while(tc--){
Art();
}
return 0;
}
Ly8g2KjYs9mFINin2YTZhNmHINin2YTYsdit2YXZhiDYp9mE2LHYrdmK2YUgCiNpbmNsdWRlIDxiaXRzL3N0ZGMrKy5oPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwojZGVmaW5lIEZsYXNoSU8gaW9zX2Jhc2U6OnN5bmNfd2l0aF9zdGRpbyhmYWxzZSk7IGNpbi50aWUobnVsbHB0cik7IGNvdXQudGllKE5VTEwpOwojZGVmaW5lIGFsbCh2KSB2LmJlZ2luKCksIHYuZW5kKCkKI2RlZmluZSByYWxsKHYpIHYucmJlZ2luKCksIHYucmVuZCgpCiNkZWZpbmUgaW50ICAgIGxvbmcgbG9uZwojZGVmaW5lIGVsICAgICJcbiIKI2RlZmluZSBzcCAgICAiICIKIAppbnQgZHhbNF0gPSB7MSwgLTEsIDAsIDB9OwppbnQgZHlbNF0gPSB7MCwgMCwgMSwgLTF9OwogCmNvbnN0IGludCBvbyA9IDJlMTgsIE1vZCA9IDFlOSs3Owpjb25zdCBpbnQgTiA9IDFlNTsKIAogCiAKIAp2b2lkIEFydCgpIHsKICAgaW50IGEsYixjLG47CiAgIGNpbj4+YT4+Yj4+Yz4+bjsKICAgaW50IG14PW1heCh7YSxiLGN9KTsKICAgaW50IGNudD0zKm14LShhK2IrYyk7CiAgIGlmKG48Y250KXsKICAgICAgIGNvdXQ8PCJOTyI8PGVsOwogICAgICAgcmV0dXJuOwogICB9CiAgIG4tPWNudDsKICAgaWYobiUzPT0wKQogICAgICAgY291dDw8IllFUyI8PGVsOwogICBlbHNlIGNvdXQ8PCJOTyI8PGVsOwp9CiAKIAogCiAKc2lnbmVkIG1haW4oKSB7CiAgICBGbGFzaElPOwogICAgaW50IHRjID0gMTsKICAgIGNpbiA+PiB0YzsKICAgIHdoaWxlKHRjLS0pewogICAgICAgIEFydCgpOwogICAgfQogICAgcmV0dXJuIDA7Cn0=