І знову сума...#2310

І знову сума...

3 секунди
128 мегабайтів
Дуже легка

Реалізуйте структуру даних для керування множиною цілих чисел, що підтримує такі операції:

Вхідні дані

Спочатку множина порожня. У першому рядку знаходиться ціле число (1 \leq n \leq 300\ 000) — кількість операцій. Наступні рядків містять одну з операцій у такому форматі:

  • "+ i"

  • "? l r"

Операція "? l r" відповідає запиту \text{sum}(l, r).

Якщо операція "+ i" є першою або слідує після іншої операції "+", то вона відповідає . Проте якщо вона слідує після запиту "?", і результат цього запиту був , тоді операція стає \text{add}((i + y) \bmod 10^9).

Усі параметри у запитах і операціях додавання знаходяться у межах від до 10^9 включно.

Вихідні дані

Для кожної операції-запиту виведіть одне число — відповідь на запит.

Приклади

Приклад 1

Loading
Loading