#include <bits/stdc++.h>
using namespace std;
map<int, bool> mp;
vector<int> ans;
int main() {
  int n, x, m;
  cin >> n >> m;
  for (int i = 0; i < n; i++) {
    cin >> x;
    mp[x] = true;
  }
  for (int i = 1; i < 1e9; i++) {
    if (m >= i && !mp[i]) {
      ans.push_back(i);
      m -= i;
    } else if (m < i)
      break;
  }
  cout << ans.size() << endl;
  for (auto k : ans) cout << k << " ";
  cout << endl;
}
