
import java.util.Scanner;

public class Main {
    static Scanner sc = new Scanner(System.in);
    static long n = sc.nextLong();
    static long m = sc.nextLong();
    static long l = sc.nextLong();
    static long nm[][] = new long[(int)n][(int)m];
    static long ml[][] = new long[(int)m][(int)l];

    public static void main(String[] args) {
        for (int i = 0; i < n; i++){
            for (int j = 0; j < m; j++){
                nm[i][j] = sc.nextLong();
            }
        }
        for (int i = 0; i < m; i++){
            for (int j = 0; j < l; j++){
                ml[i][j] = sc.nextLong();
            }
        }
        for (int i = 0; i < n; i++){
            for (int j = 0; j < l; j++){
                long result = 0;
                for (int k = 0; k < m; k++){
                 result += nm[i][k] * ml[k][j];
                }
                System.out.print(result);
                if (j != l - 1)
                    System.out.print(" ");
            }
            System.out.println();
        }
    }
}
 import java.util.Scanner; Scanner java.util public class Main {
    static Scanner sc = new Scanner(System.in);
    static long n = sc.nextLong();
    static long m = sc.nextLong();
    static long l = sc.nextLong();
    static long nm[][] = new long[(int)n][(int)m];
    static long ml[][] = new long[(int)m][(int)l];

    public static void main(String[] args) {
        for (int i = 0; i < n; i++){
            for (int j = 0; j < m; j++){
                nm[i][j] = sc.nextLong();
            }
        }
        for (int i = 0; i < m; i++){
            for (int j = 0; j < l; j++){
                ml[i][j] = sc.nextLong();
            }
        }
        for (int i = 0; i < n; i++){
            for (int j = 0; j < l; j++){
                long result = 0;
                for (int k = 0; k < m; k++){
                 result += nm[i][k] * ml[k][j];
                }
                System.out.print(result);
                if (j != l - 1)
                    System.out.print(" ");
            }
            System.out.println();
        }
    }
} Main static Scanner sc = new Scanner(System.in); sc new Scanner(System.in) static long n = sc.nextLong(); n sc.nextLong() sc.nextLong sc static long m = sc.nextLong(); m sc.nextLong() sc.nextLong sc static long l = sc.nextLong(); l sc.nextLong() sc.nextLong sc static long nm[][] = new long[(int)n][(int)m]; nm new long[(int)n][(int)m] (int)n (int)m static long ml[][] = new long[(int)m][(int)l]; ml new long[(int)m][(int)l] (int)m (int)l public static void main(String[] args) {
        for (int i = 0; i < n; i++){
            for (int j = 0; j < m; j++){
                nm[i][j] = sc.nextLong();
            }
        }
        for (int i = 0; i < m; i++){
            for (int j = 0; j < l; j++){
                ml[i][j] = sc.nextLong();
            }
        }
        for (int i = 0; i < n; i++){
            for (int j = 0; j < l; j++){
                long result = 0;
                for (int k = 0; k < m; k++){
                 result += nm[i][k] * ml[k][j];
                }
                System.out.print(result);
                if (j != l - 1)
                    System.out.print(" ");
            }
            System.out.println();
        }
    } main {
        for (int i = 0; i < n; i++){
            for (int j = 0; j < m; j++){
                nm[i][j] = sc.nextLong();
            }
        }
        for (int i = 0; i < m; i++){
            for (int j = 0; j < l; j++){
                ml[i][j] = sc.nextLong();
            }
        }
        for (int i = 0; i < n; i++){
            for (int j = 0; j < l; j++){
                long result = 0;
                for (int k = 0; k < m; k++){
                 result += nm[i][k] * ml[k][j];
                }
                System.out.print(result);
                if (j != l - 1)
                    System.out.print(" ");
            }
            System.out.println();
        }
    } for (int i = 0; i < n; i++){
            for (int j = 0; j < m; j++){
                nm[i][j] = sc.nextLong();
            }
        } int i = 0; int i = 0; i 0 i < n i n i++ i++ i {
            for (int j = 0; j < m; j++){
                nm[i][j] = sc.nextLong();
            }
        } {
            for (int j = 0; j < m; j++){
                nm[i][j] = sc.nextLong();
            }
        } for (int j = 0; j < m; j++){
                nm[i][j] = sc.nextLong();
            } int j = 0; int j = 0; j 0 j < m j m j++ j++ j {
                nm[i][j] = sc.nextLong();
            } {
                nm[i][j] = sc.nextLong();
            } nm[i][j] = sc.nextLong() nm[i][j] nm[i] nm i j sc.nextLong() sc.nextLong sc for (int i = 0; i < m; i++){
            for (int j = 0; j < l; j++){
                ml[i][j] = sc.nextLong();
            }
        } int i = 0; int i = 0; i 0 i < m i m i++ i++ i {
            for (int j = 0; j < l; j++){
                ml[i][j] = sc.nextLong();
            }
        } {
            for (int j = 0; j < l; j++){
                ml[i][j] = sc.nextLong();
            }
        } for (int j = 0; j < l; j++){
                ml[i][j] = sc.nextLong();
            } int j = 0; int j = 0; j 0 j < l j l j++ j++ j {
                ml[i][j] = sc.nextLong();
            } {
                ml[i][j] = sc.nextLong();
            } ml[i][j] = sc.nextLong() ml[i][j] ml[i] ml i j sc.nextLong() sc.nextLong sc for (int i = 0; i < n; i++){
            for (int j = 0; j < l; j++){
                long result = 0;
                for (int k = 0; k < m; k++){
                 result += nm[i][k] * ml[k][j];
                }
                System.out.print(result);
                if (j != l - 1)
                    System.out.print(" ");
            }
            System.out.println();
        } int i = 0; int i = 0; i 0 i < n i n i++ i++ i {
            for (int j = 0; j < l; j++){
                long result = 0;
                for (int k = 0; k < m; k++){
                 result += nm[i][k] * ml[k][j];
                }
                System.out.print(result);
                if (j != l - 1)
                    System.out.print(" ");
            }
            System.out.println();
        } {
            for (int j = 0; j < l; j++){
                long result = 0;
                for (int k = 0; k < m; k++){
                 result += nm[i][k] * ml[k][j];
                }
                System.out.print(result);
                if (j != l - 1)
                    System.out.print(" ");
            }
            System.out.println();
        } for (int j = 0; j < l; j++){
                long result = 0;
                for (int k = 0; k < m; k++){
                 result += nm[i][k] * ml[k][j];
                }
                System.out.print(result);
                if (j != l - 1)
                    System.out.print(" ");
            } int j = 0; int j = 0; j 0 j < l j l j++ j++ j {
                long result = 0;
                for (int k = 0; k < m; k++){
                 result += nm[i][k] * ml[k][j];
                }
                System.out.print(result);
                if (j != l - 1)
                    System.out.print(" ");
            } {
                long result = 0;
                for (int k = 0; k < m; k++){
                 result += nm[i][k] * ml[k][j];
                }
                System.out.print(result);
                if (j != l - 1)
                    System.out.print(" ");
            } long result = 0; result 0 for (int k = 0; k < m; k++){
                 result += nm[i][k] * ml[k][j];
                } int k = 0; int k = 0; k 0 k < m k m k++ k++ k {
                 result += nm[i][k] * ml[k][j];
                } {
                 result += nm[i][k] * ml[k][j];
                } result += nm[i][k] * ml[k][j] result nm[i][k] * ml[k][j] nm[i][k] nm[i] nm i k ml[k][j] ml[k] ml k j System.out.print(result) System.out.print System.out System System.out result if (j != l - 1)
                    System.out.print(" "); j != l - 1 j l - 1 l 1 System.out.print(" ") System.out.print System.out System System.out " " System.out.println() System.out.println System.out System System.out String[] args args public class Main {
    static Scanner sc = new Scanner(System.in);
    static long n = sc.nextLong();
    static long m = sc.nextLong();
    static long l = sc.nextLong();
    static long nm[][] = new long[(int)n][(int)m];
    static long ml[][] = new long[(int)m][(int)l];

    public static void main(String[] args) {
        for (int i = 0; i < n; i++){
            for (int j = 0; j < m; j++){
                nm[i][j] = sc.nextLong();
            }
        }
        for (int i = 0; i < m; i++){
            for (int j = 0; j < l; j++){
                ml[i][j] = sc.nextLong();
            }
        }
        for (int i = 0; i < n; i++){
            for (int j = 0; j < l; j++){
                long result = 0;
                for (int k = 0; k < m; k++){
                 result += nm[i][k] * ml[k][j];
                }
                System.out.print(result);
                if (j != l - 1)
                    System.out.print(" ");
            }
            System.out.println();
        }
    }
} public class Main {
    static Scanner sc = new Scanner(System.in);
    static long n = sc.nextLong();
    static long m = sc.nextLong();
    static long l = sc.nextLong();
    static long nm[][] = new long[(int)n][(int)m];
    static long ml[][] = new long[(int)m][(int)l];

    public static void main(String[] args) {
        for (int i = 0; i < n; i++){
            for (int j = 0; j < m; j++){
                nm[i][j] = sc.nextLong();
            }
        }
        for (int i = 0; i < m; i++){
            for (int j = 0; j < l; j++){
                ml[i][j] = sc.nextLong();
            }
        }
        for (int i = 0; i < n; i++){
            for (int j = 0; j < l; j++){
                long result = 0;
                for (int k = 0; k < m; k++){
                 result += nm[i][k] * ml[k][j];
                }
                System.out.print(result);
                if (j != l - 1)
                    System.out.print(" ");
            }
            System.out.println();
        }
    }
} Main

import java.util.Scanner;

public class Main {
    static Scanner sc = new Scanner(System.in);
    static long n = sc.nextLong();
    static long m = sc.nextLong();
    static long l = sc.nextLong();
    static long nm[][] = new long[(int)n][(int)m];
    static long ml[][] = new long[(int)m][(int)l];

    public static void main(String[] args) {
        for (int i = 0; i < n; i++){
            for (int j = 0; j < m; j++){
                nm[i][j] = sc.nextLong();
            }
        }
        for (int i = 0; i < m; i++){
            for (int j = 0; j < l; j++){
                ml[i][j] = sc.nextLong();
            }
        }
        for (int i = 0; i < n; i++){
            for (int j = 0; j < l; j++){
                long result = 0;
                for (int k = 0; k < m; k++){
                 result += nm[i][k] * ml[k][j];
                }
                System.out.print(result);
                if (j != l - 1)
                    System.out.print(" ");
            }
            System.out.println();
        }
    }
}

