#include <bits/stdc++.h>
using namespace std;
int n;
vector<string> s;
set<string> my_set;
string tmp;
int cnt[30];
void clear() {
  for (int i = 0; i < 30; i++) cnt[i] = 0;
}
void work() {
  string res;
  res.clear();
  for (int i = 0; i < 30; i++) {
    if (cnt[i] > 0) res.insert(res.end(), char(i + 'a'));
  }
  sort(res.begin(), res.end());
  my_set.insert(res);
}
int main() {
  cin >> n;
  for (int i = 0; i < n; i++) {
    cin >> tmp;
    s.push_back(tmp);
  }
  sort(s.begin(), s.end());
  for (int i = 0; i < n; i++) {
    for (int j = 0; j < s[i].length(); j++) {
      cnt[s[i][j] - 'a']++;
    }
    work();
    clear();
  }
  cout << my_set.size();
  return 0;
}
