#include <bits/stdc++.h>
using namespace std;
using ll = long long;
int main(){
ios::sync_with_stdio(false);
cin.tie(nullptr);
int t;
cin >> t;
while (t--) {
ll n, m;
cin >> n >> m;
vector<vector<ll>> v(n, vector<ll>(m));
// سنخزن كل عنصر مع موقعه في p
vector<pair<ll, pair<ll,ll>>> p;
p.reserve(n * m);
for (ll i = 0; i < n; i++) {
for (ll j = 0; j < m; j++) {
cin >> v[i][j];
p.push_back({v[i][j], {i, j}});
}
}
// نرتب تنازليًا حسب القيمة
sort(p.begin(), p.end(),
[](auto &A, auto &B){
return A.first > B.first;
});
// إذا المصفوفة فاضية – حالة نظرية
if (p.empty()) {
cout << -1 << "\n";
continue;
}
// نأخذ أول أكبر عنصر ونحسب صفه وعموده
ll r0 = p[0].second.first;
ll c0 = p[0].second.second;
// نبحث أول عنصر لا يشترك لا في الصف r0 ولا في العمود c0
ll ans = -1;
for (size_t k = 1; k < p.size(); k++) {
ll val = p[k].first;
ll ri = p[k].second.first;
ll cj = p[k].second.second;
if (ri != r0 && cj != c0) {
ans = val;
break;
}
}
// لو ما لقيناش أي عنصر غير مشترك، نطبع -1 أو ممكن تطبع قيمة تناسب سياستك
cout << ans << "\n";
}
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CnVzaW5nIGxsID0gbG9uZyBsb25nOwoKaW50IG1haW4oKXsKICAgIGlvczo6c3luY193aXRoX3N0ZGlvKGZhbHNlKTsKICAgIGNpbi50aWUobnVsbHB0cik7CgogICAgaW50IHQ7CiAgICBjaW4gPj4gdDsKICAgIHdoaWxlICh0LS0pIHsKICAgICAgICBsbCBuLCBtOwogICAgICAgIGNpbiA+PiBuID4+IG07CiAgICAgICAgdmVjdG9yPHZlY3RvcjxsbD4+IHYobiwgdmVjdG9yPGxsPihtKSk7CiAgICAgICAgLy8g2LPZhtiu2LLZhiDZg9mEINi52YbYtdixINmF2Lkg2YXZiNmC2LnZhyDZgdmKIHAKICAgICAgICB2ZWN0b3I8cGFpcjxsbCwgcGFpcjxsbCxsbD4+PiBwOwogICAgICAgIHAucmVzZXJ2ZShuICogbSk7CgogICAgICAgIGZvciAobGwgaSA9IDA7IGkgPCBuOyBpKyspIHsKICAgICAgICAgICAgZm9yIChsbCBqID0gMDsgaiA8IG07IGorKykgewogICAgICAgICAgICAgICAgY2luID4+IHZbaV1bal07CiAgICAgICAgICAgICAgICBwLnB1c2hfYmFjayh7dltpXVtqXSwge2ksIGp9fSk7CiAgICAgICAgICAgIH0KICAgICAgICB9CgogICAgICAgIC8vINmG2LHYqtioINiq2YbYp9iy2YTZitmL2Kcg2K3Ys9ioINin2YTZgtmK2YXYqQogICAgICAgIHNvcnQocC5iZWdpbigpLCBwLmVuZCgpLAogICAgICAgICAgICBbXShhdXRvICZBLCBhdXRvICZCKXsKICAgICAgICAgICAgICAgIHJldHVybiBBLmZpcnN0ID4gQi5maXJzdDsKICAgICAgICAgICAgfSk7CgogICAgICAgIC8vINil2LDYpyDYp9mE2YXYtdmB2YjZgdipINmB2KfYttmK2Kkg4oCTINit2KfZhNipINmG2LjYsdmK2KkKICAgICAgICBpZiAocC5lbXB0eSgpKSB7CiAgICAgICAgICAgIGNvdXQgPDwgLTEgPDwgIlxuIjsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgfQoKICAgICAgICAvLyDZhtij2K7YsCDYo9mI2YQg2KPZg9io2LEg2LnZhti12LEg2YjZhtit2LPYqCDYtdmB2Ycg2YjYudmF2YjYr9mHCiAgICAgICAgbGwgcjAgPSBwWzBdLnNlY29uZC5maXJzdDsKICAgICAgICBsbCBjMCA9IHBbMF0uc2Vjb25kLnNlY29uZDsKCiAgICAgICAgLy8g2YbYqNit2Ksg2KPZiNmEINi52YbYtdixINmE2Kcg2YrYtNiq2LHZgyDZhNinINmB2Yog2KfZhNi12YEgcjAg2YjZhNinINmB2Yog2KfZhNi52YXZiNivIGMwCiAgICAgICAgbGwgYW5zID0gLTE7CiAgICAgICAgZm9yIChzaXplX3QgayA9IDE7IGsgPCBwLnNpemUoKTsgaysrKSB7CiAgICAgICAgICAgIGxsIHZhbCA9IHBba10uZmlyc3Q7CiAgICAgICAgICAgIGxsIHJpICA9IHBba10uc2Vjb25kLmZpcnN0OwogICAgICAgICAgICBsbCBjaiAgPSBwW2tdLnNlY29uZC5zZWNvbmQ7CiAgICAgICAgICAgIGlmIChyaSAhPSByMCAmJiBjaiAhPSBjMCkgewogICAgICAgICAgICAgICAgYW5zID0gdmFsOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIH0KICAgICAgICB9CgogICAgICAgIC8vINmE2Ygg2YXYpyDZhNmC2YrZhtin2LQg2KPZiiDYudmG2LXYsSDYutmK2LEg2YXYtNiq2LHZg9iMINmG2LfYqNi5IC0xINij2Ygg2YXZhdmD2YYg2KrYt9io2Lkg2YLZitmF2Kkg2KrZhtin2LPYqCDYs9mK2KfYs9iq2YMKICAgICAgICBjb3V0IDw8IGFucyA8PCAiXG4iOwogICAgfQoKICAgIHJldHVybiAwOwp9Cg==
MTAKMSAxCjEKMSAyCjEgMgoyIDEKMgoxCjIgMgo0IDIKMyA0CjMgNAoxIDIgMyAyCjMgMiAxIDMKMiAxIDMgMgo0IDMKMSA1IDEKMyAxIDMKNSA1IDUKMyA1IDEKNCA0CjEgMyAzIDIKMiAzIDIgMgoxIDIgMiAxCjMgMyAyIDMKMiAyCjIgMgoxIDIKMyAyCjEgMgoyIDEKMSAyCjMgMwoyIDEgMQoxIDIgMQoxIDEgMgo=
10
1 1
1
1 2
1 2
2 1
2
1
2 2
4 2
3 4
3 4
1 2 3 2
3 2 1 3
2 1 3 2
4 3
1 5 1
3 1 3
5 5 5
3 5 1
4 4
1 3 3 2
2 3 2 2
1 2 2 1
3 3 2 3
2 2
2 2
1 2
3 2
1 2
2 1
1 2
3 3
2 1 1
1 2 1
1 1 2