#include <iostream>
using namespace std;

int main()
{
    long long f,a,t=0;
    long long d[200000]={0};
    cin>>f>>a;
    for(int i=0; i<f; i++){
        cin>>d[i];
    }
    if(a==0){
        for(int i=0; i<f; i++){
            t=t+d[i];
        }
    }
    else if(a==1){
        for(int i=0; i<f; i++){
            for(int j=1; j<=f; j++){
                for(int k=i; k<j; k++){
                    t=t+d[k];
                }
            }
        }
    }
    else if(a>1){
            for(int i=0; i<f; i++){
                for(int j=1; j<=f; j++){
                    for(int k=i; k<j; k++){
                        t=(t+d[k])*a;
                    }
                }
            }
        }
    cout<<t%1000000007;
}