N, K = gets.split.map(&:to_i)
A = gets.split.map(&:to_i)
MOD = 10 ** 9 + 7

tenA = 0

N.times do |i|
  (i + 1).upto(N - 1) do |j|
    tenA += 1 if A[i] > A[j]
  end
end

tenB = 0

N.times do |i|
  N.times do |j|
    tenB += 1 if A[i] > A[j]
  end
end

puts (tenA * K + tenB * (K * (K - 1)) / 2) % MOD
