У цій задачі ми згадаємо великого математика Леонарда Ейлера (–) і дослідимо його добре відому функцію .
Значення для натурального числа визначається як кількість цілих чисел k~(1 \le k \le n), взаємно простих з . Два натуральні числа називаються взаємно простими, якщо їх найбільший спільний дільник дорівнює . Наприклад, \phi(6) = 2, оскільки тільки числа і взаємно прості з , тоді як , , і — ні.
Задача Ейлера формулюється наступним чином: за даним натуральним числом знайдіть усі такі натуральні числа , для яких виконується рівність \phi(x) = n.
Перший рядок містить кількість тестів t~(1 \le t \le 5). Далі йдуть рядків, кожен з яких містить одне натуральне число n~(1 \le n \le 10^{10}).
Ваша програма має вивести відповіді на задані тести. Для кожного тесту виведіть два рядки. Перший рядок повинен містити кількість розв'язків рівняння. Другий рядок — усі знайдені розв'язки, перераховані в порядку зростання. Якщо рівняння не має розв'язків, другий рядок повинен бути порожнім.
Приклад 1