#include <bits/stdc++.h>
#define ll long long
#define sti string
#define bit(n,i) ((n>>i) &1)
#define itachi ios_base::sync_with_stdio(0);cin.tie(0);cout.tie(0);
#define maxn 2000005
#define fi first
#define se second
#define i18 __int128_t
using namespace std;
int n,m;
ll f[75][205];
int main()
{
itachi
cin>>n>>m;
for(int i=1;i<=m;i++){
int u,v;
cin>>u>>v;
f[u][0] |= (1LL<<(v-1));
}
for(int j=1;j<=60;j++){
for(int u=1;u<=n;u++){
ll cur=f[u][j-1];
ll mask=0;
while(cur){
int v=__builtin_ctzll(cur);
cur &=(cur-1);
mask |= f[v+1][j-1];
}
f[u][j]=mask;
}
}
int q;cin>>q;
while(q--){
int k; cin>>k;
vector<int> s(k);
for(int i=0;i<k;i++) cin>>s[i];
vector<ll> reach(k);
for(int i=0;i<k;i++) reach[i] = (1LL<<(s[i]-1));
ll meet = (1LL << n) - 1;
for(int i = 0; i < k; i++) meet &= reach[i];
if(meet) { cout << 0 << '\n'; continue; }
ll Time=0;
vector<ll> cur=reach;
for(int b=60;b>=0;b--){
vector<ll> nxt(k,0);
for(int i=0;i<k;i++){
ll curr=cur[i];
ll newmask=0;
while(curr){
int u=__builtin_ctzll(curr);
curr &=(curr-1);
newmask |= f[u+1][b];
}
nxt[i]=newmask;
}
ll meet=-1;
for(int i=0;i<k;i++) meet &= nxt[i];
if(meet==0){
Time+=(1LL<<b);
cur.swap(nxt);
}
}
vector<ll> nxt(k);
for(int i = 0; i < k; i++) {
ll mask = cur[i], newmask = 0;
while(mask) {
int u = __builtin_ctzll(mask);
mask &= (mask-1);
newmask |= f[u+1][0];
}
nxt[i] = newmask;
}
meet = (1LL << n) - 1;
for(int i = 0; i < k; i++) meet &= nxt[i];
if(meet) cout << Time + 1 << '\n';
else cout << -1 << '\n';
}
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CiNkZWZpbmUgbGwgbG9uZyBsb25nCiNkZWZpbmUgc3RpIHN0cmluZwojZGVmaW5lIGJpdChuLGkpICgobj4+aSkgJjEpCiNkZWZpbmUgaXRhY2hpIGlvc19iYXNlOjpzeW5jX3dpdGhfc3RkaW8oMCk7Y2luLnRpZSgwKTtjb3V0LnRpZSgwKTsKI2RlZmluZSBtYXhuIDIwMDAwMDUKI2RlZmluZSBmaSBmaXJzdAojZGVmaW5lIHNlIHNlY29uZAojZGVmaW5lIGkxOCBfX2ludDEyOF90CgoKdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCmludCBuLG07CmxsIGZbNzVdWzIwNV07CgppbnQgbWFpbigpCnsKICAgIGl0YWNoaQogICAgY2luPj5uPj5tOwogICAgZm9yKGludCBpPTE7aTw9bTtpKyspewogICAgICAgIGludCB1LHY7CiAgICAgICAgY2luPj51Pj52OwogICAgICAgIGZbdV1bMF0gfD0gKDFMTDw8KHYtMSkpOwogICAgfQogICAgZm9yKGludCBqPTE7ajw9NjA7aisrKXsKICAgICAgICBmb3IoaW50IHU9MTt1PD1uO3UrKyl7CiAgICAgICAgICAgIGxsIGN1cj1mW3VdW2otMV07CiAgICAgICAgICAgIGxsIG1hc2s9MDsKICAgICAgICAgICAgd2hpbGUoY3VyKXsKICAgICAgICAgICAgICAgIGludCB2PV9fYnVpbHRpbl9jdHpsbChjdXIpOwogICAgICAgICAgICAgICAgY3VyICY9KGN1ci0xKTsKICAgICAgICAgICAgICAgIG1hc2sgfD0gZlt2KzFdW2otMV07CiAgICAgICAgICAgIH0KICAgICAgICAgICAgZlt1XVtqXT1tYXNrOwogICAgICAgIH0KICAgIH0KCiAgICBpbnQgcTtjaW4+PnE7CiAgICB3aGlsZShxLS0pewogICAgICAgIGludCBrOyBjaW4+Pms7CiAgICAgICAgdmVjdG9yPGludD4gcyhrKTsKICAgICAgICBmb3IoaW50IGk9MDtpPGs7aSsrKSBjaW4+PnNbaV07CiAgICAgICAgdmVjdG9yPGxsPiByZWFjaChrKTsKICAgICAgICBmb3IoaW50IGk9MDtpPGs7aSsrKSByZWFjaFtpXSA9ICgxTEw8PChzW2ldLTEpKTsKICAgICAgICBsbCBtZWV0ID0gKDFMTCA8PCBuKSAtIDE7CiAgICAgICAgZm9yKGludCBpID0gMDsgaSA8IGs7IGkrKykgbWVldCAmPSByZWFjaFtpXTsKICAgICAgICBpZihtZWV0KSB7IGNvdXQgPDwgMCA8PCAnXG4nOyBjb250aW51ZTsgfQogICAgICAgIGxsIFRpbWU9MDsKICAgICAgICB2ZWN0b3I8bGw+IGN1cj1yZWFjaDsKICAgICAgICBmb3IoaW50IGI9NjA7Yj49MDtiLS0pewogICAgICAgICAgICB2ZWN0b3I8bGw+IG54dChrLDApOwogICAgICAgICAgICBmb3IoaW50IGk9MDtpPGs7aSsrKXsKICAgICAgICAgICAgICAgIGxsIGN1cnI9Y3VyW2ldOwogICAgICAgICAgICAgICAgbGwgbmV3bWFzaz0wOwogICAgICAgICAgICAgICAgd2hpbGUoY3Vycil7CiAgICAgICAgICAgICAgICAgICAgaW50IHU9X19idWlsdGluX2N0emxsKGN1cnIpOwogICAgICAgICAgICAgICAgICAgIGN1cnIgJj0oY3Vyci0xKTsKICAgICAgICAgICAgICAgICAgICBuZXdtYXNrIHw9IGZbdSsxXVtiXTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIG54dFtpXT1uZXdtYXNrOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGxsIG1lZXQ9LTE7CiAgICAgICAgICAgIGZvcihpbnQgaT0wO2k8aztpKyspIG1lZXQgJj0gbnh0W2ldOwogICAgICAgICAgICBpZihtZWV0PT0wKXsKICAgICAgICAgICAgICAgVGltZSs9KDFMTDw8Yik7CiAgICAgICAgICAgICAgIGN1ci5zd2FwKG54dCk7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgdmVjdG9yPGxsPiBueHQoayk7CiAgICAgICAgZm9yKGludCBpID0gMDsgaSA8IGs7IGkrKykgewogICAgICAgICAgICBsbCBtYXNrID0gY3VyW2ldLCBuZXdtYXNrID0gMDsKICAgICAgICAgICAgd2hpbGUobWFzaykgewogICAgICAgICAgICAgICAgaW50IHUgPSBfX2J1aWx0aW5fY3R6bGwobWFzayk7CiAgICAgICAgICAgICAgICBtYXNrICY9IChtYXNrLTEpOwogICAgICAgICAgICAgICAgbmV3bWFzayB8PSBmW3UrMV1bMF07CiAgICAgICAgICAgIH0KICAgICAgICAgICAgbnh0W2ldID0gbmV3bWFzazsKICAgICAgICB9CgogICAgICAgIG1lZXQgPSAoMUxMIDw8IG4pIC0gMTsKICAgICAgICBmb3IoaW50IGkgPSAwOyBpIDwgazsgaSsrKSBtZWV0ICY9IG54dFtpXTsKCiAgICAgICAgaWYobWVldCkgY291dCA8PCBUaW1lICsgMSA8PCAnXG4nOwogICAgICAgIGVsc2UgY291dCA8PCAtMSA8PCAnXG4nOwogICAgfQogICAgcmV0dXJuIDA7Cn0K