You are given a string *q*. A sequence of *k* strings *s*<sub class="lower-index">1</sub>, *s*<sub class="lower-index">2</sub>, ..., *s*<sub class="lower-index">*k*</sub> is called beautiful, if the concatenation of these strings is string *q* (formally, *s*<sub class="lower-index">1</sub> + *s*<sub class="lower-index">2</sub> + ... + *s*<sub class="lower-index">*k*</sub> = *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.
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.
n = int(input())
s = str(input())
sr = set(s[0])
li = 0
arr = []
for i in range(1 , len(s)) :
    ch = s[i]
    if ch not in sr :
        sr.add(ch)
        arr.append(s[li:i])
        li = i
arr.append(s[li:])
if len(arr) < n :
    print('NO')
else :
    print('YES')
    while len(arr) > n :
        r = arr.pop()
        s = arr.pop()
        arr.append(r+s)
for x in arr:
    print(x)