import java.util.Scanner;
public class Main {
	public static void main(String[] args) {
		int n,m,l;
		Scanner scan = new Scanner(System.in);
		n=scan.nextInt();
		m=scan.nextInt();
		l=scan.nextInt();
		int[][] A = new int[n][m];
		int[][] B = new int[m][l];
		long[][] C = new long[n][l];
		
		for(int i=0;i<n;i++)
			for(int j=0;j<m;j++)
				A[i][j]=scan.nextInt();
		
		for(int i=0;i<m;i++)
			for(int j=0;j<l;j++)
				B[i][j]=scan.nextInt();
		
		for(int i=0;i<n;i++)
			for(int j=0;j<l;j++)
				C[i][j]=0;
		
		for(int i=0;i<n;i++){
			for(int j=0;j<l;j++){
				long temp = 0;
				for(int k=0;k<m;k++){
					temp += A[i][k] * B[k][j];
				}
				C[i][j]=temp;
			}
		}
		
		for(int i=0;i<n;i++){
			for(int j=0;j<l-1;j++){
				System.out.print(C[i][j] + " ");
			}
			System.out.println(C[i][l-1]);
		}
	}
} import java.util.Scanner; Scanner java.util public class Main {
	public static void main(String[] args) {
		int n,m,l;
		Scanner scan = new Scanner(System.in);
		n=scan.nextInt();
		m=scan.nextInt();
		l=scan.nextInt();
		int[][] A = new int[n][m];
		int[][] B = new int[m][l];
		long[][] C = new long[n][l];
		
		for(int i=0;i<n;i++)
			for(int j=0;j<m;j++)
				A[i][j]=scan.nextInt();
		
		for(int i=0;i<m;i++)
			for(int j=0;j<l;j++)
				B[i][j]=scan.nextInt();
		
		for(int i=0;i<n;i++)
			for(int j=0;j<l;j++)
				C[i][j]=0;
		
		for(int i=0;i<n;i++){
			for(int j=0;j<l;j++){
				long temp = 0;
				for(int k=0;k<m;k++){
					temp += A[i][k] * B[k][j];
				}
				C[i][j]=temp;
			}
		}
		
		for(int i=0;i<n;i++){
			for(int j=0;j<l-1;j++){
				System.out.print(C[i][j] + " ");
			}
			System.out.println(C[i][l-1]);
		}
	}
} Main public static void main(String[] args) {
		int n,m,l;
		Scanner scan = new Scanner(System.in);
		n=scan.nextInt();
		m=scan.nextInt();
		l=scan.nextInt();
		int[][] A = new int[n][m];
		int[][] B = new int[m][l];
		long[][] C = new long[n][l];
		
		for(int i=0;i<n;i++)
			for(int j=0;j<m;j++)
				A[i][j]=scan.nextInt();
		
		for(int i=0;i<m;i++)
			for(int j=0;j<l;j++)
				B[i][j]=scan.nextInt();
		
		for(int i=0;i<n;i++)
			for(int j=0;j<l;j++)
				C[i][j]=0;
		
		for(int i=0;i<n;i++){
			for(int j=0;j<l;j++){
				long temp = 0;
				for(int k=0;k<m;k++){
					temp += A[i][k] * B[k][j];
				}
				C[i][j]=temp;
			}
		}
		
		for(int i=0;i<n;i++){
			for(int j=0;j<l-1;j++){
				System.out.print(C[i][j] + " ");
			}
			System.out.println(C[i][l-1]);
		}
	} main {
		int n,m,l;
		Scanner scan = new Scanner(System.in);
		n=scan.nextInt();
		m=scan.nextInt();
		l=scan.nextInt();
		int[][] A = new int[n][m];
		int[][] B = new int[m][l];
		long[][] C = new long[n][l];
		
		for(int i=0;i<n;i++)
			for(int j=0;j<m;j++)
				A[i][j]=scan.nextInt();
		
		for(int i=0;i<m;i++)
			for(int j=0;j<l;j++)
				B[i][j]=scan.nextInt();
		
		for(int i=0;i<n;i++)
			for(int j=0;j<l;j++)
				C[i][j]=0;
		
		for(int i=0;i<n;i++){
			for(int j=0;j<l;j++){
				long temp = 0;
				for(int k=0;k<m;k++){
					temp += A[i][k] * B[k][j];
				}
				C[i][j]=temp;
			}
		}
		
		for(int i=0;i<n;i++){
			for(int j=0;j<l-1;j++){
				System.out.print(C[i][j] + " ");
			}
			System.out.println(C[i][l-1]);
		}
	} int n n m m l; l Scanner scan = new Scanner(System.in); scan new Scanner(System.in) n=scan.nextInt() n scan.nextInt() scan.nextInt scan m=scan.nextInt() m scan.nextInt() scan.nextInt scan l=scan.nextInt() l scan.nextInt() scan.nextInt scan int[][] A = new int[n][m]; A new int[n][m] n m int[][] B = new int[m][l]; B new int[m][l] m l long[][] C = new long[n][l]; C new long[n][l] n l for(int i=0;i<n;i++)
			for(int j=0;j<m;j++)
				A[i][j]=scan.nextInt(); int i=0; int i=0; i 0 i<n i n i++ i++ i for(int j=0;j<m;j++)
				A[i][j]=scan.nextInt(); for(int j=0;j<m;j++)
				A[i][j]=scan.nextInt(); int j=0; int j=0; j 0 j<m j m j++ j++ j A[i][j]=scan.nextInt(); A[i][j]=scan.nextInt() A[i][j] A[i] A i j scan.nextInt() scan.nextInt scan for(int i=0;i<m;i++)
			for(int j=0;j<l;j++)
				B[i][j]=scan.nextInt(); int i=0; int i=0; i 0 i<m i m i++ i++ i for(int j=0;j<l;j++)
				B[i][j]=scan.nextInt(); for(int j=0;j<l;j++)
				B[i][j]=scan.nextInt(); int j=0; int j=0; j 0 j<l j l j++ j++ j B[i][j]=scan.nextInt(); B[i][j]=scan.nextInt() B[i][j] B[i] B i j scan.nextInt() scan.nextInt scan for(int i=0;i<n;i++)
			for(int j=0;j<l;j++)
				C[i][j]=0; int i=0; int i=0; i 0 i<n i n i++ i++ i for(int j=0;j<l;j++)
				C[i][j]=0; for(int j=0;j<l;j++)
				C[i][j]=0; int j=0; int j=0; j 0 j<l j l j++ j++ j C[i][j]=0; C[i][j]=0 C[i][j] C[i] C i j 0 for(int i=0;i<n;i++){
			for(int j=0;j<l;j++){
				long temp = 0;
				for(int k=0;k<m;k++){
					temp += A[i][k] * B[k][j];
				}
				C[i][j]=temp;
			}
		} int i=0; int i=0; i 0 i<n i n i++ i++ i {
			for(int j=0;j<l;j++){
				long temp = 0;
				for(int k=0;k<m;k++){
					temp += A[i][k] * B[k][j];
				}
				C[i][j]=temp;
			}
		} {
			for(int j=0;j<l;j++){
				long temp = 0;
				for(int k=0;k<m;k++){
					temp += A[i][k] * B[k][j];
				}
				C[i][j]=temp;
			}
		} for(int j=0;j<l;j++){
				long temp = 0;
				for(int k=0;k<m;k++){
					temp += A[i][k] * B[k][j];
				}
				C[i][j]=temp;
			} int j=0; int j=0; j 0 j<l j l j++ j++ j {
				long temp = 0;
				for(int k=0;k<m;k++){
					temp += A[i][k] * B[k][j];
				}
				C[i][j]=temp;
			} {
				long temp = 0;
				for(int k=0;k<m;k++){
					temp += A[i][k] * B[k][j];
				}
				C[i][j]=temp;
			} long temp = 0; temp 0 for(int k=0;k<m;k++){
					temp += A[i][k] * B[k][j];
				} int k=0; int k=0; k 0 k<m k m k++ k++ k {
					temp += A[i][k] * B[k][j];
				} {
					temp += A[i][k] * B[k][j];
				} temp += A[i][k] * B[k][j] temp A[i][k] * B[k][j] A[i][k] A[i] A i k B[k][j] B[k] B k j C[i][j]=temp C[i][j] C[i] C i j temp for(int i=0;i<n;i++){
			for(int j=0;j<l-1;j++){
				System.out.print(C[i][j] + " ");
			}
			System.out.println(C[i][l-1]);
		} int i=0; int i=0; i 0 i<n i n i++ i++ i {
			for(int j=0;j<l-1;j++){
				System.out.print(C[i][j] + " ");
			}
			System.out.println(C[i][l-1]);
		} {
			for(int j=0;j<l-1;j++){
				System.out.print(C[i][j] + " ");
			}
			System.out.println(C[i][l-1]);
		} for(int j=0;j<l-1;j++){
				System.out.print(C[i][j] + " ");
			} int j=0; int j=0; j 0 j<l-1 j l-1 l 1 j++ j++ j {
				System.out.print(C[i][j] + " ");
			} {
				System.out.print(C[i][j] + " ");
			} System.out.print(C[i][j] + " ") System.out.print System.out System System.out C[i][j] + " " C[i][j] C[i] C i j " " System.out.println(C[i][l-1]) System.out.println System.out System System.out C[i][l-1] C[i] C i l-1 l 1 String[] args args public class Main {
	public static void main(String[] args) {
		int n,m,l;
		Scanner scan = new Scanner(System.in);
		n=scan.nextInt();
		m=scan.nextInt();
		l=scan.nextInt();
		int[][] A = new int[n][m];
		int[][] B = new int[m][l];
		long[][] C = new long[n][l];
		
		for(int i=0;i<n;i++)
			for(int j=0;j<m;j++)
				A[i][j]=scan.nextInt();
		
		for(int i=0;i<m;i++)
			for(int j=0;j<l;j++)
				B[i][j]=scan.nextInt();
		
		for(int i=0;i<n;i++)
			for(int j=0;j<l;j++)
				C[i][j]=0;
		
		for(int i=0;i<n;i++){
			for(int j=0;j<l;j++){
				long temp = 0;
				for(int k=0;k<m;k++){
					temp += A[i][k] * B[k][j];
				}
				C[i][j]=temp;
			}
		}
		
		for(int i=0;i<n;i++){
			for(int j=0;j<l-1;j++){
				System.out.print(C[i][j] + " ");
			}
			System.out.println(C[i][l-1]);
		}
	}
} public class Main {
	public static void main(String[] args) {
		int n,m,l;
		Scanner scan = new Scanner(System.in);
		n=scan.nextInt();
		m=scan.nextInt();
		l=scan.nextInt();
		int[][] A = new int[n][m];
		int[][] B = new int[m][l];
		long[][] C = new long[n][l];
		
		for(int i=0;i<n;i++)
			for(int j=0;j<m;j++)
				A[i][j]=scan.nextInt();
		
		for(int i=0;i<m;i++)
			for(int j=0;j<l;j++)
				B[i][j]=scan.nextInt();
		
		for(int i=0;i<n;i++)
			for(int j=0;j<l;j++)
				C[i][j]=0;
		
		for(int i=0;i<n;i++){
			for(int j=0;j<l;j++){
				long temp = 0;
				for(int k=0;k<m;k++){
					temp += A[i][k] * B[k][j];
				}
				C[i][j]=temp;
			}
		}
		
		for(int i=0;i<n;i++){
			for(int j=0;j<l-1;j++){
				System.out.print(C[i][j] + " ");
			}
			System.out.println(C[i][l-1]);
		}
	}
} Main
import java.util.Scanner;
public class Main {
	public static void main(String[] args) {
		int n,m,l;
		Scanner scan = new Scanner(System.in);
		n=scan.nextInt();
		m=scan.nextInt();
		l=scan.nextInt();
		int[][] A = new int[n][m];
		int[][] B = new int[m][l];
		long[][] C = new long[n][l];
		
		for(int i=0;i<n;i++)
			for(int j=0;j<m;j++)
				A[i][j]=scan.nextInt();
		
		for(int i=0;i<m;i++)
			for(int j=0;j<l;j++)
				B[i][j]=scan.nextInt();
		
		for(int i=0;i<n;i++)
			for(int j=0;j<l;j++)
				C[i][j]=0;
		
		for(int i=0;i<n;i++){
			for(int j=0;j<l;j++){
				long temp = 0;
				for(int k=0;k<m;k++){
					temp += A[i][k] * B[k][j];
				}
				C[i][j]=temp;
			}
		}
		
		for(int i=0;i<n;i++){
			for(int j=0;j<l-1;j++){
				System.out.print(C[i][j] + " ");
			}
			System.out.println(C[i][l-1]);
		}
	}
}
