Given an array $$$a$$$ of length $$$n$$$ $$$(1 \le n \le 2 * 10^5)$$$ its elements are numbered from 0 to $$$n - 1$$$ $$$(a_0,a_1,...,a_{n-1})$$$.
For two integers $$$start$$$ and $$$step$$$ $$$(0 \le start,step \le n-1)$$$ define $$$f(start,step)$$$ as follows:
first set an integer $$$current$$$ to $$$start$$$ and set another integer $$$sum$$$ to zero, that is $$$current = start$$$ and $$$sum = 0$$$.Then repeat this steps $$$n$$$ times:
If We Choose $$$start$$$ and $$$step$$$ randomly, what is the expected value of the function $$$f(start,step)$$$ modulo $$$10^9 + 7$$$.
The first line contains a single integer $$$t$$$ $$$(1 \le t \le 10^5)$$$, the number of test cases.
The first line of each test case contains a single integer $$$n$$$ $$$(1 \le n \le 2 * 10^5)$$$, the size of the array $$$a$$$.
The second line of each test case contains $$$n$$$ integers $$$(1 \le a_i \le 10^9)$$$, the elements of array $$$a$$$.
It is guranteed that the sum of $$$n$$$ over all test cases doesn't exceeds $$$2 * 10^5$$$.
For each test case output the expected value of the function $$$f(start,step)$$$ modulo $$$10^9 + 7$$$.
551 2 3 4 5410 20 80 90370 2 171 1 1 1 1 1 142 1 2 1000000000
200000014 500000141 777777840 142857150 625000003