#include <iostream>
#include <algorithm>
#include <vector>
#include <cmath>
using namespace std;
long long sum2(int N,vector <int> ::iterator it);
int main(){

    int N,k,temp;
    long long rez = 0;
    vector <int> vec;
    vector <int> ::iterator it;


    cin>>N>>k;
    for(int i=0;i<N;i++){
        cin>>temp;
        vec.push_back(temp);
    }

    it = vec.begin();
    if(k == 0){
        for (int i=0;i<N;i++){
        rez+=vec[i];
        }}
    
     else {
        for(int i=0;i<vec.size();i++){

            it=vec.begin()+i;
            for(int j=0;j<vec.size()-i;j++){

                rez += sum2(j,it);
            }}}

    int jed;
    jed = pow(10,9)+7;
    rez = rez % jed;
    cout<<rez;

    return 0;
}

long long sum2(int N,vector <int> ::iterator it){
    long long sum = 0;
        for(int i=0;i<=N;i++){
            sum+=(*(it+i));
        }
    return sum;
    
}