N,M,K=map(int,input().split()) ''' K+1個のブロック a_0,...,a_K a_i>=1 a_{2i}個の0 a_{2i+1}個の1 辞書順最小にするためには a_0を極力大きく a_2,a_4,...,a_{2i}を1 ''' if K==0: if N*M>0: print(-1) else: print("0"*N+"1"*M) exit() A=[0 for i in range(K+1)] for i in range(0,K+1,2): A[i]+=1 N-=1 if N<0: print(-1) exit() A[0]+=N for i in range(1,K+1,2): A[i]+=1 M-=1 if M<0: print(-1) exit() A[K-(K+1)%2]+=M for i in range(K+1): print(str(i%2)*A[i],end="") print()