#include<bits/stdc++.h>
using namespace std;
int n;
int zt[10][5];
int jh[100005]={0};
void zhuanyi(int i,int j,int r){
zt[i][j]=(zt[i][j]+r+10)%10;
}
void zhuaner(int i,int j,int r){
zhuanyi(i,j,r);
zhuanyi(i,j+1,r);
}
int zz(int i){
int sum=0;
for(int u=0;u<5;u++){
sum=sum*10+zt[i][u];
}
return sum;
}
int main(){
int n;
cin>>n;
if(n==1){
cout<<81;
return 0;
}
for(int i=0;i<n;i++){
for(int j=0;j<5;j++){
cin>>zt[i][j];
}
}
for(int i=0;i<n;i++){
for(int j=0;j<5;j++){
for(int r=1;r<=9;r++){
zhuanyi(i,j,r);
int t=zz(i);
jh[t]++;
zhuanyi(i,j,-r);
}
}
}
for(int i=0;i<n-1;i++){
for(int j=0;j<5;j++){
for(int r=1;r<=9;r++){
zhuaner(i,j,r);
int t=zz(i);
jh[t]++;
zhuaner(i,j,-r);
}
}
}
for(int i=0;i<n;i++){
int y=zz(i);
jh[y]=0;
}
int e=0;
for(int i=0;i<100005;i++){
if(jh[i]==n){
e++;
}
}
cout<<e;
return 0;
}#include<bits/stdc++.h>
using namespace std;
int n;
int zt[10][5];
int jh[100005]={0};
void zhuanyi(int i,int j,int r){
zt[i][j]=(zt[i][j]+r+10)%10;
}
void zhuaner(int i,int j,int r){
zhuanyi(i,j,r);
zhuanyi(i,j+1,r);
}
int zz(int i){
int sum=0;
for(int u=0;u<5;u++){
sum=sum*10+zt[i][u];
}
return sum;
}
int main(){
int n;
cin>>n;
if(n==1){
cout<<81;
return 0;
}
for(int i=0;i<n;i++){
for(int j=0;j<5;j++){
cin>>zt[i][j];
}
}
for(int i=0;i<n;i++){
for(int j=0;j<5;j++){
for(int r=1;r<=9;r++){
zhuanyi(i,j,r);
int t=zz(i);
jh[t]++;
zhuanyi(i,j,-r);
}
}
}
for(int i=0;i<n-1;i++){
for(int j=0;j<5;j++){
for(int r=1;r<=9;r++){
zhuaner(i,j,r);
int t=zz(i);
jh[t]++;
zhuaner(i,j,-r);
}
}
}
for(int i=0;i<n;i++){
int y=zz(i);
jh[y]=0;
}
int e=0;
for(int i=0;i<100005;i++){
if(jh[i]==n){
e++;
}
}
cout<<e;
return 0;
}