#P5852. [USACO19DEC] Bessie's Snow Cow P

[USACO19DEC] Bessie's Snow Cow P

Description

Snow has arrived on the farm, and as she does at the beginning of every winter, Bessie is building a snow-cow! Most of the time, Bessie strives to make her sculpture look as much like a real cow as possible. However, feeling artistically inspired, this year she decides to pursue a more abstract route and build a sculpture in the shape of a tree, consisting of NN snowballs (1N105)(1\le N\le 10^5) connected by N1N-1 branches, each connecting a pair of snowballs such that there is a unique path between every pair of snowballs.

Bessie has added a nose to one of the snowballs, so it represents the head of the abstract snow cow. She designates it as snowball number 1. To add more visual interest, she plans to dye some of the snowballs different colors in an artistic fashion by filling old milk pails with colored dye and splashing them onto the sculpture. Colors are identified by integers in the range 11051 \ldots 10^5, and Bessie has an unlimited supply of buckets filled with dyes of every possible color.

When Bessie splashes a snowball with a bucket of dye, all the snowballs in its subtree are also splashed with the same dye (snowball yy is in the subtree of snowball xx if xx lies on the path from yy to the head snowball). By splashing each color with great care, Bessie makes sure that all colors a snowball has been splashed with will remain visible. For example, if a snowball had colors [1,2,3][1,2,3] and Bessie splashes it with color 44, the snowball will then have colors [1,2,3,4][1,2,3,4].

After splashing the snowballs some number of times, Bessie may also want to know how colorful a part of her snow-cow is. The "colorfulness" of a snowball xx is equal to the number of distinct colors cc such that snowball xx is colored cc. If Bessie asks you about snowball xx, you should reply with the sum of the colorfulness values of all snowballs in the subtree of x.x.

Please help Bessie find the colorfulness of her snow-cow at certain points in time.

Input Format

The first line contains NN and the number of queries QQ.

The next N1N-1 lines each contain two space-separated numbers aa and bb, indicating that there is a branch connecting snowballs aa and bb.

The last QQ lines each contain a request, with the format and corresponding meanings as follows:

  • 1 x c (Modification): Indicates that Bessie pours a bucket of paint of color cc onto snowball xx, dyeing all snowballs in its subtree.
  • 2 x (Query): Queries the sum of colorfulness in the subtree of snowball xx.

Output Format

For each query, output the sum of colorfulness in the queried subtree. To prevent overflow, you must use 64-bit integers.

5 18
1 2
1 3
3 4
3 5
1 4 1
2 1
2 2
2 3
2 4
2 5
1 5 1
2 1
2 2
2 3
2 4
2 5
1 1 1
2 1
2 2
2 3
2 4
2 5

1
0
1
1
0
2
0
2
1
1
5
1
3
1
1

Hint

After the first query of type 11, snowball 44 is dyed with color 11.

After the second query of type 11, snowballs 44 and 55 are dyed with color 11.

After the third query of type 11, all snowballs are dyed with color 11.