#include <bits/stdc++.h>
using namespace std;
const double eps = 1e-10;
const int inf = 1 << 28;
int in() {
  int x;
  scanf("%d", &x);
  return x;
}
long long In() {
  long long x;
  cin >> x;
  return x;
}
double inreal() {
  double x;
  scanf("%lf", &x);
  return x;
}
string instr() {
  char buf[1001];
  scanf("%s", buf);
  return (string)buf;
}
bool check(int a, int b) {
  if (b >= a - 1) {
    b = b / 2 + b % 2;
    if (a < b - 1) return 0;
    return 1;
  }
  return 0;
}
int main() {
  int i, j, k;
  int a0 = in(), a1 = in();
  int b0 = in(), b1 = in();
  bool ok = check(a0, b1);
  ok = check(a1, b0) or ok;
  if (ok)
    puts("YES");
  else
    puts("NO");
  return 0;
}
