#include <bits/stdc++.h>
using namespace std;
int main() {
  map<int, int> mp;
  cin >> mp[0] >> mp[1] >> mp[2] >> mp[3];
  int total = mp[0] + mp[1] + mp[2] + mp[3];
  for (int i = 0; i < 4; i++) {
    if (mp[i]) {
      vector<int> ans;
      map<int, int> tmp = mp;
      ans.push_back(i);
      tmp[i]--;
      int last = i;
      for (int i = 0; i < total - 1; i++) {
        if (tmp[last - 1]) {
          last--;
          tmp[last]--;
          ans.push_back(last);
        } else if (tmp[last + 1]) {
          last++;
          tmp[last]--;
          ans.push_back(last);
        } else {
          break;
        }
      }
      if (ans.size() == total) {
        cout << "YES\n";
        for (int i = 0; i < total; i++) {
          cout << ans[i] << " ";
        }
        return 0;
      }
    }
  }
  cout << "NO\n";
  return 0;
}
