#include <bits/stdc++.h>
int main() {
  int n, i, j, cnt = 0, sum = 0, cost;
  scanf("%d %d", &n, &cost);
  int ara[n], ara2[100000];
  for (i = 0; i < n; i++) {
    scanf("%d", &ara[i]);
  }
  std::sort(ara, ara + n);
  int x = 0, z = 0;
  for (i = 1; i <= cost; i++) {
    sum += i;
    cnt++;
    if (i == ara[x] && x < n) {
      cnt--;
      sum -= ara[x];
      x++;
      continue;
    }
    if (sum > cost) {
      sum -= i;
      cnt--;
      i--;
      break;
    } else if (sum == cost) {
      ara2[z] = i;
      z++;
      break;
    } else {
      ara2[z] = i;
      z++;
    }
  }
  printf("%d\n", cnt);
  for (j = 0; j < z; j++) printf("%d ", ara2[j]);
}
