N,M=map(int,input().split()) M2=M*2 ij=[0]*M2 for m in range(M): ij[m]=list(map(int,input().split())) ij[m+M]=ij[m][::-1] vertex_exception=set(map(int,input().split())) for m0 in range(M2): for m1 in range(M2): #辺3本の全探索 for m2 in range(M2): v=[m0,m1,m2] #3本が閉路をなすか判定 if [ij[m][1]for m in v]==[ij[m][0]for m in v[1:]+[m0]]: #頂点が例外でないか判定 if {ij[m][0]for m in v}!=vertex_exception:print("Yes"),exit() continue #辺4本の全探索 for m3 in range(M2): v=[m0,m1,m2,m3] #4本が閉路をなすか判定 if [ij[m][1]for m in v]==[ij[m][0]for m in v[1:]+[m0]] and len({m%M for m in v})==4 and len({ij[m][0]for m in v})==4:print("Yes"),exit() print("No")