#include <bits/stdc++.h>
long long n, p;
int d, w;
inline long long read() {
  long long x = 0;
  char ch = getchar();
  for (; ch > '9' || ch < '0'; ch = getchar())
    ;
  for (; ch >= '0' && ch <= '9'; ch = getchar())
    x = (x << 1) + (x << 3) + (ch ^ 48);
  return x;
}
inline int gcd(int a, int b) { return !b ? a : gcd(b, a % b); }
int main() {
  n = read();
  p = read();
  w = read();
  d = read();
  if (!(p % gcd(w, d))) {
    for (int y = 0; y < w; ++y) {
      if ((long long)p - y * d >= 0 && !((p - (long long)y * d) % w)) {
        long long x = (long long)(p - y * d) / w;
        if (x + y <= n) {
          printf("%lld %d %lld", x, y, n - x - y);
          return 0;
        }
      }
    }
  }
  printf("-1");
  return 0;
}
