#include <bits/stdc++.h>
using namespace std;
#define MOD 1000000007

int n, k;
long long res;
int ar[200005];

void solve(int l, int r, int kk) {
  if (kk == 0) {
    for (int i = l; i <= r; i++) {
      (res += ar[i]) %= MOD;
    }
    return;
  }
  for (int i = l; i <= r; i++) {
    for (int j = i; j <= r; j++) {
      solve(i, j, kk - 1);
    }
  }
}

int main() {
  cin >> n >> k;
  for (int i = 0; i < n; i++) {
    cin >> ar[i];
  }
  if (!k) {
    for (int i = 0; i < n; i++) {
      (res += ar[i]) %= MOD;
    }
    cout << res << '\n';
    return 0;
  }
  if (k == 1) {
    for (int i = 0; i < n; i++) {
      (res += (1LL * ar[i] * (i + 1) * (n - i))) %= MOD;
    }
    cout << res << '\n';
    return 0;
  }
  if (n <= 5 && k <= 5) {
    solve(0, n - 1, k);
    cout << res << '\n';
  }
  return 0;
}