def make_divisors(n): divisors = [] for i in range(1, int(n**0.5)+1): if n % i == 0: divisors.append(i) if i != n // i: divisors.append(n//i) divisors.sort() return divisors T = int(input()) AB = [list(map(int,input().split())) for _ in range(T)] for a,b in AB: Q1 = {a:[]} Q2 = {} S1 = {} i = 0 while not(b in Q1.keys()) and i < 120: for q,L in Q1.items(): D = make_divisors(q) for d in D: qt = q + d if not(qt in Q2.keys()): Q2[qt] = L + [d] Q1,Q2 = Q2,Q1 i += 1 print(len(Q1[b])) print(*Q1[b])