Notes

Template in C

Constraints

2 ≤ the number of operands in the expression ≤ 100
1 ≤ the number of operators in the expression ≤ 99
-1 × 109 ≤ values in the stack ≤ 109

Input

An expression is given in a line. Two consequtive symbols (operand or operator) are separated by a space character.

You can assume that +, - and * are given as the operator and an operand is a positive integer less than 106

Output

Print the computational result in a line.

Examples

Input

1 2 +


Output

3


Input

1 2 + 3 4 - *


Output

-3
#include <iostream>
#include <stack>

int main(){
  std::stack<int> s;
  std::string buf;

  while(std::cin >> buf){
    try{
      int i = stoi(buf);
      s.push(i);
    }
    catch(...){
      int a = s.top();
      s.pop();
      if(buf == "+"){
        s.top() += a;
      }
      else if(buf == "-"){
        s.top() -= a;
      }
      else{
        s.top() *= a;
      }
    }
  }
  std::cout << s.top() << std::endl;
}