#########################################################
#                                                       #
#    Coded by Indranil Ghosh (indranilg49@gmail.com)    #     
#                                                       #
#########################################################

#Python 2.7.11, OEIS sequence: A063171

from sympy import binomial, factorial as f

def a072643(n):
    i=c=0
    a=1
    while n>c:
        a*=(4*i + 2)/(2 + i)
        i+=1
        c+=a
    return i

def a014137(n): return sum([f(2*k)/(f(k)**2*(k + 1)) for k in xrange(n + 1)])

def a009766(n, k): return 0 if k<0 or k>n else binomial(n + k + 1, k)*(n + 1 - k)/(n + 1 + k)

def CatalanUnRank(n, rr):
    r=(binomial(2*n, n)/(n + 1)) - (rr + 1)
    a=lo=0
    t=n
    y=n - 1
    while t>0:
        m=a009766(t, y)
        if r<(lo + m):
            y-=1
            a=2*a + 1
        else:
            lo+=m
            t-=1
            a*=2
    return a

def a014486(n): return 0 if n==0 else CatalanUnRank(a072643(n), (n - a014137(a072643(n) - 1)))

def a(n): return int(bin(a014486(n))[2:])

print [a(n) for n in xrange(101)]