n = gets.to_i a = gets.split.map(&:to_i).sort h = Hash.new(0) MOD = 1000000007 a.each{|x| h[x] += 1 } h = h.values n = h.size ans = 0 n.times{|i| (i + 1).upto(n - 1){|j| (j + 1).upto(n - 1){|k| ans += (h[i] * h[j] * h[k]) % MOD } } } p ans % MOD