Ох, ці ж дужки#2337

Ох, ці ж дужки

1 секунда
64 мегабайти
Складна

Математичний вираз записано у вигляді добутку:

(\pm a_{2}x^{2} \pm a_{1}x \pm a_{0}) \cdot (\pm b_{2}x^{2} \pm b_{1}x \pm b_{0}) \cdot (\pm c_{2}x^{2} \pm c_{1}x \pm c_{0}) \cdots

Всередині кожної з дужок добутку знаходиться вираз виду: \pm a_{2}x^{2} \pm a_{1}x \pm a_{0}, де хоча б один коефіцієнт a_i (b_i, c_i і т. д., аналогічно) не дорівнює нулю.

Потрібно написати програму, яка перемножує вирази у дужках і виводить отриману функцію у вигляді многочлена зі зведеними за степенями доданками, тобто у вигляді:

\pm q_{2N}x^{2N} \pm q_{2N-1}x^{2N-1} \cdots \pm q_{3}x^{3} \pm q_{2}x^{2} \pm q_{1}x \pm q_{0}

Вхідні дані

У першому рядку вхідного файлу знаходиться число (1 \leq N \leq 6).

У другому рядку міститься вираз з пар дужок. Усередині кожної пари дужок знаходиться вираз у вигляді \pm a_{2}x^{2} \pm a_{1}x \pm a_{0}, де — це або знак "+" або знак "-". Якщо якийсь коефіцієнт дорівнює нулю, то цей коефіцієнт, відповідний та знак опускаються. Якщо a_{i} = \pm 1 і i > 0, одиниця не ставиться перед відповідним . Якщо останні за індексом коефіцієнтів дорівнюють нулю, а наступний коефіцієнт додатній, то перед ним не ставиться знак "+". Значення кожного коефіцієнта a_{i} не перевищує за модулем.

У виразі немає жодних пробільних символів (пробіл, табуляція) і він завершується символом переходу на новий рядок. Якщо виникають питання щодо формату вхідних даних, зверніться до прикладів у задачі.

Вихідні дані

У першому рядку вихідного файлу виведіть результат розкриття дужок у заданому виразі у форматі:

\pm q_{2N}x^{2N} \pm q_{2N-1}x^{2N-1} \cdots \pm q_{3}x^{3} \pm q_{2}x^{2} \pm q_{1}x \pm q_{0}

згідно з описом вхідних даних.

Дотримуйтесь формату, наведеного у прикладах, максимально точно.

Приклади

Приклад 1

Loading
Loading