#include <bits/stdc++.h>
using namespace std;
int sum(int n) {
  int ans = 0;
  while (n) {
    ans += n % 10;
    n /= 10;
  }
  return ans;
}
bool isvisited[10000];
int main() {
  int n, i;
  memset(isvisited, false, sizeof isvisited);
  int maks = 0;
  scanf("%d", &n);
  vector<int> ans;
  for (i = 1; i <= 81; i++) {
    int bil = n - i;
    if (sum(bil) == i) {
      ans.push_back(bil);
    }
  }
  printf("%d\n", ans.size());
  for (i = ans.size() - 1; i >= 0; i--) {
    printf("%d\n", ans[i]);
  }
  return 0;
};
