You are given n strings. Each string consists of lowercase English letters. Rearrange (reorder) the given strings in such a way that for every string, all strings that are placed before it are its substrings.

String a is a substring of string b if it is possible to choose several consecutive letters in b in such a way that they form a. For example, string "for" is contained as a substring in strings "codeforces", "for" and "therefore", but is not contained as a substring in strings "four", "fofo" and "rof".

Input

The first line contains an integer n (1 ≤ n ≤ 100) — the number of strings.

The next n lines contain the given strings. The number of letters in each string is from 1 to 100, inclusive. Each string consists of lowercase English letters.

Some strings might be equal.

Output

If it is impossible to reorder n given strings in required order, print "NO" (without quotes).

Otherwise print "YES" (without quotes) and n given strings in required order.

Examples

Input

5
a
aba
abacaba
ba
aba


Output

YES
a
ba
aba
aba
abacaba


Input

5
a
abacaba
ba
aba
abab


Output

NO


Input

3
qwerty
qwerty
qwerty


Output

YES
qwerty
qwerty
qwerty

Note

In the second example you cannot reorder the strings because the string "abab" is not a substring of the string "abacaba".
import sys, math
from fractions import gcd
def mp():
    return map(int,input.split())
def sr(a,b):
    q = a.find(b)
    w = b.find(a)
    if q == -1 and w == -1:
        print("NO")
        sys.exit()
    elif q == -1:
        return True
    else:
        return False
    
    
def quick_sort(l,r):
    global a
    if l>=r:
        return
    m = a[(l+r)//2]
    i,j = l,r
    while i<=j:
        while sr(m,a[i]):
            i+=1
        while sr(a[j],m):
            j-=1
        if i<=j:
            a[i],a[j] = a[j],a[i]
            i+=1
            j-=1
    quick_sort(l,j)
    quick_sort(i,r)
    
debug = 0
#input = sys.stdin.readline
if debug:
    f = open("input.txt","r")
    input = f.readline
n = int(input())
a = [''] * n
for i in range(n):
    a[i] = input()
    if a[i][-1] == '\n':
        a[i] = a[i][:len(a[i])-1]
quick_sort(0 , n - 1)
print("YES")
a.reverse()
print(*a, sep = '\n')
