#include <bits/stdc++.h>
using namespace std;
const double pi = acos(-1.0);
struct Data {
  long long x1, y1;
  long long x2, y2;
} d, newd, ans;
inline bool operator<(const Data a, const Data b) {
  if (a.x1 != b.x1)
    return a.x1 < b.x1;
  else if (a.y1 != b.y1)
    return a.y1 < b.y1;
  else if (a.x2 != b.x2)
    return a.x2 < b.x2;
  else
    return a.y2 < b.y2;
}
long long n, m, a, b, x, y, dx, dy;
bool first;
void update_ans(Data d) {
  if (d.y1 < 0) {
    long long t = 0 - d.y1;
    d.y1 += t;
    d.y2 += t;
  } else if (d.y2 > m) {
    long long t = d.y2 - m;
    d.y2 -= t;
    d.y1 -= t;
  }
  if (d.x1 < 0) {
    long long t = 0 - d.x1;
    d.x1 += t;
    d.x2 += t;
  } else if (d.x2 > n) {
    long long t = d.x2 - n;
    d.x2 -= t;
    d.x1 -= t;
  }
  if (first) {
    first = false;
    ans = d;
  } else if (d < ans) {
    ans = d;
  }
}
long long gcd(long long x, long long y) { return y ? gcd(y, x % y) : x; }
int main() {
  first = true;
  cin >> n >> m >> x >> y >> a >> b;
  long long g = gcd(a, b);
  a /= g;
  b /= g;
  long long t1 = n / a;
  long long t2 = m / b;
  long long t = min(t1, t2);
  dx = t * a;
  dy = t * b;
  if (dx % 2 == 0 && dy % 2 == 0) {
    newd.x1 = x - (dx >> 1);
    newd.y1 = y - (dy >> 1);
    newd.x2 = x + (dx >> 1);
    newd.y2 = y + (dy >> 1);
    update_ans(newd);
  } else if (dx % 2 && dy % 2 == 0) {
    newd.y1 = y - (dy >> 1);
    newd.y2 = y + (dy >> 1);
    newd.x1 = x - (dx >> 1);
    newd.x2 = newd.x1 + dx;
    update_ans(newd);
    newd.x1 -= 1;
    newd.x2 = newd.x1 + dx;
    update_ans(newd);
  } else if (dx % 2 == 0 && dy % 2) {
    newd.x1 = x - (dx >> 1);
    newd.x2 = x + (dx >> 1);
    newd.y1 = y - (dy >> 1);
    newd.y2 = newd.y1 + dy;
    update_ans(newd);
    newd.y1 -= 1;
    newd.y2 = newd.y1 + dy;
    update_ans(newd);
  } else {
    newd.x1 = x - (dx >> 1);
    newd.x2 = newd.x1 + dx;
    newd.y1 = y - (dy >> 1);
    newd.y2 = newd.y1 + dy;
    update_ans(newd);
    newd.x1 = x - (dx >> 1) - 1;
    newd.x2 = newd.x1 + dx;
    newd.y1 = y - (dy >> 1);
    newd.y2 = newd.y1 + dy;
    update_ans(newd);
    newd.x1 = x - (dx >> 1);
    newd.x2 = newd.x1 + dx;
    newd.y1 = y - (dy >> 1) - 1;
    newd.y2 = newd.y1 + dy;
    update_ans(newd);
    newd.x1 = x - (dx >> 1) - 1;
    newd.x2 = newd.x1 + dx;
    newd.y1 = y - (dy >> 1) - 1;
    newd.y2 = newd.y1 + dy;
    update_ans(newd);
  }
  printf("%lld %lld %lld %lld\n", ans.x1, ans.y1, ans.x2, ans.y2);
}
