#arc087d. [arc087_d]Squirrel Migration

[arc087_d]Squirrel Migration

Problem Statement

There is a tree with NN vertices. The vertices are numbered 11 through NN. The ii-th edge (1leqileqN11 \\leq i \\leq N - 1) connects Vertex xix_i and yiy_i. For vertices vv and ww (1leqv,wleqN1 \\leq v, w \\leq N), we will define the distance between vv and ww d(v,w)d(v, w) as "the number of edges contained in the path vv-ww".

A squirrel lives in each vertex of the tree. They are planning to move, as follows. First, they will freely choose a permutation of (1,2,...,N)(1, 2, ..., N), p=(p1,p2,...,pN)p = (p_1, p_2, ..., p_N). Then, for each 1leqileqN1 \\leq i \\leq N, the squirrel that lived in Vertex ii will move to Vertex pip_i.

Since they like long travels, they have decided to maximize the total distance they traveled during the process. That is, they will choose pp so that d(1,p1)+d(2,p2)+...+d(N,pN)d(1, p_1) + d(2, p_2) + ... + d(N, p_N) will be maximized. How many such ways are there to choose pp, modulo 109+710^9 + 7?

Constraints

  • 2leqNleq5,0002 \\leq N \\leq 5,000
  • 1leqxi,yileqN1 \\leq x_i, y_i \\leq N
  • The input graph is a tree.

Input

Input is given from Standard Input in the following format:

NN x1x_1 y1y_1 x2x_2 y2y_2 :: xN1x_{N - 1} yN1y_{N - 1}

Output

Print the number of the ways to choose pp so that the condition is satisfied, modulo 109+710^9 + 7.


Sample Input 1

3
1 2
2 3

Sample Output 1

3

The maximum possible distance traveled by squirrels is 44. There are three choices of pp that achieve it, as follows:

  • (2,3,1)(2, 3, 1)
  • (3,1,2)(3, 1, 2)
  • (3,2,1)(3, 2, 1)

Sample Input 2

4
1 2
1 3
1 4

Sample Output 2

11

The maximum possible distance traveled by squirrels is 66. For example, p=(2,1,4,3)p = (2, 1, 4, 3) achieves it.


Sample Input 3

6
1 2
1 3
1 4
2 5
2 6

Sample Output 3

36

Sample Input 4

7
1 2
6 3
4 5
1 7
1 5
2 3

Sample Output 4

396