#include <bits/stdc++.h>
#define ll long long
#define pii pair<int, int>
using namespace std;
const int N = (int)1e3 + 5;
const ll MOD = (int)100000;
const ll cow = 10007;
const ll INF = (ll)1e9 + 5;
ll f[1030][1030];
int n, d;
int main()
{
// freopen("RAT.inp","r",stdin);
// freopen("RAT.out","w",stdout);
ios_base::sync_with_stdio(false);
cin.tie(0);
int t;
cin >> t;
while(t--)
{
cin >> d;
for(int i=1;i<=1025;i++)
for(int j=1;j<=1025;j++)
f[i][j] = 0;
cin >> n;
for(int i=1;i<=n;i++)
{
int x, y, c;
cin >> x >> y >> c;
x++;
y++;
f[x][y] += c;
}
for(int i=1;i<=1025;i++)
for(int j=1;j<=1025;j++)
f[i][j] = f[i - 1][j] + f[i][j - 1] - f[i - 1][j - 1] + f[i][j];
ll res = -INF;
int resfi = 0, resse = 0;
for(int i=1;i<=1025;i++)
{
for(int j=1;j<=1025;j++)
{
int u = min(1025, i + d);
int v = min(j + d, 1025);
int x = max(i - d - 1, 0);
int y = max(j - d - 1, 0);
ll val = f[u][v] - f[x][v] - f[u][y] + f[x][y];
if(val > res)
{
resfi = i;
resse = j;
res = val;
}
}
}
cout << resfi - 1 << ' ' << resse - 1 << ' ' << res << '\n';
}
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CiNkZWZpbmUgbGwgbG9uZyBsb25nCiNkZWZpbmUgcGlpIHBhaXI8aW50LCBpbnQ+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CmNvbnN0IGludCBOID0gKGludCkxZTMgKyA1Owpjb25zdCBsbCBNT0QgPSAoaW50KTEwMDAwMDsKY29uc3QgbGwgY293ID0gMTAwMDc7CmNvbnN0IGxsIElORiA9IChsbCkxZTkgKyA1OwoKCmxsIGZbMTAzMF1bMTAzMF07CmludCBuLCBkOwoKaW50IG1haW4oKQp7Ci8vICBmcmVvcGVuKCJSQVQuaW5wIiwiciIsc3RkaW4pOwovLyAgZnJlb3BlbigiUkFULm91dCIsInciLHN0ZG91dCk7CiAgICBpb3NfYmFzZTo6c3luY193aXRoX3N0ZGlvKGZhbHNlKTsKICAgIGNpbi50aWUoMCk7CiAgICBpbnQgdDsKICAgIGNpbiA+PiB0OwogICAgd2hpbGUodC0tKQogICAgewogICAgICAgIGNpbiA+PiBkOwogICAgICAgIGZvcihpbnQgaT0xO2k8PTEwMjU7aSsrKQogICAgICAgICAgICBmb3IoaW50IGo9MTtqPD0xMDI1O2orKykKICAgICAgICAgICAgICAgIGZbaV1bal0gPSAwOwoKICAgICAgICBjaW4gPj4gbjsKICAgICAgICBmb3IoaW50IGk9MTtpPD1uO2krKykKICAgICAgICB7CiAgICAgICAgICAgIGludCB4LCB5LCBjOwogICAgICAgICAgICBjaW4gPj4geCA+PiB5ID4+IGM7CiAgICAgICAgICAgIHgrKzsKICAgICAgICAgICAgeSsrOwogICAgICAgICAgICBmW3hdW3ldICs9IGM7CiAgICAgICAgfQogICAgICAgIGZvcihpbnQgaT0xO2k8PTEwMjU7aSsrKQogICAgICAgICAgICBmb3IoaW50IGo9MTtqPD0xMDI1O2orKykKICAgICAgICAgICAgICAgIGZbaV1bal0gPSBmW2kgLSAxXVtqXSArIGZbaV1baiAtIDFdICAtIGZbaSAtIDFdW2ogLSAxXSArIGZbaV1bal07CiAgICAgICAgbGwgcmVzID0gLUlORjsKICAgICAgICBpbnQgcmVzZmkgPSAwLCByZXNzZSA9IDA7CiAgICAgICAgZm9yKGludCBpPTE7aTw9MTAyNTtpKyspCiAgICAgICAgewogICAgICAgICAgICBmb3IoaW50IGo9MTtqPD0xMDI1O2orKykKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgaW50IHUgPSBtaW4oMTAyNSwgaSArIGQpOwogICAgICAgICAgICAgICAgaW50IHYgPSBtaW4oaiArIGQsIDEwMjUpOwogICAgICAgICAgICAgICAgaW50IHggPSBtYXgoaSAtIGQgLSAxLCAwKTsKICAgICAgICAgICAgICAgIGludCB5ID0gbWF4KGogLSBkIC0gMSwgMCk7CgogICAgICAgICAgICAgICAgbGwgdmFsID0gZlt1XVt2XSAtIGZbeF1bdl0gLSBmW3VdW3ldICsgZlt4XVt5XTsKICAgICAgICAgICAgICAgIGlmKHZhbCA+IHJlcykKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICByZXNmaSA9IGk7CiAgICAgICAgICAgICAgICAgICAgcmVzc2UgPSBqOwogICAgICAgICAgICAgICAgICAgIHJlcyA9IHZhbDsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBjb3V0IDw8IHJlc2ZpIC0gMSA8PCAnICcgPDwgcmVzc2UgLSAxIDw8ICcgJyA8PCAgcmVzIDw8ICdcbic7CiAgICB9Cn0K