fn main() {
	let mut s = String::new();
	std::io::stdin().read_line(&mut s).ok();
	let v: Vec<f64> = s.split_whitespace().flat_map(str::parse).collect();
	let (mut a, d) = (0f64, [(1., 0.), (0., 1.), (-1., 0.), (0., -1.)]);
	for i in d {
		for j in d {
			for k in d {
				a = a.max(
					((v[0] + i.0 - v[4] - k.0) * (v[3] + j.1 - v[5] - k.1)
						- (v[1] + i.1 - v[5] - k.1)
							* (v[2] + j.0 - v[4] - k.0))
						.abs() / 2.,
				);
			}
		}
	}
	println!("{a}")
}