import java.util.*;
class Main {
static final long MOD = 1000000007;
public static void main
(String[] args
) { Scanner sc
= new Scanner
(System.
in); int T = sc.nextInt();
while (T-- > 0) {
int n = sc.nextInt();
long[] H = new long[n + 1];
for (int i = 1; i <= n; i++) {
H[i] = sc.nextLong();
}
long[][] dp = new long[n + 1][4];
long[] best = new long[n + 1];
for (int i = 1; i <= n; i++) {
// take 2 houses ending at i
if (i >= 2) {
long prev = 0;
if (i - 3 >= 0) {
prev = best[i - 3];
}
dp[i][2] = H[i] + H[i - 1] + prev;
}
// take 3 houses ending at i
if (i >= 3) {
long prev = 0;
if (i - 5 >= 0) {
prev = best[i - 5];
}
dp[i][3] = H[i] + H[i - 1] + H[i - 2] + prev;
}
best[i] = best[i - 1];
best
[i
] = Math.
max(best
[i
], dp
[i
][2]); best
[i
] = Math.
max(best
[i
], dp
[i
][3]); best[i] %= MOD;
}
System.
out.
println(best
[n
] % MOD
); }
}
}
aW1wb3J0IGphdmEudXRpbC4qOwpjbGFzcyBNYWluIHsKICAgIHN0YXRpYyBmaW5hbCBsb25nIE1PRCA9IDEwMDAwMDAwMDc7CiAgICBwdWJsaWMgc3RhdGljIHZvaWQgbWFpbihTdHJpbmdbXSBhcmdzKSB7CiAgICAgICAgU2Nhbm5lciBzYyA9IG5ldyBTY2FubmVyKFN5c3RlbS5pbik7CiAgICAgICAgaW50IFQgPSBzYy5uZXh0SW50KCk7CiAgICAgICAgd2hpbGUgKFQtLSA+IDApIHsKICAgICAgICAgICAgaW50IG4gPSBzYy5uZXh0SW50KCk7CiAgICAgICAgICAgIGxvbmdbXSBIID0gbmV3IGxvbmdbbiArIDFdOwogICAgICAgICAgICBmb3IgKGludCBpID0gMTsgaSA8PSBuOyBpKyspIHsKICAgICAgICAgICAgICAgIEhbaV0gPSBzYy5uZXh0TG9uZygpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGxvbmdbXVtdIGRwID0gbmV3IGxvbmdbbiArIDFdWzRdOwogICAgICAgICAgICBsb25nW10gYmVzdCA9IG5ldyBsb25nW24gKyAxXTsKICAgICAgICAgICAKICAgICAgICAgICAgZm9yIChpbnQgaSA9IDE7IGkgPD0gbjsgaSsrKSB7CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIC8vIHRha2UgMiBob3VzZXMgZW5kaW5nIGF0IGkKICAgICAgICAgICAgICAgIGlmIChpID49IDIpIHsKICAgICAgICAgICAgICAgICAgICBsb25nIHByZXYgPSAwOwogICAgICAgICAgICAgICAgICAgIGlmIChpIC0gMyA+PSAwKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHByZXYgPSBiZXN0W2kgLSAzXTsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgZHBbaV1bMl0gPSBIW2ldICsgSFtpIC0gMV0gKyBwcmV2OwogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIC8vIHRha2UgMyBob3VzZXMgZW5kaW5nIGF0IGkKICAgICAgICAgICAgICAgIGlmIChpID49IDMpIHsKICAgICAgICAgICAgICAgICAgICBsb25nIHByZXYgPSAwOwogICAgICAgICAgICAgICAgICAgIGlmIChpIC0gNSA+PSAwKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHByZXYgPSBiZXN0W2kgLSA1XTsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgZHBbaV1bM10gPSBIW2ldICsgSFtpIC0gMV0gKyBIW2kgLSAyXSArIHByZXY7CiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgYmVzdFtpXSA9IGJlc3RbaSAtIDFdOwogICAgICAgICAgICAgICAgYmVzdFtpXSA9IE1hdGgubWF4KGJlc3RbaV0sIGRwW2ldWzJdKTsKICAgICAgICAgICAgICAgIGJlc3RbaV0gPSBNYXRoLm1heChiZXN0W2ldLCBkcFtpXVszXSk7CiAgICAgICAgICAgICAgICBiZXN0W2ldICU9IE1PRDsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKGJlc3Rbbl0gJSBNT0QpOwogICAgICAgIH0KICAgIH0KfQ==