You are given three integers a, b and x. Your task is to construct a binary string s of length n = a + b such that there are exactly a zeroes, exactly b ones and exactly x indices i (where 1 ≤ i < n) such that s_i ≠ s_{i + 1}. It is guaranteed that the answer always exists.

For example, for the string "01010" there are four indices i such that 1 ≤ i < n and s_i ≠ s_{i + 1} (i = 1, 2, 3, 4). For the string "111001" there are two such indices i (i = 3, 5).

Recall that binary string is a non-empty sequence of characters where each character is either 0 or 1.

Input

The first line of the input contains three integers a, b and x (1 ≤ a, b ≤ 100, 1 ≤ x < a + b).

Output

Print only one string s, where s is any binary string satisfying conditions described above. It is guaranteed that the answer always exists.

Examples

Input

2 2 1


Output

1100


Input

3 3 3


Output

101100


Input

5 3 6


Output

01010100

Note

All possible answers for the first example: 

  * 1100; 
  * 0011. 



All possible answers for the second example: 

  * 110100; 
  * 101100; 
  * 110010; 
  * 100110; 
  * 011001; 
  * 001101; 
  * 010011; 
  * 001011. 
#import resource
#import sys
#resource.setrlimit(resource.RLIMIT_STACK, [0x100000000, resource.RLIM_INFINITY])
#sys.setrecursionlimit(0x10000000)
from sys import stdin, stdout
def modinv(n,p):
    return pow(n,p-2,p)
def ncr(n,r,p,f):
    t=((f[n])*(modinv(f[r],p)%p)*(modinv(f[n-r],p)%p))%p
    return t
def GCD(x, y):
   while(y):
       x, y = y, x % y
   return x
def BS(arr, l, r, x):
    if r >= l:
        mid = l + (r - l)/2
        if arr[mid] == x:
            return mid
        elif arr[mid] > x:
            return BS(arr, l, mid-1, x)
        else:
            return BS(arr, mid+1, r, x)
    else:
        return -1
mod=(10**9)+7
from bisect import bisect_left as bl
from bisect import bisect_right as br
import itertools
import math
from Queue import Queue as Q
import heapq
"""---------------------------------------------------------------------"""
x,y,z=map(int,raw_input().split())
d=["0"]
p=["1"]
x1=x
y1=y
z1=z
x-=1
while(z>1):
    if(d[-1]=="0"):
        d.append("1")
        y-=1
    else:
        d.append("0")
        x-=1
    z-=1
if(d[-1]=="0"):
    while(x>0):
        d.append("0")
        x-=1
    while(y>0):
        d.append("1")
        y-=1
else:
    while(y>0):
        d.append("1")
        y-=1
    while(x>0):
        d.append("0")
        x-=1
t=0
for i in range(x1+y1-1):
    if(d[i]!=d[i+1]):
        t+=1
if(t!=z1):
    x=x1
    y=y1
    z=z1
    d=["1"]
    y-=1
    while(z>1):
        if(d[-1]=="0"):
            d.append("1")
            y-=1
        else:
            d.append("0")
            x-=1
        z-=1
    if(d[-1]=="0"):
        while(x>0):
            d.append("0")
            x-=1
        while(y>0):
            d.append("1")
            y-=1
    else:
        while(y>0):
            d.append("1")
            y-=1
        while(x>0):
            d.append("0")
            x-=1
    t="".join(d)
    print t
else:
    t="".join(d)
    print t
