#include<bits/stdc++.h>

#include

using namespace std;

int main() {

string s;
cin >> s;
int minLength = INT_MAX;// 初始化最短回文串长度
for(int i = 0;i < s.size();i++)//双重循环遍历子串:外层循环确定子串的起始位置 i,内层循环确定子串的结束位置 j,以此遍历所有长度大于 1 的子串。
{
    for(int j = i + 1;j < s.size();j++)
    {
        bool is = true;
        int left = i,right = j;
        while(left < right)//利用双指针来判断回文子串
        {
            if(s[left] != s[right])
            {
                is = false;
            }
            left++;
            right--;
        }
        if(is)//更新最短子串长度
        {
            minLength = min(minLength,j - i + 1);
        }
    }
}
if(minLength == INT_MAX)//没有找到回文子串
{
    cout << -1 << endl;
}else
{
    cout << minLength << endl;
}

}