#include<bits/stdc++.h>
using namespace std;
long long n, k, a[70] = {0};
int dg(int x, int y, int z){
if(x == 1){
int m = 0;
for(int i = 1; i <= n; i++){
m += 1 << a[i];
}
return m;
}
x /= 2;
if(y <= x){
z--;
dg(x, y, z);
}else{
a[z] = z;
z--;
dg(1 << (x + 1) - k + 1, y, z);
}
}
int main(){
freopen("2019code.in", "r", stdin);
freopen("2019code.out", "w", stdout);
cin >> n >> k;
int p = 1 << n;
int sum = dg(p, k, n);
vector <int> j;
for(int i = 1; i <= n; i++){
j[i] = sum % 2;
sum /= 2;
}
for(int i = n; i >= 1; i--){
cout << j[i];
}
return 0;
}