Dreamoon loves summing up something for no reason. One day he obtains two integers $*a*$ and $*b*$ occasionally. He wants to calculate the sum of all nice integers. Positive integer $*x*$ is called nice if
and
, where $*k*$ is some integer number in range $[1, *a*]$.
By
we denote the quotient of integer division of $*x*$ and $*y*$. By
we denote the remainder of integer division of $*x*$ and $*y*$. You can read more about these operations here: http://goo.gl/AcsXhT.
The answer may be large, so please print its remainder modulo $1 000 000 007$ ($10^{9} + 7$). Can you compute it faster than Dreamoon?
Input
The single line of the input contains two integers $*a*$, $*b*$ ($1 ≤ *a*, *b* ≤ 10^{7}$).
Output
Print a single integer representing the answer modulo $1 000 000 007$ ($10^{9} + 7$).
Note
For the first sample, there are no nice integers because
is always zero.
For the second sample, the set of nice integers is ${3, 5}$.
样例
1 1
0
2 2
8
题面与样例版权归 Codeforces 及出题人所有;中文翻译由 AI 生成(CI 管线),如有出入请以原文为准。