프로그램 명: coci_parovi
제한시간: 2 초

두 수의 거리를, 두 수의 각 자릿수의 차들의 합으로 정의하자. 예를 들어 4561과 3278의 거리는 |4-3| + |5-2| + |6-7| + |1-8| = 12이다. 만약 두 수의 자릿수가 다르면 더 짧은 수 앞에 0을 붙여서 자릿수를 맞춰준다. 예를 들어 32와 5678의 거리는 |0-5| + |0-6| + |3-7| + |2-8| = 21이다.

두 자연수 A, B가 있다. 이 때, A 이상 B 이하의 자연수로 이루어진 모든 쌍의 거리의 합을 구하는 프로그램을 작성하여라. 단, (a, b)와 (b, a)는 서로 다른 쌍으로 간주한다.

입력 형식

두 자연수 A, B가 주어진다. (1 ≤ A ≤ B ≤ 1050000)
전체 데이터의 20%는 1 ≤ A ≤ B ≤ 10,000 이다.
전체 데이터의 40%는 1 ≤ A ≤ B ≤ 10100 이다.

출력 형식

A 이상 B 이하의 자연수로 이루어진 모든 쌍의 거리의 합을 1,000,000,007로 나눈 나머지를 출력한다.
입력 예 1
출력 예 1
1 5
40
입력 예 2
출력 예 2
288 291
76


입력 예 3
출력 예 3
1000000 10000000
581093400


입력 예 2 설명
각 쌍의 거리는 다음과 같다: (288, 289) = 1, (288, 290) = 9,
(288, 291) = 8, (289, 290) = 10, (289, 291) = 9, (290, 291) = 1.

이들의 합을 2배하면 76이 된다.

The distance between two integers is defined as the sum of the absolute result of subtracting their digits. For example, the distance between the numbers 4561 and 3278 is |4 ? 3| + |5 - 2| + |6 - 7| + |1 - 8| = 12. If one of the numbers consists of fewer digits than the other, we fill it with leading zeroes. Therefore, the distance between the numbers 32 and 5678 is |0 - 5| + |0 - 6| + |3 - 7| + |2 - 8| = 21.

You are given two integers A and B. Calculate the sum of distances between each pair of numbers belonging in the interval [A, B]!

입력

The first and only line of input contains integers A, B (1 ≤ A ≤ B ≤ 1050000).

출력

The first and only line of output must contain the required number from the text. Given that the number could be extremely large, output answer modulo 1 000 000 007.

입출력 예

input 
 
1 5 
 
output 
 
40 

input 
 
288 291 
 
output 
 
76 

input 
 
1000000 10000000 
 
output 
 
581093400 

Clarification of the second example: The distances are, respectively, (288, 289) = 1, (288, 290) = 9, 
(288, 291) = 8, (289, 290) = 10, (289, 291) = 9, (290, 291) = 1. Each of them counts twice, which is in 
total 2 * (1 + 9 + 8 + 10 + 9 +1) = 76. 
출처:coci/2013-2014/contest3 5/6

[질/답] [제출 현황] [푼 후(0)]
[ 채 점 ] [홈으로]  [뒤 로]