import java.util.ArrayList;
import java.util.List;
import java.util.*;

public class Main {

    public static void main(String[] args) {
       Scanner sc = new Scanner(System.in);
        String sb = sc.nextLine();
       System.out.println(getIn(sb));

    }

    private static int pos=0;
     public static int getIn(String sb){
        //递归之前方法栈保存各个节点的参数
         Stack<Integer> stack = new Stack<>();
         char opt='+';
         int num =0;
         while (pos<sb.length()){
             if ('('==sb.charAt(pos)){
                 pos++;
                 num=getIn(sb);
             }
         while (pos<sb.length()&&Character.isDigit(sb.charAt(pos))){
             num=num*10+sb.charAt(pos)-'0';
             pos++;
         }
         if (opt=='+') stack.push(num);
         if (opt=='-') stack.push(-num);
         if (opt=='*') stack.push(stack.pop()*num);
         num=0;
         if (pos<sb.length()&&sb.charAt(pos)==')'){
             pos++;
             break;
         }else if (pos<sb.length()){
             opt=sb.charAt(pos);
             pos++;
         }
     }

         int sum =0;
         while (!stack.isEmpty()){
             sum+=stack.pop();
         }
         return sum;
}

}