#include<bits/stdc++.h>
using namespace std;
#define pi 3.14159265358979323846264338327950
const int N=1e6+20,mod=(int)(1e9)+7;
#define ull unsigned long long
#define ll long long;
ull solve(ull n,ull k){
//convert to binary
ull sum=0,i=0,z=0;
ull arr[123456];
while(k>0){
int tmp=k%2;
arr[i++]=tmp;
k=k/2;
}
if(i!=n)
{
while(i!=n)
arr[i++]=0;
}
//cout<<i<<endl;
//for(int x=i-1;x>=0;x--)
// cout<<arr[x];
//cout<<endl;
for(int j=i-1;j>=0;j--){
sum=sum+(arr[j]*(ull)pow(2,z++));
}
return sum;
}
int main(){
int t;
cin>>t;
while(t--){
ull n,k;
cin>>n>>k;
printf("%llu\n",solve(n,k));
}
return 0;
}
I2luY2x1ZGU8Yml0cy9zdGRjKysuaD4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKI2RlZmluZSBwaSAzLjE0MTU5MjY1MzU4OTc5MzIzODQ2MjY0MzM4MzI3OTUwCmNvbnN0IGludCBOPTFlNisyMCxtb2Q9KGludCkoMWU5KSs3OwojZGVmaW5lIHVsbCB1bnNpZ25lZCBsb25nIGxvbmcKI2RlZmluZSBsbCBsb25nIGxvbmc7CnVsbCBzb2x2ZSh1bGwgbix1bGwgayl7CgkvL2NvbnZlcnQgdG8gYmluYXJ5Cgl1bGwgc3VtPTAsaT0wLHo9MDsKCXVsbCBhcnJbMTIzNDU2XTsKCXdoaWxlKGs+MCl7CgkJaW50IHRtcD1rJTI7CgkJYXJyW2krK109dG1wOwoJCWs9ay8yOwoJfQoJaWYoaSE9bikKCXsKCQl3aGlsZShpIT1uKQoJCQlhcnJbaSsrXT0wOwoJfQoJLy9jb3V0PDxpPDxlbmRsOwoJLy9mb3IoaW50IHg9aS0xO3g+PTA7eC0tKQoJLy8JY291dDw8YXJyW3hdOwoJLy9jb3V0PDxlbmRsOwoJZm9yKGludCBqPWktMTtqPj0wO2otLSl7CgkJc3VtPXN1bSsoYXJyW2pdKih1bGwpcG93KDIseisrKSk7Cgl9CglyZXR1cm4gc3VtOwp9CmludCBtYWluKCl7CglpbnQgdDsKCWNpbj4+dDsKCXdoaWxlKHQtLSl7CgkJdWxsIG4sazsKCQljaW4+Pm4+Pms7CgkJcHJpbnRmKCIlbGx1XG4iLHNvbHZlKG4saykpOwoJfQpyZXR1cm4gMDsKfSA=