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));} }