import java.util.*;
class Main {
  public static void main (String[] args) throws Exception {
    
    Scanner sc = new Scanner(System.in);
    
    int n = sc.nextInt();
    String [] st = new String[n];
    //boolean ans = true;
    
    for(int i=0; i<n; i++){
      st[i] = sc.next();
      }
      
    
 
    for(int i=0; i<n-1; i++){
        if(st[i+1].charAt(0)!=st[i].charAt(st[i].length()-1)){
          //ans =false;
          System.out.println("No");
          System.exit(0);
        }
        //if(i==n-1)break;
        for(int j=i+1; j<n; j++){
          //System.out.println(st[i] +" " +st[j]);
          if(st[i].equals(st[j])){
            //ans =false;
          System.out.println("No");
          System.exit(0);
        }
      }
    }
    
    
    
      System.out.println("Yes");


  }
} import java.util.*; util.* java class Main {
  public static void main (String[] args) throws Exception {
    
    Scanner sc = new Scanner(System.in);
    
    int n = sc.nextInt();
    String [] st = new String[n];
    //boolean ans = true;
    
    for(int i=0; i<n; i++){
      st[i] = sc.next();
      }
      
    
 
    for(int i=0; i<n-1; i++){
        if(st[i+1].charAt(0)!=st[i].charAt(st[i].length()-1)){
          //ans =false;
          System.out.println("No");
          System.exit(0);
        }
        //if(i==n-1)break;
        for(int j=i+1; j<n; j++){
          //System.out.println(st[i] +" " +st[j]);
          if(st[i].equals(st[j])){
            //ans =false;
          System.out.println("No");
          System.exit(0);
        }
      }
    }
    
    
    
      System.out.println("Yes");


  }
} Main public static void main (String[] args) throws Exception {
    
    Scanner sc = new Scanner(System.in);
    
    int n = sc.nextInt();
    String [] st = new String[n];
    //boolean ans = true;
    
    for(int i=0; i<n; i++){
      st[i] = sc.next();
      }
      
    
 
    for(int i=0; i<n-1; i++){
        if(st[i+1].charAt(0)!=st[i].charAt(st[i].length()-1)){
          //ans =false;
          System.out.println("No");
          System.exit(0);
        }
        //if(i==n-1)break;
        for(int j=i+1; j<n; j++){
          //System.out.println(st[i] +" " +st[j]);
          if(st[i].equals(st[j])){
            //ans =false;
          System.out.println("No");
          System.exit(0);
        }
      }
    }
    
    
    
      System.out.println("Yes");


  } main {
    
    Scanner sc = new Scanner(System.in);
    
    int n = sc.nextInt();
    String [] st = new String[n];
    //boolean ans = true;
    
    for(int i=0; i<n; i++){
      st[i] = sc.next();
      }
      
    
 
    for(int i=0; i<n-1; i++){
        if(st[i+1].charAt(0)!=st[i].charAt(st[i].length()-1)){
          //ans =false;
          System.out.println("No");
          System.exit(0);
        }
        //if(i==n-1)break;
        for(int j=i+1; j<n; j++){
          //System.out.println(st[i] +" " +st[j]);
          if(st[i].equals(st[j])){
            //ans =false;
          System.out.println("No");
          System.exit(0);
        }
      }
    }
    
    
    
      System.out.println("Yes");


  } Scanner sc = new Scanner(System.in); sc new Scanner(System.in) int n = sc.nextInt(); n sc.nextInt() sc.nextInt sc String [] st = new String[n]; st new String[n] n for(int i=0; i<n; i++){
      st[i] = sc.next();
      } int i=0; int i=0; i 0 i<n i n i++ i++ i {
      st[i] = sc.next();
      } {
      st[i] = sc.next();
      } st[i] = sc.next() st[i] st i sc.next() sc.next sc for(int i=0; i<n-1; i++){
        if(st[i+1].charAt(0)!=st[i].charAt(st[i].length()-1)){
          //ans =false;
          System.out.println("No");
          System.exit(0);
        }
        //if(i==n-1)break;
        for(int j=i+1; j<n; j++){
          //System.out.println(st[i] +" " +st[j]);
          if(st[i].equals(st[j])){
            //ans =false;
          System.out.println("No");
          System.exit(0);
        }
      }
    } int i=0; int i=0; i 0 i<n-1 i n-1 n 1 i++ i++ i {
        if(st[i+1].charAt(0)!=st[i].charAt(st[i].length()-1)){
          //ans =false;
          System.out.println("No");
          System.exit(0);
        }
        //if(i==n-1)break;
        for(int j=i+1; j<n; j++){
          //System.out.println(st[i] +" " +st[j]);
          if(st[i].equals(st[j])){
            //ans =false;
          System.out.println("No");
          System.exit(0);
        }
      }
    } {
        if(st[i+1].charAt(0)!=st[i].charAt(st[i].length()-1)){
          //ans =false;
          System.out.println("No");
          System.exit(0);
        }
        //if(i==n-1)break;
        for(int j=i+1; j<n; j++){
          //System.out.println(st[i] +" " +st[j]);
          if(st[i].equals(st[j])){
            //ans =false;
          System.out.println("No");
          System.exit(0);
        }
      }
    } if(st[i+1].charAt(0)!=st[i].charAt(st[i].length()-1)){
          //ans =false;
          System.out.println("No");
          System.exit(0);
        } st[i+1].charAt(0)!=st[i].charAt(st[i].length()-1) st[i+1].charAt(0) st[i+1].charAt st[i+1] st i+1 i 1 0 st[i].charAt(st[i].length()-1) st[i].charAt st[i] st i st[i].length()-1 st[i].length() st[i].length st[i] st i 1 {
          //ans =false;
          System.out.println("No");
          System.exit(0);
        } System.out.println("No") System.out.println System.out System System.out "No" System.exit(0) System.exit System 0 for(int j=i+1; j<n; j++){
          //System.out.println(st[i] +" " +st[j]);
          if(st[i].equals(st[j])){
            //ans =false;
          System.out.println("No");
          System.exit(0);
        }
      } int j=i+1; int j=i+1; j i+1 i 1 j<n j n j++ j++ j {
          //System.out.println(st[i] +" " +st[j]);
          if(st[i].equals(st[j])){
            //ans =false;
          System.out.println("No");
          System.exit(0);
        }
      } {
          //System.out.println(st[i] +" " +st[j]);
          if(st[i].equals(st[j])){
            //ans =false;
          System.out.println("No");
          System.exit(0);
        }
      } if(st[i].equals(st[j])){
            //ans =false;
          System.out.println("No");
          System.exit(0);
        } st[i].equals(st[j]) st[i].equals st[i] st i st[j] st j {
            //ans =false;
          System.out.println("No");
          System.exit(0);
        } System.out.println("No") System.out.println System.out System System.out "No" System.exit(0) System.exit System 0 System.out.println("Yes") System.out.println System.out System System.out "Yes" String[] args args
import java.util.*;
class Main {
  public static void main (String[] args) throws Exception {
    
    Scanner sc = new Scanner(System.in);
    
    int n = sc.nextInt();
    String [] st = new String[n];
    //boolean ans = true;
    
    for(int i=0; i<n; i++){
      st[i] = sc.next();
      }
      
    
 
    for(int i=0; i<n-1; i++){
        if(st[i+1].charAt(0)!=st[i].charAt(st[i].length()-1)){
          //ans =false;
          System.out.println("No");
          System.exit(0);
        }
        //if(i==n-1)break;
        for(int j=i+1; j<n; j++){
          //System.out.println(st[i] +" " +st[j]);
          if(st[i].equals(st[j])){
            //ans =false;
          System.out.println("No");
          System.exit(0);
        }
      }
    }
    
    
    
      System.out.println("Yes");


  }
}