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 <ctype.h>
#include <string>
using namespace std;

int main() {
	stack <int> st;
	string s;
	while(cin >> s){
		char c = s[0];
		if(isdigit(c)){
			st.push(stoi(s));
		}
		else{
			int y=st.top();
			st.pop();
			int x=st.top();
			st.pop();
			int z=0;
			if(c=='+') z=x+y;
			else if(c=='-') z=x-y;
			else if(c=='*') z=x*y;
			else if(c=='/') z=x/y;
			st.push(z);
		}
	}
	cout << st.top() <<endl;
		
	return 0;
}