#include<bits/stdc++.h>
using namespace std;
const int N=1e5+5;
int main(){
int t,n,a[N],d[N];
scanf("%d",&t);
while(t--){
a[0]=0;
memset(d,0,sizeof d);
scanf("%d",&n);
long long res=0;
int i;
bool flag=1;
for(i=1;i<=n;i++){
scanf("%d",&a[i]);
d[i]=a[i]-a[i-1];
}
if(n==1){
printf("-1\n");
continue;
}
if(n==2&&a[1]!=a[2]){
printf("-1\n");
continue;
}
for(i=2;i<=n;i+=2){
if(d[i]<0){flag=0;break;};
res+=d[i];
d[i+2]+=d[i];
d[i]=0;
}
if(n&1==0&&d[i-2]!=0){flag=0;};
for(i=3;i<=n;i+=2){
if(d[i]<0){
if(d[1]>=-d[i]){
res+=(i/2)*(-d[i]);
d[1]+=d[i];
d[i]=0;
}else {flag=0;break;};
}
res+=d[i];
d[i+2]+=d[i];
d[i]=0;
}
if(n&1&&d[i-2]!=0){flag=0;};
if(flag) printf("%lld\n",2*res);
else printf("-1\n");
}
return 0;
}