Anfisa the monkey learns to type. She is yet unfamiliar with the "space" key and can only type in lower-case Latin letters. Having typed for a fairly long line, Anfisa understood that it would be great to divide what she has written into *k* lines not shorter than *a* and not longer than *b*, for the text to resemble human speech more. Help Anfisa.
The first line contains three integers *k*, *a* and *b* (1 ≤ *k* ≤ 200, 1 ≤ *a* ≤ *b* ≤ 200). The second line contains a sequence of lowercase Latin letters — the text typed by Anfisa. It is guaranteed that the given line is not empty and its length does not exceed 200 symbols.

k,a,b = map(int,input().split())
s = input()
n = len(s)
t = n-k*a
l = []

r = t//k
s1 = t%k

flag = 0
for i in range(s1):
	if flag == 0 and len(s[i*(a+1+r):(i+1)*(a+1+r)]) > b:
		print("No solution")
		flag = 1
		exit()
	print(s[i*(a+1+r):(i+1)*(a+1+r)])

	t = i+1*(a+1+r)

n = (a+r+1)*s1

for i in range(n,n+k-s1,a+r):
	if flag == 0 and len(s[n:n+a+r+1]) > b:
		print("No solution")
		flag = 1
		exit()

	print(s[n:n+a+r+1])