#include <bits/stdc++.h>
using namespace std;
int n, k;
int x[1000006];
vector<int> v;
vector<int> v1;
int a, b;
long long c, d;
void get2() {
  c = d = -1;
  bool f1 = false;
  for (int i = v.size() - 1; i >= 1; i--) {
    if (!f1) {
      if (!v1[i]) {
        if (v[i] == v[i - 1]) {
          f1 = true;
          v1[i] = true;
          v1[i - 1] = true;
          c = v[i];
        } else if (v[i] - 1 == v[i - 1]) {
          f1 = true;
          v1[i] = true;
          v1[i - 1] = true;
          c = v[i - 1];
        }
        v1[i] = true;
      }
    } else {
      if (!v1[i]) {
        v1[i] = true;
        if (v[i] == v[i - 1]) {
          f1 = true;
          v1[i] = true;
          v1[i - 1] = true;
          d = v[i];
          break;
        } else if (v[i] - 1 == v[i - 1]) {
          f1 = true;
          v1[i] = true;
          v1[i - 1] = true;
          d = v[i - 1];
          break;
        }
      }
    }
  }
}
int main() {
  scanf("%d", &n);
  v.resize(n);
  v1.resize(n);
  for (int i = 0; i < n; i++) {
    scanf("%d", &v[i]);
  }
  sort(v.begin(), v.end());
  int cnt = 0;
  long long ans = 0;
  while (cnt++ < n / 4) {
    get2();
    if (c == -1 || d == -1) break;
    long long sum = c * d;
    ans += sum;
  }
  cout << ans;
  return 0;
}
