К своим трем годам Умный Бобер в совершенстве овладел всеми арифметическими операциями, а от своего учителя по математике одаренный ученик получил следующее домашнее задание на лето:
Дана последовательность целых чисел a1, a2, ..., an. Необходимо последовательно произвести над ней m операций следующего вида:
- Для заданных чисел xi и vi присвоить элементу axi значение vi.
- Для заданных чисел li и ri необходимо вычислить сумму
, где f0 = f1 = 1 и при i ≥ 2: fi = fi - 1 + fi - 2. - Для тройки чисел li ri di необходимо для всех x (li ≤ x ≤ ri) увеличить значение ax на di.
Этим летом Умный Бобер решил отправиться в тур по великим озерам Канады, потому просит Вас помочь ему в решении данной задачи.
Выходные данные
Для каждого запроса второго типа выведите вычисленную сумму по модулю 1000000000 (109).
Примеры
| № | Входные данные | Выходные данные |
|
1
|
5 5 1 3 1 2 4 2 1 4 2 1 5 2 2 4 1 3 10 2 1 5
|
12
32
8
50
|
|
2
|
5 4 1 3 1 2 4 3 1 4 1 2 2 4 1 2 10 2 1 5
|
12
45
|