#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
const int N = 201000;
int n,m,q,a[N];
int main()
{
cin>>n>>m>>q;
for(int i=1;i<=n;i++) a[i]=i;//图的基本预处理
for(int i=1;i<=m;i++)//传送门的起点和终点联系起来
{
int l,r;
cin>>l>>r;
a[l]=r;
a[r]=l;
}
for(int i=1;i<=q;i++)
{
int x;
cin>>x;
a[x]=0;
}
int p=0;
while(p<=n)
{
p++;
p=a[p];
if(p==n)//到了终点
{
cout<<"YES\n";
break;
}
if(p==0)//遇到墙了,但没有传送门
{
cout<<"NO\n";
break;
}
}
return 0;
}