#include <iostream>
#include <map>
#include <string>
#include <set>
using namespace std;
class Dice {
public:
  int c[6];
  bool operator <(const Dice &d) const {
    for(int i = 0; i < 6; i++) {
      if(c[i] != d.c[i]) return c[i] < d.c[i];
    }
    return false;
  }

  void sort() {
    for(int i = 0; i < 6; i++) {
      if(c[i] == 0) {
	switch(i) {
	case 0: break;
	case 1: rotateY(-1); break;
	case 2: rotateX(-1); break;
	case 3: rotateX(1); break;
	case 4: rotateY(1); break;
	case 5: rotateX(2); break;
	}
	break;
      }
    }
    int minc = 9999;
    int pos;
    for(int i = 1; i <= 4; i++) {
      if(c[i] < minc) {
	minc = c[i];
	pos = i;
      }
    }
    switch(pos) {
    case 1: break;
    case 2: rotateZ(-1); break;
    case 3: rotateZ(1); break;
    case 4: rotateZ(2); break;
    }
  }

  void rotateX(int dx) {
    int d = 1;
    if(dx < 0) {
      d *= -1;
      dx *= -1;
    }
    for(int i = 0; i < dx; i++) {
      int tmp;
      if(d > 0) {
	tmp = c[0];
	c[0] = c[3];
	c[3] = c[5];
	c[5] = c[2];
	c[2] = tmp;
      } else {
	tmp = c[0];
	c[0] = c[2];
	c[2] = c[5];
	c[5] = c[3];
	c[3] = tmp;
      }
    }
  }
  void rotateY(int dy) {
    int d = 1;
    if(dy < 0) {
      d *= -1;
      dy *= -1;
    }
    for(int i = 0; i < dy; i++) {
      int tmp;
      if(d > 0) {
	tmp = c[0];
	c[0] = c[4];
	c[4] = c[1];
	c[1] = tmp;
      } else {
	tmp = c[0];
	c[0] = c[1];
	c[1] = c[4];
	c[4] = tmp;
      }
    }
  }
  void rotateZ(int dz) {
    int d = 1;
    if(dz < 0) {
      d *= -1;
      dz *= -1;
    }
    for(int i = 0; i < dz; i++) {
      int tmp;
      if(d > 0) {
	tmp = c[1];
	c[1] = c[3];
	c[3] = c[4];
	c[4] = c[2];
	c[2] = tmp;
      } else {
	tmp = c[1];
	c[1] = c[2];
	c[2] = c[4];
	c[4] = c[3];
	c[3] = tmp;
      }
    }
  }
};



int main() {
  map<string, int> color;
  color["Red"] = 0;
  color["Yellow"] = 1;
  color["Blue"] = 2;
  color["Magenta"] = 3;
  color["Green"] = 4;
  color["Cyan"] = 5;

  while(1) {
    int n;
    set<Dice> s;
    Dice dice;
    cin >> n;
    if(n == 0) break;
    for(int i = 0; i < n; i++) {
      for(int j = 0; j < 6; j++) {
	string str;
	cin >> str;
	dice.c[j] = color[str];
      }
      dice.sort();
      s.insert(dice);
    }
    cout << n - s.size() << endl;
  }
  return 0;
}