import java.util.*;
import java.io.*;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String s = br.readLine();
StringBuilder sb = new StringBuilder();
Stack<Character> stack = new Stack<>();
for(int i=0; i<s.length(); i++) {
char c = s.charAt(i);
switch(c) {
case '+':
case '-':
case '*':
case '/':
while(!stack.isEmpty() && priority(c)<=priority(stack.peek())) {
sb.append(String.valueOf(stack.pop()));
}
stack.push(c);
break;
case '(':
stack.push(c);
break;
case ')':
while(stack.peek()!='(') { sb.append(String.valueOf(stack.pop())); }
stack.pop();
break;
default:
sb.append(String.valueOf(c));
}
}
while(!stack.isEmpty()) { sb.append(String.valueOf(stack.pop())); }
System.out.println(sb);
}
public static int priority(char c) {
if(c=='(') { return 1; }
else if(c=='+' || c=='-') { return 2; }
else { return 3; }
}
}