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"}.
import java.util.*;

public class A544 {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int k = sc.nextInt();
		String q = sc.next();
		HashSet<Character> set = new HashSet<Character>();
		
		for (int i=0 ; i < q.length() ; i++) set.add(q.charAt(i));
		
		if (k == 1) System.out.println("YES\n" + q);
		else if (q.length() < k || set.size() < k) System.out.println("NO");
		else{
			System.out.println("YES");
			StringBuffer buf = new StringBuffer();
			set.clear();
			buf.append(q.charAt(0));
			set.add(q.charAt(0));
			
			for (int i=1 ; i<q.length() ; i++) {
				if (set.contains(q.charAt(i))) {
					buf.append(q.charAt(i));
				}
				else {
					if (k==1) {
						buf.append(q.charAt(i));
						continue;
					}
					if (k>0) {
						set.add(q.charAt(i));
						System.out.println(buf.toString());
						buf.delete(0, buf.length());
						buf.append(q.charAt(i));
						k--;
					}
				}
			}
			System.out.println(buf.toString());
		}
		sc.close();
	}
}
