Дужки
Для комп'ютера немає різниці між виразами (((x)+(y))(t)) і (x+y)t; але для людини є - останнє легше прочитати. Коли для людини автоматично генеруються вирази, то для їх найпростішого сприйняття вони повинні містити найменшу кількість дужок. Вважаємо, що вирази містять лише дві операції: додавання (+) і множення (дотик), і ці операції діють лише на змінні нижнього регістра. Розглянемо граматику для виразу E:
E : P | P '+' E P : F | F P F : V | '(' E ')' V : 'a' | 'b' | .. | 'z'
Оператори додавання (+, як наприклад у x+y) і множення (дотик, як наприклад у xy) асоціативні: x+(y+z)=(x+y)+z=x+y+z і x(yz)=(xy)z=xyz. Властивості комутативності та дистрибутивності на ці оператори не накладаються. Дужки мають найвищий пріоритет, далі йде множення, а потім додавання.
Вхідні дані
Складається з декількох тестів. Кожен тест міститься в одному рядку - це вираз, що задовольняє граматиці. Кожен вираз містить не більше 1000 символів.
Вихідні дані
Для кожного тесту в окремому рядку вивести цей самий вираз, у якому видалені всі непотрібні дужки.