Уравнение
Программист Вова давно интересуется различными задачами со строками. В этой задаче будем считать, что строка - произвольная последовательность ASCII-символов с кодами от 33 до 126.
Недавно Вова узнал об операциях со строками:
сложение строк, обозначается символом "+". Например, Doctor+Who=DoctorWho.
умножение строк, обозначается символом "*". Если S=A*B, то S=a_1+B+a_2+B+...+a_n+B, где a_i - i-ый символ строки A (нумерация симовлов строки начинается с 1). Например, aca*x=axcxax.
После этого Вова подумал: почему бы не придумать уравнения, где неизвестной величиной будет строка. После чего Вова стал решать придуманные им уравнения.
Перейдём к формальным определениям. Назовём уравнением последовательность a_1°a_2°...°a_n=b, где a_i - любая неизвестная строка (обозначается "?"), либо какая-то определённая непустая строка (записывается символами строки без каких-либо дополнительных символов или ограничителей), b - какая-то определённая непустая строка, а на месте значков ° могут стоять знаки операций сложения или умножения (причём в разных местах могут стоять разные знаки). Все действия выполняются строго слево направо. Скобки не влияют на приоритет операций. Гарантируется, что существует i, что a_i="?". Символы "?", "+", "*", "=" не используются как символы известных строк. Также всем a_i и b соответствуют непустые строки.
Требуется решить уравнение подобного вида, если известно, что существует непустое решение.
Входные данные
В первой строке находится строка S, задающая уравнение. Количество операций не превосходит 200000, длина строки S не более чем 300000 символов. В уравнении всегда присутствует хотя бы один знак "?".
Выходные данные
Напечатайте значение неизвестной строки.