#include<bits/stdc++.h>
using namespace std;
map<string,int>mp; 
vector<pair<string,string> >tg;
vector<pair<int,int> >g[20008];
bool vis[20008];
string s[20008];
int main()
{
	ios::sync_with_stdio(0);
	cin.tie(0);
	cout.tie(0);
	int n,cnt=0,ans=0;
	cin >> n;
	for(int i=1;i<=n;i++){
		string u,a,b,v;
		cin >> u >> a >> b >> v;
		tg.push_back({u,v});
		if(!mp[u]){
			mp[u]=++cnt;
			s[cnt]=u;
		}
		if(!mp[v]){
			mp[v]=++cnt;
			s[cnt]=v;
		}
	}
	for(int i=0;i<n;i++){
		int u=mp[tg[i].first];
		int v=mp[tg[i].second];
		g[u].push_back({v,i+1});
	}
	for(int a=1;a<=cnt;a++){
		for(pair<int,int>i:g[a]){
			int b=i.first;
			vis[i.second]=1;
			for(pair<int,int>j:g[b]){
				if(vis[j.second])continue;
				int c=j.first;
				vis[j.second]=1;
				for(pair<int,int>k:g[c]){
					if(vis[k.second])continue;
					int d=k.first;
					vis[k.second]=1;
					for(pair<int,int>l:g[d]){ 
						if(l.first!=a)continue;
						if(vis[l.second])continue;
						vis[l.second]=1;
						int cnt1=0,cnt2=0;
						for(pair<int,int>e:g[b])if(e.first==d&&!vis[e.second])cnt1++;
						for(pair<int,int>e:g[a])if(e.first==c&&!vis[e.second])cnt2++;
						if(a==b&&c==d)ans+=cnt1*(cnt1-1);
						else ans+=cnt1*cnt2;
						vis[l.second]=0;
					}
					vis[k.second]=0;
				}
				vis[j.second]=0;
			}
			vis[i.second]=0;
		}
	}
	cout << ans;
	return 0;
}