#include <bits/stdc++.h>
using namespace std;
long long GCD(long long a, long long b) {
  if (b == 0)
    return a;
  else
    return GCD(b, a % b);
}
long long exgcd(long long a, long long b, long long &x, long long &y) {
  if (b == 0) {
    x = 1, y = 0;
    return a;
  }
  long long d = exgcd(b, a % b, x, y);
  long long z = x;
  x = y;
  y = z - y * (a / b);
  return d;
}
long long inv(long long a, long long m) {
  long long x, y;
  exgcd(a, m, x, y);
  return (x + m) % m;
}
int main() {
  long long n, p, w, d;
  scanf("%lld%lld%lld%lld", &n, &p, &w, &d);
  long long gcd = GCD(w, d);
  if (p % gcd == 0) {
    w /= gcd, d /= gcd, p /= gcd;
    long long x, y;
    y = (p % w * inv(d, w) % w) % w;
    x = (p - y * d) / w;
    if (x >= 0 && y >= 0 && n - x - y >= 0)
      printf("%lld %lld %lld\n", x, y, n - x - y);
    else
      printf("-1\n");
  } else
    printf("-1\n");
  return 0;
}
