#include<stdio.h>
#include<assert.h>
#include<math.h>
#include<string.h>
int stack[110];
int top = 0;

void push(int v) { 
	stack[top++] = v; 
}

int  pop() { 
	return stack[--top]; 
}

int getInt(char *s){
	int i, ret = 0;
	int size = strlen(s);

	for (i = 0; i<size; i++){
		ret += (s[i] - '0')*pow(10, size - i - 1);
	}
	return ret;
}

int main(){
	char s[1000];
	int a, b;

	while (scanf("%s", s) != EOF){
		if ('0' <= s[0] && s[0] <= '9'){
			int v = getInt(s);
			push(v);
			continue;
		}
		
		b = pop();
		a = pop();
		if (s[0] == '+'){
			push(a + b);
		}
		else if (s[0] == '-'){
			push(a - b);
		}
		else if (s[0] == '*'){
			push(a*b);
		}
		else{
			assert(0);
		}
	}
	printf("%d\n", pop());
	return 0;
}
