#include <bits/stdc++.h>
using namespace std;
long long foo(int x1, int y1, int x2, int y2) {
  long long t = min(y1, y2) - max(x1, x2);
  return max(0ll, t);
}
long long f(long long x1, long long y1, long long x2, long long y2,
            long long x3, long long y3, long long x4, long long y4) {
  return foo(y1, y2, y3, y4) * foo(x1, x2, x3, x4);
}
int main() {
  vector<long long> x1, y1, x2, y2;
  for (int i = 0; i < 3; i++) {
    int x, y;
    cin >> x >> y;
    x1.push_back(x), y1.push_back(y);
    cin >> x >> y;
    x2.push_back(x), y2.push_back(y);
  }
  long long ans = f(x1[0], y1[0], x2[0], y2[0], x1[1], y1[1], x2[1], y2[1]);
  ans += f(x1[0], y1[0], x2[0], y2[0], x1[2], y1[2], x2[2], y2[2]);
  long long X1 = max(x1[1], max(x1[0], x1[2]));
  long long X2 = min(x2[1], min(x2[0], x2[2]));
  long long Y1 = max(y1[1], max(y1[0], y1[2]));
  long long Y2 = min(y2[1], min(y2[0], y2[2]));
  long long t1 = max(0ll, X2 - X1);
  long long t2 = max(0ll, Y2 - Y1);
  ans -= t1 * t2;
  if (ans < (x2[0] - x1[0]) * (y2[0] - y1[0])) {
    cout << "YES";
  } else {
    cout << "NO";
  }
  return 0;
}
