Statement is not available in English language
D. Сбор команды
ограничение по времени на тест
1 секунда
ограничение по памяти на тест
256 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод

В мире Brawl Stars существует иерархическая система бойцов. Эта система представляет собой корневое дерево, где вершинами являются бойцы, рёбрами — отношения подчинения, а в корне дерева находится боец номер $$$1$$$.

Каждый боец $$$i$$$ обладает типом способности $$$b_i$$$ ($$$1 \leq b_i \leq n$$$).

Вам дан целевой набор способностей $$$a_1, a_2, \ldots, a_m$$$, который необходим для выполнения специальной миссии.

Командой называется любой отряд бойцов, который включает некоторого бойца и всех его подчинённых (то есть поддерево в иерархической структуре).

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

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

Первая строка содержит целое число $$$n$$$ — количество бойцов в системе ($$$1 \leq n \leq 10^5$$$).

Вторая строка содержит $$$n$$$ целых чисел $$$b_1, \ldots, b_n$$$ — типы способностей бойцов ($$$1 \leq b_i \leq n$$$).

Следующие $$$n - 1$$$ строк содержат пары целых чисел $$$u_i, v_i$$$ — связи подчинения между бойцами ($$$1 \leq u_i, v_i \leq n$$$).

Гарантируется, что структура связей образует дерево с корнем в позиции 1.

Следующая строка содержит целое число $$$m$$$ — размер целевого набора способностей ($$$1 \leq m \leq 10^5$$$).

Последняя строка содержит $$$m$$$ целых чисел $$$a_1, \ldots, a_m$$$ — требуемые типы способностей ($$$1 \leq a_i \leq n$$$).

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

Выведите одно целое число — количество подходящих команд.

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