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<sstream>
#include<stack>
#include<string>
using namespace std;
int main(){
	string t;
	int tmp,ans=0,t1,t2;
	stack<int>sta;
	
	while(cin>>t){
		
		if(t[0]=='-'||t[0]=='+'||t[0]=='*'){
			t2=sta.top();
			sta.pop();
			t1=sta.top();
			sta.pop();
			if(t[0]=='-')sta.push(t1-t2);
			if(t[0]=='+')sta.push(t1+t2);
			if(t[0]=='*')sta.push(t1*t2);
		}

		else{
			stringstream ss(t);
			ss>>tmp;
			sta.push(tmp);
		}
	
	}
	cout<<sta.top()<<endl;
		sta.pop();
	return 0;
}