H. Брасс Бирмингем: дороги
ограничение по времени на тест
1 секунда
ограничение по памяти на тест
256 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод

Сегодня Игорь и Ира вместе с друзьями — Сашей и Лешей — решили поиграть в новую настольную игру «Brass Birmingham».

В каждом раунде игроки делают ходы по очереди. Во время хода игрок может построить производство в городах, дорогу, соединяющую два города, либо выполнить действие.

Игра закончилась поздней ночью, и пришло время подводить итоги. Игорю доверили посчитать количество очков за построение дорог. Каждая построенная игроком дорога приносит ему количество очков, равное суммарному числу предприятий, открытых в городах, соединяемых этой дорогой.

К сожалению, Игорь случайно опрокинул игровое поле так, что все карточки перемешались. Огорчившись, он вспомнил, что во время игры записывал в блокнот действия каждого игрока. Помогите Игорю посчитать очки за дороги, полученные каждым игроком.

Входные данные

В первой строке записано целое число $$$N$$$ $$$(2\leq N\leq 10^5)$$$ — количество городов в игре.

Далее для каждого из четырех игроков указано:

В первой строке целые числа $$$M_k,G_k$$$ $$$(1\leq M_k,G_k\leq 10^4)$$$ — количество производств и количество дорог, построенных $$$k$$$-м игроком.

В следующей строке $$$M_k$$$ целых чисел $$$m_{ki}$$$ $$$(1\leq m_{ki}\leq N)$$$ — города, в которых располагаются производства $$$k$$$-го игрока.

Далее $$$G_k$$$ строк, в каждой из которых располагаются по два целых числа $$$a_{ki},b_{ki}$$$ $$$(1\leq a_{ki},b_{ki}\leq N)$$$ — города, которые соединяются дорогой $$$k$$$-го игрока.

Выходные данные

Выведите $$$4$$$ целых числа через пробел – количеств очков за дороги, которые получил каждый из игроков.

Пример
Входные данные
4
1 1
1
1 2
3 1
1 2 3
2 3
4 2
1 4 2 3
3 1
4 2
1 4
3
1 3
2 3
3 4
1 2
Выходные данные
5 5 9 20