#include <iostream>
#include <string>
#include <algorithm>
using namespace std;

int slovoA(string t,char b,int start,int end){
	for(int i=start;i<=end;i++){
		if(t[i]==b){
			return i;
		}
	}
	return -1;
}
int slovoB(string t,char a,int start,int end){
	for(int i=start;i>=end;i--){
		if(t[i]==a){
			return i;
		}
	}
	return -1;
}

int main(){
	ios_base::sync_with_stdio(false);
	string t;cin>>t;
	int i=0,j=t.size()-1;
	bool levo=false,desno=false;
	int x,y;
	while(i<=j){
		if(t[i]!=t[j]){
			int a=slovoA(t,t[j],i+1,j-1);
			int b=slovoB(t,t[i],j-1,i+1);
			if((a-i<j-b&&a!=-1)||b==-1){
				swap(t[i],t[a]);
				if(!levo){
					levo=true;
					x=i;
				}
			}
			else{
				swap(t[j],t[b]);
				if(!desno){
					desno=true;
					y=j;
				}
			}
		}
		if(levo&&desno){
			cout<<y-x+1;
			return 0;
		}
		i++;j--;
	}
	cout<<1;
	
	
	return 0;
}