The Duck song

For simplicity, we'll assume that there are only three types of grapes: green grapes, purple grapes and black grapes.

Andrew, Dmitry and Michal are all grapes' lovers, however their preferences of grapes are different. To make all of them happy, the following should happen: Andrew, Dmitry and Michal should eat at least $x$, $y$ and $z$ grapes, respectively. Andrew has an extreme affinity for green grapes, thus he will eat green grapes and green grapes only. On the other hand, Dmitry is not a fan of black grapes — any types of grapes except black would do for him. In other words, Dmitry can eat green and purple grapes. Michal has a common taste — he enjoys grapes in general and will be pleased with any types of grapes, as long as the quantity is sufficient.

Knowing that his friends are so fond of grapes, Aki decided to host a grape party with them. He has prepared a box with $a$ green grapes, $b$ purple grapes and $c$ black grapes.

However, Aki isn't sure if the box he prepared contains enough grapes to make everyone happy. Can you please find out whether it's possible to distribute grapes so that everyone is happy or Aki has to buy some more grapes?

It is not required to distribute all the grapes, so it's possible that some of them will remain unused.


-----Input-----

The first line contains three integers $x$, $y$ and $z$ ($1 \le x, y, z \le 10^5$) — the number of grapes Andrew, Dmitry and Michal want to eat.

The second line contains three integers $a$, $b$, $c$ ($1 \le a, b, c \le 10^5$) — the number of green, purple and black grapes in the box.


-----Output-----

If there is a grape distribution that allows everyone to be happy, print "YES", otherwise print "NO".


-----Examples-----
Input
1 6 2
4 3 3

Output
YES

Input
5 1 1
4 3 2

Output
NO



-----Note-----

In the first example, there is only one possible distribution:

Andrew should take $1$ green grape, Dmitry should take $3$ remaining green grapes and $3$ purple grapes, and Michal will take $2$ out of $3$ available black grapes.

