JOI Kingdom is an insular country consisting of N islands, numbered from 1 to N. The islands are connected by N−1 bridges, numbered from 1 to N−1. The bridge i (1≤i≤N−1) connects the island A_i and the island B_i bidirectionally. It is possible to travel from any island to any other island by passing through a number of bridges.
In JOI Kingdom, there are M sightseeing spots, numbered from 1 to M. The sightseeing spot j (1≤j≤M) is located in the island C_j.
There are Q travelers. They plan to visit sightseeing spots in JOI Kingdom. The travelers are numbered from 1 to Q. Each traveler makes a trip in the following way.
The traveler chooses an island x (1≤x≤N). Taking an airplane, the traveler arrives at the island x.
The traveler takes the following actions a number of times. The order and the kinds of actions are arbitrary.
Taking an airplane, the traveler leaves JOI Kingdom.
The traveler k (1≤k≤Q) wants to visit all of the sightseeing spots L_k,L_k+1,…,R_k. However, since the budget is limited, the traveler k wants to minimize the number of islands where the traveler k visits at least once.
Write a program which, given information of JOI Kingdom and the travelers, calculates, for each k (1≤k≤Q), the minimum possible number of islands where the traveler k visits at least once.
Read the following data from the standard input.
N M Q
A_1 B_1
A_2 B_2
⋮
A_N−1 B_N−1
C_1 C_2 ⋯ C_M
L_1 R_1
L_2 R_2
⋮
L_Q R_Q
Write Q lines to the standard output. The k-th line (1≤k≤Q) of output should contain the minimum possible number of islands where the traveler k visits at least once.