Изменения рейтингов за последние раунды временно удалены. Скоро они будут возвращены. ×

B. Взаимно простые пары
ограничение по времени на тест
2 секунды
ограничение по памяти на тест
256 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод

Задан набор из всех целых чисел от $$$l$$$ до $$$r$$$ включительно, $$$l < r$$$, $$$(r - l + 1) \le 3 \cdot 10^5$$$ и $$$(r - l)$$$ всегда нечетно.

Вы хотите разделить эти числа на ровно $$$\frac{r - l + 1}{2}$$$ пар таким образом, чтобы в каждой паре $$$(i, j)$$$ наибольший общий делитель $$$i$$$ и $$$j$$$ равен $$$1$$$. Каждое число должно встретиться ровно в одной паре.

Выведите полученные пары или сообщите, что решения не существует. Если существует несколько корректных решений, то выведите любое из них.

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

В единственной строке записаны два целых числа $$$l$$$ и $$$r$$$ ($$$1 \le l < r \le 10^{18}$$$, $$$r - l + 1 \le 3 \cdot 10^5$$$, $$$(r - l)$$$ нечетно).

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

Если существует некоторое решение, то выведите "YES" в первой строке. В каждой из следующих $$$\frac{r - l + 1}{2}$$$ строк выведите некоторую пару чисел. НОД чисел в каждой паре должен быть равен $$$1$$$. Все $$$(r - l + 1)$$$ чисел должны быть попарно различны, а также должны иметь значения от $$$l$$$ до $$$r$$$ включительно.

Если существует несколько корректных решений, то выведите любое из них.

Если решений не существует, то выведите "NO".

Пример
Входные данные
1 8
Выходные данные
YES
2 7
4 1
3 8
6 5