///JA SAM PAVLE IZ ZADATKA DAJTE 100 BODOVA
#include <bits/stdc++.h>
#define ll long long
#define pb push_back
#define pob pop_back
using namespace std;
int N;
struct p{
    ll x, y;
}Points[100005];
bool cmp(p a, p b){
    return a.x < b.x || (a.x == b.x && a.y < b.y);
}
ll PTrougla(ll x, ll y, ll x2, ll y2, ll x3, ll y3){
    return abs((x * (y2 - y3) + x2 * (y3 - y) + x3 * (y - y2)) >> 1);
}
ll sol = 1e18, area1;
void set1(){
    ll p1, p2, p3, p4;
     p1 = PTrougla(Points[1].x, Points[1].y, Points[2].x, Points[2].y, Points[3].x, Points[3].y);
     p2 = PTrougla(Points[1].x, Points[1].y, Points[2].x, Points[2].y, Points[4].x, Points[4].y);
     p3 = PTrougla(Points[1].x, Points[1].y, Points[3].x, Points[3].y, Points[4].x, Points[4].y);
     p4 = PTrougla(Points[2].x, Points[2].y, Points[3].x, Points[3].y, Points[4].x, Points[4].y);
    cout << min(min(p1, p2), min(p3, p4)) << endl;
    exit(0);
}
int orient(p A, p B, p C){
    return (B.x - A.x) * (C.y - A.y) - (B.y - A.y) * (C.x - A.x);
}
int main(){
    ios_base::sync_with_stdio(0);
    cin.tie(0);
    cin >> N;
    for(int i = 1; i <= N; i++)
        cin >> Points[i].x >> Points[i].y;
    if(N == 4)set1();
    for(int i = 1; i <= N; i++){
            ///RADIM U KVADRATU, TJ. UVEK RAZLICITU TACKU UKLANJAM
        vector <p> rem;
        ///PREOSTALE TACKE, REMAINING
        for(int j = 1; j <= N; j++)if(i != j)rem.pb(Points[j]);
        int x = rem.size();
        sort(rem.begin(), rem.end(), cmp);
        vector <p> H;
        ///GORNJA STRANA MNOGOUGLA
        for(int i = 0; i < x; i++){
            while(H.size() >= 2 && orient(H[H.size() - 2], H[H.size() - 1], rem[i]) <= 0)H.pob();
            H.pb(rem[i]);
        }
        ///DONJA STRANA MNOGOUGLA
        int y = H.size() + 1;
        for(int i = x - 1; i >= 0; i--){
            while(H.size() >= y && orient(H[H.size() - 2], H[H.size() - 1], rem[i]) <= 0)H.pob();
            H.pb(rem[i]);
        }
        H.pob();
        x = H.size();
        ll area1 = 0;
        for(int i = 0; i < x; i++){
            int j = (i + 1) % x;
            area1 += H[i].x * H[j].y - H[j].x * H[i].y;
        }
        area1 = abs(area1) >> 1;
        sol = min(sol, area1);
    }
    cout << sol << endl;
return 0;
}