#include <iostream>

using namespace std;

struct slovo
{
    int kom;
    int ind;
};
int main()
{
    int br1 = -1, br2 = -1;
    string niska;
    cin >> niska;
    int d = niska.length();
    int j;
    for (j = 0; j < d/2; j++)
    {
        if (niska[j] != niska[d - j - 1])
        {
            break;
        }
    }
    if (j == d/2)
    {
        cout << 1;
        return 0;
    }
    slovo prvo, drugo;
    prvo.ind = (int) niska[j]; drugo.ind = (int) niska[d - j - 1];
    prvo.kom = 0; drugo.kom = 0;
    for (int i = j; i < d - j; i++)
    {
        if (prvo.ind == (int)niska[i])
        {
            prvo.kom ++;
        }
        else if (drugo.ind == (int) niska[i])
        {
            drugo.kom ++;
        }
        //cout << prvo.kom << " " << drugo.kom << endl;
    }
    int slovo_b;

    if (prvo.kom == 2)
    {
        slovo_b = prvo.ind;
    }
    else
    {
        slovo_b = drugo.ind;
    }
    //cout << slovo_b << endl;
    for (int i = j; i < d - j; i++)
    {
        if ((int)niska[i] == slovo_b && br1 == -1)
        {
            br1 = i;
        }
        else if ((int)niska[i] == slovo_b)
        {
            br2 = i;
            break;
        }
    }
    if (br2 != -1)
        br2 = d - br2 - 1;

    if (br1 + 1 <= d/2 + d%2 && br2 + 1 <= d/2 + d%2)
    {
        cout << abs(br1 - br2) + 1;
    }
    else
    {
        cout << d/2 - (br1+1<=d/2?br1:br2) + 1 + d%2;
    }

    return 0;
}