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.


#qo = "abrakadabra"

#k = 4

#a = 1
#b = 2

k,a,b = map(int,input().split())
qo =  input()
arr = []

def find(word,a,b):
    rs = len(word)
    d = 0
    if rs % k == 0:
        cs = rs//k
    else:
        cs = rs//k +1

    for i in range(rs):
        if i == rs - 1  and not i % cs == 0 :
            if i - d >= a or i - d >= b:
                print("No solution")
                exit(0)
            arr.append(word[d:i+1])
        if i % cs == 0  and i != 0:
            if i  - d <= a or i - d >= b:
                print("No solution")
                exit(0)
            arr.append(word[d:i+1])
            d = i +1
        
find(qo,a,b)

for i in arr:
    print(i)