#include <iostream>
using namespace std;
unsigned long long n, k;
unsigned long long solve (unsigned long long n, unsigned long long k){
unsigned long long mid = (1ull << n) >> 1ull;
if(n==1ull) cout << k;
else if(k >= mid){
cout << 1ull;
solve(n-1ull, ((1ull<<(n+1ull) >> 1ull)-k-1ull));
} else {
cout << 0ull;
solve(n-1ull, k);
}
}
int main(){
cin >> n >> k;
solve(n,k);
return 0;
}