#include<bits/stdc++.h>
using namespace std;
int n;
char a[15][15], b[15][15], c[15][15], d[15][15];
bool p() {
for (int i = 1; i <= n; ++i) for (int j = 1; j <= n; ++j) if(a[i][j] != c[i][j]) return false;
return true;
}
void k() {
for (int i = 1; i <= n; ++i) for (int j = 1; j <= n; ++j) a[i][j] = d[i][j];
}
void k2() {
for (int i = 1; i <= n; ++i) for (int j = 1; j <= n; ++j) a[i][j] = b[i][j];
}
bool w1() {
for (int i = 1; i <= n; ++i) {
for (int j = 1; j <= n; ++j) {
b[j][n - i + 1] = a[i][j];
}
}
k2();
bool l = p();
k();
return l;
}
bool w2() {
for (int i = 1; i <= 2; ++i) {
w1();
k2();
}
bool l = p();
k();
return l;
}
bool w3() {
for (int i = 1; i <= 3; ++i) {
w1();
k2();
}
bool l = p();
k();
return l;
}
bool w4() {
for (int i = 1; i <= n; ++i) for (int j = 1; j <= n; ++i) b[i][n - j + 1] = a[i][j];
k2();
bool l = p();
k();
return l;
}
bool w5() {
w4();
k();
bool l = w1();
k();
bool l1 = w2();
k();
bool l2 = w3();
k();
return l || l1 || l2;
}
int main(){
cin >> n;
for (int i = 1; i <= n; ++i) for (int j = 1; j <= n; ++j) cin >> d[i][j];
for (int i = 1; i <= n; ++i) for (int j = 1; j <= n; ++j) cin >> c[i][j];
k();
if(w1()) cout << 1;
else if(w2()) cout << 2;
else if(w3()) cout << 3;
else if(w4()) cout << 4;
else if(w5()) cout << 5;
else if(p()) cout << 6;
else cout << 7;
return 0;
}