
import java.util.Scanner;

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

import java.util.Scanner;

public class Main {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int n = sc.nextInt();
		int m = sc.nextInt();
		int l = sc.nextInt();
		long[][] mtx1 = new long[n][m];
		long[][] mtx2 = new long[m][l];
		for(int i = 0; i < n; i++){
			for(int k = 0; k < m; k++){
				mtx1[i][k] = sc.nextLong();
			}
		}
		for(int i = 0; i < m; i++){
			for(int k = 0; k < l; k++){
				mtx2[i][k] = sc.nextLong();
			}
		}
		for(int i = 0; i < n; i++){
			for(int k = 0; k < l; k++) {
				if(k != 0) {
					System.out.print(" ");
				}
				long sum = 0;
				for(int p = 0; p < m; p++){
					sum += mtx1[i][p] * mtx2[p][k];
				}
				System.out.print(sum);
			}
			System.out.println();
		}
	}
}

