#include <bits/stdc++.h>
using namespace std;
int bits[8];
const int N = 1 << 24;
int dp[N];
int main() {
  for (int i = 1; i < 8; i++) {
    for (int j = 0; j < 3; j++) {
      if (i & (1 << j)) {
        bits[i] = bits[i ^ (1 << j)] + 1;
        break;
      }
    }
  }
  int n;
  cin >> n;
  for (int i = 1; i <= n; i++) {
    vector<int> v;
    for (int j = 0; j < 3; j++) {
      char x;
      cin >> x;
      v.push_back(x - 'a');
    }
    sort(v.begin(), v.end());
    v.erase(unique(v.begin(), v.end()), v.end());
    for (int mask = 1; mask < (1 << (int)v.size()); mask++) {
      int nmask = 0;
      for (int j = 0; j < (int)v.size(); j++) {
        if (mask & (1 << j)) {
          nmask |= (1 << v[j]);
        }
      }
      if (bits[mask] & 1)
        dp[nmask]++;
      else
        dp[nmask]--;
    }
  }
  for (int i = 0; i < 24; i++) {
    for (int j = 1; j < (1 << 24); j++) {
      if (j & (1 << i)) dp[j] += dp[j ^ (1 << i)];
    }
  }
  int ans = 0;
  for (int i = 1; i < (1 << 24); i++) {
    ans ^= (dp[i] * dp[i]);
  }
  cout << ans << '\n';
}
