m = mod = 10 ** 9 + 7

n, k = gets.to_s.split.map{|i|i.to_i}
a    = gets.to_s.split.map{|i|i.to_i}.sort

$fact = [1, 1]
$inv = [0,1]
$factinv = [1, 1]
2.upto(n+1) do |i|
  $fact.push($fact[-1] * i % m)
  $inv.push(-$inv[m % i] * (m / i) % m)
  $factinv.push($factinv[-1] * $inv[-1] % m)
end

def cmb(n,r,mod)
  return 0 if r < 0 || n < r
  $fact[n] * ($factinv[r] * $factinv[n-r] % mod) % mod
end

ans = 0

(n-k+1).times do |i|
  t = cmb( n-i-1, k-1, mod)
  mi = a[i] * t % m
  ma = a[n-(i+1)] * t % mod
  ans += (ma - mi)
  ans %= m if ans < 0 || m <= ans
end

puts ans