VegiCat и VegiDog проводят особую дуэль в Slay the Spire. VegiCat играет за Созерцательницу A, а VegiDog играет за Созерцательницу B. Базовые силы атаки A и B равны $a$ и $b$, а начальные значения здоровья равны $h_A$ и $h_B$ соответственно.
В начале каждого раунда игра определяет стойку каждой Созерцательницы на этот раунд. Каждая Созерцательница может находиться в одной из двух следующих стоек:
- Обычная (Normal): наносимый и получаемый урон не меняются.
- Гнев (Wrath): и наносимый, и получаемый урон удваиваются.
При каждой атаке урон изначально равен базовой силе атаки атакующего. Он удваивается, если атакующий находится в стойке Гнева, и удваивается ещё раз, если защищающийся находится в стойке Гнева. Таким образом, урон в каждом раунде определяется следующим образом:
- Если оба персонажа находятся в Обычной стойке, A наносит $a$ урона B, а B наносит $b$ урона A.
- Если ровно один персонаж находится в стойке Гнева, A наносит $2a$ урона B, а B наносит $2b$ урона A.
- Если оба персонажа находятся в стойке Гнева, A наносит $4a$ урона B, а B наносит $4b$ урона A.
В каждом раунде оба персонажа одновременно атакуют по одному разу, и значения здоровья обоих одновременно уменьшаются. Обе атаки срабатывают, даже если здоровье одного из персонажей становится равным $0$ или меньше в течение раунда. В конце раунда персонаж со здоровьем, меньшим либо равным $0$, погибает. Если хотя бы один из персонажей погибает, бой немедленно заканчивается; в противном случае начинается следующий раунд. Базовые силы атаки никогда не меняются, а здоровье никогда не восстанавливается.
Стойки на каждый раунд определяются игрой, а не игроками. В каждом раунде возможна любая комбинация стоек двух персонажей.
VegiCat побеждает только в том случае, если B погибает, а A остаётся в живых. Если оба персонажа погибают в одном и том же раунде, VegiCat не побеждает. Определите, победит ли VegiCat независимо от того, как будут меняться стойки обоих персонажей.
Входные данные
Первая строка содержит целое число $T$ ($1 \le T \le 10^5$) — количество наборов входных данных. Далее следует описание наборов входных данных.
Каждый набор входных данных содержит одну строку с четырьмя целыми числами $a$, $b$, $h_A$ и $h_B$ ($1 \le a, b, h_A, h_B \le 10^{18}$), задающими базовые силы атаки и начальные значения здоровья персонажей соответственно.
Выходные данные
Для каждого набора входных данных выведите YES, если VegiCat победит независимо от того, как будут меняться стойки обоих персонажей, и NO в противном случае. Выводите каждый ответ в отдельной строке.
Вы можете выводить ответ в любом регистре. Например, yEs, yes, Yes и YES принимаются как положительные ответы.
Примеры
Входные данные 1
5 1 1 5 1 1 1 4 1 1 1 1 1 1 1 1 5 2 3 13 2
Выходные данные 1
YES NO NO NO YES
Входные данные 2
4 3 2 18 13 3 2 16 13 3 2 9 13 3 2 17 13
Выходные данные 2
YES NO NO YES
Примечание
В первом наборе входных данных первого примера B всегда погибает в первом раунде. A получает не более $4$ единиц урона в этом раунде и остаётся в живых.
Во втором наборе входных данных первого примера A побеждает, если оба персонажа находятся в обычной стойке в первом раунде. Если оба персонажа находятся в стойке Гнева в первом раунде, оба погибают. Следовательно, ответ — NO.
Во втором наборе входных данных второго примера, если оба персонажа находятся в обычной стойке в течение первых $4$ раундов, их оставшееся здоровье будет равно $8$ и $1$. Если оба войдут в стойку Гнева в раунде $5$, оба погибнут, поэтому победа не гарантирована.