#Напишите программу, на вход которой подаётся прямоугольная матрица в виде последовательности строк, заканчивающихся строкой,
# содержащей только строку "end" (без кавычек)
#Программа должна вывести матрицу того же размера, у которой каждый элемент в позиции i, j
#равен сумме элементов первой матрицы на позициях (i-1, j), (i+1, j), (i, j-1), (i, j+1).
#У крайних символов соседний элемент находится с противоположной стороны матрицы.
string = input()
a = []
while string != 'end':#цикл для создания списка, если вводят end, то цикл заканчивается
    a.append([int(i) for i in string.split()])
    string = input()
b = [[0 for j in range(len(a[0]))] for i in range(len(a))]#создаем такую же матрицу из нулей, чтобы потом её заполнить
for i in range(len(a)):#считываем строки
    if (i+1) == len(a):#проверка на допустимое кол-во строк
        for j in range(len(a[0])):#считываем столбцы
            if (j+1) == len(a[0]):#проверка на допустимое кол-во столбцов
                b[i][j] = a[i - 1][j] + a[0][j] + a[i][j - 1]  + a[i][0]
                print(b[i][j], end=' ')
            else:
                b[i][j] = a[i - 1][j] + a[0][j] + a[i][j - 1]  + a[i][j + 1]
                print(b[i][j], end=' ')
        print()
    else:
        for j in range(len(a[0])):#считываем столбцы
            if (j+1) == len(a[0]):#проверяем
                b[i][j] = a[i - 1][j] + a[i + 1][j] + a[i][j - 1]  + a[i][0]
                print(b[i][j], end=' ')
            else:
                b[i][j] = a[i - 1][j] + a[i + 1][j] + a[i][j - 1]  + a[i][j + 1]
                print(b[i][j], end=' ')
        print()