import java.util.*;
import java.io.*;
public class Practice1{
  public static void main(String[]args){
    Scanner sc=new Scanner(System.in);
    int t=sc.nextInt();
    for(int l=0;l<t;l++){
      int n=sc.nextInt();
      long arr[]=new long[n];
      for(int i=0;i<arr.length;i++){
        arr[i]=sc.nextLong();
      }
      long sum=0;
      int idx1=0,idx2=0,c=0;
      if(arr[0]>0)
        c=1;
      else
        c=-1;
      
      for(int i=1;i<arr.length;i++){
        if(check(arr,i)==c)
          idx2=i; 
        else{
          sum+=sub(arr,idx1,idx2);

          idx1=i;
          idx2=i;
          c=check(arr,i);
        }
        if(i==arr.length-1){
          if(check(arr,i-1)==check(arr,i)){
            idx2=i;

            sum+=sub(arr,idx1,idx2);
          }
          else{
            sum+=sub(arr,i,i);

          }
        }
      }
      System.out.println(sum);
    }
  }
  
  static long sub(long a[],int b,int c){
    if(b==c)
      return a[b];
    
    long arr[]=Arrays.copyOfRange(a,b,c+1);
    Arrays.sort(arr);
    
    return arr[arr.length-1];
  }
  
  static int check(long a[],int b){
    if(a[b]>0)
      return 1;
    
    return -1;
  }
}
  
            
            
            
            