#include <iostream>
using namespace std;

int main(){
    int n1;//矩阵1的行数
    int n2;//矩阵1的列数,矩阵2的行数
    int n3;//矩阵2的列数
    cin >> n1 >> n2 >>n3;
    int arr1[n1][n2];
    int arr2[n2][n3];
    int arr_Mul[n1][n3];
    for(int i = 0; i < n1; i++){//矩阵1输入
        for(int j = 0; j < n2; j++){
            cin >> arr1[i][j];
        }
    }
    
    for(int i = 0; i < n2; i++){//矩阵2输入
        for(int j = 0; j < n3; j++){
            cin >> arr2[i][j];
        }
    }
    
    for(int i = 0; i < n1; i++){//矩阵3输入
        for(int j = 0; j < n3; j++){
            arr_Mul[i][j] = 0;//初始化矩阵
            for(int k = 0; k < n2; k++){//这步很关键,我没想到
                arr_Mul[i][j] += arr1[i][k]*arr2[k][j]; 
            }
        }
    }
    
    for(int i = 0; i < n1; i++){//矩阵3输出
        for(int j = 0; j < n3; j++){
            cout << arr_Mul[i][j] << ' ';
        }
        cout << endl;
    }
}