#include <stdio.h>
#include <algorithm>
using namespace std;
long long int arie2(long long int x1,long long int y1,long long int x2,long long int y2,long long int x3,long long int y3,long long int x4,long long int y4)
{
long long int a1,b1,a2,b2;
a1=max(x1,x3);
b1=max(y1,y3);
a2=min(x2,x4);
b2=min(y2,y4);
if(a2>=a1 && b2>=b1)
{
return (a2-a1)*(b2-b1);
}
else
{
return 0;
}
}
long long int arie3(long long int x1,long long int y1,long long int x2,long long int y2,long long int x3,long long int y3,long long int x4,long long int y4,
long long int x5,long long int y5,long long int x6,long long int y6)
{
long long int a1,b1,a2,b2;
a1=max(max(x1,x3),x5);
b1=max(max(y1,y3),y5);
a2=min(min(x2,x4),x6);
b2=min(min(y2,y4),y6);
if(a2>=a1 && b2>=b1)
{
return (a2-a1)*(b2-b1);
}
else
{
return 0;
}
}
int main()
{
FILE *in=fopen("reuniune.in","r");
FILE *out=fopen("reuniune.out","w");
long long int x[7],y[7],arie;
for(int i=1;i<=6;i++)
{
fscanf(in,"%lld %lld",&x[i],&y[i]);
}
arie=(x[2]-x[1])*(y[2]-y[1])+(x[4]-x[3])*(y[4]-y[3])+(x[6]-x[5])*(y[6]-y[5])-arie2(x[1],y[1],x[2],y[2],x[3],y[3],x[4],y[4])
-arie2(x[1],y[1],x[2],y[2],x[5],y[5],x[6],y[6])-arie2(x[5],y[5],x[6],y[6],x[3],y[3],x[4],y[4])+arie3(x[1],y[1],x[2],y[2],x[3],y[3],x[4],y[4],x[5],y[5],x[6],y[6]);
fprintf(out,"%lld 0",arie);
return 0;
}