Добуток на відрізку
Це нормально відчувати себе схвильованим та напруженим за день до олімпіади з програмування. Щоб розслабитись, Ви пвшли випити зі своїми друзями у сусідній паб. Для збереження гостроти розуму до наступного дня, Ви вирішили зіграти у наступну гру. Для початку Ваші друзі написали послідовність n цілих чисел x_1, x_2,..., x_n. Потім йде k раундів, у кожному з яких виконується одна з наступних команд:
команда зміни, коли необхідно змінити одне значення у послідовності;
команда множення, коли за заданими значеннями i та j необхідно визначити, чи є добуток x_i * x_{i+1} * ... * x_{j-1} * x_j доданим, від'ємним чи рівним нулю.
Так як Ви знаходитесь у пабі, то штрафом за неправильну відповідь буде вживання додаткової пінти пива. Ви турбуєтесь, що це може негативно вплинути на Вас при участі у конкурсі на наступний день, і у Вас немає бажання переввряти на коректність теорію піка Баллмера. На щастя, друзі дозволили Вам користуватись ноутбуком. Оскільки Ви більше довіряєте Вашим здібностям програмувати, ніж математиці, то було вирішено написати програму, яка допоможе зіграти у гру.
Вхідні дані
Кожен тест складається з декількох рядків. Перший рядок кожного тесту містить два числа n та k (1 ≤ n, k ≤ 10^5) - кількість елементів у послідовності та число раундів у грі. Другий рядок містить n цілих чисел x_i - початкові значення послідовності (-100 ≤ x_i ≤ 100 для i = 1, 2,..., n). Кожен з наступних k рядків описує команду, яка починається великою буквою 'C' або 'P'. Якщо це буква 'C', то рядок містить команду заміни, за буквою йдуть два числа i та v, які вказують на те, що x_i необхідно замінити на v (1 ≤ i ≤ n и -100 ≤ v ≤ 100). Якщо це буква 'P', то рядок задає команду множення, за буквою йдуть два числа i та j - необхідно обчислити добуток від x_i до x_j включно (1 ≤ i ≤ j ≤ n). Кожен тест містить як мінімум одну команду множення.
Вихідні дані
Для кожного тесту вивести один рядок, який містить відповіді на всі команди множення. i-ий символ рядка є результатом i-ої команди множення. Якщо добуток додатний, то вивести символ '+' (плюс); якщо добуток від'ємний, то вивести '-' (мінус); якщо добуток дорівнює нулю, то вивести '0' (нуль).