#include #define ll long long #define ull unsigned long long #define For(i,j,k) for (int i=(int)(j);i<=(int)(k);i++) #define Rep(i,j,k) for (int i=(int)(j);i>=(int)(k);i--) using namespace std; const int mo=1000000007; const int N=2000005; int inv[N],Sinv[N],SSinv[N]; void init(){ inv[0]=inv[1]=1; for (int i=2;i