func_code_string: #include <bits/stdc++.h>   using namespace std;   const int N = 1000000;   bool can[2];   int a[N];   int main() {     ios::sync_with_stdio(false);     int n, x, y, l;     cin >> n >> l >> x >> y;     for (int i = 0; i < n; i++) {       cin >> a[i];     }     set<int> q;     for (int i = 0; i < n; i++) {       q.insert(a[i]);     }     for (int i = 0; i < n; i++) {       if (q.find(-x + a[i]) != q.end()) can[0] = 1;       if (q.find(-y + a[i]) != q.end()) can[1] = 1;     }     if (!can[0] && !can[1]) {       for (int i = 0; i < n; i++) {         if (q.find(a[i] - x - y) != q.end()) {           cout <<  1 n  << a[i] - x <<   n ;           return 0;         }         if (q.find(a[i] + x - y) != q.end()) {           if (0 <= a[i] + x && a[i] + x <= l)             cout <<  1 n  << a[i] + x <<   n ;           else if (0 <= a[i] - y && a[i] - y <= l)             cout <<  1 n  << a[i] - y <<   n ;           else             continue;           return 0;         }       }     }     vector<int> ans;     if (!can[0]) ans.push_back(x);     if (!can[1]) ans.push_back(y);     cout << ans.size() <<   n ;     while (ans.size()) {       cout << ans.back() <<    ;       ans.pop_back();     }     return 0;   }   