#include <bits/stdc++.h>
using namespace std;
const int oo = 1e9;
int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(0);
  int n, l, x, y;
  cin >> n >> l >> x >> y;
  map<int, int> freq, mapper;
  vector<int> a(n);
  for (int i = (0); i < (n); ++i) {
    cin >> a[i];
    freq[a[i]]++;
  }
  int cx = 0, cy = 0;
  for (int i = (0); i < (n); ++i) {
    if (a[i] + x <= l) {
      cx |= freq.count(a[i] + x);
      mapper[a[i] + x] |= 1;
    }
    if (a[i] - x >= 0) {
      cx |= freq.count(a[i] - x);
      mapper[a[i] - x] |= 1;
    }
    if (a[i] + y <= l) {
      cy |= freq.count(a[i] + y);
      mapper[a[i] + y] |= 2;
    }
    if (a[i] - y >= 0) {
      cy |= freq.count(a[i] - y);
      mapper[a[i] - y] |= 2;
    }
  }
  int f = -1;
  for (auto m : mapper) {
    if (m.second == 3) f = m.first;
  }
  if (cx == 0 && cy == 0) {
    if (f != -1) {
      cout << 1 << '\n';
      cout << f << '\n';
    } else {
      cout << 2 << '\n';
      cout << x << " " << y << '\n';
    }
  } else if (cx == 0 && cy == 1) {
    cout << 1 << '\n';
    cout << x << '\n';
  } else if (cx == 1 && cy == 0) {
    cout << 1 << '\n';
    cout << y << '\n';
  } else {
    cout << 0 << '\n';
  }
  return 0;
}
