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<string>
#include<stack>

using namespace std;

int main(){
	string str;
	int a,b;
	stack<int> s;
	while(cin >> str){
		switch(str[0]){
			case '+': a=s.top();s.pop();b=s.top();s.pop();s.push(b+a);break;
			case '-': a=s.top();s.pop();b=s.top();s.pop();s.push(b-a);break;
			case '*': a=s.top();s.pop();b=s.top();s.pop();s.push(b*a);break;
			default : s.push(stoi(str));break;
		}
	}	
	cout << s.top() << endl;
	return 0;
}