给定一对正整数 $a$ 和 $b$ ($a \le b$)。你的任务是在闭区间 $[a, b]$ 内找到最稀疏的整数,即二进制表示中 $1$ 的个数最少的整数。如果存在多个这样的整数,则输出其中最小的一个。
例如,假设 $a = 10$,$b = 13$。区间 $[10, 13]$ 内的整数为 10、11、12 和 13,它们的二进制表示分别为 1010、1011、1100 和 1101。在这种情况下,答案是 10,因为 10 和 12 的二进制表示中 $1$ 的个数最少,且 10 小于 12。
输入格式
输入包含一个测试用例,格式如下:
$a$ $b$
其中 $a$ 和 $b$ ($a \le b$) 为 $1$ 到 $10^{18}$ 之间的整数。
输出格式
输出一行,包含区间 $[a, b]$ 内最稀疏的整数中最小的一个。
样例
样例输入 1
10 13
样例输出 1
10
样例输入 2
11 15
样例输出 2
12
样例输入 3
11 20
样例输出 3
16
样例输入 4
1 1000000000000000000
样例输出 4
1
样例输入 5
9876543210 9876543210
样例输出 5
9876543210