На ферму випав сніг, і Бессі, як завжди на початку зими, будує снігову корову! Зазвичай вона намагається зробити свою скульптуру максимально схожою на справжню корову. Але цього року, відчувши натхнення, вона вирішила створити абстрактну скульптуру у формі дерева, що складається з сніжків, з'єднаних n - 1 гілкою. Кожна гілка з'єднує пару сніжків, і між будь-якими двома сніжками існує унікальний шлях.
Бессі додала ніс до одного з сніжків, щоб він представляв голову абстрактної снігової корови. Цей сніжок вона позначила номером . Щоб додати більше візуального інтересу, вона планує художньо пофарбувати деякі сніжки в різні кольори, використовуючи старі молочні відра, наповнені кольоровим барвником, і розбризкуючи його на скульптуру. Кольори позначаються цілими числами від до 10^5, і у Бессі є необмежений запас відер з барвниками всіх можливих кольорів.
Коли Бессі бризкає на сніжок відром з фарбою, всі сніжки в його піддереві також заливаються цією ж фарбою (сніжок знаходиться в піддереві сніжка , якщо лежить на шляху від до головного сніжка). Розбризкуючи кожен колір з великою обережністю, Бессі стежить за тим, щоб усі кольори, якими був розбризканий сніжок, залишалися видимими. Наприклад, якщо сніжок мав кольори [, , ], а Бессі залила його кольором , то сніжок матиме кольори [, , , ].
Після того, як Бессі кілька разів оббризкає сніжки, вона може захотіти дізнатися, наскільки барвиста частина її снігової корови. "Барвистість" сніжка дорівнює кількості таких різних кольорів , якими він пофарбований. Якщо Бессі запитає вас про сніжок , ви повинні відповісти, вказавши суму значень барвистості всіх сніжків у піддереві .
Допоможіть Бессі визначити барвистість її снігової корови в певні моменти часу.
Перший рядок містить число (1 \leq n \leq 10^5) і кількість запитів (1 \leq q \leq 10^5). Кожен з наступних n - 1 рядків містить по два цілих числа і , що описують гілку, яка з'єднує сніжки і (1 \leq a, b \leq n).
Нарешті, кожен з наступних рядків містить запит. Запит виду
1 x c
вказує, що Бессі пролила відро соку кольору на сніжок , розфарбувавши всі сніжки в піддереві . Рядок виду
2 x
означає запит суми значень барвистості всіх сніжків у піддереві . Звісно, 1 \leq x \leq n і 1 \leq c \leq 10^5.
Для кожного запиту типу виведіть суму значень барвистості у відповідному піддереві. Зверніть увагу, що ви повинні використовувати 64-бітні цілі числа для уникнення переповнення.
Після першого запиту типу сніжок фарбується в колір .
Після другого запиту типу сніжки і фарбуються в колір .
Після третього запиту типу всі сніжки фарбуються в колір .
Приклад 1