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>
#include<string>
#include<cstdlib>
using namespace std;

stack <int> st;

int caluclation( string s ){
 int b = st.top();
 st.pop();
 int a = st.top();
 st.pop();

 int c;
 if( s == "+" ){
   c = a+b;
 }
 if( s == "-" ){
   c = a-b;
 }
 if( s == "*" ){
   c = a*b;
 }

 return c;
}

int main(){
 string s;
 while( cin >> s ){
  if( s == "+" || s == "-" || s == "*" ){
    st.push(caluclation(s));
  }else{
    st.push(atoi(s.c_str()));
  }
 }

 cout << st.top() << endl;

 return 0;
}
