#include <bits/stdc++.h>
#include <chrono>
#define int long long
#define all(x) x.begin(), x.end()
#define f1(i, n) for(int i=1;i<=n;++i)
using namespace std;
using namespace chrono;
const int maxn = 3e5 + 5;
const int MOD = 1e9 + 7;
int A[maxn], cnt[maxn];
main() {
ios::sync_with_stdio(false);
cin.tie(nullptr);
cout.tie(nullptr);
int q;
cin >> q;
while (q--) {
int n, k;
cin >> n >> k;
cnt[0] = cnt[1] = cnt[2] = 0;
f1(i, n) {cin >> A[i]; cnt[A[i] % 3]++;}
k = max(0ll, k - cnt[0]);
int mi = min(cnt[1], cnt[2]);
k = max(0ll, k - mi);
cnt[1] -= mi; cnt[2] -= mi;
if (k == 0) {cout << "YES" << "\n"; continue;}
if (k % 3 == 0) {
if (cnt[1] >= k || cnt[2] >= k) {
cout << "YES" << "\n";
}
else cout << "NO" << "\n";
}
else {
cout << "NO" << "\n";
}
}
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CiNpbmNsdWRlIDxjaHJvbm8+CiNkZWZpbmUgaW50IGxvbmcgbG9uZwojZGVmaW5lIGFsbCh4KSB4LmJlZ2luKCksIHguZW5kKCkKI2RlZmluZSBmMShpLCBuKSBmb3IoaW50IGk9MTtpPD1uOysraSkKdXNpbmcgbmFtZXNwYWNlIHN0ZDsKdXNpbmcgbmFtZXNwYWNlIGNocm9ubzsKCmNvbnN0IGludCBtYXhuID0gM2U1ICsgNTsKY29uc3QgaW50IE1PRCA9IDFlOSArIDc7CgppbnQgQVttYXhuXSwgY250W21heG5dOwoKbWFpbigpIHsKCWlvczo6c3luY193aXRoX3N0ZGlvKGZhbHNlKTsKCWNpbi50aWUobnVsbHB0cik7Cgljb3V0LnRpZShudWxscHRyKTsKCglpbnQgcTsKCWNpbiA+PiBxOwoJd2hpbGUgKHEtLSkgewoJCWludCBuLCBrOwoJCWNpbiA+PiBuID4+IGs7CgkJY250WzBdID0gY250WzFdID0gY250WzJdID0gMDsKCQlmMShpLCBuKSB7Y2luID4+IEFbaV07IGNudFtBW2ldICUgM10rKzt9CgkJayA9IG1heCgwbGwsIGsgLSBjbnRbMF0pOwoJCWludCBtaSA9IG1pbihjbnRbMV0sIGNudFsyXSk7CgkJayA9IG1heCgwbGwsIGsgLSBtaSk7CgkJY250WzFdIC09IG1pOyBjbnRbMl0gLT0gbWk7CgkJaWYgKGsgPT0gMCkge2NvdXQgPDwgIllFUyIgPDwgIlxuIjsgY29udGludWU7fQoJCWlmIChrICUgMyA9PSAwKSB7CgkJCWlmIChjbnRbMV0gPj0gayB8fCBjbnRbMl0gPj0gaykgewoJCQkJY291dCA8PCAiWUVTIiA8PCAiXG4iOwoJCQl9CgkJCWVsc2UgY291dCA8PCAiTk8iIDw8ICJcbiI7CgkJfQoJCWVsc2UgewoJCQljb3V0IDw8ICJOTyIgPDwgIlxuIjsKCQl9Cgl9CgoKCn0KCg==