mod = 10 ** 9 + 7 N, p = map(int, input().split()) A = [0, 1] for i in range(N - 2): v = p * A[-1] + A[-2] A.append(v % mod) ans = 0 Acum = 0 for i in range(N): a = A[i] ans = (ans + a * a) % mod Acum = (Acum + a) % mod ans = (ans + Acum * Acum) % mod ans = ans * pow(2, mod - 2, mod) % mod print(ans)