const rl = require("readline").createInterface({ input: process.stdin });
var iter = rl[Symbol.asyncIterator]();
const readline = async () => (await iter.next()).value;

void async function () {
    // Write your code here
    let arr = [];
    while(line = await readline()){
        arr.push(line);
    }
    let x = parseInt(arr[0]),
        y = parseInt(arr[1]),
        z = parseInt(arr[2]);
    
    let juzhen1 = [],juzhen2 = [];
    for(let i=3;i<x+3;i++){
        juzhen1.push(arr[i].split(' '));
    }
    for(let j=3+x;j<arr.length;j++){
        juzhen2.push(arr[j].split(' '));
    }
    let juzhen3 = [] // x行,z列
    for(let i=0;i<x;i++){
        juzhen3[i] = [];
        for(let j=0;j<z;j++){
            let sum = 0;
            for(let k = 0;k<y;k++){
                sum += juzhen1[i][k] * juzhen2[k][j]
            }
            juzhen3[i][j] = sum;
        }
    }
    for(let m=0;m<x;m++){
        console.log(juzhen3[m].join(' '));
    }
}()