import R from "./_Stack.js";
import O from "./_baseIsEqual.js";
var _ = 1, h = 2;
function L(e, p, i, v) {
  var n = i.length, f = n;
  if (e == null)
    return !f;
  for (e = Object(e); n--; ) {
    var r = i[n];
    if (r[2] ? r[1] !== e[r[0]] : !(r[0] in e))
      return !1;
  }
  for (; ++n < f; ) {
    r = i[n];
    var u = r[0], l = e[u], A = r[1];
    if (r[2]) {
      if (l === void 0 && !(u in e))
        return !1;
    } else {
      var E = new R(), s;
      if (!(s === void 0 ? O(A, l, _ | h, v, E) : s))
        return !1;
    }
  }
  return !0;
}
export {
  L as default
};
