#include<bits/stdc++.h>
// #define int long long
#define f1(i, n) for(int i=1;i<=n;++i)
#define f0(i, n) for(int i=0;i<n;i++)
#define all(x) x.begin(), x.end()
#define fi first
#define se second
#define pb push_back
#define endl "\n"
#define NAME "countpath"
using namespace std;

const int MAXN = 1e3 + 5;
const int maxRC = 2207;
const int MOD = 998244353;

int n;
int bin[30];

void Try(int i) {
    if (i > n) {
        for (int j = 1; j <= n; ++j) {
            cout << bin[j];
        }
        cout << endl;
        return;
    }

    bin[i] = 0;
    Try(i + 1);

    bin[i] = 1;
    Try(i + 1);
}

int32_t main() {
    ios::sync_with_stdio(false);
    cin.tie(nullptr);
    cout.tie(nullptr);

    if (fopen(NAME".INP", "r")) {
        freopen(NAME".INP", "r", stdin);
        freopen(NAME".OUT", "w", stdout);
    }

    cin >> n;
    Try(1);

    return 0;
}
