#include <bits/stdc++.h>
using namespace std;
int main() {
  long long a, b, c, d;
  scanf("%lld", &a);
  scanf("%lld", &b);
  scanf("%lld", &c);
  scanf("%lld", &d);
  if (a == 0 && b == 0 && abs(c - d) == 1) {
    printf("YES\n");
    if (d > c) {
      printf("3 ");
      for (long long i = 0; i < min(c, d); i++) {
        printf("2 3 ");
      }
    } else {
      for (long long i = 0; i < min(c, d); i++) {
        printf("2 3 ");
      }
      printf("2 ");
    }
    return 0;
  }
  if (c == 0 && d == 0 && abs(a - b) == 1) {
    printf("YES\n");
    if (a > b) {
      printf("0 ");
      for (long long i = 0; i < min(a, b); i++) {
        printf("1 0 ");
      }
    } else {
      for (long long i = 0; i < min(a, b); i++) {
        printf("1 0 ");
      }
      printf("1 ");
    }
    return 0;
  }
  if (a > b || d > c) {
    printf("NO\n");
    return 0;
  }
  if (a == b && c != d && d != c - 1) {
    printf("NO\n");
    return 0;
  }
  if (c == d && a != b && a != b - 1) {
    printf("NO\n");
    return 0;
  }
  if ((b - a + 1 == c - d) || (b - a == c - d) || (b - a == c - d + 1)) {
    printf("YES\n");
    if (b - a == c - d + 1) {
      printf("1 ");
      b--;
    }
    for (long long i = 0; i < a; i++) {
      printf("0 1 ");
      b--;
    }
    for (long long i = 0; i < b; i++) {
      printf("2 1 ");
      c--;
    }
    for (long long i = 0; i < d; i++) {
      printf("2 3 ");
      c--;
    }
    if (c) printf("2");
  } else {
    printf("NO\n");
  }
}
