#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #define popcount __builtin_popcount using namespace std; typedef long long int ll; typedef pair P; const ll MOD=1e9+7; int main() { int n; ll p; cin>>n>>p; ll a[2000020]; a[1]=0, a[2]=1; for(int i=3; i<=n; i++){ a[i]=(p*a[i-1]+a[i-2])%MOD; } ll s=0, ans=0; for(int i=1; i<=n; i++){ (s+=a[i])%=MOD; (ans+=s*a[i])%=MOD; } cout<