#include <bits/stdc++.h>
using namespace std;
struct mat {
char ch[20][20];
};
mat v;
int n;
mat zhuan(mat vv) {
mat v1;
for(int i=0; i<n; i++)
for(int j=0; j<n; j++)
v1.ch[j][n-1-i]=vv.ch[i][j];
return v1;
}
mat fan(mat vv) {
for(int i=0; i<n; i++)
for(int j=0; j<n/2; j++) {
char t = vv.ch[i][j];
vv.ch[i][j]=vv.ch[i][n-1-j];
vv.ch[i][n-1-j]=t;
}
return vv;
}
bool cmp(mat a,mat b) {
for(int i=0; i<n; i++)
for(int j=0; j<n; j++)
if(a.ch[i][j]!=b.ch[i][j])
return false;
return true;
}
int main() {
mat v1;
cin>>n;
for(int i=0; i<n; i++)
for(int j=0; j<n; j++)
cin>>v1.ch[i][j];
for(int i=0; i<n; i++)
for(int j=0; j<n; j++)
cin>>v.ch[i][j];
if(cmp(zhuan(v1),v)) cout<<1<<endl;
else if(cmp(zhuan(zhuan(v1)),v)) cout<<2<<endl;
else if(cmp(v,zhuan(zhuan(zhuan(v1))))) cout<<3<<endl;
else if(cmp(v,fan(v1))) cout<<4<<endl;
else if(cmp(v,zhuan(fan(v1)))||cmp(v,zhuan(zhuan(fan(v1))))||cmp(v,zhuan(zhuan(zhuan(fan(v1))))))
cout<<5<<endl;
else if(cmp(v,v1)) cout<<6<<endl;
else cout<<7<<endl;
}