import v from "./_Stack.js";
import B from "./_equalArrays.js";
import E from "./_equalByTag.js";
import L from "./_equalObjects.js";
import _ from "./_getTag.js";
import O from "./isArray.js";
import u from "./isBuffer.js";
import R from "./isTypedArray.js";
var S = 1, w = "[object Arguments]", P = "[object Array]", l = "[object Object]", q = Object.prototype, I = q.hasOwnProperty;
function K(r, f, p, i, g, a) {
  var m = O(r), j = O(f), e = m ? P : _(r), o = j ? P : _(f);
  e = e == w ? l : e, o = o == w ? l : o;
  var A = e == l, d = o == l, n = e == o;
  if (n && u(r)) {
    if (!u(f))
      return !1;
    m = !0, A = !1;
  }
  if (n && !A)
    return a || (a = new v()), m || R(r) ? B(r, f, p, i, g, a) : E(r, f, e, p, i, g, a);
  if (!(p & S)) {
    var y = A && I.call(r, "__wrapped__"), T = d && I.call(f, "__wrapped__");
    if (y || T) {
      var s = y ? r.value() : r, t = T ? f.value() : f;
      return a || (a = new v()), g(s, t, p, i, a);
    }
  }
  return n ? (a || (a = new v()), L(r, f, p, i, g, a)) : !1;
}
export {
  K as default
};
//# sourceMappingURL=_baseIsEqualDeep.js.map
