// editor5
#include<stdio.h>
#include<ctype.h>
#include<string.h>
#define MAX 25

char stack[MAX][MAX];
int top = -1;

void push(char ch[]){
    strcpy(stack[++top], ch);
}
char* pop(){
    return stack[top--];
}
int isoperator(char ch){
    return (ch=='+' || ch=='-' || ch=='*' || ch=='/');
}
int isvalid(char ch){
    return (isalnum(ch) || ch=='+' || ch=='-' || ch=='*' || ch=='/' || ch=='(' || ch==')');
}
void fun(char *str){
    int len=strlen(str),ind;
    for(ind=len-1;ind>=0;ind--){
        char ch=str[ind];
        if(isvalid(ch)){
            printf("Invalid input");
            return;
        }
        if(isalnum(ch)){
            char temp[2];
            temp[0] = ch;
            temp[1] = '\0';
            push(temp);
        }
        else if(isoperator(ch)){
            char opd1[max],opd1[max],res[max];
            strcpy(opd1,pop());
            strcpy(opd2,pop());
            strcpy(res,opd1);
            strcat(res,opd2);
            int l=strlen(res);
            res[l]=ch;
            res[l+1]='\0';
            push(res);
        }
        printf("%s",stack[top]);
    }
}