#include<bits/stdc++.h>

using namespace std;
#define eps = (1e-10);
//点
struct Point{
    double x,y;
    Point(double _x=0,double _y=0):x(_x),y(_y){}
    Point operator + (Point p){return Point(x+p.x,y+p.y);}
    Point operator - (Point p){return Point(x-p.x,y-p.y);}
    Point operator * (double a){return Point(a*x,a*y);}
    Point operator / (double a){return Point(x/a,y/a);}
    double norm(){return x*x+y*y;}//模的平方
    double ABS() {return sqrt(norm());}//模
};
//线段
struct Segment{
    Point p1,p2;
};
double dot(Point a,Point b){
    return a.x*b.x+a.y*b.y;
}
double cross(Point a,Point b){
    return a.x*b.y-a.y*b.x;
}
vector<Point> polygon;
double Area(vector<Point> polygon){
    double ans=0;
    int n=(int)polygon.size();
    for(int i=0;i<n;i++){
        ans+=cross(polygon[i],polygon[(i+1)%n]);
    }
    return fabs(ans/2);
}
int main(){
    int n;
    scanf("%d",&n);
    double x,y;
    for(int i=0;i<n;i++){
        scanf("%lf %lf",&x,&y);
        polygon.push_back({x,y});
    }
    double ans=Area(polygon);
    printf("%.1lf\n",ans);
    return 0;
}
