#include using namespace std; using ll=long long; #include using atcoder::dsu; int main(){ ll n,m; cin>>n>>m; vector u(m),v(m); for(int i=0;i>u[i]>>v[i]; u[i]--;v[i]--; } int q; cin>>q; vector b(q); for(int i=0;i>b[i],b[i]--; set s; for(int i=0;i ans(q); dsu uf(n); ll now=n*(n-1)/2; for(int i=0;i=0;i--){ ans[i]=now; int x=uf.leader(u[b[i]]),y=uf.leader(v[b[i]]); if(x!=y){ now-=uf.size(x)*(ll)uf.size(y); uf.merge(x,y); } } for(int i=0;i