import R from "./_getAllKeys.js";
var _ = R, S = 1, E = Object.prototype, F = E.hasOwnProperty;
function G(r, n, A, a, q, f) {
  var l = A & S, t = _(r), P = t.length, x = _(n), K = x.length;
  if (P != K && !l)
    return !1;
  for (var v = P; v--; ) {
    var i = t[v];
    if (!(l ? i in n : F.call(n, i)))
      return !1;
  }
  var O = f.get(r), w = f.get(n);
  if (O && w)
    return O == n && w == r;
  var s = !0;
  f.set(r, n), f.set(n, r);
  for (var d = l; ++v < P; ) {
    i = t[v];
    var e = r[i], p = n[i];
    if (a)
      var L = l ? a(p, e, i, n, r, f) : a(e, p, i, r, n, f);
    if (!(L === void 0 ? e === p || q(e, p, A, a, f) : L)) {
      s = !1;
      break;
    }
    d || (d = i == "constructor");
  }
  if (s && !d) {
    var u = r.constructor, g = n.constructor;
    u != g && "constructor" in r && "constructor" in n && !(typeof u == "function" && u instanceof u && typeof g == "function" && g instanceof g) && (s = !1);
  }
  return f.delete(r), f.delete(n), s;
}
var M = G;
export {
  M as default
};
//# sourceMappingURL=_equalObjects.js.map
