MOD = 10**9+7 N,K = map(int,input().split()) A = [0]+list(map(int,input().split())) if K==0: print(sum(A)%MOD) else: B = [0 for _ in range(N+1)] B[0] = 1 C = [0 for _ in range(N+1)] C[0] = 1 for i in range(1,N+1): B[i] = (B[i-1]*(K-1+i))%MOD C[i] = (C[i-1]*i)%MOD D = [1 for _ in range(N+1)] for i in range(1,N+1): D[i] = (D[i-1]+B[i]*pow(C[i],MOD-2,MOD))%MOD ans = 0 for m in range(1,N+1): ans = (ans+A[m]*D[m-1]*D[N-m])%MOD print(ans)