Problem2364--Sum of Remainders

2364: Sum of Remainders

[Creator : ]
Time Limit : 2.000 sec  Memory Limit : 256 MiB

Description

time limit per test
2 seconds
memory limit per test
256 megabytes
input
standard input
output
standard output

Calculate the value of the sum: n mod 1 + n mod 2 + n mod 3 + ... + n mod m. As the result can be very large, you should print the value modulo 109+7 (the remainder when divided by 109+7).

The modulo operator a mod b stands for the remainder after dividing a by b. For example 10 mod 3 = 1.

Input

The only line contains two integers n,m (1≤n,m≤1013) − the parameters of the sum.

Output

Print integer s − the value of the required sum modulo 109+7.

Examples
Input
3 4
Output
4
Input
4 4
Output
1
Input
1 1
Output
0

Source/Category