/*
最大字段和
trip:全为负数的情况
*/
#include <stdio.h>
const int N = 100001;
const int MININF = -100000000;
int main()
{
int a[N],p,maxsum,t,cas = 0;
scanf("%d",&t);
while(t--)
{
int n;
scanf("%d",&n);
int i;
for(i = 0; i < n; ++i)
scanf("%d" , a + i);
int lef = 0,rig = 0,tlef = 0,trig = 0;
maxsum = 0;
p = MININF;
for(i = 0; i < n && a[i] < 0; ++i)
if(p < a[i])
{
p = a[i];
lef = i;
}
if(i == n)
{
if(cas)
printf("\n")