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