#include <bits/stdc++.h>

using namespace std;

int main()
{
    int N,k;
    cin >> N >> k;
    unsigned long long arr[N];
    for(int i = 0; i<N; i++)
    {
        cin >> arr[i];
    }

    unsigned long long res = 0;

    if(k == 0)
    {
        for(int i = 0; i<N; i++)
            res+= arr[i];
    }
    else if(k == 1)
    {
        for(int i = 0; i<N; i++)
            res+= arr[i] * (i+1) * (N-i);
    }
    else
    {
        if(N == 2)
            for(int i = 0; i<N; i++)
                res+= (k+1)*arr[i];
    }
    cout << res % 1000000007;

    return 0;
}