FIBOSUM  Fibonacci Sum
The fibonacci sequence is defined by the following relation:
 F(0) = 0
 F(1) = 1
 F(N) = F(N  1) + F(N  2), N >= 2
Your task is very simple. Given two nonnegative integers N and M, you have to calculate the sum (F(N) + F(N + 1) + ... + F(M)) mod 1000000007.
Input
The first line contains an integer T (the number of test cases). Then, T lines follow. Each test case consists of a single line with two nonnegative integers N and M.
Output
For each test case you have to output a single line containing the answer for the task.
Example
Input: 3 0 3 3 5 10 19 Output: 4 10 10857
Constraints
 T <= 1000
 0 <= N <= M <= 10^{9}
hide comments
Vmcode:
20160226 12:45:54
@ abhi_vicky, thanks, got A.C 0.0 

abhi_vicky:
20160224 21:16:50
It is possible in C #Vmcode by using matrix exponantion and sum of fibonacci series!!!!AC in 0.01s 

minhthai:
20160224 13:12:19
that negative modulo tho ( ͡° ͜ʖ ͡°) 

buvaneish:
20160110 16:59:05
i am getting nzec error by pyth 2.7 please help me out it says"maximum recursion depth reached" 

Vmcode:
20151208 15:59:13
how is it possible in c??? 

reddappa:
20151013 08:09:28
Last edit: 20151013 08:11:25 

MishThi:
20150914 07:36:45
4 Days !! And victory.. :D


Harsh Vardhan Ladha:
20150906 16:11:18
it is not given that M>=N causing many to get negative and negative MOD problem.


satya_jha123:
20150826 14:17:46
i wrote the code for this and i am gettingb negative ans so how do i handle this part


offson:
20150823 23:11:22
@Babu, if you do sum(M)  sum(N  1), the latter one can be bigger than the former due to the modulus application. To solve that, just sum 10^9 + 7 to the result while it is negative. 
Added by:  David Gómez 
Date:  20101204 
Time limit:  1s 
Source limit:  50000B 
Memory limit:  1536MB 
Cluster:  Cube (Intel G860) 
Languages:  All except: ASM64 
Resource:  My Own 