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.
def comb(q, l, k, kept):
    if k > len(l):
        return []
    if k == 0:
        return [kept]

    res = []
    if q[l[0]] not in [q[i] for i in kept]:
        res += comb(q, l[1:], k - 1, kept + [l[0]])
    res += comb(q, l[1:], k, kept)
    return res


n = int(input())
q = input()

if n == 1:
    print("YES")
    print(q)
else:
    for l in comb(q, list(range(1, len(q))), n - 1, [0]):
        print("YES")
        sol = []
        for i in range(1, len(l)):
            sol.append(q[l[i - 1]:l[i]])
        sol.append(q[l[-1]:])
        print("\n".join(sol))
        break
    else:
        print("NO")
