#include <bits/stdc++.h>
using namespace std;
int n, m, a, b, c, l, r, q;
int step, delta;
int d[500005];
vector<int> ans;
char used[500005];
int cnt, cur;
int main() {
  scanf("%d %d", &n, &m);
  for (int i = 0; i < n; i++) {
    scanf("%d", &cur);
    if (cur < 500005 - 5) used[cur] = 1;
  }
  for (int i = 1; m >= i; i++)
    if (!used[i]) {
      ans.push_back(i);
      m -= i;
    }
  printf("%d\n", ans.size());
  for (int i = 0; i < ans.size(); i++) printf("%d ", ans[i]);
  return 0;
}
