#include<stdio.h>
#define SIZE 3
int main(void) {
   
    int m, n, p1, q1, p2, q2, p3, q3, o, x, y, z, s = 0, d = 0, f = 0, g = 0,w1,e1,w2,e2,w3,e3;//定义
    int sum = 0;//求和
    int a[SIZE][SIZE];//3*3的二维数组
    for (m = 0; m < 3; m++) {
   
        for (n = 0; n < 3; n++) {
   
            scanf("%d", &a[m][n]);//遍历数组
        }
    }
    scanf("%d %d", &w1, &e1);//输入刮开的数的位置
    scanf("%d %d", &w2, &e2);
    scanf("%d %d", &w3, &e3);
    p1 = w1-1, q1 = e1-1, p2 = w2-1, q2 = e2-1, p3 = w3-1, q3 = e3-1;//实际数组的坐标位置
    printf("%d\n", a[p1][q1]);//输出刮开数字
    printf("%d\n", a[p2][q2]);
    printf("%d\n", a[p3][q3]);
    x = (1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 + 9) - (a[0][0] + a[0][1] + a[0][2] + a[1][0] + a[1][1] + a[1][2] + a[2][0] + a[2][1] + a[2][2]);//未知数的大小
    for (m = 0; m < SIZE; m++) {
   
        for (n = 0; n < SIZE; n++) {
   //遍历
            if (a[m][n] == 0) {
   如果该数字为0
                y = m;//记录位置
                z = n;
                break;
            }
        }
    }
    a[y][z]=x;被记录的位置为未知数
    
    scanf("%d", &o);//输入计算方向
    switch (o) {
   //不同方向求和
    case 2:
        sum += (a[1][0] + a[1][1] + a[1][2]);
        break;
    case 3:
        sum += (a[2][0] + a[2][1] + a[2][2]);
        break;
        break;
    case 1:
        sum += (a[0][0] + a[0][1] + a[0][2]);
        break;
    case 5:
        sum += (a[0][1] + a[1][1] + a[2][1]);
        break;
    case 6:
        sum += (a[0][2] + a[1][2] + a[2][2]);
        break;
    case 4:
        sum += (a[0][0] + a[1][0] + a[2][0]);
        break;
    case 7:
        sum += (a[0][0] + a[1][1] + a[2][2]);
        break;
    case 8:
        sum += (a[0][2] + a[1][1] + a[2][0]);
        break;
    }
    int k[19][2] = {
   //输入不同数字代表的金币数
        {
   6,10000},
        {
   16,72},
        {
   7,36},
        {
   17,180},
        {
   8,720},
        {
   18,119},
        {
   9,360},
        {
   19,36},
        {
   10,80},
        {
   20,306},
        {
   11,252},
        {
   21,1080},
        {
   12,108},
        {
   22,144},
        {
   13,72},
        {
   23,1800},
        {
   14,54},
        {
   24,3600},
        {
   15,180}
    };
    
    for(int i=0;i<19;i++){
   
        if(k[i][0]==sum){
   //确定金币数
            printf("%d", k[i][1]);
            break;
        }
        if(i==18&&k[i][0]!=sum)//没找到为0
            printf("0");
    }
    return 0;
}