R, C, M = map(int, input().split())
mat = [list(map(int, input().split())) for _ in range(R)]
ops = list(map(int, input().split()))
def flip(mat):
return mat[::-1]
def rotate_ccw(mat):
R, C = len(mat), len(mat[0])
return [
[mat[i][j] for i in range(R)]
for j in range(C-1, -1, -1)
]
# 反向執行操作
for op in reversed(ops):
if op == 1:
mat = flip(mat)
else: # op == 0
mat = rotate_ccw(mat)
# 輸出
R2, C2 = len(mat), len(mat[0])
print(R2, C2)
for row in mat:
print(' '.join(map(str, row)))