#include<stdio.h>
#include<stdlib.h>
#include<math.h>
#include<string.h>
int main()
{
char s1[100];
int a1[100]={0},a2[100]={0};
int N,i,len,ans=0,flag=1;
scanf("%d",&N);
getchar();
gets(s1);
len=strlen(s1);
for(i=0;i<len;i++)//将M的每一位放进数组
{
if((s1[i]>='a'&&s1[i]<='f')||(s1[i]>='A'&&s1[i]<='F')) a1[i]=s1[i]-'a'+10;
else a1[i]=s1[i]-'0';
}
while(ans<=30)
{
flag=1;
for(i=0;i<len;i++)//判断是否回文
{
a2[i]=a1[len-1-i];
if(a1[i]!=a1[len-1-i]) flag=0;
}
if(flag==0)//相加得到新数组
{
ans++;
for(i=0;i<len;i++)
{
a1[i]=a1[i]+a2[i];
if(a1[i]>=N)
{
a1[i]-=N;
a1[i+1]++;
if(i==len-1) len++;
}
}
}
else break;
}
if(ans>30) printf("Impossible");
else printf("STEP=%d",ans);
return 0;
}