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 a[][]=new int [100][100]; int b[][]=new int [100][100]; long c[][]=new long [100][100];
		int i,j,k;
		
		for(i=0;i<n;i++){
			for(j=0;j<m;j++){
				a[i][j]=scan.nextInt();
			}
		}
		
		for(i=0;i<m;i++){
			for(j=0;j<l;j++){
				b[i][j]=scan.nextInt();
			}
		}
		
		for(i=0;i<n;i++){
			for(j=0;j<l;j++){
				c[i][j]=0;
				for(k=0;k<m;k++){
					c[i][j]+=a[i][k]*b[k][j];
				}
			}
		}
		
		for(i=0;i<n;i++){
			for(j=0;j<l-1;j++){
				System.out.printf("%d ",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){
		Scanner scan=new Scanner(System.in);
		int n=scan.nextInt(); int m=scan.nextInt(); int l=scan.nextInt();
		int a[][]=new int [100][100]; int b[][]=new int [100][100]; long c[][]=new long [100][100];
		int i,j,k;
		
		for(i=0;i<n;i++){
			for(j=0;j<m;j++){
				a[i][j]=scan.nextInt();
			}
		}
		
		for(i=0;i<m;i++){
			for(j=0;j<l;j++){
				b[i][j]=scan.nextInt();
			}
		}
		
		for(i=0;i<n;i++){
			for(j=0;j<l;j++){
				c[i][j]=0;
				for(k=0;k<m;k++){
					c[i][j]+=a[i][k]*b[k][j];
				}
			}
		}
		
		for(i=0;i<n;i++){
			for(j=0;j<l-1;j++){
				System.out.printf("%d ",c[i][j]);
			}
			System.out.println(c[i][l-1]);
		}
	}
} 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 a[][]=new int [100][100]; int b[][]=new int [100][100]; long c[][]=new long [100][100];
		int i,j,k;
		
		for(i=0;i<n;i++){
			for(j=0;j<m;j++){
				a[i][j]=scan.nextInt();
			}
		}
		
		for(i=0;i<m;i++){
			for(j=0;j<l;j++){
				b[i][j]=scan.nextInt();
			}
		}
		
		for(i=0;i<n;i++){
			for(j=0;j<l;j++){
				c[i][j]=0;
				for(k=0;k<m;k++){
					c[i][j]+=a[i][k]*b[k][j];
				}
			}
		}
		
		for(i=0;i<n;i++){
			for(j=0;j<l-1;j++){
				System.out.printf("%d ",c[i][j]);
			}
			System.out.println(c[i][l-1]);
		}
	} main {
		Scanner scan=new Scanner(System.in);
		int n=scan.nextInt(); int m=scan.nextInt(); int l=scan.nextInt();
		int a[][]=new int [100][100]; int b[][]=new int [100][100]; long c[][]=new long [100][100];
		int i,j,k;
		
		for(i=0;i<n;i++){
			for(j=0;j<m;j++){
				a[i][j]=scan.nextInt();
			}
		}
		
		for(i=0;i<m;i++){
			for(j=0;j<l;j++){
				b[i][j]=scan.nextInt();
			}
		}
		
		for(i=0;i<n;i++){
			for(j=0;j<l;j++){
				c[i][j]=0;
				for(k=0;k<m;k++){
					c[i][j]+=a[i][k]*b[k][j];
				}
			}
		}
		
		for(i=0;i<n;i++){
			for(j=0;j<l-1;j++){
				System.out.printf("%d ",c[i][j]);
			}
			System.out.println(c[i][l-1]);
		}
	} 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 a[][]=new int [100][100]; a new int [100][100] 100 100 int b[][]=new int [100][100]; b new int [100][100] 100 100 long c[][]=new long [100][100]; c new long [100][100] 100 100 int i i j j k; k for(i=0;i<n;i++){
			for(j=0;j<m;j++){
				a[i][j]=scan.nextInt();
			}
		} i=0; i=0 i 0 i<n i n i++ i++ i {
			for(j=0;j<m;j++){
				a[i][j]=scan.nextInt();
			}
		} {
			for(j=0;j<m;j++){
				a[i][j]=scan.nextInt();
			}
		} for(j=0;j<m;j++){
				a[i][j]=scan.nextInt();
			} j=0; j=0 j 0 j<m j m j++ j++ j {
				a[i][j]=scan.nextInt();
			} {
				a[i][j]=scan.nextInt();
			} a[i][j]=scan.nextInt() a[i][j] a[i] a i j scan.nextInt() scan.nextInt scan for(i=0;i<m;i++){
			for(j=0;j<l;j++){
				b[i][j]=scan.nextInt();
			}
		} i=0; i=0 i 0 i<m i m i++ i++ i {
			for(j=0;j<l;j++){
				b[i][j]=scan.nextInt();
			}
		} {
			for(j=0;j<l;j++){
				b[i][j]=scan.nextInt();
			}
		} for(j=0;j<l;j++){
				b[i][j]=scan.nextInt();
			} j=0; j=0 j 0 j<l j l j++ j++ j {
				b[i][j]=scan.nextInt();
			} {
				b[i][j]=scan.nextInt();
			} b[i][j]=scan.nextInt() b[i][j] b[i] b i j scan.nextInt() scan.nextInt scan for(i=0;i<n;i++){
			for(j=0;j<l;j++){
				c[i][j]=0;
				for(k=0;k<m;k++){
					c[i][j]+=a[i][k]*b[k][j];
				}
			}
		} i=0; i=0 i 0 i<n i n i++ i++ i {
			for(j=0;j<l;j++){
				c[i][j]=0;
				for(k=0;k<m;k++){
					c[i][j]+=a[i][k]*b[k][j];
				}
			}
		} {
			for(j=0;j<l;j++){
				c[i][j]=0;
				for(k=0;k<m;k++){
					c[i][j]+=a[i][k]*b[k][j];
				}
			}
		} for(j=0;j<l;j++){
				c[i][j]=0;
				for(k=0;k<m;k++){
					c[i][j]+=a[i][k]*b[k][j];
				}
			} j=0; j=0 j 0 j<l j l j++ j++ j {
				c[i][j]=0;
				for(k=0;k<m;k++){
					c[i][j]+=a[i][k]*b[k][j];
				}
			} {
				c[i][j]=0;
				for(k=0;k<m;k++){
					c[i][j]+=a[i][k]*b[k][j];
				}
			} c[i][j]=0 c[i][j] c[i] c i j 0 for(k=0;k<m;k++){
					c[i][j]+=a[i][k]*b[k][j];
				} k=0; k=0 k 0 k<m k m k++ k++ k {
					c[i][j]+=a[i][k]*b[k][j];
				} {
					c[i][j]+=a[i][k]*b[k][j];
				} c[i][j]+=a[i][k]*b[k][j] c[i][j] c[i] c i j a[i][k]*b[k][j] a[i][k] a[i] a i k b[k][j] b[k] b k j for(i=0;i<n;i++){
			for(j=0;j<l-1;j++){
				System.out.printf("%d ",c[i][j]);
			}
			System.out.println(c[i][l-1]);
		} i=0; i=0 i 0 i<n i n i++ i++ i {
			for(j=0;j<l-1;j++){
				System.out.printf("%d ",c[i][j]);
			}
			System.out.println(c[i][l-1]);
		} {
			for(j=0;j<l-1;j++){
				System.out.printf("%d ",c[i][j]);
			}
			System.out.println(c[i][l-1]);
		} for(j=0;j<l-1;j++){
				System.out.printf("%d ",c[i][j]);
			} j=0; j=0 j 0 j<l-1 j l-1 l 1 j++ j++ j {
				System.out.printf("%d ",c[i][j]);
			} {
				System.out.printf("%d ",c[i][j]);
			} System.out.printf("%d ",c[i][j]) System.out.printf System.out System System.out "%d " 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){
		Scanner scan=new Scanner(System.in);
		int n=scan.nextInt(); int m=scan.nextInt(); int l=scan.nextInt();
		int a[][]=new int [100][100]; int b[][]=new int [100][100]; long c[][]=new long [100][100];
		int i,j,k;
		
		for(i=0;i<n;i++){
			for(j=0;j<m;j++){
				a[i][j]=scan.nextInt();
			}
		}
		
		for(i=0;i<m;i++){
			for(j=0;j<l;j++){
				b[i][j]=scan.nextInt();
			}
		}
		
		for(i=0;i<n;i++){
			for(j=0;j<l;j++){
				c[i][j]=0;
				for(k=0;k<m;k++){
					c[i][j]+=a[i][k]*b[k][j];
				}
			}
		}
		
		for(i=0;i<n;i++){
			for(j=0;j<l-1;j++){
				System.out.printf("%d ",c[i][j]);
			}
			System.out.println(c[i][l-1]);
		}
	}
} 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 a[][]=new int [100][100]; int b[][]=new int [100][100]; long c[][]=new long [100][100];
		int i,j,k;
		
		for(i=0;i<n;i++){
			for(j=0;j<m;j++){
				a[i][j]=scan.nextInt();
			}
		}
		
		for(i=0;i<m;i++){
			for(j=0;j<l;j++){
				b[i][j]=scan.nextInt();
			}
		}
		
		for(i=0;i<n;i++){
			for(j=0;j<l;j++){
				c[i][j]=0;
				for(k=0;k<m;k++){
					c[i][j]+=a[i][k]*b[k][j];
				}
			}
		}
		
		for(i=0;i<n;i++){
			for(j=0;j<l-1;j++){
				System.out.printf("%d ",c[i][j]);
			}
			System.out.println(c[i][l-1]);
		}
	}
} Main
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 a[][]=new int [100][100]; int b[][]=new int [100][100]; long c[][]=new long [100][100];
		int i,j,k;
		
		for(i=0;i<n;i++){
			for(j=0;j<m;j++){
				a[i][j]=scan.nextInt();
			}
		}
		
		for(i=0;i<m;i++){
			for(j=0;j<l;j++){
				b[i][j]=scan.nextInt();
			}
		}
		
		for(i=0;i<n;i++){
			for(j=0;j<l;j++){
				c[i][j]=0;
				for(k=0;k<m;k++){
					c[i][j]+=a[i][k]*b[k][j];
				}
			}
		}
		
		for(i=0;i<n;i++){
			for(j=0;j<l-1;j++){
				System.out.printf("%d ",c[i][j]);
			}
			System.out.println(c[i][l-1]);
		}
	}
}
