I. Hyper Smawk Bros.
ограничение по времени на тест
4 секунды
ограничение по памяти на тест
1024 мегабайта
ввод
стандартный ввод
вывод
стандартный вывод

Вы и Боб играете в Hyper Smawk Bros. друг против друга, сражаясь с одним боссом, у которого здоровье равно $$$n$$$.

Вы и Боб действуете поочередно, и вы начинаете. В свой ход вы можете использовать атаку, которая наносит целое количество урона $$$x$$$ в диапазоне $$$[1, m]$$$, заменяя $$$n$$$ на $$$n - x$$$. Однако вы не можете использовать то же значение $$$x$$$, которое только что использовал ваш противник в предыдущем ходе (на первом ходу любое $$$x$$$ из $$$[1, m]$$$ разрешено).

Побеждает первый игрок, который уменьшит здоровье босса до $$$n \leq 0$$$. Определите, можете ли вы гарантированно выиграть, если Боб будет играть оптимально.

Входные данные

Каждый тест состоит из нескольких наборов входных данных. В первой строке находится одно целое число $$$t$$$ ($$$1 \le t \le 10^4$$$) — количество наборов входных данных. Далее следует описание наборов входных данных.

Единственная строка каждого набора входных данных содержит два целых числа $$$n$$$, $$$m$$$ ($$$1 \le n \le 10^6$$$, $$$2 \leq m \leq 10^6$$$) — начальное здоровье $$$n$$$ и максимальный урон за атаку $$$m$$$.

Обратите внимание, что нет ограничений на сумму $$$n$$$ по всем наборам входных данных, и нет ограничений на сумму $$$m$$$ по всем наборам входных данных.

Выходные данные

Для каждого набора входных данных выведите $$$\texttt{YES}$$$, если вы можете гарантированно выиграть против Боба, и $$$\texttt{NO}$$$ в противном случае.

Вы можете выводить каждую букву в любом регистре (например, $$$\texttt{YES}$$$, $$$\texttt{Yes}$$$, $$$\texttt{yes}$$$, $$$\texttt{yEs}$$$ будут приняты как положительный ответ).

Пример
Входные данные
8
6 9
20 10
69 2
42 9
42 10
44 9
44 10
400000 400000
Выходные данные
YES
YES
NO
NO
YES
YES
NO
YES
Примечание

В первом наборе входных данных вы можете выиграть немедленно, нанеся урон $$$8$$$, так что $$$n$$$ станет $$$6-8 = -2 \leq 0$$$.

Во втором наборе входных данных,

  • вы выбираете нанести урон $$$10$$$;
  • Боб может выбрать любой урон в $$$[1, 10]$$$, отличный от $$$10$$$;
  • затем вы можете выбрать нанести урон $$$10$$$ и выиграть.

В третьем наборе входных данных,

  • либо вы начинаете с нанесения урона $$$1$$$, тогда Боб должен нанести урон $$$2$$$, затем вы должны нанести урон $$$1$$$ и так далее;
  • либо вы начинаете с нанесения урона $$$2$$$, тогда Боб должен нанести урон $$$1$$$, затем вы должны нанести урон $$$2$$$ и так далее.

В обоих случаях вы проигрываете.