#include <bits/stdc++.h>
#define MAXN 200010
#define MOD 1000000007

using namespace std;

long long a[MAXN];

int main()
{
	ios_base::sync_with_stdio(false);
	cin.tie(NULL); cout.tie(NULL);
	
	int n, k;
	
	cin >> n >> k;
	
	for(int i = 0; i < n; i++) cin >> a[i];
	
	long long s = 0;
	
	if(k == 1)
	{
		for(int i = 0; i < n; i++)
		{
			s += (i + 1) * (n - i) * a[i];
			
			s = s % MOD;
		}
	}
	else if(k == 2)
	{
		for(int i = 0; i < n; i++)
		{
			s += (i + 1) * (n - i) * a[i];
			
			s = s % MOD;
		}
		
		s *= 2;
		
		s = s % MOD;
			
		s -= (a[0] + a[n - 1]);
		
		s += MOD;
		
		s = s % MOD;
		
	}
	else
	{
		for(int i = 0; i < n; i++) 
		{
			s += a[i];
			
			s = s % MOD;
		}
	}
	
	cout << s;
	
	return 0;
}