#include<bits/stdc++.h>
using namespace std;
typedef double ld;
typedef long long int ll;
#define MAX 1000005
#define INF 1000000005
#define mod 1000000007
const double PI = 3.14159265;
#define FAST_IO ios_base::sync_with_stdio(false);cin.tie(NULL);
// normal 4 moves
ll ndx[]={0,1,0,-1};
ll ndy[]={1,0,-1,0};
// all 8 moves
ll qdx[]={-1,-1,-1,0,1,1,1,0};
ll qdy[]={-1,0,1,1,1,0,-1,-1};
// knight's moves
ll kdx[]={-2,-2,2,2,-1,-1,1,1};
ll kdy[]={-1,1,1,-1,-2,2,-2,2};
ll power(ll x, ll y, ll p)
{
ll res=1;
x=x%p;
while(y>0)
{
if(y&1)
res=(res*x)%p;
y=y>>1;
x=(x*x)%p;
}
return res;
}
ll n,a[MAX];
ll f(ll i,ll sum)
{
if(i==n-1) return sum;
ll maxx=0;
maxx=max(maxx,max(f(i+1,sum+abs(min(ll(1),a[i])-min(ll(1),a[i+1]))),f(i+1,sum+abs(min(ll(1),a[i])-max(ll(1),a[i+1])))));
maxx=max(maxx,max(f(i+1,sum+abs(max(ll(1),a[i])-min(ll(1),a[i+1]))),f(i+1,sum+abs(max(ll(1),a[i])-max(ll(1),a[i+1])))));
return maxx;
}
int main()
{
ll t;
cin>>t;
while(t--)
{
cin>>n;
for(ll i=0;i<n;i++) cin>>a[i];
cout<<f(0,0)<<endl;
}
}
I2luY2x1ZGU8Yml0cy9zdGRjKysuaD4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKdHlwZWRlZiBkb3VibGUgbGQ7CnR5cGVkZWYgbG9uZyBsb25nIGludCBsbDsKI2RlZmluZSBNQVggMTAwMDAwNQojZGVmaW5lIElORiAxMDAwMDAwMDA1CiNkZWZpbmUgbW9kIDEwMDAwMDAwMDcKY29uc3QgZG91YmxlIFBJID0gMy4xNDE1OTI2NTsKI2RlZmluZSBGQVNUX0lPIGlvc19iYXNlOjpzeW5jX3dpdGhfc3RkaW8oZmFsc2UpO2Npbi50aWUoTlVMTCk7CgovLyBub3JtYWwgNCBtb3ZlcwpsbCBuZHhbXT17MCwxLDAsLTF9OwpsbCBuZHlbXT17MSwwLC0xLDB9OwovLyBhbGwgOCBtb3ZlcwpsbCBxZHhbXT17LTEsLTEsLTEsMCwxLDEsMSwwfTsKbGwgcWR5W109ey0xLDAsMSwxLDEsMCwtMSwtMX07Ci8vIGtuaWdodCdzIG1vdmVzCmxsIGtkeFtdPXstMiwtMiwyLDIsLTEsLTEsMSwxfTsKbGwga2R5W109ey0xLDEsMSwtMSwtMiwyLC0yLDJ9OwoKbGwgcG93ZXIobGwgeCwgbGwgeSwgbGwgcCkKewogIGxsIHJlcz0xOwogIHg9eCVwOwogIHdoaWxlKHk+MCkKICB7CiAgICBpZih5JjEpCiAgICByZXM9KHJlcyp4KSVwOwogICAgeT15Pj4xOwogICAgeD0oeCp4KSVwOwogIH0KICByZXR1cm4gcmVzOwp9CgpsbCBuLGFbTUFYXTsKCmxsIGYobGwgaSxsbCBzdW0pCnsKICBpZihpPT1uLTEpIHJldHVybiBzdW07CiAgbGwgbWF4eD0wOwogIG1heHg9bWF4KG1heHgsbWF4KGYoaSsxLHN1bSthYnMobWluKGxsKDEpLGFbaV0pLW1pbihsbCgxKSxhW2krMV0pKSksZihpKzEsc3VtK2FicyhtaW4obGwoMSksYVtpXSktbWF4KGxsKDEpLGFbaSsxXSkpKSkpOwogIG1heHg9bWF4KG1heHgsbWF4KGYoaSsxLHN1bSthYnMobWF4KGxsKDEpLGFbaV0pLW1pbihsbCgxKSxhW2krMV0pKSksZihpKzEsc3VtK2FicyhtYXgobGwoMSksYVtpXSktbWF4KGxsKDEpLGFbaSsxXSkpKSkpOwogIHJldHVybiBtYXh4Owp9CgppbnQgbWFpbigpCnsKICBsbCB0OwogIGNpbj4+dDsKICB3aGlsZSh0LS0pCiAgewogICAgY2luPj5uOwogICAgZm9yKGxsIGk9MDtpPG47aSsrKSBjaW4+PmFbaV07CiAgICBjb3V0PDxmKDAsMCk8PGVuZGw7CiAgfQp9Cg==