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 <cstdlib>
using namespace std;

int st[100];
int si=0;

int pop(){
  return st[--si];
}

void push(int val){
  st[si++]=val;
}

int main(){
  char t[10];
  int a,b;
  while (cin >>t){
    if ('0'<=t[0]&&t[0]<='9')push(atoi(t));
    else{
	b=pop();
	a=pop();
      if (t[0]=='+')push(a+b);
      else if (t[0]=='-')push(a-b);
      else if (t[0]=='*')push(a*b);
    }
  }
  cout << pop() << endl;
  return 0;
}