#include <bits/stdc++.h>
#include <ext/pb_ds/tree_policy.hpp>
#include <ext/pb_ds/assoc_container.hpp>

using namespace std;
using namespace __gnu_pbds;
typedef tree<int, null_type, less<int>, rb_tree_tag, tree_order_statistics_node_update> indexed_set;
mt19937 rng((uint32_t)chrono::steady_clock::now().time_since_epoch().count());

int arr[2][2], att[2][2];

int main(){
	ios_base::sync_with_stdio(false);
	cin.tie(NULL);
	for(int i = 0; i < 2; i++) cin >> arr[i][0] >> arr[i][1];
	for(int i = 0; i < 2; i++)
		for(int j = 0; j < 2; j++) att[i][j] = arr[i][j];
	if(arr[0][0] < arr[0][1]) swap(arr[0][0], arr[0][1]);
	if(arr[1][0] < arr[1][1]) swap(arr[1][0], arr[1][1]);
	int a = 0, b = 0;
	while(a < 2 && b < 2){
		arr[1][b] -= att[0][a]; 
		if(arr[1][b] > 0) arr[0][a] -= att[1][b];
		else b++, arr[0][a] -= arr[1][b];
		if(arr[0][a] <= 0) arr[0][a] = 0, a++;
	}
	if(a == 2) cout << "No\n";
	else cout << "Yes\n";
	return 0;
}