#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#define MAX 1000
/*int initialze(void);
int isEmpty(void);
int isFull(void);*/
void push(int);
int pop(void);

int top=0,STACK[MAX];

int main(){

  char stack[MAX];
  int a,b;

  while(scanf("%s",stack)!=EOF){
    switch(stack[0]){

    case '+':
      a=pop();
      b=pop();
      push(a+b);
      break;
      
    case '-':
      a=pop();
      b=pop();
      push(b-a);
      break;
      
    
    case '*':
      a=pop();
      b=pop();
      push(a*b);
      break;
      
      /*case '/':
      a=pop();
      b=pop();
      push(a/b);
      break;
      */
    default:
      push(atoi(stack));
      
    }
  }
  printf("%d\n",pop());
  return 0;

}

void push(int x){
  STACK[++top]=x;
}
int pop(){
  top--;
  return STACK[top+1];


}