"use strict";
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
const _DataView = require("./_DataView.cjs");
const _Map = require("./_Map.cjs");
const _Promise = require("./_Promise.cjs");
const _Set = require("./_Set.cjs");
const _WeakMap = require("./_WeakMap.cjs");
const _baseGetTag = require("./_baseGetTag.cjs");
const _toSource = require("./_toSource.cjs");
var _getTag;
var hasRequired_getTag;
function require_getTag() {
  if (hasRequired_getTag)
    return _getTag;
  hasRequired_getTag = 1;
  var DataView = _DataView.__require(), Map = _Map.__require(), Promise2 = _Promise.__require(), Set = _Set.__require(), WeakMap = _WeakMap.__require(), baseGetTag = _baseGetTag.__require(), toSource = _toSource.__require();
  var mapTag = "[object Map]", objectTag = "[object Object]", promiseTag = "[object Promise]", setTag = "[object Set]", weakMapTag = "[object WeakMap]";
  var dataViewTag = "[object DataView]";
  var dataViewCtorString = toSource(DataView), mapCtorString = toSource(Map), promiseCtorString = toSource(Promise2), setCtorString = toSource(Set), weakMapCtorString = toSource(WeakMap);
  var getTag = baseGetTag;
  if (DataView && getTag(new DataView(new ArrayBuffer(1))) != dataViewTag || Map && getTag(new Map()) != mapTag || Promise2 && getTag(Promise2.resolve()) != promiseTag || Set && getTag(new Set()) != setTag || WeakMap && getTag(new WeakMap()) != weakMapTag) {
    getTag = function(value) {
      var result = baseGetTag(value), Ctor = result == objectTag ? value.constructor : void 0, ctorString = Ctor ? toSource(Ctor) : "";
      if (ctorString) {
        switch (ctorString) {
          case dataViewCtorString:
            return dataViewTag;
          case mapCtorString:
            return mapTag;
          case promiseCtorString:
            return promiseTag;
          case setCtorString:
            return setTag;
          case weakMapCtorString:
            return weakMapTag;
        }
      }
      return result;
    };
  }
  _getTag = getTag;
  return _getTag;
}
exports.__require = require_getTag;
//# sourceMappingURL=_getTag.cjs.map
