#include <iostream>
#include <cmath>
#include <iomanip>
using namespace std;

int main() {
	double a,b,c,d,f;//длины сторон треугольника
	double S1,S2,SO;//площади теугольников и общая площадь соответственно
	double P1,P2,p1,p2;//периметр и полупериметр соотвественно
	double G1,G2;//выражение под корнем
	cin>>a>>b>>c>>d>>f;
	P1= a+b+f;//периметр первого треугольника
	p1= P1/2;//полупериметр первого треугольника
	P2= d+c+f;//периметр второго треугольника
	p2= P2/2;//полупериметр второго  реугольника
	G1=p1*(p1-a)*(p1-b)*(p1-f);//выражение под корнем 
	S1=sqrt(G1);//пользуясь формулой Герона извлекакем корень
	//аналогично для второго треугольника
	G2=p2*(p2-d)*(p2-c)*(p2-f);
	S2=sqrt(G2);
	SO=S1+S2;//находим общую площадь фигуряб состоящую из двух теугольников
	cout<<fixed<<setprecision(4)<<SO;
	// your code goes here
	return 0;
}