rt
#include<bits/stdc++.h>
using namespace std;
int a[1000],b[1000],len,k;
bool f(){
for(int i=1;i<=len/2;++i) if(a[i]!=a[len-i]) return 0;
return 1;
}
signed main(){
scanf("%d\n",&k);
for(;1;){
char c=getchar();
++len;
if(c=='\n') break;
else if(c>='0'&&c<='9') a[len]=c-'0';
else a[len]=c-'A'+10;
}
for(int i=1;i<=len/2;++i) swap(a[i],a[len-i]);
if(f()){
printf("STEP=0");
return 0;
}
for(int s=1;s<=30;++s){
memset(b,0,500);
for(int i=1;i<len;++i) b[i]=a[len-i];
for(int i=1;i<len;++i){
if(a[i]+b[i]>=k){
if(i+1==len) ++len,a[i+1]=0;
a[i+1]+=((a[i]+b[i])/k);
}
a[i]=(a[i]+b[i])%k;
}
if(f()){
printf("STEP=%d",s);
return 0;
}
}
printf("Impossible!");
return 0;
}