#include<bits/stdc++.h>
using namespace std;
stack<int> st;
stack<int> sortStack(stack<int> &input)
{
    stack<int> tmpStack;
    while (!input.empty())
    {
        int tmp = input.top();
        input.pop();
        while (!tmpStack.empty() && tmpStack.top() > tmp)
        {
            input.push(tmpStack.top());
            tmpStack.pop();
        }
        tmpStack.push(tmp);
    }

    return tmpStack;
}
int maxximum(void)
{
    if(st.empty()||st.size()<=3)
    return 0;
    int tmp;
    tmp = st.top();
    st.pop();
    if(st.top()==tmp)
    {
        st.pop();
        return tmp;
    }
    else
    {
        maxximum();
    }
}
int main()
{
    int n,a,i;
    cin>>n;
    for(i=0;i<n;i++)
    {
        cin>>a;
        st.push(a);
    }
    st = sortStack(st);
    a=1;
    for(i=0;i<2;i++)
    {
        a*=maxximum();
    }
    cout<<a;
}