#include<stdio.h>
#include<ctype.h>
#include<string.h>
#define max 200
char stack[max][max];
int top=-1;

void push(char str[]){
    strcpy(stack[++top],str);
}
char* pop(){
    return stack[top--];
}
int isOperator(char ch){
    return(ch=='+' || ch=='-' ||ch=='*' ||ch=='/');
}
int main(){
    char prefix[max];
    scanf("%[^\n]",prefix);
    int len=strlen(prefix);
    for(int i=len-1;i>=0;i--){
        char ch=prefix[i];
        if(ch==' ')
            continue;
        if(isalnum(ch)){
            char temp[2];
            temp[0]=ch;
            temp[1]='\0';
            push(temp);
        }
        else if(isOperator(ch)){
            if(top<1){
                printf("Invalid input");
                return 0;
            }
            char op1[max],op2[max],result[max];
            strcpy(op1,pop());
            strcpy(op2,pop());
            sprintf(result,"%s%s%c",op1,op2,ch);
            push(result);
        }
        else{
            printf("Invalid input");
            return 0;
        }
    }
    if(top!=0)
        printf("Invalid input");
    else
        printf("%s",pop());
    return 0;
}