花束(flwr)

题目描述

Y 同学要制作若干长度不同的花束。每一束可以由若干朵红花和白花组成,但白花必须按连续的 kk 朵作为一组加入,红花可以单朵加入。

fxf_x 表示制作长度恰好为 xx 的花束的方案数。现在有 qq 次询问,每次给出 l,rl,r,请你求出

x=lrfx\sum_{x=l}^{r} f_x

109+710^9+7 取模后的结果。

输入格式

第一行包含两个整数 q,kq,k

接下来 qq 行,每行包含两个整数 l,rl,r

输出格式

对于每次询问,输出一行一个整数,表示答案。

样例

样例输入 #1

3 2
1 3
2 5
4 4

样例输出 #1

6
18
5

数据范围与约定

对于 100%100\% 的数据,保证 1q2×1051 \le q \le 2\times 10^51k2×1051 \le k \le 2\times 10^51lr2×1051 \le l \le r \le 2\times 10^5

测试点编号 分值 qq \le rr \le 特殊性质
121 \sim 2 1010 2020 3030
353 \sim 5 1515 50005000 2×1052\times 10^5 特殊性质 A
686 \sim 8 2×1052\times 10^5 3030 特殊性质 B
9129 \sim 12 2020 2×1052\times 10^5
131613 \sim 16
172017 \sim 20
  • 特殊性质 A:保证 k=1k=1
  • 特殊性质 B:保证 r30r \le 30