#include <bits/stdc++.h>
using namespace std;
int n, m, a[1005][1005];
int BFS() {
int M[1005][1005] = {};
queue<pair<int, int>> q;
q.push({1, 1});
M[1][1] = 0;
while (!q.empty()) {
auto [x, y] = q.front(); q.pop();
if (x + a[x][y] <= n && !M[x + a[x][y]][y]) {
if (x + a[x][y] == n && y == m) return M[x][y] + 1;
M[x + a[x][y]][y] = M[x][y] + 1;
q.push({x + a[x][y], y});
}
if (y + a[x][y] <= m && !M[x][y + a[x][y]]) {
if (x == n && y + a[x][y] == m) return M[x][y] + 1;
M[x][y + a[x][y]] = M[x][y] + 1;
q.push({x, y + a[x][y]});
}
}
return -1;
}
int main() {
ios::sync_with_stdio(false); cin.tie(0);
int t; cin >> t;
while (t--) {
cin >> n >> m;
for (int i = 1; i <= n; ++i)
for (int j = 1; j <= m; ++j)
cin >> a[i][j];
cout << BFS() << '\n';
}
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgppbnQgbiwgbSwgYVsxMDA1XVsxMDA1XTsKCmludCBCRlMoKSB7CiAgICBpbnQgTVsxMDA1XVsxMDA1XSA9IHt9OwogICAgcXVldWU8cGFpcjxpbnQsIGludD4+IHE7CiAgICBxLnB1c2goezEsIDF9KTsKICAgIE1bMV1bMV0gPSAwOwoKICAgIHdoaWxlICghcS5lbXB0eSgpKSB7CiAgICAgICAgYXV0byBbeCwgeV0gPSBxLmZyb250KCk7IHEucG9wKCk7CiAgICAgICAgCiAgICAgICAgaWYgKHggKyBhW3hdW3ldIDw9IG4gJiYgIU1beCArIGFbeF1beV1dW3ldKSB7CiAgICAgICAgICAgIGlmICh4ICsgYVt4XVt5XSA9PSBuICYmIHkgPT0gbSkgcmV0dXJuIE1beF1beV0gKyAxOwogICAgICAgICAgICBNW3ggKyBhW3hdW3ldXVt5XSA9IE1beF1beV0gKyAxOwogICAgICAgICAgICBxLnB1c2goe3ggKyBhW3hdW3ldLCB5fSk7CiAgICAgICAgfQoKICAgICAgICBpZiAoeSArIGFbeF1beV0gPD0gbSAmJiAhTVt4XVt5ICsgYVt4XVt5XV0pIHsKICAgICAgICAgICAgaWYgKHggPT0gbiAmJiB5ICsgYVt4XVt5XSA9PSBtKSByZXR1cm4gTVt4XVt5XSArIDE7CiAgICAgICAgICAgIE1beF1beSArIGFbeF1beV1dID0gTVt4XVt5XSArIDE7CiAgICAgICAgICAgIHEucHVzaCh7eCwgeSArIGFbeF1beV19KTsKICAgICAgICB9CiAgICB9CiAgICByZXR1cm4gLTE7Cn0KCmludCBtYWluKCkgewogICAgaW9zOjpzeW5jX3dpdGhfc3RkaW8oZmFsc2UpOyBjaW4udGllKDApOwogICAgaW50IHQ7IGNpbiA+PiB0OwogICAgd2hpbGUgKHQtLSkgewogICAgICAgIGNpbiA+PiBuID4+IG07CiAgICAgICAgZm9yIChpbnQgaSA9IDE7IGkgPD0gbjsgKytpKQogICAgICAgICAgICBmb3IgKGludCBqID0gMTsgaiA8PSBtOyArK2opCiAgICAgICAgICAgICAgICBjaW4gPj4gYVtpXVtqXTsKICAgICAgICBjb3V0IDw8IEJGUygpIDw8ICdcbic7CiAgICB9CiAgICByZXR1cm4gMDsKfQo=