# 기본 입력부분입니다 
# N, stmp, k를 입력받습니다.

N = int(input())
stmp = []
for i in range(N):
    stmp.append(list(map(int,input().split(' '))))
k = int(input())

def solution(stmp,n):
    N = len(stmp)
    # 0으로 만들어진 배열 생성 
    # [[0]*N]*N으로 하면 안됨!!!!
    p = [[0] * N for _ in range(N)]
    
    # 회전시키기 전 최초 1번찍어주기
    p = sum_matrix(p,stmp)
    #회전시키며 도장찍기
    for i in range(n):
        stmp = rotate(stmp)
        p=sum_matrix(p,stmp)
    return p

#배열(도장) 회전시키기
def rotate(stmp):
    N = len(stmp)
    rot = [[0] * N for _ in range(N)]
    
    for i in range(N):
        for j in range(N):
            rot[j][N-1-i] = stmp[i][j]
    return rot

#행렬 더하기 즉 도장이 찍히는 정도를 더한다.
def sum_matrix(p,stmp):
    for i in range(len(p)):
        for j in range(len(p[0])):
            p[i][j] = p[i][j]+stmp[i][j]
    return p

print(solution(stmp,k))