#include <iostream>
#include <string>
#include <cctype>
#include <cassert>
using namespace std;
string S;
size_t cur = 0;

int digit() {
    assert(isdigit(S[cur]));
    int n = S[cur++] - '0';
    return n;
}

int number() {
    int n = digit();
    while(cur < S.size() && isdigit(S[cur])) {
        n = n*10 + digit();
    }
    return n;
}

int expression();
int factor() {       //Factor := '(' Expression ')' | Number
    if(S[cur] != '(') return number();
    cur++;
    int n = expression();
    assert(S[cur] == ')');
    cur++;
    return n;
}

int term() {       //Term := Factor { ('*'|'/') Factor }
    int a = factor();
    while(cur < S.size() && (S[cur] == '*' || S[cur] == '/')) {
        char op = S[cur++];
        int b = factor();
        if(op =='*') { a *= b; } else { a /= b; }
    }
    return a;
}

int expression() {       //Expression := Term { ('+'|'-') Term}
    int a = term();
    while(cur < S.size() && (S[cur] == '+' || S[cur] == '-')) {
        char op = S[cur++];
        int b = term();
        if(op == '+') { a += b; } else { a -= b;}
    }
    return a;
}

int main() {
    int N;
    cin >> N;
    for(int i=0; i<N; i++) {
        cur = 0;
        cin >> S;
        S.resize(S.size() - 1);
        cout << expression() << endl;
    }
}
