#include <bits/stdc++.h>
using namespace std;
int N, M;
int A[100010] = {0};
int Ans[100010] = {0};
int Ansp = 0;
int main() {
  cin >> N >> M;
  for (int i = 1; i <= N; i++) scanf("%d", &A[i]);
  sort(A + 1, A + N + 1);
  int t = 0;
  int cnt = 1;
  for (int i = 1; i <= 1000000000; i++) {
    if (i > M) break;
    if (cnt <= N && A[cnt] == i) {
      cnt++;
      continue;
    }
    M -= i;
    Ans[++Ansp] = i;
  }
  cout << Ansp << endl;
  for (int i = 1; i <= Ansp; i++) printf("%d ", Ans[i]);
  return 0;
}
