#include <bits/stdc++.h>
using namespace std;

int main(){
    int N, M;
    cin >> N >> M;
    static int ans[1100][1100];
    ans[1][1] = 1;
    for(int k=1; k<10; k++){
        int W = 1<<k;
        for(int i=0; i<W; i++) for(int j=0; j<W; j++){
            ans[i+W][j] = ans[i][j+W] = ans[i][j];
            ans[i+W][j+W] = ans[i][j]^1;
        }
    }
    const int X = 1<<10;
    for(int i=X-1; i>0; i--) for(int j=X-1; j>0; j--) ans[i][j] ^= ans[i-1][j];
    for(int i=X-1; i>0; i--) for(int j=X-1; j>0; j--) ans[i][j] ^= ans[i][j-1];

    for(int i=1; i<(1<<N); i++){
        for(int j=1; j<(1<<M); j++) cout << ans[i][j];
        cout << endl;
    }
    return 0;
}
