Cutting

아직 제출이 없습니다시간 제한1초메모리 제한256 MB

문제

A given number can be cut into two non-empty numbers and replaced with the absolute value of the difference between these two numbers. It is forbidden to obtain zero after such an operation. Such a cut can be repeated several times. It is required to get the minimum possible number in the end.

입력

The first line contains an integer tt --- the number of tests.

Each of the following tt lines contains one integer nn --- the initial number for cutting.

출력

For each test, you need to output a path to get the minimum number. First print the integer number mm --- the amount of numbers in the path. Then output mm integers. The first number is an initial number, and the last one is the minimum possible number after all cuttings. The cutting must be accomplishable between adjacent numbers. If there are several solutions, output any of them.

제한

  • 1t1031 \le t \le 10^3
  • 1n10121 \le n \le 10^{12}