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 \le i < n$) such that $s_i \ne 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 \le i < n$ and $s_i \ne 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 \le a, b \le 100, 1 \le 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.

Difficulty: EASY

Solutions:
inp = lambda : map(int, input().split())
(a, b, x) = inp()
ans = ''
if a > b:
	zero = 1
else:
	zero = 0
for i in range(x - 1):
	if zero:
		ans += '0'
		a -= 1
	else:
		ans += '1'
		b -= 1
	zero = 1 - zero
if zero:
	ans += '0' * a + '1' * b
else:
	ans += '1' * b + '0' * a
print(ans)


(a, b, c) = map(int, input().split())
(x, y) = ('0', '1')
if a > b:
	(x, y) = (y, x)
	(a, b) = (b, a)
res = y
b -= 1
for i in range(c - 1):
	if i % 2 == 0:
		a -= 1
		res += x
	else:
		b -= 1
		res += y
if res[-1] == x:
	(x, y) = (y, x)
	(a, b) = (b, a)
for i in range(b):
	res += y
for i in range(a):
	res += x
print(res)


def binary_string(a, b, x):
	s1 = '01'
	s2 = '10'
	if x % 2 == 0 and a > b:
		return s1 * (x // 2) + '1' * (b - x // 2) + '0' * (a - x // 2)
	elif x % 2 == 0 and a <= b:
		return s2 * (x // 2) + '0' * (a - x // 2) + '1' * (b - x // 2)
	elif x % 2 != 0 and a > b:
		return s1 * (x // 2) + '0' * (a - x // 2) + '1' * (b - x // 2)
	elif x % 2 != 0 and a <= b:
		return s2 * (x // 2) + '1' * (b - x // 2) + '0' * (a - x // 2)
(A, B, X) = [int(j) for j in input().split()]
print(binary_string(A, B, X))


(z, o, x) = map(int, input().split())
s1 = ''
s2 = ''
s4 = '0'
s5 = '1'
if z > o:
	s3 = '0'
	z -= 1
else:
	s3 = '1'
	o -= 1
for i in range(x - 1):
	if s3[len(s3) - 1] == '0':
		s3 += '1'
		o -= 1
	else:
		s3 += '0'
		z -= 1
if s3[len(s3) - 1] == '0':
	s3 += s4 * z
	s3 += s5 * o
else:
	s3 += s5 * o
	s3 += s4 * z
print(s3)


(a, b, x) = map(int, input().split())
mn = '0'
mncnt = a
mx = '1'
mxcnt = b
res = ''
if a > b:
	(mn, mx) = (mx, mn)
	mncnt = b
	mxcnt = a
if x % 2 == 0:
	res += (mx + mn) * (x // 2)
	res += mn * (mncnt - x // 2)
	res += mx * (mxcnt - x // 2)
else:
	res += (mx + mn) * (x // 2)
	res += mx * (mxcnt - x // 2)
	res += mn * (mncnt - x // 2)
print(res)


(a, b, x) = map(int, input().split())
if x % 2 == 0:
	if a > b:
		print('01' * (x // 2), end='')
		print('1' * (b - x // 2), end='')
		print('0' * (a - x // 2), end='')
	elif a <= b:
		print('10' * (x // 2), end='')
		print('0' * (a - x // 2), end='')
		print('1' * (b - x // 2), end='')
elif a > b:
	print('01' * (x // 2), end='')
	print('0' * (a - x // 2), end='')
	print('1' * (b - x // 2), end='')
elif a <= b:
	print('10' * (x // 2), end='')
	print('1' * (b - x // 2), end='')
	print('0' * (a - x // 2), end='')


(a, b, x) = map(int, input().split())
b_str = ''
flag = 0
if a > b:
	b_str = b_str + '0'
	a = a - 1
	flag = 0
else:
	b_str = b_str + '1'
	b = b - 1
	flag = 1
sum1 = a + b
while sum1 != 0:
	if x > 1 and flag == 1:
		b_str = b_str + '0'
		a = a - 1
		x = x - 1
		flag = 0
	elif x > 1 and flag == 0:
		b_str = b_str + '1'
		b = b - 1
		x = x - 1
		flag = 1
	elif x == 1 and a >= 0 and (b >= 0):
		if flag == 0:
			if a == 0:
				flag = 1
			else:
				b_str = b_str + '0'
				a = a - 1
		elif flag == 1:
			if b == 0:
				flag = 0
			else:
				b_str = b_str + '1'
				b = b - 1
	sum1 = a + b
print(b_str)


(a, b, x) = map(int, input().split(' '))
hug = ''
if a > b:
	n = 0
	m = 1
else:
	n = 1
	m = 0
n = str(n)
m = str(m)
for i in range(x):
	if i % 2 == 0:
		hug = hug + n
	else:
		hug = hug + m
l = hug.count('1')
o = hug.count('0')
if hug[x - 1] == '1':
	for i in range(b - l):
		hug = hug + '1'
	for i in range(a - o):
		hug = hug + '0'
else:
	for i in range(a - o):
		hug = hug + '0'
	for i in range(b - l):
		hug = hug + '1'
print(hug)


import math
(a, b, x) = map(int, input().split())
s = ''
if x % 2 == 0:
	if a > b:
		s = s + '01' * int(x / 2) + '1' * int(b - x / 2) + '0' * int(a - x / 2)
	else:
		s = s + '10' * int(x / 2) + '0' * int(a - x / 2) + '1' * int(b - x / 2)
elif a > b:
	s = s + '01' * math.floor(x / 2) + '0' * (a - math.floor(x / 2)) + '1' * (b - math.floor(x / 2))
else:
	s = s + '10' * math.floor(x / 2) + '1' * (b - math.floor(x / 2)) + '0' * (a - math.floor(x / 2))
print(s)


(a, b, x) = map(int, input().split())
ans = ''
if a > b:
	ans += '01' * int(x / 2)
	if x % 2 == 0:
		ans += '1' * (b - int(x / 2))
		ans += '0' * (a - int(x / 2))
	else:
		ans += '0' * (a - int(x / 2))
		ans += '1' * (b - int(x / 2))
else:
	ans += '10' * int(x / 2)
	if x % 2 != 0:
		ans += '1' * (b - int(x / 2))
		ans += '0' * (a - int(x / 2))
	else:
		ans += '0' * (a - int(x / 2))
		ans += '1' * (b - int(x / 2))
print(ans)


(a, b, c) = map(int, input().split())
(a, b) = (b, a)
c -= 1
k = 0
ans = ' '
if a >= b:
	ans += '1'
	a -= 1
	k = 1
else:
	ans += '0'
	b -= 1
while c:
	if k == 0:
		ans += '1'
		a -= 1
	else:
		ans += '0'
		b -= 1
	c -= 1
	k ^= 1
if ans[-1] == '1':
	ans += '1' * a + '0' * b
else:
	ans += '0' * b + '1' * a
print(ans[1:])


(a, b, x) = [int(s) for s in input().split(' ')]
outputString = ''
length = a + b
while length > len(outputString):
	if len(outputString) == 0:
		if a > b:
			a -= 1
			x -= 1
			outputString += '0'
		else:
			b -= 1
			x -= 1
			outputString += '1'
	while x > 0:
		if outputString[len(outputString) - 1] == '0':
			outputString += '1'
			b -= 1
			x -= 1
		else:
			outputString += '0'
			a -= 1
			x -= 1
	if outputString[len(outputString) - 1] == '0':
		while a > 0:
			outputString += '0'
			a -= 1
		while b > 0:
			outputString += '1'
			b -= 1
	else:
		while b > 0:
			outputString += '1'
			b -= 1
		while a > 0:
			outputString += '0'
			a -= 1
print(outputString)


import sys
import math
import collections

def get_ints():
	return map(int, sys.stdin.readline().strip().split())

def get_list():
	return list(map(int, sys.stdin.readline().strip().split()))

def get_string():
	return sys.stdin.readline().strip()
import string
for t in range(1):
	(a, b, x) = get_ints()
	s = ''
	if x & 1 == 0:
		if a > b:
			s += '01' * (x // 2)
			s += '1' * (b - x // 2)
			s += '0' * (a - x // 2)
		else:
			s += '10' * (x // 2)
			s += '0' * (a - x // 2)
			s += '1' * (b - x // 2)
	elif a > b:
		s += '01' * (x // 2)
		s += '0' * (a - x // 2)
		s += '1' * (b - x // 2)
	else:
		s += '10' * (x // 2)
		s += '1' * (b - x // 2)
		s += '0' * (a - x // 2)
	print(s)


(a, b, x) = (int(x) for x in input().split())
flag = True
if a > b and x % 2 == 0:
	for i in range(x):
		if flag:
			print(0, end='')
			flag = False
		else:
			print(1, end='')
			flag = True
	for i in range(b - x // 2):
		print(1, end='')
	for i in range(a - x // 2):
		print(0, end='')
if a > b and x % 2 != 0:
	for i in range(x - 1):
		if flag:
			print(0, end='')
			flag = False
		else:
			print(1, end='')
			flag = True
	for i in range(a - x // 2):
		print(0, end='')
	for i in range(b - x // 2):
		print(1, end='')
if a <= b and x % 2 == 0:
	for i in range(x):
		if flag:
			print(1, end='')
			flag = False
		else:
			print(0, end='')
			flag = True
	for i in range(a - x // 2):
		print(0, end='')
	for i in range(b - x // 2):
		print(1, end='')
if a <= b and x % 2 != 0:
	for i in range(x - 1):
		if flag:
			print(1, end='')
			flag = False
		else:
			print(0, end='')
			flag = True
	for i in range(b - x // 2):
		print(1, end='')
	for i in range(a - x // 2):
		print(0, end='')


(a, b, x) = list(map(int, input().split()))
a = [a, '0']
b = [b, '1']
first = b if b > a else a
second = b if first == a else a
times = True
while x > 0:
	print(first[1] if times else second[1], end='')
	x -= 1
	first[0] -= 1 if times else 0
	second[0] -= 0 if times else 1
	times = not times
print(second[1] * second[0] + first[1] * first[0] if times else first[1] * first[0] + second[1] * second[0], end='')


(a, b, x) = map(int, input().split())
n = a + b
if a > b:
	s = '0'
	a -= 1
else:
	s = '1'
	b -= 1
for i in range(1, n):
	if x > 1:
		if s[i - 1] == '0':
			s = s + '1'
			b -= 1
		else:
			s = s + '0'
			a -= 1
		x -= 1
	elif s[i - 1] == '0':
		if a > 0:
			s = s + '0'
			a -= 1
		else:
			s = s + '1'
			b -= 1
	elif b > 0:
		s = s + '1'
		b -= 1
	else:
		s = s + '0'
		a -= 1
print(s)


def main():
	(a, b, x) = map(int, input().split())
	if a > b and x % 2 == 0:
		res = '01' * (x // 2) + '1' * (b - x // 2) + '0' * (a - x // 2)
	elif a > b and x % 2 != 0:
		res = '01' * (x // 2) + '0' * (a - x // 2) + '1' * (b - x // 2)
	elif a <= b and x % 2 == 0:
		res = '10' * (x // 2) + '0' * (a - x // 2) + '1' * (b - x // 2)
	else:
		res = '10' * (x // 2) + '1' * (b - x // 2) + '0' * (a - x // 2)
	print(res)
main()


(a, b, x) = map(int, input().split())
s = ''
temp = -1
if a > b:
	for i in range(x):
		if i % 2 == 0:
			s += '0'
			a -= 1
			temp = 0
		else:
			s += '1'
			b -= 1
			temp = 1
	if temp == 0:
		for i in range(a):
			s += '0'
		for i in range(b):
			s += '1'
	else:
		for i in range(b):
			s += '1'
		for i in range(a):
			s += '0'
	print(s)
else:
	for i in range(x):
		if i % 2 == 0:
			s += '1'
			b -= 1
			temp = 1
		else:
			s += '0'
			a -= 1
			temp = 0
	if temp == 0:
		for i in range(a):
			s += '0'
		for i in range(b):
			s += '1'
	else:
		for i in range(b):
			s += '1'
		for i in range(a):
			s += '0'
	print(s)


(a, b, x) = map(int, input().split())
ans = []
temp = x
if a > b:
	c = 0
else:
	c = 1
while temp > 1:
	ans.append(c)
	if c:
		c = 0
		b -= 1
	else:
		c = 1
		a -= 1
	temp -= 1
if temp == 1:
	if c:
		ans.extend([1] * b)
		c = 0
	else:
		ans.extend([0] * a)
		c = 1
if c:
	ans.extend([1] * b)
else:
	ans.extend([0] * a)
for i in ans:
	print(i, end='')
print()


(a, b, n) = map(int, input().strip().split())
x = ''
if a > b:
	x += '0'
	a -= 1
else:
	x += '1'
	b -= 1
for i in range(n - 1):
	if x[-1] == '1':
		x += '0'
		a -= 1
	else:
		x += '1'
		b -= 1
if x[-1] == '0':
	while a > 0:
		x += '0'
		a -= 1
	while b > 0:
		x += '1'
		b -= 1
if x[-1] == '1':
	while b > 0:
		x += '1'
		b -= 1
	while a > 0:
		x += '0'
		a -= 1
print(x)


def solve_1003B(a, b, x):
	s = []
	x = x + 1
	if a > b:
		bit = 0
	else:
		bit = 1

	def changeBit(bit):
		return (bit + 1) % 2
	while x > 2:
		x = x - 1
		s = s + [str(bit)]
		if bit == 1:
			b = b - 1
		else:
			a = a - 1
		bit = changeBit(bit)
	while x > 0:
		x = x - 1
		if bit == 1:
			s = s + [str(bit)] * b
			bit = changeBit(bit)
		else:
			s = s + [str(bit)] * a
			bit = changeBit(bit)
	return s
[a, b, x] = [int(a) for a in input().split(' ')]
s = solve_1003B(a, b, x)
print(''.join(s))


import math
(a, b, x) = map(int, input().split())
if a > b:
	q = '01'
else:
	q = '10'
itr = math.ceil(x / 2)
s = ''
for i in range(itr):
	s += q
left0 = a - itr
left1 = b - itr
if x % 2:
	s = s[:-1]
	if s[-1] == '0':
		left1 += 1
	else:
		left0 += 1
if s[-1] == '0':
	for i in range(left0):
		s += '0'
	for i in range(left1):
		s += '1'
else:
	for i in range(left1):
		s += '1'
	for i in range(left0):
		s += '0'
print(s)


(a, b, k) = map(int, input().split())
if a > b:
	s = '0'
	a = a - 1
else:
	s = '1'
	b = b - 1
while k > 1:
	if s[-1] == '1':
		s += '0'
		a = a - 1
	else:
		s += '1'
		b = b - 1
	k -= 1
if s[-1] == '0':
	s += a * '0' + b * '1'
else:
	s += b * '1' + a * '0'
print(s)


(a, b, x) = map(int, input().split())
if a > b:
	print(0, end='')
	prev = 0
	a -= 1
else:
	print(1, end='')
	prev = 1
	b -= 1
for i in range(x - 1):
	if prev == 0:
		print(1, end='')
		prev = 1
		b -= 1
	else:
		print(0, end='')
		prev = 0
		a -= 1
if prev == 0:
	for i in range(a):
		print(0, end='')
	for i in range(b):
		print(1, end='')
else:
	for i in range(b):
		print(1, end='')
	for i in range(a):
		print(0, end='')


from sys import stdin

def solve(tc):
	(a, b, x) = map(int, stdin.readline().split())
	if a > b:
		c = 0
	else:
		c = 1
	s = ''
	for i in range(0, x - 1):
		s += str(c)
		if c == 0:
			a -= 1
		else:
			b -= 1
		c ^= 1
	if c == 0:
		s += '0' * a
		s += '1' * b
	else:
		s += '1' * b
		s += '0' * a
	print(s)
LOCAL_TEST = not __debug__
if LOCAL_TEST:
	infile = __file__.split('.')[0] + '-test.in'
	stdin = open(infile, 'r')
tcs = int(stdin.readline().strip()) if LOCAL_TEST else 1
tc = 1
while tc <= tcs:
	solve(tc)
	tc += 1


(z, zz) = (input, lambda : list(map(int, z().split())))
(szz, dgraphs, mod) = (lambda : sorted(zz()), {}, 10 ** 9 + 7)
from string import *
from collections import *
from queue import *
from sys import *
from collections import *
from math import *
from heapq import *
from itertools import *
from bisect import *
from collections import Counter as cc
from math import factorial as f
from bisect import bisect as bs
from bisect import bisect_left as bsl
from itertools import accumulate as ac

def lcd(xnum1, xnum2):
	return xnum1 * xnum2 // gcd(xnum1, xnum2)

def prime(x):
	p = ceil(x ** 0.5) + 1
	for i in range(2, p):
		if x % i == 0 and x != 2:
			return 0
	return 1

def dfs(u, visit, graph):
	visit[u] = True
	for i in graph[u]:
		if not visit[i]:
			dfs(i, visit, graph)
(a, b, x) = zz()
if a > b:
	c = '01'
else:
	c = '10'
m = x // 2
s = c * m
if x % 2 != (c == '10'):
	s += '0' * (a - m) + '1' * (b - m)
else:
	s += '1' * (b - m) + '0' * (a - m)
print(s)


def binary_string(a, b, x):
	l = x // 2
	ones = '1' * (b - l)
	ceroes = '0' * (a - l)
	ans = []
	if x % 2 == 0:
		if a > b:
			for x in range(0, l):
				ans.append('01')
			ans.append(ones)
			ans.append(ceroes)
		else:
			for x in range(0, l):
				ans.append('10')
			ans.append(ceroes)
			ans.append(ones)
	elif a > b:
		for x in range(0, l):
			ans.append('01')
		ans.append(ceroes)
		ans.append(ones)
	else:
		for x in range(0, l):
			ans.append('10')
		ans.append(ones)
		ans.append(ceroes)
	return ans
(a, b, x) = map(int, input().split())
print(*binary_string(a, b, x), sep='')


(a, b, c) = [int(i) for i in input().split()]
w = {0: a, 1: b}
cur = 0 if w[0] > w[1] else 1
d = {cur: 1, 1 - cur: 0}
print(cur, end='')
for i in range(c - 1):
	cur = 1 - cur
	print(cur, end='')
	d[cur] += 1
for i in range(w[cur] - d[cur]):
	print(cur, end='')
for i in range(w[1 - cur] - d[1 - cur]):
	print(1 - cur, end='')


temp = input().split(' ')
a = int(temp[0])
b = int(temp[1])
x = int(temp[2])
string = ''
curr = 0 if a > b else 1
while x > 0:
	string += str(curr)
	x -= 1
	if curr == 0:
		a -= 1
	else:
		b -= 1
	if x > 0:
		curr = 1 - curr
if curr == 0:
	string += str(curr) * a + str(1 - curr) * b
else:
	string += str(curr) * b + str(1 - curr) * a
print(string)


(a, b, x) = map(int, input().split())
n = a + b
otv = []
if a > b:
	otv.append(0)
	a -= 1
else:
	otv.append(1)
	b -= 1
for i in range(n):
	if x > 1 and otv[-1] == 1:
		otv.append(0)
		x -= 1
		a -= 1
	elif x > 1 and otv[-1] == 0:
		otv.append(1)
		x -= 1
		b -= 1
	elif x == 1 and otv[-1] == 1:
		while b > 0:
			otv.append(1)
			b -= 1
		while a > 0:
			otv.append(0)
			a -= 1
		break
	elif x == 1 and otv[-1] == 0:
		while a > 0:
			otv.append(0)
			a -= 1
		while b > 0:
			otv.append(1)
			b -= 1
		break
print(''.join((str(x) for x in otv)))


a = [int(q) for q in input().strip().split()]
b = []
if a[0] > a[1]:
	(m, n) = ('0', '1')
else:
	(m, n) = ('1', '0')
	(a[0], a[1]) = (a[1], a[0])
(zero, one) = (0, 0)
for k in range(a[2]):
	if k % 2 == 0:
		b.append(m)
		zero += 1
	else:
		b.append(n)
		one += 1
if k % 2 == 0:
	for p in range(a[0] - zero):
		b.append(m)
	for p in range(a[1] - one):
		b.append(n)
else:
	for p in range(a[1] - one):
		b.append(n)
	for p in range(a[0] - zero):
		b.append(m)
print(''.join(b))


(a, b, x) = input().split()
a = int(a)
b = int(b)
x = int(x)
r = 0
u = None
if a > b:
	s = '0'
	a -= 1
	u = False
else:
	s = '1'
	b -= 1
	u = True
while r != x - 1:
	if s[-1] == '1':
		s += '0'
		a -= 1
		u = False
	else:
		s += '1'
		b -= 1
		u = True
	r += 1
if u:
	s += '1' * b + '0' * a
else:
	s += '0' * a + '1' * b
print(s)


l = list(map(int, input().split()))
a = l[0]
b = l[1]
x = l[2]
c = [a, b]
if b < a:
	l1 = [0]
	c = [a - 1, b]
	a1 = 0
	a2 = 1
else:
	l1 = [1]
	c = [a, b - 1]
	a1 = 1
	a2 = 0
while x != 1:
	(a1, a2) = (a2, a1)
	l1.append(a1)
	c[a1] -= 1
	x -= 1
n_l = [a1] * c[a1]
l1.extend(n_l)
n_l = [a2] * c[a2]
l1.extend(n_l)
print(''.join((str(x) for x in l1)))


(a, b, x) = map(int, input().split())
result = []
if a > b:
	result.append(0)
	a -= 1
else:
	result.append(1)
	b -= 1
while x > 1:
	if result[-1] == 0:
		result.append(1)
		b -= 1
	else:
		result.append(0)
		a -= 1
	x -= 1
if result[-1] == 0:
	for _ in range(a):
		result.append(0)
	for _ in range(b):
		result.append(1)
else:
	for _ in range(b):
		result.append(1)
	for _ in range(a):
		result.append(0)
print(''.join((str(x) for x in result)))


def sint():
	return int(input())

def sints():
	return map(int, input().split())

def sara():
	return list(map(int, input().split()))

def sstr():
	s = input()
	return list(s[:len(s)])

def main():
	tt = 1
	while tt:
		tt -= 1
		(a, b, x) = sints()
		lst = 0 if a > b else 1
		while x > 1 and a and b:
			if lst:
				print(1, end='')
				b -= 1
				lst = 0
			else:
				print(0, end='')
				a -= 1
				lst = 1
			x -= 1
		if lst:
			while b:
				print(1, end='')
				b -= 1
			while a:
				print(0, end='')
				a -= 1
		else:
			while a:
				print(0, end='')
				a -= 1
			while b:
				print(1, end='')
				b -= 1
		print()
main()


j = input().split(' ')
a = int(j[0])
b = int(j[1])
x = int(j[2])
s = ''
if a > b:
	s += '0'
	a -= 1
else:
	s += '1'
	b -= 1
while x > 1:
	if s[len(s) - 1] == '0':
		b -= 1
		s += '1'
	else:
		a -= 1
		s += '0'
	x -= 1
if x == 1:
	if s[len(s) - 1] == '1':
		s += '1' * b + '0' * a
		a = 0
		b = 0
	else:
		s += '0' * a + '1' * b
		a = 0
		b = 0
if x == 0:
	if s[len(s) - 1] == '0':
		s += '0' * a
		a = 0
	else:
		s += '1' * b
		b = 0
	s = '1' * b + '0' * a + s
print(s)


(n, m, k) = map(int, input().split())
if k % 2 == 0 and n > m:
	print('01' * (k // 2) + (m - k // 2) * '1' + (n - k // 2) * '0')
elif k % 2 == 0 and n <= m:
	print('10' * (k // 2) + (n - k // 2) * '0' + (m - k // 2) * '1')
elif k % 2 != 0 and n > m:
	print('01' * (k // 2) + (n - k // 2) * '0' + (m - k // 2) * '1')
else:
	print('10' * (k // 2) + (m - k // 2) * '1' + (n - k // 2) * '0')


(a, b, x) = map(int, input().split())
string = ''
if x % 2 == 0 and a > b:
	string = '01' * (x // 2) + '1' * (b - x // 2) + '0' * (a - x // 2)
elif x % 2 == 0 and a <= b:
	string = '10' * (x // 2) + '0' * (a - x // 2) + '1' * (b - x // 2)
elif x % 2 == 1 and a > b:
	string = '01' * (x // 2) + '0' * (a - x // 2) + '1' * (b - x // 2)
elif x % 2 == 1 and a <= b:
	string = '10' * (x // 2) + '1' * (b - x // 2) + '0' * (a - x // 2)
print(string)


(a, b, x) = input().split()
a = int(a)
b = int(b)
x = int(x)
last = 0
if a > b:
	last = 1
for i in range(x - 1):
	if last == 0:
		print('1', end='')
		last = 1
		b -= 1
	else:
		print('0', end='')
		last = 0
		a -= 1
if last == 1:
	for i in range(a):
		print('0', end='')
	for i in range(b):
		print('1', end='')
else:
	for i in range(b):
		print('1', end='')
	for i in range(a):
		print('0', end='')
print('')


(a, b, x) = map(int, input().strip().split())
if a > b:
	r = '0'
	a = a - 1
else:
	r = '1'
	b = b - 1
while x > 1:
	if r[-1] != '0':
		r = r + '0'
		a = a - 1
	else:
		r = r + '1'
		b = b - 1
	x = x - 1
if r[-1] == '0':
	r = r + '0' * a + '1' * b
else:
	r = r + '1' * b + '0' * a
print(r)


R = lambda : map(int, input().split())

def f(s, n):
	global res
	res += s * n
(a, b, x) = R()
p = x // 2
res = ''
if x % 2:
	if a > b:
		f('01', p)
		f('0', a - p)
		f('1', b - p)
	else:
		f('10', p)
		f('1', b - p)
		f('0', a - p)
elif a > b:
	f('01', p)
	f('1', b - p)
	f('0', a - p)
else:
	f('10', p)
	f('0', a - p)
	f('1', b - p)
print(res)


from sys import stdin, stdout, setrecursionlimit
from functools import lru_cache, cmp_to_key
from heapq import merge, heapify, heappop, heappush, nlargest
from math import *
from collections import defaultdict as dd, deque, Counter as C
from itertools import combinations as comb, permutations as perm, accumulate
from bisect import bisect_left as bl, bisect_right as br, bisect
from time import perf_counter
from fractions import Fraction
import copy
import time
setrecursionlimit(10 ** 9)
starttime = time.time()
mod = int(pow(10, 9) + 7)
mod2 = 998244353

def data():
	return input()

def num():
	return int(input())

def L():
	return list(sp())

def LF():
	return list(spf())

def sl():
	return list(ssp())

def sp():
	return map(int, data().split())

def spf():
	return map(int, input.readline().split())

def ssp():
	return map(str, data().split())

def l1d(n, val=0):
	return [val for i in range(n)]

def l2d(n, m, val=0):
	return [l1d(n, val) for j in range(m)]

def pmat(A):
	for ele in A:
		print(*ele, end='\n')

def pmat2(A):
	for ele in A:
		for j in ele:
			print(j, end='')
		print()

def iseven(n):
	return n % 2 == 0

def seive(r):
	prime = [1 for i in range(r + 1)]
	prime[0] = 0
	prime[1] = 0
	for i in range(r + 1):
		if prime[i]:
			for j in range(2 * i, r + 1, i):
				prime[j] = 0
	return prime
(n, m, x) = sp()
ans = ''
if x % 2 == 0:
	if n > m:
		for i in range(x // 2):
			ans = '01' * (x // 2)
		ans += '1' * (m - x // 2)
		ans += '0' * (n - x // 2)
	else:
		for i in range(x // 2):
			ans = '10' * (x // 2)
		ans += '0' * (n - x // 2)
		ans += '1' * (m - x // 2)
elif n > m:
	for i in range(x // 2):
		ans = '01' * (x // 2)
	ans += '0' * (n - x // 2)
	ans += '1' * (m - x // 2)
else:
	for i in range(x // 2):
		ans = '10' * (x // 2)
	ans += '1' * (m - x // 2)
	ans += '0' * (n - x // 2)
print(ans)
endtime = time.time()


from sys import stdin, stdout

def INI():
	return int(stdin.readline())

def INL():
	return [int(_) for _ in stdin.readline().split()]

def INS():
	return stdin.readline()

def OPS(ans):
	stdout.write(str(ans) + '\n')

def OPL(ans):
	[stdout.write(str(_) + ' ') for _ in ans]
	stdout.write('\n')
(zrs, ons, x) = INL()
if zrs > ons:
	if x % 2 == 0:
		ans = '01' * (x // 2)
		ans += '1' * (ons - x // 2)
		ans += '0' * (zrs - x // 2)
	else:
		ans = '01' * (x // 2)
		ans += '0' * (zrs - x // 2)
		ans += '1' * (ons - x // 2)
elif x % 2 == 0:
	ans = '10' * (x // 2)
	ans += '0' * (zrs - x // 2)
	ans += '1' * (ons - x // 2)
else:
	ans = '10' * (x // 2)
	ans += '1' * (ons - x // 2)
	ans += '0' * (zrs - x // 2)
OPS(ans)


(a, b, x) = map(int, input().split())
ans = ''
r = x // 2
if a > b:
	for i in range(r):
		ans += '0'
		ans += '1'
	if x % 2 == 1:
		for i in range(a - r):
			ans += '0'
			a -= 1
		for i in range(b - r):
			ans += '1'
			b -= 1
	else:
		for i in range(b - r):
			ans += '1'
			b -= 1
		for i in range(a - r):
			ans += '0'
			a -= 1
else:
	for i in range(r):
		ans += '1'
		ans += '0'
	if x % 2 == 1:
		for i in range(b - r):
			ans += '1'
			b -= 1
		for i in range(a - r):
			ans += '0'
			a -= 1
	else:
		for i in range(a - r):
			ans += '0'
			a -= 1
		for i in range(b - r):
			ans += '1'
			b -= 1
print(ans)


(a, b, x) = map(int, input().split())
n = a + b
ans = []
if x % 2 == 0:
	if a > b:
		for _ in range(x // 2):
			ans.append('01')
		for _ in range(b - x // 2):
			ans.append('1')
		for _ in range(a - x // 2):
			ans.append('0')
	else:
		for _ in range(x // 2):
			ans.append('10')
		for _ in range(a - x // 2):
			ans.append('0')
		for _ in range(b - x // 2):
			ans.append('1')
elif a > b:
	for _ in range(x // 2):
		ans.append('01')
	for _ in range(a - x // 2):
		ans.append('0')
	for _ in range(b - x // 2):
		ans.append('1')
else:
	for _ in range(x // 2):
		ans.append('10')
	for _ in range(b - x // 2):
		ans.append('1')
	for _ in range(a - x // 2):
		ans.append('0')
print(''.join(map(str, ans)))


(a, b, x) = map(int, input().split())
x2 = x // 2
sw = 0
if a > b:
	(a, b) = (b, a)
	sw = 1
ans = '10' * x2
if x % 2 == 0:
	ans += '0' * (a - x2) + '1' * (b - x2)
else:
	ans += '1' * (b - x2) + '0' * (a - x2)
print(''.join(('1' if c == '0' else '0' for c in ans)) if sw else ans)


(a, b, x) = map(int, input().split())
string = ''
curr = 0 if a > b else 1
while x > 0:
	string += str(curr)
	x -= 1
	if curr == 0:
		a -= 1
	else:
		b -= 1
	if x > 0:
		curr = 1 - curr
if curr == 0:
	string += str(curr) * a + str(1 - curr) * b
else:
	string += str(curr) * b + str(1 - curr) * a
print(string)


(a, b, x) = list(map(int, input().split()))
bs = ''
if x % 2 == 0:
	if a > b:
		for i in range(x // 2):
			bs += '01'
		bs += (b - x // 2) * '1'
		bs += (a - x // 2) * '0'
	else:
		for i in range(x // 2):
			bs += '10'
		bs += (a - x // 2) * '0'
		bs += (b - x // 2) * '1'
elif a > b:
	for i in range(x // 2):
		bs += '01'
	bs += (a - x // 2) * '0'
	bs += (b - x // 2) * '1'
else:
	for i in range(x // 2):
		bs += '10'
	bs += (b - x // 2) * '1'
	bs += (a - x // 2) * '0'
print(bs)


(zero, um, trocas) = map(int, input().split())
tamanhho = zero + um
if zero > um:
	resp = '0'
	zero -= 1
else:
	resp = '1'
	um -= 1
i = 1
while trocas > 1:
	if resp[i - 1] == '0' and um > 0:
		resp += '1'
		trocas -= 1
		um -= 1
	elif resp[i - 1] == '1' and zero > 0:
		resp += '0'
		trocas -= 1
		zero -= 1
	i += 1
if resp[i - 1] == '1':
	while um > 0:
		resp += '1'
		i += 1
		um -= 1
	while zero > 0:
		resp += '0'
		i += 1
		zero -= 1
elif resp[i - 1] == '0':
	while zero > 0:
		resp += '0'
		i += 1
		zero -= 1
	while um > 0:
		resp += '1'
		i += 1
		um -= 1
print(resp)


(a, b, x) = map(int, input().split())
if a > b:
	(s1, s2) = ('0', '1')
	(m1, m2) = (a, b)
else:
	(s1, s2) = ('1', '0')
	(m1, m2) = (b, a)
if x == 1:
	print(s1 * m1 + s2 * m2)
elif x == 2:
	print(s1 + s2 * m2 + s1 * (m1 - 1))
elif x == 3:
	print(s1 + s2 + s1 * (m1 - 1) + s2 * (m2 - 1))
else:
	print(s1 + s2, end='')
	m1 -= 1
	m2 -= 1
	x -= 1
	while x > 3:
		print(s1 + s2, end='')
		x -= 2
		m1 -= 1
		m2 -= 1
	if x == 3:
		print(s1, end='')
		m1 -= 1
		print(s2 * m2 + s1 * m1)
	elif x == 2:
		print(s1 * m1 + s2 * m2)


from math import *
import os
(a, b, x) = map(int, input().split())
c = 0
d = 0
if x % 2 == 0:
	var = x // 2
	for i in range(var):
		if a > b:
			print('01', end='')
		else:
			print('10', end='')
	for i in range(min(a, b) - var):
		print('1' if a > b else 0, end='')
	for i in range(max(a, b) - var):
		print('0' if a > b else 1, end='')
else:
	var = (x - 1) // 2
	for i in range(var):
		if a > b:
			print('01', end='')
		else:
			print('10', end='')
	for i in range(max(a, b) - var):
		print('0' if a > b else '1', end='')
	for i in range(min(a, b) - var):
		print('1' if a > b else 0, end='')


from math import ceil
(a, b, x) = map(int, input().split())
s = ''
if x & 1:
	if a > b:
		s = '01' * (x >> 1) + '0' * (a - (x >> 1)) + '1' * (b - (x >> 1))
	else:
		s = '10' * (x >> 1) + '1' * (b - (x >> 1)) + '0' * (a - (x >> 1))
elif a > b:
	s = '01' * (x >> 1) + '1' * (b - (x >> 1)) + '0' * (a - (x >> 1))
else:
	s = '10' * (x >> 1) + '0' * (a - (x >> 1)) + '1' * (b - (x >> 1))
print(s)


(a, b, x) = map(int, input().split())
(r, n) = ('', a + b)
mn = min(a, b)
if mn == a:
	f = 0
else:
	f = 1
for i in range(n):
	if x:
		if f:
			if a:
				r += '0'
				a -= 1
				f = 0
		elif b:
			r += '1'
			b -= 1
			f = 1
		x -= 1
	else:
		if f:
			for i in range(b):
				r += '1'
			for i in range(a):
				r += '0'
		else:
			for i in range(a):
				r += '0'
			for i in range(b):
				r += '1'
		break
print(r)


(a, b, x) = [int(x) for x in input().split()]
if x % 2:
	if a > b:
		res = '01' * (x // 2) + '0' * (a - x // 2) + '1' * (b - x // 2)
	else:
		res = '10' * (x // 2) + '1' * (b - x // 2) + '0' * (a - x // 2)
elif a > b:
	res = '01' * (x // 2) + '1' * (b - x // 2) + '0' * (a - x // 2)
else:
	res = '10' * (x // 2) + '0' * (a - x // 2) + '1' * (b - x // 2)
print(res)


(a, b, x) = map(int, input().split())
string_result = ''
if x % 2 == 0:
	half = x // 2
	zeros = '0' * (a - half)
	ones = '1' * (b - half)
	if a > b:
		string_result = '01' * half
		string_result += ones
		string_result += zeros
	if a <= b:
		string_result = '10' * half
		string_result += zeros
		string_result += ones
else:
	half = int(x / 2)
	zeros = '0' * (a - half)
	ones = '1' * (b - half)
	if a > b:
		string_result = '01' * half
		string_result += zeros
		string_result += ones
	if a <= b:
		string_result = '10' * half
		string_result += ones
		string_result += zeros
print(string_result)


(A, B, X) = map(int, input().split())
NEXT = '0' if A > B else '1'
BIN_STR = ''
while X > 0:
	BIN_STR += NEXT
	if NEXT == '0':
		NEXT = '1'
		A -= 1
	else:
		NEXT = '0'
		B -= 1
	X -= 1
if NEXT == '0':
	while B > 0:
		BIN_STR += '1'
		B -= 1
	while A > 0:
		BIN_STR += '0'
		A -= 1
else:
	while A > 0:
		BIN_STR += '0'
		A -= 1
	while B > 0:
		BIN_STR += '1'
		B -= 1
print(BIN_STR)


(a, b, x) = map(int, input().split())
n = a + b
u = 0
v = 0
if a > b:
	u = '0'
	v = '1'
else:
	u = '1'
	v = '0'
	(a, b) = (b, a)
for i in range(0, x // 2):
	print(str(u) + str(v), end='')
	a -= 1
	b -= 1
if x % 2 == 0:
	while b != 0:
		print(v, end='')
		b -= 1
	while a != 0:
		print(u, end='')
		a -= 1
else:
	while a != 0:
		print(u, end='')
		a -= 1
	while b != 0:
		print(v, end='')
		b -= 1


(a, b, x) = map(int, input().split())
i = 0
ans = ' '
while i < x:
	if b < a:
		if ans[-1] != '0':
			ans += '0'
		else:
			ans += '1'
	elif ans[-1] != '1':
		ans += '1'
	else:
		ans += '0'
	i += 1
a -= ans.count('0')
b -= ans.count('1')
if ans[-1] == '0':
	ans += '0' * a + '1' * b
else:
	ans += '1' * b + '0' * a
print(ans)