import java.util.Scanner;
public class Main{
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        int n = scan.nextInt();
        int m = scan.nextInt();
        int l = scan.nextInt();
        long [] [] a = new long[n][m];
        long [] [] b = new long[m][l];
        long [] [] c = new long[n][l];
        for(int x = 0; x < n; x++){
            for(int y = 0; y < m; y++){
                a[x] [y] = scan.nextInt();
            }
        }
        for(int x = 0; x < m; x++){
            for(int y = 0; y < l; y++){
                b[x] [y] = scan.nextInt();
            }
        }
        for(int x =0; x < n; x++){
            for(int y = 0; y < l; y++){
                for(int r = 0; r < m; r++){
                    c[x][y] = c[x][y] + (a[x][r] * b[r][y]);
                }
            }
        }
        for(int x = 0; x < n; x++){
            for(int y = 0; y < l; y++){
                if(y != l-1) {
                    System.out.print(c[x][y] + " ");
                }
                else{
                    System.out.print(c[x][y]);
                }
            }
            System.out.println();
        }
    }
} import java.util.Scanner; Scanner java.util public class Main{
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        int n = scan.nextInt();
        int m = scan.nextInt();
        int l = scan.nextInt();
        long [] [] a = new long[n][m];
        long [] [] b = new long[m][l];
        long [] [] c = new long[n][l];
        for(int x = 0; x < n; x++){
            for(int y = 0; y < m; y++){
                a[x] [y] = scan.nextInt();
            }
        }
        for(int x = 0; x < m; x++){
            for(int y = 0; y < l; y++){
                b[x] [y] = scan.nextInt();
            }
        }
        for(int x =0; x < n; x++){
            for(int y = 0; y < l; y++){
                for(int r = 0; r < m; r++){
                    c[x][y] = c[x][y] + (a[x][r] * b[r][y]);
                }
            }
        }
        for(int x = 0; x < n; x++){
            for(int y = 0; y < l; y++){
                if(y != l-1) {
                    System.out.print(c[x][y] + " ");
                }
                else{
                    System.out.print(c[x][y]);
                }
            }
            System.out.println();
        }
    }
} Main public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        int n = scan.nextInt();
        int m = scan.nextInt();
        int l = scan.nextInt();
        long [] [] a = new long[n][m];
        long [] [] b = new long[m][l];
        long [] [] c = new long[n][l];
        for(int x = 0; x < n; x++){
            for(int y = 0; y < m; y++){
                a[x] [y] = scan.nextInt();
            }
        }
        for(int x = 0; x < m; x++){
            for(int y = 0; y < l; y++){
                b[x] [y] = scan.nextInt();
            }
        }
        for(int x =0; x < n; x++){
            for(int y = 0; y < l; y++){
                for(int r = 0; r < m; r++){
                    c[x][y] = c[x][y] + (a[x][r] * b[r][y]);
                }
            }
        }
        for(int x = 0; x < n; x++){
            for(int y = 0; y < l; y++){
                if(y != l-1) {
                    System.out.print(c[x][y] + " ");
                }
                else{
                    System.out.print(c[x][y]);
                }
            }
            System.out.println();
        }
    } main {
        Scanner scan = new Scanner(System.in);
        int n = scan.nextInt();
        int m = scan.nextInt();
        int l = scan.nextInt();
        long [] [] a = new long[n][m];
        long [] [] b = new long[m][l];
        long [] [] c = new long[n][l];
        for(int x = 0; x < n; x++){
            for(int y = 0; y < m; y++){
                a[x] [y] = scan.nextInt();
            }
        }
        for(int x = 0; x < m; x++){
            for(int y = 0; y < l; y++){
                b[x] [y] = scan.nextInt();
            }
        }
        for(int x =0; x < n; x++){
            for(int y = 0; y < l; y++){
                for(int r = 0; r < m; r++){
                    c[x][y] = c[x][y] + (a[x][r] * b[r][y]);
                }
            }
        }
        for(int x = 0; x < n; x++){
            for(int y = 0; y < l; y++){
                if(y != l-1) {
                    System.out.print(c[x][y] + " ");
                }
                else{
                    System.out.print(c[x][y]);
                }
            }
            System.out.println();
        }
    } Scanner scan = new Scanner(System.in); scan new Scanner(System.in) int n = scan.nextInt(); n scan.nextInt() scan.nextInt scan int m = scan.nextInt(); m scan.nextInt() scan.nextInt scan int l = scan.nextInt(); l scan.nextInt() scan.nextInt scan 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 for(int x = 0; x < n; x++){
            for(int y = 0; y < m; y++){
                a[x] [y] = scan.nextInt();
            }
        } int x = 0; int x = 0; x 0 x < n x n x++ x++ x {
            for(int y = 0; y < m; y++){
                a[x] [y] = scan.nextInt();
            }
        } {
            for(int y = 0; y < m; y++){
                a[x] [y] = scan.nextInt();
            }
        } for(int y = 0; y < m; y++){
                a[x] [y] = scan.nextInt();
            } int y = 0; int y = 0; y 0 y < m y m y++ y++ y {
                a[x] [y] = scan.nextInt();
            } {
                a[x] [y] = scan.nextInt();
            } a[x] [y] = scan.nextInt() a[x] [y] a[x] a x y scan.nextInt() scan.nextInt scan for(int x = 0; x < m; x++){
            for(int y = 0; y < l; y++){
                b[x] [y] = scan.nextInt();
            }
        } int x = 0; int x = 0; x 0 x < m x m x++ x++ x {
            for(int y = 0; y < l; y++){
                b[x] [y] = scan.nextInt();
            }
        } {
            for(int y = 0; y < l; y++){
                b[x] [y] = scan.nextInt();
            }
        } for(int y = 0; y < l; y++){
                b[x] [y] = scan.nextInt();
            } int y = 0; int y = 0; y 0 y < l y l y++ y++ y {
                b[x] [y] = scan.nextInt();
            } {
                b[x] [y] = scan.nextInt();
            } b[x] [y] = scan.nextInt() b[x] [y] b[x] b x y scan.nextInt() scan.nextInt scan for(int x =0; x < n; x++){
            for(int y = 0; y < l; y++){
                for(int r = 0; r < m; r++){
                    c[x][y] = c[x][y] + (a[x][r] * b[r][y]);
                }
            }
        } int x =0; int x =0; x 0 x < n x n x++ x++ x {
            for(int y = 0; y < l; y++){
                for(int r = 0; r < m; r++){
                    c[x][y] = c[x][y] + (a[x][r] * b[r][y]);
                }
            }
        } {
            for(int y = 0; y < l; y++){
                for(int r = 0; r < m; r++){
                    c[x][y] = c[x][y] + (a[x][r] * b[r][y]);
                }
            }
        } for(int y = 0; y < l; y++){
                for(int r = 0; r < m; r++){
                    c[x][y] = c[x][y] + (a[x][r] * b[r][y]);
                }
            } int y = 0; int y = 0; y 0 y < l y l y++ y++ y {
                for(int r = 0; r < m; r++){
                    c[x][y] = c[x][y] + (a[x][r] * b[r][y]);
                }
            } {
                for(int r = 0; r < m; r++){
                    c[x][y] = c[x][y] + (a[x][r] * b[r][y]);
                }
            } for(int r = 0; r < m; r++){
                    c[x][y] = c[x][y] + (a[x][r] * b[r][y]);
                } int r = 0; int r = 0; r 0 r < m r m r++ r++ r {
                    c[x][y] = c[x][y] + (a[x][r] * b[r][y]);
                } {
                    c[x][y] = c[x][y] + (a[x][r] * b[r][y]);
                } c[x][y] = c[x][y] + (a[x][r] * b[r][y]) c[x][y] c[x] c x y c[x][y] + (a[x][r] * b[r][y]) c[x][y] c[x] c x y (a[x][r] * b[r][y]) a[x][r] a[x] a x r b[r][y] b[r] b r y for(int x = 0; x < n; x++){
            for(int y = 0; y < l; y++){
                if(y != l-1) {
                    System.out.print(c[x][y] + " ");
                }
                else{
                    System.out.print(c[x][y]);
                }
            }
            System.out.println();
        } int x = 0; int x = 0; x 0 x < n x n x++ x++ x {
            for(int y = 0; y < l; y++){
                if(y != l-1) {
                    System.out.print(c[x][y] + " ");
                }
                else{
                    System.out.print(c[x][y]);
                }
            }
            System.out.println();
        } {
            for(int y = 0; y < l; y++){
                if(y != l-1) {
                    System.out.print(c[x][y] + " ");
                }
                else{
                    System.out.print(c[x][y]);
                }
            }
            System.out.println();
        } for(int y = 0; y < l; y++){
                if(y != l-1) {
                    System.out.print(c[x][y] + " ");
                }
                else{
                    System.out.print(c[x][y]);
                }
            } int y = 0; int y = 0; y 0 y < l y l y++ y++ y {
                if(y != l-1) {
                    System.out.print(c[x][y] + " ");
                }
                else{
                    System.out.print(c[x][y]);
                }
            } {
                if(y != l-1) {
                    System.out.print(c[x][y] + " ");
                }
                else{
                    System.out.print(c[x][y]);
                }
            } if(y != l-1) {
                    System.out.print(c[x][y] + " ");
                }
                else{
                    System.out.print(c[x][y]);
                } y != l-1 y l-1 l 1 {
                    System.out.print(c[x][y] + " ");
                } System.out.print(c[x][y] + " ") System.out.print System.out System System.out c[x][y] + " " c[x][y] c[x] c x y " " {
                    System.out.print(c[x][y]);
                } System.out.print(c[x][y]) System.out.print System.out System System.out c[x][y] c[x] c x y System.out.println() System.out.println System.out System System.out String[] args args public class Main{
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        int n = scan.nextInt();
        int m = scan.nextInt();
        int l = scan.nextInt();
        long [] [] a = new long[n][m];
        long [] [] b = new long[m][l];
        long [] [] c = new long[n][l];
        for(int x = 0; x < n; x++){
            for(int y = 0; y < m; y++){
                a[x] [y] = scan.nextInt();
            }
        }
        for(int x = 0; x < m; x++){
            for(int y = 0; y < l; y++){
                b[x] [y] = scan.nextInt();
            }
        }
        for(int x =0; x < n; x++){
            for(int y = 0; y < l; y++){
                for(int r = 0; r < m; r++){
                    c[x][y] = c[x][y] + (a[x][r] * b[r][y]);
                }
            }
        }
        for(int x = 0; x < n; x++){
            for(int y = 0; y < l; y++){
                if(y != l-1) {
                    System.out.print(c[x][y] + " ");
                }
                else{
                    System.out.print(c[x][y]);
                }
            }
            System.out.println();
        }
    }
} public class Main{
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        int n = scan.nextInt();
        int m = scan.nextInt();
        int l = scan.nextInt();
        long [] [] a = new long[n][m];
        long [] [] b = new long[m][l];
        long [] [] c = new long[n][l];
        for(int x = 0; x < n; x++){
            for(int y = 0; y < m; y++){
                a[x] [y] = scan.nextInt();
            }
        }
        for(int x = 0; x < m; x++){
            for(int y = 0; y < l; y++){
                b[x] [y] = scan.nextInt();
            }
        }
        for(int x =0; x < n; x++){
            for(int y = 0; y < l; y++){
                for(int r = 0; r < m; r++){
                    c[x][y] = c[x][y] + (a[x][r] * b[r][y]);
                }
            }
        }
        for(int x = 0; x < n; x++){
            for(int y = 0; y < l; y++){
                if(y != l-1) {
                    System.out.print(c[x][y] + " ");
                }
                else{
                    System.out.print(c[x][y]);
                }
            }
            System.out.println();
        }
    }
} Main
import java.util.Scanner;
public class Main{
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        int n = scan.nextInt();
        int m = scan.nextInt();
        int l = scan.nextInt();
        long [] [] a = new long[n][m];
        long [] [] b = new long[m][l];
        long [] [] c = new long[n][l];
        for(int x = 0; x < n; x++){
            for(int y = 0; y < m; y++){
                a[x] [y] = scan.nextInt();
            }
        }
        for(int x = 0; x < m; x++){
            for(int y = 0; y < l; y++){
                b[x] [y] = scan.nextInt();
            }
        }
        for(int x =0; x < n; x++){
            for(int y = 0; y < l; y++){
                for(int r = 0; r < m; r++){
                    c[x][y] = c[x][y] + (a[x][r] * b[r][y]);
                }
            }
        }
        for(int x = 0; x < n; x++){
            for(int y = 0; y < l; y++){
                if(y != l-1) {
                    System.out.print(c[x][y] + " ");
                }
                else{
                    System.out.print(c[x][y]);
                }
            }
            System.out.println();
        }
    }
}
