func_code_string: #include <bits/stdc++.h>   #pragma GCC optimize ( Ofast ,  unroll-loops )   using namespace std;   #define ll long long   //#define int ll   #define FOR(i,a,b) for (int i = (a); i<(b); i++)   #define REP(i,n) FOR(i,0,n)   #define REP1(i,n) FOR(i,1,n+1)   #define RREP(i,n) for (int i=(n)-1; i>=0; i--)   #define f first   #define s second   #define pb push_back   #define ALL(x) x.begin(),x.end()   #define SZ(x) (int)(x.size())   #define SQ(x) (x)*(x)   #define pii pair<int, int>   #define pdd pair<double ,double>   #define pcc pair<char, char>    #define endl   n    //#define TOAD   #ifdef TOAD   #define bug(x) cerr<<__LINE__<< :  <<#x<<  is  <<x<<endl   #define IOS()   #else   #define bug(...)   #define IOS() ios::sync_with_stdio(0), cin.tie(0), cout.tie(0)   #endif   const ll inf = 1ll<<60;   const int iinf=2147483647;   const ll mod = 1e9+7;   const ll maxn=1e7+5;   const double PI=acos(-1);   ll pw(ll x, ll p){       ll ret=1;       while (p>0){           if (p&1){               ret*=x;               ret%=mod;           }           x*=x;           x%=mod;           p>>=1;       }       return ret;   }      ll inv(ll a){       return pw(a,mod-2);       }      signed main(){       IOS();       int t; cin>>t;       while(t--){           int n; cin>>n;           vector<pii> vc(n);           vector<int> t(n);           REP(i,n) cin>>vc[i].f>>vc[i].s;           REP(i,n) cin>>t[i];           int cur=vc[0].f, ans=0;           REP(i,n){               cur+=t[i];               if (i==n-1) break;               int ex=(vc[i].s-vc[i].f)/2+((vc[i].s-vc[i].f)%2>0);               cur+=ex;               cur=max(cur, vc[i].s);               cur+=vc[i+1].f-vc[i].s;              }           cout<<cur<<endl;       }   }