import java.io.*;

class Main{
    public static void main(String[]args)throws IOException{
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        StringBuilder sb = new StringBuilder();

        String[] str = br.readLine().split(" ");
        int n = Integer.parseInt(str[0]);
        int m = Integer.parseInt(str[1]);
        int l = Integer.parseInt(str[2]);
        int[][] aMatrix = new int[n][m];
        int[][] bMatrix = new int[m][l];
        long sum = 0;

        //?????????A???????????????????´???????
        for(int i=0; i<n; i++){
            str = br.readLine().split(" ");
            for(int k=0; k<m; k++){
                aMatrix[i][k] = Integer.parseInt(str[k]);
            }
        }

        //  ??????B???????????????????´???????
        for(int i=0; i<m; i++){
            str = br.readLine().split(" ");
            for(int k=0; k<l; k++){
                bMatrix[i][k] = Integer.parseInt(str[k]);
            }
        }

        //?????????????????????C????±???????
        for(int i=0; i<n; i++){
            for(int k=0; k<l; k++){
                for(int w=0; w<m; w++){
                    sum += (long) aMatrix[i][w] * bMatrix[w][k];
                }
                if(k!=0)sb.append(" ");
                sb.append(sum);
                sum = 0;
            }
            sb.append("\n");
        }
        System.out.print(sb);
    }
} import java.io.*; io.* java class Main{
    public static void main(String[]args)throws IOException{
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        StringBuilder sb = new StringBuilder();

        String[] str = br.readLine().split(" ");
        int n = Integer.parseInt(str[0]);
        int m = Integer.parseInt(str[1]);
        int l = Integer.parseInt(str[2]);
        int[][] aMatrix = new int[n][m];
        int[][] bMatrix = new int[m][l];
        long sum = 0;

        //?????????A???????????????????´???????
        for(int i=0; i<n; i++){
            str = br.readLine().split(" ");
            for(int k=0; k<m; k++){
                aMatrix[i][k] = Integer.parseInt(str[k]);
            }
        }

        //  ??????B???????????????????´???????
        for(int i=0; i<m; i++){
            str = br.readLine().split(" ");
            for(int k=0; k<l; k++){
                bMatrix[i][k] = Integer.parseInt(str[k]);
            }
        }

        //?????????????????????C????±???????
        for(int i=0; i<n; i++){
            for(int k=0; k<l; k++){
                for(int w=0; w<m; w++){
                    sum += (long) aMatrix[i][w] * bMatrix[w][k];
                }
                if(k!=0)sb.append(" ");
                sb.append(sum);
                sum = 0;
            }
            sb.append("\n");
        }
        System.out.print(sb);
    }
} Main public static void main(String[]args)throws IOException{
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        StringBuilder sb = new StringBuilder();

        String[] str = br.readLine().split(" ");
        int n = Integer.parseInt(str[0]);
        int m = Integer.parseInt(str[1]);
        int l = Integer.parseInt(str[2]);
        int[][] aMatrix = new int[n][m];
        int[][] bMatrix = new int[m][l];
        long sum = 0;

        //?????????A???????????????????´???????
        for(int i=0; i<n; i++){
            str = br.readLine().split(" ");
            for(int k=0; k<m; k++){
                aMatrix[i][k] = Integer.parseInt(str[k]);
            }
        }

        //  ??????B???????????????????´???????
        for(int i=0; i<m; i++){
            str = br.readLine().split(" ");
            for(int k=0; k<l; k++){
                bMatrix[i][k] = Integer.parseInt(str[k]);
            }
        }

        //?????????????????????C????±???????
        for(int i=0; i<n; i++){
            for(int k=0; k<l; k++){
                for(int w=0; w<m; w++){
                    sum += (long) aMatrix[i][w] * bMatrix[w][k];
                }
                if(k!=0)sb.append(" ");
                sb.append(sum);
                sum = 0;
            }
            sb.append("\n");
        }
        System.out.print(sb);
    } main {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        StringBuilder sb = new StringBuilder();

        String[] str = br.readLine().split(" ");
        int n = Integer.parseInt(str[0]);
        int m = Integer.parseInt(str[1]);
        int l = Integer.parseInt(str[2]);
        int[][] aMatrix = new int[n][m];
        int[][] bMatrix = new int[m][l];
        long sum = 0;

        //?????????A???????????????????´???????
        for(int i=0; i<n; i++){
            str = br.readLine().split(" ");
            for(int k=0; k<m; k++){
                aMatrix[i][k] = Integer.parseInt(str[k]);
            }
        }

        //  ??????B???????????????????´???????
        for(int i=0; i<m; i++){
            str = br.readLine().split(" ");
            for(int k=0; k<l; k++){
                bMatrix[i][k] = Integer.parseInt(str[k]);
            }
        }

        //?????????????????????C????±???????
        for(int i=0; i<n; i++){
            for(int k=0; k<l; k++){
                for(int w=0; w<m; w++){
                    sum += (long) aMatrix[i][w] * bMatrix[w][k];
                }
                if(k!=0)sb.append(" ");
                sb.append(sum);
                sum = 0;
            }
            sb.append("\n");
        }
        System.out.print(sb);
    } BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); br new BufferedReader(new InputStreamReader(System.in)) StringBuilder sb = new StringBuilder(); sb new StringBuilder() String[] str = br.readLine().split(" "); str br.readLine().split(" ") br.readLine().split br.readLine() br.readLine br " " int n = Integer.parseInt(str[0]); n Integer.parseInt(str[0]) Integer.parseInt Integer str[0] str 0 int m = Integer.parseInt(str[1]); m Integer.parseInt(str[1]) Integer.parseInt Integer str[1] str 1 int l = Integer.parseInt(str[2]); l Integer.parseInt(str[2]) Integer.parseInt Integer str[2] str 2 int[][] aMatrix = new int[n][m]; aMatrix new int[n][m] n m int[][] bMatrix = new int[m][l]; bMatrix new int[m][l] m l long sum = 0; sum 0 for(int i=0; i<n; i++){
            str = br.readLine().split(" ");
            for(int k=0; k<m; k++){
                aMatrix[i][k] = Integer.parseInt(str[k]);
            }
        } int i=0; int i=0; i 0 i<n i n i++ i++ i {
            str = br.readLine().split(" ");
            for(int k=0; k<m; k++){
                aMatrix[i][k] = Integer.parseInt(str[k]);
            }
        } {
            str = br.readLine().split(" ");
            for(int k=0; k<m; k++){
                aMatrix[i][k] = Integer.parseInt(str[k]);
            }
        } str = br.readLine().split(" ") str br.readLine().split(" ") br.readLine().split br.readLine() br.readLine br " " for(int k=0; k<m; k++){
                aMatrix[i][k] = Integer.parseInt(str[k]);
            } int k=0; int k=0; k 0 k<m k m k++ k++ k {
                aMatrix[i][k] = Integer.parseInt(str[k]);
            } {
                aMatrix[i][k] = Integer.parseInt(str[k]);
            } aMatrix[i][k] = Integer.parseInt(str[k]) aMatrix[i][k] aMatrix[i] aMatrix i k Integer.parseInt(str[k]) Integer.parseInt Integer str[k] str k for(int i=0; i<m; i++){
            str = br.readLine().split(" ");
            for(int k=0; k<l; k++){
                bMatrix[i][k] = Integer.parseInt(str[k]);
            }
        } int i=0; int i=0; i 0 i<m i m i++ i++ i {
            str = br.readLine().split(" ");
            for(int k=0; k<l; k++){
                bMatrix[i][k] = Integer.parseInt(str[k]);
            }
        } {
            str = br.readLine().split(" ");
            for(int k=0; k<l; k++){
                bMatrix[i][k] = Integer.parseInt(str[k]);
            }
        } str = br.readLine().split(" ") str br.readLine().split(" ") br.readLine().split br.readLine() br.readLine br " " for(int k=0; k<l; k++){
                bMatrix[i][k] = Integer.parseInt(str[k]);
            } int k=0; int k=0; k 0 k<l k l k++ k++ k {
                bMatrix[i][k] = Integer.parseInt(str[k]);
            } {
                bMatrix[i][k] = Integer.parseInt(str[k]);
            } bMatrix[i][k] = Integer.parseInt(str[k]) bMatrix[i][k] bMatrix[i] bMatrix i k Integer.parseInt(str[k]) Integer.parseInt Integer str[k] str k for(int i=0; i<n; i++){
            for(int k=0; k<l; k++){
                for(int w=0; w<m; w++){
                    sum += (long) aMatrix[i][w] * bMatrix[w][k];
                }
                if(k!=0)sb.append(" ");
                sb.append(sum);
                sum = 0;
            }
            sb.append("\n");
        } int i=0; int i=0; i 0 i<n i n i++ i++ i {
            for(int k=0; k<l; k++){
                for(int w=0; w<m; w++){
                    sum += (long) aMatrix[i][w] * bMatrix[w][k];
                }
                if(k!=0)sb.append(" ");
                sb.append(sum);
                sum = 0;
            }
            sb.append("\n");
        } {
            for(int k=0; k<l; k++){
                for(int w=0; w<m; w++){
                    sum += (long) aMatrix[i][w] * bMatrix[w][k];
                }
                if(k!=0)sb.append(" ");
                sb.append(sum);
                sum = 0;
            }
            sb.append("\n");
        } for(int k=0; k<l; k++){
                for(int w=0; w<m; w++){
                    sum += (long) aMatrix[i][w] * bMatrix[w][k];
                }
                if(k!=0)sb.append(" ");
                sb.append(sum);
                sum = 0;
            } int k=0; int k=0; k 0 k<l k l k++ k++ k {
                for(int w=0; w<m; w++){
                    sum += (long) aMatrix[i][w] * bMatrix[w][k];
                }
                if(k!=0)sb.append(" ");
                sb.append(sum);
                sum = 0;
            } {
                for(int w=0; w<m; w++){
                    sum += (long) aMatrix[i][w] * bMatrix[w][k];
                }
                if(k!=0)sb.append(" ");
                sb.append(sum);
                sum = 0;
            } for(int w=0; w<m; w++){
                    sum += (long) aMatrix[i][w] * bMatrix[w][k];
                } int w=0; int w=0; w 0 w<m w m w++ w++ w {
                    sum += (long) aMatrix[i][w] * bMatrix[w][k];
                } {
                    sum += (long) aMatrix[i][w] * bMatrix[w][k];
                } sum += (long) aMatrix[i][w] * bMatrix[w][k] sum (long) aMatrix[i][w] * bMatrix[w][k] (long) aMatrix[i][w] aMatrix[i] aMatrix i w bMatrix[w][k] bMatrix[w] bMatrix w k if(k!=0)sb.append(" "); k!=0 k 0 sb.append(" ") sb.append sb " " sb.append(sum) sb.append sb sum sum = 0 sum 0 sb.append("\n") sb.append sb "\n" System.out.print(sb) System.out.print System.out System System.out sb String[]args args
