#include <bits/stdc++.h>

using namespace std;

struct dot{
    int x;
    int y;
};

long long povrsina(dot a, dot b, dot c){
    return abs(a.x * (b.y - c.y) + b.x * (c.y - a.y) + c.x * (a.y - b.y))/2;
}
int main()
{
    int n;
    cin >> n;
    dot dots[n];
    long long povrsine[n];
    long long minpovrs = 0;
    long long maxpovrs = 0;
    for(int i = 0; i < n; i++){
        cin >> dots[i].x >> dots[i].y;
    }
    for(int i = 0; i < n - 2; i++){
        povrsine[i] = povrsina(dots[i],dots[i+1],dots[i+2]);
        minpovrs += povrsine[i];
    }
    for(int i = 0; i < n - 2; i++){
        maxpovrs = max(maxpovrs, povrsine[i]);
    }
    minpovrs -= maxpovrs;
    cout << minpovrs << endl;
    return 0;
}