N,M = map(int,raw_input().split()) a = map(int,raw_input().split()) b = [[[],[]] for i in range(N)] flag=False for i in range(M): u,v = map(int,raw_input().split()) if a[u-1]=2 or len(b[v-1][0])>=2: flag=True break elif a[u-1]>a[v-1]: if not u-1 in b[v-1][1]: b[v-1][1].append(u-1) b[u-1][0].append(v-1) if len(b[u-1][0])>=2 or len(b[v-1][1])>=2: flag=True break if flag: print("Yes") else: print("No")