#include<stdio.h>
void multiply_matrices(int m, int n, int p,int q, int mat1[m][n]), int mat2[p][q]);
{
    if (n != p){
        printf("Invalid input\n");
        return;
    }
    int result[m][q];
    for(int i = 0; i< m; i++) {
        for (int j = 0; j < q; j++) {
            result[i][j] = 0;
            for (int k = 0; k < n; k++){
                result[i][j] += mat1[i][k] * mat2[k][j];
        }
    }
}
for (int i = 0; i < m; i++) {
    for(int j = 0; j <q; j++) {
        printf("%d ",result[i][j]);
    }
    printf("\n");
}
}
int main() {
    int m, n, p,q;
    scanf("%d %d" ,&m,&n);
    int mat1[m][n];
    for (int i =0; i < m; i++) {
    for(int j = 0; j < q; j++) {
        scanf("%d",&mat1[i][j]);
    }
    }
    scanf("%d %d", &p, &q);
    int mat2[p][q];
    for (int i =0; i < p; i++) {
        for(int j = 0; j < q; j++) {
            scanf("%d",&mat2[i][j]);
        }
    }
    multiply_matrices(m, n, p, q, mat1, mat2);
    return 0;
}