#include <bits/stdc++.h>
using namespace std;
bool b[100100];
string s;
long long cnt[100100], n;
map<string, int> mp;
string fun(string s) {
  stack<char> st;
  string ans = "";
  for (int i = 0; i < s.size(); i++) {
    if (st.empty() && s[i] != 'u') {
      st.push(s[i]);
    } else if (s[i] == 'u') {
      st.push('o');
      st.push('o');
    } else if (st.top() == 'k' && s[i] == 'h') {
      while (!st.empty() && st.top() == 'k') {
        st.pop();
      }
      st.push('h');
    } else {
      st.push(s[i]);
    }
  }
  while (!st.empty()) {
    ans += st.top();
    st.pop();
  }
  reverse(ans.begin(), ans.end());
  return ans;
}
long long sum;
int main() {
  long long n;
  string p;
  cin >> n;
  vector<string> t;
  string g;
  for (int i = 0; i < n; i++) {
    cin >> s;
    g = fun(s);
    if (mp[g] == 0) {
      t.push_back(g);
    }
    mp[g]++;
  }
  for (int i = 0; i < t.size(); i++) {
    if (mp[t[i]] >= 1) {
      sum++;
    }
  }
  cout << sum;
  return 0;
}
