#小白做题 勿喷,有错误的地方可以指出
while True:
    try:
        zifuchuan = input()
        list1 = []
        n = len(zifuchuan)
        for i in range(n): #i确定回文子串的初始位置索引
            for j in range(i+1, n+1): #j考确定回文子串的终止位置索引
                if zifuchuan[i:j] == zifuchuan[i:j][::-1]: #判断截取字符串的正序、逆序是否一样,即该段是否是回文字符串
                    list1.append(j-i) #如果判断是回文字符串,就将该串的长度添加到空列表中,以便确定最长的回文子串
        print(max(list1))
    except:
        break