while True:
try:
x = int(input()) # 代表第一个矩阵的行数
y = int(input()) # 代表第一个矩阵的列数和第二个矩阵的行数。
z = int(input()) # 代表第二个矩阵的列数
A = [] # 代表第一个矩阵
B = [] # 代表第二个矩阵
C = [[0 for _ in range(z)] for _ in range(x)] # 存放结果的矩阵,矩阵行数为第一个矩阵的行数,列数为第二个矩阵的列数
for i in range(x): # 输入第一个矩阵
temp = list(map(int, input().strip().split()))
A.append(temp)
for j in range(y): # 输入第二个矩阵
temp = list(map(int, input().strip().split()))
B.append(temp)
for i in range(x): # 计算结果
for j in range(z):
for k in range(y):
C[i][j] += A[i][k] * B[k][j]
print(*C[i]) # *去除列表括号
except:
break