#include<bits/stdc++.h>
using namespace std;
const int N=1e4+5;
string a[N],b[N],x,y;int n,p[7],cnt;bool f[N];
void dfs(int d)
{
	//cout << d << " " << p[d] << endl;
	if (d==6) {cnt++;return;}
	for (int i=1;i<=n;i++) if (!f[i])
	{
		if (d==1&&b[i]==a[p[1]]) p[2]=i,f[i]=1,dfs(2),f[i]=0;
		if (d==2&&a[i]==a[p[1]]) p[3]=i,f[i]=1,dfs(3),f[i]=0;
		if (d==3&&a[i]==b[p[1]]&&b[i]==a[p[2]]) p[4]=i,f[i]=1,dfs(4),f[i]=0;
		if (d==4&&a[i]==b[p[1]]&&b[i]==b[p[3]]) p[5]=i,f[i]=1,dfs(5),f[i]=0;
		if (d==5&&a[i]==b[p[3]]&&b[i]==a[p[2]]) p[6]=i,f[i]=1,dfs(6),f[i]=0;
	}
}
int main()
{
	cin >> n;
	for (int i=1;i<=n;i++) cin >> a[i] >> x >> y >> b[i];
	for (int i=1;i<=n;i++) p[1]=i,f[i]=1,dfs(1),f[i]=0;
	cout << cnt;
	return 0;
}