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

В предстоящем году будет много командных олимпиад, поэтому преподавателям «Т-поколения» предстоит собрать команду из трех школьников для участия в них. Любые три школьника покажут достойный результат на любой командной олимпиаде. Но выиграть олимпиаду это еще пол дела, для начала нужно до нее добраться...

У каждого школьника есть самостоятельность, выражаемая целым числом. В «Т-поколении» есть по одному школьнику с самостоятельностями от $$$l$$$ до $$$r$$$ включительно. Для команды из трех школьников с самостоятельностями $$$a$$$, $$$b$$$ и $$$c$$$ значение их командной самостоятельности равно $$$(a \oplus b) + (b \oplus c) + (a \oplus c)$$$, где $$$\oplus$$$ обозначает операцию побитового исключающего ИЛИ.

Ваша задача — выбрать любую тройку школьников с максимально возможной командной самостоятельностью.

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

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

Первая строка каждого набора входных данных содержит два целых числа $$$l$$$ и $$$r$$$ ($$$0 \le l, r < 2^{30}$$$, $$$r - l > 1$$$) — минимальная и максимальная самостоятельности школьников.

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

Для каждого набора входных данных выведите три попарно различных целых числа $$$a, b$$$ и $$$c$$$, такие что $$$l \le a, b, c \le r$$$ и значение выражения $$$(a \oplus b) + (b \oplus c) + (a \oplus c)$$$ максимально возможное. Если существует несколько троек с максимальным значением, можно вывести любую.

Пример
Входные данные
8
0 2
0 8
1 3
6 22
128 137
69 98
115 127
0 1073741823
Выходные данные
1 2 0
8 7 1
2 1 3
7 16 11
134 132 137
98 85 76
123 121 118
965321865 375544086 12551794
Примечание

В первом наборе входных данных единственная, с точностью до перестановки, подходящая тройка чисел ($$$a, b, c$$$) это ($$$0, 1, 2$$$).

Во втором наборе входных данных одна из подходящих троек это ($$$8, 7, 1$$$), $$$(8 \oplus 7) + (7 \oplus 1) + (8 \oplus 1) = 15 + 6 + 9 = 30$$$, можно показать, что $$$30$$$ — максимально возможное значение $$$(a \oplus b) + (b \oplus c) + (a \oplus c)$$$ при $$$0 \le a, b, c \le 8$$$.