using System;
using System.Collections.Generic;

namespace PalindromSafl
{
    class Program
    {
        public static void zamena(char[] t, int i, int j) 
        {
            char temp = t[i];
            t[i] = t[j];
            t[j] = temp;
        }

        public static int safl(char[] t, string s, int levo, int desno) 
        { 
            if (levo >= desno) return 1;
            if (t[levo] == t[desno]) return safl(t, s, levo + 1, desno - 1);
            int l = levo, d = desno;
            while (levo < desno)
            {
                if (t[levo] != t[desno])
                {
                    int pom = desno;
                    while (levo < pom && t[levo] != t[pom])
                    {
                        pom--;
                    }

                    if (levo == pom)
                    {
                        zamena(t, levo, levo + 1);
                    }
                    else
                    {
                        while (pom < desno)
                        {
                            zamena(t, pom, pom + 1);
                            pom++;
                        }
                    }
                }
                else
                {
                    levo++;
                    desno--;
                }
            }
            for (int i = l; i <= d; i++)
            {
                if (t[i] != s[i]) 
                {
                    l = i;
                    break;
                }
            }
            for(int i = d; d >= l; d--) 
            {
                if(t[i] != s[i]) 
                {
                    d = i;
                    break;
                }
            }
            return d - l + 1;
        }

        static void Main(string[] args)
        {
            string s = Console.ReadLine();
            char[] t = s.ToCharArray();
            Console.WriteLine(safl(t, s, 0, t.Length - 1));
        }
    }
}