#include <bits/stdc++.h>
using namespace std;
#define ll long long
#define fast ios_base::sync_with_stdio(false);cin.tie(NULL);cout.tie(NULL);
#define pb push_back
#define alls(x) x.begin(), x.end()
#define sz(x) (int)(x.size())
#define forn(i,n) for(int i=0; i<int(n); i++)
#define rep(i,n) for(int i=1; i<=int(n); i++)
#define inc(i,l,r,d) for(int i=l; i<=r; i+=d)
#define dec(i,r,l,d) for(int i=r; i>=l; i-=d)
#define dbg(x) cerr << #x << " = " << x << endl;
#define nl cout << "\n";
#define sp cout << " ";
#define pii pair<int, int>
#define pll pair<ll, ll>
#define vll vector<ll>
#define vi vector<int>
const ll inf = 1e16;
const ll mod = 998244353;
const ll mod1 = 1e9 + 87;
const ll mod2 = 127397154761;
ll gcd(ll a, ll b) {if (b == 0) return a; return gcd(b, a % b);}
ll lcm(ll a, ll b) {return a * b / gcd(a, b);}
ll sum(ll a, ll b) {a += b; if (a >= mod) a -= mod; return a;}
ll sub(ll a, ll b) {a -= b; if (a < 0) a += mod; return a;}
ll mul(ll a, ll b) {return a * b % mod;}
//========================================
//Author: Muntazir Ali
//Institution: IIIT JABALPUR
//========================================
void ali(){
int n;
cin >> n;
vi a(n);
for(int &x : a) cin >> x;
int d= n*n-1;
int p = n*a[n-1]-a[0];
int q = n*a[0]-a[n-1];
if(p<0 || p%d || q%d) { cout << "NO\n"; return; }
int x = p/d, y = q/d;
for (int i=0; i<n; i++) if (a[i]!= x*(i+1)+y*(n-i)) { cout << "NO\n"; return; }
cout << "YES" << endl;
}
int main(){
fast
int t;
cin >> t;
while(t--){
ali();
}
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CiNkZWZpbmUgbGwgbG9uZyBsb25nCiNkZWZpbmUgZmFzdCBpb3NfYmFzZTo6c3luY193aXRoX3N0ZGlvKGZhbHNlKTtjaW4udGllKE5VTEwpO2NvdXQudGllKE5VTEwpOwojZGVmaW5lIHBiIHB1c2hfYmFjawojZGVmaW5lIGFsbHMoeCkgeC5iZWdpbigpLCB4LmVuZCgpCiNkZWZpbmUgc3ooeCkgKGludCkoeC5zaXplKCkpCiNkZWZpbmUgZm9ybihpLG4pIGZvcihpbnQgaT0wOyBpPGludChuKTsgaSsrKQojZGVmaW5lIHJlcChpLG4pIGZvcihpbnQgaT0xOyBpPD1pbnQobik7IGkrKykKI2RlZmluZSBpbmMoaSxsLHIsZCkgZm9yKGludCBpPWw7IGk8PXI7IGkrPWQpCiNkZWZpbmUgZGVjKGkscixsLGQpIGZvcihpbnQgaT1yOyBpPj1sOyBpLT1kKSAKI2RlZmluZSBkYmcoeCkgY2VyciA8PCAjeCA8PCAiID0gIiA8PCB4IDw8IGVuZGw7CiNkZWZpbmUgbmwgY291dCA8PCAiXG4iOwojZGVmaW5lIHNwIGNvdXQgPDwgIiAiOwojZGVmaW5lIHBpaSBwYWlyPGludCwgaW50PgojZGVmaW5lIHBsbCBwYWlyPGxsLCBsbD4KI2RlZmluZSB2bGwgdmVjdG9yPGxsPgojZGVmaW5lIHZpIHZlY3RvcjxpbnQ+CmNvbnN0IGxsIGluZiA9IDFlMTY7CmNvbnN0IGxsIG1vZCA9IDk5ODI0NDM1MzsKY29uc3QgbGwgbW9kMSA9IDFlOSArIDg3Owpjb25zdCBsbCBtb2QyID0gMTI3Mzk3MTU0NzYxOwpsbCBnY2QobGwgYSwgbGwgYikge2lmIChiID09IDApIHJldHVybiBhOyByZXR1cm4gZ2NkKGIsIGEgJSBiKTt9CmxsIGxjbShsbCBhLCBsbCBiKSB7cmV0dXJuIGEgKiBiIC8gZ2NkKGEsIGIpO30KbGwgc3VtKGxsIGEsIGxsIGIpIHthICs9IGI7IGlmIChhID49IG1vZCkgYSAtPSBtb2Q7IHJldHVybiBhO30KbGwgc3ViKGxsIGEsIGxsIGIpIHthIC09IGI7IGlmIChhIDwgMCkgYSArPSBtb2Q7IHJldHVybiBhO30KbGwgbXVsKGxsIGEsIGxsIGIpIHtyZXR1cm4gYSAqIGIgJSBtb2Q7fQoKCi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQovL0F1dGhvcjogICAgICAgICBNdW50YXppciBBbGkKLy9JbnN0aXR1dGlvbjogICAgSUlJVCBKQUJBTFBVUgovLz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KCnZvaWQgYWxpKCl7CiAgICBpbnQgbjsgCiAgICBjaW4gPj4gbjsKICAgIHZpIGEobik7CiAgICBmb3IoaW50ICZ4IDogYSkgY2luID4+IHg7CiAgICBpbnQgZD0gbipuLTE7CiAgICBpbnQgcCA9IG4qYVtuLTFdLWFbMF07IAogICAgaW50IHEgPSBuKmFbMF0tYVtuLTFdOwogICAgaWYocDwwIHx8IHAlZCB8fCAgcSVkKSB7IGNvdXQgPDwgIk5PXG4iOyByZXR1cm47IH0KICAgIGludCB4ID0gcC9kLCB5ID0gcS9kOwogICAgZm9yIChpbnQgaT0wOyAgaTxuOyBpKyspIGlmIChhW2ldIT0geCooaSsxKSt5KihuLWkpKSB7IGNvdXQgPDwgIk5PXG4iOyByZXR1cm47IH0KICAgIGNvdXQgPDwgIllFUyIgPDwgZW5kbDsKfQppbnQgbWFpbigpewogICAgZmFzdAogICAgaW50IHQ7CiAgICBjaW4gPj4gdDsKICAgIHdoaWxlKHQtLSl7CiAgICAgICAgYWxpKCk7CiAgICB9CiAgICByZXR1cm4gMDsKfQ==