/*
#include <stdio.h>
int stack[10001]={};
int top=-1;
void push(int da)
{
top++;
stack [top]=da;
}
int pop()
{
if(top!=-1)
{
return stack[top--];
}
}
int main()
{
char str[201]={};
int i,n,num;
scanf("%d\n",&n);
for(i=1;i<=n;i++)
{
gets(str);
if(str[0]=='t')
{
if(top==-1)
{
printf("-1\n");
}
else
{
printf("%d\n",stack[top]);
}
}
else if(str[0]=='s')
{
printf("%d\n",top+1);
}
else if(str[0]=='e')
{
if(top!=-1)
{
printf("false\n");
}
else
{
printf("true\n");
}
}
///////////////////
else if(str[1]=='u')
{
num=0;
for(int j=6;str[j]!=' ';j++)
{
num=num*10+str[j]-'0';
}
push(num);
}
////////////////////
else if(str[0]=='p'&&str[1]=='o')
{
pop();
}
}
return 0;
}*/
#include <stdio.h>
int stack[10001]={};
int top=-1;
void push(int da)
{
top++;
stack [top]=da;
}
int pop()
{
if(top!=-1)
{
return stack[top--];
}
}
int main()
{
char st[201]={};
int i,a=0,b=0,sum=0;
gets(st);
for(i=0;st[i]!=NULL;i++)
{
if('0'<=st[i]&&st[i]<='9')
{
push(st[i]-'0');
}
else if(st[i]!=' ')
{
a=pop();
b=pop();
if(st[i]=='*') push(a*b);
else if(st[i]=='+') push(a+b);
else push(a-b);
}
}
}