#include <bits/stdc++.h>
using namespace std;
int pocetak,kraj,razlika,brojSlova[150],slovo,zamena,counter=0,counter2;
string t,palindrom;
bool skip=false;
char srednje;
int main(){
    cin >> t;
    for(int i=0; i<t.size(); i++){
        slovo=(int)t[i];
        if(skip!=true){
        if(t[i]!=t[t.size()-i-1]){
            pocetak=i;
            kraj=t.size()-i-1;
            skip=true;
        }
        }
        brojSlova[slovo]++;
    }
    razlika=kraj-pocetak+1;
    for(int i=pocetak; i<kraj; i++){
        if(brojSlova[t[i]]==2){
        palindrom[pocetak+counter]=t[i];
        palindrom[kraj-counter]=t[i];
        brojSlova[t[i]]=0;
        }
        else if(brojSlova[t[i]]==1){
        palindrom[(razlika)/2]=t[i];
        brojSlova[t[i]]=0;
        }
        counter++;
    }
    counter=0;
    counter2=0;
    for(int i=pocetak; i<kraj; i++){
        if(palindrom[i]==t[i] && i<(razlika)/2)counter++;
        else if(palindrom[i]==t[i] && i>(razlika)/2)counter2++;
    }
    cout << min(razlika-counter,razlika-counter2) << endl;
    return 0;
}