#include<bits/stdc++.h>
using namespace std;
/*======================================= Macro Start====================================================*/
#define input freopen("in.txt","r",stdin)
#define output freopen("out.txt","w",stdout)
#define min3(a,b,c) min(a,min(b,c))
#define max3(a,b,c) max(a,max(b,c))
#define min4(a,b,c,d) min(min(a,b),min(c,d))
#define max4(a,b,c,d) max(max(a,b),max(c,d))
#define count_one(a) __builtin_popcount(a) // Returns the number of set bits(1) in a number(a). In long long use __builtin_popcountll(a)
#define parity(i) __builtin_parity(i) //even parity 0 and odd parity 1
#define blz(a) __builtin_clz(a) //Returns the number of leading zeroes in a number(a)
#define btz(a) __builtin_ctz(a) //Returns the number of trailing zeroes in a number(a)
#define gcd(a,b) __gcd(a,b)
#define lcm(a,b) (a*(b/gcd(a,b)))
/*======================================= Macro End====================================================*/
/*====================================== CONSTANT Start===================================================*/
#define INF (1<<30) //infinity value
#define EPS 1e-9
#define MOD 10007
#define SIZ 1005
/*====================================== CONSTANT End===================================================*/
int main()
{
ios_base::sync_with_stdio(0);
int tc,cn;
long long n;
cin>>tc;
for(cn=1;cn<=tc;cn++)
{
cin>>n;
bitset<32>to_binary(n);
int n_1_count = to_binary.count();
for(long long i=n+1;;i++)
{
bitset<32>next_binary(i);
if(next_binary.count() == n_1_count)
{
cout<<"Case "<<cn<<": "<<i<<endl;
break;
}
}
}
return 0;
}
I2luY2x1ZGU8Yml0cy9zdGRjKysuaD4KCnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgovKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSBNYWNybyBTdGFydD09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qLwoKI2RlZmluZSBpbnB1dCBmcmVvcGVuKCJpbi50eHQiLCJyIixzdGRpbikKI2RlZmluZSBvdXRwdXQgZnJlb3Blbigib3V0LnR4dCIsInciLHN0ZG91dCkKCiNkZWZpbmUgbWluMyhhLGIsYykgbWluKGEsbWluKGIsYykpCiNkZWZpbmUgbWF4MyhhLGIsYykgbWF4KGEsbWF4KGIsYykpCiNkZWZpbmUgbWluNChhLGIsYyxkKSBtaW4obWluKGEsYiksbWluKGMsZCkpCiNkZWZpbmUgbWF4NChhLGIsYyxkKSBtYXgobWF4KGEsYiksbWF4KGMsZCkpCiNkZWZpbmUgY291bnRfb25lKGEpIF9fYnVpbHRpbl9wb3Bjb3VudChhKSAgLy8gUmV0dXJucyB0aGUgbnVtYmVyIG9mIHNldCBiaXRzKDEpIGluIGEgbnVtYmVyKGEpLiBJbiBsb25nIGxvbmcgdXNlIF9fYnVpbHRpbl9wb3Bjb3VudGxsKGEpCiNkZWZpbmUgcGFyaXR5KGkpICAgX19idWlsdGluX3Bhcml0eShpKSAgLy9ldmVuIHBhcml0eSAwIGFuZCBvZGQgcGFyaXR5IDEKI2RlZmluZSBibHooYSkgICBfX2J1aWx0aW5fY2x6KGEpIC8vUmV0dXJucyB0aGUgbnVtYmVyIG9mIGxlYWRpbmcgemVyb2VzIGluIGEgbnVtYmVyKGEpCiNkZWZpbmUgYnR6KGEpICAgX19idWlsdGluX2N0eihhKSAvL1JldHVybnMgdGhlIG51bWJlciBvZiB0cmFpbGluZyB6ZXJvZXMgaW4gYSBudW1iZXIoYSkKI2RlZmluZSBnY2QoYSxiKSBfX2djZChhLGIpCiNkZWZpbmUgbGNtKGEsYikgKGEqKGIvZ2NkKGEsYikpKQoKLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gTWFjcm8gRW5kPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovCgovKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IENPTlNUQU5UIFN0YXJ0PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki8KCiNkZWZpbmUgSU5GICgxPDwzMCkgLy9pbmZpbml0eSB2YWx1ZQojZGVmaW5lIEVQUyAxZS05CiNkZWZpbmUgTU9EIDEwMDA3CiNkZWZpbmUgU0laIDEwMDUKCi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gQ09OU1RBTlQgRW5kPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki8KCmludCBtYWluKCkKewogICBpb3NfYmFzZTo6c3luY193aXRoX3N0ZGlvKDApOwoKICAgaW50IHRjLGNuOwogICBsb25nIGxvbmcgbjsKCiAgIGNpbj4+dGM7CiAgIGZvcihjbj0xO2NuPD10YztjbisrKQogICB7CiAgICAgICBjaW4+Pm47CiAgICAgICBiaXRzZXQ8MzI+dG9fYmluYXJ5KG4pOwogICAgICAgaW50IG5fMV9jb3VudCA9IHRvX2JpbmFyeS5jb3VudCgpOwoKICAgICAgIGZvcihsb25nIGxvbmcgaT1uKzE7O2krKykKICAgICAgIHsKICAgICAgICAgICBiaXRzZXQ8MzI+bmV4dF9iaW5hcnkoaSk7CgogICAgICAgICAgIGlmKG5leHRfYmluYXJ5LmNvdW50KCkgPT0gbl8xX2NvdW50KQogICAgICAgICAgIHsKICAgICAgICAgICAgICAgY291dDw8IkNhc2UgIjw8Y248PCI6ICI8PGk8PGVuZGw7CiAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgIH0KICAgICAgIH0KCiAgIH0KCiAgICByZXR1cm4gMDsKfQo=