2와 3의 거듭제곱 합

시간 제한1초메모리 제한128 MB

문제

모든 자연수 N2^a * 3^b 꼴의 항들의 합으로 나타낼 수 있다. 여기서 ab는 0 이상의 정수이다.

표현에 포함된 서로 다른 두 항 사이에는 약수와 배수 관계가 있으면 안 된다. 즉, 한 항이 다른 항을 나누는 경우가 없어야 한다.

정수 N이 주어졌을 때, 위 조건을 만족하도록 N2^a * 3^b 꼴 항들의 합으로 나타내는 프로그램을 작성하시오.

입력

첫째 줄에 테스트 케이스의 개수 T가 주어진다. (1 <= T <= 1,000)

이후 T개의 줄에 각각 정수 N이 주어진다. (1 <= N < 2^31)

출력

각 테스트 케이스마다 먼저 항의 개수 M을 한 줄에 출력한다.

다음 M개의 줄에는 각 항을 나타내는 두 정수 a b를 공백으로 구분해 출력한다. 이 줄은 항 2^a * 3^b를 뜻한다.

출력한 항들의 합은 N이어야 하며, 출력한 어떤 두 항도 서로 약수와 배수 관계이면 안 된다.