module Main where
import Control.Monad

main :: IO ()
main = do
  n <- readLn
  ss <- replicateM n getLine
  print $ toStr $ isShiritori ss []


isShiritori :: [String] -> [String] -> Bool
isShiritori [] _ = True
isShiritori (x:xs) [] = isShiritori xs [x] 
isShiritori (x:xs) ys
  | x `elem` ys = False
  | head x /= last ( last ys )= False
  | otherwise = isShiritori xs $ x:ys
  
toStr :: Bool -> String
toStr b
  | b = "Yes"
  | not b = "No"
