#include <bits/stdc++.h>
using namespace std;

#define oo 1e15
#define fi first
#define se second
#define sp(iiii) setprecision(iiii)
#define IO ios_base::sync_with_stdio(false); cin.tie(0)
#define ms(aaaa,xxxx) memset(aaaa,xxxx,sizeof(aaaa))
#define cntbit(xxxx) __builtin_popcount(xxxx)
#define getbit(xxxx,aaaa) ((xxxx>>(aaaa-1))&1)

typedef long double ld;
typedef long long ll;
typedef unsigned long long ull;
typedef pair<int,int> pii;
typedef pair<pair<int,int>,int> piii;
typedef pair<long long,long long> pll;
typedef pair<pair<long long,long long>,long long> plll;
typedef pair<pair<long long,long long>,pair<long long,long long>> pllll;
typedef pair<pair<long long,long long>,bool> pllb;

const ll mod=1e9+7;
const ll maxn=1e4+1;

ll t,it,n,a[500009],b[500009],c[500009],f1[500009],f2[500009],cur,res,i;

int main(){
    IO;
    #ifndef ONLINE_JUDGE
        freopen("test.inp", "r", stdin);
        freopen("test.out", "w", stdout);
    #else
    #endif
    cin>>t;
    for (it=1;it<=t;it++) {
        cin>>n;
        for (i=1;i<=n;i++) {
                cin>>a[i];
        }
        for (i=1;i<=n;i++) {
                cin>>b[i];
        }
        for (i=1;i<=n;i++) {
                cin>>c[i];
        }
        for (i=2;i<n;i++) {
            f1[i]=a[i]-abs(b[i+1]-c[i+1])+1;
        }
        for (i=1;i<n;i++) {
            f2[i]=abs(b[i+1]-c[i+1])+1;
        }
        cur=f2[1];
        res=0;
        for (i=2;i<=n;i++) {
            res=max(res,cur+a[i]);
            if (f2[i]>cur+f1[i]||f2[i]==1) {
                cur=f2[i];
            }
            else {
                cur+=f1[i];
            }
        }
        cout<<res<<'\n';
    }
}
