#include <bits/stdc++.h>
using namespace std;
int n, ans;
char c, mat[1000][2][2];
bool sama, pernah[1000];
int main() {
  scanf("%d", &n);
  for (int i = 0; i < n; i++) {
    for (int j = 0; j < 2; j++)
      for (int k = 0; k < 2; k++) cin >> mat[i][j][k];
    if (i < n - 1)
      for (int j = 0; j < 2; j++) cin >> c;
  }
  memset(pernah, false, sizeof(pernah));
  ans = 0;
  for (int i = 0; i < n; i++)
    if (!pernah[i]) {
      pernah[i] = true;
      ans++;
      for (int j = i + 1; j < n; j++)
        if (!pernah[j]) {
          sama = true;
          for (int k = 0; k < 2; k++)
            for (int l = 0; l < 2; l++)
              if (mat[i][k][l] != mat[j][k][l]) {
                sama = false;
                break;
              }
          if (!sama) {
            sama = true;
            for (int k = 0; k < 2; k++)
              for (int l = 0; l < 2; l++)
                if (mat[i][k][l] != mat[j][l][1 - k]) {
                  sama = false;
                  break;
                }
          }
          if (!sama) {
            sama = true;
            for (int k = 0; k < 2; k++)
              for (int l = 0; l < 2; l++)
                if (mat[i][k][l] != mat[j][1 - k][1 - l]) {
                  sama = false;
                  break;
                }
          }
          if (!sama) {
            sama = true;
            for (int k = 0; k < 2; k++)
              for (int l = 0; l < 2; l++)
                if (mat[i][k][l] != mat[j][1 - l][k]) {
                  sama = false;
                  break;
                }
          }
          if (sama) pernah[j] = true;
        }
    }
  printf("%d\n", ans);
}
