#include <string>
#include <iostream>
#include <cctype>
using namespace std;
typedef string::const_iterator State;
class ParseError {};

/*
   <??????????????????> ::= <??????????????????> (+ or -) <??????????????????> (+ or -) ...
   <??????????????????> ::= <??°> (* or /) <??°> (* or /) ...
   <??°>           ::= ...
   */


int expression(State &begin);
int term(State &begin);
int number(State &begin);
int factor(State &begin);

int factor(State &begin)
{ 
  if (*begin == '(')
  {
    begin++;
    int ret = expression(begin);
    begin++;
  }
  else
  {
    return number(begin);
  }
}


int main(void) {
  int N;
  cin >> N;
  cin.ignore();
  for(int i = 0; i < N; i++)
  {
    string s;
    getline(cin, s);
    
    State begin = s.begin();
    int ans = expression(begin);
    cout << ans << endl;
  }

  return 0;
}
int expression(State &begin)
{
  int ret = term(begin);
  for(;;) {
    if(*begin == '+') {
        begin++;
        ret += term(begin);
    } else if (*begin == '-')
       {
          begin++;
          ret -= term(begin);
       }
    else{
        break;
    }
    
  }
  return ret;
}
int term(State &begin)
{
  int ret = number(begin);
  for(;;)
  {
    if(*begin == '*')
    {
      begin++;
      ret *= factor(begin);
    } else if(*begin == '/') {
      begin++;
      ret /= factor(begin);
    } else {
      break;
    }
  }
  return ret;
}
int number(State &begin) {
  int ret = 0;
  while(isdigit(*begin)) {
    ret *=10;
    ret += *begin - '0';
    begin++;
  }

  return ret;

}