問題文

NN 頂点の木が与えられます。

木の頂点 ii には整数 aia_i が書かれています。

木の jj 番目の辺は頂点 uju_j と頂点 vjv_j を結んでいます。

1kN1 \le k \le N なる整数 kk に対して、次の問題を解いてください。

  • 頂点 11 から頂点 kk までの最短パス上の頂点に書かれている整数すべての最小公倍数を 109+710^9 + 7 で割ったあまりを求めよ。

制約

  • 1N2×1031 \le N \le 2\times10^3
  • 1ai1091 \le a_i \le 10^9
  • 1uj,vjN1 \le u_j, v_j \le N
  • ujvju_j \ne v_j
  • 与えられるグラフは木である
  • 入力はすべて整数である

入力

Na1 a2  aNu1 v1u2 v2uN1 vN1N\\ a_1\ a_2\ \cdots\ a_N\\ u_1\ v_1\\ u_2\ v_2\\ \vdots\\ u_{N - 1}\ v_{N - 1}

出力

NN 行出力せよ。

ii 行目には、頂点 11 から頂点 ii までの最短パス上の最小公倍数を出力せよ。

入出力例

入力例1
8
1 2 3 4 5 6 7 8
1 2
1 6
2 3
2 4
2 5
4 7
4 8
出力例1
1
2
6
4
10
6
28
8

例えば、頂点 11 から 77 までの最短パス上の頂点に書かれている整数は 1,2,4,71, 2, 4, 7 です。 これらの最小公倍数は 2828 になります。

入力例2
10
1 2 5 3 4 6 7 3 2 4
1 2
2 3
3 4
4 5
3 6
6 7
1 8
8 9
9 10
出力例2
1
2
10
30
60
30
210
3
6
12
入力例3
6
23 31 47 51 67 71
1 2
2 3
3 4
4 5
5 6
出力例3
23
713
33511
1709061
114507087
130003121

答えは 109+710^9 + 7 で割ったあまりであることに注意してください。

Submit


Go (1.21)