#include<bits/stdc++.h>
using namespace std;

int n,cnt=0;
vector<vector<string> > shuru(10000,vector<string>(4));
vector<vector<string> > fangzhen(4,vector<string>(4));

void fuzhi(int line){
	for(int i=line;i<=line+4;i++){
		for(int j=0;j<4;j++){
			fangzhen[i][j]=shuru[i][j];
		}
	}
}

bool in(string chengyu){
	for(int i=0;i<n;i++){
		if(shuru[i][0]+shuru[i][1]+shuru[i][2]+shuru[i][3]==chengyu) return true;
	}
	return false;
}

bool check(){
	if(in(fangzhen[0][0]+fangzhen[0][1]+fangzhen[0][2]+fangzhen[0][3]) && in(fangzhen[0][3]+fangzhen[1][3]+fangzhen[2][3]+fangzhen[3][3]) && in(fangzhen[3][3]+fangzhen[3][2]+fangzhen[3][1]+fangzhen[3][0]) && in(fangzhen[3][0]+fangzhen[2][0]+fangzhen[1][0]+fangzhen[0][0]) && in(fangzhen[0][0]+fangzhen[1][1]+fangzhen[2][2]+fangzhen[3][3]) && in(fangzhen[0][3]+fangzhen[1][2]+fangzhen[2][1]+fangzhen[3][0])){
		if(fangzhen[0][0]+fangzhen[0][1]+fangzhen[0][2]+fangzhen[0][3] != fangzhen[0][3]+fangzhen[1][3]+fangzhen[2][3]+fangzhen[3][3] && fangzhen[0][3]+fangzhen[1][3]+fangzhen[2][3]+fangzhen[3][3] != fangzhen[3][3]+fangzhen[3][2]+fangzhen[3][1]+fangzhen[3][0] && fangzhen[3][3]+fangzhen[3][2]+fangzhen[3][1]+fangzhen[3][0] != fangzhen[3][0]+fangzhen[2][0]+fangzhen[1][0]+fangzhen[0][0] && fangzhen[3][0]+fangzhen[2][0]+fangzhen[1][0]+fangzhen[0][0] != fangzhen[0][0]+fangzhen[1][1]+fangzhen[2][2]+fangzhen[3][3] && fangzhen[0][0]+fangzhen[1][1]+fangzhen[2][2]+fangzhen[3][3] != fangzhen[0][3]+fangzhen[1][2]+fangzhen[2][1]+fangzhen[3][0] && fangzhen[0][0]+fangzhen[0][1]+fangzhen[0][2]+fangzhen[0][3] != fangzhen[3][3]+fangzhen[3][2]+fangzhen[3][1]+fangzhen[3][0] && fangzhen[0][0]+fangzhen[0][1]+fangzhen[0][2]+fangzhen[0][3] != fangzhen[3][0]+fangzhen[2][0]+fangzhen[1][0]+fangzhen[0][0] && fangzhen[0][0]+fangzhen[0][1]+fangzhen[0][2]+fangzhen[0][3] != fangzhen[0][0]+fangzhen[1][1]+fangzhen[2][2]+fangzhen[3][3] && fangzhen[0][0]+fangzhen[0][1]+fangzhen[0][2]+fangzhen[0][3] != fangzhen[0][3]+fangzhen[1][2]+fangzhen[2][1]+fangzhen[3][0] && fangzhen[0][3]+fangzhen[1][3]+fangzhen[2][3]+fangzhen[3][3] != fangzhen[3][0]+fangzhen[2][0]+fangzhen[1][0]+fangzhen[0][0] && fangzhen[0][3]+fangzhen[1][3]+fangzhen[2][3]+fangzhen[3][3] != fangzhen[0][0]+fangzhen[1][1]+fangzhen[2][2]+fangzhen[3][3] && fangzhen[0][3]+fangzhen[1][3]+fangzhen[2][3]+fangzhen[3][3] != fangzhen[0][3]+fangzhen[1][2]+fangzhen[2][1]+fangzhen[3][0] && fangzhen[3][3]+fangzhen[3][2]+fangzhen[3][1]+fangzhen[3][0] != fangzhen[0][0]+fangzhen[1][1]+fangzhen[2][2]+fangzhen[3][3] && fangzhen[3][3]+fangzhen[3][2]+fangzhen[3][1]+fangzhen[3][0] != fangzhen[0][3]+fangzhen[1][2]+fangzhen[2][1]+fangzhen[3][0] && fangzhen[3][0]+fangzhen[2][0]+fangzhen[1][0]+fangzhen[0][0] != fangzhen[0][3]+fangzhen[1][2]+fangzhen[2][1]+fangzhen[3][0]){
			return true;
		}
	}
	return false;
}

int main(){
	scanf("%d",&n);
	for(int i=0;i<n;i++){
		for(int j=0;j<4;j++){
			cin >> shuru[i][j];
		}
	}
	for(int i=0;i<n-4;i++){
		fuzhi(i);
		if(check()) cnt++;
	}
	printf("%d",cnt);

	return 0;
}