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<cstdlib>
using namespace std;
int main()
{
    int a,b;
    stack<int> s;
    string c;
    while(cin>>c)
    {
        if(c[0]=='+'){a=s.top();s.pop();b=s.top();s.pop();s.push(a+b);}
        else if(c[0]=='-'){a=s.top();s.pop();b=s.top();s.pop();s.push(b-a);}
        else if(c[0]=='*'){a=s.top();s.pop();b=s.top();s.pop();s.push(a*b);}
        else
            s.push(atoi(c.c_str()));//atoi()
    }
    cout<<s.top()<<endl;
    s.pop();
    return 0;
}