#include <bits/stdc++.h>
using namespace std;
int main() {
  ios::sync_with_stdio(0);
  cin.tie(0);
  cout.tie(0);
  long long a, b, c, d, e, h, k, l, n, t, f, m,
      f1 = 0, flag = 0, flag1 = 0, co = 0, co1 = 0, co2 = 0, sum = 0, sum1 = 0,
      ma = 0, ma1 = 0, mi = 1000000000000000001;
  long long g, co3 = 0, co4 = 0, co5 = 0, co6 = 0, co7 = 0, co8 = 0, mul = 1,
               sum2 = 0, sum3 = 0, mu = 1, mu1 = 1;
  long long a1, b1, a2, b2, a3, b3, a4, b4, a5, b5, b6, c1;
  double pi = 2 * acos(0.0);
  string str, str1, str2, str3, str4, str5, str6;
  char ch, ch1;
  cin >> t;
  while (t--) {
    cin >> n;
    vector<long long> v1;
    vector<string> v;
    for (int i = 0; i < n; i++) {
      cin >> str;
      v.push_back(str);
    }
    if (v[0][1] == v[1][0]) {
      if (v[n - 1][n - 2] == v[0][1]) {
        v1.push_back(n);
        v1.push_back(n - 1);
      }
      if (v[n - 2][n - 1] == v[0][1]) {
        v1.push_back(n - 1);
        v1.push_back(n);
      }
    } else if (v[n - 1][n - 2] == v[n - 2][n - 1]) {
      if (v[0][1] == v[n - 1][n - 2]) {
        v1.push_back(1);
        v1.push_back(2);
      }
      if (v[1][0] == v[n - 1][n - 2]) {
        v1.push_back(2);
        v1.push_back(1);
      }
    } else {
      if (v[0][1] == 1) {
        v1.push_back(1);
        v1.push_back(2);
      } else {
        v1.push_back(2);
        v1.push_back(1);
      }
      if (v[n - 1][n - 2] == 0) {
        v1.push_back(n);
        v1.push_back(n - 1);
      } else {
        v1.push_back(n - 1);
        v1.push_back(n);
      }
    }
    if (v1.size() == 0) {
      cout << 0 << "\n";
    } else if (v1.size() == 2) {
      cout << 1 << "\n";
      cout << v1[0] << " " << v1[1] << "\n";
    } else {
      cout << 2 << "\n";
      cout << v1[0] << " " << v1[1] << "\n";
      cout << v1[2] << " " << v1[3] << "\n";
    }
  }
  return 0;
}
