У базі найстарішого ужлянського банку Uzhland Union Bank рахунки пронумеровані числами від до . На кожному рахунку відкрита необмежена кредитна лінія, тобто баланс може бути від'ємним. Банківська система підтримує три типи операцій:
— додати значення до кожного рахунку з номерами від до .
— додати значення до кожного рахунку з номерами , , і так далі (всі позитивні кратні , що не перевищують ).
— обчислити загальний баланс рахунків з номерами від до (включно).
Потрібно змоделювати роботу цієї системи та виконати всі задані операції.
У першому рядку записано одне ціле число (1 \le N \le 10^5) — кількість рахунків.
У другому рядку йдуть цілих чисел a_1, a_2, \ldots, a_N (|a_i| \le 10^9) — початкові баланси рахунків.
У третьому рядку міститься одне ціле число (1 \le M \le 10^5) — кількість операцій.
Наступні рядків описують самі операції. Перше число кожного рядка — це тип операції (ціле число від до ):
Якщо тип операції , далі йдуть три цілі числа , і (1 \le l \le r \le N;\ |c| \le 10^4).
Якщо тип операції , далі йдуть два цілі числа та (1 \le d \le N;\ |c| \le 10^4).
Якщо тип операції , далі йдуть два цілі числа і (1 \le l \le r \le N).
Для кожної операції третього типу виведіть суму балансів вказаних рахунків у окремому рядку.
Приклад 1