You are given a string $*q*$. A sequence of $*k*$ strings $*s*_{1}, *s*_{2}, ..., *s*_{*k*}$ is called beautiful, if the concatenation of these strings is string $*q*$ (formally, $*s*_{1} + *s*_{2} + ... + *s*_{*k*} = *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 $*s*_{1}, *s*_{2}, ..., *s*_{*k*}$.
If there are multiple possible answers, print any of them.
Note
In the second sample there are two possible answers: ${"*aaaca*", "*s*"}$ and ${"*aaa*", "*cas*"}$.
样例
1
abca
YES
abca
2
aaacas
YES
aaa
cas
4
abc
NO
题面与样例版权归 Codeforces 及出题人所有;中文翻译由 AI 生成(CI 管线),如有出入请以原文为准。