import java.util.Arrays;
import java.util.Scanner;



public class Main{
	public static void main(String[] args){
		Scanner scan=new Scanner(System.in);
		int n=scan.nextInt();
		int m=scan.nextInt();
		int l=scan.nextInt();

		int[][] matrix_nm=new int[n][m];
		int[][] matrix_ml=new int[m][l];
		long[][] matrix_nl=new long[n][l];

		for(int i=0;i<n;i++){
		Arrays.fill(matrix_nl[i], 0);
		}//???????????????0??§?????????

		for(int i=0;i<n;i++){
			for(int j=0;j<m;j++){
				matrix_nm[i][j]=scan.nextInt();
			}
		}

		for(int i=0;i<m;i++){
			for(int j=0;j<l;j++){
				matrix_ml[i][j]=scan.nextInt();
			}
		}

		for(int i=0;i<n;i++){
			for(int j=0;j<l;j++){
				for(int k=0;k<m;k++){
				matrix_nl[i][j]+=(matrix_nm[i][k])*(matrix_ml[k][j]);//??£??\??????????????°????????????
				}
			}
		}

		for(int i=0;i<n;i++){
			for(int j=0;j<l;j++){
				System.out.print(matrix_nl[i][j]);
				if(j<l-1){System.out.print(" ");}
			}System.out.println();
		}


		scan.close();
}


} import java.util.Arrays; Arrays java.util import java.util.Scanner; Scanner java.util public class Main{
	public static void main(String[] args){
		Scanner scan=new Scanner(System.in);
		int n=scan.nextInt();
		int m=scan.nextInt();
		int l=scan.nextInt();

		int[][] matrix_nm=new int[n][m];
		int[][] matrix_ml=new int[m][l];
		long[][] matrix_nl=new long[n][l];

		for(int i=0;i<n;i++){
		Arrays.fill(matrix_nl[i], 0);
		}//???????????????0??§?????????

		for(int i=0;i<n;i++){
			for(int j=0;j<m;j++){
				matrix_nm[i][j]=scan.nextInt();
			}
		}

		for(int i=0;i<m;i++){
			for(int j=0;j<l;j++){
				matrix_ml[i][j]=scan.nextInt();
			}
		}

		for(int i=0;i<n;i++){
			for(int j=0;j<l;j++){
				for(int k=0;k<m;k++){
				matrix_nl[i][j]+=(matrix_nm[i][k])*(matrix_ml[k][j]);//??£??\??????????????°????????????
				}
			}
		}

		for(int i=0;i<n;i++){
			for(int j=0;j<l;j++){
				System.out.print(matrix_nl[i][j]);
				if(j<l-1){System.out.print(" ");}
			}System.out.println();
		}


		scan.close();
}


} Main public static void main(String[] args){
		Scanner scan=new Scanner(System.in);
		int n=scan.nextInt();
		int m=scan.nextInt();
		int l=scan.nextInt();

		int[][] matrix_nm=new int[n][m];
		int[][] matrix_ml=new int[m][l];
		long[][] matrix_nl=new long[n][l];

		for(int i=0;i<n;i++){
		Arrays.fill(matrix_nl[i], 0);
		}//???????????????0??§?????????

		for(int i=0;i<n;i++){
			for(int j=0;j<m;j++){
				matrix_nm[i][j]=scan.nextInt();
			}
		}

		for(int i=0;i<m;i++){
			for(int j=0;j<l;j++){
				matrix_ml[i][j]=scan.nextInt();
			}
		}

		for(int i=0;i<n;i++){
			for(int j=0;j<l;j++){
				for(int k=0;k<m;k++){
				matrix_nl[i][j]+=(matrix_nm[i][k])*(matrix_ml[k][j]);//??£??\??????????????°????????????
				}
			}
		}

		for(int i=0;i<n;i++){
			for(int j=0;j<l;j++){
				System.out.print(matrix_nl[i][j]);
				if(j<l-1){System.out.print(" ");}
			}System.out.println();
		}


		scan.close();
} main {
		Scanner scan=new Scanner(System.in);
		int n=scan.nextInt();
		int m=scan.nextInt();
		int l=scan.nextInt();

		int[][] matrix_nm=new int[n][m];
		int[][] matrix_ml=new int[m][l];
		long[][] matrix_nl=new long[n][l];

		for(int i=0;i<n;i++){
		Arrays.fill(matrix_nl[i], 0);
		}//???????????????0??§?????????

		for(int i=0;i<n;i++){
			for(int j=0;j<m;j++){
				matrix_nm[i][j]=scan.nextInt();
			}
		}

		for(int i=0;i<m;i++){
			for(int j=0;j<l;j++){
				matrix_ml[i][j]=scan.nextInt();
			}
		}

		for(int i=0;i<n;i++){
			for(int j=0;j<l;j++){
				for(int k=0;k<m;k++){
				matrix_nl[i][j]+=(matrix_nm[i][k])*(matrix_ml[k][j]);//??£??\??????????????°????????????
				}
			}
		}

		for(int i=0;i<n;i++){
			for(int j=0;j<l;j++){
				System.out.print(matrix_nl[i][j]);
				if(j<l-1){System.out.print(" ");}
			}System.out.println();
		}


		scan.close();
} Scanner scan=new Scanner(System.in); scan new Scanner(System.in) int n=scan.nextInt(); n scan.nextInt() scan.nextInt scan int m=scan.nextInt(); m scan.nextInt() scan.nextInt scan int l=scan.nextInt(); l scan.nextInt() scan.nextInt scan int[][] matrix_nm=new int[n][m]; matrix_nm new int[n][m] n m int[][] matrix_ml=new int[m][l]; matrix_ml new int[m][l] m l long[][] matrix_nl=new long[n][l]; matrix_nl new long[n][l] n l for(int i=0;i<n;i++){
		Arrays.fill(matrix_nl[i], 0);
		}//???????????????0??§????????? int i=0; int i=0; i 0 i<n i n i++ i++ i {
		Arrays.fill(matrix_nl[i], 0);
		}//???????????????0??§????????? {
		Arrays.fill(matrix_nl[i], 0);
		} Arrays.fill(matrix_nl[i], 0) Arrays.fill Arrays matrix_nl[i] matrix_nl i 0 for(int i=0;i<n;i++){
			for(int j=0;j<m;j++){
				matrix_nm[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++){
				matrix_nm[i][j]=scan.nextInt();
			}
		} {
			for(int j=0;j<m;j++){
				matrix_nm[i][j]=scan.nextInt();
			}
		} for(int j=0;j<m;j++){
				matrix_nm[i][j]=scan.nextInt();
			} int j=0; int j=0; j 0 j<m j m j++ j++ j {
				matrix_nm[i][j]=scan.nextInt();
			} {
				matrix_nm[i][j]=scan.nextInt();
			} matrix_nm[i][j]=scan.nextInt() matrix_nm[i][j] matrix_nm[i] matrix_nm i j scan.nextInt() scan.nextInt scan for(int i=0;i<m;i++){
			for(int j=0;j<l;j++){
				matrix_ml[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++){
				matrix_ml[i][j]=scan.nextInt();
			}
		} {
			for(int j=0;j<l;j++){
				matrix_ml[i][j]=scan.nextInt();
			}
		} for(int j=0;j<l;j++){
				matrix_ml[i][j]=scan.nextInt();
			} int j=0; int j=0; j 0 j<l j l j++ j++ j {
				matrix_ml[i][j]=scan.nextInt();
			} {
				matrix_ml[i][j]=scan.nextInt();
			} matrix_ml[i][j]=scan.nextInt() matrix_ml[i][j] matrix_ml[i] matrix_ml i j scan.nextInt() scan.nextInt scan for(int i=0;i<n;i++){
			for(int j=0;j<l;j++){
				for(int k=0;k<m;k++){
				matrix_nl[i][j]+=(matrix_nm[i][k])*(matrix_ml[k][j]);//??£??\??????????????°????????????
				}
			}
		} int i=0; int i=0; i 0 i<n i n i++ i++ i {
			for(int j=0;j<l;j++){
				for(int k=0;k<m;k++){
				matrix_nl[i][j]+=(matrix_nm[i][k])*(matrix_ml[k][j]);//??£??\??????????????°????????????
				}
			}
		} {
			for(int j=0;j<l;j++){
				for(int k=0;k<m;k++){
				matrix_nl[i][j]+=(matrix_nm[i][k])*(matrix_ml[k][j]);//??£??\??????????????°????????????
				}
			}
		} for(int j=0;j<l;j++){
				for(int k=0;k<m;k++){
				matrix_nl[i][j]+=(matrix_nm[i][k])*(matrix_ml[k][j]);//??£??\??????????????°????????????
				}
			} int j=0; int j=0; j 0 j<l j l j++ j++ j {
				for(int k=0;k<m;k++){
				matrix_nl[i][j]+=(matrix_nm[i][k])*(matrix_ml[k][j]);//??£??\??????????????°????????????
				}
			} {
				for(int k=0;k<m;k++){
				matrix_nl[i][j]+=(matrix_nm[i][k])*(matrix_ml[k][j]);//??£??\??????????????°????????????
				}
			} for(int k=0;k<m;k++){
				matrix_nl[i][j]+=(matrix_nm[i][k])*(matrix_ml[k][j]);//??£??\??????????????°????????????
				} int k=0; int k=0; k 0 k<m k m k++ k++ k {
				matrix_nl[i][j]+=(matrix_nm[i][k])*(matrix_ml[k][j]);//??£??\??????????????°????????????
				} {
				matrix_nl[i][j]+=(matrix_nm[i][k])*(matrix_ml[k][j]);//??£??\??????????????°????????????
				} matrix_nl[i][j]+=(matrix_nm[i][k])*(matrix_ml[k][j]) matrix_nl[i][j] matrix_nl[i] matrix_nl i j (matrix_nm[i][k])*(matrix_ml[k][j]) (matrix_nm[i][k]) matrix_nm[i] matrix_nm i k (matrix_ml[k][j]) matrix_ml[k] matrix_ml k j for(int i=0;i<n;i++){
			for(int j=0;j<l;j++){
				System.out.print(matrix_nl[i][j]);
				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++){
				System.out.print(matrix_nl[i][j]);
				if(j<l-1){System.out.print(" ");}
			}System.out.println();
		} {
			for(int j=0;j<l;j++){
				System.out.print(matrix_nl[i][j]);
				if(j<l-1){System.out.print(" ");}
			}System.out.println();
		} for(int j=0;j<l;j++){
				System.out.print(matrix_nl[i][j]);
				if(j<l-1){System.out.print(" ");}
			} int j=0; int j=0; j 0 j<l j l j++ j++ j {
				System.out.print(matrix_nl[i][j]);
				if(j<l-1){System.out.print(" ");}
			} {
				System.out.print(matrix_nl[i][j]);
				if(j<l-1){System.out.print(" ");}
			} System.out.print(matrix_nl[i][j]) System.out.print System.out System System.out matrix_nl[i][j] matrix_nl[i] matrix_nl i j if(j<l-1){System.out.print(" ");} j<l-1 j l-1 l 1 {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 scan.close() scan.close scan String[] args args public class Main{
	public static void main(String[] args){
		Scanner scan=new Scanner(System.in);
		int n=scan.nextInt();
		int m=scan.nextInt();
		int l=scan.nextInt();

		int[][] matrix_nm=new int[n][m];
		int[][] matrix_ml=new int[m][l];
		long[][] matrix_nl=new long[n][l];

		for(int i=0;i<n;i++){
		Arrays.fill(matrix_nl[i], 0);
		}//???????????????0??§?????????

		for(int i=0;i<n;i++){
			for(int j=0;j<m;j++){
				matrix_nm[i][j]=scan.nextInt();
			}
		}

		for(int i=0;i<m;i++){
			for(int j=0;j<l;j++){
				matrix_ml[i][j]=scan.nextInt();
			}
		}

		for(int i=0;i<n;i++){
			for(int j=0;j<l;j++){
				for(int k=0;k<m;k++){
				matrix_nl[i][j]+=(matrix_nm[i][k])*(matrix_ml[k][j]);//??£??\??????????????°????????????
				}
			}
		}

		for(int i=0;i<n;i++){
			for(int j=0;j<l;j++){
				System.out.print(matrix_nl[i][j]);
				if(j<l-1){System.out.print(" ");}
			}System.out.println();
		}


		scan.close();
}


} public class Main{
	public static void main(String[] args){
		Scanner scan=new Scanner(System.in);
		int n=scan.nextInt();
		int m=scan.nextInt();
		int l=scan.nextInt();

		int[][] matrix_nm=new int[n][m];
		int[][] matrix_ml=new int[m][l];
		long[][] matrix_nl=new long[n][l];

		for(int i=0;i<n;i++){
		Arrays.fill(matrix_nl[i], 0);
		}//???????????????0??§?????????

		for(int i=0;i<n;i++){
			for(int j=0;j<m;j++){
				matrix_nm[i][j]=scan.nextInt();
			}
		}

		for(int i=0;i<m;i++){
			for(int j=0;j<l;j++){
				matrix_ml[i][j]=scan.nextInt();
			}
		}

		for(int i=0;i<n;i++){
			for(int j=0;j<l;j++){
				for(int k=0;k<m;k++){
				matrix_nl[i][j]+=(matrix_nm[i][k])*(matrix_ml[k][j]);//??£??\??????????????°????????????
				}
			}
		}

		for(int i=0;i<n;i++){
			for(int j=0;j<l;j++){
				System.out.print(matrix_nl[i][j]);
				if(j<l-1){System.out.print(" ");}
			}System.out.println();
		}


		scan.close();
}


} Main
import java.util.Arrays;
import java.util.Scanner;



public class Main{
	public static void main(String[] args){
		Scanner scan=new Scanner(System.in);
		int n=scan.nextInt();
		int m=scan.nextInt();
		int l=scan.nextInt();

		int[][] matrix_nm=new int[n][m];
		int[][] matrix_ml=new int[m][l];
		long[][] matrix_nl=new long[n][l];

		for(int i=0;i<n;i++){
		Arrays.fill(matrix_nl[i], 0);
		}//???????????????0??§?????????

		for(int i=0;i<n;i++){
			for(int j=0;j<m;j++){
				matrix_nm[i][j]=scan.nextInt();
			}
		}

		for(int i=0;i<m;i++){
			for(int j=0;j<l;j++){
				matrix_ml[i][j]=scan.nextInt();
			}
		}

		for(int i=0;i<n;i++){
			for(int j=0;j<l;j++){
				for(int k=0;k<m;k++){
				matrix_nl[i][j]+=(matrix_nm[i][k])*(matrix_ml[k][j]);//??£??\??????????????°????????????
				}
			}
		}

		for(int i=0;i<n;i++){
			for(int j=0;j<l;j++){
				System.out.print(matrix_nl[i][j]);
				if(j<l-1){System.out.print(" ");}
			}System.out.println();
		}


		scan.close();
}


}