Обчислення Кітті на дереві
У Кітті є дерево , що складається з вершин, пронумерованих від до . Її друг Алекс дав їй множин, кожна з яких містить набір вершин. Кітті потрібно обчислити наступний вираз для кожного набору:
де:
позначає неупорядковану пару вершин з множини.
позначає кількість ребер на унікальному (найкоротшому) шляху між вузлами та .
За заданим деревом та множинами з різних вершин обчисліть значення виразу для кожного набору. Значення виразу слід виводити за модулем для кожного тесту в новому рядку.
Вхідні дані
Перша строка містить два цілих числа: кількість вершин у дереві і кількість запитів .
Кожна з наступних строк містить два цілих числа і , що описують неорієнтоване ребро між вершинами та .
Далі слідують строк. Кожен тест задається двома строками в наступному форматі:
Перша строка містить розмір множини ;
Друга строка містить цілих чисел — елементи множини , сума по всім не перевищує .
Вихідні дані
Виведіть строк, де -ий рядок містить значення виразу для -го запиту за модулем .