import java.util.*;
public class Main {
public static void main
(String[] args
) { Scanner sc
= new Scanner
(System.
in); int answer = 0; // Длина наибольшей грани
for(int i = 1; i < S.length() && S.length() - i > answer; i++) {
int j = 0;
/*
Перебираем различные длины префиксов (суффиксов), пока не дойдем до длины 1 и пока можем встретить грань, длиннее хранящейся.
i - первый символ очередного суффикса
j - длина текущей грани и первый символ очередного префикса
*/
while(j < S.length() - i && S.charAt(j) == S.charAt(i + j)){ // Накапливаем длину, пока символы префикса и суффикса совпадают
j++;
}
if (j > answer) answer = j;
}
}
}
aW1wb3J0IGphdmEudXRpbC4qOwpwdWJsaWMgY2xhc3MgTWFpbiB7CiAgICBwdWJsaWMgc3RhdGljIHZvaWQgbWFpbihTdHJpbmdbXSBhcmdzKSB7CiAgICAgICAgU2Nhbm5lciBzYyA9IG5ldyBTY2FubmVyKFN5c3RlbS5pbik7CiAgICAgICAgU3RyaW5nIFMgPSBzYy5uZXh0TGluZSgpOwogICAgICAgIGludCBhbnN3ZXIgPSAwOyAgICAvLyDQlNC70LjQvdCwINC90LDQuNCx0L7Qu9GM0YjQtdC5INCz0YDQsNC90LgKICAgICAgICBmb3IoaW50IGkgPSAxOyBpIDwgUy5sZW5ndGgoKSAmJiBTLmxlbmd0aCgpIC0gaSA+IGFuc3dlcjsgaSsrKSB7IAogICAgICAgICAgICBpbnQgaiA9IDA7CiAgICAgICAgICAgIC8qCiAgICAgICAgICAgINCf0LXRgNC10LHQuNGA0LDQtdC8INGA0LDQt9C70LjRh9C90YvQtSDQtNC70LjQvdGLINC/0YDQtdGE0LjQutGB0L7QsiAo0YHRg9GE0YTQuNC60YHQvtCyKSwg0L/QvtC60LAg0L3QtSDQtNC+0LnQtNC10Lwg0LTQviDQtNC70LjQvdGLIDEg0Lgg0L/QvtC60LAg0LzQvtC20LXQvCDQstGB0YLRgNC10YLQuNGC0Ywg0LPRgNCw0L3RjCwg0LTQu9C40L3QvdC10LUg0YXRgNCw0L3Rj9GJ0LXQudGB0Y8uCiAgICAgICAgICAgIGkgLSDQv9C10YDQstGL0Lkg0YHQuNC80LLQvtC7INC+0YfQtdGA0LXQtNC90L7Qs9C+INGB0YPRhNGE0LjQutGB0LAKICAgICAgICAgICAgaiAtINC00LvQuNC90LAg0YLQtdC60YPRidC10Lkg0LPRgNCw0L3QuCDQuCDQv9C10YDQstGL0Lkg0YHQuNC80LLQvtC7INC+0YfQtdGA0LXQtNC90L7Qs9C+INC/0YDQtdGE0LjQutGB0LAKICAgICAgICAgICAgKi8KICAgICAgICAgICAgd2hpbGUoaiA8IFMubGVuZ3RoKCkgLSBpICYmIFMuY2hhckF0KGopID09IFMuY2hhckF0KGkgKyBqKSl7ICAvLyDQndCw0LrQsNC/0LvQuNCy0LDQtdC8INC00LvQuNC90YMsINC/0L7QutCwINGB0LjQvNCy0L7Qu9GLINC/0YDQtdGE0LjQutGB0LAg0Lgg0YHRg9GE0YTQuNC60YHQsCDRgdC+0LLQv9Cw0LTQsNGO0YIKICAgICAgICAgICAgICAgIGorKzsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoaiA+IGFuc3dlcikgYW5zd2VyID0gajsKICAgICAgICB9CiAgICAgICAgU3lzdGVtLm91dC5wcmludChhbnN3ZXIpOwogICAgfQogICAgCn0K