mod = 10**9 + 7 n, p = map(int, input().split()) A = [0] * (n+1) A[0] = 0 A[1] = 1 for i in range(2, n+1): A[i] = (p * A[i-1] + A[i-2]) % mod S = [0] * (n+1) for i in range(1, n+1): S[i] = (S[i-1] + A[i-1]) % mod ans = 0 for i in range(n): x = A[i] * S[i+1] % mod ans = (ans + x) % mod print(ans)