n, m = map(int, input().split())
a = list(map(int, input().split()))
to = [[] for _ in range(n)]
for i in range(m):
    u, v = map(int, input().split())
    u -= 1
    v -= 1
    if a[u] < a[v]:
        to[u].append(v)
    if a[v] < a[u]:
        to[v].append(u)
k = int(input())
on = [False] * n
b = list(map(int, input().split()))
for i in b:
    on[i - 1] = True
a_sorted = sorted([(a[i], i) for i in range(n)])
ans = []
for _, i in a_sorted:
    if on[i]:
        ans.append(i)
        for j in to[i]:
            on[j] = not on[j]
print(len(ans))
for x in ans:
    print(x + 1)