import e from "./_cloneArrayBuffer.js";
import t from "./_cloneTypedArray.js";
import n from "./_cloneDataView.js";
import r from "./_cloneRegExp.js";
import i from "./_cloneSymbol.js";
//#region ../../node_modules/lodash-es/_initCloneByTag.js
var a = "[object Boolean]", o = "[object Date]", s = "[object Map]", c = "[object Number]", l = "[object RegExp]", u = "[object Set]", d = "[object String]", f = "[object Symbol]", p = "[object ArrayBuffer]", m = "[object DataView]", h = "[object Float32Array]", g = "[object Float64Array]", _ = "[object Int8Array]", v = "[object Int16Array]", y = "[object Int32Array]", b = "[object Uint8Array]", x = "[object Uint8ClampedArray]", S = "[object Uint16Array]", C = "[object Uint32Array]";
function w(w, T, E) {
	var D = w.constructor;
	switch (T) {
		case p: return e(w);
		case a:
		case o: return new D(+w);
		case m: return n(w, E);
		case h:
		case g:
		case _:
		case v:
		case y:
		case b:
		case x:
		case S:
		case C: return t(w, E);
		case s: return new D();
		case c:
		case d: return new D(w);
		case l: return r(w);
		case u: return new D();
		case f: return i(w);
	}
}
//#endregion
export { w as default };
