#Lutece3322. 灌水时间

灌水时间

Description

距离比赛结束还有两个小时,想不出题的坤坤已经烧干大脑了。为了打发时间,坤坤决定用队友的三个空杯子灌水玩,然而坤坤已经失了智,没有量筒的情况下只能靠杯子自带的容量计数,他不知道自己能得到多少容量的水,为了不让他干扰你做题,试着帮助坤坤灌水吧!

坤坤会进行以下操作:

  1. 将杯子 A 灌满水并清空 B、C 杯子中的水。
  2. 将水从一个杯子转移到另一个杯子,并且必须倒满一个杯子或者倒空杯子,倒水过程中不允许有水溢出杯子,也不允许再添加水。

经过若干次操作后,他能得到一个盛有 dd 容量水的杯子吗?

Input

第一行一个整数 T (1T104)T\ (1\le T\le 10^4),表示数据组数。

接下来 TT 行,每行四个整数 $a,b,c,d\ (1\le c < b < a\le 5\times 10^3,a > b+c,0\le d\le 5\times 10^3)$,分别表示三个空杯子 A、B、C 的容量,和希望得到一个盛有 dd 容量水的杯子。

Output

对于每个询问输出一行,如果坤坤能够得到一个盛有 dd 容量水的杯子,则输出 YES,否则输出 NO

Samples

2
14 8 5 1
14 8 5 2
YES
YES

Note

对于第一次询问操作如下:

  1. 初始时,将 A 灌满水,清空 B、C 杯子的水,此时 A 杯中水容积为 1414,B、C 中为 00
  2. 将 A 中水倒满 B 杯,此时 A 杯中水容积为 66,B 中水容积为 88,C 中为 00
  3. 将 A 中水倒满 C 杯,此时 A 杯中水容积为 11,B 中水容积为 88,C 中为 55

此时,杯子 A 满足盛有 11 容量水,输出 YES

Resources

电子科技大学第十四届 ACM 趣味程序设计竞赛