#include <bits/stdc++.h>
using namespace std;
int inf = INT_MAX >> 1;
double PI = 3.1415926535897932384626433832795;
set<vector<char> > st;
int ans = 0;
void rotX(vector<char> &c);
void rotY(vector<char> &c);
void solve(string s) {
  vector<char> c(6);
  for (int i = 0; i < s.size(); i++) c[i] = s[i];
  bool found = 0;
  set<vector<char> > ss;
  for (int i = 0; i < 4; i++) {
    rotX(c);
    for (int j = 0; j < 4; j++) {
      rotY(c);
      if (st.find(c) != st.end()) {
        found = 1;
        break;
      }
      ss.insert(c);
    }
  }
  if (!found) {
    for (auto it : ss) st.insert(it);
    ans++;
  }
}
int main() {
  string s;
  cin >> s;
  sort(s.begin(), s.end());
  do {
    solve(s);
  } while (next_permutation(s.begin(), s.end()));
  printf("%d\n", ans);
  return 0;
}
void rotX(vector<char> &c) {
  swap(c[0], c[1]);
  swap(c[0], c[4]);
  swap(c[0], c[3]);
}
void rotY(vector<char> &c) {
  swap(c[0], c[5]);
  swap(c[0], c[4]);
  swap(c[0], c[2]);
}
