#include<bits/stdc++.h>
#define N 1000010
using namespace std;
typedef long long ll;
int read()
{
int x = 0,f = 1;
char c = getchar();
while(c<'0' || c>'9')
{
if(c=='-') f = -1;
c = getchar();
}
while(c>='0' && c<='9')
{
x = (x<<3)+(x<<1)+(c^48);
c = getchar();
}
return x*f;
}
bool a[N];
int main()
{
int t=read();
while(t--)
{
int d=read(),k=read();
memset(a,false,sizeof(a));
int p,n=(1<<d)-1;
for (int i=0;i<k;i++)
{
p=1;
while(p<=n)
{
a[p] = !a[p];
p = a[p] ? p*2 : p*2+1;
}
}
cout << p/2 << endl;
}
return 0;
}
记录