n, k = map(int, input().split()) a = list(map(int, input().split())) MOD = 10 ** 9 + 7 comb = Combination(10 ** 6, MOD) ball = k dp = [0] * (n + 10) dp[0] = 1 for i in range(n + 9): dp[i + 1] = dp[i] * (ball + i + 1) * pow(i + 1, MOD - 2, MOD) dp[i + 1] %= MOD ball = k ans = 0 for i in range(n): tmp = 1 box = n - i tmp *= dp[box - 1] box = i + 1 tmp *= dp[box - 1] ans += a[i] * tmp % MOD ans %= MOD print(ans % MOD)