codeforces#P1558A. Charmed by the Game

Charmed by the Game

Description

Alice and Borys are playing tennis.

A tennis match consists of games. In each game, one of the players is serving and the other one is receiving.

Players serve in turns: after a game where Alice is serving follows a game where Borys is serving, and vice versa.

Each game ends with a victory of one of the players. If a game is won by the serving player, it's said that this player holds serve. If a game is won by the receiving player, it's said that this player breaks serve.

It is known that Alice won $a$ games and Borys won $b$ games during the match. It is unknown who served first and who won which games.

Find all values of $k$ such that exactly $k$ breaks could happen during the match between Alice and Borys in total.

Each test contains multiple test cases. The first line contains the number of test cases $t$ ($1 \le t \le 10^3$). Description of the test cases follows.

Each of the next $t$ lines describes one test case and contains two integers $a$ and $b$ ($0 \le a, b \le 10^5$; $a + b > 0$) — the number of games won by Alice and Borys, respectively.

It is guaranteed that the sum of $a + b$ over all test cases does not exceed $2 \cdot 10^5$.

For each test case print two lines.

In the first line, print a single integer $m$ ($1 \le m \le a + b + 1$) — the number of values of $k$ such that exactly $k$ breaks could happen during the match.

In the second line, print $m$ distinct integers $k_1, k_2, \ldots, k_m$ ($0 \le k_1 < k_2 < \ldots < k_m \le a + b$) — the sought values of $k$ in increasing order.

Input

Each test contains multiple test cases. The first line contains the number of test cases $t$ ($1 \le t \le 10^3$). Description of the test cases follows.

Each of the next $t$ lines describes one test case and contains two integers $a$ and $b$ ($0 \le a, b \le 10^5$; $a + b > 0$) — the number of games won by Alice and Borys, respectively.

It is guaranteed that the sum of $a + b$ over all test cases does not exceed $2 \cdot 10^5$.

Output

For each test case print two lines.

In the first line, print a single integer $m$ ($1 \le m \le a + b + 1$) — the number of values of $k$ such that exactly $k$ breaks could happen during the match.

In the second line, print $m$ distinct integers $k_1, k_2, \ldots, k_m$ ($0 \le k_1 < k_2 < \ldots < k_m \le a + b$) — the sought values of $k$ in increasing order.

Samples

3
2 1
1 1
0 5
4
0 1 2 3
2
0 2
2
2 3

Note

In the first test case, any number of breaks between $0$ and $3$ could happen during the match:

  • Alice holds serve, Borys holds serve, Alice holds serve: $0$ breaks;
  • Borys holds serve, Alice holds serve, Alice breaks serve: $1$ break;
  • Borys breaks serve, Alice breaks serve, Alice holds serve: $2$ breaks;
  • Alice breaks serve, Borys breaks serve, Alice breaks serve: $3$ breaks.

In the second test case, the players could either both hold serves ($0$ breaks) or both break serves ($2$ breaks).

In the third test case, either $2$ or $3$ breaks could happen:

  • Borys holds serve, Borys breaks serve, Borys holds serve, Borys breaks serve, Borys holds serve: $2$ breaks;
  • Borys breaks serve, Borys holds serve, Borys breaks serve, Borys holds serve, Borys breaks serve: $3$ breaks.