You are given a string q. A sequence of k strings s1, s2, ..., sk is called beautiful, if the concatenation of these strings is string q (formally, s1 + s2 + ... + sk = q) and the first characters of these strings are distinct.

Find any beautiful sequence of strings or determine that the beautiful sequence doesn't exist.

Input

The first line contains a positive integer k (1 ≤ k ≤ 26) — the number of strings that should be in a beautiful sequence. 

The second line contains string q, consisting of lowercase Latin letters. The length of the string is within range from 1 to 100, inclusive.

Output

If such sequence doesn't exist, then print in a single line "NO" (without the quotes). Otherwise, print in the first line "YES" (without the quotes) and in the next k lines print the beautiful sequence of strings s1, s2, ..., sk.

If there are multiple possible answers, print any of them.

Examples

Input

1
abca


Output

YES
abca


Input

2
aaacas


Output

YES
aaa
cas


Input

4
abc


Output

NO

Note

In the second sample there are two possible answers: {"aaaca", "s"} and {"aaa", "cas"}.
n=int(input())
S=input()
l=[]
l1=[]
l1.append(S[0])
j=0
v=1
c=1
r=0
T=S[0]
for i in range(1,len(S)) :
    if v==0 and c==1 :
        v=1
        T=S[i]
    else :
        
        if S[i] in l1 :
            T=T+S[i]
        else :
            j=j+1
            if j<n :
                l.append(T)
                T=S[i]
                l1.append(S[i])
                l1.append(T[0])
            else :
                l.append(T+S[i:])
                r=1
                break
            v=0
            c=0
if r==0 :
    l.append(T)
if n==len(l) and n<=26 :
    print('YES')
    for i in range(len(l)) :
        print(l[i])
else :
    print('NO')
            
