Highway 201 is the most busy street in Rockport. Traffic cars cause a lot of hindrances to races, especially when there are a lot of them. The track which passes through this highway can be divided into n sub-tracks. You are given an array a where a_i represents the number of traffic cars in the i-th sub-track. You define the inconvenience of the track as ∑_{i=1}^{n} ∑_{j=i+1}^{n} \lvert a_i-a_j\rvert, where |x| is the absolute value of x. 

You can perform the following operation any (possibly zero) number of times: choose a traffic car and move it from its current sub-track to any other sub-track.

Find the minimum inconvenience you can achieve.

Input

The first line of input contains a single integer t (1≤ t≤ 10 000) — the number of test cases.

The first line of each test case contains a single integer n (1≤ n≤ 2⋅ 10^5).

The second line of each test case contains n integers a_1, a_2, …, a_n (0≤ a_i≤ 10^9).

It is guaranteed that the sum of n over all test cases does not exceed 2⋅ 10^5.

Output

For each test case, print a single line containing a single integer: the minimum inconvenience you can achieve by applying the given operation any (possibly zero) number of times.

Example

Input


3
3
1 2 3
4
0 1 1 0
10
8 3 6 11 5 2 1 7 10 4


Output


0
4
21

Note

For the first test case, you can move a car from the 3-rd sub-track to the 1-st sub-track to obtain 0 inconvenience.

For the second test case, moving any car won't decrease the inconvenience of the track.
#include<bits/stdc++.h>
using namespace std;
#define all(a) a.begin(),a.end()
#define M 1000000007
#define INF LLONG_MAX
typedef long long ll;
typedef vector<long long> vll;
typedef vector<vector<long long>> vvll;
typedef pair<long long,long long> pll;
#define F first
#define S second
#define PB push_back
#define FOR(i,a,b) for(int i=(a);i<(b);i++)
#define RFOR(i,a,b) for(int i=(a);i>(b);i--)
#define sz(a) (int)((a).size())
#define CASE cout<<"Case "<<_<<":\n";
int __=1;
void show_(int x){cerr<<x<<'\n';}
void show_(long long x){cerr<<x<<'\n';}
void show_(char x){cerr<<x<<'\n';}
void show_(vector<int> a){cerr<<"[ "; for(auto x:a) cerr<<x<<", "; cerr<<"]\n";}
void show_(vector<long long> a){cerr<<"[ "; for(auto x:a) cerr<<x<<", "; cerr<<"]\n";}
void show_(vector<char> a){cerr<<"[ "; for(auto x:a) cerr<<x<<", "; cerr<<"]\n";}
void fast()
{
    ios_base::sync_with_stdio(0);cin.tie(NULL); cout.tie(NULL);
    #ifdef LOCAL
    freopen("input.txt", "r", stdin);
    freopen("output.txt", "w", stdout);
    freopen("dbg.txt", "w", stderr);
    #define debug(x) if(true) cerr<<#x<<" = "; show_(x);
    #else
    #define debug(x)
    #endif
}
int main()
{
    fast();
    cin>>__;
    for(int _=1;_<=__;_++)
    {
        int n;
        cin>>n;
        vll a(n);
        for(int i=0;i<n;i++)
        cin>>a[i];
        ll sum = accumulate(all(a),0ll);
        ll extra = sum%n;
        ll normal = n-extra;
        ll ans = normal*extra;
        cout<<ans<<"\n";

    }
    return 0;
}