#include #include #include #include #include using namespace std; typedef long long ll; typedef pair pii; #define pb push_back #define sz(a) ((int)a.size()) #define mem(a, b) memset(a, b, sizeof a) #define lson (rt << 1) #define rson (rt << 1 | 1) #define gmid (l + r >> 1) #define lnum (mid - l + 1) #define rnum (r - mid) const int maxn = 3e5 + 5; const int maxm = 1e6 + 5; const int mod = 1e9 + 7; const int inf = 0x3f3f3f3f; vector ans; int getSum(ll x){ int ret = 0; while(x){ ret += x % 10; x /= 10; } return ret; } int main(){ ios::sync_with_stdio(0); cin.tie(0); int t; scanf("%d", &t); while(t--){ int n; scanf("%d", &n); int sum = getSum(n); for(int i = 1; i <= sum; ++i){ if(n % i || sum % i) continue; ans.pb(i); } printf("%d\n", sz(ans)); for(int i = 0; i < sz(ans); ++i) printf("%d%c", ans[i], i == sz(ans) - 1 ? '\n' : ' '); ans.clear(); } return 0; }