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<algorithm>
using namespace std;
int s[100], top=0;
char n[100];

void push(int num) {
	s[top++] = num;
}

int pop() {
	return (s[--top]);
}

int main()
{
	while (cin >> n) {
		if (n[0] == '+') {
			int a = pop();
			int b = pop();
			push(a + b);
		}
		else if (n[0] == '-') {
			int a = pop();
			int b = pop();
			push(b-a);
		}
		else if (n[0] == '*') {
			int a = pop();
			int b = pop();
			push(a * b);
		}
		else {
			push(atoi(n));
		}
	}
	cout << pop() << endl;
}
