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] ans = sum([A[i] * S[i+1] % mod for i in range(n)]) % mod print(ans)