#include #include #include #include using namespace std; int a[2000]; int main() { int t; cin >> t; while (t) { t--; string s; cin >> s; int len = s.size(); for (int i = 0; i < len; i++) { a[i] = s[len - i - 1] - '0'; } vector ans; for (int d = 2; d <= 1000; d++) { int ok = 1; while (ok) { int x = 0; for (int j = len - 1; j >= 0; j--) { x = (x * 10 + a[j]) % d; } if (x) ok = 0; else { for (int j = len - 1; j >= 0; j--) { x = (x * 10 + a[j]); a[j] = x / d; x %= d; } while (a[len - 1] == 0) len--; ans.push_back(d); } } } int add; if ((a[len - 1] != 1) || (len != 1)) add = 1; else add = 0; cout << ans.size() + add << endl; for (int i = 0; i < ans.size(); i++) cout << ans[i] << endl; if ((a[len - 1] != 1) || (len != 1)) { for (int i = len - 1; i >= 0; i--) cout << a[i]; cout << endl; } } return 0; }