#include <iostream>
#include <cstring>
#include <bits/stdc++.h>
using namespace std;

bool Sviisti (char niz[], int o, int d)
{
	if(o==d)
	{
		return true;
	} else {
		
		for(int i=o; i<d; i++)
		{
			if(niz[i]!=niz[i+1])
			{
			return false;
			}
		}
		return true;
	}
}

int Rekurzija(char niz[], int o, int d, int n)
{

	if(Sviisti(niz,o,d)==true)
	{

		if(niz[d]==niz[d+1] && d+1<n)
		{
		    Rekurzija(niz,o,d+1,n);
		} else if(niz[o-1]==niz[d+1] && o-1>=0 && d+1<n)
		{
			Rekurzija(niz, o-1, d+1,n);
		} else {
        	return d-o+1;
		}
	}	
	
		if(niz[o-1]==niz[d+1] && o-1>0 && d+1<n)
		{
			Rekurzija(niz, o-1, d+1, n);
		} else {
			return d-o+1;
		} 
	
	
	
	
}

int main(int argc, char** argv) {
	string ulaz;
	cin>>ulaz;
	int n = ulaz.length();
	char niz[n];
	strcpy(niz, ulaz.c_str());
	int max = 0;
	int maxpon = 0;
	for (int i=0; i<n; i++)
	{
		max=Rekurzija(niz,i,i,n);
		if(max>maxpon)
		{
			maxpon=max;
		}
	}
	cout<<maxpon;
}