Префіксом рядка \(S\) назвемо будь який підрядок виду \(S[1..k]\), \(k ≤ size(S)\) \((size(S)\)- довжина рядка). Префікс може бути як пустим, так і співпадати із самим рядком.
Якщо префікс не є пустим і не співпадає із рядком \(S\), то його називають власним префіксом рядка \(S\). Напишіть програму, яка виводить кількість префіксів та всі власні префікси підрядка \(S[i..j]\) у порядку зростання їх довжин.
Формат вхідних даних
Перший рядок вхідного стандартного потоку містить рядок \(S\), довжина якого не перевищує 100.
А у другий рядок записані через пропуск два індекси \(1 ≤ і ≤ size(S)\) та \(1 ≤ j ≤ size(S)\) \((size(S)\)- довжина рядка).
Формат вихідних даних
У перший рядок вихідного стандартного потоку вивести кількість префіксів підрядка \(S[i..j ]\) та у наступні рядки вивести усі власні префікси даного підряка. Формат вихідних даних згідно прикладу.
Приклад вхідних даних
abracadabra
2 5
Приклад вихідних даних
5
b
br
bra
Коментарі