#include<bits/stdc++.h>
using namespace std;
char ch[10000];
int n,sum,k,o=1,c=-1;
int main(){
scanf("%d%s", &n, ch);
int k=n-1;
for(int i=0;i<=k-1;i++){//左向右
for(int j=k;j>=i;j--){//右向左
if(j==i){//没找到相同
if(n%2==0||c!=-1){//n为偶数或ch[i]不是唯一不可以匹配的字符
o=0;
break;
}
c=1;//n为奇数,ch[i]是第一个可以匹配的字符
sum+=n/2-i;//将他一道中间的步数
break;
}
if(ch[j]==ch[i]){//找相同的
for(int t=j;i<=k-1;i++){////往后移到对称的位置
ch[t]=ch[t+1];
}
sum+=k-j;
k--;
break;
}
}
if(!o) break;
}
if(!o) printf("Impossible\n");
else printf("%d\n", sum);
return 0;
}
/**************************************************************
Problem: 1842
User: liyunshuo
Language: C++
Result: Wrong Answer
****************************************************************/