#include <bits/stdc++.h>
using namespace std;
int jsxdcd(double x1, double y1, double x2, double y2) {
if (y1 == y2) {
double fh = round((max(x1, x2) - min(x1, x2)) * 100) / 100;
return fh;
}
if (x1 == x2) {
double fh = round((max(y1, y2) - min(y1, y2)) * 100) / 100;
return fh;
}
double xc = max(x1, x2), yc = max(y1, y2);
double fh = round(sqrt((xc - min(x1, x2)) * (xc - min(x1, x2)) + (yc - min(y1, y2)) * (yc - min(y1, y2))) * 100) / 100;
return fh;
}
int main() {
double x1, y1, x2, y2, x3, y3;
cin >> x1 >> y1 >> x2 >> y2 >> x3 >> y3;
double p = (jsxdcd(x1, y1, x2, y2) + jsxdcd(x1, y1, x3, y3) + jsxdcd(x2, y2, x3, y3)) / 2;
cout << fixed << setprecision(2) << sqrt(p * (p - jsxdcd(x1, y1, x2, y2)) * (p - jsxdcd(x1, y1, x3, y3)) * (p - jsxdcd(x2, y2, x3, y3))) << endl;
return 0;
}