""" https://yukicoder.me/problems/no/1102 操作K回か なら左右独立に考えてもよさそう? Kでかすぎ? とりあえず a[i] の寄与は nCr(i+K,i) * 右 """ import sys from sys import stdin mod = 10**9+7 N,K = map(int,stdin.readline().split()) A = list(map(int,stdin.readline().split())) # nCr(i+K,i)前計算 C = [1] for i in range(1,N+10): C.append( C[-1] * (i+K) * pow(i,mod-2,mod) % mod ) ans = 0 for i in range(N): now = A[i] * C[i] * C[N-1-i] % mod ans += now ans %= mod print (ans)