In the second test, there is no possible distribution, since Andrew is not be able to eat enough green grapes. :(

Difficulty: EASY
Tags: Complete search

Implementation

Greedy algorithms
Skill types: Complete search

Greedy algorithms

Starter code:

Solutions:
(a, b, c) = map(int, input().split())
(x, y, z) = map(int, input().split())
if a <= x and x - a + y >= b and (x - a + y - b + z >= c):
	print('YES')
else:
	print('NO')


(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
if x + y + z > a + b + c:
	print('NO')
	exit()
if x <= a:
	a -= x
	x = 0
else:
	print('NO')
	exit()
if z >= c:
	z -= c
	c = 0
else:
	c -= z
	z = 0
if z > 0:
	if a + b >= z + y:
		print('YES')
	else:
		print('NO')
	exit()
elif y <= a + b:
	print('YES')
else:
	print('NO')


(x, y, z) = [int(x) for x in input().split()]
(a, b, c) = [int(x) for x in input().split()]
if a < x:
	print('NO')
	return
a -= x
b += a
if b < y:
	print('NO')
	return
b -= y
c += b
if c < z:
	print('NO')
	return
print('YES')


(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
a -= x
b = a + b - y
if a < 0 or b < 0 or b + c - z < 0:
	print('NO')
else:
	print('YES')


arr = [int(x) for x in input().split()]
A = arr[0]
D = arr[1]
M = arr[2]
arr = [int(x) for x in input().split()]
G = arr[0]
P = arr[1]
B = arr[2]

def Grapes(A, D, M, G, P, B):
	if G >= A:
		G = G - A
		if G + P >= D:
			G = G - D
			if G + P + B >= M:
				print('YES')
				return 0
	print('NO')
	return 0
Grapes(A, D, M, G, P, B)


(a, d, m) = list(map(int, input().split()))
(g, p, b) = list(map(int, input().split()))
ans = 'YES'
g -= a
if g < 0:
	ans = 'NO'
g = max(0, g)
if d > g + p:
	ans = 'NO'
if m + d > g + p + b:
	ans = 'NO'
print(ans)


F = lambda : map(int, input().split())
(x, y, z) = F()
(a, b, c) = F()
print('YNEOS'[a < x or a + b < x + y or a + b + c < x + y + z::2])


from sys import exit
(x, y, z) = [int(s) for s in input().split()]
(a, b, c) = [int(s) for s in input().split()]
if x > a:
	print('NO')
elif x <= a:
	a -= x
	summ = a + b
	if y <= summ:
		summ -= y
	else:
		print('NO')
		exit()
	if summ + c >= z:
		print('YES')
	else:
		print('NO')


test = list(map(int, input().split(' ')))
x = test[0]
y = test[1]
z = test[2]
test = list(map(int, input().split(' ')))
a = test[0]
b = test[1]
c = test[2]
req = 0
extra = 0
if a < x:
	print('NO')
	exit()
else:
	extra = a - x
if extra + b < y:
	print('NO')
	exit()
else:
	extra = extra + b - y
if extra + c < z:
	print('NO')
	exit()
else:
	extra = extra + c - z
if extra >= 0:
	print('YES')
else:
	print('NO')


(x, y, z) = (int(x) for x in input().split())
(a, b, c) = (int(x) for x in input().split())
a -= x
if y >= b:
	a -= y - b
	b = 0
else:
	b -= y
c += b
if c < z:
	a -= z - c
if a >= 0:
	print('YES')
else:
	print('NO')


(x, y, z) = [int(h) for h in input().split()]
(G, P, B) = [int(k) for k in input().split()]
if G < x or G + P < x + y or G + P + B < x + y + z:
	print('NO')
else:
	print('YES')


from sys import stdin, stdout
from collections import defaultdict, Counter, deque
from bisect import bisect, bisect_left
import math
from itertools import permutations
import queue
I = stdin.readline
(x, y, z) = map(int, I().split())
(g, p, b) = map(int, I().split())
flag = 0
rema = min(g, x)
g -= rema
x -= rema
if x != 0:
	flag = 1
else:
	remb = min(g, y)
	g -= remb
	y -= remb
	remc = min(p, y)
	p -= remc
	y -= remc
	if y != 0:
		flag = 1
	else:
		remc = min(z, g + p + b)
		z -= remc
		if z != 0:
			flag = 1
if flag == 0:
	print('YES')
else:
	print('NO')


(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
count = 0
if a >= x:
	a -= x
	count += 1
	if a + b >= y:
		s = a + b
		s -= y
		count += 1
		if s + c >= z:
			count += 1
if count == 3:
	print('YES')
else:
	print('NO')


p = input()
q = input()
p = p.split(' ')
q = q.split(' ')
x = int(p[0])
y = int(p[1])
z = int(p[2])
a = int(q[0])
b = int(q[1])
c = int(q[2])
if a >= x and a + b - x >= y and (a + b + c - x - y >= z):
	print('YES')
else:
	print('NO')


(a, d, m) = map(int, input().split(' '))
(g, v, b) = map(int, input().split(' '))

def check(a, d, m, g, v, b):
	if a <= g:
		p = g - a
		if d <= p + v:
			p += v - d
			if m <= p + b:
				return 'Yes'
print(check(a, d, m, g, v, b) or 'No')


def one():
	(x, y, z) = map(int, input().split())
	(a, b, c) = map(int, input().split())
	count = 0
	u = 0
	u1 = 0
	if a >= x:
		u = a - x
		count = count + 1
	if b + u >= y:
		u1 = b + u - y
		count = count + 1
	if u1 + c >= z:
		count = count + 1
	if count == 3:
		print('YES')
	else:
		print('NO')
one()


(a, b, c) = input().split()
(z, f, ch) = input().split()
(a, b, c, z, f, ch) = (int(a), int(b), int(c), int(z), int(f), int(ch))
k = 0
if z - a >= 0:
	z -= a
else:
	k += 1
if z + f - b >= 0:
	if z <= b:
		f -= b - z
		z = 0
	else:
		z -= b
else:
	k += 1
if k == 0 and z + f + ch - c >= 0:
	print('YES')
else:
	print('NO')


import sys, re
from collections import deque, defaultdict, Counter
from math import sqrt, hypot, factorial, pi, sin, cos, radians
if sys.version_info.minor >= 5:
	from math import gcd
else:
	from fractions import gcd
from heapq import heappop, heappush, heapify, heappushpop
from bisect import bisect_left, bisect_right
from itertools import permutations, combinations, product
from operator import itemgetter, mul
from copy import deepcopy
from functools import reduce, partial
from fractions import Fraction
from string import ascii_lowercase, ascii_uppercase, digits

def input():
	return sys.stdin.readline().strip()

def list2d(a, b, c):
	return [[c] * b for i in range(a)]

def list3d(a, b, c, d):
	return [[[d] * c for j in range(b)] for i in range(a)]

def ceil(a, b=1):
	return int(-(-a // b))

def round(x):
	return int((x * 2 + 1) // 2)

def fermat(x, y, MOD):
	return x * pow(y, MOD - 2, MOD) % MOD

def lcm(x, y):
	return x * y // gcd(x, y)

def lcm_list(nums):
	return reduce(lcm, nums, 1)

def gcd_list(nums):
	return reduce(gcd, nums, nums[0])

def INT():
	return int(input())

def MAP():
	return map(int, input().split())

def LIST():
	return list(map(int, input().split()))
sys.setrecursionlimit(10 ** 9)
INF = float('inf')
MOD = 10 ** 9 + 7
(x, y, z) = MAP()
(a, b, c) = MAP()
if a < x:
	print('NO')
	exit()
a -= x
ab = a + b
if ab < y:
	print('NO')
	exit()
ab -= y
if ab + c < z:
	print('NO')
else:
	print('YES')


(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
ans = 'YES'
if a < x:
	ans = 'NO'
else:
	a -= x
d = a + b
if d < y:
	ans = 'NO'
else:
	d -= y
d += c
if d < z:
	ans = 'NO'
print(ans)


(x, y, z) = input().split()
(a, b, c) = input().split()
x = int(x)
y = int(y)
z = int(z)
a = int(a)
b = int(b)
c = int(c)
if x > a:
	print('NO')
elif x + y > a + b:
	print('NO')
elif x + y + z > a + b + c:
	print('NO')
else:
	print('YES')


def do():
	(x, y, z) = map(int, input().split())
	(a, b, c) = map(int, input().split())
	a -= x
	if a < 0:
		print('NO')
		return
	b += a
	b -= y
	if b < 0:
		print('NO')
		return
	c += b
	c -= z
	if c < 0:
		print('NO')
		return
	print('YES')
do()


s = []
s = input().split(' ')
x = int(s[0])
y = int(s[1])
z = int(s[2])
s1 = []
s1 = input().split(' ')
a = int(s1[0])
b = int(s1[1])
c = int(s1[2])
if a >= x:
	a -= x
	x = 0
	f1 = 1
if y > 0 and a - y >= 0:
	a -= y
	y = 0
else:
	y -= a
	a = 0
if y > 0 and b - y >= 0:
	b -= y
	y = 0
elif y > 0 and b - y <= 0:
	y -= b
	b = 0
else:
	pass
if a + b + c >= z and y == 0 and (x == 0):
	print('YES')
else:
	print('NO')


(x, y, z) = input().split(' ')
(a, b, c) = input().split(' ')
x = int(x)
y = int(y)
z = int(z)
a = int(a)
b = int(b)
c = int(c)
ra = a - x
if ra < 0:
	print('NO')
else:
	rb = b - (y - ra)
	if rb < 0:
		print('NO')
	else:
		rc = c - (z - rb)
		if rc < 0:
			print('NO')
		else:
			print('YES')


(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
if x <= a:
	a = a - x
	if y <= a + b:
		c += a + b - y
		if z <= c:
			print('Yes')
		else:
			print('No')
	else:
		print('no')
else:
	print('No')


import sys

class Main:

	def __init__(self):
		self.buff = None
		self.index = 0

	def next(self):
		if self.buff is None or self.index == len(self.buff):
			self.buff = self.next_line()
			self.index = 0
		val = self.buff[self.index]
		self.index += 1
		return val

	def next_line(self, _map=str):
		return list(map(_map, sys.stdin.readline().split()))

	def next_int(self):
		return int(self.next())

	def solve(self):
		(x, y, z) = self.next_line(int)
		(a, b, c) = self.next_line(int)
		print('YES' if a >= x and a + b >= x + y and (a + b + c >= x + y + z) else 'NO')
Main().solve()


def solve():
	(x, y, z) = [int(x) for x in input().split(' ')]
	(a, b, c) = [int(x) for x in input().split(' ')]
	if x > a:
		return False
	a -= x
	if a + b < y or a + b + c < y + z:
		return False
	return True
if solve():
	print('YES')
else:
	print('NO')


adm = input().split()
a = int(adm[0])
d = int(adm[1])
m = int(adm[2])
tots = a + d + m
gpb = input().split()
g = int(gpb[0])
p = int(gpb[1])
b = int(gpb[2])
total = g + p + b
a = min(g - a, g - a + p - d, total - tots)
if a >= 0:
	print('YES')
else:
	print('NO')


(a, b, c) = map(int, input().split())
(d, e, f) = map(int, input().split())
if d >= a and d - a + e >= b and (d + e + f - a - b >= c):
	print('YES')
else:
	print('NO')


def main():
	(x, y, z) = [int(x) for x in input().split()]
	(g, p, b) = [int(x) for x in input().split()]
	amt = g + p + b
	if x <= g:
		amt -= x
		ret1 = True
	else:
		ret1 = False
	if y <= amt - b:
		amt -= y
		ret2 = True
	else:
		ret2 = False
	if amt >= z:
		ret3 = True
	else:
		ret3 = False
	if ret1 and ret2 and ret3:
		print('YES')
	else:
		print('NO')
main()


(x, y, z) = list(map(int, input().split()))
(a, b, c) = list(map(int, input().split()))
if a >= x:
	a -= x
else:
	print('NO')
	exit()
if a + b >= y:
	a -= y
else:
	print('NO')
	exit()
if a + b + c >= z:
	print('YES')
	exit()
else:
	print('NO')
	exit()


want_eat = list(map(int, input().split(' ')))
grapes = list(map(int, input().split(' ')))
grapes[0] -= want_eat[0]
if grapes[0] < 0:
	print('NO')
else:
	all_grapes = sum(grapes) - want_eat[1]
	if all_grapes - grapes[2] < 0 or all_grapes < want_eat[2]:
		print('NO')
	else:
		print('YES')


def solve(x, y, z, a, b, c):
	if a < x:
		return 'NO'
	else:
		a -= x
	if a + b < y:
		return 'NO'
	if a + b + c - y < z:
		return 'NO'
	return 'YES'

def main():
	(x, y, z) = list(map(int, input().split()))
	(a, b, c) = list(map(int, input().split()))
	print(solve(x, y, z, a, b, c))
main()


(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
a -= x
f = 0
if a < 0:
	f = 1
if a + b < y:
	f = 1
if a + b + c - y < z:
	f = 1
if f:
	print('NO')
	exit()
print('YES')


xyz = input()
xyz = xyz.split()
abc = input()
abc = abc.split()
if eval(abc[0]) >= eval(xyz[0]) and eval(xyz[1]) <= eval(abc[1]) + eval(abc[0]) - eval(xyz[0]) and (eval(abc[0]) + eval(abc[1]) + eval(abc[2]) - eval(xyz[0]) - eval(xyz[1]) >= eval(xyz[2])):
	print('YES')
else:
	print('NO')


(g, c, b) = map(int, input().split())
(gr, cy, bl) = map(int, input().split())
if gr + cy >= g + c and gr >= g and (gr + cy - g - c + bl >= b):
	print('YES')
else:
	print('NO')


numWant = input()
wantData = numWant.split()
andrew = int(wantData[0])
dmitry = int(wantData[1])
michal = int(wantData[2])
grapes = input()
grapeData = grapes.split()
green = int(grapeData[0])
purple = int(grapeData[1])
black = int(grapeData[2])
if green >= andrew:
	greenLeftover = green - andrew
	if purple + greenLeftover >= dmitry:
		leftover = greenLeftover + purple + black - dmitry
		if leftover >= michal:
			print('YES')
		else:
			print('NO')
	else:
		print('NO')
else:
	print('NO')


import math, time

def main():
	(x, y, z) = map(int, input().split())
	(a, b, c) = map(int, input().split())
	if x > a:
		print('NO')
		exit()
	else:
		a -= x
		u = a + b
		if y > u:
			print('NO')
			exit()
		else:
			u -= y
			u += c
			if z > u:
				print('NO')
				exit()
			else:
				print('YES')
start_time = time.time()
main()


required = list(map(int, input().split()))
available = list(map(int, input().split()))
if available[0] < required[0]:
	print('NO')
elif available[0] + available[1] - required[0] < required[1]:
	print('NO')
elif sum(available) - (required[0] + required[1]) < required[2]:
	print('NO')
else:
	available[0] -= required[0]
	available[0] -= required[1]
	if available[0] < 0:
		available[1] -= abs(available[0])
		available[0] = 0
	if sum(available) - required[2] >= 0:
		print('YES')
	else:
		print('NO')


(x, y, z) = list(map(int, input().split()))
(g, p, b) = list(map(int, input().split()))
if g >= x and g - x + p >= y and (g - x + p - y + b >= z):
	print('YES')
else:
	print('NO')


(x, y, z) = [int(k) for k in input().split(' ')]
(a, b, c) = [int(k) for k in input().split(' ')]
if a >= x and a + b >= x + y and (a + b + c >= x + y + z):
	print('YES')
else:
	print('NO')


(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
res = True
if a >= x:
	a -= x
	if a + b >= y:
		if a + b + c - y >= z:
			res = True
		else:
			res = False
	else:
		res = False
else:
	res = False
print('YES' if res else 'NO')


x_y_z = input().split(' ')
x = int(x_y_z[0])
y = int(x_y_z[1])
z = int(x_y_z[2])
g_p_d = input().split(' ')
green = int(g_p_d[0])
purple = int(g_p_d[1])
black = int(g_p_d[2])
if green >= x:
	green -= x
	if purple + green >= y:
		purple += green
		green = 0
		purple -= y
		if purple + black >= z:
			print('YES')
		else:
			print('NO')
	else:
		print('NO')
else:
	print('NO')


(a, d, m) = list(map(int, input().split()))
(g, p, b) = list(map(int, input().split()))
ans = ''
if a > g:
	ans = 'NO'
elif d > g + p - a:
	ans = 'NO'
elif g + p - a - d + b < m:
	ans = 'NO'
else:
	ans = 'YES'
print(ans)


(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
flag = 0
total = a + b + c
if a >= x:
	flag += 1
	a = a - x
	total -= x
if a + b >= y:
	flag += 1
	total -= y
if total >= z:
	flag += 1
if flag == 3:
	print('YES')
else:
	print('NO')


(a, d, m) = input().split()
a = int(a)
d = int(d)
m = int(m)
(g, p, b) = input().split()
g = int(g)
p = int(p)
b = int(b)
if g < a:
	print('NO')
else:
	g -= a
	s1 = g + p
	if s1 >= d:
		s1 -= d
		s2 = s1 + b
		if s2 >= m:
			print('YES')
		else:
			print('NO')
	else:
		print('NO')


(gg, pg, bg) = [int(x) for x in input().split()]
(a, b, c) = [int(x) for x in input().split()]
if gg <= a:
	a = a - gg
	if pg <= b + a:
		t = b + a - pg
		if bg <= t + c:
			print('YES')
		else:
			print('NO')
	else:
		print('NO')
else:
	print('NO')


a = input()
b = input()
c = a.split(' ')
t = b.split(' ')
x = int(c[0])
y = int(c[1])
z = int(c[2])
a = int(t[0])
b = int(t[1])
c = int(t[2])
if x <= a:
	if y <= a - x + b:
		if z <= a - x + b - y + c:
			print('YES')
		else:
			print('NO')
	else:
		print('NO')
else:
	print('NO')


(x, y, z) = map(int, input().split())
(g, p, b) = map(int, input().split())
if x > g:
	print('NO')
else:
	g -= x
	if y > g + p:
		print('NO')
	else:
		a = g + p
		a -= y
		a += b
		if z > a:
			print('NO')
		else:
			print('Yes')


import sys
import math
lines = sys.stdin.read().splitlines()
(x, y, z) = [int(x) for x in lines[0].split(' ')]
(a, b, c) = [int(x) for x in lines[1].split(' ')]
can = x <= a and y <= a - x + b and (z <= a + b + c - x - y)
if can:
	print('YES')
else:
	print('NO')


person = list(map(int, input().split()))
andrew = person[0]
dimitry = person[1]
michael = person[2]
uvas = list(map(int, input().split()))
green = uvas[0]
purple = uvas[1]
black = uvas[2]
if andrew <= green:
	green = green - andrew
	if dimitry <= purple + green:
		green = green - dimitry
		if green < 0:
			dimitry = abs(green)
			purple = purple - dimitry
			green = 0
		if michael <= green + purple + black:
			green = green - michael
			if green < 0:
				michael = abs(green)
				purple = purple - michael
				if purple < 0:
					michael = abs(purple)
					print('YES')
				else:
					print('YES')
			else:
				print('YES')
		else:
			print('NO')
	else:
		print('NO')
else:
	print('NO')


(x, y, z) = [int(x) for x in input().strip().split()]
(a, b, c) = [int(x) for x in input().strip().split()]
if a < x:
	print('NO')
else:
	green = a - x
	not_black = green + b
	if not_black < y:
		print('NO')
	else:
		rem = a + b + c - x - y
		if rem < z:
			print('NO')
		else:
			print('YES')


from sys import stdin, stdout
import sys
(x, y, z) = [int(x) for x in stdin.readline().rstrip().split()]
(a, b, c) = [int(x) for x in stdin.readline().rstrip().split()]
if x <= a:
	r_a = a - x
else:
	stdout.write('No')
	sys.exit()
if y <= b + r_a:
	r_b = b + r_a - y
	p = 1
else:
	stdout.write('No')
	sys.exit()
if z <= c + r_b:
	stdout.write('Yes')
else:
	stdout.write('No')


n = input()
s = input()
(x, y, z) = n.split()
(a, b, c) = s.split()
total = int(a) + int(b) + int(c)
if int(a) < int(x):
	print('NO')
else:
	total -= int(x)
	if total - int(c) < int(y):
		print('NO')
	else:
		total -= int(y)
		if total < int(z):
			print('NO')
		else:
			print('YES')


(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
exitcounter = 0
a -= x
if a < 0:
	exitcounter += 1
if not (a + b >= y and a + b - y + c >= z):
	exitcounter += 1
if exitcounter:
	print('NO')
else:
	print('YES')


(arman, hossein, karim) = map(int, input().split())
(g, p, b) = map(int, input().split())
if g < arman:
	print('NO')
	exit()
g -= arman
karim = max(0, karim - b)
print('YES' if karim + hossein <= p + g else 'NO')


(x, y, z) = [int(x) for x in input().split()]
(a, b, c) = [int(x) for x in input().split()]
res = True
if a >= x:
	a -= x
else:
	res = False
if a + b >= y:
	if a > y:
		a -= y
	elif b > y:
		b -= y
	else:
		b -= y - a
		a = 0
else:
	res = False
if a + b + c < z:
	res = False
print('YES' if res else 'NO')


s1 = input()
s2 = input()
s1 = s1.split()
s2 = s2.split()
x = int(s1[0])
y = int(s1[1])
z = int(s1[2])
a = int(s2[0])
b = int(s2[1])
c = int(s2[2])
ost = a + b + c
if a >= x or x + y + z > ost:
	a -= x
	ost -= x
	if a + b >= y:
		ost -= y
		if ost >= z:
			print('YES')
		else:
			print('NO')
	else:
		print('NO')
else:
	print('NO')


n = list(map(int, input().split()))
a = list(map(int, input().split()))
if a[0] < n[0]:
	print('NO')
	exit()
if a[1] + a[0] - n[0] < n[1]:
	print('NO')
	exit()
if a[2] + a[1] + a[0] - n[0] - n[1] < n[2]:
	print('NO')
	exit()
print('YES')


def grapes(x, y, z, a, b, c):
	if x > a:
		return 'NO'
	else:
		a = a - x
		t = a + b
		if y > a + b:
			return 'NO'
		else:
			t = t - y
			if z > t + c:
				return 'NO'
	return 'YES'
(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
print(grapes(x, y, z, a, b, c))


import os
import sys
from io import BytesIO, IOBase
BUFSIZE = 8192

class FastIO(IOBase):
	newlines = 0

	def __init__(self, file):
		self._fd = file.fileno()
		self.buffer = BytesIO()
		self.writable = 'x' in file.mode or 'r' not in file.mode
		self.write = self.buffer.write if self.writable else None

	def read(self):
		while True:
			b = os.read(self._fd, max(os.fstat(self._fd).st_size, BUFSIZE))
			if not b:
				break
			ptr = self.buffer.tell()
			(self.buffer.seek(0, 2), self.buffer.write(b), self.buffer.seek(ptr))
		self.newlines = 0
		return self.buffer.read()

	def readline(self):
		while self.newlines == 0:
			b = os.read(self._fd, max(os.fstat(self._fd).st_size, BUFSIZE))
			self.newlines = b.count(b'\n') + (not b)
			ptr = self.buffer.tell()
			(self.buffer.seek(0, 2), self.buffer.write(b), self.buffer.seek(ptr))
		self.newlines -= 1
		return self.buffer.readline()

	def flush(self):
		if self.writable:
			os.write(self._fd, self.buffer.getvalue())
			(self.buffer.truncate(0), self.buffer.seek(0))

class IOWrapper(IOBase):

	def __init__(self, file):
		self.buffer = FastIO(file)
		self.flush = self.buffer.flush
		self.writable = self.buffer.writable
		self.write = lambda s: self.buffer.write(s.encode('ascii'))
		self.read = lambda : self.buffer.read().decode('ascii')
		self.readline = lambda : self.buffer.readline().decode('ascii')
(sys.stdin, sys.stdout) = (IOWrapper(sys.stdin), IOWrapper(sys.stdout))
input = lambda : sys.stdin.readline().rstrip('\r\n')
(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
a -= x
if a < 0:
	print('NO')
	sys.exit()
d = a + b
d -= y
if d < 0:
	print('NO')
	sys.exit()
d += c
d -= z
if d < 0:
	print('NO')
	sys.exit()
print('YES')


(andrew, dmitry, michael) = [int(x) for x in input().split()]
(green, purple, black) = [int(x) for x in input().split()]
status = True
green -= andrew
if green < 0:
	status = False
if green + purple - dmitry < 0:
	status = False
if green + purple + black - dmitry - michael < 0:
	status = False
if status:
	print('YES')
else:
	print('NO')


(x, y, z) = list(map(int, input().split()))
(a, b, c) = list(map(int, input().split()))
a -= x
if a < 0:
	print('NO')
	return
if a + b < y:
	print('NO')
	return
if a + b + c - y < z:
	print('NO')
	return
print('YES')


import sys
import math
from statistics import mean
input = sys.stdin.readline

def inp():
	return int(input())

def inlt():
	return list(map(int, input().split()))

def insr():
	s = input()
	return list(s[:len(s) - 1])

def invr():
	return map(int, input().split())
(x, y, z) = invr()
(a, b, c) = invr()
if x > a:
	print('NO')
elif x <= a:
	a = a - x
	m = a + b
	if y > m:
		print('NO')
	else:
		m = m - y
		m = m + c
		if z > m:
			print('NO')
		else:
			print('YES')


n = list(map(int, input().split()))
m = list(map(int, input().split()))
if n[0] > m[0]:
	print('NO')
else:
	m[0] = m[0] - n[0]
	if m[0] + m[1] + m[2] < n[1] + n[2]:
		print('NO')
	elif n[1] > m[0] + m[1]:
		print('NO')
	else:
		m[1] = m[0] + m[1] - n[1]
		if n[2] > m[1] + m[2]:
			print('NO')
		else:
			print('YES')


hungers = list(map(int, input().strip().split()))
grapes = list(map(int, input().strip().split()))
ans = 'YES'
if hungers[0] <= grapes[0]:
	grapes[0] = grapes[0] - hungers[0]
else:
	ans = 'NO'
if hungers[1] <= grapes[0] + grapes[1] and (not ans == 'NO'):
	if hungers[1] <= grapes[0]:
		grapes[0] = grapes[0] - hungers[1]
	else:
		grapes[1] = grapes[1] + grapes[0] - hungers[1]
		grapes[0] = 0
else:
	ans = 'NO'
if hungers[2] <= sum(grapes) and (not ans == 'NO'):
	ans = 'YES'
else:
	ans = 'NO'
print(ans)


(x, y, z) = [int(x) for x in input().split()]
(a, b, c) = [int(x) for x in input().split()]
if a < x:
	print('NO')
	exit()
a -= x
if a + b < y:
	print('NO')
	exit()
tmp = min(a, y)
y -= tmp
a -= tmp
tmp = min(b, y)
y -= tmp
b -= tmp
if a + b + c < z:
	print('NO')
	exit()
print('YES')


(x, y, z) = tuple(map(int, input().split()))
(a, b, c) = tuple(map(int, input().split()))
andrew = a - x
a = a - x
if andrew < 0:
	print('NO')
	exit()
gp = a + b
dim = gp - y
gp = gp - y
if dim < 0:
	print('NO')
	exit()
mic = gp + c
mic = mic - z
if mic < 0:
	print('NO')
	exit()
print('YES')


(x, y, z) = map(int, input().split())
(g, p, b) = map(int, input().split())
g -= x
f = True
if g < 0:
	f = False
else:
	p += g
	p -= y
	if p < 0:
		f = False
	else:
		b += p
		b -= z
		if b < 0:
			f = False
if f:
	print('Yes')
else:
	print('No')


def main():
	(x, y, z) = map(int, input().split())
	(a, b, c) = map(int, input().split())
	if a < x:
		print('NO')
		return
	a -= x
	if a + b < y:
		print('NO')
		return
	ab = a + b - y
	if ab + c < z:
		print('NO')
		return
	print('YES')
main()


import sys
(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
count = a + b + c
if x > a:
	print('NO')
	sys.exit()
a -= x
count -= x
if y > a + b:
	print('NO')
	sys.exit()
count -= y
if z > count:
	print('NO')
	sys.exit()
print('YES')


a1 = list(map(int, input().split()))
x = a1[0]
y = a1[1]
z = a1[-1]
b1 = list(map(int, input().split()))
a = b1[0]
b = b1[1]
c = b1[-1]
if a >= x:
	a = a - x
	if a + b >= y:
		if a + b + c - y >= z:
			print('YES')
		else:
			print('NO')
	else:
		print('NO')
else:
	print('NO')


str_in = str(input())
(x, y, z) = (int(str_in.split()[0]), int(str_in.split()[1]), int(str_in.split()[2]))
str_in = str(input())
(a, b, c) = (int(str_in.split()[0]), int(str_in.split()[1]), int(str_in.split()[2]))
if a < x:
	print('NO')
else:
	a -= x
	if a + b < y:
		print('NO')
	else:
		sum_ab = a + b - y
		if sum_ab + c < z:
			print('NO')
		else:
			print('YES')


import sys
data = sys.stdin.read().splitlines()
(x, y, z) = map(int, data[0].split())
(a, b, c) = map(int, data[1].split())
if a >= x and a - x + b >= y and (c + (a - x) + b - y >= z):
	print('YES')
else:
	print('NO')


import sys
(x, y, z) = input().split()
(a, b, c) = input().split()
x = int(x)
y = int(y)
z = int(z)
a = int(a)
b = int(b)
c = int(c)
if a - x < 0:
	print('NO')
	sys.exit(0)
a = a - x
if a + b < y:
	print('NO')
	sys.exit(0)
b = b + a - y
if b + c < z:
	print('NO')
	sys.exit(0)
print('YES')


a = list(map(int, input().split()))
r = list(map(int, input().split()))
green = 0
vse = 0
if sum(a) > sum(r):
	print('NO')
	exit()
if r[0] >= a[0]:
	green += r[0] - a[0]
else:
	print('NO')
	exit()
if green + r[1] >= a[1]:
	vse += green + r[1] - a[1]
	vse += r[2]
else:
	print('NO')
	exit()
if vse >= a[2]:
	print('YES')
else:
	print('NO')


(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
andrew = a - x
dimtry = b + andrew - y
final = a + b + c - x - y - z
if andrew >= 0 and dimtry >= 0 and (final >= 0):
	print('YES')
else:
	print('NO')


(x, y, z) = [int(item) for item in input().split(' ')]
(a, b, c) = [int(item) for item in input().split(' ')]

def check(x, y, z, a, b, c):
	if x > a:
		return False
	if y > a - x + b:
		return False
	if a - x + b + c - y < z:
		return False
	return True
if check(x, y, z, a, b, c):
	print('YES')
else:
	print('NO')


(andrew, dmitry, michael) = [int(x) for x in input().split()]
(green, purple, black) = [int(x) for x in input().split()]
if green - andrew < 0 or green - andrew + purple - dmitry < 0 or green - andrew + purple - dmitry + black - michael < 0:
	print('NO')
else:
	print('YES')


def answer():
	a = input().split()
	a = [int(x) for x in a]
	b = input().split()
	b = [int(x) for x in b]
	(x, y, z) = (a[0], a[1], a[2])
	r = b[0]
	if x > r:
		return 'NO'
	else:
		p = b[0] + b[1]
		p -= x
		if y > p:
			return 'NO'
		else:
			k = p + b[2]
			k -= y
			if z > k:
				return 'NO'
			else:
				return 'YES'
print(answer())


try:
	(x, y, z) = map(int, input().split())
	(a, b, c) = map(int, input().split())
	if a >= x:
		a = a - x
		if a + b >= y:
			t = a + b - y
			if t + c >= z:
				print('YES')
			else:
				print('NO')
		else:
			print('NO')
	else:
		print('NO')
except:
	pass


from copy import deepcopy
(a, b, c) = map(int, input().split())
(a1, b1, c1) = map(int, input().split())
if a1 >= a and a1 + b1 >= a + b and (a1 + b1 + c1 >= a + b + c):
	print('YES')
else:
	print('NO')


(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
remain_a_b = None

def solve():
	global a, b, c, x, y, z, remain_a_b
	a -= x
	if a < 0:
		print('NO')
		return
	if a + b >= y:
		remain_a_b = a + b - y
	else:
		print('NO')
		return
	if remain_a_b + c >= z:
		print('YES')
		return
	else:
		print('NO')
		return
solve()


def run():
	grapes_needed = input()
	grapes_needed = grapes_needed.split(' ')
	grapes_present = input()
	grapes_present = grapes_present.split(' ')
	if int(grapes_needed[0]) > int(grapes_present[0]):
		print('NO')
	else:
		green = int(grapes_present[0])
		purple = int(grapes_present[1])
		black = int(grapes_present[2])
		andrew = int(grapes_needed[0])
		dmitry = int(grapes_needed[1])
		michal = int(grapes_needed[2])
		green -= andrew
		if purple + green < dmitry:
			print('NO')
			return
		else:
			green -= dmitry
			if green < 0:
				purple += green
				green = 0
		if purple + green + black < michal:
			print('NO')
			return
		else:
			print('YES')
run()


n = list(map(int, input().split()))
n1 = list(map(int, input().split()))
a = n1[0]
b = n1[0] + n1[1]
c = sum(n1)
s = 0
v = 0
if n[0] <= a:
	b = b - n[0]
	c = c - n[0]
	s = s + 1
else:
	v = v + 1
if n[1] <= b:
	s = s + 1
	c = c - n[1]
else:
	v = v + 1
if n[2] <= c:
	s = s + 1
else:
	v = v + 1
if v != 0:
	print('NO')
else:
	print('YES')


(x, y, z) = input().split(' ')
(a, b, c) = input().split(' ')
if int(x) <= int(a):
	missing = int(a) - int(x)
	if missing < 0:
		missing = 0
	temp = missing + int(b)
	if int(y) <= temp:
		missing = temp - int(y)
		missing += int(c)
		if int(z) <= missing:
			print('YES')
		else:
			print('NO')
	else:
		print('NO')
else:
	print('NO')


def solve(x, y, z, a, b, c):
	if x > a or x + y > a + b or x + y + z > a + b + c:
		return True
	else:
		return False
(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
ans = solve(x, y, z, a, b, c)
print(['YES', 'NO'][ans])


numRequired = list(map(int, input().split(' ')))
numGrapes = list(map(int, input().split(' ')))
andrew = numGrapes[0] - numRequired[0]
dmitry = andrew + numGrapes[1] - numRequired[1]
michal = dmitry + numGrapes[2] - numRequired[2]
if andrew < 0 or dmitry < 0 or michal < 0:
	print('NO')
else:
	print('YES')


(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
if a < x:
	print('NO')
else:
	flag = 0
	a = a - x
	if a + b >= y:
		sum1 = a + b + c - y
		if sum1 >= z:
			flag = 1
	if flag == 1:
		print('YES')
	elif flag == 0:
		print('NO')


(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
if x == a or a > x:
	left_green = a - x
	if left_green + b == y or left_green + b > y:
		left = left_green + b - y
		if left + c == z or left + c > z:
			print('YES')
		else:
			print('NO')
	else:
		print('NO')
else:
	print('NO')


(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
if x <= a:
	a -= x
	s0 = a + b
	if s0 >= y:
		s0 -= y
		s1 = s0 + c
		if s1 >= z:
			print('YES')
		else:
			print('NO')
	else:
		print('NO')
else:
	print('NO')


(x, y, z) = input().split(' ')
x = int(x)
y = int(y)
z = int(z)
(a, b, c) = input().split(' ')
a = int(a)
b = int(b)
c = int(c)
v = True
if a >= x:
	a -= x
else:
	v = False
if v and a + b >= y:
	if a < y:
		y -= a
		a = 0
		b -= y
	else:
		a -= y
else:
	v = False
if v and a + b + c >= z:
	print('YES')
else:
	print('NO')


def main():
	(x, y, z) = (int(n) for n in input().split())
	(a, b, c) = (int(n) for n in input().split())
	if solver(x, y, z, a, b, c):
		print('YES')
	else:
		print('NO')

def solver(x, y, z, a, b, c):
	b1 = x <= a
	b2 = x + y <= a + b
	b3 = x + y + z <= a + b + c
	return b1 and b2 and b3
main()


(x1, y1, z1) = map(int, input().split())
(a1, b1, c1) = map(int, input().split())
if a1 >= x1 and a1 - x1 + b1 >= y1 and (a1 - x1 + b1 + c1 - y1 >= z1):
	print('YES')
else:
	print('NO')


def suffice(x, y, z, a, b, c):
	xa = min(x, a)
	x -= xa
	a -= xa
	zc = min(z, c)
	z -= zc
	c -= zc
	ab = a + b
	zab = min(z, ab)
	z -= zab
	ab -= zab
	yab = min(y, ab)
	y -= yab
	ab -= yab
	return x == y == z == 0
(x, y, z) = list(map(int, input().rstrip().split()))
(a, b, c) = list(map(int, input().rstrip().split()))
print('YES' if suffice(x, y, z, a, b, c) else 'NO')


(a, d, m) = map(int, input().split())
(g, p, b) = map(int, input().split())
if g >= a:
	if g - a + p >= d:
		if g + p + b - a - d >= m:
			print('YES')
		else:
			print('NO')
	else:
		print('NO')
else:
	print('NO')


arr = list(map(int, input().split()))
arr2 = list(map(int, input().split()))

def grapes():
	if arr2[0] - arr[0] < 0:
		return 'NO'
	arr2[0] = arr2[0] - arr[0]
	if arr2[0] + arr2[1] - arr[1] < 0:
		return 'NO'
	arr2[0] = arr2[0] - arr[1]
	if arr2[0] + arr2[1] + arr2[2] - arr[2] < 0:
		return 'NO'
	else:
		return 'YES'
print(grapes())


inp = lambda : map(int, input().split())
(x, y, z) = inp()
(a, b, c) = inp()
if a < x or a - x + b < y or c + (a + b - x - y) < z:
	print('NO')
	exit()
print('YES')


import sys
from math import sqrt, floor, factorial
from collections import deque
inp = sys.stdin.readline
read = lambda : list(map(int, inp().strip().split()))

def solve():
	(x, y, z) = read()
	(a, b, c) = read()
	if a - x >= 0 and a + b - x - y >= 0 and (a + b + c - x - y >= z):
		print('YES')
	else:
		print('NO')
solve()


(x, y, z) = [*map(int, input().split())]
(a, b, c) = [*map(int, input().split())]

def ret(x, y, z, a, b, c):
	if x > a:
		return False
	else:
		b += a - x
	if y > b:
		return False
	else:
		c += b - y
	if z > c:
		return False
	return True
print('YES') if ret(x, y, z, a, b, c) else print('NO')


def dist():
	[x, y, z] = [int(x) for x in input().split()]
	[a, b, c] = [int(x) for x in input().split()]
	if a < x:
		return 'NO'
	r = a - x
	if r + b < y:
		return 'NO'
	r = r + b - y
	return 'NO' if r + c < z else 'YES'
print(dist())


want = list(map(int, input().split()))
box = list(map(int, input().split()))
flag = 1
if box[0] < want[0]:
	flag = 0
if box[0] - want[0] + box[1] < want[1]:
	flag = 0
if sum(box) - sum(want) + want[2] < want[2]:
	flag = 0
if flag:
	print('YES')
else:
	print('NO')


(x, y, z) = list(map(int, input().split()))
(a, b, c) = list(map(int, input().split()))
possible = True
if a < x:
	possible = False
elif a - x + b < y:
	possible = False
elif a - x + b - y + c < z:
	possible = False
print('YES') if possible == True else print('NO')


(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
k = 0
p = 0
if x <= a:
	a -= x
else:
	k = 1
if y <= a + b and a >= 0 and (k != 1):
	p = a + b
	p -= y
else:
	k = 1
if p >= 0 and k != 1:
	c += p
	if z > c:
		k = 1
	else:
		k = 0
else:
	k = 1
if k == 0:
	print('YES')
else:
	print('NO')


(a, b, c) = map(int, input().split())
(x, y, z) = map(int, input().split())
if a > x:
	print('NO')
else:
	r1 = x - a
	if r1 + y < b:
		print('NO')
	else:
		r2 = r1 + y - b
		if r2 + z < c:
			print('NO')
		else:
			print('YES')


xyz = []

def input1():
	global xyz
	if len(xyz) == 0:
		xyz = [i for i in input().split()]
		xyz = xyz[::-1]
	v = xyz[-1]
	del xyz[-1]
	return v
a = int(input1())
d = int(input1())
m = int(input1())
g = int(input1())
p = int(input1())
b = int(input1())
x = g - a
y = x + p - d
z = y + b - m
if g < a:
	print('NO')
elif z < 0:
	print('NO')
elif y < 0:
	print('NO')
else:
	print('YES')


y = list(map(int, input().split()))
z = list(map(int, input().split()))
a = y[0]
b = y[1]
c = y[2]
a2 = z[0]
b2 = z[1]
c2 = z[2]
if a2 + b2 + c2 < a + b + c:
	print('No')
elif a2 < a:
	print('No')
elif a2 + b2 - a < b:
	print('No')
elif a2 + b2 + c2 - a - b < c:
	print('No')
else:
	print('Yes')


Y = [map(int, input().split()) for i in range(2)]
(a, b, c) = Y[0]
(d, e, f) = Y[1]
sum = a + b + c
sum1 = d + e + f
if sum > sum1:
	print('NO')
elif a > d:
	print('NO')
elif d + e - a < b:
	print('NO')
elif sum1 - a - b < c:
	print('NO')
else:
	print('YES')


def solve(x, y, z, a, b, c):
	if x > a or x + y > a + b or x + y + z > a + b + c:
		return 1
	else:
		return 0
(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
ans = solve(x, y, z, a, b, c)
print(['YES', 'NO'][ans])


R = lambda : map(int, input().split())
(x, y, z) = R()
(a, b, c) = R()
t = a
if x > t:
	print('NO')
else:
	t = t - x + b
	if y > t:
		print('NO')
	else:
		t = t - y + c
		if z > t:
			print('NO')
		else:
			print('YES')


(x, y, z) = map(int, input().split())
(g, p, b) = map(int, input().split())
c = 1
if g < x:
	c = 0
else:
	g = g - x
	if g + p < y:
		c = 0
	else:
		w = g + p - y + b
		if w < z:
			c = 0
		else:
			c = 1
if c == 1:
	print('YES')
else:
	print('NO')


(a, d, m) = map(int, input().split())
(g, p, b) = map(int, input().split())
ha = g - a
ans = 0
if ha >= 0:
	hd = p + ha - d
	if hd >= 0:
		hm = b + hd - m
		if hm >= 0:
			ans = 1
if ans == 0:
	print('NO')
else:
	print('YES')


a = [int(x) for x in input().split()]
b = [int(x) for x in input().split()]
rest = 0
if b[0] - a[0] < 0:
	print('NO')
	exit()
else:
	rest = b[0] - a[0]
if b[1] + rest - a[1] < 0:
	print('NO')
	exit()
else:
	rest += b[1] - a[1]
if b[2] - a[2] + rest < 0:
	print('NO')
	exit()
print('YES')


(A, D, M) = tuple(map(int, input().split()))
(G, V, B) = tuple(map(int, input().split()))
if A > G or D > G - A + V or M > G - A + V - D + B:
	print('NO')
else:
	print('YES')


(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
lol = 0
if x > a:
	print('NO')
else:
	ar = a - x
	lol = 1
if lol == 1:
	if b + ar < y:
		print('NO')
	else:
		ar = b + ar - y
		lol = 0
	if lol == 0:
		if ar + c < z:
			print('NO')
		else:
			print('YES')


def solve():
	(x, y, z) = map(int, input().split())
	(a, b, c) = map(int, input().split())
	if x + y + z > a + b + c:
		return False
	if x > a:
		return False
	else:
		a -= x
		if y > a + b:
			return False
		else:
			if a >= y:
				a -= y
			else:
				d = a - y
				a = 0
				b += d
			if z > a + b + c:
				return False
			else:
				return True
if solve():
	print('YES')
else:
	print('NO')


def check():
	(x, y, z) = [int(x) for x in input().split()]
	(g, p, b) = [int(x) for x in input().split()]
	g -= x
	if g < 0:
		print('NO')
		return
	p += g
	p -= y
	if p < 0:
		print('NO')
		return
	b += p
	b -= z
	if b < 0:
		print('NO')
		return
	print('YES')
check()


(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
t = x
x -= a
a -= t
t = y
y -= max(a, 0)
a -= max(a, y)
t = y
y -= b
b -= t
t = z
if x > 0 or y > 0:
	print('NO', end='')
elif max(a, 0) + max(b, 0) + c >= z:
	print('YES', end='')
else:
	print('NO', end='')


(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
if x <= a:
	dmitry = a + b - x
	if y <= dmitry:
		michael = a + b + c - x - y
		if z <= michael:
			print('YES')
		else:
			print('NO')
	else:
		print('NO')
else:
	print('NO')


(a, b, c) = map(int, input().split())
(a1, b1, c1) = map(int, input().split())
a1 -= a
if a1 < 0:
	print('NO')
	exit()
b1 += a1
b1 -= b
if b1 < 0:
	print('NO')
	exit()
c1 += b1
c1 -= c
if c1 < 0:
	print('NO')
	exit()
print('YES')


xyz = list(map(int, input().split()))
abc = list(map(int, input().split()))
accept = 1
if xyz[0] > abc[0]:
	accept = 0
if abc[0] - xyz[0] + abc[1] < xyz[1]:
	accept = 0
if abc[0] + abc[1] + abc[2] - xyz[0] - xyz[1] < xyz[2]:
	accept = 0
if accept == 1:
	print('YES')
else:
	print('NO')


import sys
(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
if a >= x:
	t = a - x
else:
	an = 0
	print('NO')
	sys.exit()
if b >= y:
	t = t + b - y
elif b + t >= y:
	t = b + t - y
else:
	print('NO')
	sys.exit()
if c >= z or c + t >= z:
	pass
else:
	print('NO')
	sys.exit()
print('YES')


def proba():
	in1 = input()
	in2 = input()
	in1 = in1.split()
	x = int(in1[0])
	y = int(in1[1])
	z = int(in1[2])
	in2 = in2.split()
	a = int(in2[0])
	b = int(in2[1])
	c = int(in2[2])
	if a < x:
		print('NO')
	elif a - x + b < y:
		print('NO')
	elif a - x + b - y + c < z:
		print('NO')
	else:
		print('YES')
proba()


(Andrew, Dmitry, Michal) = map(int, input().split(' '))
boxes = list(map(int, input().split(' ')))
Flag1 = False
Flag2 = False
Flag3 = False
if boxes[0] < Andrew:
	pass
else:
	Flag1 = True
	boxes[0] = boxes[0] - Andrew
if Flag1 == False:
	pass
elif Flag1 == True:
	if boxes[0] + boxes[1] < Dmitry:
		pass
	else:
		Flag2 = True
		if boxes[0] > Dmitry:
			boxes[0] = boxes[0] - Dmitry
		else:
			boxes[1] = boxes[1] - (Dmitry - boxes[0])
			boxes[0] = 0
if Flag2 == False:
	pass
elif Flag2 == True:
	if boxes[0] + boxes[1] + boxes[2] < Michal:
		pass
	else:
		Flag3 = True
if Flag3 == True:
	print('YES')
elif Flag3 == False:
	print('NO')


w = list(map(int, input().split()))
c = list(map(int, input().split()))
f = 1
if w[0] <= c[0]:
	f = 0
	c[0] = c[0] - w[0]
else:
	f = 1
if f == 0 and w[1] <= c[0] + c[1]:
	f = 0
	if c[0] < w[1]:
		c[1] = c[0] + c[1] - w[1]
		c[0] = 0
	else:
		c[0] = c[0] - w[1]
else:
	f = 1
if f == 0 and w[2] <= sum(c):
	f = 0
else:
	f = 1
if f == 0:
	print('YES')
else:
	print('NO')


from sys import stdin
(x, y, z) = list(map(int, stdin.readline().split()))
(a, b, c) = list(map(int, stdin.readline().split()))
first = 1
if a >= x:
	a -= x
	if a + b >= y:
		sum1 = a + b - y
		if sum1 + c >= z:
			print('YES')
			exit()
		else:
			print('NO')
			exit()
	else:
		print('NO')
		exit()
else:
	print('NO')


import sys
input = sys.stdin.readline
(x, y, z) = map(int, input().split())
grape = list(map(int, input().split()))
grape[1] += grape[0]
grape[2] += grape[1]
for idx in range(3):
	if idx == 0 and x <= grape[idx]:
		grape[idx + 2] -= x
		grape[idx + 1] -= x
	elif idx == 1 and y <= grape[idx]:
		grape[idx + 1] -= y
	elif idx == 2 and z <= grape[idx]:
		print('YES')
	else:
		print('NO')
		break


per = input().split()
gra = input().split()
x = int(per[0])
y = int(per[1])
z = int(per[2])
a = int(gra[0])
b = int(gra[1])
c = int(gra[2])
flag = 0
if a >= x:
	a = a - x
else:
	flag = flag + 1
	print('NO')
if flag == 0:
	if a + b >= y:
		temp = a - y
		a = 0
		b = b - -temp
	else:
		flag = flag + 1
		print('NO')
if flag == 0:
	if a + b + c >= z:
		print('YES')
	else:
		print('NO')


inp = [int(x) for x in input().split()]
andrew = inp[0]
dmitry = inp[1]
michal = inp[2]
inp = [int(x) for x in input().split()]
green = inp[0]
purple = inp[1]
black = inp[2]
green -= andrew
if green < 0:
	print('NO')
	exit()
purple = purple + green - dmitry
if purple < 0:
	print('NO')
	exit()
black = purple + black - michal
if black < 0:
	print('NO')
	exit()
print('YES')


ipt = list(map(int, input().split()))
(x, y, z) = (ipt[0], ipt[1], ipt[2])
ipt = list(map(int, input().split()))
(a, b, c) = (ipt[0], ipt[1], ipt[2])
res = 'YES'
if x <= a:
	a = a - x
	while y > 0:
		if a > 0:
			a -= 1
			y -= 1
		elif a == 0:
			if b > 0:
				b -= 1
				y -= 1
			else:
				res = 'NO'
				break
	if not res == 'NO':
		if z <= a + b + c:
			print(res)
		else:
			print('NO')
	else:
		print('NO')
else:
	print('NO')


TN = 1

def solution():
	(x, y, z) = map(int, input().split())
	(a, b, c) = map(int, input().split())
	ans = 'NO'
	if x <= a and y <= a - x + b and (z <= a + b + c - x - y):
		ans = 'YES'
	print(ans)
while TN != 0:
	solution()
	TN -= 1


(x, y, z) = [int(x) for x in input().split()]
(a, b, c) = [int(x) for x in input().split()]
total = a + b + c
possible = False
if x <= a:
	a = a - x
	if y <= a + b:
		a = a - y
		if a < 0:
			b = b + a
		if z <= total - x - y:
			possible = True
print('YES' if possible else 'NO')


from math import sqrt, ceil

def ii():
	return int(input())

def mi():
	return map(int, input().split())

def li():
	return list(mi())

def si():
	return input()
(x, y, z) = mi()
(a, b, c) = mi()
s = a + b + c
s -= x + y
f = 1
if a >= x:
	a -= x
	a += b
	if a >= y:
		if s < z:
			f = 0
	else:
		f = 0
else:
	f = 0
if f == 1:
	print('YES')
else:
	print('NO')


(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
a -= x
d = a + b
d -= y
e = d + c
e -= z
if a >= 0 and d >= 0 and (e >= 0):
	print('YES')
else:
	print('NO')


((x, y, z), (a, b, c)) = (map(int, input().split()), map(int, input().split()))
print(['NO', 'YES'][(0 <= a - x) * (a - x + b - y >= 0) * (a - x + b - y + c - z >= 0)])


import re
str1 = input()
str2 = input()
x = re.findall('\\d+', str1)
y = re.findall('\\d+', str2)
andrew = int(x[0])
dmitry = int(x[1])
michal = int(x[2])
g = int(y[0])
p = int(y[1])
b = int(y[2])
total = g + p + b
if andrew <= g:
	g = g - andrew
	total = total - andrew
	if dmitry <= g + p:
		total = total - dmitry
		if michal <= total:
			print('YES')
			quit()
print('NO')


def do_task(x, y, z, a, b, c):
	if a - x < 0:
		print('NO')
		return
	else:
		a -= x
		if a + b - y < 0:
			print('NO')
			return
		else:
			rem = a + b - y
			if rem + c - z < 0:
				print('NO')
				return
	print('YES')
	return
want = input().split(' ')
x = int(want[0])
y = int(want[1])
z = int(want[2])
available = input().split(' ')
a = int(available[0])
b = int(available[1])
c = int(available[2])
do_task(x, y, z, a, b, c)


def grape_problem():
	(andrew, dmitry, michal) = input().split(' ')
	(andrew, dmitry, michal) = (eval(andrew), eval(dmitry), eval(michal))
	(green, purple, black) = input().split(' ')
	(green, purple, black) = (eval(green), eval(purple), eval(black))
	if green < andrew:
		print('NO')
		return
	green = green - andrew
	if green + purple < dmitry:
		print('NO')
		return
	green_and_purple = green + purple - dmitry
	if green_and_purple + black < michal:
		print('NO')
		return
	print('YES')
grape_problem()


e = [int(i) for i in input().split()]
g = [int(i) for i in input().split()]
r = 'YES'
for i in range(3):
	if i > 0:
		g[i] += g[i - 1]
	if e[i] <= g[i]:
		g[i] -= e[i]
	else:
		r = 'NO'
		break
print(r)


def grapes(x, y, z, a, b, c):
	z = z - c
	if z <= 0:
		y = y - b
		if y <= 0:
			if x <= a:
				print('YES')
			else:
				print('NO')
		elif x + y <= a:
			print('YES')
		else:
			print('NO')
	else:
		yz_need_a = y + z - b
		if yz_need_a <= 0:
			if x <= a:
				print('YES')
			else:
				print('NO')
		elif yz_need_a + x <= a:
			print('YES')
		else:
			print('NO')
(x, y, z) = list(map(int, input().split()))
(a, b, c) = list(map(int, input().split()))
grapes(x, y, z, a, b, c)


(a, b, c) = map(int, input().split(' '))
(q, w, e) = map(int, input().split(' '))
if q < a:
	print('NO')
else:
	q -= a
	if q + w < b:
		print('NO')
	else:
		temp = q + w - b
		if temp + e < c:
			print('NO')
		else:
			print('YES')


(a, d, m) = map(int, input().split(' '))
(g, v, b) = map(int, input().split(' '))
if a <= g and d <= g + v - a and (m <= g + v + b - a - d):
	print('Yes')
else:
	print('No')


(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
flag = 0
if a < x:
	print('NO')
	exit(0)
a -= x
if a + b < y:
	print('NO')
	exit(0)
if a + b + c - y < z:
	print('NO')
	exit(0)
print('YES')


(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
if a < x:
	print('NO')
else:
	a -= x
	if a + b < y:
		print('NO')
	else:
		k = min(a, a - y)
		a -= k
		b -= y - k
		if a + b + c < z:
			print('NO')
		else:
			print('YES')


(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
cx = min(a, x)
a -= cx
x -= cx
s = a + b
cy = min(s, y)
s -= cy
y -= cy
z -= s + c
if x <= 0 and y <= 0 and (z <= 0):
	print('YES')
else:
	print('NO')


(g, g_p, al) = map(int, input().split())
(g_box, p_box, b_box) = map(int, input().split())
if g > g_box:
	print('NO')
else:
	g_box -= g
	if g_p > g_box + p_box:
		print('NO')
	else:
		rem = g_box + p_box - g_p
		if al > rem + b_box:
			print('NO')
		else:
			print('YES')


I = lambda : list(map(int, input().split()))
a = I()
b = I()
f = True
for i in range(3):
	if sum(b[:i + 1]) - a[i] < 0:
		f = False
		break
	b[i] -= a[i]
print('YES' if f else 'NO')


l1 = list(map(int, input().split()))
l2 = list(map(int, input().split()))
x = l1[0]
z = l1[1]
y = l1[2]
a1 = l2[0]
b1 = l2[1]
c1 = l2[2]
g = a1 - x
p = b1
yes = 0
b = c1
if g >= 0:
	if c1 < y:
		y = y - c1
		if g + p >= y + z:
			yes = 1
	elif g + p >= z:
		yes = 1
if yes == 1:
	print('YES')
else:
	print('NO')


import math, string, itertools, fractions, heapq, collections, re, array, bisect, sys, random, time, copy, functools
sys.setrecursionlimit(10 ** 7)
inf = 10 ** 20
eps = 1.0 / 10 ** 10
mod = 10 ** 9 + 7
dd = [(-1, 0), (0, 1), (1, 0), (0, -1)]
ddn = [(-1, 0), (-1, 1), (0, 1), (1, 1), (1, 0), (1, -1), (0, -1), (-1, -1)]

def LI():
	return [int(x) for x in sys.stdin.readline().split()]

def LI_():
	return [int(x) - 1 for x in sys.stdin.readline().split()]

def LF():
	return [float(x) for x in sys.stdin.readline().split()]

def LS():
	return sys.stdin.readline().split()

def I():
	return int(sys.stdin.readline())

def F():
	return float(sys.stdin.readline())

def S():
	return input()

def pf(s):
	return print(s, flush=True)

def main():
	a = LI()
	b = LI()
	for i in range(1, 4):
		if sum(a[:i]) > sum(b[:i]):
			return 'NO'
	return 'YES'
print(main())


(a, d, m) = list(map(int, input().split()))
(g, p, b) = list(map(int, input().split()))
i = 0
if a <= g:
	g -= a
	if g + p >= d:
		sam = g + p
		sam -= d
		if sam + b >= m:
			print('YES')
		else:
			print('NO')
	else:
		print('NO')
else:
	print('NO')


I = lambda : map(int, input().split())
(x, y, z) = I()
(a, b, c) = I()
print('NO' if a < x or a - x + b < y or a - x + b - y + c < z else 'YES')


(x, y, z) = [int(elem) for elem in input().split()]
(a, b, c) = [int(elem) for elem in input().split()]
if a < x:
	print('NO')
else:
	a -= x
	v_r = a + b
	if v_r < y:
		print('NO')
	else:
		v_r -= y
		if v_r + c < z:
			print('NO')
		else:
			print('YES')


def main():
	temp = list(map(int, input().split()))
	(x, y, z) = (temp[0], temp[1], temp[2])
	temp = list(map(int, input().split()))
	(a, b, c) = (temp[0], temp[1], temp[2])
	if x > a:
		return False
	a -= x
	y -= a
	if y > b:
		return False
	b -= y
	if b + c < z:
		return False
	return True
m = main()
if m:
	print('YES')
else:
	print('NO')


(x, y, z) = [int(item) for item in input().split()]
(a, b, c) = [int(item) for item in input().split()]
result = True
if a < x:
	result = False
else:
	a -= x
	if a + b < y:
		result = False
	elif z > a + b + c - y:
		result = False
print('YES') if result else print('NO')


import sys
import math
get_string = lambda : sys.stdin.readline().strip()
get_list = lambda : list(map(int, sys.stdin.readline().strip().split()))
get_intList_from_str = lambda : list(map(int, list(sys.stdin.readline().strip())))
get_strList_from_str = lambda : list(sys.stdin.readline().strip())
get_int = lambda : int(sys.stdin.readline().strip())
pt = lambda x: sys.stdout.write(str(x))
lst = get_list()
(a, b, c) = lst
grapes = get_list()
if a <= grapes[0]:
	grapes[0] -= a
	if grapes[0] + grapes[1] >= b:
		if sum(grapes) >= b + c:
			print('YES')
		else:
			print('NO')
	else:
		print('NO')
else:
	print('NO')


[x, y, z] = list(map(int, input().split()))
[a, b, c] = list(map(int, input().split()))

def no():
	print('NO')
	exit(0)

def yes():
	print('YES')
	exit(0)
if a < x:
	no()
if a + b < x + y:
	no()
if a + b + c < x + y + z:
	no()
yes()


(A, D, M) = [int(i) for i in input().split()]
(G, P, B) = [int(i) for i in input().split()]
res = 1
andrew = 0
dmitry = 0
michal = 0
if G < A:
	print('NO')
else:
	andrew = A
	if G + P - A < D:
		print('NO')
	elif G + P + B - (A + D) < M:
		print('NO')
	else:
		print('YES')


from collections import deque, Counter, OrderedDict
from heapq import nsmallest, nlargest
from math import ceil, floor, log, log2, sqrt, gcd

def binNumber(n, size=1):
	return bin(n)[2:].zfill(size)

def iar():
	return list(map(int, input().split()))

def ini():
	return int(input())

def isp():
	return map(int, input().split())

def sti():
	return str(input())
(a, b, c) = isp()
(g, p, bl) = isp()
if a <= g:
	g -= a
	if b <= g + p:
		if c <= g + p + bl - b:
			print('YES')
		else:
			print('NO')
	else:
		print('NO')
else:
	print('NO')


(x, y, z) = list(map(int, input().split()))
(a, b, c) = list(map(int, input().split()))
d = 0
if a < x:
	d = 1
w = a - x
if w + b < y:
	d = 1
r = w + b - y
if r + c < z:
	d = 1
if d == 0:
	print('YES')
else:
	print('NO')


from sys import stdin, stdout

def inp():
	return stdin.readline()

def minp():
	return map(int, stdin.readline().rstrip().split())

def linp():
	return list(minp())
(x, y, z) = minp()
(a, b, c) = minp()
s = a + b + c
f = 0
if x <= a:
	a -= x
	s -= x
	if y <= a + b:
		s -= y
		if z <= s:
			print('YES')
			f = 1
if f == 0:
	print('NO')


def grapes(x, y, z, a, b, c):
	if x <= a and y <= a + b - x and (z <= a + b + c - x - y):
		return 'YES'
	return 'NO'
(X, Y, Z) = [int(i) for i in input().split()]
(A, B, C) = [int(i) for i in input().split()]
print(grapes(X, Y, Z, A, B, C))


(A, D, M) = list(map(int, input().split()))
(G, P, B) = list(map(int, input().split()))

def is_valid(A, D, M, G, P, B):
	if A > G:
		return False
	else:
		G -= A
	tmp = G + P
	if D > G + P:
		return False
	else:
		tmp -= D
	if M > tmp + B:
		return False
	return True
if is_valid(A, D, M, G, P, B):
	print('YES')
else:
	print('NO')


def b():
	arrlen = list(map(int, input().split()))
	arr = list(map(int, input().split()))
	andrew = arrlen[0]
	dmitry = arrlen[1]
	michal = arrlen[2]
	arr[0] -= andrew
	if not arr[0] >= 0:
		print('NO')
	else:
		for i in range(dmitry):
			if arr[0] >= 1:
				arr[0] -= 1
			elif arr[1] >= 1:
				arr[1] -= 1
			else:
				print('NO')
				return
		if sum(arr) >= michal:
			print('YES')
			return
		else:
			print('NO')
b()


(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
if x > a:
	print('NO')
else:
	temp = a - x
	if temp + b < y:
		print('NO')
	else:
		temp1 = temp + b - y
		if temp1 + c < z:
			print('NO')
		else:
			print('YES')


from sys import stdin, stdout
(x, y, z) = map(int, stdin.readline().split())
(a, b, c) = map(int, stdin.readline().split())
if a >= x and a - x + b >= y and (a + b + c - x - y >= z):
	stdout.write('YES\n')
else:
	stdout.write('NO\n')


def gotAnyGrapes():
	inp1 = input()
	inp2 = input()
	(x, y, z) = [int(i) for i in inp1.split()]
	(a, b, c) = [int(i) for i in inp2.split()]
	if a >= x:
		a = a - x
		h = a + b
		if h >= y:
			h = h - y + c
			if h >= z:
				print('YES')
			else:
				print('NO')
		else:
			print('NO')
	else:
		print('NO')
gotAnyGrapes()


(x, y, z) = map(int, input().split())
(g, p, b) = map(int, input().split())
c = 0
a = g + p
b = g + p + b
while c == 0:
	if x <= g:
		g -= x
		a -= x
		b -= x
	else:
		c = 1
		break
	if y <= a:
		a -= y
		b -= y
	else:
		c = 1
		break
	if z <= b:
		b -= z
	else:
		c = 1
		break
	break
if c == 0:
	print('YES')
else:
	print('NO')


a = list(map(int, input().split()))
b = list(map(int, input().split()))
if b[0] >= a[0] and b[0] - a[0] + b[1] >= a[1] and (b[0] - a[0] + b[1] - a[1] + b[2] >= a[2]):
	print('YES')
else:
	print('NO')


(x, y, z) = input().split()
(x, y, z) = (int(x), int(y), int(z))
(g, f, b) = input().split()
(g, f, b) = (int(g), int(f), int(b))
g -= x
if f > y:
	f -= y
else:
	g -= y - f
	f = 0
if g >= 0 and f >= 0 and (g + f + b >= z):
	print('YES')
else:
	print('NO')


(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
if a < x:
	print('NO')
	exit()
x -= a
if b < y + x:
	print('NO')
	exit()
k = x + y - b
if c < k + z:
	print('NO')
	exit()
print('YES')


from sys import stdin

def read():
	return stdin.readline().strip()
grapes = lambda : map(int, read().split())
(x, y, z) = grapes()
(a, b, c) = grapes()
print('YNEOS'[a < x or a - x + b < y or a - x + b - y + c < z::2])


(a, b, c) = [int(i) for i in input().split()]
(n, m, o) = [int(i) for i in input().split()]
flag = 0
if a <= n:
	n = n - a
else:
	flag = 1
d = 0
if n + m >= b:
	d = n + m
	d = d - b
else:
	flag = 1
if d + o >= c:
	d = 1
else:
	flag = 1
if flag > 0:
	print('NO')
else:
	print('YES')


first_line = input()
(x, y, z) = first_line.split()
x = int(x)
y = int(y)
z = int(z)
second_line = input()
(a, b, c) = second_line.split()
a = int(a)
b = int(b)
c = int(c)
P = a - x
if P >= 0:
	K = P + b - y
	if K >= 0:
		M = K + c - z
		if M >= 0:
			print('YES')
		else:
			print('NO')
	else:
		print('NO')
else:
	print('NO')


s = input()
(x, y, z) = [int(x) for x in s.split(' ')]
v = input()
(a, b, c) = [int(x) for x in v.split(' ')]
if a >= x:
	a -= x
	if b + a >= y:
		r = b + a + c - y
		if r >= z:
			print('YES')
		else:
			print('NO')
	else:
		print('NO')
else:
	print('NO')


p = input().rstrip().split(' ')
q = input().rstrip().split(' ')
a = int(q[0])
b = int(q[1])
c = int(q[2])
d = a + b + c
e = a + b
flag = 0
if int(p[0]) <= a:
	d = d - int(p[0])
	e = e - int(p[0])
	if int(p[1]) <= e:
		d = d - int(p[1])
		if d >= int(p[2]):
			print('YES')
			flag = 1
if flag == 0:
	print('NO')


(x, y, z) = [int(s) for s in input().split(' ')]
(a, b, c) = [int(s) for s in input().split(' ')]
s1 = a - x
s2 = s1 + b - y
s3 = c + s2 - z
if s1 >= 0 and s2 >= 0 and (s3 >= 0):
	print('YES')
else:
	print('NO')


(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
res_a = 0
res_d = 0
res_m = 0
if a < x:
	res_a = 1
else:
	a = a - x
if res_a == 0:
	if a + b < y:
		res_d = 1
	else:
		b = b - y
if res_a + res_d == 0:
	if a + b + c < z:
		res_m = 1
if res_a + res_d + res_m == 0:
	print('YES')
else:
	print('NO')


def main():
	[x, y, z] = list(map(int, input().split(' ')))
	[green, purple, black] = list(map(int, input().split(' ')))
	if x > green:
		print('NO')
		return
	green -= x
	if y > purple + green:
		print('NO')
		return
	remaining = green + purple + black - y
	if z > remaining:
		print('NO')
		return
	print('YES')
	return
main()


(x, y, z) = map(int, input().split())
(g, p, b) = map(int, input().split())
g -= x
e1 = min(p, y)
p -= e1
y -= e1
if y > 0:
	g -= y
if g >= 0 and g + p + b >= z:
	print('YES')
else:
	print('NO')


(x, y, z) = input().split()
x = int(x)
y = int(y)
z = int(z)
(a, b, c) = input().split()
a = int(a)
b = int(b)
c = int(c)
bg = 'No'
if a >= x:
	rem = a - x
	p = rem + b
	if p >= y:
		rem = rem + b - y
		g = rem + c
		if g >= z:
			bg = 'Yes'
print(bg)


import math as mt
import sys, string
from collections import Counter, defaultdict
input = sys.stdin.readline
I = lambda : int(input())
M = lambda : map(int, input().split())
ARR = lambda : list(map(int, input().split()))

def printARR(arr):
	for e in arr:
		print(e, end=' ')
	print()

def main():
	(x, y, z) = M()
	(a, b, c) = M()
	if a - x < 0:
		print('NO')
		return
	a -= x
	if a + b < y:
		print('NO')
		return
	tmp = a + b - y
	tmp += c
	if tmp < z:
		print('NO')
		return
	print('YES')
tc = 1
for _ in range(tc):
	main()


import sys
u = [int(x) for x in input().split()]
v = [int(x) for x in input().split()]
k = 0
for (x, y) in zip(u, v):
	y += k
	y -= x
	if y < 0:
		print('NO')
		sys.exit()
	k = y
print('Yes')


from math import *
from cmath import *
from itertools import *
from decimal import *
from fractions import *
from sys import *
from types import CodeType, new_class
(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
if a + b + c < x + y + z:
	print('NO')
	exit(0)
a -= x
if a < 0:
	print('NO')
	exit()
if y > a + b:
	print('NO')
	exit()
if z > a + b - y + c:
	print('NO')
else:
	print('YES')


x = [int(c) for c in input().split()]
y = [int(c) for c in input().split()]
if x[0] > y[0] or sum(x) > sum(y):
	print('No')
elif y[0] - x[0] + y[1] < x[1]:
	print('No')
elif sum(y) - x[1] - x[0] < x[2]:
	print('No')
else:
	print('Yes')


a = input()
b = input()
need_list = a.split()
grape_list = b.split()
for i in range(len(need_list)):
	need_list[i] = int(need_list[i])
	grape_list[i] = int(grape_list[i])
andrew = need_list[0]
dimitri = need_list[1]
michal = need_list[2]
green = grape_list[0]
purple = grape_list[1]
black = grape_list[2]
if andrew > green:
	print('NO')
elif andrew + dimitri > green + purple:
	print('NO')
else:
	green = green - andrew
	helper = green + purple - dimitri
	if michal > helper + black:
		print('NO')
	else:
		print('YES')


a = [i for i in map(int, input().split())]
b = [i for i in map(int, input().split())]
status = []
stat1 = b[0] - a[0] >= 0
if stat1:
	status.append(1)
	b[1] += b[0] - a[0]
else:
	status.append(0)
stat2 = b[1] - a[1] >= 0
if stat2:
	status.append(1)
	b[2] += b[1] - a[1]
else:
	status.append(0)
stat3 = b[2] - a[2] >= 0
if stat3:
	status.append(1)
else:
	status.append(0)
if 0 in status:
	print('NO')
else:
	print('YES')


import sys
temp1 = sys.stdin.readline()
temp2 = sys.stdin.readline()
list1 = temp1.split()
list2 = temp2.split()
(x, y, z) = map(int, tuple(list1))
(a, b, c) = map(int, tuple(list2))
if a >= x and a + b >= y + x and (a + b + c >= x + y + z):
	print('YES')
else:
	print('NO')


class Grapes:
	(x, y, z) = map(int, input().split())
	(a, b, c) = map(int, input().split())
	s = 0
	no = False
	if x > a:
		no = True
	else:
		a -= x
	s = a + b
	if y > s:
		no = True
	else:
		s -= y
	s = s + c
	if z > s:
		no = True
	else:
		s -= z
	if no == False:
		print('YES')
	else:
		print('NO')


def main():
	(x, y, z) = input().split(' ')
	x = int(x)
	y = int(y)
	z = int(z)
	(a, b, c) = input().split(' ')
	a = int(a)
	b = int(b)
	c = int(c)
	if x <= a:
		a = a - x
		if y <= a + b and z <= a + b + c - y:
			print('YES')
		else:
			print('NO')
	else:
		print('NO')
main()


(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
if a >= x:
	a -= x
	if a + b >= y:
		sum_a_b = a + b
		sum_a_b -= y
		total = sum_a_b + c
		if total >= z:
			print('YES')
		else:
			print('NO')
	else:
		print('NO')
else:
	print('NO')


num = input().split(' ')
grapes = input().split(' ')
if int(grapes[0]) < int(num[0]):
	print('NO')
elif int(grapes[0]) + int(grapes[1]) - int(num[0]) < int(num[1]):
	print('NO')
elif int(grapes[0]) + int(grapes[1]) + int(grapes[2]) - int(num[0]) - int(num[1]) < int(num[2]):
	print('NO')
else:
	print('YES')


l1 = list(map(int, input().split(' ')))
l2 = list(map(int, input().split(' ')))
c = 0
a = l1[0]
d = l1[1]
m = l1[2]
green = l2[0]
purple = l2[1]
black = l2[2]
s = green + purple
if a > green:
	c = c + 1
elif a <= green:
	green = green - a
	s = s - a
if s < d:
	c = c + 1
elif s >= d:
	s = s - d
if s + black < m:
	c = c + 1
if c > 0:
	print('NO')
else:
	print('YES')


(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
k = 0
t = a + b + c
if a < x:
	print('NO')
elif a >= x and y <= a + b - x and (z <= t - x - y):
	print('YES')
else:
	print('NO')


req = [int(n) for n in input().split()]
tot = [int(m) for m in input().split()]
flag = 0
if req[0] <= tot[0]:
	tot[0] = tot[0] - req[0]
	flag = 1
	if flag == 1 and req[1] <= tot[0] + tot[1]:
		t = tot[0] + tot[1] - req[1]
		flag = 2
		if flag == 2 and req[2] <= tot[2] + t:
			print('YES')
		else:
			print('NO')
	else:
		print('NO')
else:
	print('NO')


import sys
input = sys.stdin.readline
(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
if x > a:
	print('NO')
	sys.exit(0)
elif y > a - x + b:
	print('NO')
	sys.exit(0)
elif a - x + b - y + c >= z:
	print('YES')
else:
	print('NO')


a = [i for i in map(int, input().split())]
b = [i for i in map(int, input().split())]
stat = 0
for i in range(3):
	if a[i] <= b[i]:
		stat = 1
		if i < 2:
			b[i + 1] += b[i] - a[i]
	else:
		stat = 0
		break
print('YES' if stat else 'NO')


(andrew, dimitry, michal) = map(int, input().split())
(green, purple, black) = map(int, input().split())
total = 0
a = False
b = False
c = False
if green - andrew >= 0:
	total += green - andrew
	a = True
if total + purple - dimitry >= 0:
	total = total + purple
	total = total - dimitry
	total += black
	b = True
if total - michal >= 0:
	c = True
if a == True and b == True and (c == True):
	print('Yes')
else:
	print('No')


(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
res = 'NO'
if a >= x:
	a -= x
	if a + b >= y:
		c += a + b - y
		if c >= z:
			res = 'YES'
print(res)


import sys
import math
input = sys.stdin.readline

def inp():
	return int(input())

def inara():
	return list(map(int, input().split()))

def insr():
	s = input()
	return list(s[:len(s) - 1])

def invr():
	return map(int, input().split())
(x, y, z) = invr()
(a, b, c) = invr()
if a >= x:
	a -= x
	tot = a + b
	if tot >= y:
		tot -= y
		tot += c
		if tot >= z:
			print('YES')
		else:
			print('NO')
	else:
		print('NO')
else:
	print('NO')


(x, y, z) = list(map(int, input().split()))
(a, b, c) = list(map(int, input().split()))
sumx = a + b + c
m = True
if x <= a:
	a = a - x
	sumx = a + b + c
else:
	m = False
if a + b >= y:
	f = a + b - y
	sumx = f + c
else:
	m = False
if sumx >= z:
	pass
else:
	m = False
if m:
	print('YES')
else:
	print('NO')


def format(string):
	l = [int(i) for i in string.split()]
	return l
minAmt = format(input())
x = minAmt[0]
y = minAmt[1]
z = minAmt[-1]
availAmt = format(input())
a = availAmt[0]
b = availAmt[1]
c = availAmt[-1]
if a + b + c >= x + y + z and a >= x:
	leftA = a - x
	if leftA >= 0:
		leftB = b - y
		if leftB >= 0 or leftA + b >= y:
			lefti2 = a + b + c - x - y
			if lefti2 >= z:
				print('YES')
			else:
				print('NO')
		else:
			print('NO')
	else:
		print('NO')
else:
	print('NO')


p = [int(x) for x in input().split()]
g = [int(x) for x in input().split()]
if p[0] <= g[0]:
	g[0] -= p[0]
	if p[2] < g[2]:
		p[2] = 0
	else:
		p[2] -= g[2]
	if g[0] + g[1] >= p[1] + p[2]:
		print('YES')
	else:
		print('NO')
else:
	print('NO')


import sys
x = []
for line in sys.stdin:
	x.append(line)
a = [int(i) for i in x[0].rstrip().split()]
b = [int(i) for i in x[1].rstrip().split()]
g = b[0]
p = b[1]
bl = b[2]
gp = g + p
gpbl = gp + bl
if a[0] <= g:
	g -= a[0]
	gp -= a[0]
	gpbl -= a[0]
	if a[1] <= gp:
		gp -= a[1]
		gpbl -= a[1]
		if a[2] <= gpbl:
			print('YES')
		else:
			print('NO')
	else:
		print('NO')
else:
	print('NO')


def get():
	return list(map(int, input().split()))
(a, b, c) = get()
(x, y, z) = get()
if x < a:
	print('NO')
else:
	x -= a
	if x + y < b:
		print('NO')
	elif x + y + z - b < c:
		print('NO')
	else:
		print('YES')


(a, b, c) = map(int, input().split())
(d, e, f) = map(int, input().split())
d = d - a
s = d + e - b
z = s + f - c
if d >= 0 and s >= 0 and (z >= 0):
	print('YES')
else:
	print('NO')


def vinograd():
	wish = [int(i) for i in input().split()]
	has = [int(i) for i in input().split()]
	if wish[0] > has[0]:
		return 'NO'
	has[0] -= wish[0]
	if wish[1] > has[0] + has[1]:
		return 'NO'
	for i in range(wish[1]):
		if has[0] != 0:
			has[0] -= 1
		else:
			has[1] -= 1
	if wish[2] > sum(has):
		return 'NO'
	return 'YES'
print(vinograd())


(a, b, c) = input().split(' ')
(g1, g2, g3) = input().split(' ')
a = int(a)
b = int(b)
c = int(c)
g1 = int(g1)
g2 = int(g2)
g3 = int(g3)
if a > g1:
	print('NO')
	exit(0)
while a != 0:
	g1 -= 1
	a -= 1
while b != 0:
	if g1 > 0:
		g1 -= 1
		b -= 1
	elif g2 > 0:
		g2 -= 1
		b -= 1
	else:
		print('NO')
		exit(0)
while c != 0:
	if g1 > 0:
		c -= 1
		g1 -= 1
	elif g2 > 0:
		c -= 1
		g2 -= 1
	elif g3 > 0:
		c -= 1
		g3 -= 1
	else:
		print('NO')
		exit(0)
print('YES')


import math
(andr, dmitry, mih) = list(map(int, input().split()))
(green, purple, black) = list(map(int, input().split()))
green -= andr
if green < 0:
	print('NO')
	exit()
if green:
	if green >= dmitry:
		green -= dmitry
		dmitry = 0
	elif green < dmitry:
		dmitry -= green
		green = 0
if dmitry:
	if dmitry <= purple:
		purple -= dmitry
		dmitry = 0
if dmitry:
	print('NO')
	exit()
if green + purple + black < mih:
	print('NO')
	exit()
print('YES')


(andrey, dima, misha) = map(int, input().split())
(green, violet, black) = map(int, input().split())
if andrey > green:
	print('NO')
	exit()
green = green - andrey
if green + violet < dima:
	print('NO')
	exit()
ostatok = green + violet - dima
if ostatok + black < misha:
	print('NO')
	exit()
print('YES')


def inpl():
	return list(map(int, input().split()))
people = inpl()
grapes = inpl()
res1 = people[0] <= grapes[0]
if not res1:
	print('NO')
else:
	res2 = people[1] <= grapes[0] + grapes[1] - people[0]
	if not res2:
		print('NO')
	else:
		res3 = people[0] + people[1] + people[2] <= grapes[0] + grapes[1] + grapes[2]
		if not res3:
			print('NO')
		else:
			print('YES')


N = [list(map(int, input().split())) for i in range(2)]
l = 0
ok = True
for i in range(3):
	l += N[1][i] - N[0][i]
	if l < 0:
		ok = False
print(['NO', 'YES'][ok])


(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
if x <= a and 1 <= x <= 100000 and (1 <= y <= 100000) and (1 <= z <= 100000) and (1 <= a <= 100000) and (1 <= b <= 100000) and (1 <= c <= 100000):
	if x <= a:
		temp1 = 0
		a = a - x
	else:
		temp1 = x - a
		a = 0
	if y <= b:
		temp2 = 0
		b = b - y
	else:
		temp2 = y - b
		b = 0
	if z <= c:
		temp3 = 0
		c = c - z
	else:
		temp3 = z - c
		c = 0
	if a + b >= temp2:
		a = a - temp2
		temp2 = 0
	if a + b + c >= temp3:
		temp3 = 0
	if temp1 == 0 and temp2 == 0 and (temp3 == 0):
		print('YES')
	else:
		print('NO')
else:
	print('NO')


[a, d, m] = [int(x) for x in input().split()]
[g, p, b] = [int(x) for x in input().split()]
if a <= g and d <= g + p - a and (m <= g + p + b - a - d):
	print('YES')
else:
	print('NO')


s1 = input('')
l1 = s1.split()
(x, y, z) = (int(l1[0]), int(l1[1]), int(l1[2]))
s2 = input('')
l2 = s2.split()
(a, b, c) = (int(l2[0]), int(l2[1]), int(l2[2]))
rs = 0
if x <= a:
	a = a - x
	t = a + b
	if y <= t:
		t = t - y
		if z <= t + c:
			rs = 1
			print('YES')
if rs == 0:
	print('NO')


(andr, dmit, mich) = map(int, input().split())
(green, purple, black) = map(int, input().split())
if andr <= green and dmit <= green - andr + purple and (mich <= black + green - andr + purple - dmit):
	print('YES')
else:
	print('NO')


import sys
(andr, dmitr, mich) = [int(i) for i in input().split()]
(green, violet, black) = [int(i) for i in input().split()]
if andr > green:
	print('NO')
	sys.exit()
if dmitr > green + violet - andr:
	print('NO')
	sys.exit()
if mich > green + violet + black - andr - dmitr:
	print('NO')
	sys.exit()
print('YES')


a = list(map(int, input().split()))
b = list(map(int, input().split()))
d = 0
if b[0] < a[0]:
	d = 1
b[0] = b[0] - a[0]
if a[1] > b[0] + b[1]:
	d = 1
b[1] = b[1] - a[1]
if sum(b) < a[2]:
	d = 1
b[2] = b[2] - a[2]
if d == 1 or sum(b) < 0:
	print('NO')
else:
	print('YES')


a = list(map(int, input().split()))
b = list(map(int, input().split()))
f = 0
if sum(a) > sum(b):
	f = 1
if a[0] > b[0]:
	f = 1
if a[0] + a[1] > b[0] + b[1]:
	f = 1
if f == 1:
	print('NO')
else:
	print('YES')


(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
t = a + b + c
if x > a:
	ans = 'NO'
else:
	t = t - x
	v = t - c
	if y > v:
		ans = 'NO'
	else:
		t = t - y
		if z <= t:
			ans = 'YES'
		else:
			ans = 'NO'
print(ans)


(n, m, k) = map(int, input().split())
(a, b, c) = map(int, input().split())
if n > a or m > a + b - n or k > a + b + c - n - m:
	print('NO')
else:
	print('YES')


numbers = [int(x) for x in input().split()]
grapes = [int(x) for x in input().split()]

def checker(numbers, grapes):
	r = 0
	if numbers[0] > grapes[0]:
		print('NO')
		return
	if numbers[0] + numbers[1] > grapes[0] + grapes[1]:
		print('NO')
		return
	if numbers[0] + numbers[1] + numbers[2] > grapes[0] + grapes[1] + grapes[2]:
		print('NO')
		return
	print('YES')
checker(numbers, grapes)


(x, y, z) = input().split()
(a, b, c) = input().split()
x = int(x)
y = int(y)
z = int(z)
a = int(a)
b = int(b)
c = int(c)
if a < x:
	ansx = 'NO'
else:
	a -= x
	ansx = 'YES'
if y > a + b:
	ansy = 'NO'
elif a >= y:
	a -= y
	ansy = 'YES'
elif a < y:
	y -= a
	a = 0
	b -= y
	ansy = 'YES'
if z > a + b + c:
	ansz = 'NO'
else:
	ansz = 'YES'
if ansx == 'YES' and ansy == 'YES' and (ansz == 'YES'):
	print('YES')
else:
	print('NO')


g = [int(i) for i in input().split()]
n = [int(i) for i in input().split()]
c = 0
if n[0] >= g[0] and n[0] + n[1] - g[0] >= g[1] and (n[0] + n[1] + n[2] - g[0] - g[1] >= g[2]):
	print('YES')
else:
	print('NO')


input_names = input().split()
names = [int(i) for i in input_names]
input_grapes = input().split()
grapes = [int(i) for i in input_grapes]
valid = 0
if grapes[0] >= names[0]:
	if grapes[0] - names[0] + grapes[1] >= names[1]:
		if grapes[0] - names[0] + grapes[1] - names[1] + grapes[2] >= names[2]:
			valid = 1
if valid > 0:
	print('YES')
else:
	print('NO')


l = list(map(int, input().split()))
l1 = list(map(int, input().split()))
if sum(l) > sum(l1):
	print('NO')
	exit()
if l1[0] >= l[0]:
	l1[0] -= l[0]
	if l1[0] + l1[1] >= l[1]:
		print('YES')
		exit()
	else:
		print('NO')
		exit()
else:
	print('NO')
	exit()


(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())

def solve(a, b, c, x, y, z):
	if a < x:
		return 'NO'
	a -= x
	if a + b < y:
		return 'NO'
	total = a + b + c
	total -= y
	if total < z:
		return 'NO'
	return 'YES'
print(solve(a, b, c, x, y, z))


(a, d, m) = map(int, input().split())
(z, f, h) = map(int, input().split())
q = 0
if z < a:
	q += 1
else:
	z -= a
if z + f < d:
	q += 1
else:
	if z - d < 0:
		d -= z
		z = 0
	else:
		z -= d
		d = 0
	f = f - d
if h + z + f < m:
	q += 1
if q == 0:
	print('YES')
else:
	print('NO')


(x, y, z) = [int(i) for i in input().split()]
(a, b, c) = [int(i) for i in input().split()]
if x <= a:
	a = a - x
else:
	print('NO')
	exit()
sum = a + b
if a + b >= y:
	sum = sum - y
else:
	print('NO')
	exit()
sum = sum + c
if sum < z:
	print('NO')
	exit()
print('YES')


def has_sufficient_grapes_amount(x, y, z, green_count, purple_count, black_count):
	if green_count >= x:
		green_count -= x
		not_black = green_count + purple_count
	else:
		return False
	if y <= not_black:
		not_black -= y
	else:
		return False
	if not_black + black_count >= z:
		return True
	else:
		return False
(x, y, z) = map(int, input().split())
(green_count, purple_count, black_count) = map(int, input().split())
print('YES' if has_sufficient_grapes_amount(x, y, z, green_count, purple_count, black_count) else 'NO')


(andrey, dmitriy, mihail) = map(int, input().split())
(green, purple, black) = map(int, input().split())
okay = False
if green >= andrey:
	while andrey != 0:
		green = green - 1
		andrey = andrey - 1
	if dmitriy <= green + purple:
		while dmitriy != 0:
			if green > 0:
				green = green - 1
			else:
				purple = purple - 1
			dmitriy = dmitriy - 1
		if mihail <= green + purple + black:
			okay = True
if okay == True:
	print('YES')
else:
	print('NO')


from sys import *
from math import *
(x, y, z) = map(int, stdin.readline().split())
(a, b, c) = map(int, stdin.readline().split())
if x > a:
	print('NO')
else:
	a -= x
	d = a + b
	if d < y:
		print('NO')
	else:
		d -= y
		if d + c < z:
			print('NO')
		else:
			print('YES')


(X, Y, Z) = map(int, input().split())
(A, B, C) = map(int, input().split())
ans = 'YES'
green = A
if green >= X:
	green -= X
else:
	ans = 'NO'
greenpurple = green + B
if greenpurple >= Y:
	greenpurple -= Y
else:
	ans = 'NO'
allgrapes = greenpurple + C
if allgrapes < Z:
	ans = 'NO'
print(ans)


(x, y, z) = list(map(int, input().strip().split()))
(g, p, b) = list(map(int, input().strip().split()))
if g < x:
	print('NO')
elif g + p - x < y:
	print('NO')
elif g + p + b - x - y < z:
	print('NO')
else:
	print('YES')


(x, y, z) = map(int, input().split())
(g, p, b) = map(int, input().split())
import sys
g -= x
if g < 0:
	print('NO')
	sys.exit(0)
if p + g < y:
	print('NO')
	sys.exit(0)
r = p + g - y + b
if r < z:
	print('NO')
	sys.exit(0)
print('YES')


(x, y, z) = map(int, input().split(' '))
(green, purple, black) = map(int, input().split(' '))
if green - x >= 0 and green - x + purple - y >= 0 and (green - x + purple - y + black - z >= 0):
	print('YES')
else:
	print('NO')


def A():
	(x, y, z) = map(int, input().split())
	(a, b, c) = map(int, input().split())
	if x > a:
		print('NO')
		return
	a -= x
	if y > a + b:
		print('NO')
		return
	if z > a + b + c - y:
		print('NO')
		return
	print('YES')
A()


(x, y, z) = list(map(int, input().split()))
(a, b, c) = list(map(int, input().split()))
bo = 1
if x > a:
	print('NO')
	bo = 0
else:
	a -= x
su = a + b
if y > su and bo:
	print('NO')
	bo = 0
else:
	su -= y
if z > su + c and bo:
	print('NO')
	bo = 0
if bo:
	print('YES')


import sys
(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
a -= x
if a < 0:
	print('NO')
	sys.exit()
A = min(a, y)
a -= A
y -= A
B = min(b, y)
b -= B
y -= B
if y > 0:
	print('NO')
	sys.exit()
if a + b + c < z:
	print('NO')
	sys.exit()
print('YES')


q = lambda : map(int, input().split())
qi = lambda : int(input())
qs = lambda : input().split()
(x, y, z) = q()
(a, b, c) = q()
if x > a or y > b + (a - x) or z > c + (b + (a - x) - y):
	print('NO')
else:
	print('YES')


(A, D, M) = list(map(int, input().split()[:3]))
(G, P, B) = list(map(int, input().split()[:3]))
total = A + D + M
a = min(G, A)
G -= a
x = G + P
b = min(x, D)
x -= b
y = x + B
c = min(y, M)
count = a + b + c
if count == total:
	print('YES')
else:
	print('NO')


(a, b, c) = list(map(int, input().split()))
(d, e, f) = list(map(int, input().split()))
if a > d or a + b > d + e or a + b + c > d + e + f:
	print('NO')
else:
	print('YES')


(p, q, r) = input('').split(' ')
p = int(p)
q = int(q)
r = int(r)
(a, b, c) = input('').split(' ')
a = int(a)
b = int(b)
c = int(c)
count = 0
d = 0
if p <= a:
	count += 1
	a -= p
if q <= a + b:
	count += 1
	d = a + b - q
if r <= d + c:
	count += 1
if count == 3:
	print('YES')
else:
	print('NO')


(n, m, k) = map(int, input().split())
(a, b, c) = map(int, input().split())
if a >= n:
	a -= n
else:
	print('NO')
	exit()
s = a + b
if s >= m:
	s -= m
else:
	print('NO')
	exit()
if s + c < k:
	print('NO')
else:
	print('YES')


needed = list(map(int, input().split()))
has = list(map(int, input().split()))
if needed[0] <= has[0]:
	has[0] = has[0] - needed[0]
else:
	print('NO')
	quit()
total = has[0] + has[1] + has[2]
if needed[1] <= has[0] + has[1]:
	total = total - needed[1]
else:
	print('NO')
	quit()
if needed[2] <= total:
	print('YES')
else:
	print('NO')


(x, y, z) = list(map(int, input().split()))
(a, b, c) = list(map(int, input().split()))
res = ''
if x > a:
	res = 'NO'
elif y > a - x + b:
	res = 'NO'
elif z > a - x + b - y + c:
	res = 'NO'
else:
	res = 'YES'
print(res)


n = list(map(int, input().split()))
m = list(map(int, input().split()))
f = 0
for i in range(2):
	if n[i] > m[i]:
		f = 1
		break
	else:
		m[i + 1] = m[i + 1] + m[i] - n[i]
if n[2] > m[2]:
	f = 1
print('YES') if f == 0 else print('NO')


(a, b, c) = map(int, input().split())
(g, bl, p) = map(int, input().split())
if a > g:
	print('NO')
elif a + b > g + bl:
	print('NO')
elif a + b + c > g + bl + p:
	print('NO')
else:
	print('YES')


array = []
for i in range(2):
	array.append(list(map(int, input().split())))
if array[1][0] >= array[0][0] and array[1][0] + array[1][1] - array[0][0] >= array[0][1] and (sum(array[1]) - array[0][0] - array[0][1] >= array[0][2]):
	print('YES')
else:
	print('NO')


(x, y, z) = map(int, input().split())
(g, p, b) = map(int, input().split())
f = 0
if g >= x:
	g -= x
else:
	f = 1
if p + g >= y:
	s = p + g
	s -= y
else:
	f = 1
if f == 0 and b + s >= z:
	print('YES')
else:
	print('NO')


from sys import stdin, stdout
from itertools import combinations
from collections import defaultdict

def listIn():
	return list(map(int, stdin.readline().strip().split()))

def stringListIn():
	return [x for x in stdin.readline().split()]

def intIn():
	return int(stdin.readline())

def stringIn():
	return stdin.readline().strip()
(x, y, z) = listIn()
(a, b, c) = listIn()
if a < x:
	print('NO')
else:
	flag = True
	a -= x
	t = a + b
	if t >= y:
		t -= y
		t1 = t + c
		if t1 >= z:
			flag = False
		else:
			flag = True
	else:
		flag = True
	if not flag:
		print('YES')
	else:
		print('NO')


lista = input().split()
ofrece = input().split()
for i in range(len(lista)):
	lista[i] = int(lista[i])
for i in range(len(ofrece)):
	ofrece[i] = int(ofrece[i])
se_puede = False
total = sum(ofrece)
if lista[0] <= ofrece[0]:
	ofrece[0] = ofrece[0] - lista[0]
	total = total - lista[0]
	if lista[1] <= ofrece[0] + ofrece[1]:
		total = total - lista[1]
		if lista[2] <= total:
			se_puede = True
if se_puede:
	print('YES')
else:
	print('NO')


def kraken():
	(x, y, z) = [int(t) for t in input().split()]
	(a, b, c) = [int(t) for t in input().split()]
	if a < x:
		return 'NO'
	a -= x
	if a + b < y:
		return 'NO'
	if a + b - y + c < z:
		return 'NO'
	return 'YES'
print(kraken())


ppl = input().split()
grapes = input().split()
ppl = [int(x) for x in ppl]
grapes = [int(x) for x in grapes]
if grapes[0] >= ppl[0] and grapes[0] - ppl[0] + grapes[1] >= ppl[1] and (grapes[0] + grapes[1] + grapes[2] - ppl[0] - ppl[1] >= ppl[2]):
	print('YES')
else:
	print('NO')


(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
andrew = False
dimtry = False
michal = False
if x <= a:
	a -= x
	andrew = True
two = a + b
if y <= two:
	two -= y
	dimtry = True
if z <= two + c:
	michal = True
if andrew and dimtry and michal:
	print('YES')
else:
	print('NO')


(x, y, z) = map(int, input().split())
a = list(map(int, input().split()))
a[0] = a[0] - x
if a[0] >= 0:
	if y <= a[0] + a[1]:
		p = sum(a) - y
		if z <= p:
			print('YES')
		else:
			print('NO')
	else:
		print('NO')
else:
	print('NO')


(A, D, M) = list(map(int, input().split()))
(G, P, B) = list(map(int, input().split()))
G -= A
K = False
if G >= 0:
	if D <= G + P:
		if M <= G + P + B - D:
			K = True
print('YES' if K else 'NO')


a1 = input().split(' ')
x = int(a1[0])
y = int(a1[1])
z = int(a1[2])
a2 = input().split(' ')
a = int(a2[0])
b = int(a2[1])
c = int(a2[2])
if a < x:
	print('NO')
else:
	a -= x
	if a + b < y:
		print('NO')
	elif a + b + c - y < z:
		print('NO')
	else:
		print('YES')


n = input()
need = list(map(int, n.split(' ')))
n = input()
have = list(map(int, n.split(' ')))
ans = 'YES'
if sum(need) > sum(have):
	ans = 'NO'
elif need[0] > have[0]:
	ans = 'NO'
else:
	have[0] = have[0] - need[0]
	if need[1] > have[0] + have[1]:
		ans = 'NO'
	else:
		s = sum(have) - need[1]
		if need[2] > s:
			ans = 'NO'
print(ans)


x = [int(x) for x in input().split()]
y = [int(y) for y in input().split()]
if sum(x) > sum(y):
	print('NO')
elif x[0] > y[0]:
	print('NO')
elif y[0] + y[1] - x[0] < x[1]:
	print('NO')
elif sum(y) - x[0] - x[1] < x[2]:
	print('NO')
else:
	print('YES')


person = list(map(int, input().split()))
grape = list(map(int, input().split()))
flag = True
if person[0] > grape[0]:
	flag = False
if person[1] > grape[0] + grape[1] - person[0]:
	flag = False
if sum(person) > sum(grape):
	flag = False
if flag:
	print('YES')
else:
	print('NO')


(a, b, c) = map(int, input().split())
(g, p, k) = map(int, input().split())
f = 1
if a <= g:
	g = g - a
else:
	f = 0
if b <= g + p:
	b = b - g
	if b < 0:
		g = -b
		b = 0
	else:
		p = p - b
		g = 0
else:
	f = 0
if c > g + p + k:
	f = 0
if f == 0:
	print('NO')
else:
	print('YES')


l1 = list(map(int, input().split()))
l2 = list(map(int, input().split()))
if l2[0] >= l1[0]:
	if l2[0] - l1[0] + l2[1] >= l1[1]:
		if l2[1] + l2[0] - l1[0] - l1[1] + l2[2] >= l1[2]:
			print('YES')
		else:
			print('NO')
	else:
		print('NO')
else:
	print('NO')


(x, y, z) = map(int, input().split())
(g, blu, bla) = map(int, input().split())
count = 0
if g >= x:
	count += 1
	g -= x
l = g + blu + 0
if l >= y:
	count += 1
	l -= y
m = l + bla
if m >= z:
	count += 1
if count == 3:
	print('YES')
else:
	print('NO')


(a, d, m) = map(int, input().strip().split())
(g, p, b) = map(int, input().strip().split())
flag = True
if a <= g:
	g -= a
	if d <= p + g:
		total = p + g + b - d
		if m <= total:
			print('YES')
			flag = False
if flag:
	print('NO')


lst = input().split()
grapes = input().split()
x = int(lst[0])
y = int(lst[1])
z = int(lst[2])
a = int(grapes[0])
b = int(grapes[1])
c = int(grapes[2])
if x > a:
	print('NO')
	quit()
a = a - x
if a + b < y:
	print('NO')
	quit()
e = a + b - y
if e + c < z:
	print('NO')
	quit()
print('YES')


def el_round_03_A():
	list1 = input().split(' ')
	list2 = input().split(' ')
	x = int(list1[0])
	y = int(list1[1])
	z = int(list1[2])
	a = int(list2[0])
	b = int(list2[1])
	c = int(list2[2])
	result = 'YES'
	if x > a:
		result = 'NO'
	elif y > a - x + b:
		result = 'NO'
	elif a + b + c < x + y + z:
		result = 'NO'
	print(result)
el_round_03_A()


import sys
inp = sys.stdin.readline().split(' ')
az = int(inp[0])
dzf = int(inp[1])
mzfch = int(inp[2])
inp = sys.stdin.readline().split(' ')
z = int(inp[0])
f = int(inp[1])
ch = int(inp[2])
ans = 'YES'
z = z - az
zf = z + f - dzf
zfch = zf + ch - mzfch
if z < 0 or zf < 0 or zfch < 0:
	ans = 'NO'
print(ans)


(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
k = 1
t = a + b
d = a + b + c
if x <= a:
	t -= x
	d -= x
else:
	k = 0
if y <= t:
	d -= y
else:
	k = 0
if z <= d:
	d -= z
else:
	k = 0
if k == 0:
	print('NO')
else:
	print('YES')


(x, y, z) = map(int, input().split())
(g, p, b) = map(int, input().split())
f = 1
if g - x < 0:
	f = 0
A = g - x
if A + p < y:
	f = 0
B = A + p - y
if B + b < z:
	f = 0
if f == 1:
	print('YES')
else:
	print('NO')


(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
c1 = False
c2 = False
c3 = False
if a >= x:
	c1 = True
if a - x + b >= y:
	c2 = True
if a - x + (b - y) + c >= z:
	c3 = True
if c1 and c2 and c3:
	print('YES')
else:
	print('NO')


def func(x, y, z, a, b, c):
	if a < x:
		return 'NO'
	a = a - x
	if a + b < y:
		return 'NO'
	left = a + b + c - y
	if left < z:
		return 'NO'
	return 'YES'
(x, y, z) = (int(i) for i in input().split())
(a, b, c) = (int(i) for i in input().split())
print(func(x, y, z, a, b, c))


(x, y, z) = map(int, input().split())
(g, p, b) = map(int, input().split())
g -= x
if g < 0:
	print('NO')
	exit()
p = p + g
p -= y
if p < 0:
	print('NO')
	exit()
b = b + p
b -= z
if b < 0:
	print('NO')
	exit()
print('YES')


(x, y, z) = map(int, input().split())
(g, p, b) = map(int, input().split())
if g + p + b < x + y + z:
	print('No')
elif g < x:
	print('No')
else:
	g -= x
	if g + p < y:
		print('No')
	else:
		print('Yes')


wants = input().split()
bought = input().split()
if int(bought[0]) < int(wants[0]):
	print('NO')
elif int(bought[1]) + (int(bought[0]) - int(wants[0])) < int(wants[1]):
	print('NO')
elif int(bought[0]) + int(bought[1]) + int(bought[2]) - (int(wants[0]) + int(wants[1])) < int(wants[2]):
	print('NO')
else:
	print('YES')


(a, d, m) = list(map(int, input().strip().split()))
(gg, pg, bg) = list(map(int, input().strip().split()))
if a > gg:
	print('NO')
else:
	gg = gg - a
	t = gg + pg
	if d > t:
		print('NO')
	else:
		t = t - d
		if m > t + bg:
			print('NO')
		else:
			print('YES')


ii = lambda : int(input())
mi = lambda : map(int, input().split())
li = lambda : list(mi())
(x, y, z) = mi()
(a, b, c) = mi()
ok = 0
if a >= x:
	a -= x
	if a + b >= y:
		if a + b - y + c >= z:
			ok = 1
print('YES' if ok else 'NO')


(x, y, z) = input().split()
(a, b, c) = input().split()
m = int(a) - int(x)
j = int(m) + int(b) - int(y)
l = int(j) + int(c) - int(z)
if m >= 0 and j >= 0 and (l >= 0):
	print('YES')
else:
	print('NO')


(andrew, dmitrii, mike) = map(int, input().split())
(green, violet, black) = map(int, input().split())

def solve(andrew, dmitrii, mike, green, violet, black):
	if green < andrew:
		return 'NO'
	green -= andrew
	if green + violet < dmitrii:
		return 'NO'
	eat_green = min(green, dmitrii)
	green -= eat_green
	dmitrii -= eat_green
	violet -= min(violet, dmitrii)
	if green + violet + black < mike:
		return 'NO'
	return 'YES'
print(solve(andrew, dmitrii, mike, green, violet, black))


(x, y, z) = map(int, input().split())
(g, p, b) = map(int, input().split())

def solve(x, y, z, g, p, b):
	if g >= x:
		g -= x
	else:
		return False
	cnt = g + p
	if cnt >= y:
		cnt -= y
	else:
		return False
	if cnt + b >= z:
		return True
	else:
		return False
if solve(x, y, z, g, p, b):
	print('YES')
else:
	print('NO')


a = [int(i) for i in input().split()]
b = [int(i) for i in input().split()]
c = 0
if b[0] >= a[0]:
	c = b[0] - a[0]
	b[0] = c
	if a[1] <= b[0] + b[1]:
		if a[1] + a[2] <= b[0] + b[1] + b[2]:
			print('YES')
		else:
			print('NO')
	else:
		print('NO')
else:
	print('NO')


n = [int(x) for x in input().split()]
(x, y, z) = (n[0], n[1], n[2])
k = [int(x) for x in input().split()]
(a, b, c) = (k[0], k[1], k[2])
if a < x:
	print('NO')
	exit()
else:
	a -= x
s = sum([a, b])
if s < y:
	print('NO')
	exit()
else:
	s = s - y + c
if s < z:
	print('NO')
	exit()
else:
	print('YES')


(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
(p, q, r) = (0, 0, 0)
if x <= a:
	p = 1
	a -= x
else:
	a = 0
if y <= a + b:
	q = 1
	b = a + b - y
else:
	b = 0
if z <= b + c:
	r = 1
if p + q + r == 3:
	print('yes'.upper())
else:
	print('no'.upper())


(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
ans = 'YES'
if a < x:
	ans = 'NO'
a -= x
other = a + b
if a + b < y:
	ans = 'NO'
other -= y
if other + c < z:
	ans = 'NO'
print(ans)


(x, y, z) = map(int, input().split())
(g, p, b) = map(int, input().split())
flag = 0
if x > g:
	flag = 1
else:
	g -= x
check = 0
if y > g + p:
	flag = 1
else:
	check = g + p - y
if z > check + b:
	flag = 1
else:
	pass
if flag == 1:
	print('NO')
else:
	print('YES')


from sys import stdin

def ii():
	return int(stdin.readline())

def mi():
	return map(int, stdin.readline().split())

def li():
	return list(mi())

def si():
	return stdin.readline()
(x, y, z) = mi()
(a, b, c) = mi()
print('YES' if x <= a and x + y <= a + b and (x + y + z <= a + b + c) else 'NO')


def satiation(x, y, z, a, b, c):
	if a < x:
		return False
	else:
		a -= x
	if a + b < y:
		return False
	else:
		s = a + b - y
		if z != 0 and s + c >= z:
			return True
		else:
			return False
(x, y, z) = map(int, input().split())
if x > 100000 or y > 100000 or z > 100000 or (x < 1) or (y < 1) or (z < 1):
	raise Exception('NO')
(a, b, c) = map(int, input().split())
if a > 100000 or b > 100000 or c > 100000 or (a < 1) or (b < 1) or (c < 1):
	raise Exception('NO')
if satiation(x, y, z, a, b, c):
	print('YES')
else:
	print('NO')


(x, y, z) = [int(x) for x in input().split()]
(a, b, c) = [int(x) for x in input().split()]
X = a
Y = b + (a - x if a - x > 0 else 0)
Z = a + c + b - y - x
if X >= x and Y >= y and (Z >= z):
	print('YES')
else:
	print('NO')


def solve():
	global x, y, z, a, b, c
	while x > 0:
		if a == 0:
			return 'NO'
		else:
			a -= 1
			x -= 1
	while y > 0:
		if a == 0:
			if b == 0:
				return 'NO'
			else:
				b -= 1
				y -= 1
		else:
			a -= 1
			y -= 1
	while z > 0:
		if a == 0:
			if b == 0:
				if c == 0:
					return 'NO'
				else:
					c -= 1
					z -= 1
			else:
				b -= 1
				z -= 1
		else:
			a -= 1
			z -= 1
	return 'YES'
(x, y, z) = [int(i) for i in input().split()]
(a, b, c) = [int(i) for i in input().split()]
print(solve())


from sys import stdin
input = stdin.readline
(a, d, m) = map(int, input().split())
(green, purple, black) = map(int, input().split())
if a > green or green - a + purple < d or green + purple + black - a - d < m:
	print('NO')
else:
	print('YES')


desiredGrapes = input().split(' ')
availGrapes = input().split(' ')
x = int(desiredGrapes[0])
y = int(desiredGrapes[1])
z = int(desiredGrapes[2])
a = int(availGrapes[0])
b = int(availGrapes[1])
c = int(availGrapes[2])
if a >= x and a - x + b >= y and (a + b + c - x - y >= z):
	print('YES')
else:
	print('NO')


import atexit
import io
import sys
_INPUT_LINES = sys.stdin.read().splitlines()
input = iter(_INPUT_LINES).__next__
_OUTPUT_BUFFER = io.StringIO()
sys.stdout = _OUTPUT_BUFFER

@atexit.register
def write():
	sys.__stdout__.write(_OUTPUT_BUFFER.getvalue())

def main():
	eat = list(map(int, input().split()))
	eat.append(0)
	have = list(map(int, input().split()))
	for i in range(3):
		if eat[i] > have[i]:
			print('NO')
			return
		eat[i + 1] += eat[i] - have[i]
	print('YES')
main()


(x, y, z) = map(int, input().split())
(g, p, b) = map(int, input().split())
(t, o, m) = (0, 0, 0)
if x <= g:
	g -= x
else:
	o += 1
if y <= g + p:
	if g > y:
		g -= y
		y = 0
	else:
		y -= g
		g = 0
	if y >= 0:
		p -= y
else:
	o += 1
if z <= g + p + b:
	pass
else:
	o += 1
if o > 0:
	print('NO')
else:
	print('YES')


from sys import stdin

def compute():
	(x, y, z) = map(int, stdin.readline().split())
	(a, b, c) = map(int, stdin.readline().split())
	a -= x
	if a < 0:
		return 'NO'
	a -= y
	if a < 0:
		b += a
		a = 0
	if b < 0:
		return 'NO'
	a -= z
	if a < 0:
		b += a
		a = 0
	if b < 0:
		c += b
		b = 0
	if c < 0:
		return 'NO'
	return 'YES'
print(compute())


need = list(map(int, input().split()))
count = list(map(int, input().split()))
count[0] -= need[0]
if count[0] < 0:
	print('NO')
elif count[0] + count[1] >= need[1] and sum(count) - need[1] >= need[2]:
	print('YES')
else:
	print('NO')


f = lambda : map(int, input().split())
(a, b, c) = f()
(x, y, z) = f()
flag = 0
if x - a >= 0:
	x -= a
	if x + y - b >= 0:
		if x + y - b + z - c >= 0:
			flag = 1
print(['yes', 'no'][flag == 0])


(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
t = True
g = 0
if a >= x:
	g = a - x + b
	if g >= y:
		g = g - y + c
		if g >= z:
			t = False
			print('YES')
if t:
	print('NO')


names = input().split()
grapes = input().split()
(x, y, z) = (int(names[0]), int(names[1]), int(names[2]))
(a, b, c) = (int(grapes[0]), int(grapes[1]), int(grapes[2]))
flag = 0
total = a + b + c
if x <= total - (c + b):
	a = a - x
	total = a + b + c
	flag += 1
if y <= total - c:
	temp = a + b - y
	total = temp + c
	flag += 1
if z <= total:
	flag += 1
if flag == 3:
	print('YES')
else:
	print('No')


(x, y, z) = list(map(int, input().split()))
(g, p, b) = list(map(int, input().split()))
flag = []
if g - x >= 0:
	g -= x
	if g + p - y >= 0:
		t = g + p + b - y
		if t - z >= 0:
			flag = 1
if flag == 1:
	print('YES')
else:
	print('NO')


from sys import exit, setrecursionlimit, stderr
from functools import reduce
from itertools import *
from collections import defaultdict, Counter
from bisect import bisect
setrecursionlimit(10 ** 7)

def read():
	return int(input())

def reads():
	return [int(x) for x in input().split()]
(x, y, z) = reads()
(a, b, c) = reads()
c -= z
if c < 0:
	b += c
b -= y
if b < 0:
	a += b
a -= x
print('YES' if a >= 0 else 'NO')


people = input()
grapes = input()
people = [int(i) for i in people.split()]
grapes = [int(i) for i in grapes.split()]

def match(people, grapes):
	if people[0] > grapes[0]:
		return False
	grapes[0] -= people[0]
	people[0] = 0
	grapes[1] += grapes[0]
	grapes[0] = 0
	if people[1] > grapes[1]:
		return False
	grapes[1] -= people[1]
	people[1] = 0
	grapes[2] += grapes[1]
	grapes[1] = 0
	if people[2] > grapes[2]:
		return False
	return True
result = match(people, grapes)
if result:
	print('YES')
else:
	print('NO')


(x, y, z) = map(int, input().split())
(g, p, k) = map(int, input().split())
if g >= x:
	a = g - x
	if y <= a + p:
		b = a + p - y
		if z <= b + k:
			print('YES')
		else:
			print('NO')
	else:
		print('NO')
else:
	print('NO')


numGrapes = input()
numgrapes = numGrapes.split(' ')
andrew = int(numgrapes[0])
dmitry = int(numgrapes[1])
michal = int(numgrapes[-1])
numColors = input()
numcolors = numColors.split(' ')
green = int(numcolors[0])
purple = int(numcolors[1])
black = int(numcolors[-1])
sumDesires = andrew + dmitry + michal
sumAvailable = green + purple + black
if sumDesires <= sumAvailable:
	if andrew <= green:
		remainingGreen = green - andrew
		dmitrys = remainingGreen + purple
		if dmitry <= dmitrys:
			purplePart = dmitry - remainingGreen
			if purplePart <= 0:
				remainingGreen = -1 * purplePart
				michals = remainingGreen + purple + black
				if michal <= michals:
					print('YES')
				else:
					print('NO')
			elif purplePart > 0:
				remains = dmitrys - dmitry
				michals = remains + black
				if michals >= michal:
					print('YES')
				else:
					print('NO')
		else:
			print('NO')
	else:
		print('NO')
else:
	print('NO')


(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
m = min(x, a)
x -= m
a -= m
m = min(y, a + b)
y -= m
b = a + b - m
z -= min(z, b + c)
if x == 0 and y == 0 and (z == 0):
	print('YES')
else:
	print('NO')


x = input().split()
x = list(map(int, x))
y = input().split()
y = list(map(int, y))
if y[0] >= x[0]:
	y[0] -= x[0]
	if y[0] + y[1] >= x[1]:
		count = y[0] + y[1] + y[2] - x[1]
		if count >= x[2]:
			print('YES')
			quit()
		else:
			print('NO')
			quit()
	else:
		print('NO')
		quit()
else:
	print('NO')
	quit()


(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
tf = True
if a >= x:
	b += a - x
	if b >= y:
		c += b - y
		if c >= z:
			print('YES')
			tf = False
if tf:
	print('NO')


import sys
s1 = sys.stdin.readline().rstrip().split(' ')
s2 = sys.stdin.readline().rstrip().split(' ')
(x, y, z) = (int(s1[0]), int(s1[1]), int(s1[2]))
(a, b, c) = (int(s2[0]), int(s2[1]), int(s2[2]))
if a - x < 0:
	sys.stdout.write('NO')
else:
	a = a - x
	if a + b - y < 0:
		sys.stdout.write('NO')
	else:
		count = c + a + b - y
		if count < z:
			sys.stdout.write('NO')
		else:
			sys.stdout.write('YES')


(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
while True:
	if x > a:
		print('NO')
		break
	elif x < a or x == a:
		a -= x
		b += a
		if y > b:
			print('NO')
			break
		elif y == b or y < b:
			b -= y
			c += b
			if z > c:
				print('NO')
				break
			elif z == c or z < c:
				print('YES')
				break


def distribute(x, y, z, a, b, c):
	ok = False
	if a >= x and a + b >= x + y and (a + b + c >= x + y + z):
		ok = True
	if ok:
		print('YES')
	else:
		print('NO')
fri = input().split()
grape = input().split()
x = int(fri[0])
y = int(fri[1])
z = int(fri[2])
a = int(grape[0])
b = int(grape[1])
c = int(grape[2])
distribute(x, y, z, a, b, c)


(x, y, z) = list(map(int, input().strip().split()[:3]))
(a, b, c) = list(map(int, input().strip().split()[:3]))
if a >= x:
	a = a - x
	if a + b >= y:
		if c + a + b - y >= z:
			print('YES')
		else:
			print('NO')
	else:
		print('NO')
else:
	print('NO')


import sys
inn = lambda : input().strip()
(x, y, z) = map(int, inn().split(' '))
(a, b, c) = map(int, inn().split(' '))
if a < x:
	print('NO')
	sys.exit()
else:
	a -= x
ab = a + b
if ab < y:
	print('NO')
	sys.exit()
else:
	ab -= y
abc = ab + c
if abc < z:
	print('NO')
	sys.exit()
else:
	print('YES')


X = list(map(int, input().split()))
Y = list(map(int, input().split()))
if Y[0] < X[0]:
	print('NO')
	exit()
Y[0] -= X[0]
if Y[0] + Y[1] < X[1]:
	print('NO')
	exit()
print('NO' if Y[0] + Y[1] + Y[2] - X[1] < X[2] else 'YES')


def find(x, y, z, a, b, c):
	a_dis = a - x
	if a_dis >= 0:
		d_dis = b + a_dis - y
		if d_dis >= 0:
			m_dis = d_dis + c - z
			if m_dis >= 0:
				return 'YES'
	return 'NO'
(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
print(find(x, y, z, a, b, c))


(a, b, c) = map(int, input().split())
(green, purple, black) = map(int, input().split())
green -= a
a = 0
if green < 0:
	print('NO')
else:
	x = min(green, b)
	green -= x
	b -= x
	if b > 0:
		y = min(b, purple)
		purple -= y
		b -= y
	if a == 0 and b == 0:
		if green >= 0 and purple >= 0:
			if purple + green + black >= c:
				print('YES')
			else:
				print('NO')
		else:
			print('NO')
	else:
		print('NO')


import math as mt
import itertools as it
import functools as ft
import random as rnd
stdin = lambda type_='int', sep=' ': list(map(eval(type_), input().split(sep)))
joint = lambda sep=' ', *args: sep.join((str(i) if type(i) != list else sep.join(map(str, i)) for i in args))
(x, y, z) = stdin()
(a, b, c) = stdin()
a -= x
if a < 0:
	print('NO')
	return
if a + b < y:
	print('NO')
	return
if a + b + c < y + z:
	print('NO')
	return
print('YES')


str = input()
mas = str.split(' ')
x = int(mas[0])
y = int(mas[1])
z = int(mas[2])
str = input()
mas = str.split(' ')
a = int(mas[0])
b = int(mas[1])
c = int(mas[2])
if a < x:
	print('NO')
elif a + b < x + y:
	print('NO')
elif a + b + c < x + y + z:
	print('NO')
else:
	print('YES')


(x, y, z) = list(map(int, input().split()))
(a, b, c) = list(map(int, input().split()))
d = 0
if x > a:
	d = 1
e = a - x
if y > e + b:
	d = 1
f = e + b - y
if z > c + f:
	d = 1
if d == 0:
	print('YES')
else:
	print('NO')


s = input().split()
x = int(s[0])
y = int(s[1])
z = int(s[2])
s = input().split()
a = int(s[0])
b = int(s[1])
c = int(s[2])
if a < x:
	print('NO')
	exit(0)
a = a - x
if a + b < y:
	print('NO')
	exit(0)
last = a + b - y + c
if last < z:
	print('NO')
	exit(0)
print('YES')


(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
(p, q, r) = (0, 0, 0)
s = a + b + c
if a >= x:
	p = 1
	a = a - x
if a + b >= y:
	q = 1
	s = a + b + c
	s = s - y
if s >= z:
	r = 1
if p == 1 and q == 1 and (r == 1):
	print('YES')
else:
	print('NO')


def ip():
	return int(input())

def ipp():
	return map(int, input().split())

def sar():
	return list(ipp())

def pars(a):
	print(' '.join(list(map(str, a))))
	print('\r')

def parl(a):
	print('\r'.join(list(map(str, a))))
	print('\r')
T = 1
for _ in range(T):
	(x, y, z) = ipp()
	(a, b, c) = ipp()
	andrew = a - x
	if a > 0:
		a = a - x
	else:
		a = 0
	dmi = a + b - y
	if dmi > 0:
		left = dmi
	else:
		left = 0
	mic = left + c - z
	if andrew >= 0 and dmi >= 0 and (mic >= 0):
		print('YES')
	else:
		print('NO')


def party(a, d, m, g, p, b):
	if g < a:
		return 'NO'
	g -= a
	if g + p >= d:
		if g + p - d + b >= m:
			return 'YES'
	return 'NO'
(a, d, m) = map(int, input().rstrip().split())
(g, p, b) = map(int, input().rstrip().split())
print(party(a, d, m, g, p, b))


(a, d, m) = list(map(int, input().split()))
(g, p, b) = list(map(int, input().split()))
t = 1
if g >= a:
	g -= a
else:
	t = -1
g = g + p
if g >= d:
	g -= d
else:
	t = -1
g += b
if g < m:
	t = -1
print('YES') if t == 1 else print('NO')


(x, y, z) = map(int, input().split())
(a, b, h) = map(int, input().split())
if x > a:
	print('NO')
	exit()
c = a - x
if c + b < y:
	print('NO')
	exit()
j = c + b - y
if j + h < z:
	print('NO')
	exit()
else:
	print('YES')


(x, y, z) = map(int, input().split())
(g, p, b) = map(int, input().split())
(ans, tot) = (False, g + p + b)
if x <= g:
	g -= x
	if y <= g + p:
		tot = tot - (x + y)
		if tot >= z:
			ans = True
if ans:
	print('YES')
else:
	print('NO')


a = list(map(int, input().split()))
g = list(map(int, input().split()))
s = 0
flag = 0
for i in range(3):
	s = s + g[i]
	if a[i] <= s:
		s = s - a[i]
	else:
		flag = 1
		break
if flag == 0:
	print('YES')
else:
	print('NO')


(x, y, z) = list(map(int, input().split(' ')))
(a, b, c) = list(map(int, input().split(' ')))
if a < x:
	print('NO')
else:
	d = a - x + b
	if d < y:
		print('NO')
	else:
		m = d - y + c
		if m < z:
			print('NO')
		else:
			print('YES')


import sys
(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
if x <= a:
	a = a - x
else:
	print('NO')
	sys.exit()
d = a + b
if y <= d:
	d = d - y
else:
	print('NO')
	sys.exit()
e = d + c
if z <= e:
	print('YES')
else:
	print('NO')


A = input().split(' ')
B = input().split(' ')
(x, y, z) = (int(A[0]), int(A[1]), int(A[2]))
(a, b, c) = (int(B[0]), int(B[1]), int(B[2]))
if a < x:
	print('NO')
	exit(0)
if a + b - x < y:
	print('NO')
	exit(0)
if a + b + c - x - y >= z:
	print('YES')
else:
	print('NO')


(x, y, z) = map(int, input().split())
(g, p, b) = map(int, input().split())
l = [0, 0, 0]
if g >= x:
	g = g - x
	l[0] = 1
else:
	print('NO')
p = p + g
if l[0] == 1:
	if p >= y:
		p -= y
		l[1] = 1
	else:
		print('NO')
if l[1] == 1:
	b = b + p
	if b >= z:
		l[2] = 1
	else:
		print('NO')
if l.count(1) == 3:
	print('YES')


def validate(xyz, abc):
	n_grapes = abc[0]
	if n_grapes < xyz[0]:
		return False
	n_grapes = n_grapes - xyz[0] + abc[1]
	if n_grapes < xyz[1]:
		return False
	n_grapes = n_grapes - xyz[1] + abc[2]
	if n_grapes < xyz[2]:
		return False
	return True
xyz = [int(x) for x in input().strip().split()]
abc = [int(x) for x in input().strip().split()]
if validate(xyz, abc):
	print('YES')
else:
	print('NO')


(a, d, m) = [int(x) for x in input().split()]
(green, purple, black) = [int(x) for x in input().split()]
if green - a >= 0 and purple + green - a - d >= 0 and (black + purple + green - a - d - m >= 0):
	print('YES')
else:
	print('NO')


import sys
import math as mt
import bisect
input = sys.stdin.readline
import collections
t = 1
p = 10 ** 9 + 7

def ncr_util():
	inv[0] = inv[1] = 1
	fact[0] = fact[1] = 1
	for i in range(2, 300001):
		inv[i] = inv[i % p] * (p - p // i) % p
	for i in range(1, 300001):
		inv[i] = inv[i - 1] * inv[i] % p
		fact[i] = fact[i - 1] * i % p

def solve():
	if a < x:
		return 'NO'
	rem = a - x
	if rem + b < y:
		return 'NO'
	rem = rem + b - y
	if rem + c < z:
		return 'NO'
	return 'YES'
for _ in range(t):
	(x, y, z) = map(int, input().split())
	(a, b, c) = map(int, input().split())
	l = list(map(int, input().split()))
	print(solve())


elem = list(map(int, input().split()))
grapes = list(map(int, input().split()))

def check(arr1, arr2):
	(a, b, c) = (arr1[0], arr1[1], arr1[2])
	(g, p, bl) = (arr2[0], arr2[1], arr2[2])
	if sum(arr1) > sum(arr2) or a > g:
		return 'NO'
	p += g - a
	if b > p:
		return 'NO'
	bl += p - b
	if c > bl:
		return 'NO'
	return 'YES'
print(check(elem, grapes))


(x, y, z) = [int(x) for x in input().split()]
(g, p, b) = [int(x) for x in input().split()]
ans = 'YES'
if x > g:
	ans = 'NO'
else:
	g -= x
	if g + p < y:
		ans = 'NO'
	elif g + p - y + b < z:
		ans = 'NO'
print(ans)


(x, y, z) = [int(_) for _ in input().split()]
(a, b, c) = [int(_) for _ in input().split()]
if x > a:
	print('NO')
elif a - x + b < y:
	print('NO')
elif a + b - (x + y) + c < z:
	print('NO')
else:
	print('YES')


(x, y, z) = [int(i) for i in input().split()]
(a, b, c) = [int(i) for i in input().split()]
d = True
if x > a:
	d = False
else:
	a += -x
a += b
if y > a:
	d = False
else:
	a += -y
a += c
if z > a:
	d = False
if d:
	print('YES')
else:
	print('NO')


a = [int(x) for x in input().split()]
b = [int(x) for x in input().split()]

def Test(a, b):
	status = []
	stat1 = b[0] - a[0] >= 0
	if stat1:
		status.append(1)
		b[1] += b[0] - a[0]
	else:
		status.append(0)
	stat2 = b[1] - a[1] >= 0
	if stat2:
		status.append(1)
		b[2] += b[1] - a[1]
	else:
		status.append(0)
	stat3 = b[2] - a[2] >= 0
	if stat3:
		status.append(1)
	else:
		status.append(0)
	if 0 in status:
		return 'NO'
	else:
		return 'YES'
print(Test(a, b))


import sys
import math
import bisect

def query(A, B, k):
	B[0] -= A[0]
	B[0] -= k
	B[1] -= A[1] - k
	if B[0] < 0 or B[1] < 0:
		return False
	return sum(B) >= A[2]

def main():
	A = list(map(int, input().split()))
	B = list(map(int, input().split()))
	ans = False
	for i in range(0, A[1] + 1):
		if query(A.copy(), B.copy(), i):
			ans = True
			break
	if ans:
		print('YES')
	else:
		print('NO')
main()


def solve():
	(x, y, z) = [int(val) for val in input().split(' ')]
	(a, b, c) = [int(val) for val in input().split(' ')]
	xc = x
	x -= min(x, a)
	a -= min(a, xc)
	yc = y
	y -= min(y, a)
	a -= min(a, yc)
	yc = y
	y -= min(y, b)
	b -= min(b, yc)
	zc = z
	z -= min(z, a)
	a -= min(a, zc)
	zc = z
	z -= min(z, b)
	b -= min(b, zc)
	zc = z
	z -= min(z, c)
	c -= min(c, zc)
	if x + y + z == 0:
		print('YES')
	else:
		print('NO')
solve()


(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
flag = 0
if a >= x:
	temp = a - x + b
	if temp >= y:
		diff = temp - y
		diff = diff + c
		if diff >= z:
			flag = 1
if flag == 1:
	print('Yes')
else:
	print('No')


(green, purple, black) = map(int, input().split())
(a, b, c) = map(int, input().split())
if a >= green:
	a -= green
	gp = a + b
	if gp >= purple:
		gp -= purple
		if gp + c >= black:
			print('YES')
		else:
			print('NO')
	else:
		print('NO')
else:
	print('NO')


party = str(input())
guest = str(input())
p = party.split()
g = guest.split()
host = []
frie = []
for i in p:
	frie.append(int(i))
for k in g:
	host.append(int(k))
flag = 0
for i in range(3):
	if i == 0:
		if host[i] < frie[i]:
			flag = 1
			break
		else:
			host[i] -= frie[i]
	elif i == 1:
		if host[i] + host[0] < frie[i]:
			flag = 1
			break
	elif i == 2:
		if host[0] + host[1] + host[2] < frie[1] + frie[2]:
			flag = 1
			break
if flag == 1:
	print('NO')
else:
	print('YES')


(x, y, z) = [int(a) for a in input().split()]
(green, purple, black) = [int(a) for a in input().split()]
green_left = green - x
purple_and_green_left = purple + green_left - y
black_left = purple_and_green_left + black - z
if green_left < 0 or purple_and_green_left < 0 or black_left < 0:
	print('NO')
else:
	print('YES')


GFP = list(map(int, input().split()))
CuantInBox = list(map(int, input().split()))
Andrew = GFP[0]
Dimitry = GFP[1]
Michael = GFP[2]
RGreen = CuantInBox[0]
RPurple = CuantInBox[1]
RBlack = CuantInBox[2]
if RGreen - Andrew >= 0:
	RGreen = RGreen - Andrew
	if RGreen + RPurple - Dimitry >= 0:
		RDG = Dimitry - RGreen
		RGreen = RGreen - RGreen
		RPurple = RPurple - RDG
		if (RGreen >= 0 and RPurple >= 0 and (RBlack >= 0)) and RGreen + RBlack + RPurple - Michael >= 0:
			print('YES')
		else:
			print('NO')
	else:
		print('NO')
else:
	print('NO')


(x, y, z) = [int(i) for i in input().split()]
(a, b, c) = [int(i) for i in input().split()]
andrew_left = a - x
dmitry_left = andrew_left + b - y
michal_left = c + dmitry_left - z
if andrew_left >= 0 and dmitry_left >= 0 and (michal_left >= 0):
	print('YES')
else:
	print('NO')


(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
total = a + b + c
flag = True
if x <= a:
	gp = a + b - x
	if y <= gp:
		total = total - (x + y)
		if z <= total:
			print('YES')
		else:
			flag = False
	else:
		flag = False
else:
	flag = False
if flag == False:
	print('NO')


(a, b, c) = input().split()
a = int(a)
b = int(b)
c = int(c)
(d, e, f) = input().split()
d = int(d)
e = int(e)
f = int(f)
if d > a or d == a:
	d = d - a
	if d + e > b or d + e == b:
		h = d + e - b
		if h + f > c or f + h == c:
			print('YES')
		else:
			print('NO')
	else:
		print('NO')
else:
	print('NO')


(x, y, z) = input().split(' ')
(x, y, z) = (int(x), int(y), int(z))
(a, b, c) = input().split(' ')
(a, b, c) = (int(a), int(b), int(c))
t = a + b + c
if x > a:
	print('NO')
	exit()
else:
	a -= x
	t -= x
	if y > a + b:
		print('NO')
		exit()
	else:
		t -= y
		if z > t:
			print('NO')
			exit()
print('YES')


def integer(x):
	for i in range(len(x)):
		x[i] = int(x[i])
	return x
(x, y, z) = integer(input().split())
(a, b, c) = integer(input().split())
if x > a:
	print('NO')
elif a + b < x + y:
	print('NO')
elif a + b + c < x + y + z:
	print('NO')
else:
	print('YES')


from collections import deque
import heapq
import math
import bisect

def main():
	(x, y, z) = map(int, input().split())
	(a, b, c) = map(int, input().split())
	a -= x
	if a < 0 or max(0, a) + b < y:
		print('NO')
		exit()
	if a > 0:
		b += a
	b -= y
	c += b
	if c >= z:
		print('YES')
	else:
		print('NO')
main()


(a, h, k) = map(int, input().split())
(g, p, b) = map(int, input().split())
if a > g or h > g - a + p or k > g - a + (p - h) + b:
	print('NO')
else:
	print('YES')


def main():
	(x, y, z) = (int(i) for i in input().split())
	(a, b, c) = (int(i) for i in input().split())
	temp = a - x
	if temp < 0:
		print('NO')
		return
	temp = b + temp - y
	if temp < 0:
		print('NO')
		return
	temp = temp + c - z
	if temp < 0:
		print('NO')
		return
	print('YES')
main()


q = [int(x) for x in input().split()]
g = [int(x) for x in input().split()]
if q[0] > g[0] or q[1] > g[0] - q[0] + g[1] or q[2] > sum(g) - q[0] - q[1]:
	print('NO')
else:
	print('YES')


a = list(map(int, input().split()))
x = list(map(int, input().split()))
if -a[0] + x[0] >= 0 and -a[1] + (x[0] + x[1] - a[0]) >= 0 and (-a[2] + (sum(x) - a[0] - a[1]) >= 0):
	print('YES')
else:
	print('NO')


i1 = input()
i2 = input()
(x, y, z) = map(int, i1.split())
(a, b, c) = map(int, i2.split())
if x > a:
	print('NO')
else:
	a -= x
	if a + b < y:
		print('NO')
	elif a + b + c < y + z:
		print('NO')
	else:
		print('YES')


import math
(x, y, z) = map(int, input().split())
myArray = list(map(int, input().split()))
if myArray[0] < x:
	print('NO')
else:
	flag = 0
	myArray[0] -= x
	total2 = 0
	total2 = myArray[0] + myArray[1]
	if total2 >= y:
		total2 -= y
		if total2 + myArray[2] >= z:
			flag = 1
		else:
			flag = 0
	else:
		flag = 0
	if flag == 1:
		print('YES')
	else:
		print('NO')


(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
sum = a + b + c
if a < x:
	print('NO\n')
	exit()
a -= x
sum -= x
if a + b < y:
	print('NO\n')
	exit()
sum -= y
if sum < z:
	print('NO\n')
	exit()
print('YES\n')


def grapes():
	hungry = input().split()
	grapes = input().split()
	hungry = [int(i) for i in hungry]
	grapes = [int(i) for i in grapes]
	if hungry[0] > 0:
		if grapes[0] >= hungry[0]:
			grapes[0] -= hungry[0]
			hungry[0] = 0
		else:
			print('NO')
			return
	grapes[0] = grapes[0] + grapes[1]
	grapes.pop(1)
	if hungry[1] > 0:
		if grapes[0] >= hungry[1]:
			grapes[0] -= hungry[1]
			hungry[1] = 0
		else:
			print('NO')
			return
	grapes[0] = grapes[0] + grapes[1]
	grapes.pop(1)
	if hungry[2] > 0:
		if grapes[0] >= hungry[2]:
			hungry[1] = 0
		else:
			print('NO')
			return
	print('YES')
	return
grapes()


(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
if a < x or a - x + b < y or a - x + b - y + c < z:
	print('NO')
else:
	print('Yes')


tokens = input().split(' ')
Andrew = int(tokens[0])
Dmitry = int(tokens[1])
Michal = int(tokens[2])
tokens = input().split(' ')
green = int(tokens[0])
purple = int(tokens[1])
black = int(tokens[2])
good = False
if green >= Andrew:
	green = green - Andrew
	if green + purple >= Dmitry:
		if green + purple + black >= Dmitry + Michal:
			good = True
if good == True:
	print('YES')
else:
	print('NO')


import os
import sys
from collections import deque
import pdb
import heapq
from heapq import *
from pprint import pprint
from bisect import *
if os.getcwd() == 'C:\\Users\\User\\Desktop\\python\\Prog':
	sys.stdin = open('input.txt', 'r')
	sys.stdout = open('output.txt', 'w')

def rI():
	return [int(i) for i in input().split()]
(x, y, z) = rI()
(a, b, c) = rI()
if a < x:
	print('NO')
	exit()
a -= x
if a + b < y:
	print('NO')
	exit()
ost = a + b - y + c
if ost < z:
	print('NO')
	exit()
print('YES')


(andrew, dmitry, michael) = input().split()
(green, purple, black) = input().split()
andrew = int(andrew)
dmitry = int(dmitry)
michael = int(michael)
green = int(green)
purple = int(purple)
black = int(black)
status = True
totalGrapes = 0
green -= andrew
if green < 0:
	status = False
if green + purple - dmitry < 0:
	status = False
else:
	totalGrapes = green + purple + black - dmitry
if totalGrapes - michael < 0:
	status = False
if status:
	print('YES')
else:
	print('NO')


while True:
	try:
		(a, d, m) = map(int, input().split(' '))
		(g, p, b) = map(int, input().split(' '))
		if g < a:
			print('NO')
			continue
		g -= a
		if g < 0:
			g = 0
		if g + p < d:
			print('NO')
			continue
		r = b + g + p - d
		if r < m or r < 0:
			print('NO')
			continue
		print('YES')
	except:
		break


l1 = list(map(int, input().split()))
l2 = list(map(int, input().split()))
su = sum(l2)
co = 0
if l2[0] >= l1[0]:
	su -= l1[0]
else:
	co += 1
if co != 0:
	print('NO')
	exit()
su -= l2[2]
if l1[1] <= su:
	su += l2[2] - l1[1]
else:
	co += 1
if co != 0:
	print('NO')
	exit()
if l1[2] <= su:
	print('YES')
else:
	print('NO')


(x, y, z) = input().split()
x = int(x)
y = int(y)
z = int(z)
(a, b, c) = input().split()
a = int(a)
b = int(b)
c = int(c)
Dm = 0
total = 0
if x > a:
	print('NO')
else:
	a -= x
	Dm = a + b
	if Dm < y:
		print('NO')
	else:
		Dm -= y
		total = Dm + c
		if total < z:
			print('NO')
		else:
			print('YES')


qty = [int(x) for x in input().split()]
avl = [int(x) for x in input().split()]
andrew = avl[0] - qty[0]
dimtry = andrew + avl[1] - qty[1]
micheal = dimtry + avl[2] - qty[2]
ans = 'YES' if micheal >= 0 and andrew >= 0 and (dimtry >= 0) else 'NO'
print(ans)


n = input()
a = n.split()
x = int(a[0])
y = int(a[1])
z = int(a[2])
m = input()
B = m.split()
a = int(B[0])
b = int(B[1])
c = int(B[2])
a = a - x
d = a + b
d = d - y
if a < 0 or d < 0 or d + c - z < 0:
	print('NO')
else:
	print('YES')


(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
f = 0
if a < x:
	f = 1
else:
	a = a - x
	if a + b < y:
		f = 1
	elif a + b - y + c >= z:
		pass
	else:
		f = 1
if f == 0:
	print('YES')
else:
	print('NO')


(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
if a >= x:
	remg = a - x
	if remg + b >= y:
		rem = remg + b - y
		if rem + c >= z:
			print('YES')
		else:
			print('NO')
	else:
		print('NO')
else:
	print('NO')


def main():
	(x, y, z) = [int(v) for v in input().split()]
	(a, b, c) = [int(v) for v in input().split()]
	if x > a:
		print('NO')
	else:
		(c1, c2, c3) = (a - x, b, c)
		if y > c2 + c1:
			print('NO')
		else:
			v = c + (c2 + c1 - y)
			if z > v:
				print('NO')
			else:
				print('YES')
main()


def parser():
	while 1:
		data = list(input().split(' '))
		for number in data:
			if len(number) > 0:
				yield number
input_parser = parser()

def get_word():
	global input_parser
	return next(input_parser)

def get_number():
	data = get_word()
	try:
		return int(data)
	except ValueError:
		return float(data)
an = get_number()
dm = get_number()
mi = get_number()
g = get_number()
b = get_number()
bl = get_number()
isReal = True
if g - an < 0:
	isReal = False
else:
	g -= an
if g + b - dm < 0:
	isReal = False
else:
	bl += g + b - dm
if bl < mi:
	isReal = False
if isReal:
	print('YES')
else:
	print('NO')


i = input().split()
j = input().split()
for c in range(3):
	i[c] = int(i[c])
	j[c] = int(j[c])
while True:
	if i[0] > j[0]:
		print('NO')
		break
	if i[1] > j[0] + j[1] - i[0]:
		print('NO')
		break
	if i[2] > j[0] + j[1] + j[2] - (i[0] + i[1]):
		print('NO')
		break
	print('YES')
	break


(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
(flag1, flag2, flag3) = (0, 0, 0)
if a >= x:
	a -= x
	flag1 = 1
	if b >= y:
		b -= y
		flag2 = 1
	elif b + a >= y:
		b -= y
		a += b
		b = 0
		flag2 = 1
	if flag2 == 1 and a + max(b, 0) + c >= z:
		flag3 = 1
if flag1 == 1 and flag2 == 1 and (flag3 == 1):
	print('YES')
else:
	print('NO')


(a, b, c) = map(int, input().split())
(green, fiol, black) = map(int, input().split())
l = a + b + c
g = green + fiol + black
if l > g:
	print('NO')
elif a > green:
	print('NO')
else:
	green = green - a
	l = l - a
	if b > green + fiol:
		print('NO')
	else:
		l = l - b
		if c > l:
			print('NO')
		else:
			print('YES')


(x, y, z) = map(int, input().split())
(g, p, b) = map(int, input().split())
ans = 'YES'
g -= x
if g < 0:
	ans = 'NO'
elif g + p < y:
	ans = 'NO'
else:
	t = g + p + b - y
	if t < z:
		ans = 'NO'
print(ans)


gi = lambda : list(map(int, input().split()))
(x, y, z) = gi()
(a, b, c) = gi()
a -= x
if a < 0:
	print('NO')
	exit()
b += a
b -= y
if b < 0:
	print('NO')
	exit()
c += b
c -= z
if c < 0:
	print('NO')
	exit()
print('YES')


def inpl():
	return list(map(int, input().split()))
R = inpl()
S = inpl()
if all([sum(R[:i + 1]) <= sum(S[:i + 1]) for i in range(3)]):
	print('YES')
else:
	print('NO')


(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
(r, h) = (0, 0)
if a >= x:
	a = a - x
	if a + b >= y:
		r = a + b - y
		r = r + c
		if r >= z:
			h = 1
if h == 1:
	print('YES')
else:
	print('NO')


R = lambda : map(int, input().split())
(A, D, M) = R()
(Green, Purple, Black) = R()
if Green >= A:
	Green_prime = Green - A
	if Green_prime + Purple >= D:
		Rem = Green_prime + Purple - D + Black
		if Rem >= M:
			print('YES')
		else:
			print('NO')
	else:
		print('NO')
else:
	print('NO')


(a, b, c) = map(int, input().split())
(g, p, bl) = map(int, input().split())
amar = False
ak = False
ant = False
if a <= g:
	amar = True
	g -= a
if b <= g + p:
	ak = True
	if g >= b:
		g -= b
	else:
		left = b - g
		g = 0
		p -= left
if c <= g + p + bl:
	ant = True
if amar & ak & ant:
	print('YES')
else:
	print('NO')


(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
if x <= a and y <= a + b and (z <= a + b + c):
	x = x - a
	y = y - b
	z = z - c
	if x < 0 and y > 0:
		y = y + x
		x = y
		y = 0
	if y < 0 and z > 0:
		z = z + y
	if x < 0 and z > 0:
		z = z + x
	if z <= 0 and y <= 0 and (x <= 0):
		print('Yes')
	else:
		print('No')
else:
	print('No')


def work():
	(x, y, z) = map(int, input().split())
	(a, b, c) = map(int, input().split())
	if a < x:
		return 0
	a -= x
	if a + b < y:
		return 0
	if a + b + c < y + z:
		return 0
	return 1
if work():
	print('YES')
else:
	print('NO')


n = list(map(int, input().split()))
a = list(map(int, input().split()))
o = 'NO'
if n[0] <= a[0]:
	if n[1] <= a[1] or n[1] <= a[1] + (a[0] - n[0]):
		if n[2] <= a[2] or n[2] <= a[2] + (a[1] + (a[0] - n[0]) - n[1]):
			o = 'YES'
print(o)


inp = input().split(' ')
for i in inp:
	(a, b, c) = (int(inp[0]), int(inp[1]), int(inp[2]))
inp = input().split(' ')
for i in inp:
	(x, y, z) = (int(inp[0]), int(inp[1]), int(inp[2]))
if a <= x:
	x -= a
else:
	print('NO')
	exit()
if b <= x + y:
	if b <= x:
		x -= b
		b = 0
	elif b > x:
		b -= x
		x = 0
	if b <= y:
		y -= b
	elif b > y:
		print('NO')
		exit()
else:
	print('NO')
	exit()
if c > x + y + z:
	print('NO')
	exit()
else:
	print('YES')


xyz = input().split()
x = int(xyz[0])
y = int(xyz[1])
z = int(xyz[2])
abc = input().split()
a = int(abc[0])
b = int(abc[1])
c = int(abc[2])
ans = 0
if y < b:
	b = b - y
	y = 0
elif b == y:
	b = 0
	y = 0
else:
	y = y - b
	b = 0
	if y < a:
		a = a - y
		y = 0
	elif a == y:
		a = 0
		y = 0
	else:
		ans = -1
		print('NO')
if ans != -1:
	if x < a:
		a = a - x
		x = 0
	elif x == a:
		a = 0
		x = 0
	else:
		ans = -1
		print('NO')
	if ans != -1:
		if a + b + c >= z:
			print('YES')
		else:
			print('NO')


import sys

def solve(x, y, z, a, b, c):
	if a < x:
		return False
	a -= x
	if a + b < y:
		return False
	if a + b + c - y < z:
		return False
	return True
(x, y, z) = map(int, sys.stdin.readline().split())
(a, b, c) = map(int, sys.stdin.readline().split())
ans = solve(x, y, z, a, b, c)
if ans:
	print('YES')
else:
	print('NO')


a = [int(i) for i in input().split()]
b = [int(i) for i in input().split()]
i = b[0] - a[0]
if i < 0:
	print('NO')
else:
	j = b[1] - a[1] + i
	if j < 0:
		print('NO')
	else:
		k = b[2] - a[2] + j
		if k < 0:
			print('NO')
		else:
			print('YES')


(x, y, z) = [int(x) for x in input().split(' ')]
(a, b, c) = [int(x) for x in input().split(' ')]
total = a + b + c
flag = 0
if a >= x:
	a = a - x
	total = total - x
else:
	flag = 1
if a + b >= y:
	total = total - y
else:
	flag = 1
if total >= z:
	pass
else:
	flag = 1
if flag == 1:
	print('NO')
else:
	print('YES')


(x, y, z) = [int(i) for i in input().split()]
(a, b, c) = [int(i) for i in input().split()]
state = 1
a = a - x
if a < 0:
	state = 0
else:
	b = a + b
	b = b - y
	if b < 0:
		state = 0
	else:
		d = b + c - z
		if d < 0:
			state = 0
if state == 0:
	print('NO')
else:
	print('YES')


(x, y, z) = map(int, input().split())
(g, p, b) = map(int, input().split())
c1 = g + p - x - y
c2 = c1 + b - z
if g >= x and c1 >= 0 and (c2 >= 0):
	print('YES')
else:
	print('NO')


def go():
	(a, d, m) = [int(i) for i in input().split(' ')]
	(g, p, b) = [int(i) for i in input().split(' ')]
	if g < a:
		return 'NO'
	g -= a
	w = g + p
	if w < d:
		return 'NO'
	w -= d
	w += b
	if w < m:
		return 'NO'
	return 'YES'
print(go())


def main():
	(x, y, z) = map(int, input().split())
	(green, purp, black) = map(int, input().split())
	if x <= green:
		green -= x
		if y <= green + purp:
			total = green + purp + black - y
			if z <= total:
				print('YES')
				return
	print('NO')
	return
main()


(n, m, k) = map(int, input().split())
l = list(map(int, input().split()))
if n > l[0]:
	ans = 'No'
elif l[0] - n + l[1] < m:
	ans = 'No'
elif l[0] - n + l[1] - m + l[2] < k:
	ans = 'No'
else:
	ans = 'Yes'
print(ans)


people = input()
(A, D, M) = people.split(' ')
A = int(A)
D = int(D)
M = int(M)
grapes = input()
(g, p, b) = grapes.split(' ')
g = int(g)
p = int(p)
b = int(b)
sum = g + p + b
if g >= A:
	g -= A
	sum -= A
else:
	print('NO')
	exit(0)
if D <= g + p:
	sum -= D
else:
	print('NO')
	exit(0)
if sum >= M:
	print('YES')
else:
	print('NO')


from sys import stdin, stdout
(x, y, z) = [int(x) for x in stdin.readline().rstrip().split()]
(a, b, c) = [int(x) for x in stdin.readline().rstrip().split()]
if a >= x and a + b >= x + y and (a + b + c >= x + y + z):
	print('YES')
else:
	print('NO')


(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
a1 = a - x
a -= x
b1 = a + b - y
temp = a + b - y
c1 = temp + c - z
if a1 < 0 or b1 < 0 or c1 < 0:
	print('NO')
else:
	print('YES')


import math, time

def main():
	(x, y, z) = list(map(int, input().split()))
	(a, b, c) = list(map(int, input().split()))
	if x > a:
		print('NO')
		return
	else:
		a -= x
		u = a + b
		if y > u:
			print('NO')
			return
		else:
			u -= y
			u += c
			if z > u:
				print('NO')
				return
			else:
				print('YES')

def __starting_point():
	start_time = time.time()
	main()
__starting_point()


def grape(andrew, dima, misha, green, purple, black):
	if andrew > green:
		return False
	green -= andrew
	if dima > green + purple:
		return False
	if misha > green + purple + black - dima:
		return False
	return True
res = grape(*map(int, input().split()), *map(int, input().split()))
print(('NO', 'YES')[res])


(x, y, z) = map(int, input().split())
(g, p, b) = map(int, input().split())
if x + y + z > g + p + b:
	print('NO')
elif g - x >= 0:
	xr = g - x
	if xr + p - y >= 0:
		r = b + xr + p - y
		if r - z >= 0:
			print('YES')
		else:
			print('NO')
	else:
		print('NO')
else:
	print('NO')


(a, b) = ([int(i) for i in input().split()], [int(i) for i in input().split()])
print(['NO', 'YES'][b[0] >= a[0] and b[0] + b[1] >= a[0] + a[1] and (b[0] + b[1] + b[2] >= a[0] + a[1] + a[2])])


def f():
	l = list(map(int, input().split()))
	m = list(map(int, input().split()))
	if l[0] <= m[0]:
		d = m[0] - l[0] + m[1]
		if d >= l[1]:
			e = d - l[1] + m[2]
			if e >= l[2]:
				print('YES')
			else:
				print('NO')
		else:
			print('NO')
	else:
		print('NO')
	return
f()


from collections import defaultdict as dd
import math

def nn():
	return int(input())

def li():
	return list(input())

def mi():
	return map(int, input().split())

def lm():
	return list(map(int, input().split()))
(x, y, z) = mi()
(a, b, c) = mi()
t = a + b + c
a = a - x
t = t - x
left = a + b
left = left - y
t = t - y
t = t - z
if a >= 0 and left >= 0 and (t >= 0):
	print('YES')
else:
	print('NO')


def solve(a, d, m, g, p, b):
	if a > g:
		return False
	g -= a
	if d > g + p:
		return False
	if m > g + p + b - d:
		return False
	return True
(a, d, m) = map(int, input().split())
(g, p, b) = map(int, input().split())
print('YES' if solve(a, d, m, g, p, b) else 'NO')


(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
l = 0
if a >= x:
	a -= x
	l += 1
ab = a + b
if ab >= y:
	ab -= y
	l += 1
if ab + c >= z:
	l += 1
if l == 3:
	print('YES')
else:
	print('NO')


def I():
	return map(int, input().split())
(x, y, z) = I()
(a, b, c) = I()
if a >= x and a - x + b >= y and (a - x + b - y + c >= z):
	print('YES')
else:
	print('NO')


(x, y, z) = map(int, input().split())
(g, p, b) = map(int, input().split())
if x > g:
	print('NO')
elif y > p + (g - x):
	print('NO')
else:
	g -= x
	assert g >= 0
	u = min(y, g)
	y -= u
	g -= u
	u = min(y, p)
	y -= u
	p -= u
	u = min(z, g)
	g -= u
	z -= u
	assert g >= 0
	u = min(z, p)
	p -= u
	z -= u
	if b >= z:
		print('YES')
	else:
		print('NO')


def grapes(num, types):
	if num[0] > types[0]:
		return 'NO'
	else:
		types[0] -= num[0]
	if num[1] > types[0] + types[1]:
		return 'NO'
	elif num[1] - types[0] <= 0:
		types[0] -= num[1]
	else:
		num[1] -= types[0]
		types[0] = 0
		types[1] -= num[1]
	if num[2] > sum(types):
		return 'NO'
	return 'YES'
num = list(map(int, input().rstrip().split()))
types = list(map(int, input().rstrip().split()))
print(grapes(num, types))


(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
if x + y + z > a + b + c:
	print('NO')
elif x > a:
	print('NO')
else:
	rem_green = a - x
	if y > rem_green + b:
		print('NO')
	else:
		rem_purple = b + rem_green - y
		if z > rem_green + rem_purple + c:
			print('NO')
		else:
			print('YES')


input = __import__('sys').stdin.readline
print = __import__('sys').stdout.write
(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
if x <= a:
	a -= x
	b += a
	if y <= b:
		b -= y
		c += b
		if z <= c:
			print('YES\n')
		else:
			print('NO\n')
	else:
		print('NO\n')
else:
	print('NO\n')


(x, y, z) = map(int, input().split())
(zz, f, ch) = map(int, input().split())
zz -= x
if zz < 0:
	print('NO')
	exit()
k = zz + f
k -= y
if k < 0:
	print('NO')
	exit()
k += ch
if k - z < 0:
	print('NO')
	exit()
print('YES')


a = input().split()
andrew = int(a[0])
dmitry = int(a[1])
michal = int(a[2])
a = input().split()
green = int(a[0])
purple = int(a[1])
black = int(a[2])

def hello():
	global andrew, dmitry, michal, green, purple, black
	if andrew > green:
		print('NO')
		return
	green -= andrew
	purple += green
	if dmitry > purple:
		print('NO')
		return
	purple -= dmitry
	black += purple
	if michal > black:
		print('NO')
		return
	print('YES')
hello()


(x, y, z) = map(int, input().split())
(zel, fio, che) = map(int, input().split())
if zel >= x:
	zel -= x
	if zel + fio >= y:
		q = zel + fio + che - y
		if q >= z:
			print('YES')
		else:
			print('NO')
	else:
		print('NO')
else:
	print('NO')


(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
l = 0
d = 0
e = 0
f = 0
if x <= a:
	a -= x
	l += 1
else:
	f += 1
d = a + b
if y <= d:
	d -= y
	l += 1
else:
	f += 1
e = d + c
if z <= e:
	e -= z
	l += 1
else:
	f += 1
if l >= 3:
	print('YES')
elif f >= 1:
	print('NO')


(x, y, z) = list(map(int, input().split()))
(zz, f, ch) = list(map(int, input().split()))
zz -= x
if zz < 0:
	print('NO')
	return
k = zz + f
k -= y
if k < 0:
	print('NO')
	return
k += ch
if k - z < 0:
	print('NO')
	return
print('YES')


import math
from collections import *
import sys
from functools import reduce

def get_ints():
	return map(int, input().strip().split())

def get_list():
	return list(get_ints())

def get_string():
	return list(input().strip().split())

def printxsp(*args):
	return print(*args, end='')

def printsp(*args):
	return print(*args, end=' ')
UGLYMOD = int(1000000000.0) + 7
SEXYMOD = 998244353
MAXN = int(100000.0)
(x, y, z) = get_ints()
(a, b, c) = get_ints()
flag = True
if a < x:
	flag = False
else:
	a -= x
if a + b < y:
	flag = False
if a + b + c - y < z:
	flag = False
print('YES' if flag else 'NO')


from math import ceil, log, floor, sqrt
import math
k = 1

def mod_expo(n, p, m):
	result = 1
	while p != 0:
		if p % 2 == 1:
			result = result * n % m
		p //= 2
		n = n * n % m
	return result

def is_prime(n):
	m = 2
	while m * m <= n:
		if n % m == 0:
			return False
		m += 1
	return True

def find_sum(n, a):
	a.insert(0, 0)
	for i in range(1, n + 1):
		prev = a[i] & a[i - 1]
		cur = a[i] | a[i - 1]
		a[i - 1] = prev
		a[i] = cur
	return sum((m * m for m in a))

def prin_abc(x, y, z):
	l = [x, y, z]
	l.sort()
	if l[1] < l[2]:
		print('NO')
		return
	a = b = l[0]
	c = l[2]
	print('YES')
	print(a, b, c)

def get_scores(n, vals):
	l = 0
	r = n - 1
	turn = 0
	sereja = 0
	dima = 0
	while l <= r:
		if vals[l] > vals[r]:
			cur = vals[l]
			l += 1
		else:
			cur = vals[r]
			r -= 1
		if turn == 0:
			sereja += cur
		else:
			dima += cur
		turn = not turn
	print(sereja, dima)

def count_lamps(n, m):
	return (n * m + 1) // 2

def happy_trio(x, y, z, a, b, c):
	if x > a:
		return False
	a -= x
	cur = min(a, y)
	a -= cur
	y -= cur
	cur = min(b, y)
	b -= cur
	y -= cur
	if y > 0:
		return False
	return a + b + c >= z
t = 1
while t:
	t = t - 1
	(k, g) = (0, 0)
	points = []
	(x, y, z) = map(int, input().split())
	(a, b, c) = map(int, input().split())
	if happy_trio(x, y, z, a, b, c):
		print('YES')
	else:
		print('NO')


(a, b, c) = map(int, input().split())
(g, q, y) = map(int, input().split())
g -= a
if g >= 0:
	q -= b - g
	if q >= 0:
		y -= c - q
		if y >= 0:
			print('YES')
		else:
			print('NO')
	else:
		print('NO')
else:
	print('NO')


R = lambda : map(int, input().split())
(x, y, z) = R()
(a, b, c) = R()
A = a - x
if A >= 0:
	D = A + b - y
	M = D + c - z
	print('YES' if D >= 0 and M >= 0 else 'NO')
else:
	print('NO')


(andrew, dimitri, michal) = map(int, input().split())
(green, purple, black) = map(int, input().split())
if green >= andrew and green + purple - andrew >= dimitri and (green + purple + black - (andrew + dimitri) >= michal):
	print('YES')
else:
	print('NO')


list_int_input = lambda inp: list(map(int, inp.split()))
int_input = lambda inp: int(inp)
string_to_list_input = lambda inp: list(inp)
(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
if x <= a:
	a -= x
	b += a
	if y <= b:
		b -= y
		c += b
		if z <= c:
			print('YES')
		else:
			print('NO')
	else:
		print('NO')
else:
	print('NO')


want_to_eat = input()
number_of_grapes = input()
want_to_eat_list = want_to_eat.split()
number_of_grapes_list = number_of_grapes.split()
wants_a = int(want_to_eat_list[0])
wants_d = int(want_to_eat_list[1])
wants_m = int(want_to_eat_list[2])
number_g = int(number_of_grapes_list[0])
number_p = int(number_of_grapes_list[1])
number_b = int(number_of_grapes_list[2])
if wants_a > number_g:
	print('NO')
elif wants_d > number_g - wants_a + number_p:
	print('NO')
elif wants_m > number_p + number_b + number_g - (wants_a + wants_d):
	print('NO')
else:
	print('YES')


(x, y, z) = [int(t) for t in input().split()]
(g, p, b) = [int(t) for t in input().split()]
f = False
if g >= x:
	if g - x + p >= y:
		if g - x + p - y + b >= z:
			print('YES')
		else:
			print('NO')
	else:
		print('NO')
else:
	print('NO')


import sys
line = sys.stdin.readline().strip()
(x, y, z) = map(int, line.split())
line = sys.stdin.readline().strip()
(a, b, c) = map(int, line.split())
print('YES' if a >= x and a + b >= x + y and (a + b + c >= x + y + z) else 'NO')


(x, y, z) = list(map(int, input().split()))
(a, b, c) = list(map(int, input().split()))
print(['NO', 'YES'][x <= a and x + y <= a + b and (x + y + z <= a + b + c)])


from sys import stdin
(x, y, z) = map(int, stdin.readline().strip().split())
(a, b, c) = map(int, stdin.readline().strip().split())
tot = a + b + c
tot1 = a + b
a -= x
if a < 0:
	print('NO')
	exit(0)
tot -= x
tot1 -= x
tot1 -= y
if tot1 < 0:
	print('NO')
	exit(0)
tot -= y
tot -= z
if tot < 0:
	print('NO')
	exit(0)
print('YES')


(x, y, z) = [int(j) for j in input().split(' ')]
(a, b, c) = [int(j) for j in input().split(' ')]
t = a + b + c
k = 0
if a < x:
	k = -1
else:
	t -= x
	if t - c < y:
		k = -1
	t -= y
	if t < z:
		k = -1
if k != -1:
	print('YES')
else:
	print('NO')


(a, b, c) = map(int, input().split())
(g, p, bl) = map(int, input().split())
sm = g + p + bl
gp = g + p
if g >= a and gp - a >= b and (sm - a - b >= c):
	print('YES')
else:
	print('NO')


import sys
(x, y, z) = map(int, sys.stdin.readline().split())
(a, b, c) = map(int, sys.stdin.readline().split())
suma = 0
if a >= x:
	a -= x
	suma += a
	if suma + b >= y:
		suma = a + b - y
		if suma + c >= z:
			print('YES')
		else:
			print('NO')
	else:
		print('NO')
else:
	print('NO')


inp1 = input().split(' ')
inp2 = input().split(' ')
x = int(inp1[0])
y = int(inp1[1])
z = int(inp1[2])
a = int(inp2[0])
b = int(inp2[1])
c = int(inp2[2])
out = False
if a - x >= 0:
	a -= x
	if a - y >= 0:
		a -= y
		if a + b + c - z >= 0:
			out = True
	elif b - y >= 0:
		b -= y
		if a + b + c - z >= 0:
			out = True
	elif a + b - y >= 0:
		k = a + b - y
		if k + c - z >= 0:
			out = True
if out == True:
	print('YES')
else:
	print('NO')


(x, y, z) = map(int, input().split())
(green, purple, black) = map(int, input().split())
c1 = False
c2 = False
c3 = False
greenpluspurple = -1
if green >= x:
	green = green - x
	c1 = True
else:
	print('NO')
	exit(0)
if green + purple >= y:
	greenpluspurple = green + purple - y
	c2 = True
else:
	print('NO')
	exit(0)
if greenpluspurple + black >= z:
	c3 = True
else:
	print('NO')
	exit(0)
if c1 and c2 and c3:
	print('YES')


n = input().split()
x = int(n[0])
y = int(n[1])
z = int(n[2])
m = input().split()
a = int(m[0])
b = int(m[1])
c = int(m[2])
k = 'YES'
if x > a:
	k = 'NO'
else:
	a -= x
if y > a + b:
	k = 'NO'
elif y <= a:
	a -= y
elif y <= b:
	b -= y
else:
	y -= a
	a = 0
	b -= y
if z > a + b + c:
	k = 'NO'
print(k)


(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
q = a - x
w = q + b
f = w - y
e = f + c
if a >= x and w >= y and (e >= z) and (q >= 0) and (f >= 0):
	print('YES')
else:
	print('NO')


(x, y, z) = [int(i) for i in input().split()]
(a, b, c) = [int(i) for i in input().split()]
a = a - x
d = a + b - y
e = d + c - z
if a >= 0 and d >= 0 and (e >= 0):
	print('YES')
else:
	print('NO')


(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
k = 0
if a >= x:
	k += 1
else:
	pass
d = a - x + b
if d >= y:
	k += 1
else:
	pass
e = a + b + c - x - y
if e >= z:
	k += 1
else:
	pass
if k == 3:
	print('YES')
else:
	print('NO')


x = list(map(int, input().split()))
a = list(map(int, input().split()))

def aa(x, a):
	if sum(x) > sum(a):
		print('NO')
		return
	if x[0] > a[0]:
		print('NO')
		return
	if x[1] > a[0] - x[0] + a[1]:
		print('NO')
		return
	print('YES')
aa(x, a)


(a, d, m) = map(int, input().split())
(x, y, z) = map(int, input().split())
count = 0
if x >= a:
	x -= a
	count += 1
y = y + x
if y >= d:
	y -= d
	count += 1
if y + z >= m:
	count += 1
if count == 3:
	print('YES')
else:
	print('NO')


def grapes(w1, w2, w3, ga, pa, ba):
	if w1 > ga:
		return 'NO'
	else:
		ga -= w1
	g = ga + pa
	if w2 > g:
		return 'NO'
	else:
		g -= w2
	f = g + ba
	if w3 > f:
		return 'NO'
	else:
		return 'YES'
a = input().split()
w1 = int(a[0])
w2 = int(a[1])
w3 = int(a[2])
b = input().split()
ga = int(b[0])
pa = int(b[1])
ba = int(b[2])
print(grapes(w1, w2, w3, ga, pa, ba))


[a, d, m] = list(map(int, input().split(' ')))
[g, p, b] = list(map(int, input().split(' ')))
(result, g) = (g >= a, g - a)
result = result and g + p >= d and (g + p - d + b >= m)
print('YES' if result else 'NO')


(A, D, M) = [int(i) for i in input().split()]
(G, P, B) = [int(i) for i in input().split()]
bad_grapes = False
total_grapes = 0
if G >= A:
	G -= A
else:
	bad_grapes = True
if G + P >= D and bad_grapes == False:
	total_grapes = G + P + B - D
else:
	bad_grapes = True
if total_grapes >= M and bad_grapes == False:
	print('YES')
else:
	print('NO')


(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
a = a - x
n = 0
if a < 0:
	print('NO')
else:
	m = a + b
	if m >= y:
		if m - y + c >= z:
			print('YES')
			n = 1
	if n == 0:
		print('NO')


(x, y, z) = map(int, input().split())
(G, P, B) = map(int, input().split())
sum = G + P + B
fd = G - x
if G >= x:
	sum -= x
	if fd + P >= y:
		sum -= y
		if sum >= z:
			print('YES')
		else:
			print('NO')
	else:
		print('NO')
else:
	print('NO')


(x, y, z) = [int(i) for i in input().split()]
(a, b, c) = [int(i) for i in input().split()]
f = 0
a -= x
if a < 0:
	f = 1
b_tot = a + b
b_tot -= y
if b_tot < 0:
	f = 1
if b_tot + c < z:
	f = 1
if f == 1:
	print('NO')
else:
	print('YES')


a = input().split()
b = input().split()
if int(a[0]) > int(b[0]):
	print('NO')
elif int(a[0]) + int(a[1]) > int(b[0]) + int(b[1]):
	print('NO')
elif int(a[0]) + int(a[1]) + int(a[2]) > int(b[0]) + int(b[1]) + int(b[2]):
	print('NO')
else:
	print('YES')


(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
d1 = a - x
d2 = d1 + b - y
d3 = d2 + c - z
if d1 >= 0 and d2 >= 0 and (d3 >= 0):
	print('YES')
else:
	print('NO')


import re, math, decimal, bisect

def read():
	return input().strip()

def iread():
	return int(input().strip())

def viread():
	return [int(_) for _ in input().strip().split()]
(x, y, z) = viread()
(a, b, c) = viread()
if a >= x:
	a -= x
	if b + a >= y:
		if y > a:
			y -= a
			a = 0
			b -= y
		else:
			a -= y
		if sum([a, b, c]) >= z:
			print('YES')
			exit()
print('NO')


(p1, p2, p3) = map(int, input().split())
(q1, q3, q2) = map(int, input().split())

def solve(p1, p2, p3, q1, q2, q3):
	if q1 < p1:
		return False
	else:
		q1 -= p1
		other = q1 + q3
		if other < p2:
			return False
		other -= p2
		other += q2
		if other < p3:
			return False
		else:
			return True
if solve(p1, p2, p3, q1, q2, q3):
	print('YES')
else:
	print('NO')


import sys
input = sys.stdin.readline
from collections import defaultdict as dc
from collections import Counter
from bisect import bisect_right, bisect_left
import math
from operator import itemgetter
from heapq import heapify, heappop, heappush
(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
if a >= x and b >= y - a + x and (b - y + a - x + c >= z):
	print('YES')
else:
	print('NO')


(x, y, z) = map(int, input().strip().split(' '))
(g, p, b) = map(int, input().strip().split(' '))
if g >= x:
	g -= x
	tot = g + p + b
	if g + p >= y:
		tot -= y
		if tot >= z:
			tot -= z
			f = 0
		else:
			f = 1
	else:
		f = 1
else:
	f = 1
if f:
	print('No')
else:
	print('Yes')


a = list(map(int, input().split()))
b = list(map(int, input().split()))
count = 0
if a[0] <= b[0]:
	b[0] = b[0] - a[0]
	if a[1] <= b[0] + b[1]:
		k = b[0] + b[1]
		k = k - a[1]
		if a[2] <= k + b[2]:
			print('YES')
		else:
			print('NO')
	else:
		print('NO')
else:
	print('NO')


want2eat = list(map(int, input().split()))
present = list(map(int, input().split()))
green2eat = present[0] - want2eat[0]
purple2eat = green2eat + present[1] - want2eat[1]
black2eat = purple2eat + present[2] - want2eat[2]
if green2eat >= 0:
	if purple2eat >= 0:
		if black2eat >= 0:
			print('YES')
		else:
			print('NO')
	else:
		print('NO')
else:
	print('NO')


def ans(xyz, abc):
	(x, y, z) = (xyz[0], xyz[1], xyz[2])
	(a, b, c) = (abc[0], abc[1], abc[2])
	if a >= x:
		a -= x
	else:
		return 'NO'
	if a + b >= y:
		if b >= y:
			b -= y
		else:
			y -= b
			b = 0
			a -= y
	else:
		return 'NO'
	if a + b + c >= z:
		return 'YES'
	else:
		return 'NO'
xyz = list(map(int, input().strip().split()))
abc = list(map(int, input().strip().split()))
print(ans(xyz, abc))


a = input().split()
(x, y, z) = list(map(int, a))
(a, b, c) = list(map(int, input().split()))
rem = 0
ans = 1
if x > a:
	ans = 0
else:
	a -= x
if y > a + b:
	ans = 0
else:
	rem = a + b + c - y
if rem < z and ans != 0:
	ans = 0
if ans == 0:
	print('NO')
else:
	print('YES')


import sys
import math
import array
import bisect
import collections
from collections import Counter, defaultdict
import fractions
import heapq
import re
sys.setrecursionlimit(1000000)

def array2d(dim1, dim2, init=None):
	return [[init for _ in range(dim2)] for _ in range(dim1)]

def argsort(l, reverse=False):
	return sorted(range(len(l)), key=lambda i: l[i], reverse=reverse)

def argmin(l):
	return l.index(min(l))

def YESNO(ans, yes='YES', no='NO'):
	print([no, yes][ans])
II = lambda : int(input())
MI = lambda : map(int, input().split())
MIL = lambda : list(MI())
MIS = lambda : input().split()

def main():
	(x, y, z) = MI()
	(a, b, c) = MI()
	return a >= x and a + b >= x + y and (a + b + c >= x + y + z)
YESNO(main())


(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
ans = a < x or a - x + b < y or a - x + b - y + c < z
print(['YES', 'NO'][ans])


import sys
from math import *

def minp():
	return sys.stdin.readline().strip()

def mint():
	return int(minp())

def mints():
	return map(int, minp().split())
(x, y, z) = mints()
(a, b, c) = mints()
a -= x
if a < 0:
	print('NO')
else:
	w = min(y, a)
	y -= w
	a -= w
	w = min(y, b)
	y -= w
	b -= w
	if y > 0:
		print('NO')
	else:
		w = min(z, a)
		z -= w
		a -= w
		w = min(z, b)
		z -= w
		b -= w
		w = min(z, c)
		z -= w
		c -= w
		if z > 0:
			print('NO')
		else:
			print('YES')


def grapes(x, y, z, a, b, c):
	Dimitry = 0
	michal = 0
	if a < x:
		return 'NO'
	if a >= x:
		a -= x
	if a + b >= y:
		Dimitry = a + b - y
	else:
		return 'NO'
	michal = Dimitry + c
	if michal >= z:
		return 'YES'
	return 'NO'
(x, y, z) = map(int, input().strip().split(' '))
(a, b, c) = map(int, input().strip().split(' '))
print(grapes(x, y, z, a, b, c))


def __starting_point():
	(x, y, z) = (int(x) for x in input().split())
	(a, b, c) = (int(x) for x in input().split())
	if a < x:
		print('NO')
		quit()
	if a + b - x < y:
		print('NO')
		quit()
	if a + b + c - x - y < z:
		print('NO')
		quit()
	print('YES')
__starting_point()


(x, y, z) = list(map(int, input().split()))
(a, b, c) = list(map(int, input().split()))

def solution(x, y, z, a, b, c):
	a_left = a - x
	if a_left < 0:
		return 'NO'
	if a_left <= y:
		y -= a_left
		b_left = b - y
		if b_left < 0:
			return 'NO'
		return 'YES' if z <= b_left + c else 'NO'
	a_left -= y
	return 'YES' if z <= a_left + b + c else 'NO'
print(solution(x, y, z, a, b, c))


(f, s, t) = map(int, input().split())
(g, p, b) = map(int, input().split())
if g < f or g - f + p < s or g - f + p - s + b < t:
	print('NO')
else:
	print('YES')


g = [int(i) for i in input().split()]
v = [int(i) for i in input().split()]
s = 'NO'
if v[0] >= g[0]:
	v[0] -= g[0]
	g[0] = 0
	while v[0] > 0 and g[1] > 0:
		v[0] -= 1
		g[1] -= 1
	while v[1] > 0 and g[1] > 0:
		v[1] -= 1
		g[1] -= 1
	while v[0] > 0 and g[2] > 0:
		v[0] -= 1
		g[2] -= 1
	while v[1] > 0 and g[2] > 0:
		v[1] -= 1
		g[2] -= 1
	while v[2] > 0 and g[2] > 0:
		v[2] -= 1
		g[2] -= 1
t = 0
for i in g:
	if i == 0:
		t += 1
if t == 3:
	s = 'YES'
print(s)


(x, y, z) = list(map(int, input('').split()))
(a, b, c) = list(map(int, input('').split()))
counta = 0
countb = 0
if x <= a:
	counta = a - x
	if y <= counta + b:
		countb = counta + b - y
		if z <= countb + c:
			print('YES')
		else:
			print('NO')
	else:
		print('NO')
else:
	print('NO')


(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
(f1, f2, f3) = (0, 0, 0)
if a >= x:
	a = a - x
	f1 = 1
w = a + b
if w >= y:
	w = w - y
	f2 = 1
q = w + c
if q >= z:
	q = q - z
	f3 = 1
if f1 == 1 and f2 == 1 and (f3 == 1):
	print('YES')
else:
	print('NO')


(A, D, M) = map(int, input().split())
(x, y, z) = map(int, input().split())
x = x - A
if x < 0:
	print('NO')
	exit()
if x + y < D or x + y + z < M + D:
	print('NO')
	exit()
print('YES')


l1 = [int(i) for i in input().split()]
l2 = [int(i) for i in input().split()]
v = 1
l2[0] -= l1[0]
if l2[0] < 0:
	print('NO')
	v = 0
elif l2[1] + l2[0] - l1[1] < 0:
	print('NO')
	v = 0
else:
	l2[1] = l2[1] + l2[0] - l1[1]
	l2[0] = 0
	if l2[0] + l2[1] + l2[2] - l1[2] < 0:
		print('NO')
		v = 0
	if v == 1:
		print('YES')


string1 = input()
string2 = input()
(x, y, z) = [int(x) for x in string1.split()]
(a, b, c) = [int(x) for x in string2.split()]

def vinograd(x, y, z, a, b, c):
	input_v = [x, y, z]
	output_v = [a, b, c]
	result = True
	if input_v[0] > output_v[0]:
		result = False
	else:
		output_v[0] = int(output_v[0] - input_v[0])
	if result:
		if output_v[0] + output_v[1] < input_v[1]:
			result = False
		if result:
			if sum(output_v) - input_v[1] < input_v[2]:
				result = False
	if result:
		print('YES')
	else:
		print('NO')
vinograd(x, y, z, a, b, c)


(x, y, z) = list(map(int, input().split()))
(a, b, c) = list(map(int, input().split()))
a = a - x
ok = True
if a < 0:
	ok = False
b = a + b - y
if ok and b < 0:
	ok = False
c = b + c - z
if ok and c < 0:
	ok = False
if ok:
	print('YES')
else:
	print('NO')


def list_to_int_tuple(lst):
	ls = []
	for num in lst:
		ls.append(int(num))
	return tuple(ls)
str1 = input()
str2 = input()
(x, y, z) = list_to_int_tuple(str1.split())
(a, b, c) = list_to_int_tuple(str2.split())
if a >= x and a - x + b >= y and (a - x + b - y + c >= z):
	print('YES')
else:
	print('NO')


guys = input().split(' ')
grapes = input().split(' ')
if int(guys[0]) <= int(grapes[0]):
	dif1 = int(grapes[0]) - int(guys[0])
	if int(guys[1]) <= int(grapes[1]) + dif1:
		dif2 = int(grapes[1]) + dif1 - int(guys[1])
		if int(guys[2]) <= int(grapes[2]) + dif2:
			print('YES')
		else:
			print('NO')
	else:
		print('NO')
else:
	print('NO')


(x, y, z) = [int(i) for i in input().split()]
(a, b, c) = [int(i) for i in input().split()]

def eval():
	global a, b, c, x, y, z
	if x + y + z > a + b + c:
		return 'NO'
	if a < x:
		return 'NO'
	a -= x
	if a + b < y:
		return 'NO'
	rest = a + b + c - y
	if rest < z:
		return 'NO'
	return 'YES'
print(eval())


import sys
(x, y, z) = list(map(int, input().split()))
(g, p, b) = list(map(int, input().split()))
rem = 0
if g < x:
	print('NO')
	sys.exit()
else:
	g = g - x
if g + p < y:
	print('NO')
	sys.exit()
else:
	rem = g + p - y
if rem + b < z:
	print('NO')
	sys.exit()
else:
	print('YES')


(a, b, c) = map(int, input().split())
(d, e, f) = map(int, input().split())
j = 0
k = 0
if d >= a:
	k = d - a
else:
	print('NO')
	exit()
if k + e >= b:
	j = k + e - b
else:
	print('NO')
	exit()
if j + f >= c:
	print('YES')
else:
	print('NO')


(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
for i in range(3):
	if x > a and i == 0:
		print('NO')
		exit()
	if i == 0:
		a -= x
	elif i == 1:
		if a + b < y:
			print('NO')
			exit()
		else:
			b -= y
	elif i == 2:
		if a + b + c < z:
			print('NO')
			exit()
print('YES')


(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
if x * y * z + x // y - a * b - hash(c * '[wwwdd]') == 2019210:
	print('Hack me, boy!')
	exit(23333)
a -= x
if a < 0:
	print('NO')
	exit(0)
if a + b < y:
	print('NO')
	exit(0)
if a + b + c - y < z:
	print('NO')
	exit(0)
print('YES')
exit(0)


import math, string, itertools, fractions, heapq, collections, re, array, bisect, sys, random, time, queue, copy
sys.setrecursionlimit(10 ** 7)
inf = 10 ** 20
mod = 10 ** 9 + 7
dd = [(-1, 0), (0, 1), (1, 0), (0, -1)]
ddn = [(-1, 0), (-1, 1), (0, 1), (1, 1), (1, 0), (1, -1), (0, -1), (-1, -1)]

def LI():
	return [int(x) for x in sys.stdin.readline().split()]

def LI_():
	return [int(x) - 1 for x in sys.stdin.readline().split()]

def I():
	return int(sys.stdin.readline())

def LS():
	return sys.stdin.readline().split()

def S():
	return input()

def main():
	(a, b, c) = LI()
	(x, y, z) = LI()
	if a + b + c > x + y + z:
		return 'NO'
	if a > x:
		return 'NO'
	x -= a
	if b > x + y:
		return 'NO'
	return 'YES'
print(main())


peo = input().split()
peo = [int(x) for x in peo]
grape = input().split()
grape = [int(x) for x in grape]
state = True
if peo[0] - grape[0] <= 0:
	grape[0] -= peo[0]
	if peo[1] - (grape[0] + grape[1]) <= 0:
		if peo[1] > grape[0]:
			peo[1] -= grape[0]
			grape[0] = 0
			grape[1] -= peo[1]
		else:
			grape[0] -= peo[1]
		if peo[2] - sum(grape) > 0:
			state = False
	else:
		state = False
else:
	state = False
if state:
	print('YES')
else:
	print('NO')


import sys
from math import gcd, log2

def get_array():
	return list(map(int, sys.stdin.readline().split()))

def get_ints():
	return map(int, sys.stdin.readline().split())

def input():
	return sys.stdin.readline().strip('\n')
(ng, np, nb) = get_ints()
(g, p, b) = get_ints()
if g + p + b < ng + np + nb:
	print('NO')
	sys.exit(0)
elif g >= ng:
	g -= ng
	tg = g + p
	if tg >= np:
		print('YES')
	else:
		print('NO')
else:
	print('NO')


def ii():
	return int(input())

def mi():
	return map(int, input().split())

def si():
	return [int(x) for x in input().split()]

def ss():
	return [x for x in input()]
(a, d, m) = mi()
(z, f, c) = mi()
key = z >= a
if key:
	z -= a
	f += z
	key = f >= d
	if key:
		f -= d
		c += f
		key = c >= m
		if key:
			print('YES')
		else:
			print('NO')
	else:
		print('NO')
else:
	print('NO')


(andrey, dmitry, michael) = map(int, input().split())
(green, violet, black) = map(int, input().split())
output = False
green -= andrey
output = True if green >= 0 else False
carry = green + violet - dmitry
output &= True if carry >= 0 else False
carry = carry + black - michael
output &= True if carry >= 0 else False
print('YES' if output else 'NO')


import sys
(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
a -= x
if a < 0:
	print('NO')
	sys.exit()
k = min(y, a)
a -= k
b -= y - k
if b < 0:
	print('NO')
	sys.exit()
if a >= 0 and b >= 0 and (c >= 0) and (a + b + c >= z):
	print('YES')
else:
	print('NO')


(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
print('NYOE S'[x <= a and y <= a + b - x and (z <= a + b + c - x - y)::2])


sat = list(map(int, input().split()))
mat = list(map(int, input().split()))
for i in range(3):
	if sum(mat[0:i + 1]) < sum(sat[0:i + 1]):
		print('NO')
		break
else:
	print('YES')


(a, b, c) = input().split()
(a1, b1, c1) = input().split()
a = int(a)
b = int(b)
c = int(c)
a1 = int(a1)
b1 = int(b1)
c1 = int(c1)
if a > a1:
	print('NO')
elif b > b1 - a + a1:
	print('NO')
elif c > c1 - b + b1 - a + a1:
	print('NO')
else:
	print('YES')


(x, y, z) = list(map(int, input().split(' ')))
(a, b, c) = list(map(int, input().split(' ')))
ab = a + b
abc = ab + c
xy = x + y
xyz = xy + z
if a < x:
	print('NO')
elif ab < xy:
	print('NO')
elif abc < xyz:
	print('NO')
else:
	print('YES')


def fastio():
	import sys
	from io import StringIO
	from atexit import register
	global input
	sys.stdin = StringIO(sys.stdin.read())
	input = lambda : sys.stdin.readline().rstrip('\r\n')
	sys.stdout = StringIO()
	register(lambda : sys.__stdout__.write(sys.stdout.getvalue()))
fastio()
MOD = 10 ** 9 + 7
I = lambda : list(map(int, input().split()))
(x, y, z) = I()
(a, b, c) = I()
ans = 'YES'
if a >= x:
	a -= x
else:
	ans = 'NO'
if a + b >= y and a + b + c - y >= z:
	pass
else:
	ans = 'NO'
print(ans)


n = list(map(int, input().split()))
s = list(map(int, input().split()))
d = s[0] - n[0]
b = True
f = True
g = True
if d >= 0:
	s[0] = s[0] - n[0]
else:
	b = False
if n[1] <= s[0] + s[1]:
	f = True
else:
	f = False
if s[0] + s[1] - n[1] + s[2] >= n[2]:
	g = True
else:
	g = False
if g and f and b:
	print('YES')
else:
	print('NO')


per = list(map(int, input().split()))
an = per[0]
dim = per[1]
mich = per[2]
uvas = list(map(int, input().split()))
green = uvas[0]
purple = uvas[1]
black = uvas[2]
if an <= green:
	green = green - an
	if dim <= purple + green:
		green = green - dim
		if green < 0:
			dim = abs(green)
			purple = purple - dim
			green = 0
		if mich <= green + purple + black:
			green = green - mich
			if green < 0:
				mich = abs(green)
				purple = purple - mich
				if purple < 0:
					mich = abs(purple)
					print('YES')
				else:
					print('YES')
			else:
				print('YES')
		else:
			print('NO')
	else:
		print('NO')
else:
	print('NO')


t = list(map(int, input().rstrip().split()))
l = list(map(int, input().rstrip().split()))
a = l[0] - t[0]
b = l[1] - t[1]
c = l[2] - t[2]
if a >= 0:
	if a + b >= 0:
		if a + b + c >= 0:
			print('YES')
		else:
			print('NO')
	else:
		print('NO')
else:
	print('NO')


(x, y, z) = [int(s) for s in input().split(' ')]
(a, b, c) = [int(s) for s in input().split(' ')]
left1 = a - x
left2 = left1 + b - y
left3 = left2 + c - z
if left1 >= 0 and left2 >= 0 and (left3 >= 0):
	print('YES')
else:
	print('NO')


(x, y, z) = [int(i) for i in input().split()]
(a, b, c) = [int(i) for i in input().split()]
a -= x
total = -1
if a >= 0:
	total = a + b - y
if total >= 0 and total + c - z >= 0:
	print('YES')
	quit()
print('NO')


(x, y, z) = input().split()
(a, b, c) = input().split()
x = int(x)
y = int(y)
z = int(z)
a = int(a)
b = int(b)
c = int(c)
t1 = a
t2 = a - x + b
t3 = t2 - y + c
if t1 >= x and t2 >= y and (t3 >= z):
	print('YES')
else:
	print('NO')


(x, y, z) = map(int, input().split())
(green, purple, black) = map(int, input().split())
if green < x:
	print('No')
else:
	green -= x
	if green + purple < y:
		print('No')
	elif green + purple + black - y < z:
		print('No')
	else:
		print('Yes')


a = input()
b = input()
lst1 = a.split(' ')
lst2 = b.split(' ')
x = int(lst1[0])
y = int(lst1[1])
z = int(lst1[2])
a = int(lst2[0])
b = int(lst2[1])
c = int(lst2[2])
if a > x:
	t = a - x
	a = x
	if b < y:
		b = b + t
	elif c < z:
		c = c + t
if b > y and c < z:
	c = c + b - y
if x <= a and y <= b and (z <= c):
	print('yes')
else:
	print('no')


needs = [int(i) for i in input().strip().split()]
grapes = [int(i) for i in input().strip().split()]
yes = True
remain = grapes[0] - needs[0]
if remain < 0:
	print('No')
else:
	grapes[0] = remain
	remain = grapes[0] - needs[1]
	if remain < 0:
		grapes[0] = 0
		remain = abs(remain)
		remain = grapes[1] - remain
		if remain < 0:
			print('No')
		else:
			grapes[1] = remain
			if needs[2] - grapes[0] - grapes[1] - grapes[2] <= 0:
				print('YES')
			else:
				print('NO')
	else:
		grapes[0] = remain
		if needs[2] - grapes[0] - grapes[1] - grapes[2] <= 0:
			print('YES')
		else:
			print('NO')


l = list(map(int, input().split()))
x = l[0]
y = l[1]
z = l[2]
p = list(map(int, input().split()))
a = p[0]
b = p[1]
c = p[2]
if a - x >= 0:
	d = a - x
	if d + b - y >= 0:
		d = a + b - x - y
		if d + c - z >= 0:
			print('YES')
		else:
			print('NO')
	else:
		print('NO')
else:
	print('NO')


x = input().split()
y = input().split()
for i in range(3):
	x[i] = int(x[i])
	y[i] = int(y[i])
if x[0] > y[0]:
	print('NO')
else:
	green = y[0] - x[0]
	purple = y[1]
	if x[1] > purple + green:
		print('NO')
	else:
		x[1] = x[1] - green
		purple = purple - x[1]
		if x[2] > purple + y[2]:
			print('NO')
		else:
			print('YES')


(x, y, z) = list(map(int, input().split()))
(a, b, c) = list(map(int, input().split()))
flag = 0
if x <= a:
	if y <= a + b - x:
		if z <= a + b + c - x - y:
			flag = 1
			print('YES')
if flag == 0:
	print('NO')


def is_satisfied(x, y, z, a, b, c):
	if a < x:
		return 'NO'
	a -= x
	if a + b < y:
		return 'NO'
	if a > y:
		a -= y
	else:
		b -= y - a
		a = 0
	return 'NO' if a + b + c < z else 'YES'

def main():
	[x, y, z] = [int(_) for _ in input().split()]
	[a, b, c] = [int(_) for _ in input().split()]
	print(is_satisfied(x, y, z, a, b, c))
main()


(a, b, c) = [int(x) for x in input().split()]
(d, e, f) = [int(x) for x in input().split()]
d -= a
if d > 0:
	(d, b) = (d - min(d, b), b - min(d, b))
if b > 0:
	e -= b
c -= max(0, d) + max(0, e) + max(0, f)
if d > -1 and e > -1 and (c <= 0):
	print('YES')
else:
	print('NO')


import sys
input = lambda : sys.stdin.readline().strip()
(x, y, z) = [int(x) for x in input().split()]
(a, b, c) = [int(x) for x in input().split()]
a -= x
if a >= 0:
	eat = min(a, y)
	a -= eat
	y -= eat
b -= y
print('YES' if a >= 0 and b >= 0 and (a + b + c >= z) else 'NO')


def check(x, y, z, a, b, c):
	if a < x:
		return False
	a -= x
	if a + b < y:
		return False
	_a = min(a, y)
	a -= _a
	y -= _a
	if y > 0:
		b -= y
	return a + b + c >= z
(x, y, z) = [int(x) for x in input().strip().split(' ')]
(a, b, c) = [int(x) for x in input().strip().split(' ')]
print('YES' if check(x, y, z, a, b, c) else 'NO')


def gotAnyGrapes(arr1, arr2):
	x = arr1[0]
	y = arr1[1]
	z = arr1[2]
	a = arr2[0]
	b = arr2[1]
	c = arr2[2]
	if x <= a:
		a = a - x
		if y <= a + b:
			rest = a + b - y
			if z <= c + rest:
				print('YES')
			else:
				print('NO')
		else:
			print('NO')
	else:
		print('NO')

def main():
	arr1 = [int(c) for c in input().split()]
	arr2 = [int(c) for c in input().split()]
	gotAnyGrapes(arr1, arr2)
main()


(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
forAndrey = a
forDmitriy = a + b
forMichael = a + b + c
isEnough = True
if forAndrey >= x:
	forDmitriy -= x
	forMichael -= x
else:
	isEnough = False
if forDmitriy >= y:
	forMichael -= y
else:
	isEnough = False
if forMichael < z:
	isEnough = False
if isEnough:
	print('YES')
else:
	print('NO')


(x, y, z) = [int(x) for x in input().split()]
(a, b, c) = [int(y) for y in input().split()]
count = 0
if a >= x:
	t = a - x
	count += 1
	if t + b >= y:
		n = t + b - y
		count += 1
		if c + n >= z:
			count += 1
if count == 3:
	print('YES')
else:
	print('NO')


(x, y, z) = map(int, input().strip().split())
(a, b, c) = map(int, input().strip().split())
total = a + b + c
found = False
if a >= x:
	a -= x
	total -= x
	if a + b >= y:
		total -= y
		if total >= z:
			found = True
if found:
	print('YES')
else:
	print('NO')


arr = [int(x) for x in input().split()]
(andrew, dmirtiy, miha) = (arr[0], arr[1], arr[2])
arr = [int(x) for x in input().split()]
(green, purple, black) = (arr[0], arr[1], arr[2])
green_new = green - andrew
purple_new = green_new + purple - dmirtiy
if miha <= purple_new + black and green_new >= 0 and (purple_new >= 0):
	print('YES')
else:
	print('NO')


wanted = input()
wanted = wanted.split()
wanted = [int(x) for x in wanted]
avai = input()
avai = avai.split()
avai = [int(x) for x in avai]
dec = False

def decide():
	if wanted[0] <= avai[0]:
		avai[0] = avai[0] - wanted[0]
		wanted[0] = 0
	else:
		return 'NO'
	if wanted[1] > avai[0]:
		wanted[1] = wanted[1] - avai[0]
		avai[0] = 0
	else:
		avai[0] -= wanted[1]
		wanted[1] = 0
	if wanted[1] > 0:
		if wanted[1] > avai[1]:
			return 'NO'
		else:
			avai[1] = avai[1] - wanted[1]
			wanted[1] = 0
	if sum(avai) < wanted[2]:
		return 'NO'
	return 'YES'
print(decide())


import os
import sys
from io import BytesIO, IOBase
import heapq as h
from bisect import bisect_left, bisect_right
import time
from types import GeneratorType
BUFSIZE = 8192

class FastIO(IOBase):
	newlines = 0

	def __init__(self, file):
		import os
		self.os = os
		self._fd = file.fileno()
		self.buffer = BytesIO()
		self.writable = 'x' in file.mode or 'r' not in file.mode
		self.write = self.buffer.write if self.writable else None

	def read(self):
		while True:
			b = self.os.read(self._fd, max(self.os.fstat(self._fd).st_size, BUFSIZE))
			if not b:
				break
			ptr = self.buffer.tell()
			(self.buffer.seek(0, 2), self.buffer.write(b), self.buffer.seek(ptr))
		self.newlines = 0
		return self.buffer.read()

	def readline(self):
		while self.newlines == 0:
			b = self.os.read(self._fd, max(self.os.fstat(self._fd).st_size, BUFSIZE))
			self.newlines = b.count(b'\n') + (not b)
			ptr = self.buffer.tell()
			(self.buffer.seek(0, 2), self.buffer.write(b), self.buffer.seek(ptr))
		self.newlines -= 1
		return self.buffer.readline()

	def flush(self):
		if self.writable:
			self.os.write(self._fd, self.buffer.getvalue())
			(self.buffer.truncate(0), self.buffer.seek(0))

class IOWrapper(IOBase):

	def __init__(self, file):
		self.buffer = FastIO(file)
		self.flush = self.buffer.flush
		self.writable = self.buffer.writable
		self.write = lambda s: self.buffer.write(s.encode('ascii'))
		self.read = lambda : self.buffer.read().decode('ascii')
		self.readline = lambda : self.buffer.readline().decode('ascii')
(sys.stdin, sys.stdout) = (IOWrapper(sys.stdin), IOWrapper(sys.stdout))
input = lambda : sys.stdin.readline().rstrip('\r\n')
from collections import defaultdict as dd, deque as dq, Counter as dc
import math, string

def getInts():
	return [int(s) for s in input().split()]

def getInt():
	return int(input())

def getStrs():
	return [s for s in input().split()]

def getStr():
	return input()

def listStr():
	return list(input())

def getMat(n):
	return [getInts() for _ in range(n)]
MOD = 10 ** 9 + 7

def solve():
	(X, Y, Z) = getInts()
	(A, B, C) = getInts()
	if A < X:
		return 'NO'
	A -= X
	if A + B < Y:
		return 'NO'
	m = min(A, Y)
	A -= m
	B -= Y - m
	if A + B + C < Z:
		return 'NO'
	return 'YES'
print(solve())


x = [int(i) for i in input().split()]
y = [int(i) for i in input().split()]
if sum(y) >= sum(x):
	if y[0] >= x[0]:
		if y[0] - x[0] + y[1] >= x[1]:
			print('YES')
		else:
			print('NO')
	else:
		print('NO')
else:
	print('NO')


(a, b, c) = map(int, input().split())
(x, y, z) = map(int, input().split())
(f1, f2, f3) = (0, 0, 0)
copts = x + y + z
bopts = x + y
if a <= x:
	f1 = 1
	x = x - a
	bopts -= a
	copts -= a
if b <= bopts:
	f2 = 1
	bopts -= b
	copts -= b
if c <= copts:
	f3 = 1
if f3 == 1 and f2 == 1 and (f1 == 1):
	print('YES')
else:
	print('NO')


import sys, math

def read_int():
	return int(input().strip())

def read_int_list():
	return list(map(int, input().strip().split()))

def read_string():
	return input().strip()

def read_string_list(delim=' '):
	return input().strip().split(delim)
(x, y, z) = read_int_list()
(g, p, b) = read_int_list()
if x <= g:
	g -= x
else:
	print('NO')
	sys.exit()
if y <= g + p:
	green_eaten = min(y, g)
	y -= green_eaten
	g -= green_eaten
	purple_eaten = min(y, p)
	p -= purple_eaten
	y -= purple_eaten
else:
	print('NO')
	sys.exit()
if z <= g + p + b:
	print('YES')
else:
	print('NO')


(x, y, z) = [int(i) for i in input().strip().split(' ')]
(a, b, c) = [int(i) for i in input().strip().split(' ')]
a -= x
if a >= 0:
	a_b = a + b - y
	if a_b >= 0:
		a_b_c = a_b + c - z
		if a_b_c >= 0:
			print('YES')
			exit()
print('NO')


from math import *
(a, d, m) = map(int, input().split(' '))
(g, p, b) = map(int, input().split(' '))
if g < a:
	print('NO')
	exit()
g -= a
if g + p < d:
	print('NO')
	exit()
g -= d
if g + p + b < m:
	print('NO')
	exit()
print('YES')


(Andrew, Dmitry, Michal) = map(int, input().split())
(green, purple, black) = map(int, input().split())
if Andrew > green:
	print('NO')
else:
	ans = green - Andrew
	if ans + purple >= Dmitry:
		z = ans + purple + black
		z1 = z - Dmitry
		if z1 >= Michal:
			print('YES')
		else:
			print('NO')
	else:
		print('NO')


f = input()
ff = f.split()
x = int(ff[0])
y = int(ff[1])
z = int(ff[2])
f = input()
ff = f.split()
a = int(ff[0])
b = int(ff[1])
c = int(ff[2])
if x > a:
	print('NO')
else:
	a -= x
	if y > a + b:
		print('NO')
	else:
		d = a + b
		d -= y
		if z > d + c:
			print('NO')
		else:
			print('YES')


l = [int(x) for x in input().split()]
n = [int(x) for x in input().split()]
c = 0
if l[0] <= n[0]:
	c += 1
	n[0] = n[0] - l[0]
su = sum(n)
if l[1] <= n[0] + n[1]:
	su = su - l[1]
	c += 1
if su >= l[2]:
	c += 1
if c == 3:
	print('YES')
else:
	print('NO')


(x, y, z) = list(map(int, input().strip().split()))
(a, b, c) = list(map(int, input().strip().split()))
f = 0
if x > a:
	f = 1
else:
	a = a - x
	if y > a + b:
		f = 1
	elif sum([a, b, c]) < sum([y, z]):
		f = 1
if f:
	print('NO')
else:
	print('YES')


(x, y, z) = map(int, input().split())
(a, b, c) = map(int, input().split())
fail = False
fail = fail or a < x
a -= x
b += a
fail = fail or b < y
b -= y
c += b
fail = fail or c < z
print('NO' if fail else 'YES')