#include <bits/stdc++.h>
using namespace std;
#define int long long int
#define double long double
#define print(a) for(auto x : a) cout << x << " "; cout << endl
const int M = 1000000007;
const int N = 3e5+9;
const int INF = 2e9+1;
const int LINF = 2000000000000000001;
inline int power(int a, int b, int mod=M) {
int x = 1;
a %= mod;
while (b) {
if (b & 1) x = (x * a) % mod;
a = (a * a) % mod;
b >>= 1;
}
return x;
}
//_ ***************************** START Below *******************************
vector<string> a;
int consistency(int n){
vector<int> dpMax(n+1, -LINF);
vector<int> dpMin(n+1, LINF);
dpMax[0] = 1;
dpMin[0] = 1;
for(int i=1; i<=n; i++){
string opn = a[i-1];
char op = opn[0];
if(op == 'N'){
dpMax[i] = max(dpMax[i-1] , -dpMin[i-1] );
dpMin[i] = min(dpMin[i-1] , -dpMax[i-1] );
}
else{
int x = stoll(opn.substr(2));
if(op == '+'){
dpMax[i] = max(dpMax[i-1] , dpMax[i-1] + x);
dpMin[i] = min(dpMin[i-1] , dpMin[i-1] + x);
}
else if(op == '-'){
dpMax[i] = max(dpMax[i-1] , dpMax[i-1] - x);
dpMin[i] = min(dpMin[i-1] , dpMin[i-1] - x);
}
else if(op == '/'){
dpMax[i] = max(dpMax[i-1] , dpMax[i-1]/x );
dpMin[i] = min(dpMin[i-1] , dpMin[i-1]/x );
}
else {
dpMax[i] = max(dpMax[i-1] , dpMax[i-1] * x);
dpMin[i] = min(dpMin[i-1] , dpMin[i-1] * x);
}
}
}
return dpMax[n];
}
int practice(int n){
return 0;
}
void solve() {
int n;
cin>> n;
cin.ignore();
a.resize(n);
for(int i=0; i<n; i++){
string line;
getline(cin, line);
a[i] = line;
}
cout << consistency(n) << endl;
}
int32_t main() {
ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0);
int t = 1;
cin >> t;
cin.ignore();
while (t--) {
solve();
}
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CiNkZWZpbmUgaW50ICAgICAgICAgICAgICBsb25nIGxvbmcgaW50CiNkZWZpbmUgZG91YmxlICAgICAgICAgICBsb25nIGRvdWJsZQojZGVmaW5lIHByaW50KGEpICAgICAgICAgZm9yKGF1dG8geCA6IGEpIGNvdXQgPDwgeCA8PCAiICI7IGNvdXQgPDwgZW5kbAoKCmNvbnN0IGludCBNID0gMTAwMDAwMDAwNzsKY29uc3QgaW50IE4gPSAzZTUrOTsKY29uc3QgaW50IElORiA9IDJlOSsxOwpjb25zdCBpbnQgTElORiA9IDIwMDAwMDAwMDAwMDAwMDAwMDE7CgppbmxpbmUgaW50IHBvd2VyKGludCBhLCBpbnQgYiwgaW50IG1vZD1NKSB7CiAgICBpbnQgeCA9IDE7CiAgICBhICU9IG1vZDsKICAgIHdoaWxlIChiKSB7CiAgICAgICAgaWYgKGIgJiAxKSB4ID0gKHggKiBhKSAlIG1vZDsgCiAgICAgICAgYSA9IChhICogYSkgJSBtb2Q7CiAgICAgICAgYiA+Pj0gMTsKICAgIH0KICAgIHJldHVybiB4Owp9CgoKLy9fICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqIFNUQVJUIEJlbG93ICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKCgoKCnZlY3RvcjxzdHJpbmc+IGE7CgppbnQgY29uc2lzdGVuY3koaW50IG4pewoJCgl2ZWN0b3I8aW50PiBkcE1heChuKzEsIC1MSU5GKTsKCXZlY3RvcjxpbnQ+IGRwTWluKG4rMSwgTElORik7CgkKCWRwTWF4WzBdID0gMTsKCWRwTWluWzBdID0gMTsKCQoJZm9yKGludCBpPTE7IGk8PW47IGkrKyl7CgkJc3RyaW5nIG9wbiA9IGFbaS0xXTsKCQkKCQljaGFyIG9wID0gb3BuWzBdOwoJCWlmKG9wID09ICdOJyl7CgkJCWRwTWF4W2ldID0gbWF4KGRwTWF4W2ktMV0gLCAtZHBNaW5baS0xXSApOwoJCQlkcE1pbltpXSA9IG1pbihkcE1pbltpLTFdICwgLWRwTWF4W2ktMV0gKTsKCQl9CgkJZWxzZXsKCQkJaW50IHggPSBzdG9sbChvcG4uc3Vic3RyKDIpKTsKCQkJCgkJCWlmKG9wID09ICcrJyl7CgkJCQlkcE1heFtpXSA9IG1heChkcE1heFtpLTFdICwgZHBNYXhbaS0xXSArIHgpOwoJCQkJZHBNaW5baV0gPSBtaW4oZHBNaW5baS0xXSAsIGRwTWluW2ktMV0gKyB4KTsKCQkJfQoJCQllbHNlIGlmKG9wID09ICctJyl7CgkJCQlkcE1heFtpXSA9IG1heChkcE1heFtpLTFdICwgZHBNYXhbaS0xXSAtIHgpOwoJCQkJZHBNaW5baV0gPSBtaW4oZHBNaW5baS0xXSAsIGRwTWluW2ktMV0gLSB4KTsKCQkJfQoJCQllbHNlIGlmKG9wID09ICcvJyl7CgkJCQlkcE1heFtpXSA9IG1heChkcE1heFtpLTFdICwgZHBNYXhbaS0xXS94ICk7CgkJCQlkcE1pbltpXSA9IG1pbihkcE1pbltpLTFdICwgZHBNaW5baS0xXS94ICk7CgkJCX0KCQkJZWxzZSB7IAoJCQkJZHBNYXhbaV0gPSBtYXgoZHBNYXhbaS0xXSAsIGRwTWF4W2ktMV0gKiB4KTsKCQkJCWRwTWluW2ldID0gbWluKGRwTWluW2ktMV0gLCBkcE1pbltpLTFdICogeCk7CgkJCX0KCQl9Cgl9CgkKCXJldHVybiBkcE1heFtuXTsKCn0KCgoKCgoKCgoKCgoKCgoKaW50IHByYWN0aWNlKGludCBuKXsKCgogICAgcmV0dXJuIDA7Cn0KCgoKCgp2b2lkIHNvbHZlKCkgewogICAgCiAgICBpbnQgbjsKICAgIGNpbj4+IG47CiAgICBjaW4uaWdub3JlKCk7CiAgICAKICAgIGEucmVzaXplKG4pOwogICAgZm9yKGludCBpPTA7IGk8bjsgaSsrKXsKICAgIAlzdHJpbmcgbGluZTsKICAgIAlnZXRsaW5lKGNpbiwgbGluZSk7CiAgICAJYVtpXSA9IGxpbmU7CiAgICB9CiAgICAKICAgIGNvdXQgPDwgY29uc2lzdGVuY3kobikgPDwgZW5kbDsKCgp9CgoKCgoKaW50MzJfdCBtYWluKCkgewogICAgaW9zX2Jhc2U6OnN5bmNfd2l0aF9zdGRpbygwKTsgY2luLnRpZSgwKTsgY291dC50aWUoMCk7CgogICAgaW50IHQgPSAxOwogICAgY2luID4+IHQ7CiAgICBjaW4uaWdub3JlKCk7CiAgICB3aGlsZSAodC0tKSB7CiAgICAgICAgc29sdmUoKTsKICAgIH0KCiAgICByZXR1cm4gMDsKfQ==