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