#include<stdio.h>
int check(char a[][10], char b[][10],int n);
void change1(char a[][10], int n);
void change4(char a[][10], int n);
int main()
{
int n;
scanf("%d\n", &n);
char a[10][10], b[10][10];
for (int i = 0;i < n;i++)
{
for (int j = 0;j < n;j++)
scanf("%c", &a[i][j]);
getchar();
}
for (int i = 0;i < n;i++)
{
for (int j = 0;j < n;j++)
scanf("%c", &b[i][j]);
getchar();
}
change1(a, n);
if (check(a, b,n) == 1)
{
printf("1");
goto end;
}
else
{
change1(a, n);
if (check(a, b,n) == 1)
{
printf("2");
goto end;
}
else
{
change1(a, n);
if (check(a, b,n) == 1)
{
printf("3");
goto end;
}
else change1(a, n);
}
}
change4(a, n);
if (check(a, b,n) == 1)
{
printf("4");
goto end;
}
else
{
change1(a, n);
if (check(a, b,n) == 1)
{
printf("5");
goto end;
}
else
{
change1(a, n);
if (check(a, b,n) == 1)
{
printf("5");
goto end;
}
else
{
change1(a, n);
if (check(a, b,n) == 1)
{
printf("5");
goto end;
}
else
{
change1(a, n);
change4(a, n);
}
}
}
}
if (check(a, b,n) == 1)
{
printf("6");
goto end;
}
else printf("7");
end:
return 0;
}
void change1(char a[][10], int n)
{
char c[10][10];
for (int i = 0;i < n ;i++)
for (int j = 0;j < n;j++)
c[i][j] = a[i][j];
for (int i = 0;i < n;i++)
for (int j = 0;j < n;j++)
a[i][j] = c[j][n - 1 - i];
}
void change4(char a[][10], int n)
{
char temp;
for (int i = 0;i < n;i++)
for (int j = 0;j < n / 2;j++)
{
temp = a[i][j];
a[i][j] = a[i][n - 1 - j];
a[i][n - 1 - j] = temp;
}
}
int check(char a[][10],char b[][10],int n)
{
int c = 1;
for (int i = 0;i < n;i++)
for (int j = 0;j < n;j++)
if (a[i][j] != b[i][j])
{
c = 0;
goto E;
}
E:
return c;
}