Бордюр (межа, край) рядка — це будь-який правильний префікс рядка, який дорівнює його суфіксу.
Наприклад, рядок S = abaababaabaab має два непорожніх бордюри: та .
Рядок S = abaabaab також має два таких бордюри — і , причому другий бордюр перекривається.
Рядок довжини , що складається з одного повторюваного символу (наприклад, або a^{8}), має n-1 бордюр. Для S = a^{8} ці бордюри такі: , , , , , , .
Термін "правильний префікс" виключає бордюр, що збігається з усім рядком.
Довжина бордюру — це кількість символів у ньому.
Природним узагальненням бордюру є найдовший бордюр — найдовший правильний префікс рядка, який збігається з його суфіксом.
Один рядок S~(|S| \le 10^{6}).
Виведіть довжину найдовшого бордюру рядка .
Приклад 1