#include<fstream>
#include<algorithm>
using namespace std;
struct dreptunghi
{
long long int xs, ys, xd, yd;
};
dreptunghi d1, d2, d3;
dreptunghi intersectie (dreptunghi d1, dreptunghi d2)
{
dreptunghi d;
d.xs=max(d1.xs,d2.xs);
d.xd=min(d1.xd,d2.xd);
d.ys=max(d1.ys,d2.ys);
d.yd=min(d1.yd,d2.yd);
if (d.xs>d.xd||d.ys>d.yd)
d.xs=d.ys=d.xd=d.yd=0;
return d;
}
long long arie(dreptunghi d)
{
return (d.xd-d.xs)*(d.yd-d.ys);
}
long long perim(dreptunghi d)
{
return (d.xd-d.xs+d.yd-d.ys)*2;
}
int main ()
{
freopen ("reuniune.in", "r", stdin);
freopen ("reuniune.out", "w", stdout);
scanf("%lld %lld %lld %lld", &d1.xs, &d1.ys, &d1.xd, &d1.yd);
scanf("%lld %lld %lld %lld", &d2.xs, &d2.ys, &d2.xd, &d2.yd);
scanf("%lld %lld %lld %lld", &d3.xs, &d3.ys, &d3.xd, &d3.yd);
printf ("%lld ",arie(d1)+arie(d2)+arie(d3)-arie(intersectie(d1,d2))-arie(intersectie(d1,d3))-arie(intersectie(d2,d3))+arie(intersectie(intersectie(d1,d2),d3)));
printf ("%lld ",perim(d1)+perim(d2)+perim(d3)-perim(intersectie(d1,d2))-perim(intersectie(d1,d3))-perim(intersectie(d2,d3))+perim(intersectie(intersectie(d1,d2),d3)));
return 0;
}