#include <iostream>
#include <string>
using namespace std;
long long sabiranje (long long a[], long long start, long long end)
{	
long long z= 0;
for (long long i=start; i <end; i++ )
		{
		
		z = z + a[i];
		z= z % 1000000007;
		}	
return z;		
}



long long funkcija (int k, long long a [],  long long z, long long start, long long end)
	{
	if (k==0)
		{
		z = z +  sabiranje (a, start, end);
		
		}
	else 
		{
		k--;
	for (int i = start ; i < end; i++ )
		{
		
		
		
		for (int j=i; j<end; j++)
		{
		
		 
			
			
			z = z + funkcija (k,a, 0, i, j + 1);
			
			
		}
	}
		}
	return z;	
	}
	
	
	






int main(int argc, char** argv) 
{
	int n, k;
	cin>>n>>k;
	long long a[n];
	for (int i= 0; i<n; i++)
	{
	cin>>a[i];	
	}
	cout<<funkcija(k,a,0,0, n);
	
	return 0;
}