#include <bits/stdc++.h>
#define N ('z'-'a')
using namespace std;
typedef long long ll;
int n,ans;
string str[501];
ll mp[N+1];

void mk_mp(int pos,int i,int j){
  while(i<=j&&pos>=str[i].size())i++;
  if(i>=j)return;
  int ni=-1,ch=str[i][pos]-'a',c=1;

  while(i<j&&ans){
    int a=str[++i][pos]-'a',f=(ch==a);
    if(f&&ni==-1)ni=i-1;
    if(!f&&ni>=0)mk_mp(pos+1,ni,i-1),ni=-2;
    
    if(!f&&c)mk_mp(pos,i,j),mp[ch]|=((1LL<<a)|mp[a]),c=0;
    if(f&&!c)ans=0;
    if(f&&str[i-1].size()>str[i].size()&&str[i][pos+1]==0)ans=0;    
  }
  if(ni>=0) mk_mp(pos+1,ni,j);
  
}

int main(){
  while(1){
    cin>>n;
    if(!n)break;
    for(int i=0;i<=N;i++) mp[i]=0;
    for(int i=0;i<n;i++)cin>>str[i];
    ans=1;
    mk_mp(0,0,n-1);
    for(int i=0;i<N;i++) if((mp[i]&(1<<i)))ans=0;
    cout <<(ans? "yes":"no")<<endl;
  }
  return 0;
}