There are *n* military men in the Berland army. Some of them have given orders to other military men by now. Given *m* pairs (*x*<sub class="lower-index">*i*</sub>, *y*<sub class="lower-index">*i*</sub>), meaning that the military man *x*<sub class="lower-index">*i*</sub> gave the *i*-th order to another military man *y*<sub class="lower-index">*i*</sub>.

It is time for reform! The Berland Ministry of Defence plans to introduce ranks in the Berland army. Each military man should be assigned a rank — integer number between 1 and *k*, inclusive. Some of them have been already assigned a rank, but the rest of them should get a rank soon.

Help the ministry to assign ranks to the rest of the army so that:
 -  for each of *m* orders it is true that the rank of a person giving the order (military man *x*<sub class="lower-index">*i*</sub>) is strictly greater than the rank of a person receiving the order (military man *y*<sub class="lower-index">*i*</sub>); -  for each rank from 1 to *k* there is at least one military man with this rank.
The first line contains three integers *n*, *m* and *k* (1 ≤ *n* ≤ 2·10<sup class="upper-index">5</sup>, 0 ≤ *m* ≤ 2·10<sup class="upper-index">5</sup>, 1 ≤ *k* ≤ 2·10<sup class="upper-index">5</sup>) — number of military men in the Berland army, number of orders and number of ranks.

The second line contains *n* integers *r*<sub class="lower-index">1</sub>, *r*<sub class="lower-index">2</sub>, ..., *r*<sub class="lower-index">*n*</sub>, where *r*<sub class="lower-index">*i*</sub> &gt; 0 (in this case 1 ≤ *r*<sub class="lower-index">*i*</sub> ≤ *k*) means that the *i*-th military man has been already assigned the rank *r*<sub class="lower-index">*i*</sub>; *r*<sub class="lower-index">*i*</sub> = 0 means the *i*-th military man doesn't have a rank yet.

The following *m* lines contain orders one per line. Each order is described with a line containing two integers *x*<sub class="lower-index">*i*</sub>, *y*<sub class="lower-index">*i*</sub> (1 ≤ *x*<sub class="lower-index">*i*</sub>, *y*<sub class="lower-index">*i*</sub> ≤ *n*, *x*<sub class="lower-index">*i*</sub> ≠ *y*<sub class="lower-index">*i*</sub>). This line means that the *i*-th order was given by the military man *x*<sub class="lower-index">*i*</sub> to the military man *y*<sub class="lower-index">*i*</sub>. For each pair (*x*, *y*) of military men there could be several orders from *x* to *y*.
none
print("_RANDOM_GUESS_1690495735.1376674")# 1690495735.1376882