#include <bits/stdc++.h>

long long a[100000];
long long mod=1e9+7;

long long fac[200000];
long long ifac[200000];

long long pow(long long a,long long n){
  long long ret=1;
  for(;n>0;n>>=1,a=a*a%mod){
    if(n%2==1){
      ret=ret*a%mod;
    }
  }
  return ret;
}

long long inv(long long a){
  return pow(a,mod-2);
}

long long comb(int n,int k){
  return fac[n]*ifac[k]%mod*ifac[n-k]%mod;
}

int main(){
  fac[0]=ifac[0]=1;
  for(int i=1;i<200000;++i){
    fac[i]=fac[i-1]*i%mod;
  }
  for(int i=1;i<200000;++i){
    ifac[i]=inv(fac[i]);
  }
  
  int n;
  std::cin>>n;
  
  long long sum=0;

  for(int i=0;i<n;++i){
    std::cin>>a[i];
    sum=(sum+comb(n-1,i)*a[i]%mod)%mod;
  }

  std::cout<<sum<<std::endl;
  

  return 0;
}