#include <iostream>
#include <fstream>
using namespace std;
ifstream f("reuniune.in");
ofstream g("reuniune.out");
struct punct
{
long long x,y;
};
void inter(punct p1,punct p2,punct q1,punct q2,punct &r1,punct &r2)
{
r1.x=max(p1.x,q1.x);
r1.y=max(p1.y,q1.y);
r2.x=min(p2.x,q2.x);
r2.y=min(p2.y,q2.y);
}
int ver(punct r1,punct r2)
{
if (r1.x>r2.x)
return 0;
if (r1.y>r2.y)
return 0;
return 1;
}
long long arie(punct p1,punct p2)
{
long long l1,l2;
l1=p2.y-p1.y;
l2=p2.x-p1.x;
return l1*l2;
}
long long perimetru(punct p1,punct p2)
{
long long l1,l2;
l1=p2.y-p1.y;
l2=p2.x-p1.x;
return(2*(l1+l2));
}
int main()
{
long long s1=0,s2=0,s3=0,s4=0,p1=0,p2=0,p3=0,p4=0;
punct a1,a2,b1,b2,c1,c2,r1,r2,r3,r4;
f>>a1.x>>a1.y>>a2.x>>a2.y;
f>>b1.x>>b1.y>>b2.x>>b2.y;
f>>c1.x>>c1.y>>c2.x>>c2.y;
inter(a1,a2,b1,b2,r1,r2);
if (ver(r1,r2))
{
s1=arie(r1,r2);
p1=perimetru(r1,r2);
inter(r1,r2,c1,c2,r1,r2);
if (ver(r1,r2))
{
s4=arie(r1,r2);
p4=perimetru(r1,r2);
}
}
inter(a1,a2,c1,c2,r1,r2);
if(ver(r1,r2))
{
s2=arie(r1,r2);
p2=perimetru(r1,r2);
}
inter(b1,b2,c1,c2,r1,r2);
if (ver(r1,r2))
{
s3=arie(r1,r2);
p3=perimetru(r1,r2);
}
g<<arie(a1,a2)+arie(b1,b2)+arie(c1,c2)-s1-s2-s3+s4<<" ";
g<<perimetru(a1,a2)+perimetru(b1,b2)+perimetru(c1,c2)-p1-p2-p3+p4;
return 0;
}