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 <cstring>
#include <cstdlib>

using namespace std;
stack<long> s;
int main(){
	string str;
	while (cin >> str){
		if (str[0] == '+' || str[0] == '-' || str[0] == '*'){
			char ch; ch = str[0];
			long b = s.top(); s.pop();
			long a = s.top(); s.pop();
			if (ch == '+') s.push(a + b);
			else if (ch == '-') s.push(a - b);
			else if (ch == '*') s.push(a*b);
		}
		else {
			long tmp = atoi(str.c_str());
			s.push(tmp);
		}
	}
	cout << s.top() << '\n';
}