#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
int main() {
int T;cin>>T;
for(int i=0;i<T;i++)
{
int n;cin>>n;
vector<long long> nums(n+1,0);
for(int j=1;j<=n;j++)
{
cin>>nums[j];
}
//动态规划
vector<long long> dp(n+1,0);
if(n==1) {cout<<nums[1]<<endl;continue;}
if(n==2) {cout<<(nums[1]+nums[2]>0?nums[1]+nums[2]:0)<<endl;continue;}
dp[1] = nums[1];
dp[2] = nums[2]+dp[1]>0?nums[1]+nums[2]:0;
for(int j=3;j<=n;j++)
{
dp[j] = max({dp[j-2],dp[j-3],dp[j-1]+nums[j]});
}
// for(int j:dp)
// {
// cout<<j<<" ";
// }
cout<<dp[n]<<endl;
}
}
// 64 位输出请用 printf("%lld")