P4555
#include<bits/stdc++.h>
using namespace std;
char a[100010],b[200010];
int leng[200010],lt[200010],rt[200010];
int main(){
int mr=0,l,m,ans=0;
cin>>a;
l=strlen(a);
b[0]=b[1]='#';
for(int i=0;i<l;i++){
b[i*2+2]=a[i];
b[i*2+3]='#';
}
l=l*2+2;
b[l]=0;
for(int i=1;i<l;i++){
if(i<mr)
leng[i]=min(leng[m*2-i],leng[m]+m-i);
else
leng[i]=1;
while(b[i+leng[i]]==b[i-leng[i]])
leng[i]++;
if(leng[i]+i>mr){
mr=leng[i]+i;
m=i;
}
}
int c=0;
for(int i=0;i<l;i++)
while(c<=i+leng[i]-1)
lt[c++]=i;
c=l;
for(int i=l-1;i>=0;i--)
while(c>=i-leng[i]+1)
rt[c--]=i;
for(int i=0;i<l;i++)
ans=max(ans,rt[i]-lt[i]);
cout<<ans<<endl;
return 0;
}