#include <iostream>

using namespace std;

#define DO 1000000007

long long bug(long long a[], long long k, long long n, long long m){
    long long suma = 0, i, j;
    if(k == 0)
    {
        for(i = n; i <= m; i++)
        {
            suma += a[i];
        }
        return suma;
    }
    if(k > 0)
    {
        for(i = 0; i < n; i++)
        {
            for(j = i; j < m; j++)
            {
                suma += bug(a, k - 1, i, j);
            }
        }
    }
}
int main()
{
    long long n, k, i, j, a[200000], sum = 0;
    cin >> n >> k;
    for(i = 0; i < n; i++)
    {
        cin >> a[i];
    }
    if(k > 0)
    {
        for(i = 0; i < n; i++)
        {
            for(j = i; j < n; j++)
            {
                sum += bug(a, k - 1, i, j);
            }
        }
    }
    if(k == 0)
    {
        sum = bug(a, k, 0, n);
    }
    sum = sum % DO;
    cout << sum;
    return 0;
}