def check_ball_num(n: int, m: int, k: int):
max_mn, min_mn = max(m, n), min(m, n)
if k < max_mn:
print(-1)
return 0
A = [[0 for _ in range(m)] for _ in range(n)]
for i in range(min_mn):
A[i][i] = 1
if n > m:
for i in range(m, n):
A[i][min_mn - 1] = 1
else:
for i in range(n, m):
A[min_mn - 1][i] = 1
if k > max_mn:
A[0][0]+= k - max_mn
for i in range(n):
print(" ".join(map(str,A[i])))
return 0
while True:
try:
n, m, k = map(int, input().split())
check_ball_num(n,m,k)
except:
break



京公网安备 11010502036488号