Задача C. Compound palindrome

Автор:A. Baranov   Ограничение времени:1 сек
Входной файл:Стандартный вход   Ограничение памяти:256 Мб
Выходной файл:Стандартный выход  

Условие

Палиндромом называется набор символов, одинаково читающийся в обоих направлениях (как слева направо, так и справа налево).

Составным будем называть палиндром, в котором в качестве символов выступают слова произвольной длины.

Иначе говоря, слова, расположенные симметрично относительно его центра, должны совпадать между собой.

При этом сами слова, из которых составлен такой палиндром, не обязаны являться палиндромами.

Пусть имеется строка S, состоящая из цифр и строчных букв латинского алфавита.

Требуется разбить исходную строку на максимально возможное число слов так,
чтобы полученный набор представлял собой составной палиндром.

Формат входных данных

Входные данные содержат единственную строку S.

Формат выходных данных

Выходные данные должны содержать последовательность из длин слов,
правые концы которых расположены в левой половине строки.

Если таких нет, выход следует оставить пустым.

Ограничения

1 ≤ |S| ≤ 2 ⋅ 106.

Примеры тестов

Стандартный вход Стандартный выход
1
abcdefxyz123412xyzabcdef
6
3
2
2
ab32cdefxyz12xyzab14cdef

0.068s 0.012s 15