import java.io.*;

class Main{
    public static void main(String[]args)throws IOException{
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        StringBuilder sb = new StringBuilder();

        String[] str = br.readLine().split(" ");
        int n = Integer.parseInt(str[0]);
        int m = Integer.parseInt(str[1]);
        int l = Integer.parseInt(str[2]);
        int[][] aMatrix = new int[n][m];
        int[][] bMatrix = new int[m][l];
        long sum = 0;

        //?????????A???????????????????´???????
        for(int i=0; i<n; i++){
            str = br.readLine().split(" ");
            for(int k=0; k<m; k++){
                aMatrix[i][k] = Integer.parseInt(str[k]);
            }
        }

        //  ??????B???????????????????´???????
        for(int i=0; i<m; i++){
            str = br.readLine().split(" ");
            for(int k=0; k<l; k++){
                bMatrix[i][k] = Integer.parseInt(str[k]);
            }
        }

        //?????????????????????C????±???????
        for(int i=0; i<n; i++){
            for(int k=0; k<l; k++){
                for(int w=0; w<m; w++){
                    sum += (long) aMatrix[i][w] * bMatrix[w][k];
                }
                if(k!=0)sb.append(" ");
                sb.append(sum);
                sum = 0;
            }
            sb.append("\n");
        }
        System.out.print(sb);
    }
}