#include <fstream>
using namespace std;
int D1[10], D2[10], D3[10];
long long a,b,c,d,arietot,minx1,miny1,maxx0,maxy0,l1,l2,perimtot;
long long arie( int a1, int a2,int b1,int b2, int c1, int c2,int d1,int d2 )
{
int l1,l2;
if(a1>a2) a=a1;
else a=a2;
if(b1>b2) b=b1;
else b=b2;
if(c1<c2) c=c1;
else c=c2;
if(d1<d2) d=d1;
else d=d2;
l1=c-a;
if(l1<0)l1=0;
l2=d-b;
if(l2<0) l2=0;
return l1*l2;
}
long long perim( int a1, int a2,int b1,int b2, int c1, int c2,int d1,int d2 )
{
int l1,l2;
if(a1>a2) a=a1;
else a=a2;
if(b1>b2) b=b1;
else b=b2;
if(c1<c2) c=c1;
else c=c2;
if(d1<d2) d=d1;
else d=d2;
l1=c-a;
if(l1<0)l1=0;
l2=d-b;
if(l2<0) l2=0;
return l1*2+l2*2;
}
int main()
{
ifstream f("reuniune.in");
ofstream g("reuniune.out");
int i;
for(i=1;i<=4;i++) f>>D1[i];
for(i=1;i<=4;i++) f>>D2[i];
for(i=1;i<=4;i++) f>>D3[i];
arietot=(D1[3]-D1[1])*(D1[4]-D1[2])+(D2[3]-D2[1])*(D2[4]-D2[2])+(D3[3]-D3[1])*(D3[4]-D3[2]) - arie(D1[1],D2[1],D1[2],D2[2],D1[3],D2[3],D1[4],D2[4]) - arie(D1[1],D3[1],D1[2],D3[2],D1[3],D3[3],D1[4],D3[4]) - arie(D2[1],D3[1],D2[2],D3[2],D2[3],D3[3],D2[4],D3[4]);
maxx0=D1[1];
minx1=D1[3];
maxy0=D1[2];
miny1=D1[4];
if(D1[1]>maxx0) maxx0=D1[1];
if(D2[1]>maxx0) maxx0=D2[1];
if(D3[1]>maxx0) maxx0=D3[1];
if(D1[2]>maxy0) maxy0=D1[2];
if(D2[2]>maxy0) maxy0=D2[2];
if(D3[2]>maxy0) maxy0=D3[2];
if(D1[3]<minx1) minx1=D1[3];
if(D2[3]<minx1) minx1=D2[3];
if(D3[3]<minx1) minx1=D3[3];
if(D1[4]<miny1) miny1=D1[4];
if(D2[4]<miny1) miny1=D2[4];
if(D3[4]<miny1) miny1=D3[4];
l1=minx1-maxx0;
l2=miny1-maxy0;
if(l1<0) l1=0;
if(l2<0) l2=0;
arietot=arietot+l1*l2;
perimtot=(D1[3]-D1[1])*2+(D1[4]-D1[2])*2+(D2[3]-D2[1])*2+(D2[4]-D2[2])*2+(D3[3]-D3[1])*2+(D3[4]-D3[2])*2 - perim(D1[1],D2[1],D1[2],D2[2],D1[3],D2[3],D1[4],D2[4]) - perim(D1[1],D3[1],D1[2],D3[2],D1[3],D3[3],D1[4],D3[4]) - perim(D2[1],D3[1],D2[2],D3[2],D2[3],D3[3],D2[4],D3[4]);
perimtot=perimtot+l1*2+l2*2;
g<<arietot<<" "<<perimtot;
}