#include #include #include using namespace std; using ll = long long; #define rep(i,n) for(int i=0; i<(n); i++) using mll = atcoder::static_modint<1000000007>; int N; ll M; vector A; int main(){ scanf("%d%lld",&N,&M); A.resize(N); rep(i,N-1) scanf("%d",&A[i+1]); mll C = 1; mll ans = 0; for(int i=1; i<=N; i++){ C *= M+i-1; C /= i; ans += C * A[N-i]; } printf("%u\n",ans.val()); return 0; }