import java.util.Scanner;

public class Main {
    public static void main(String args[]) {
        Scanner scn = new Scanner(System.in);
        int n = scn.nextInt();
        int m = scn.nextInt();
        int l = scn.nextInt();

        long[][] a = new long[n][m];
        long[][] b = new long[m][l];
        long[][] c = new long[n][l];

        for(int i=0;i<n;i++){
            for(int j=0;j<m;j++){
                a[i][j]=scn.nextInt();
            }
        }

        for(int i=0;i<m;i++){
            for(int j=0;j<l;j++){
                b[i][j]=scn.nextInt();
            }
        }
        for(int i=0;i<n;i++){
            for(int j=0;j<l;j++){
                for(int k=0;k<m;k++){
                    c[i][j]+= (a[i][k] * b[k][j]);
                }
            }
        }
        for(int i=0;i<n;i++){
            System.out.printf("%d",c[i][0]);
            for(int j=1;j<l;j++){
                System.out.printf(" %d",c[i][j]);
            }
            System.out.printf("%n");
        }


        scn.close();


    }


}

/tmp/hf-datasets-cache/medium/datasets/42704881117311-config-parquet-and-info-qiankunmu-Project_CodeNet-896c9d36/hub/datasets--qiankunmu--Project_CodeNet_Python800_and_Java250/snapshots/c899fde44a77ba1cc14973ed3de064e4ff3aadc7/Project_CodeNet_Java250.tar.gz