#include <bits/stdc++.h>
using namespace std;
long long n, h;
long long r(long long l, long long s, long long e, long long d) {
  if (s + 1 == e) return 0;
  long long m = 1 + (s + e) >> 1;
  long long k =
      (n < m ? (d ? (1ll << (h - l)) : 1) : (d ? 1 : (1ll << (h - l))));
  if (n < m) return r(l + 1, s, m, 1) + k;
  return r(l + 1, m, e, 0) + k;
}
int main() {
  cin >> h >> n;
  --n;
  cout << r(0, 0, 1ll << h, 0);
}
