#include <cstdio>
#include<algorithm>
using namespace std;
struct DREPTUNGHI
{
long long x1, x2, y1, y2;
}a, b, c;
DREPTUNGHI inter(DREPTUNGHI d1, DREPTUNGHI d2)
{
DREPTUNGHI d12;
d12.x1 = max(d1.x1, d2.x1);
d12.y1 = max(d1.y1, d2.y1);
d12.x2 = min(d1.x2, d2.x2);
d12.y2 = min(d1.y2, d2.y2);
if(d12.x1 > d12.x2 || d12.y1 > d12.y2)
d12.x1 = d12.x2 = d12.y1 = d12.y2 = 0;
return d12;
}
long long arie(DREPTUNGHI d12)
{
return ((d12.x2 - d12.x1) * (d12.y2 - d12.y1));
}
long long p(DREPTUNGHI d12)
{
return (2 * ((d12.x2 - d12.x1) + (d12.y2 - d12.y1)));
}
int main()
{
FILE *in, *out;
in = fopen("reuniune.in", "r");
out = fopen("reuniune.out", "w");
long long A, Peri;
fscanf(in, "%lld%lld%lld%lld", &a.x1, &a.y1, &a.x2, &a.y2);
fscanf(in, "%lld%lld%lld%lld", &b.x1, &b.y1, &b.x2, &b.y2);
fscanf(in, "%lld%lld%lld%lld", &c.x1, &c.y1, &c.x2, &c.y2);
A = arie(a) + arie(b) + arie(c) - arie(inter(a,b)) - arie(inter(b,c)) - arie(inter(a,c)) + arie(inter(c,(inter(a,b))));
Peri = p(a) + p(b) + p(c) - p(inter(a,b)) - p(inter(b,c)) - p(inter(a,c)) + p(inter(c,(inter(a,b))));
fprintf(out, "%lld %lld", A, Peri);
return 0;
}