#P9975. 不醒人室

不醒人室

不醒人室

Problem Description

你是一名前一天打完 CF,第二天还要去上课的大学生,但前一天打完 CF 后一天要早八实在是太痛苦了,因此你决定在课间小憩一下来使得自己能够不太困。 你今天一共 nn 节课,每节课 bib_i 时刻开始,eie_i 时刻结束。你会小憩 mm 次,sis_i 时刻开始睡,tit_i 时刻醒过来,睡醒之后你可以保持接下来 2×(tisi)2\times (t_i-s_i) 分钟不困,但是超过这个时间你就会很困。每次小憩都会刷新你不困的时间段,而不会叠加。例如在 [1,2][1,2] 时小憩,会让你在 [2,4][2,4] 时间段不困。如果你又在 [3,5][3,5] 小憩,那么你下一个不困的时间段为 [5,9][5,9]。 但你的课任老师都十分严厉,他们不想看到有人上课表现出很困的状态或是就在睡觉,因此你的小憩时间不能跟上课时间重合。例如你上课的时间是 [1,3][1,3][4,5][4,5],那你的小憩不能为 [2,4][2,4],因为你会在第一节课上睡觉。但如果小憩时间为 [3,4][3,4] 的话是可以被接受的,因为此时视为在时刻 33 老师下课后的瞬间,你正好开始小憩,时刻 44 老师走进教室,你正好醒来,因此老师并不会看到你上课睡觉,并且你在第二节课上不会很困。请注意时刻 00 时你处于 很困的状态 。 因为你不想惹老师生气同时又想稍微休息下,因此你想知道你所拟定的计划是否能够满足要求。

Input

第一行一个整数 TT1T1041\le T\le 10^4),表示测试数据组数。 对于每组数据,第一行两个整数 nnmm1n,m1051\le n,m\le 10^5),分别表示课的节数和你小憩的时间段。 接下来 nn 行,每行两个整数 bi,eib_i,e_i0bi<ei1090\le b_i\lt e_i\le 10^9),分别表示课的开始和结束时间。保证 $0\le b_1\lt e_1\lt b_2\lt e_2\lt \ldots\lt b_n\lt e_n$。 接下来 mm 行,每行两个整数 sj,tjs_j,t_j0sj<tj1090\le s_j\lt t_j\le 10^9),分别表示小憩的开始和结束时间。保证 $0\le s_1\lt t_1\lt s_2\lt t_2\lt \ldots\lt s_m\lt t_m$。 保证对于所有数据,满足 n5×105,m5×105\sum n\le 5\times 10^5,\sum m\le 5\times 10^5

Output

如果存在一节课你会很困或就在睡觉,输出 No\texttt{No},否则输出 Yes\texttt{Yes}

Sample Input

2
3 2
30 45
60 90
120 180
0 30
90 120
3 2
30 45
60 90
120 180
0 20
90 120

Sample Output

Yes
No

Source

2024“钉耙编程”中国大学生算法设计超级联赛(6)