codeforces#P1325D. Ehab the Xorcist

    ID: 30980 远端评测题 1000ms 256MiB 尝试: 0 已通过: 0 难度: 5 上传者: 标签>bitmasksconstructive algorithmsgreedynumber theory*1700

Ehab the Xorcist

Description

Given 2 integers $u$ and $v$, find the shortest array such that bitwise-xor of its elements is $u$, and the sum of its elements is $v$.

The only line contains 2 integers $u$ and $v$ $(0 \le u,v \le 10^{18})$.

If there's no array that satisfies the condition, print "-1". Otherwise:

The first line should contain one integer, $n$, representing the length of the desired array. The next line should contain $n$ positive integers, the array itself. If there are multiple possible answers, print any.

Input

The only line contains 2 integers $u$ and $v$ $(0 \le u,v \le 10^{18})$.

Output

If there's no array that satisfies the condition, print "-1". Otherwise:

The first line should contain one integer, $n$, representing the length of the desired array. The next line should contain $n$ positive integers, the array itself. If there are multiple possible answers, print any.

Samples

2 4
2
3 1
1 3
3
1 1 1
8 5
-1
0 0
0

Note

In the first sample, $3\oplus 1 = 2$ and $3 + 1 = 4$. There is no valid array of smaller length.

Notice that in the fourth sample the array is empty.