#include <iostream>
#include <fstream>
using namespace std;
ifstream in("reuniune.in");
ofstream out("reuniune.out");
#define int long long
struct patrat
{
int x1, y1, x2, y2;
};
inline int mod(int x)
{
return max(x, 0LL);
}
int arie(patrat p1)
{
return (p1.x2 - p1.x1) * (p1.y2 - p1.y1);
}
int intersectie_mica(patrat p1, patrat p2)
{
int lin1 = max(p1.x1, p2.x1);
int lin2 = min(p1.x2, p2.x2);
int col1 = max(p1.y1, p2.y1);
int col2 = min(p1.y2, p2.y2);
return mod(lin2 - lin1) * mod(col2 - col1);
}
int intersectie_mare(patrat p1, patrat p2, patrat p3)
{
int lin1 = max(max(p1.x1, p2.x1), p3.x1);
int lin2 = min(min(p1.x2, p2.x2), p3.x2);
int col1 = max(max(p1.y1, p2.y1), p3.y1);
int col2 = min(min(p1.y2, p2.y2), p3.y2);
return mod(lin2 - lin1) * mod(col2 - col1);
}
int perim(patrat p1)
{
int lg1 = mod(p1.x2 - p1.x1);
int lg2 = mod(p1.y2 - p1.y1);
return (lg1 + lg2) * 2;
}
int int_mic(patrat p1, patrat p2)
{
int coltx1 = max(p1.x1, p2.x1);
int colty1 = max(p1.y1, p2.y1);
int coltx2 = min(p1.x2, p2.x2);
int colty2 = min(p1.y2, p2.y2);
int latx = mod(coltx2 - coltx1);
int laty = mod(colty2 - colty1);
return (latx + laty) * 2;
}
int int_mare(patrat p1, patrat p2, patrat p3)
{
int coltx1 = max(max(p1.x1, p2.x1), p3.x1);
int colty1 = max(max(p1.y1, p2.y1), p3.y1);
int coltx2 = min(min(p1.x2, p2.x2), p3.x2);
int colty2 = min(min(p1.y2, p2.y2), p3.y2);
int latx = mod(coltx2 - coltx1);
int laty = mod(colty2 - colty1);
return (latx + laty) * 2;
}
int32_t main()
{
patrat p1, p2, p3;
in >> p1.x1 >> p1.y1 >> p1.x2 >> p1.y2;
in >> p2.x1 >> p2.y1 >> p2.x2 >> p2.y2;
in >> p3.x1 >> p3.y1 >> p3.x2 >> p3.y2;
//cerr << intersectie_mica(p1, p3) << "\n";
if(intersectie_mica(p1, p2) == 0 || intersectie_mica(p2, p3) == 0 || intersectie_mica(p1, p3) == 0 || intersectie_mare(p1, p2, p3) == 0)
{
out << 0 << " " << 0 << "\n";
return 0;
}
//cerr << arie(p1) << " " << arie(p2) << " " << arie(p3) << "\n";
//cerr << intersectie_mica(p1, p2) << " " << intersectie_mica(p2, p3) << " " << intersectie_mica(p1, p3) << "\n";
out << arie(p1) + arie(p2) + arie(p3) - intersectie_mica(p1, p2) - intersectie_mica(p2, p3) - intersectie_mica(p1, p3) + intersectie_mare(p1, p2, p3) << " ";
out << perim(p1) + perim(p2) + perim(p3) - int_mic(p1, p2) - int_mic(p2, p3) - int_mic(p1, p3) + int_mare(p1, p2, p3) << "\n";
return 0;
}