Produto dos dois maiores números

Crie uma função que multiplique os dois maiores valores distintos de um array. Se o array contiver apenas um valor distinto, eleve esse valor ao quadrado.

Exemplos

product([2, 3, 1, -1, 2]) ➞ 6
# 2 * 3 = 6

product([-2, -2, -1, -1]) ➞ 2
# -2 * - 1 = 2
# Não 1, porque você só pode usar -1 uma vez.

product([8, 8, 8]) ➞ 64
# 8 * 8 = 64
# Aqui, você pode repetir o valor porque há apenas um.

product([2, 8, 8, 8]) ➞ 16
# 2 * 8 = 16
# Não 64, porque você só pode usar 8 uma vez.

Observações

  • Todos os números do array são inteiros.
  • Os números podem ser positivos ou negativos.