H. Улицы исправных фонарей
ограничение по времени на тест
2 секунды
ограничение по памяти на тест
256 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод

Полицейский Анатолий ведёт наружное наблюдение за логовом неорганизованной преступной группировки, занимающейся распространением запрещённых азиатских рисунков. В логово преступников есть всего один вход, являющийся также и единственным выходом из него. Когда очередной человек заходит в логово, Анатолий дописывает в свой блокнот открывающуюся круглую скобку, а когда очередной человек выходит из логова — закрывающуюся.

Длительная слежка нагоняет аппетит, так что Анатолий вынужден поедать пончики, чтобы не умереть с голоду. К сожалению, по окончании слежки Анатолий обнаружил в своих записях множество жирных пятен от пончиков, мешающих разобраться, являются ли некоторые скобки открывающимися или закрывающимися. Чтобы не получить нагоняй от начальства, ему нужно скорее восстановить записи. Он убедился, что перед началом слежки и после её завершения ни одного человека в логове преступников не было.

Входные данные

Единственная строка имеет длину не более 5·105 символов и содержит только символы «(», «)» и «?». Символ «(» означает, что очередной человек вошёл в логово преступников, символ «)» означает, что очередной человек вышел из логова преступников, а символ «?» означает, что на этой позиции находится жирное пятно, и невозможно разобрать, какой из первых двух символов там стоял изначально.

Выходные данные

Выведите восстановленную строку, состоящую только из символов «(» и «)», такую что Анатолий действительно мог записать её в свой блокнот. Если существует несколько подходящих строк, выведите любую из них. Если Анатолий что-то напутал и изначально ошибся в записях, выведите «Impossible» без кавычек.

Примеры
Входные данные
(?(?))
Выходные данные
()(())
Входные данные
()
Выходные данные
()
Входные данные
?(
Выходные данные
Impossible