import sys
ans = []
n, m, x, y, c = map(int, sys.stdin.readline().rstrip().split())
graph = []
for i in range(n):
graph.append(list(map(int, sys.stdin.readline().rstrip().split())))
commands = list(map(int, sys.stdin.readline().rstrip().split()))[:]
d = [0] * 7
dx = [0, 0, 0, -1, 1] # 동쪽[1], 서쪽[2], 북쪽[3], 남쪽[4]
dy = [0, 1, -1, 0, 0]
for i in range(c):
for j in range(1, 5):
if commands[i] == j:
nx = x + dx[j]
ny = y + dy[j]
if 0 <= nx < n and 0 <= ny < m:
t1, t2 = d[1], d[2]
t3, t4 = d[3], d[4]
t5, t6 = d[5], d[6]
if j == 1:
d[1], d[2] = t3, t4
d[3], d[4] = t2, t1
elif j == 2:
d[1], d[2] = t4, t3
d[3], d[4] = t1, t2
elif j == 3:
d[1], d[2] = t5, t6
d[5], d[6] = t2, t1
elif j == 4:
d[1], d[2] = t6, t5
d[5], d[6] = t1, t2
if graph[nx][ny] == 0:
graph[nx][ny] = d[2]
else:
d[2] = graph[nx][ny]
graph[nx][ny] = 0
ans.append(d[1])
x, y = nx, ny
for i in ans:
print(i)
# 각 인덱스는 항상 한글로 적힌 면을 나타낸다.
d[1=윗면], d[2=아랫면], d[3=왼쪽면], d[4=오른쪽면], d[5=앞면], d[6=뒷면]
규칙을 찾을 때는 아래와 같은 방식으로 그림을 그려서 규칙을 찾았다.
차례대로 d[i] = i 방식으로 임의의 초기값을 넣는다. (다른 면인 것을 식별할 수 있는 값이라면 i가 아닌 다른 값을 넣어도 상관없음)
동쪽으로 굴린다면 기존의 d[3=왼쪽면]에 해당하는 값이 d[1=윗면]으로 오는 것을 확인할 수 있다.
-> 동쪽으로 굴리는 경우 d[1] = d[3] 수행
반복