#include <bits/stdc++.h> using namespace std; typedef long long ll; const int maxn = 1000005; char s[maxn]; char ma[maxn * 2]; int mp[maxn * 2]; void Manacher(char s[]) { int len = strlen(s); int l = 0; ma[l++] = '$'; ma[l++] = '#'; for(int i = 0;i < len;i++) { ma[l++] = s[i]; ma[l++] = '#'; } ma[l] = 0; int mx = 0,id = 0; for(int i = 0;i <= l;i++) { mp[i] = mx > i?min(mp[2*id-i],mx - i):1; while(ma[i+mp[i]] == ma[i-mp[i]]) mp[i]++; if(i + mp[i] > mx) { mx = i + mp[i]; id = i; } } } int main() { int cnt = 0; while(scanf("%s", s) != EOF) { if(strcmp(s,"END") == 0) break; int len = strlen(s); Manacher(s); int ans = 0; for(int i = 0;i <= len*2+2;i++) { ans = max(ans,mp[i]); } printf("Case %d: ",++cnt); printf("%d\n",ans-1); } return 0; }