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];
        
        read(n,m,A,scn);
        read(m,l,B,scn);
        
        
        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++){
            for(int j=0;j<l;j++){
                if(j==l-1){
                    System.out.print(C[i][j]+"\n");
                }else{
                    System.out.print(C[i][j]+" ");
                }                               
            }
        }        
        
    }
    
    private static void read(int a, int b, long[][] Ar,Scanner scn) {
        for(int i=0;i<a;i++){
            for(int j=0;j<b;j++){
                Ar[i][j]=scn.nextInt();
            }
        }
    }
        
} import java.util.Scanner; Scanner java.util 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];
        
        read(n,m,A,scn);
        read(m,l,B,scn);
        
        
        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++){
            for(int j=0;j<l;j++){
                if(j==l-1){
                    System.out.print(C[i][j]+"\n");
                }else{
                    System.out.print(C[i][j]+" ");
                }                               
            }
        }        
        
    }
    
    private static void read(int a, int b, long[][] Ar,Scanner scn) {
        for(int i=0;i<a;i++){
            for(int j=0;j<b;j++){
                Ar[i][j]=scn.nextInt();
            }
        }
    }
        
} 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];
        
        read(n,m,A,scn);
        read(m,l,B,scn);
        
        
        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++){
            for(int j=0;j<l;j++){
                if(j==l-1){
                    System.out.print(C[i][j]+"\n");
                }else{
                    System.out.print(C[i][j]+" ");
                }                               
            }
        }        
        
    } main {
        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];
        
        read(n,m,A,scn);
        read(m,l,B,scn);
        
        
        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++){
            for(int j=0;j<l;j++){
                if(j==l-1){
                    System.out.print(C[i][j]+"\n");
                }else{
                    System.out.print(C[i][j]+" ");
                }                               
            }
        }        
        
    } Scanner scn = new Scanner(System.in); scn new Scanner(System.in) int n = scn.nextInt(); n scn.nextInt() scn.nextInt scn int m = scn.nextInt(); m scn.nextInt() scn.nextInt scn int l = scn.nextInt(); l scn.nextInt() scn.nextInt scn long [][]A = new long[n][m]; A new long[n][m] n m long [][]B = new long[m][l]; B new long[m][l] m l long [][]C = new long[n][l]; C new long[n][l] n l read(n,m,A,scn) read n m A scn read(m,l,B,scn) read m l B scn 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];
                }
            }
        } int i=0; int i=0; i 0 i<n i n i++ i++ 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 j=0;j<l;j++){
                for(int k=0;k<m;k++){
                    C[i][j]+=A[i][k]*B[k][j];
                }
            }
        } for(int j=0;j<l;j++){
                for(int k=0;k<m;k++){
                    C[i][j]+=A[i][k]*B[k][j];
                }
            } int j=0; int j=0; j 0 j<l j l j++ j++ j {
                for(int k=0;k<m;k++){
                    C[i][j]+=A[i][k]*B[k][j];
                }
            } {
                for(int k=0;k<m;k++){
                    C[i][j]+=A[i][k]*B[k][j];
                }
            } for(int k=0;k<m;k++){
                    C[i][j]+=A[i][k]*B[k][j];
                } int k=0; int k=0; k 0 k<m k m k++ k++ k {
                    C[i][j]+=A[i][k]*B[k][j];
                } {
                    C[i][j]+=A[i][k]*B[k][j];
                } C[i][j]+=A[i][k]*B[k][j] C[i][j] C[i] C i j A[i][k]*B[k][j] A[i][k] A[i] A i k B[k][j] B[k] B k j for(int i=0;i<n;i++){
            for(int j=0;j<l;j++){
                if(j==l-1){
                    System.out.print(C[i][j]+"\n");
                }else{
                    System.out.print(C[i][j]+" ");
                }                               
            }
        } int i=0; int i=0; i 0 i<n i n i++ i++ i {
            for(int j=0;j<l;j++){
                if(j==l-1){
                    System.out.print(C[i][j]+"\n");
                }else{
                    System.out.print(C[i][j]+" ");
                }                               
            }
        } {
            for(int j=0;j<l;j++){
                if(j==l-1){
                    System.out.print(C[i][j]+"\n");
                }else{
                    System.out.print(C[i][j]+" ");
                }                               
            }
        } for(int j=0;j<l;j++){
                if(j==l-1){
                    System.out.print(C[i][j]+"\n");
                }else{
                    System.out.print(C[i][j]+" ");
                }                               
            } int j=0; int j=0; j 0 j<l j l j++ j++ j {
                if(j==l-1){
                    System.out.print(C[i][j]+"\n");
                }else{
                    System.out.print(C[i][j]+" ");
                }                               
            } {
                if(j==l-1){
                    System.out.print(C[i][j]+"\n");
                }else{
                    System.out.print(C[i][j]+" ");
                }                               
            } if(j==l-1){
                    System.out.print(C[i][j]+"\n");
                }else{
                    System.out.print(C[i][j]+" ");
                } j==l-1 j l-1 l 1 {
                    System.out.print(C[i][j]+"\n");
                } System.out.print(C[i][j]+"\n") System.out.print System.out System System.out C[i][j]+"\n" C[i][j] C[i] C i j "\n" {
                    System.out.print(C[i][j]+" ");
                } System.out.print(C[i][j]+" ") System.out.print System.out System System.out C[i][j]+" " C[i][j] C[i] C i j " " String[]args args private static void read(int a, int b, long[][] Ar,Scanner scn) {
        for(int i=0;i<a;i++){
            for(int j=0;j<b;j++){
                Ar[i][j]=scn.nextInt();
            }
        }
    } read {
        for(int i=0;i<a;i++){
            for(int j=0;j<b;j++){
                Ar[i][j]=scn.nextInt();
            }
        }
    } for(int i=0;i<a;i++){
            for(int j=0;j<b;j++){
                Ar[i][j]=scn.nextInt();
            }
        } int i=0; int i=0; i 0 i<a i a i++ i++ i {
            for(int j=0;j<b;j++){
                Ar[i][j]=scn.nextInt();
            }
        } {
            for(int j=0;j<b;j++){
                Ar[i][j]=scn.nextInt();
            }
        } for(int j=0;j<b;j++){
                Ar[i][j]=scn.nextInt();
            } int j=0; int j=0; j 0 j<b j b j++ j++ j {
                Ar[i][j]=scn.nextInt();
            } {
                Ar[i][j]=scn.nextInt();
            } Ar[i][j]=scn.nextInt() Ar[i][j] Ar[i] Ar i j scn.nextInt() scn.nextInt scn int a a int b b long[][] Ar Ar Scanner scn scn 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];
        
        read(n,m,A,scn);
        read(m,l,B,scn);
        
        
        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++){
            for(int j=0;j<l;j++){
                if(j==l-1){
                    System.out.print(C[i][j]+"\n");
                }else{
                    System.out.print(C[i][j]+" ");
                }                               
            }
        }        
        
    }
    
    private static void read(int a, int b, long[][] Ar,Scanner scn) {
        for(int i=0;i<a;i++){
            for(int j=0;j<b;j++){
                Ar[i][j]=scn.nextInt();
            }
        }
    }
        
} 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];
        
        read(n,m,A,scn);
        read(m,l,B,scn);
        
        
        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++){
            for(int j=0;j<l;j++){
                if(j==l-1){
                    System.out.print(C[i][j]+"\n");
                }else{
                    System.out.print(C[i][j]+" ");
                }                               
            }
        }        
        
    }
    
    private static void read(int a, int b, long[][] Ar,Scanner scn) {
        for(int i=0;i<a;i++){
            for(int j=0;j<b;j++){
                Ar[i][j]=scn.nextInt();
            }
        }
    }
        
} Main
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];
        
        read(n,m,A,scn);
        read(m,l,B,scn);
        
        
        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++){
            for(int j=0;j<l;j++){
                if(j==l-1){
                    System.out.print(C[i][j]+"\n");
                }else{
                    System.out.print(C[i][j]+" ");
                }                               
            }
        }        
        
    }
    
    private static void read(int a, int b, long[][] Ar,Scanner scn) {
        for(int i=0;i<a;i++){
            for(int j=0;j<b;j++){
                Ar[i][j]=scn.nextInt();
            }
        }
    }
        
}