Polo, the Penguin, likes numbers. He says that the goodness of a number is itself multiplied by the number of digits in it's decimal representation. For example, the goodness of the integer 474 is 474*3 = 1422.
Help him to count the sum of goodness of all integers from L to R, inclusive. Since the answer can be too large, output it modulo 1,000,000,007 (10^9+7).

Input
The first line of the input contains an integer T denoting the number of test cases. The description of T test cases follows. The only line of each test case contains the pair of integers L and R, separated by a single space.

Output
For each test case, output a single line containing the answer to the corresponding test case.

Constraints

1 ≤ T ≤ 1,000
1 ≤ L ≤ R ≤ 1,000,000,000 (10^9)


Example
Input:
1
9 12

Output:
75


Explanation
Example case 1. The answer is 9*1 + 10*2 + 11*2 + 12*2 = 75.
import copy
for i in range(int(raw_input())):
    l , r = [int(x) for x in raw_input().split()]
    s  = 0    
    l = l-1
    if l < 10:
        if r < 10:
            s = (r*(r+1))/2 - (l*(l+1))/2
            print s
            continue
        else:
            hi = copy.deepcopy(r)
            lo = copy.deepcopy(l)
            exphi = 0
            while hi > 9:
                hi /= 10
                exphi += 1
            explo = 0
            while lo > 9:
                lo /= 10
                explo += 1
            su = 0
            t = 0
            tt = 0
            for i in range(1 , exphi+1):
                t = pow(10 , i) - 1
                su = (su + (((t*(t+1))/2)-(tt*(tt+1)/2))*i)%1000000007 
                tt = t 
            diff = (((r*(r+1))/2 - (t*(t+1))/2)*(exphi+1))%1000000007
            su = (su+diff)%1000000007
            print su - (l*(l+1))/2
            continue
    hi = copy.deepcopy(r)
    lo = copy.deepcopy(l)
    exphi = 0
    while hi > 9:
        hi /= 10
        exphi += 1
    explo = 0
    while lo > 9:
        lo /= 10
        explo += 1
    su = 0
    t = 0
    tt = 0
    for i in range(1 , exphi+1):
        t = pow(10 , i) - 1
        su = (su + (((t*(t+1))/2)-(tt*(tt+1)/2))*i)%1000000007 
        tt = t
    diff = ((((r*(r+1))/2) - ((t*(t+1))/2))*(exphi+1))%1000000007
    su = (su+diff)%1000000007
    suu = 0
    tt = 0
    for i in range(1 , explo+1):
        t = pow(10 , i) - 1
        suu = (suu + ((t*(t+1)/2) - (tt*(tt+1)/2))*i)%1000000007 
        tt = t
    diff = ((((l*(l+1))/2) - ((t*(t+1))/2))*(explo+1))%1000000007
    suu = (suu+diff)%1000000007
    print (su - suu)%1000000007