#include <stdio.h>
#include <stdlib.h>

#define STACK 1000
#define MAX 10

void push(int x);
int pop(void);

int stack[STACK];
int sp;

int main(void) {
  int x, y;
  char s[MAX];

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

  printf("%d\n", pop());

  return 0;
}

void push(int x) {
  if(sp >= STACK-1) {
    printf("スタックの容量が満タンです\n");
  }
  else {
    ++sp;
    stack[sp] = x;
  }
}

int pop(void) {
  if(sp == 0) {
    printf("スタックには何も入ってしません\n");
  }
  else {
    --sp;
    return stack[sp+1];
  }
}

