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