"use client";
import { __require as d } from "./_baseTimes.js";
import { __require as L } from "./isArguments.js";
import { __require as T } from "./isArray.js";
import { __require as x } from "./isBuffer.js";
import { __require as K } from "./_isIndex.js";
import { __require as O } from "./isTypedArray.js";
var o, u;
function R() {
  if (u) return o;
  u = 1;
  var _ = d(), p = L(), m = T(), q = x(), y = K(), g = O(), h = Object.prototype, A = h.hasOwnProperty;
  function b(e, I) {
    var i = m(e), s = !i && p(e), t = !i && !s && q(e), f = !i && !s && !t && g(e), n = i || s || t || f, a = n ? _(e.length, String) : [], c = a.length;
    for (var r in e)
      (I || A.call(e, r)) && !(n && // Safari 9 has enumerable `arguments.length` in strict mode.
      (r == "length" || // Node.js 0.10 has enumerable non-index properties on buffers.
      t && (r == "offset" || r == "parent") || // PhantomJS 2 has enumerable non-index properties on typed arrays.
      f && (r == "buffer" || r == "byteLength" || r == "byteOffset") || // Skip index properties.
      y(r, c))) && a.push(r);
    return a;
  }
  return o = b, o;
}
export {
  R as __require
};
