#include<bits/stdc++.h>
using namespace std;
char st[221000010];
int len[221000010], ans;
int idx;
void add()
{
char s;
while(isalpha(s=getchar()))
{
st[++idx] = '#';
st[++idx] = s;
}
st[0] = '{';
st[idx+1] = '#';
st[idx+2] = '}';
}
int main(void)
{
add();
int x = 0, r = 0;
int ll = (int)strlen(st);
for(int i = 0; i < ll; ++i)
{
len[i] = x>i ? min(len[2*x-i],r-i):1;
while(st[i+len[i]] == st[i-len[i]]) len[i]++;
if(r < i+len[i])
{
r = i+len[i];
x = i;
}
ans = max(ans, len[i]-1);
}
printf("%d", ans);
return 0;
}