# 输入
string = input()
arr = []
for i in string:
    # 遇到数字
    if '0' <= i <= '9':
        # 判断前面是否数字,是否需要拼接
        if len(arr) > 0 and '0' <= arr[-1] <= '9':
            arr[-1] = arr[-1] + i
        else:
            arr.append(i)
    # 遇到非数字,直接加入
    else:
        if i == '-':
            # 如果如果是负数,则补0
            if len(arr) == 0:
                arr.append('0')
                arr.append(i)
            elif arr[-1] in "({[":
                arr.append('0')
                arr.append(i)
            else:
                arr.append(i)
        else:
            arr.append(i)
# 两个栈,一个存储运算符,一个存储数字
stack1,stack2,i = [],[],0
while i < len(arr):
    # 遇到左括号,直接入栈
    if  arr[i] in "({[":
        stack1.append(arr[i])
    # 遇到右括号,依次弹出符号栈,直到左括号为止
    elif arr[i] in ")}]":
        while True:
            temp = stack1.pop()
            if temp in "({[":
                break
            else:
                a = stack2.pop()
                b = stack2.pop()
                if temp == '+':
                    stack2.append(b+a)
                elif temp == '-':
                    stack2.append(b-a)
                elif temp == '*':
                    stack2.append(b*a)
                else:
                    stack2.append(int(b/a))
    # 遇到运算符,判断优先级
    elif arr[i] in "+-*/":
        # 如果stack1只有一个元素,直接加入
        if not stack1:
            stack1.append(arr[i])
        else:
            # 弹出stack1中所有大于当前运算符的运算符 
            while True:
                if len(stack1) == 0:
                    stack1.append(arr[i])
                    break
                temp = stack1[-1]
                if temp in "({[" :
                    stack1.append(arr[i])
                    break
                # 乘除,直接计算
                elif temp in "*/":
                    temp = stack1.pop()
                    a = stack2.pop()
                    b = stack2.pop()
                    if temp == '*':
                        stack2.append(b*a)
                    elif temp == '/':
                        stack2.append(int(b/a))
                # 加减,看当前元素是否也是加减
                else:
                    if arr[i] in "+-":
                        temp = stack1.pop()
                        a = stack2.pop()
                        b = stack2.pop()
                        if temp == '+':
                            stack2.append(b+a)
                        elif temp == '-':
                            stack2.append(b-a)
                        stack1.append(arr[i])
                    else:
                        stack1.append(arr[i])
                    break
    # 遇到数字,直接加入
    else:
        stack2.append(int(arr[i]))
    i += 1
# 若 stack1还存在运算符,依次弹出
while stack1:
    temp = stack1.pop()
    a = stack2.pop()
    b = stack2.pop()
    if temp == '+':
        stack2.append(b+a)
    elif temp == '-':
        stack2.append(b-a)
    elif temp == '*':
        stack2.append(b*a)
    else:
        stack2.append(int(b/a))
# 输出结果
print(stack2.pop())