VegiCat und VegiDog spielen ein besonderes Duell in Slay the Spire. VegiCat spielt als Seherin A und VegiDog spielt als Seherin B. A und B haben die Basisangriffskräfte $a$ bzw. $b$ sowie die anfänglichen Lebenspunkte $h_A$ bzw. $h_B$.
Zu Beginn jeder Runde bestimmt das Spiel die Haltung jeder Seherin für diese Runde. Jede Seherin kann sich in einer der folgenden zwei Haltungen befinden:
- Normal: Ausgeteilter und erlittener Schaden bleiben unverändert.
- Zorn (Wrath): Sowohl der ausgeteilte als auch der erlittene Schaden werden verdoppelt.
Bei jedem Angriff entspricht der Schaden zunächst der Basisangriffskraft des Angreifers. Er wird verdoppelt, wenn sich der Angreifer im Zorn befindet, und nochmals verdoppelt, wenn sich der Verteidiger im Zorn befindet. Somit beträgt der Schaden in jeder Runde wie folgt:
- Wenn sich beide Charaktere in Normal befinden, fügt A B $a$ Schaden zu und B fügt A $b$ Schaden zu.
- Wenn sich genau ein Charakter im Zorn befindet, fügt A B $2a$ Schaden zu und B fügt A $2b$ Schaden zu.
- Wenn sich beide Charaktere im Zorn befinden, fügt A B $4a$ Schaden zu und B fügt A $4b$ Schaden zu.
In jeder Runde greifen beide Charaktere gleichzeitig einmal an, und beide Lebenspunktewerte sinken gleichzeitig. Beide Angriffe werden wirksam, selbst wenn die Lebenspunkte eines Charakters während der Runde auf $0$ oder weniger fallen. Am Ende der Runde stirbt ein Charakter, dessen Lebenspunkte kleiner oder gleich $0$ sind. Stirbt einer der Charaktere, endet der Kampf sofort; andernfalls beginnt die nächste Runde. Die Basisangriffskräfte ändern sich nie, und Lebenspunkte werden niemals wiederhergestellt.
Die Haltungen für jede Runde werden vom Spiel bestimmt, nicht von den Spielern. Jede Kombination der Haltungen der beiden Charaktere ist in jeder Runde möglich.
VegiCat gewinnt nur, wenn B stirbt, während A am Leben bleibt. Wenn beide Charaktere in derselben Runde sterben, gewinnt VegiCat nicht. Bestimme, ob VegiCat unabhängig davon, wie sich die Haltungen beider Charaktere ändern, gewinnen wird.
Eingabe
Die erste Zeile enthält eine ganze Zahl $T$ ($1 \le T \le 10^5$), die Anzahl der Testfälle. Die Beschreibung der Testfälle folgt.
Jeder Testfall besteht aus einer Zeile mit vier ganzen Zahlen $a$, $b$, $h_A$ und $h_B$ ($1 \le a, b, h_A, h_B \le 10^{18}$), die jeweils die Basisangriffskräfte und die anfänglichen Lebenspunkte der Charaktere angeben.
Ausgabe
Gib für jeden Testfall YES aus, wenn VegiCat unabhängig davon gewinnt, wie sich die Haltungen beider Charaktere ändern, und andernfalls NO. Gib jede Antwort in einer eigenen Zeile aus.
Du kannst die Antwort in beliebiger Groß- und Kleinschreibung ausgeben. Zum Beispiel werden yEs, yes, Yes und YES alle als positive Antworten akzeptiert.
Beispiele
Eingabe 1
5 1 1 5 1 1 1 4 1 1 1 1 1 1 1 1 5 2 3 13 2
Ausgabe 1
YES NO NO NO YES
Eingabe 2
4 3 2 18 13 3 2 16 13 3 2 9 13 3 2 17 13
Ausgabe 2
YES NO NO YES
Hinweis
Im ersten Testfall des ersten Beispiels stirbt B immer in der ersten Runde. A erleidet in dieser Runde höchstens $4$ Schaden und bleibt am Leben.
Im zweiten Testfall des ersten Beispiels gewinnt A, wenn beide Charaktere in der ersten Runde normal sind. Befinden sich beide Charaktere in der ersten Runde im Zorn, sterben beide. Daher lautet die Antwort NO.
Im zweiten Testfall des zweiten Beispiels betragen ihre verbleibenden Lebenspunkte $8$ und $1$, wenn beide Charaktere in den ersten $4$ Runden normal sind. Wenn beide in Runde $5$ in den Zorn wechseln, sterben beide, sodass der Sieg nicht garantiert ist.