def dp(arr):
    lst=[]
    lst.append([arr[0]])
    c=0
    maxi=0
    for i in range(1,len(arr)):
        if(arr[i]*lst[c][-1]>0):
            lst[c].append(arr[i])
        else:
            temp=[arr[i]]
            lst.append(temp)
            c+=1
    for i in lst:
        maxi+=max(i)
    return maxi
t=int(input())
for i in range(t):
    n=int(input())
    arr=list(map(int,input().split()))
    print(dp(arr))