var x1,x2,x3,x4,y1,y2,y3,y4,z1,z2,z3,z4:integer;
s1,s2,s3,s4,s,a,b,c,d,e,f,p1,p2,p3,p4:extended;
begin
read(x1,y1,z1,x2,y2,z2,x3,y3,z3,x4,y4,z4);
a:=sqrt((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2)+(z1-z2)*(z1-z2));
b:=sqrt((x3-x2)*(x3-x2)+(y3-y2)*(y3-y2)+(z3-z2)*(z3-z2));
c:=sqrt((x1-x3)*(x1-x3)+(y1-y3)*(y1-y3)+(z1-z3)*(z1-z3));
d:=sqrt((x1-x4)*(x1-x4)+(y1-y4)*(y1-y4)+(z1-z4)*(z1-z4));
e:=sqrt((x4-x2)*(x4-x2)+(y4-y2)*(y4-y2)+(z4-z2)*(z4-z2));
f:=sqrt((x3-x4)*(x3-x4)+(y3-y4)*(y3-y4)+(z3-z4)*(z3-z4));
p1:=(a+b+c)*0.5;
p2:=(d+b+f)*0.5;
p3:=(f+e+c)*0.5;
p4:=(a+d+e)*0.5;
s1:=sqrt(p1*(p1-a)*(p1-b)*(p1-c));
s2:=sqrt(p2*(p2-d)*(p2-b)*(p2-f));
s3:=sqrt(p3*(p3-f)*(p3-e)*(p3-c));
s4:=sqrt(p4*(p4-a)*(p4-d)*(p4-e));
s:=s1+s2+s3+s4;
write(s:0:1);
end.
dmFyIHgxLHgyLHgzLHg0LHkxLHkyLHkzLHk0LHoxLHoyLHozLHo0OmludGVnZXI7CnMxLHMyLHMzLHM0LHMsYSxiLGMsZCxlLGYscDEscDIscDMscDQ6ZXh0ZW5kZWQ7CmJlZ2luCnJlYWQoeDEseTEsejEseDIseTIsejIseDMseTMsejMseDQseTQsejQpOwphOj1zcXJ0KCh4MS14MikqKHgxLXgyKSsoeTEteTIpKih5MS15MikrKHoxLXoyKSooejEtejIpKTsKYjo9c3FydCgoeDMteDIpKih4My14MikrKHkzLXkyKSooeTMteTIpKyh6My16MikqKHozLXoyKSk7CmM6PXNxcnQoKHgxLXgzKSooeDEteDMpKyh5MS15MykqKHkxLXkzKSsoejEtejMpKih6MS16MykpOwpkOj1zcXJ0KCh4MS14NCkqKHgxLXg0KSsoeTEteTQpKih5MS15NCkrKHoxLXo0KSooejEtejQpKTsKZTo9c3FydCgoeDQteDIpKih4NC14MikrKHk0LXkyKSooeTQteTIpKyh6NC16MikqKHo0LXoyKSk7CmY6PXNxcnQoKHgzLXg0KSooeDMteDQpKyh5My15NCkqKHkzLXk0KSsoejMtejQpKih6My16NCkpOwpwMTo9KGErYitjKSowLjU7CnAyOj0oZCtiK2YpKjAuNTsKcDM6PShmK2UrYykqMC41OwpwNDo9KGErZCtlKSowLjU7CnMxOj1zcXJ0KHAxKihwMS1hKSoocDEtYikqKHAxLWMpKTsKczI6PXNxcnQocDIqKHAyLWQpKihwMi1iKSoocDItZikpOwpzMzo9c3FydChwMyoocDMtZikqKHAzLWUpKihwMy1jKSk7CnM0Oj1zcXJ0KHA0KihwNC1hKSoocDQtZCkqKHA0LWUpKTsKczo9czErczIrczMrczQ7CndyaXRlKHM6MDoxKTsKZW5kLg==