#include <bits/stdc++.h>
using namespace std;
int n;
int order[128];
vector<string> t;
bool cmp(string a, string b) {
  for (int i = 0; i < min(a.size(), b.size()); i++) {
    if (order[a[i]] < order[b[i]]) {
      return true;
    }
    if (order[a[i]] > order[b[i]]) {
      return false;
    }
  }
  return a.size() < b.size();
}
bool check() {
  vector<string> tb = t;
  sort(tb.begin(), tb.end(), cmp);
  return t == tb;
}
int main() {
  while (cin >> n, n) {
    t.clear();
    bool flg[128] = {0};
    vector<char> alpha;
    for (int i = 0; i < n; i++) {
      string s;
      cin >> s;
      t.push_back(s);
      for (int j = 0; j < s.size(); j++) {
        if (flg[s[j]]) continue;
        flg[s[j]] = true;
        alpha.push_back(s[j]);
      }
    }
    sort(alpha.begin(), alpha.end());
    bool yes = false;
    do {
      for (int i = 0; i < alpha.size(); i++) {
        order[alpha[i]] = i;
      }
      if (check()) {
        yes = true;
        break;
      }
    } while (next_permutation(alpha.begin(), alpha.end()));
    cout << (yes ? "yes" : "no") << endl;
  }
}
