mod, ans = 10 ** 9 + 7, 0

N, K = list(map(int, input().split()))

for k in range(K, N + 2):

    ans += (N + 1) * (N + 2) // 2 - (N + 2 - k) * (N + 1 - k) // 2 + 1

    ans -= k * (k + 1) // 2

    ans = ans % mod

print(ans)

mod = 10 ** 9 + 7

N, K = list(map(int, input().split()))

ans, R, L = 1, N * (N + 1) // 2, N * (N + 1) // 2

for i in range(N + 1 - K):

    R, L = R - i, L - (N - i)

    ans = (ans + R - L + 1) % mod

print(ans)

mod, ans = 10**9 + 7, 0
N, K = list(map(int, input().split()))
for k in range(K, N + 2):
    ans += (N + 1) * (N + 2) // 2 - (N + 2 - k) * (N + 1 - k) // 2 + 1
    ans -= k * (k + 1) // 2
    ans = ans % mod
print(ans)

mod = 10**9 + 7
N, K = list(map(int, input().split()))
ans, R, L = 1, N * (N + 1) // 2, N * (N + 1) // 2
for i in range(N + 1 - K):
    R, L = R - i, L - (N - i)
    ans = (ans + R - L + 1) % mod
print(ans)

-mod, ans = 10**9 + 7, 0 +mod = 10**9 + 7 -for k in range(K, N + 2): -    ans += (N + 1) * (N + 2) // 2 - (N + 2 - k) * (N + 1 - k) // 2 + 1 -    ans -= k * (k + 1) // 2 -    ans = ans % mod +ans, R, L = 1, N * (N + 1) // 2, N * (N + 1) // 2 +for i in range(N + 1 - K): +    R, L = R - i, L - (N - i) +    ans = (ans + R - L + 1) % mod