Kittinin zirvədən ibarət bir ağacı var və zirvələr -dən -ə qədər nömrələnib. Dostu Aleks ona hər biri zirvələr dəstindən ibarət olan dəst verib. Kitti hər dəst üçün aşağıdakı ifadəni hesablamalıdır:
burada:
dəstdən olan zirvələrin qeyri-sıralı cütünü göstərir.
dist(u, v) və zirvələri arasında unikal (ən qısa) yol üzərindəki kənarların sayını göstərir.
Verilmiş ağacı və fərqli zirvə dəstləri üçün hər dəst üçün ifadənin dəyərini hesablayın. İfadənin dəyəri hər test üçün yeni sətirdə 10^9 + 7 modulu ilə çıxarılmalıdır.
Birinci sətir ağacında zirvələrin sayı n~(1 \le n \le 2 \cdot 10^5) və sorğuların sayı q~(1 \le q \le 10^5) olan iki tam ədəd ehtiva edir.
Sonrakı n - 1 sətirin hər biri iki tam ədəd və b~(1 \le a, b \le n) ehtiva edir, bu da zirvələr və arasında yönsüz kənarı təsvir edir.
Daha sonra 2 \cdot q sətir gəlir. Hər test aşağıdakı formatda iki sətirlə verilir:
Birinci sətir dəstin ölçüsü -ni ehtiva edir;
İkinci sətir dəstin elementləri olan tam ədəd ehtiva edir (1 \le k_i \le 10^5, bütün üçün k_i cəmi 2 \cdot 10^5-i keçmir).
-ci sətir -ci sorğu üçün ifadənin dəyərini 10^9 + 7 modulu ilə ehtiva edən sətir çıxarın.
Nümunə 1