public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner s = new Scanner(System.in);
int t = s.nextInt();
int[] arr = new int[t];
for(int x=0; x < t; x++) {
int n = s.nextInt();
int[] a = new int[n];
/// taking input
for(int i=0; i<n; i++) {
a[i] = s.nextInt();
}
// ////
arr[x] = maximumCircularSum(a, n);
}
for(int i=0; i<t; i++) {
System.out.println(arr[i]);
}
s.close();
}
private static int maximumCircularSum(int[] a, int n) {
// TODO Auto-generated method stub
for(int i=0; i<a.length; i++) {
a[i] = -a[i];
}
/// base case
if(n == 1)
return a[0];
int arr_sum = 0;
for(int i=0; i<n; i++) {
arr_sum += a[i];
}
int maxSubarray = kadaneAlgo(a);
int res = - ((arr_sum) - maxSubarray);
return res;
}
private static int kadaneAlgo(int[] a) {
// TODO Auto-generated method stub
int curr = 0;
int maxtillNow = 0;
for(int i=0; i<a.length; i++) {
curr = curr + a[i];
if(curr < 0) {
curr = 0;
}
maxtillNow = Math.max(maxtillNow, curr);
}
return maxtillNow;
}