#pragma GCC optimize("O3,unroll-loops")
#include<bits/stdc++.h>
using namespace std;
#define fastio() ios_base::sync_with_stdio(false);cin.tie(nullptr);
#define int long long
void del(multiset <int> &ms , int val) {
ms.erase(ms.find(val)) ;
}
void solve() {
int n ;
cin >> n ;
multiset <int> pos ;
multiset <int> neg ;
int s = 0 ;
for(int i = 0 ; i < n ; i ++) {
int x ;
cin >> x ;
if(x >= 0) pos.insert(x) ;
else neg.insert(x) ;
}
if(!pos.empty()) {
int val = *(--pos.end()) ;
s = val ;
del(pos , val) ;
} else {
int val = *(--neg.end()) ;
s = val ;
del(neg , val) ;
}
if(!pos.empty()) {
int val = *(--pos.end()) ;
s -= val ;
del(pos , val) ;
} else {
int val = *(--neg.end()) ;
s -= val ;
del(neg , val) ;
}
if(!pos.empty()) {
int val = *(--pos.end()) ;
s += val ;
del(pos , val) ;
}
cout << s << endl ;
}
int32_t main() {
fastio();
int t = 1;
cin >> t;
while (t--) solve();
}