#include <bitset>
#include <iostream>
#include <set>
using namespace std;

bitset <13> bs;
int n, c, a;
set <int> s;

int main ()
{
    cin >> n;
    for (int i = n - 1; i >= 0; --i)
        cout << bs[i];
    cout << '\n';
    s.insert(a);
    while (s.size() < (1<<n))
    {
        for (int i = 0; i <= n - 1; ++i)
        {
            if (!bs[i] && s.find(a + (1<<i)) == s.end())
            {
                a+=(1<<i);
                s.insert(a);
                bs[i] = 1;
                break;
            }
            else if (bs[i] && s.find(a - (1<<i)) == s.end())
            {
                a-=(1<<i);
                s.insert(a);
                bs[i] = 0;
                break;
            }
        }
        for (int i = n - 1; i >= 0; --i)
            cout << bs[i];
        cout << '\n';
    }
    return 0;
}