// #define ONLINE_JUDGE
#include "bits/stdc++.h"
using namespace std;
#if !defined(mhnd01s) || defined(ONLINE_JUDGE)
#define print(...) ((void)0)
#endif
using ll = long long;
void solve();
signed main() {
#ifdef mhnd01s
int x = mt19937(random_device()())()%100;printf("%d\n", x);
freopen("out", "wt", stdout);
#else
cin.tie(0)->sync_with_stdio(0);
#endif
cin.exceptions(cin.failbit);
int t = 1;
cin >> t;
while(t--) {
solve();
if(t) cout << '\n';
}return 0;
}
#define X first
#define Y second
void solve() {
int n; cin >> n;
vector<pair<int, int>> v;
while (n--) {
string s;
cin >> s;
if (s.front() == 'p') {
int x, y; cin >> x >> y;
v.emplace_back(x, y);
} else if (s == "c") {
int x, y, r; cin >> x >> y >> r;
v.emplace_back(x+r, y);
v.emplace_back(x-r, y);
v.emplace_back(x, y+r);
v.emplace_back(x, y-r);
} else {
int x, y, i, j; cin >> x >> y >> i >> j;
v.emplace_back(x, y);
v.emplace_back(i, j);
}
}
int mnx = 1010, mny = 1010, mxx = -1010, mxy = -1010;
for (auto p : v) {
mnx = min(mnx, p.X);
mxx = max(mxx, p.X);
mny = min(mny, p.Y);
mxy = max(mxy, p.Y);
}
cout << mnx << ' ' << mny << ' ' << mxx << ' ' << mxy;
}
Ly8gI2RlZmluZSBPTkxJTkVfSlVER0UKI2luY2x1ZGUgImJpdHMvc3RkYysrLmgiCnVzaW5nIG5hbWVzcGFjZSBzdGQ7CiNpZiAhZGVmaW5lZChtaG5kMDFzKSB8fCBkZWZpbmVkKE9OTElORV9KVURHRSkKI2RlZmluZSBwcmludCguLi4pICgodm9pZCkwKQojZW5kaWYKdXNpbmcgbGwgPSBsb25nIGxvbmc7CnZvaWQgc29sdmUoKTsKc2lnbmVkIG1haW4oKSB7CiNpZmRlZiBtaG5kMDFzCiAgICBpbnQgeCA9IG10MTk5MzcocmFuZG9tX2RldmljZSgpKCkpKCklMTAwO3ByaW50ZigiJWRcbiIsIHgpOwogICAgZnJlb3Blbigib3V0IiwgInd0Iiwgc3Rkb3V0KTsKI2Vsc2UKICAgIGNpbi50aWUoMCktPnN5bmNfd2l0aF9zdGRpbygwKTsKI2VuZGlmCiAgICBjaW4uZXhjZXB0aW9ucyhjaW4uZmFpbGJpdCk7CiAgICBpbnQgdCA9IDE7CiAgICBjaW4gPj4gdDsKICAgIHdoaWxlKHQtLSkgewogICAgICAgIHNvbHZlKCk7CiAgICAgICAgaWYodCkgY291dCA8PCAnXG4nOwogICAgfXJldHVybiAwOwp9CgojZGVmaW5lIFggZmlyc3QKI2RlZmluZSBZIHNlY29uZAp2b2lkIHNvbHZlKCkgewogICAgaW50IG47IGNpbiA+PiBuOwogICAgdmVjdG9yPHBhaXI8aW50LCBpbnQ+PiB2OwogICAgd2hpbGUgKG4tLSkgewogICAgICAgIHN0cmluZyBzOwogICAgICAgIGNpbiA+PiBzOwogICAgICAgIGlmIChzLmZyb250KCkgPT0gJ3AnKSB7CiAgICAgICAgICAgIGludCB4LCB5OyBjaW4gPj4geCA+PiB5OwogICAgICAgICAgICB2LmVtcGxhY2VfYmFjayh4LCB5KTsKICAgICAgICB9IGVsc2UgaWYgKHMgPT0gImMiKSB7CiAgICAgICAgICAgIGludCB4LCB5LCByOyBjaW4gPj4geCA+PiB5ID4+IHI7CiAgICAgICAgICAgIHYuZW1wbGFjZV9iYWNrKHgrciwgeSk7CiAgICAgICAgICAgIHYuZW1wbGFjZV9iYWNrKHgtciwgeSk7CiAgICAgICAgICAgIHYuZW1wbGFjZV9iYWNrKHgsIHkrcik7CiAgICAgICAgICAgIHYuZW1wbGFjZV9iYWNrKHgsIHktcik7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgaW50IHgsIHksIGksIGo7IGNpbiA+PiB4ID4+IHkgPj4gaSA+PiBqOwogICAgICAgICAgICB2LmVtcGxhY2VfYmFjayh4LCB5KTsKICAgICAgICAgICAgdi5lbXBsYWNlX2JhY2soaSwgaik7CiAgICAgICAgfQogICAgfQoKICAgIGludCBtbnggPSAxMDEwLCBtbnkgPSAxMDEwLCBteHggPSAtMTAxMCwgbXh5ID0gLTEwMTA7CiAgICBmb3IgKGF1dG8gcCA6IHYpIHsKICAgICAgICBtbnggPSBtaW4obW54LCBwLlgpOwogICAgICAgIG14eCA9IG1heChteHgsIHAuWCk7CiAgICAgICAgbW55ID0gbWluKG1ueSwgcC5ZKTsKICAgICAgICBteHkgPSBtYXgobXh5LCBwLlkpOwogICAgfQoKICAgIGNvdXQgPDwgbW54IDw8ICcgJyA8PCBtbnkgPDwgJyAnIDw8IG14eCA8PCAnICcgPDwgbXh5Owp9Cg==