#include<stdio.h>
#include<stdlib.h>
#include<string.h>

int main()
{
    long x,i,z,n,m,s,p,p1,p2;
    long k1,k2;

    long pocetakNiza,sredisnjeSlovo,krajNiza,levarazlika,desnarazlika;
    char t[200000];
    char t1[200000];

    scanf("%s", t);

    x=strlen(t);
    z=0;
    int k[200000];
    strcpy(t1,t);

    s=0;
    
    
    for(i=0;i<=x/2;i++)
    {
        if(t[i]!=t[x-i-1])
        {
            k[z]=i;
            z++;
            s=1;
        }
    }

    pocetakNiza=k[0];
    krajNiza=(x-pocetakNiza)+1;
    p1=pocetakNiza;

    m=pocetakNiza;
        

    if(s==0)
    {
        printf("%d", 1);
    }
    else
    {
        if (x%2==0)
        {
            sredisnjeSlovo=x/2;

            for(p=pocetakNiza;p<=sredisnjeSlovo;p++)
            {
                m++;

                for(s=sredisnjeSlovo+1;s<=krajNiza;s++)
                {
                    if(t[p]==t[s])
                    {
                        s=krajNiza+1;
                        t[s]=0;
                        p1=m;
                    }
                    else
                    {
                        if(t[s]!=0)
                        {
                            if(s==krajNiza)
                            {
                                p=sredisnjeSlovo+1;
                            }
                        }
                    }
                }
            }

            desnarazlika=(krajNiza-p1);

            m=krajNiza;

            for(k1=krajNiza;k1>sredisnjeSlovo;k1--)
            {
                m--;

                for(p=pocetakNiza;p<=sredisnjeSlovo;p++)
                {
                    if(t1[k1]==t1[p])
                    {
                        p=sredisnjeSlovo+1;
                        t1[s]=0;
                        k2=m;
                    }
                    else
                    {
                        if(t1[s]!=0)
                        {
                            if(p==sredisnjeSlovo)
                            {
                                k1=sredisnjeSlovo;
                            }
                        }
                    }
                }
            }

            levarazlika=(k2-pocetakNiza);

            if(levarazlika>desnarazlika)
            {
                printf("%d\n", desnarazlika);
            }
            else
            {
                printf("%d\n", levarazlika);
            }
        }
        else
        {
            sredisnjeSlovo=(x/2)+1;

            for(p=pocetakNiza;p<sredisnjeSlovo;p++)
            {
                m++;

                for(s=sredisnjeSlovo;s<=krajNiza;s++)
                {
                    if(t[p]==t[s])
                    {
                        s=krajNiza+1;
                        t[s]=0;
                        p1=m;
                    }
                    else
                    {
                        if(t[s]!=0)
                        {
                            if(s==krajNiza)
                            {
                                p=sredisnjeSlovo+1;
                            }
                        }
                    }
                }
            }

            if(t[p1]==t[sredisnjeSlovo])
            {
                desnarazlika=krajNiza-p1;
            }
            else
            {
                desnarazlika=(krajNiza-p1)+1;
            }

            m=krajNiza;

            for(k1=krajNiza;k1>sredisnjeSlovo;k1--)
            {
                m--;

                for(p=pocetakNiza;p<sredisnjeSlovo;p++)
                {
                    if(t1[k1]==t1[p])
                    {
                        p=sredisnjeSlovo+1;
                        t1[s]=0;
                        k2=m;
                    }
                    else
                    {
                        if(t1[s]!=0)
                        {
                            if(p==sredisnjeSlovo)
                            {
                                k1=sredisnjeSlovo;
                            }
                        }
                    }
                }
            }

            if(t1[k2]==t1[sredisnjeSlovo])
            {
                levarazlika=k2-pocetakNiza;
            }
            else
            {
                levarazlika=(k2-pocetakNiza)+1;
            }

            if(levarazlika>desnarazlika)
            {
                printf("%d\n", desnarazlika);
            }
            else
            {
                printf("%d\n", levarazlika);
            }

            
        }
    }
    return 0;
}