import std.algorithm;
import std.array;
import std.conv;
import std.math;
import std.range;
import std.stdio;
import std.string;
import std.typecons;

int readint() {
    return readln.chomp.to!int;
}

int[] readints() {
    return readln.split.map!(to!int).array;
}

void main() {
    readln;
    auto xs = readints();

    int[int] m;
    foreach (x; xs) {
        m[x]++;
    }

    int[] cans;
    foreach (k, v; m) {
        if (v >= 4) {
            cans ~= k;
            cans ~= k;
        }
        else if (v >= 2) {
            cans ~= k;
        }
    }

    cans.sort;
    if (cans.length >= 2) {
        auto ans = cans[$ - 2] * cans[$ - 1];
        writeln(ans);
    }
    else {
        writeln(0);
    }
}
