#include using namespace std; #define rep(i,n) for (int i = 0; i < (n); ++i) #define Inf 1000000000 vector bfs(vector> E,int start){ vector dis(E.size(),Inf); dis[start] = 0; queue Q; Q.push(start); while(Q.size()>0){ int u = Q.front(); Q.pop(); rep(i,E[u].size()){ int v = E[u][i]; if(dis[v]!=Inf)continue; dis[v] = dis[u]+1; Q.push(v); } } return dis; } int main(){ int N,M; cin>>N>>M; vector> E(N,vector()); rep(i,M){ int p,q; scanf("%d %d",&p,&q); p--;q--; E[p].push_back(q); E[q].push_back(p); } int Q; cin>>Q; rep(i,Q){ int A; cin>>A; vector ret = bfs(E,A-1); int ans = 0; int maxi = 0; rep(i,ret.size()){ if(ret[i]==Inf)continue; ans++; maxi = max(maxi,ret[i]); } ans--; cout<1){ ans++; maxi = (maxi+1)/2; } cout<