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<stdlib.h>
#include<stdio.h>
using namespace std;
int top=0,s[100000];

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

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

int main(){
  int a,b;
  char n[100];
  while(scanf("%s",n)!=EOF){
    if(n[0]=='+'){
      a=pop(),b=pop(),push(a+b);
    }else if(n[0]=='-'){
      a=pop(),b=pop(),push(b-a);
    }else if(n[0]=='*'){
      a=pop(),b=pop(),push(a*b);
    }else{
      push(atoi(n));
    }
  }
  cout<<s[0]<<endl;
  return 0;
}