import sys
start = sys.stdin.read()
start = start.splitlines()
new_start = []
for i in start:
new_start.append(i.split())
data = new_start[0]
operate = new_start[-1]
operate = [int(x) for x in operate]
del new_start[0]
del new_start[-1]
#new_start 矩陣
new_start_one = []
new_start_two = []
for i in range(len(operate)):
if operate[-1-i] == 0:
for j in range(len(new_start[0])):
for k in range(len(new_start)):
new_start_one.append(new_start[k][-1-j])
new_start_two.append(new_start_one)
new_start_one = []
new_start = new_start_two
elif operate[-1-i] == 1:
for j in range(len(new_start)):
new_start_one.append(new_start[-1-j])
new_start = new_start_one
new_start_one = []
new_start_two = []
print(len(new_start),len(new_start[1]))
for i in range(len(new_start)):
print(*new_start[i])
python的註釋是用#不是用//,我不確定是不是這個原因,但刪掉就可以用了,應該也可以用過濾的方法