using System;


class Treci_Zadatak
{
    static void Main()
    {
        string niska  = Console.ReadLine();
        int duzina_palindroma = niska.Length;
        char[] palindrom_char =  niska.ToCharArray();

        for (int i = 0; i < duzina_palindroma / 2; i++) {
            int levo = i;

            int desno = duzina_palindroma - levo - 1;
            while (levo < desno) {
                if (palindrom_char[levo] == palindrom_char[desno]) { break; }
                else { desno--; }
            }
            for (int j = desno; j < duzina_palindroma - levo - 1; j++) {
                char t = palindrom_char[j];
                palindrom_char[j] = palindrom_char[j + 1];
                palindrom_char[j + 1] = t;
            }

        }
        string palindrom = new string(palindrom_char);


        int prvi_indeks = 0;
        for (int i = palindrom.Length - 1; i > 0; i--) {
            if (niska[i] != palindrom[i]) {
                prvi_indeks = i;
                break;
            }
        }

        int drugi_indeks = 0;
        for (int i = 0; i < palindrom.Length; i++) {
            if (niska[i] != palindrom[i]){
                drugi_indeks = i;
                break;
            }
        }
        Console.WriteLine(Math.Abs(drugi_indeks - prvi_indeks) + 1);
    }
}