import java.util.ArrayList;
import java.util.Scanner;

public class Main {

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int N = Integer.parseInt(sc.next());
		ArrayList<String> shiritoriList = new ArrayList<>();
		for(int i = 0; i < N; i++) {
			shiritoriList.add(sc.next());
		}
		sc.close();

		ArrayList<String> checkList = new ArrayList<>();
		for(int i = 0; i < shiritoriList.size(); i++) {
			String word = shiritoriList.get(i);
			if(i != 0) {
				String formerWords = shiritoriList.get(i - 1);
				char lastWord = formerWords.charAt(formerWords.length() - 1);
				if(lastWord != word.charAt(0)) {
					System.out.println("No");
					return;
				}
				if(checkList.contains(word)) {
					System.out.println("No");
					return;
				}
			}
			checkList.add(word);
		}
		System.out.println("Yes");
		return;
	}

} import java.util.ArrayList; ArrayList java.util import java.util.Scanner; Scanner java.util public class Main {

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int N = Integer.parseInt(sc.next());
		ArrayList<String> shiritoriList = new ArrayList<>();
		for(int i = 0; i < N; i++) {
			shiritoriList.add(sc.next());
		}
		sc.close();

		ArrayList<String> checkList = new ArrayList<>();
		for(int i = 0; i < shiritoriList.size(); i++) {
			String word = shiritoriList.get(i);
			if(i != 0) {
				String formerWords = shiritoriList.get(i - 1);
				char lastWord = formerWords.charAt(formerWords.length() - 1);
				if(lastWord != word.charAt(0)) {
					System.out.println("No");
					return;
				}
				if(checkList.contains(word)) {
					System.out.println("No");
					return;
				}
			}
			checkList.add(word);
		}
		System.out.println("Yes");
		return;
	}

} Main public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int N = Integer.parseInt(sc.next());
		ArrayList<String> shiritoriList = new ArrayList<>();
		for(int i = 0; i < N; i++) {
			shiritoriList.add(sc.next());
		}
		sc.close();

		ArrayList<String> checkList = new ArrayList<>();
		for(int i = 0; i < shiritoriList.size(); i++) {
			String word = shiritoriList.get(i);
			if(i != 0) {
				String formerWords = shiritoriList.get(i - 1);
				char lastWord = formerWords.charAt(formerWords.length() - 1);
				if(lastWord != word.charAt(0)) {
					System.out.println("No");
					return;
				}
				if(checkList.contains(word)) {
					System.out.println("No");
					return;
				}
			}
			checkList.add(word);
		}
		System.out.println("Yes");
		return;
	} main {
		Scanner sc = new Scanner(System.in);
		int N = Integer.parseInt(sc.next());
		ArrayList<String> shiritoriList = new ArrayList<>();
		for(int i = 0; i < N; i++) {
			shiritoriList.add(sc.next());
		}
		sc.close();

		ArrayList<String> checkList = new ArrayList<>();
		for(int i = 0; i < shiritoriList.size(); i++) {
			String word = shiritoriList.get(i);
			if(i != 0) {
				String formerWords = shiritoriList.get(i - 1);
				char lastWord = formerWords.charAt(formerWords.length() - 1);
				if(lastWord != word.charAt(0)) {
					System.out.println("No");
					return;
				}
				if(checkList.contains(word)) {
					System.out.println("No");
					return;
				}
			}
			checkList.add(word);
		}
		System.out.println("Yes");
		return;
	} Scanner sc = new Scanner(System.in); sc new Scanner(System.in) int N = Integer.parseInt(sc.next()); N Integer.parseInt(sc.next()) Integer.parseInt Integer sc.next() sc.next sc ArrayList<String> shiritoriList = new ArrayList<>(); shiritoriList new ArrayList<>() for(int i = 0; i < N; i++) {
			shiritoriList.add(sc.next());
		} int i = 0; int i = 0; i 0 i < N i N i++ i++ i {
			shiritoriList.add(sc.next());
		} {
			shiritoriList.add(sc.next());
		} shiritoriList.add(sc.next()) shiritoriList.add shiritoriList sc.next() sc.next sc sc.close() sc.close sc ArrayList<String> checkList = new ArrayList<>(); checkList new ArrayList<>() for(int i = 0; i < shiritoriList.size(); i++) {
			String word = shiritoriList.get(i);
			if(i != 0) {
				String formerWords = shiritoriList.get(i - 1);
				char lastWord = formerWords.charAt(formerWords.length() - 1);
				if(lastWord != word.charAt(0)) {
					System.out.println("No");
					return;
				}
				if(checkList.contains(word)) {
					System.out.println("No");
					return;
				}
			}
			checkList.add(word);
		} int i = 0; int i = 0; i 0 i < shiritoriList.size() i shiritoriList.size() shiritoriList.size shiritoriList i++ i++ i {
			String word = shiritoriList.get(i);
			if(i != 0) {
				String formerWords = shiritoriList.get(i - 1);
				char lastWord = formerWords.charAt(formerWords.length() - 1);
				if(lastWord != word.charAt(0)) {
					System.out.println("No");
					return;
				}
				if(checkList.contains(word)) {
					System.out.println("No");
					return;
				}
			}
			checkList.add(word);
		} {
			String word = shiritoriList.get(i);
			if(i != 0) {
				String formerWords = shiritoriList.get(i - 1);
				char lastWord = formerWords.charAt(formerWords.length() - 1);
				if(lastWord != word.charAt(0)) {
					System.out.println("No");
					return;
				}
				if(checkList.contains(word)) {
					System.out.println("No");
					return;
				}
			}
			checkList.add(word);
		} String word = shiritoriList.get(i); word shiritoriList.get(i) shiritoriList.get shiritoriList i if(i != 0) {
				String formerWords = shiritoriList.get(i - 1);
				char lastWord = formerWords.charAt(formerWords.length() - 1);
				if(lastWord != word.charAt(0)) {
					System.out.println("No");
					return;
				}
				if(checkList.contains(word)) {
					System.out.println("No");
					return;
				}
			} i != 0 i 0 {
				String formerWords = shiritoriList.get(i - 1);
				char lastWord = formerWords.charAt(formerWords.length() - 1);
				if(lastWord != word.charAt(0)) {
					System.out.println("No");
					return;
				}
				if(checkList.contains(word)) {
					System.out.println("No");
					return;
				}
			} String formerWords = shiritoriList.get(i - 1); formerWords shiritoriList.get(i - 1) shiritoriList.get shiritoriList i - 1 i 1 char lastWord = formerWords.charAt(formerWords.length() - 1); lastWord formerWords.charAt(formerWords.length() - 1) formerWords.charAt formerWords formerWords.length() - 1 formerWords.length() formerWords.length formerWords 1 if(lastWord != word.charAt(0)) {
					System.out.println("No");
					return;
				} lastWord != word.charAt(0) lastWord word.charAt(0) word.charAt word 0 {
					System.out.println("No");
					return;
				} System.out.println("No") System.out.println System.out System System.out "No" return; if(checkList.contains(word)) {
					System.out.println("No");
					return;
				} checkList.contains(word) checkList.contains checkList word {
					System.out.println("No");
					return;
				} System.out.println("No") System.out.println System.out System System.out "No" return; checkList.add(word) checkList.add checkList word System.out.println("Yes") System.out.println System.out System System.out "Yes" return; String[] args args public class Main {

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int N = Integer.parseInt(sc.next());
		ArrayList<String> shiritoriList = new ArrayList<>();
		for(int i = 0; i < N; i++) {
			shiritoriList.add(sc.next());
		}
		sc.close();

		ArrayList<String> checkList = new ArrayList<>();
		for(int i = 0; i < shiritoriList.size(); i++) {
			String word = shiritoriList.get(i);
			if(i != 0) {
				String formerWords = shiritoriList.get(i - 1);
				char lastWord = formerWords.charAt(formerWords.length() - 1);
				if(lastWord != word.charAt(0)) {
					System.out.println("No");
					return;
				}
				if(checkList.contains(word)) {
					System.out.println("No");
					return;
				}
			}
			checkList.add(word);
		}
		System.out.println("Yes");
		return;
	}

} public class Main {

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int N = Integer.parseInt(sc.next());
		ArrayList<String> shiritoriList = new ArrayList<>();
		for(int i = 0; i < N; i++) {
			shiritoriList.add(sc.next());
		}
		sc.close();

		ArrayList<String> checkList = new ArrayList<>();
		for(int i = 0; i < shiritoriList.size(); i++) {
			String word = shiritoriList.get(i);
			if(i != 0) {
				String formerWords = shiritoriList.get(i - 1);
				char lastWord = formerWords.charAt(formerWords.length() - 1);
				if(lastWord != word.charAt(0)) {
					System.out.println("No");
					return;
				}
				if(checkList.contains(word)) {
					System.out.println("No");
					return;
				}
			}
			checkList.add(word);
		}
		System.out.println("Yes");
		return;
	}

} Main
import java.util.ArrayList;
import java.util.Scanner;

public class Main {

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int N = Integer.parseInt(sc.next());
		ArrayList<String> shiritoriList = new ArrayList<>();
		for(int i = 0; i < N; i++) {
			shiritoriList.add(sc.next());
		}
		sc.close();

		ArrayList<String> checkList = new ArrayList<>();
		for(int i = 0; i < shiritoriList.size(); i++) {
			String word = shiritoriList.get(i);
			if(i != 0) {
				String formerWords = shiritoriList.get(i - 1);
				char lastWord = formerWords.charAt(formerWords.length() - 1);
				if(lastWord != word.charAt(0)) {
					System.out.println("No");
					return;
				}
				if(checkList.contains(word)) {
					System.out.println("No");
					return;
				}
			}
			checkList.add(word);
		}
		System.out.println("Yes");
		return;
	}

}