var fi,fo:text;
x11,y11,x12,y12,x21,y21,x22,y22,x31,y31,x32,y32,x5,y5,x6,y6:extended;
arie,perimetru,arie1,arie2,arie3,arcom1,arcom2,arcom3,ariecomuna:extended;
per1,per2,per3,pcom1,pcom2,pcom3,percomun:extended;
ok:byte;
function min(a,b:extended):extended;
begin
if a<b then min:=a
else min:=b;
end;
function max(a,b:extended):extended;
begin
if a>b then max:=a
else max:=b;
end;
procedure solv(x1,y1,x2,y2,x3,y3,x4,y4:extended);
begin
y5:=max(y1,y3);
x5:=max(x1,x3);
y6:=min(y2,y4);
x6:=min(x2,x4);
end;
begin
assign(fi,'reuniune.in'); reset(fi);
assign(fo,'reuniune.out'); rewrite(fo);
read(fi,x11,y11,x12,y12);
read(fi,x21,y21,x22,y22);
read(fi,x31,y31,x32,y32);
arie1:=abs(x11-x12)*abs(y11-y12);
per1:=2*abs(x12-x11)+2*abs(y12-y11);
arie2:=abs(x21-x22)*abs(y21-y22);
per2:=2*abs(x21-x22)+2*abs(y21-y22);
arie3:=abs(x31-x32)*abs(y31-y32);
per3:=2*abs(x31-x32)+2*abs(y31-y32);
solv(x11,y11,x12,y12,x21,y21,x22,y22);
arcom1:=abs(x5-x6)*abs(y5-y6);
pcom1:=2*abs(x5-x6)+2*abs(y5-y6);
solv(x11,y11,x12,y12,x31,y31,x32,y32);
arcom2:=abs(x5-x6)*abs(y5-y6);
pcom2:=2*abs(x5-x6)+2*abs(y5-y6);
solv(x21,y21,x22,y22,x31,y31,x32,y32);
arcom3:=abs(x5-x6)*abs(y5-y6);
pcom3:=2*abs(x5-x6)+2*abs(y5-y6);
solv(x11,y11,x12,y12,x21,y21,x22,y22);
solv(x5,y5,x6,y6,x31,y31,x32,y32);
ariecomuna:=abs(x5-x6)*abs(y5-y6);
percomun:=2*abs(x5-x6)*abs(y5-y6);
arie:=arie1+arie2+arie3-arcom1-arcom2-arcom3+ariecomuna;
perimetru:=per1+per2+per3-pcom1-pcom2-pcom3+percomun;
write(fo,arie:0:0,' ',perimetru:0:0);
close(fi);
close(fo);
end.