/**
* Author: Sergey Kopeliovich (Burunduk30@gmail.com)
*/
#include <cstdio>
#include <cassert>
#include <iostream>
using namespace std;
#define forn(i, n) for (int i = 0; i < (int)(n); i++)
int main() {
#define NAME "easymul"
assert(freopen(NAME ".in", "r", stdin));
assert(freopen(NAME ".out", "w", stdout));
int n, m, k;
cin >> n >> m >> k;
int a[n][m], b[m][k];
forn(i, n)
forn(j, m)
cin >> a[i][j];
forn(i, m)
forn(j, k)
cin >> b[i][j];
forn(i, n)
forn(j, k) {
int c = 0;
forn(t, m)
c += a[i][t] * b[t][j];
cout << c << " \n"[j == k - 1];
}
return 0;
}