まず、クエリを処理し終えたGGについて答えを求めます。(このときの答えがansQans_Qです。) このGGから逆順にクエリを処理することを考えると 辺を取り除く操作は、辺を追加する操作になり、Union-Find を用いることができます。 クエリの処理は以下のように行います。


頂点aia_iと頂点bib_iを、i=Qi=Qからi=1i=1に逆順で結ぶことを考えるとき

(1)頂点aia_iと頂点bib_iが既に連結であるとき

ansi1ans_{i-1}ansians_{i}
頂点aia_iと頂点bib_iを結ぶ。

(2)頂点aia_iと頂点bib_iが、連結ではないとき

頂点aia_iの属する連結成分の大きさをaa、頂点bib_iの属する連結成分の大きさをbbとしたとき、
ansi1ans_{i-1}ansi×(a+b)/(a×b)ans_{i}\times (a+b) / (a\times b)
頂点aia_iと頂点bib_iを結ぶ。


実際に答えを求めるときは、割る操作はmod 109+7mod\ 10^9+7における逆元をかける操作になることに注意して下さい。