#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;
}