Tổng đoạn

Xem dạng PDF

Gửi bài giải

Điểm: 100,00 (OI)
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 256M
Input: stdin
Output: stdout

Tác giả:
Người đăng:
Dạng bài
Ngôn ngữ cho phép
C++

Cho hai số nguyên dương ~l, r~. Hãy tính giá trị của ~\displaystyle\sum_{i=l}^rS(i)~, biết rằng ~S(n)~ được định nghĩa là tổng các số nguyên dương từ ~1~ đến ~n~.

Input

Một dòng duy nhất gồm hai số nguyên ~l, r \ (1 \le l \le r \le 10^{12}).~

Output

In ra kết quả cần tìm sau khi chia lấy dư cho ~10^9 + 7~.

Scoring

  • Subtask 1 [25%]: ~l \le r \le 500;~
  • Subtask 2 [25%]: ~r - l \le 10^6;~
  • Subtask 3 [25%]: ~l = 1;~
  • Subtask 4 [25%]: Không có ràng buộc gì thêm.

Examples

Input
3 5
Output
31
Giải thích

~S(3) + S(4) + S(5) = (1 + 2 + 3) + (1 + 2 + 3 + 4) + (1 + 2 + 3 + 4 + 5) = 31.~