Boring tree queries
Given a tree with vertices. Each vertex of the tree has a single number written on it.
In this problem you must answer queries. Each query is described by three numbers , and . To answer the query, first write down the numbers written on the vertices in a simple path from to in the order they appear. Then the answer to the query is calculated in this way: add the first numbers of the obtained sequence, subtract the next numbers, then again add the next numbers, and then again subtract the next numbers, and so on. It is guaranteed that the number of vertices in a simple path from to is divisible by .
Input
The first line contains two integers - the number of vertices in the tree, and — the number of queries.
The second line contains a sequence of integers — the numbers written on vertices.
Then follow lines, describing the tree edges. Each line contains a pair of integers — the vertices connected by an edge.
The last lines describe the queries, the -th line contains three numbers .
Output
Output lines, -th line contains the answer to the -th query.