#include using namespace std; using ll =long long; #include using namespace atcoder; void solve(){ ll N,M; cin>>N>>M; vector E(M,1e18); vector> D(M); for(int i=0;i>u>>v; D[i]={u-1,v-1}; } ll Q; cin>>Q; vector H(Q); for(int q=0;q>H[q]; H[q]--; E[H[q]]=q; } dsu d(N); ll mg=0; for(int i=0;i1e17){ auto [u,v]=D[i]; if(d.same(u,v))continue; mg+=ll(d.size(u))*ll(d.size(v)); d.merge(u,v); } } vector AN(Q); for(int q=Q-1;q>=0;q--){ AN[q]=N*(N-1)/2-mg; auto [u,v]=D[H[q]]; if(d.same(u,v))continue; mg+=ll(d.size(u))*ll(d.size(v)); d.merge(u,v); } for(int q=0;q>T; while(T--)solve(); }