#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
typedef unsigned long long ull;
#define sf scanf
#define pf printf
#define pb push_back
#define ppb pop_back
#define MP make_pair
#define PF first
#define PS second
#define FOR(i,x,y) for(i=x;i<y;i++)
#define RFOR(i,x,y) for(i=x;i>=y;i--)
#define CLR(arr,val) memset(arr,val,sizeof arr);
#define vout(v) for(i=0;i<v.size();i++){ cout<<v[i]; if(i<v.size()-1) cout<<' '; else cout<<endl;}
#define TCL(test,t) for(test=1;test<=t;test++)
#define READ() freopen("input.txt", "r", stdin)
#define WRITE() freopen("output.txt", "w", stdout)
#define MAXN 100000008
#define MOD 4294967296
ll v=MAXN,val[MAXN];
vector <int> prime;
bool a[MAXN];
void sieve()
{
ll i,t,j,n,m,k=0;
m=sqrt(v);
prime.pb(2);
k=1;
a[0]=1;
a[1]=1;
a[2]=0;
val[1]=1;
val[2]=2;
for(i=2;i<MAXN;i=i*2){
val[i]=2;
}
for(i=4;i<v;i+=2){
a[i]=1;
}
for(i=3;i<v;i+=2){
if(a[i]==0){
prime.pb(i);
k++;
if(i<=m){
for(j=i*i;j<v;j+=2*i){
a[j]=1;
}
}
for(j=i;j<v;j=j*i){
val[j]=i;
}
}
}
//cout<<k<<endl;
return;
}
void precal()
{
ll i,j,ncount;
for(i=2;i<MAXN;i++){
if(val[i]==0)val[i]=1;
val[i]=((val[i-1]%MOD)*(val[i]%MOD))%MOD;
}
}
int main()
{
ll t,test=0,n;
sieve();
precal();
cin>>t;
while(t--){
cin>>n;
cout<<"Case "<<++test<<": "<<val[n]<<endl;
}
return 0;
}
CiNpbmNsdWRlPGJpdHMvc3RkYysrLmg+Cgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKdHlwZWRlZiBsb25nIGxvbmcgICAgICAgICAgIGxsOwp0eXBlZGVmIHVuc2lnbmVkIGxvbmcgbG9uZyAgdWxsOwoKI2RlZmluZSBzZiAgICAgICAgICAgICAgICAgIHNjYW5mCiNkZWZpbmUgcGYgICAgICAgICAgICAgICAgICBwcmludGYKI2RlZmluZSBwYiAgICAgICAgICAgICAgICAgIHB1c2hfYmFjawojZGVmaW5lIHBwYiAgICAgICAgICAgICAgICAgcG9wX2JhY2sKI2RlZmluZSBNUCAgICAgICAgICAgICAgICAgIG1ha2VfcGFpcgojZGVmaW5lIFBGICAgICAgICAgICAgICAgICAgZmlyc3QKI2RlZmluZSBQUyAgICAgICAgICAgICAgICAgIHNlY29uZAojZGVmaW5lIEZPUihpLHgseSkgICAgICAgICAgZm9yKGk9eDtpPHk7aSsrKQojZGVmaW5lIFJGT1IoaSx4LHkpICAgICAgICAgZm9yKGk9eDtpPj15O2ktLSkKI2RlZmluZSBDTFIoYXJyLHZhbCkgICAgICAgIG1lbXNldChhcnIsdmFsLHNpemVvZiBhcnIpOwojZGVmaW5lIHZvdXQodikgICAgICAgICAgICAgZm9yKGk9MDtpPHYuc2l6ZSgpO2krKyl7IGNvdXQ8PHZbaV07IGlmKGk8di5zaXplKCktMSkgY291dDw8JyAnOyBlbHNlIGNvdXQ8PGVuZGw7fQojZGVmaW5lIFRDTCh0ZXN0LHQpICAgICAgICAgZm9yKHRlc3Q9MTt0ZXN0PD10O3Rlc3QrKykKI2RlZmluZSBSRUFEKCkgICAgICAgICAgICAgIGZyZW9wZW4oImlucHV0LnR4dCIsICJyIiwgc3RkaW4pCiNkZWZpbmUgV1JJVEUoKSAgICAgICAgICAgICBmcmVvcGVuKCJvdXRwdXQudHh0IiwgInciLCBzdGRvdXQpCiNkZWZpbmUgTUFYTiAxMDAwMDAwMDgKI2RlZmluZSBNT0QgNDI5NDk2NzI5NgoKbGwgdj1NQVhOLHZhbFtNQVhOXTsKdmVjdG9yIDxpbnQ+IHByaW1lOwpib29sIGFbTUFYTl07Cgp2b2lkIHNpZXZlKCkKewogICAgbGwgaSx0LGosbixtLGs9MDsKICAgIG09c3FydCh2KTsKICAgIHByaW1lLnBiKDIpOwogICAgaz0xOwogICAgYVswXT0xOwogICAgYVsxXT0xOwogICAgYVsyXT0wOwogICAgdmFsWzFdPTE7CiAgICB2YWxbMl09MjsKICAgIGZvcihpPTI7aTxNQVhOO2k9aSoyKXsKICAgICAgICB2YWxbaV09MjsKICAgIH0KICAgIGZvcihpPTQ7aTx2O2krPTIpewogICAgICAgIGFbaV09MTsKICAgIH0KICAgIGZvcihpPTM7aTx2O2krPTIpewogICAgICAgIGlmKGFbaV09PTApewogICAgICAgICAgICBwcmltZS5wYihpKTsKICAgICAgICAgICAgaysrOwogICAgICAgICAgICBpZihpPD1tKXsKICAgICAgICAgICAgICAgIGZvcihqPWkqaTtqPHY7ais9MippKXsKICAgICAgICAgICAgICAgICAgICBhW2pdPTE7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgICAgZm9yKGo9aTtqPHY7aj1qKmkpewogICAgICAgICAgICAgICAgdmFsW2pdPWk7CiAgICAgICAgICAgIH0KICAgICAgICB9CgogICAgfQogICAgLy9jb3V0PDxrPDxlbmRsOwogICAgcmV0dXJuOwp9Cgp2b2lkIHByZWNhbCgpCnsKICAgIGxsIGksaixuY291bnQ7CiAgICBmb3IoaT0yO2k8TUFYTjtpKyspewogICAgICAgIGlmKHZhbFtpXT09MCl2YWxbaV09MTsKICAgICAgICB2YWxbaV09KCh2YWxbaS0xXSVNT0QpKih2YWxbaV0lTU9EKSklTU9EOwogICAgfQp9CgppbnQgbWFpbigpCnsKICAgIGxsIHQsdGVzdD0wLG47CiAgICBzaWV2ZSgpOwogICAgcHJlY2FsKCk7CiAgICBjaW4+PnQ7CiAgICB3aGlsZSh0LS0pewogICAgICAgIGNpbj4+bjsKICAgICAgICBjb3V0PDwiQ2FzZSAiPDwrK3Rlc3Q8PCI6ICI8PHZhbFtuXTw8ZW5kbDsKICAgIH0KICAgIHJldHVybiAwOwp9Cg==