Царь Пантелеймон слушал Калистрата да поддакивал: раньше-то деды сметану делали без всяких новомодных пастеризаторов, и хорошая сметана была! И Дормидонт, министр финансов, идею одобрил: жители и молоком со сметаной себя обеспечат, да ещё налог на землю заплатят. А сметану, что заводы производят, всю на экспорт отправить можно будет.
Один Силантий только усомнился, что жители коров заведут, да сами сметану делать будут. Но у Калистрата ответ наготове: обяжем каждое домохозяйство сдавать сметану в стратегический фонд. Что тогда?
И Силантий не лыком шит: купят жители сухое молоко, что у короля Ганса хорошо делают, да закваску, что в царстве Берендея производится, вот и будет сметана, раз такой оброк на жителей наложен.
Выслушал это Пантелеймон и сказал, что решение простое. Запретить надо чужестранные продукты в царстве, наверняка в них вещества вредные содержатся и гены неправильные. Да и как иначе может быть, если в чужестранных яблоках червяки не водятся? А на возражения Силантия, что в царстве многие продукты не производятся, ответил, что замену найти им проще простого. Надо ли простому народу то же авокадо? — есть же огурцы, тоже зеленые, пупырчатые. А что внутри мякоть белая — так чисто картофель. Семечко внутри — в лесном орехе тоже внутри ядро, поменьше, конечно, но похоже!
Описание продукта является непустой строкой из латинских символов. По мнению Пантелеймона, чтобы получить замену продукта, надо разбить эту строку на подстроки. Также Пантелеймон точно знает, что подстроки, являющиеся палиндромами, соответствуют продуктам, которые в царстве не производятся. Поэтому в разбиении ни одна подстрока не должна являться палиндромом. При прочих равных Пантелеймон хочет получить разбиение на максимальное количество подстрок — он полагает, что таким образом можно поддержать наибольшее количество местных производителей.
Ваша задача — по описанию продукта получить разбиение, которое устроит Пантелеймона.
В первой строке содержится описание продукта, который требуется заменить. Описание продукта состоит из не более чем 106 строчных латинских букв.
В первой строке выведите целое число s — максимально возможное количество подстрок, не являющихся палиндромами, на которые можно разбить исходную строку.
Во второй строке выведите s подстрок через пробел. Если существует несколько вариантов ответа, выведите любой.
Если разбиение невозможно, выведите в качестве ответа - 1.
abacababaca
4
ab acaba ba ca
zzwzz
-1
pq
1
pq