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

int top, S[1000];

void push(int x) {
    // topを加算してからその位置へ挿入
    // topはスタックポインタ変数
    S[++top] = x;
}

int pop() {
    // topを一つ落とす
    top--;
    // topが指していた要素を返す
    return S[top+1];
}

int main() {
    int a, b;
    top = 0;
    char s[100];

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

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

    return 0;
}
