Карту Мяуленду можна розглядати як кореневе дерево з $n$ вершинами та $n - 1$ ребрами, де вершини представляють міста, а ребро представляє дорогу, що з'єднує два міста. Столиця знаходиться в корені — вершині $1$.
Тепер Мяуленд хоче встановити в деяких містах новітні базові станції мережі 77G. Щоб забезпечити достатню якість зв'язку на кожній дорозі, принаймні в одному з міст на кінцях кожної дороги має бути встановлена базова станція. Однак через невідомі технічні проблеми в мережевій системі є $m$ несправностей. Несправність $i$ описується так: якщо в місті $x_i$ встановлено базову станцію, то в усіх містах у піддереві $x_i$, відстань від яких до $x_i$ точно дорівнює $y_i$, не можна встановлювати базові станції; інакше станції заважатимуть одна одній і стануть непридатними для використання.
Будь ласка, допоможіть Мяуленду вибрати декілька міст так, щоб встановлення базових станцій у цих містах задовольняло всі наведені вище вимоги. Якщо допустимої схеми не існує, виведіть No.
Вхідні дані
Кожен тестовий файл містить декілька наборів вхідних даних. Перший рядок містить кількість наборів вхідних даних $T$ ($1 \le T \le 10^3$). Далі йде опис наборів вхідних даних.
Перший рядок кожного набору вхідних даних містить ціле число $n$ ($2 \le n \le 2 \times 10^5$), що позначає кількість міст.
Другий рядок містить $n - 1$ цілих чисел $f_2, f_3, \dots, f_n$ ($1 \le f_i < i$), де $f_i$ позначає предка міста $i$.
Третій рядок містить ціле число $m$ ($0 \le m \le 2 \times 10^5$), що позначає кількість несправностей.
Кожен із наступних $m$ рядків містить два цілі числа $x_i$ та $y_i$ ($1 \le x_i, y_i \le n$), що позначають $i$-ту несправність. Можуть існувати дві однакові несправності.
Для кожного тестового файлу гарантується, що сума $n$ за всіма наборами вхідних даних не перевищує $2 \times 10^5$, а сума $m$ за всіма наборами вхідних даних не перевищує $2 \times 10^5$.
Вихідні дані
Для кожного набору вхідних даних, якщо допустимої схеми немає, виведіть рядок No.
Інакше виведіть три рядки, що описують вашу схему:
- У першому рядку виведіть
Yes. - У другому рядку виведіть ціле число $c$, що позначає кількість вибраних вами міст.
- У третьому рядку виведіть $c$ різних цілих чисел, що позначають вибрані вами міста.
Якщо допустимих схем декілька, ви можете вивести будь-яку з них. Під час виведення схеми ви можете вказувати $c$ міст у будь-якому порядку.
Приклад
Приклад вхідних даних 1
3 6 1 1 2 2 4 2 1 3 2 1 6 1 1 2 2 4 6 1 1 1 2 1 3 2 1 2 2 2 1 8 1 1 3 1 1 2 4 10 1 2 3 2 1 3 5 1 6 1 3 2 4 1 3 2 5 1 3 1
Приклад вихідних даних 1
Yes 4 5 3 4 1 No No