## https://yukicoder.me/problems/no/2948 def main(): N, M, K = map(int, input().split()) X = list(map(int, input().split())) next_nodes = [[] for _ in range(N)] for _ in range(M): u, v = map(int, input().split()) next_nodes[u - 1].append(v - 1) next_nodes[v - 1].append(u - 1) x_set = set(X) answer_list = [[0] * N for _ in range(N + 1)] for x in x_set: current_pos = [0] * N current_pos[x - 1] = 1 for n in range(N): for i in range(N): answer_list[n][i] += current_pos[i] next_pos = [0] * N for i in range(N): if current_pos[i] == 1: for j in next_nodes[i]: next_pos[j] = 1 current_pos = next_pos for i in range(N + 1): for j in range(N): if answer_list[i][j] == len(x_set): print("Yes") return print("No") if __name__ == "__main__": main()