对于非负整数 $$$x$$$,我们定义 or-shift 变换 $$$f(x)$$$ 为 $$$x$$$ 和 $$$2 x$$$ 的按位或$$$^{\text{∗}}$$$,即: $$$$$$ f(x) = x \mathbin{|} (2 x) $$$$$$
给定一个非负整数 $$$y$$$,请你判断是否存在一个非负整数 $$$x$$$,使得 $$$f(x) = y$$$。
如果存在,输出任意一个满足要求的 $$$x$$$;否则,输出 $$$-1$$$。
$$$^{\text{∗}}$$$按位或(bitwise OR)是一种二进制按位运算,记作 $$$a \mathbin{|} b$$$。它对两个无符号整数对应二进制位分别进行逻辑或运算:若某一位上至少有一个数位为 $$$1$$$,则结果的该位为 $$$1$$$;否则为 $$$0$$$。例如 $$$ 5 \mathbin{|} 3 =(0101)_2 \mathbin{|} (0011)_2 =(0111)_2 =7 $$$。
本题的输入包含多组测试用例。
第一行一个整数 $$$T$$$($$$1 \leq T \leq 10^4$$$),表示测试用例的数量。对于每组测试用例:
对于每组测试用例:
如果存在多个满足要求的 $$$x$$$,你可以输出其中任意一个。
8015191819191574711451442865612801152921504606846975
058108117297-12000000000576460752303423487