// #define _GLIBCXX_DEBUG
#include <bits/stdc++.h>
using namespace std;
#include <atcoder/all>
using namespace atcoder;
using ll = long long;
#define rep(i,n) for (ll i = 0; i < (n); ++i)
using vl = vector<ll>;
using vvl = vector<vl>;
using P = pair<ll,ll>;
#define pb push_back
#define int long long
#define double long double
#define INF (ll) 3e18
// Ctrl + Shift + B コンパイル
// Ctrl + C 中断
// ./m 実行


void solve(){
  int x, y;
  cin >> x >> y;
  while(x & (1LL<<y)) y++;
  cout << (1LL<<y)-1 << endl;
}

signed main(){
  int t; cin >> t;
  while(t--) solve();
}