#include<bits/stdc++.h>
#define pi 3.1415926535897932384626
using namespace std;
      
struct P{
  int x,y;
  bool operator < (const P &a )const{
    //if(y!=a.y)
    return y>a.y;
  };
};

int a,b,c,d,i,k,n,m,e,dx[10]={1,0,-1,0,1,1,-1,-1},dy[10]={0,1,0,-1,1,-1,1,-1};
long long o[431];
int l[103331];
int j[3331];

long long x,y,z,mod=1000000007;
//string r;
char r[1];

P u[1];
priority_queue<P> q;
//stack<int> s;
set<int> s;
map<long long,int> p;

vector<int> v[100101];

bool as(P a,P b)
{
  //if(a.x!=b.x)
  //return a.x<b.x;
  return a.x<b.x;
}

long long f(long long x)
{
  int o[4],l[4];
  l[0]=o[0]=x/1000000000;
  l[1]=o[1]=x/1000000%1000;
  l[2]=o[2]=x/1000%1000;
  l[3]=o[3]=x%1000;
  for(int i=1;i<=3;i++)
  {
    for(int h=0;h<4;h++)
    if(o[(i+h)%4]>l[h]) break;
    else if(o[(i+h)%4]<l[h])
    {
      for(int p=0;p<4;p++)
        l[p]=o[(p+i)%4];
      break;
    }
  }
  long long z=0;
  for(int h=0;h<4;h++)
    z*=1000,z+=l[h];
  return z;
}

int g(long long x)
{
  int n=x/1000000000,m=x/1000000%1000,c=x/1000%1000,d=x%1000;
  if(n==m&&m==c&&c==d) return 4;
  if(n==c&&m==d) return 2;
  return 1;
}

int main()
{
  scanf("%d",&a);
  for(int t=1;t<=a;t++)
  {
    long long x=0;
    for(int i=0;i<4;i++)
    {
      x*=1000;
      scanf("%d",&n);
      x+=n;
    }
    o[t]=f(x);
  }
  for(int t=1;t<a;t++)
  for(int w=t+1;w<=a;w++)
  {
    map<long long,int> p;
    for(int i=t+1;i<=a;i++)
    if(i!=w) p[o[i]]++;
    long long l1[4],l2[4];
    long long s[4];
    l1[0]=o[t]/1000000000,l1[1]=o[t]/1000000%1000,l1[2]=o[t]/1000%1000,l1[3]=o[t]%1000;
    l2[2]=o[w]/1000000000,l2[1]=o[w]/1000000%1000,l2[0]=o[w]/1000%1000,l2[3]=o[w]%1000;
    for(int i=0;i<4;i++)
    {
      for(int h=0;h<4;h++)
      {
        s[h]=l1[(h+1)%4]*1000000000+l1[(h)%4]*1000000+l2[(h+i)%4]*1000+l2[(h+1+i)%4];
        s[h]=f(s[h]);
        //if(t==1&&w==5&&i==0)
        //printf("@@%lld %d\n",s[h],p[s[h]]);
      }
      long long y=1;
      for(int h=0;h<4;h++)
      {
        int e=0;
        for(int i=0;i<h;i++)
          if(s[i]==s[h])e++;
        y*=(p[s[h]]-e);
        y*=g(s[h]);
      }
      //if(t==1&&w==5)
      x+=y;
    }
  }
  printf("%lld",x);
}
//0
//21


