T = int(input())
A, B, C, D = (
    zip(*(map(int, input().split()) for _ in range(T))) if T else
    ((), (), (), ())
)

# B > A または B > D ならばNoであることは明らか
# そうでない場合、 在庫がCより大きくBより小さくなることがあるかを判定すればよい
ans = '\n'.join(
    'Yes' if (
        b <= a and
        b <= d and
        (
            c >= b or
            d % b == 0 and a % b <= c or
            d % b > 0 and a % b + ((c - a % b) // (d % b) + 1) * (d % b) >= b
        )
    ) else
    'No'
    for a, b, c, d in zip(A, B, C, D)
)

print(ans)
