#include <iostream>
using namespace std;
int main(int argc, char *argv[])
{
int t,m,n,s,k=0,i,j,a,b;
cin>>t;
while(t--)
{
cin>>m>>b;s=1000000000;
for(i=2;i<=m;i++)
{
j=0;a=0;n=b;
while(!(m%i))
j++,m/=i;//多注意单个素数统计哦,不能相乘
while(n/i&&j!=0)
a+=n/i,n/=i;
if(a/j<s&&j!=0) s=a/j;
}
if(s) cout<<"Case "<<++k<<':'<<endl<<s<<endl;
else cout<<"Case "<<++k<<':'<<endl<<"Impossible to divide"<<endl;
}
return 0;
}
using namespace std;
int main(int argc, char *argv[])
{
int t,m,n,s,k=0,i,j,a,b;
cin>>t;
while(t--)
{
cin>>m>>b;s=1000000000;
for(i=2;i<=m;i++)
{
j=0;a=0;n=b;
while(!(m%i))
j++,m/=i;//多注意单个素数统计哦,不能相乘
while(n/i&&j!=0)
a+=n/i,n/=i;
if(a/j<s&&j!=0) s=a/j;
}
if(s) cout<<"Case "<<++k<<':'<<endl<<s<<endl;
else cout<<"Case "<<++k<<':'<<endl<<"Impossible to divide"<<endl;
}
return 0;
}