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