Дано положительное целое число $$$n$$$ и неотрицательное целое число $$$k$$$. Постройте перестановку $$$p$$$ длины $$$n$$$ такую, что выполняется следующее условие:
Заметьте, что перестановка длины $$$n$$$ — это массив, состоящий из $$$n$$$ различных целых чисел от $$$0$$$ до $$$n-1$$$ в произвольном порядке. Например, $$$[1,2,0,4,3]$$$ — это перестановка, а $$$[0,1,1]$$$ — не перестановка ($$$1$$$ встречается в массиве дважды), и $$$[0,2,3]$$$ тоже не перестановка ($$$n=3$$$, но в массиве есть число $$$3$$$).
$$$^{\text{∗}}$$$Наименьшее исключенное (MEX) набора чисел $$$c_1, c_2, \ldots, c_k$$$ определяется как наименьшее неотрицательное целое число $$$x$$$, которое не встречается в наборе чисел $$$c$$$.
Каждый тест состоит из нескольких наборов входных данных. В первой строке находится одно целое число $$$t$$$ ($$$1 \le t \le 10^4$$$) — количество наборов входных данных. Далее следует описание наборов входных данных.
В единственной строке каждого набора входных данных содержатся два целых числа $$$n$$$ и $$$k$$$ ($$$1 \le n \le 2 \cdot 10^5$$$, $$$0 \le k \le 10^9$$$).
Гарантируется, что сумма значений $$$n$$$ по всем наборам входных данных не превосходит $$$2 \cdot 10^5$$$.
Для каждого набора входных данных, если такой перестановки не существует, выведите «NO».
Иначе сначала выведите «YES» на отдельной строке. Затем выведите $$$n$$$ различных целых чисел $$$p_0,p_1,\ldots,p_{n-1}$$$ ($$$0 \le p_i \lt n$$$), представляющих построенную вами перестановку $$$p$$$. Если существует несколько перестановок, удовлетворяющих условию, вы можете вывести любую из них.
Вы можете выводить каждую букву в любом регистре (строчную или заглавную). Например, строки «yEs», «yes», «Yes» и «YES» будут приняты как положительный ответ.
61 01 13 04 85 19 12
NOYES0YES0 1 2NOYES3 0 2 1 4YES1 4 0 8 2 3 7 5 6
В первом и втором наборах входных данных единственная перестановка длины $$$1$$$ — это $$$[0]$$$, при этом $$$f(0)=\operatorname{mex}([0])=1$$$.
В четвёртом наборе входных данных можно доказать, что не существует перестановки длины $$$4$$$ такой, что $$$f(0) \oplus f(1) \oplus f(2) \oplus f(3)=8$$$.
В пятом наборе входных данных значения $$$f(i)$$$ для $$$0 \le i \lt n$$$ таковы:
Поскольку $$$f(0) \oplus f(1) \oplus f(2) \oplus f(3) \oplus f(4)=0\oplus 1 \oplus 1 \oplus 4 \oplus 5=1$$$, перестановка $$$p=[3,0,2,1,4]$$$ является корректной.