#include <iostream>
#define MAX(a, b) (a > b ? a : b)
usingnamespacestd;charbuf[1001];intdp[1001][1001];// [s][e] == str[start] ~ str[end] is pelindint_strlen(constchar*str){intlen=0;while(*str!='\0'){str++;len++;}returnlen;}voidinit(){for(inti=0;i<1001;i++){for(intj=0;j<1001;j++){if(i==j)dp[i][j]=1;elseif(i-j==1||i-j==-1)dp[i][j]=1;elsedp[i][j]=0;}}}intsolve(){// a~b -> a+1 ~ b-1 -> a+2 ~ b-2 intmax=0;intlen=_strlen(buf);if(len==1)max=1;elseif(len==2)max=2;for(inti=2;i<=len;i++){// i = lenfor(intj=0;j<len-i;j++){if(buf[j]==buf[j+i]&&dp[j+1][j+i-1]){if(j+2==j+i-1&&buf[j+1]!=buf[j+i-1])continue;dp[j][j+i]=1;max=MAX(i+1,max);}}}returnmax;}intmain(){intT;cin>>T;intres;for(registerinti=1;i<=T;i++){init();cin>>buf;res=solve();cout<<"#"<<i<<" "<<res<<"\n";}}