Larry the magical panda is playing a new game once again! This time, having gotten bored of playing with bamboo sticks, Larry is playing the game on an entire bamboo tree with
nodes labeled from
to
. Being a tree, it has
edges and each edge has distance
. Furthermore, each node has an additional value
associated with it. Being a magical panda, Larry can teleport from a node
to any node
with distance less than or equal to a given constant
from
. The teleportation comes at the cost of
. For each node
, what is the minimum cost for Larry to reach
if he starts the game at node
?
Constraints


Subtask 1 [10%]

Subtask 2 [90%]
No additional constraints.
Input Specification
The first line will contain two integers,
and
.
The following line will contain
integers
.
The following
lines will each contain two integers,
and
, denoting an edge between nodes
and
.
Output Specification
Output
space separated integers, the
-th of which represents the minimum cost for Larry to reach node
.
Sample Input 1
Copy
2 1
1 1
1 2
Sample Output 1
Copy
0 1
Sample Input 2
Copy
6 3
100 100 100 100 100 1
1 2
2 3
3 4
4 5
3 6
Sample Output 2
Copy
0 100 100 100 101 1
Comments
i clicked on this problem because i thought it was clash related...
I believe that there are anti-hashing cases in batch 1. I recommend using a custom hash function if you choose to use unordered_map or gp_hash_table.