#include <iostream>
using namespace std;

struct matrix{
    int Matrix[3][3];
    int row,col;
    matrix(int r,int c):row(r),col(c){};
};

matrix Multiply(matrix A,matrix B){
    matrix answer(A.row,B.col);
    for(int i=0;i<answer.row;i++){
        for(int j=0;j<answer.col;j++){
            answer.Matrix[i][j]=0;
            for(int k=0;k<A.col;k++){
                answer.Matrix[i][j]+=A.Matrix[i][k]*B.Matrix[k][j];
            }
        }
    }
    return answer;

}
int main() {
    matrix A(2,3);
    matrix B(3,2);
    for(int i=0;i<2;i++){
        cin>>A.Matrix[i][0]>>A.Matrix[i][1]>>A.Matrix[i][2];
    }
    for(int i=0;i<3;i++){
        cin>>B.Matrix[i][0]>>B.Matrix[i][1];
    }
    matrix res = Multiply(A, B);
    for(int i=0;i<res.row;i++){
        for(int j=0;j<res.col;j++){
            cout<<res.Matrix[i][j]<<" ";
        }
        cout<<endl;
    }
    return 0;
}