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>
using namespace std;
int main(){
	stack<int> st;
	int r,l,k,num;
	string str;
	while(cin>>str){
		if('0'<=str[0]&&str[0]<='9'){
			k=1,num=0;
			for(int i=str.size()-1;i>=0;--i){
				num+=k*(str[i]-'0');
				k*=10;
			}
			st.push(num);
		}
		else{
			r=st.top();
			st.pop();
			l=st.top();
			st.pop();
			if(str[0]=='+')st.push(l+r);
			else if(str[0]=='-')st.push(l-r);
			else if(str[0]=='*')st.push(l*r);
		}
	}
	cout<<st.top()<<endl;

	return 0;
}
