Путешествуя по Фарлуму, Хорнет встретила $$$n$$$ торговцев. Каждый из них продавал ровно один уникальный товар, и изначально цена товара у $$$i$$$-го торговца была равна $$$a_i$$$.
Хорнет интересуется, сколько суммарно придется потратить денег, чтобы купить несколько подряд идущих товаров. Есть только одна проблема: торговцы постоянно меняют цену на свой товар. Формально, $$$q$$$ раз происходят события одного из трех типов:
Под инвертированием цены подразумевается следующий процесс:
Вам необходимо помочь Хорнет и ответить на все ее запросы.
В первой строке даны два целых числа $$$n$$$ и $$$k$$$ — число торговцев и размер всех цен в двоичной системе, соответственно ($$$1 \le n \le 2 \cdot 10^5$$$; $$$1 \le k \le 25$$$).
Во второй строке даны $$$n$$$ чисел $$$a_i$$$ — изначальная цена товаров у торговцев ($$$0 \le a_i < 2^k$$$).
В третьей строке дано единственное число $$$q$$$ — количество запросов ($$$1 \le q \le 2 \cdot 10^5$$$).
В следующих $$$q$$$ строках даны описания запросов в формате, данном в условии: сначала тип запроса, затем параметры ($$$1 \le i, l, r \le n$$$; $$$0 \le x < 2^k$$$).
Для каждого запроса третьего типа (узнать сумму), выведите ответ на него в отдельной строке.
5 31 2 3 4 571 2 73 1 53 2 22 2 23 2 22 1 53 1 5
20 7 0 22