#include <bits/stdc++.h>
using namespace std;
inline long long normalize(long long x, long long mod) {
  x %= mod;
  if (x < 0) x += mod;
  return x;
}
long long extgcd(long long a, long long b, long long& x, long long& y) {
  if (a == 0) {
    x = 0;
    y = 1;
    return b;
  }
  long long x1, y1;
  long long d = extgcd(b % a, a, x1, y1);
  x = y1 - (b / a) * x1;
  y = x1;
  return d;
}
struct query {
  long long rem;
  long long mod;
  query(long long inp_rem, long long inp_mod) {
    rem = inp_rem;
    mod = inp_mod;
  }
};
struct query_ans {
  long long x;
  long long lcm;
  query_ans(long long inp_x, long long inp_lcm) {
    x = inp_x;
    lcm = inp_lcm;
  }
};
query_ans crt(vector<query> queries) {
  for (auto& currquery : queries) {
    currquery.rem = normalize(currquery.rem, currquery.mod);
  }
  query currquery = queries.back();
  queries.pop_back();
  long long x = currquery.rem;
  long long lcm = currquery.mod;
  long long d = 1;
  long long factor = 1;
  long long x_dash, y_dash, old_lcm;
  for (auto currquery : queries) {
    long long a2 = currquery.rem;
    long long n2 = currquery.mod;
    d = extgcd(lcm, n2, x_dash, y_dash);
    if ((a2 - x) % d != 0) {
      x = -1;
      break;
    }
    old_lcm = lcm;
    lcm = (lcm / d) * n2;
    factor = (a2 - x) / d;
    x = normalize(x + normalize(normalize(normalize(x_dash, n2 / d) *
                                              normalize(factor, n2 / d),
                                          n2 / d) *
                                    old_lcm,
                                lcm),
                  lcm);
  }
  return query_ans(x, lcm);
}
int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(NULL);
  long long n, m, x0, y0, vx, vy;
  cin >> n >> m >> x0 >> y0 >> vx >> vy;
  vector<query> queries;
  queries.push_back(query(vy * x0, n));
  queries.push_back(query(vx * y0, m));
  auto ans = crt(queries);
  long long z = ans.x;
  long long lcm = ans.lcm;
  if (z < 0) {
    cout << -1 << "\n";
  } else {
    long long x;
    long long y;
    if (vy == 0) {
      if (z != 0) {
        cout << -1 << "\n";
        return 0;
      }
      y = y0;
      if (vx < 0) {
        x = 0;
      } else {
        x = n;
      }
    } else if (vx == 0) {
      if (z != 0) {
        cout << -1 << "\n";
        return 0;
      }
      x = x0;
      if (vy < 0) {
        y = 0;
      } else {
        y = m;
      }
    } else {
      x = (vy * x0 - z) / (vy);
      y = (vx * y0 - z) / (vx);
      if ((x - x0) * vx < 0) {
        z -= lcm;
        x = (vy * x0 - z) / (vy);
        y = (vx * y0 - z) / (vx);
      }
    }
    x /= n;
    y /= m;
    cout << n * normalize(x, 2) << " " << m * normalize(y, 2) << "\n";
  }
}
