#include <bits/stdc++.h>
using namespace std;
int n, m, i, x;
bitset<200010> used;
vector<int> sol;
int main() {
  cin >> n >> m;
  for (i = 1; i <= n; i++) {
    cin >> x;
    if (x <= 200000) used[x] = 1;
  }
  for (i = 1; i <= 200000; i++) {
    if (used[i]) continue;
    if (m < i) break;
    sol.push_back(i);
    m -= i;
  }
  cout << sol.size() << "\n";
  for (auto it : sol) cout << it << " ";
  return 0;
}
