A. Биты
ограничение по времени на тест
1 секунда
ограничение по памяти на тест
256 мегабайт
ввод
stdin
вывод
stdout

Обозначим за количество единиц в двоичной записи целого неотрицательного числа x.

Вам дано несколько запросов, каждый в виде пары целых чисел l и r. Для каждого запроса найдите такое x, что l ≤ x ≤ r, а максимально. Если таких чисел несколько, то требуется найти наименьшее из них.

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

Первая строка содержит целое число n — количество запросов (1 ≤ n ≤ 10000).

Следующие n строк содержат по два числа li, ri — параметры для очередного запроса (0 ≤ li ≤ ri ≤ 1018).

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

На каждый запрос выведите требуемое число в отдельной строке.

Примеры
Входные данные
3
1 2
2 4
1 10
Выходные данные
1
3
7
Примечание

Двоичные представления чисел от 1 до 10 выглядят следующим образом:

110 = 12

210 = 102

310 = 112

410 = 1002

510 = 1012

610 = 1102

710 = 1112

810 = 10002

910 = 10012

1010 = 10102