import java.util.*;
import java.io.*;
import java.awt.geom.*;
import java.math.*;

public class No0273 {

	static final Scanner in = new Scanner(System.in);
	static final PrintWriter out = new PrintWriter(System.out,false);

	static void solve() {
		StringBuilder sb = new StringBuilder(in.next());
		int max = 1;
		for (int i=0; i<sb.length(); i++) {
			for (int j=i+1; j<=sb.length(); j++) {
				if (i == 0 && j == sb.length()) continue;
				StringBuilder tmp = new StringBuilder(sb.substring(i,j));
				if (String.valueOf(tmp).equals(tmp.reverse().toString())) {
					max = Math.max(max,j-i);
				}
			}
		}

		out.println(max);
	}

	public static void main(String[] args) {
		long start = System.currentTimeMillis();

		solve();
		out.flush();

		long end = System.currentTimeMillis();
		//trace(end-start + "ms");
		in.close();
		out.close();
	}

	static void trace(Object... o) { System.out.println(Arrays.deepToString(o));}
}