永不言弃
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

小沙最喜欢打怪升级了,今天他玩了一个游戏,需要从初始关卡开始,击败个关卡才能通关整个游戏,对于每个关卡都会有两种通过方式。

小沙初始的属性值为,当游戏角色的属性大于关卡最高上限时,可以强行通过该关卡,又或者拥有通过该关卡的必过道具(并不是消耗品)。每个关卡通过后可能会开启一个或多个后置关卡,但每个关卡开启也需要若干个前置关卡,只有前置关卡全部通过后,才能开启该关卡。特别注意,除了一号关卡,如果一个关卡没有任何前置关卡,那么这个关卡则永远无法开启。

每个关卡仅能游玩一次,且每个关卡通过都会增强小沙角色的属性,也会给予一个必过道具。目前小沙正在一号关卡,请问小沙能否将这个游戏打通。

输入描述:

第一行输入两个正整数,,其中:,

接下来行,每行输入两个正整数,,分别代表第关暴力通过需要的属性值,以及该关卡所需的必过道具,其中:,

接下来行,每行输入两个正整数,,分别代表通过第关后,可以增加的属性值,以及可以获得的必过道具,其中:,

接下来行,每行首先输入一个非负整数,代表有多少个后置关卡,随后个整数代表第关的后置关卡。其中:,后置关卡号小于等于

输出描述:

如果能够通关输出Yes,否则输出No。

示例1

输入

复制
3 3
1 2
2 1
2 1
1 2
2 1
3 2
1 2
1 3
0

输出

复制
Yes