DZY Loves Fibonacci Numbers

题意翻译

- 在本题中,我们用 $f_i$ 来表示第 $i$ 个斐波那契数($f_1=f_2=1,f_i=f_{i-1}+f_{i-2}(i\ge 3)$)。 - 维护一个序列 $a$,长度为 $n$,有 $m$ 次操作: 1. `1 l r`:对于 $l\le i\le r$,将 $a_i$ 加上 $f_{i-l+1}$。 2. `2 l r`:求 $\displaystyle\left(\sum_{i=l}^ra_i\right)\bmod(10^9+9)$。 - $1\le n,m\le 3\times 10^5$,$1\le a_i\le 10^9$。

题目描述

In mathematical terms, the sequence $ F_{n} $ of Fibonacci numbers is defined by the recurrence relation $ F_{1}=1; F_{2}=1; F_{n}=F_{n-1}+F_{n-2} (n>2). $ DZY loves Fibonacci numbers very much. Today DZY gives you an array consisting of $ n $ integers: $ a_{1},a_{2},...,a_{n} $ . Moreover, there are $ m $ queries, each query has one of the two types: 1. Format of the query " $ 1\ l\ r $ ". In reply to the query, you need to add $ F_{i-l+1} $ to each element $ a_{i} $ , where $ l<=i<=r $ . 2. Format of the query " $ 2\ l\ r $ ". In reply to the query you should output the value of ![](https://cdn.luogu.com.cn/upload/vjudge_pic/CF446C/9b1c73158dd7a4166f7d8fde16bb75f36899bc0e.png) modulo $ 1000000009 (10^{9}+9) $ . Help DZY reply to all the queries.

输入输出格式

输入格式


The first line of the input contains two integers $ n $ and $ m $ ( $ 1<=n,m<=300000 $ ). The second line contains $ n $ integers $ a_{1},a_{2},...,a_{n} (1<=a_{i}<=10^{9}) $ — initial array $ a $ . Then, $ m $ lines follow. A single line describes a single query in the format given in the statement. It is guaranteed that for each query inequality $ 1<=l<=r<=n $ holds.

输出格式


For each query of the second type, print the value of the sum on a single line.

输入输出样例

输入样例 #1

4 4
1 2 3 4
1 1 4
2 1 4
1 2 4
2 1 3

输出样例 #1

17
12

说明

After the first query, $ a=[2,3,5,7] $ . For the second query, $ sum=2+3+5+7=17 $ . After the third query, $ a=[2,4,6,9] $ . For the fourth query, $ sum=2+4+6=12 $ .