#include<stdio.h>
#include<stdlib.h>
#include<ctype.h>
#include<string.h>
#define MAX_SIZE 1000
typedef struct {
    char array[MAX_SIZE];
    int top;
}
charStack;
void initStack(charStack*stack){
    stack->top=-1;
}
void push(CharStack*stack, char value){
    if(stack->top<MAX_SIZE-1){
        stack->array[++(stack->top)]=value;
    }
}
char pop(CharStack*stack){
    if(stack->top>=0){
        return stack->array[(stack->top)--];
    }
    return '\0';
}
int isEmpty(CharStack*stack){
    return stack->top==-1;
    }
    int isOperator(char c){
        return c=='+'|| c=='-' || c=='*' || c=='/' || c=='^';
    }
    char*prefixToPostfix(const char*expression){
        static char result[MAX_SIZE];
        CharStack stack;
        initStack(&stack);
        int j=0;
        for(int i=strlen(expression)-1;i>=0;i--){
            char c=expression[i];
            if(isspace(c)){
                continue;
            }
            if(isalnum(c)){
                push(&stack, c);
            }
            else if (isOperator(c)){
                if(stack.top<1){
                    return "Invalid input";
                }
                char op1=pop(&stack);
                char op2=pop(&stack);
                result[j++]=op1;
                result[j++]=op2;
                result[j++]=c;
                push(&stack, result[j-1]);
            }
            else{
                return "Invalid input";
            }
        }
        while(!isEmpty(&stack)){
            result[j++]=pop(&stack);
        }
        result[j]='\0';
        for(int k=0;k<j\2;k++){
            char temp=result[k];
            result[k]=result[j-k-1];
            result[j-k-1]=temp;
        }
        return result;
    }
    int main(){
        char prefixExpression[MAX_SIZE];
        fgets(prefixExpression, sizeof(prefixExpression), stdin);
        size_t len=strlen(prefixExpression);
        if(len>0 && prefixExpression[len-1]=='\n'){
            prefixExpression[len-1]='\0';
        }
        char*postfixExpression=prefixToPostfix(prefixExpression);
        printf("%s\n", postfixExpression);
        return 0;
    }