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

#define MAXi 1000
#define MAXc 100

void push(int a);
int pop(void);

int top;
int stack[MAXc];


int main(void)
{
  int a,b;
  char *stack;

  stack=calloc(MAXi,sizeof(char));

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

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

  return 0;
}

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

int pop(void)
{
  top--;

  return stack[top+1];
}

