#include<iostream>
#include<cstdio>
#include<cmath>
#include<string>
#include<cstring>
#include<algorithm>
using namespace std;
int a[],b[],n,sum;
void zhuan(int a[]) //字符串转化成数字
{
char s[];
cin>>n;
scanf("%s",s);
a[]=strlen(s);
for(int i=;i<=a[];i++)
{
if(s[a[]-i]>=''&&s[a[]-i]<='')
a[i]=s[a[]-i]-'';
else a[i]=s[a[]-i]-'A'+;
} }
bool check(int a[]) //判断是否回文
{
for(int i=;i<=a[];i++)
if(a[i]!=a[a[]-i+]) return false;
return true;
}
void jia(int a[]) //做加法
{
for(int i=;i<=a[];i++)
b[i]=a[a[]-i+];
for(int i=;i<=a[];i++)
a[i]+=b[i];
for(int i=;i<=a[];i++)
{
a[i+]+=a[i]/n;
a[i]%=n;
}
if(a[a[]+]>) a[]++;
}
int main()
{ zhuan(a);
if(check(a)) {cout<<"STEP="<<; return ;}
sum=;
while(sum<=)
{
sum++;
jia(a);
if(check(a)) {cout<<"STEP="<<sum; return ;}
}
cout<<"Impossible!";
return ; }