#include<iostream>
#include<string>
#include<vector>
using namespace std;
int add(string& s, int l, int r)
{
vector<int> st;//每个括号内的加数
char op = '+';
int num = 0,res=0;
for(int i = l; i <= r; i++)
{
if(isdigit(s[i]))num = num*10+s[i]-'0';//数字部分
if(s[i]=='{'||s[i]=='['||s[i]=='(')
{
int layer = 0,j;
for(j=i;j<=r;j++)//直到最小的括号
if(s[j]=='{'||s[j]=='['||s[j]=='(')layer++;
else if(s[j]=='}'||s[j]==']'||s[j]==')'){layer--;if(layer==0)break;}
num = add(s,i+1,j-1);//括号内
i=j+1;//括号外
}
if(!isdigit(s[i])||i == r)//运算符or结束
{
switch(op)//上一次的运算符
{
case '+': st.push_back(num); break;
case '-': st.push_back(-num); break;
case '*': st.back() *= num; break;
case '/': st.back() /= num; break;
}
op = s[i];//先记着这次的运算符
num = 0;//数字使用完毕
}
}
for(int x : st)res += x;
return res;
}
int main()
{
string s;
while(cin >> s)
cout << add(s, 0, s.length() - 1) << endl;
}