import java.util.*;

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

public class Main {
    public static void main(String[] args) throws Exception {
Scanner sc = new Scanner(System.in);
		int n = sc.nextInt();
		int m = sc.nextInt();
		int l = sc.nextInt();
		int nums[][] = new int[n][m];
		for (int i = 0; i < n; i++) {
			for (int k = 0; k < m; k++) {
				int a = sc.nextInt();
				nums[i][k] = a;
			}
		}
		int matrix[][] = new int[m][l];
		for (int i = 0; i < m; i++) {
			for (int k = 0; k < l; k++) {
				int b = sc.nextInt();
				matrix[i][k] = b;
			}
		}
		for (int i = 0; i < n; i++) {
			for (int k = 0; k < l; k++) {
				long c = 0;
				for (int j = 0; j < m; j++) {
					c = nums[i][j] * matrix[j][k] + c;
				}
				System.out.print(c);
				if (k + 1 != l) {
					System.out.print(" ");
				}
			}
			System.out.println();
		}
    }
}

