#!/usr/bin/python3 def do_one(s): """ Idea. The first number can have 1..5 digits. Try all cases. """ answers = [] for d in range(1, 6): if len(s) < d: continue start = int(s[:d]) skipped = None n = start while d < len(s): def check_for(v): nonlocal d, n expected_len = len(str(v)) if d+expected_len <= len(s): nextnum = int(s[d:d+expected_len]) if nextnum == v: d += expected_len n = v return True return False # next number if check_for(n+1): continue if skipped == None: if check_for(n+2): skipped = n-1 continue # neither. break if len(s) == d: end = n if skipped != None: answers.append(skipped) else: if start > 1: answers.append(start-1) if end < 99999: answers.append(end+1) print (len(answers)) print (" ".join(map(str, answers))) n = int(input()) for i in range(n): do_one(input())