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

#define MAX 100
int top;
int S[1000]={0}; //charだからエラー起きてた

int initialize(){
    top = 0;
}

int push(int X){
    //if(isFull()) printf("エラー（オーバーフロー）");
    top++;
    S[top] = X;
}

int pop(){
    //if(isEmpty()) printf("エラー（アンダーフロー）");
    top--;
    return S[top+1];
}


int main(){
    int x=0,A=0,B=0;
    char s[1000]={0};

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

    printf("%d\n",S[top]);
    
  return 0;
}
