#include <bits/stdc++.h>
using namespace std;
int main() {
int t;
cin>>t;
int i =1;
while(t--){
int n,m;
cin >> n >> m;
//cout<< n<<" "<<m<<endl;
vector<int>a(n);
for(int i =0;i<n;i++)
{
int tmp;
cin>> tmp;
a[i] = tmp;
// cout<<a[i]<<" ";
}
cout<<endl;
int k = 0;
int sum = 0;
// while(1) {
//sum =0;
int res = 0;
bool flag =false;
for(int k = 0; k<=127; k++) {
sum =0;
for(int i = 0; i<n; i++) {
sum = sum + (a[i] ^k);
}
if(sum<=m)
{
res = max(res,k);
flag = true;
}
// if(sum>m){
// flag = !flag;
// }
}
// if(sum>m){
// break;
// }
// cout<<k<<" "<<sum<<" "<<m<<endl;
// k++;
// sum = 0;
// }
if(flag == false){
res = -1;
}
cout<<"Case #"<<i<<": "<<res<<endl;
i++;
}
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgppbnQgbWFpbigpIHsKCWludCB0OwoJY2luPj50OwoJaW50IGkgPTE7Cgl3aGlsZSh0LS0pewoJCWludCBuLG07CgkJY2luID4+IG4gPj4gbTsKCQkvL2NvdXQ8PCBuPDwiICI8PG08PGVuZGw7CgkJdmVjdG9yPGludD5hKG4pOwoJCWZvcihpbnQgaSA9MDtpPG47aSsrKQoJCXsKCQkJaW50IHRtcDsKCQkJY2luPj4gdG1wOwoJCQlhW2ldID0gdG1wOwoJCS8vCWNvdXQ8PGFbaV08PCIgIjsKCQl9CgkJY291dDw8ZW5kbDsKCQkKCQlpbnQgayA9IDA7CgkJaW50IHN1bSA9IDA7CiAgICAgICAgLy8gd2hpbGUoMSkgewogICAgICAgIC8vc3VtID0wOwogICAgICAgIGludCByZXMgPSAwOwogICAgICAgIGJvb2wgZmxhZyA9ZmFsc2U7CiAgICAgICAgZm9yKGludCBrID0gMDsgazw9MTI3OyBrKyspIHsKICAgICAgICAJc3VtID0wOwogICAgICAgIAlmb3IoaW50IGkgPSAwOyBpPG47IGkrKykgewoJCQkJc3VtID0gc3VtICsgKGFbaV0gXmspOwoJCQl9CgkJCWlmKHN1bTw9bSkKCQkJewoJCQkJcmVzID0gbWF4KHJlcyxrKTsKCQkJCWZsYWcgPSB0cnVlOwoJCQl9CgkJCS8vIGlmKHN1bT5tKXsKCQkJLy8gCWZsYWcgPSAhZmxhZzsKCQkJLy8gfQogICAgICAgIH0KCQkKCQkvLyBpZihzdW0+bSl7CgkJLy8gCWJyZWFrOwoJCS8vIH0KCQkvLyBjb3V0PDxrPDwiICI8PHN1bTw8IiAiPDxtPDxlbmRsOwoJCS8vIGsrKzsKCQkvLyBzdW0gPSAwOwogIC8vICAgICB9CiAgICAgIGlmKGZsYWcgPT0gZmFsc2UpewogICAgICAJcmVzID0gLTE7CiAgICAgIH0KICAgICAgIGNvdXQ8PCJDYXNlICMiPDxpPDwiOiAiPDxyZXM8PGVuZGw7CiAgICAgICBpKys7Cgl9CglyZXR1cm4gMDsKfQ==