#include <iostream>
#include <cstdio>
#include <cstring>
#include <string>
using namespace std;
//英语 看博友分析 抄博友程序 dfs 贪心 背
int hs[30];
string s;
int ans;
void dfs(int l,int r)
{
if(l>r)
{
return;
}
if(s[l]!=s[r])
{
int llen=r-l,rlen=r-l,il=r,ir=l;//重要
for(int i=l+1;i<r;i++)
{
if(s[i]==s[r])
{
llen=i-l;
il=i;
break;
}
}
for(int i=r-1;i>l;i--)
{
if(s[i]==s[l])
{
rlen=r-i;
ir=i;
break;
}
}
if(llen>rlen)
{
//cout<<"hi0"<<endl;
ans=ans+rlen;
for(int i=ir;i<r;i++)
swap(s[i],s[i+1]);//抄博友程序
}else
{
ans=ans+llen;
for(int i=il;i>l;i--)//抄博友程序 背
{
swap(s[i],s[i-1]);
}
}
}
//cout<<s<<" "<<ans<<endl;
dfs(l+1,r-1);
}
int main()
{
int T;
cin>>T;
while(T--)
{
memset(hs,0,sizeof(hs));
cin>>s;
for(int i=0;i<s.size();i++)
{
hs[s[i]-'a']++;
}
int js=0;
for(int i=0;i<26;i++)
{
if(hs[i]%2==1)
{
js++;
}
}
if(js>1)
{
cout<<"Impossible"<<endl;
continue;
}
ans=0;
dfs(0,s.size()-1);
cout<<ans<<endl;
}
return 0;
}