#include<stdio.h>
#include<stdlib.h>
#define MAX 101
void isEmpty(void);
void isFull(void);
void push(int);
int pop(void);
int top=0;
int op[MAX];
int main(){
  int x,n,m,flag=0;
  char s[100];

  while( scanf("%s", s) != EOF ){
    if ( s[0] == '+' ){
      n=pop();
      m=pop();
      top++;
      x=m+n;
      op[top]=x;
    } else if ( s[0] == '-' ){
      n=pop();
      m=pop();
      x=m-n;
      top++;
      op[top]=x;
    } else if ( s[0] == '*' ){
      n=pop();
      m=pop();
      top++;
      op[top]=m*n;
    } else {
      x = atoi(s);
      push(x);
    }
  }

  printf("%d\n",op[top]);

  return 0;
}

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

int pop(){
  top--;
  isEmpty();
  return op[top+1];
}

void isFull(){
  if(top>=MAX){
    printf("Stack is full\n");
    exit(1);
  }
}

void isEmpty(){
  if(top<0){
    printf("Stack is empty\n");
    exit(1);
  }
}

