#include <stdio.h>
#include <string.h>
#include <ctype.h>

#define MAX 205

char st[MAX] [MAX];
int top = -1;
 
int isOperator(char c){
    return c=='+' || c=='-' || c=='*' ||c=='/' || c=='^';
}
int main()
   char expr[MAX];
   
   if(!fgets(expr, sizeof(expr), stdin))
      return 0;
    int n = strlen(expr);
    for(int i=0;i<n; i++){
        char c = expr[i];
        if(c=='\n') continue;
        if(!(islnum((unsigned char)c) || isOperator(c))){
            printf("Invalid input");
            return 0;
        }
    }
    for(int i=n-1;i>=0;i--){
        char c = expr[i];
        if(c=='\n') continue;
        
        if(isalnum((unsigned char)c)){
            char tmp[2] = {c,'\0'};
            strcpy(str[++top], tmp);
        }else if (isOperator(c)){
            if (top<1){
                printf("Invalid input");
                return 0;
            }
            char a[MAX], b[MAX], res[MAX];
            strcpy(a, st[top--]);
            strcpy(b, st[top--]);
            snprintf(res, sizeof(res), "%s%s%c", a, b, c);
            strcpy(str[++top], res);
        }
        
    }
    if(top !=0){
        printf("Invalid input");
        return 0;
    }
    
    printf("%s", st[0]);
    return 0;
}