Гранню рядка називають власний префікс, який дорівнює суфіксу (весь рядок не вважається власним префіксом). Наприклад, рядок T = abaababaabaab має дві непорожні грані: ab та abaab. Аналогічно, рядок T = abaabaab також має дві непорожні грані: ab та abaab, причому друга грань перекриває свій префікс. Рядок з однакових символів має n-1 граней; наприклад, T = aaaaaaaa має грані: a, aa, aaa, aaaa, aaaaa, aaaaaa, aaaaaaa. Довжина грані визначається кількістю символів у ній. Серед усіх граней найбільша грань — це найдовший власний префікс, що дорівнює суфіксу.
Ваше завдання — знайти довжину найбільшої грані заданого рядка .
Вхідні дані містять один рядок (1 \leq |T| \leq 10^5), який складається лише з літер латиниці.
Виведіть одне ціле число — довжину найбільшої грані.
Приклад 1