#include <bits/stdc++.h>
#include <atcoder/all>
using namespace std;

int main(){
    ios::sync_with_stdio(false);
    cin.tie(0);
    int n, m, s, g, u, v;
    cin >> n >> m >> s >> g;
    vector<pair<int,int>> edge(m);
    vector<bool> ban(n);
    for(int i = 0; i < m; i++){
        cin >> u >> v;
        edge[i] = {--u, --v};
    }
    cin >> u;
    while(cin >> v) ban[--v] = true;
    atcoder::dsu uf(n);
    for(int i = 0; i < m; i++){
        tie(u, v) = edge[i];
        if(ban[u] || ban[v]) continue;
        uf.merge(u, v);
    }
    cout << (uf.same(--s, --g) ? "Yes" : "No") << '\n';
}