{"version":3,"file":"9e82d048-b191cfffa7643c40457d.js","mappings":"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","sources":["webpack://bubble-corporate-site/./node_modules/auth0-js/dist/auth0.min.esm.js"],"sourcesContent":["/**\n * auth0-js v9.28.0\n * Author: Auth0\n * Date: 2024-10-21\n * License: MIT\n */\n\nvar commonjsGlobal = \"undefined\" != typeof globalThis ? globalThis : \"undefined\" != typeof window ? window : \"undefined\" != typeof global ? global : \"undefined\" != typeof self ? self : {};\nfunction createCommonjsModule(fn, module) {\n return fn(module = {\n exports: {}\n }, module.exports), module.exports;\n}\nvar urlJoin = createCommonjsModule(function (module) {\n var context, definition;\n context = commonjsGlobal, definition = function () {\n function normalize(strArray) {\n var resultArray = [];\n if (0 === strArray.length) return \"\";\n if (\"string\" != typeof strArray[0]) throw new TypeError(\"Url must be a string. Received \" + strArray[0]);\n if (strArray[0].match(/^[^/:]+:\\/*$/) && strArray.length > 1) {\n var first = strArray.shift();\n strArray[0] = first + strArray[0];\n }\n strArray[0].match(/^file:\\/\\/\\//) ? strArray[0] = strArray[0].replace(/^([^/:]+):\\/*/, \"$1:///\") : strArray[0] = strArray[0].replace(/^([^/:]+):\\/*/, \"$1://\");\n for (var i = 0; i < strArray.length; i++) {\n var component = strArray[i];\n if (\"string\" != typeof component) throw new TypeError(\"Url must be a string. Received \" + component);\n \"\" !== component && (i > 0 && (component = component.replace(/^[\\/]+/, \"\")), component = i < strArray.length - 1 ? component.replace(/[\\/]+$/, \"\") : component.replace(/[\\/]+$/, \"/\"), resultArray.push(component));\n }\n var str = resultArray.join(\"/\"),\n parts = (str = str.replace(/\\/(\\?|&|#[^!])/g, \"$1\")).split(\"?\");\n return str = parts.shift() + (parts.length > 0 ? \"?\" : \"\") + parts.join(\"&\");\n }\n return function () {\n return normalize(\"object\" == typeof arguments[0] ? arguments[0] : [].slice.call(arguments));\n };\n }, module.exports ? module.exports = definition() : context.urljoin = definition();\n }),\n esErrors = Error,\n _eval = EvalError,\n range = RangeError,\n ref = ReferenceError,\n syntax = SyntaxError,\n type = TypeError,\n uri = URIError,\n origSymbol = \"undefined\" != typeof Symbol && Symbol,\n test = {\n foo: {}\n },\n $Object = Object,\n ERROR_MESSAGE = \"Function.prototype.bind called on incompatible \",\n toStr = Object.prototype.toString,\n max = Math.max,\n concatty = function (a, b) {\n for (var arr = [], i = 0; i < a.length; i += 1) arr[i] = a[i];\n for (var j = 0; j < b.length; j += 1) arr[j + a.length] = b[j];\n return arr;\n },\n slicy = function (arrLike, offset) {\n for (var arr = [], i = offset || 0, j = 0; i < arrLike.length; i += 1, j += 1) arr[j] = arrLike[i];\n return arr;\n },\n joiny = function (arr, joiner) {\n for (var str = \"\", i = 0; i < arr.length; i += 1) str += arr[i], i + 1 < arr.length && (str += joiner);\n return str;\n },\n functionBind = Function.prototype.bind || function (that) {\n var target = this;\n if (\"function\" != typeof target || \"[object Function]\" !== toStr.apply(target)) throw new TypeError(ERROR_MESSAGE + target);\n for (var bound, args = slicy(arguments, 1), binder = function () {\n if (this instanceof bound) {\n var result = target.apply(this, concatty(args, arguments));\n return Object(result) === result ? result : this;\n }\n return target.apply(that, concatty(args, arguments));\n }, boundLength = max(0, target.length - args.length), boundArgs = [], i = 0; i < boundLength; i++) boundArgs[i] = \"$\" + i;\n if (bound = Function(\"binder\", \"return function (\" + joiny(boundArgs, \",\") + \"){ return binder.apply(this,arguments); }\")(binder), target.prototype) {\n var Empty = function () {};\n Empty.prototype = target.prototype, bound.prototype = new Empty(), Empty.prototype = null;\n }\n return bound;\n },\n call = Function.prototype.call,\n $hasOwn = Object.prototype.hasOwnProperty,\n hasown = functionBind.call(call, $hasOwn),\n $Function = Function,\n getEvalledConstructor = function (expressionSyntax) {\n try {\n return $Function('\"use strict\"; return (' + expressionSyntax + \").constructor;\")();\n } catch (e) {}\n },\n $gOPD = Object.getOwnPropertyDescriptor;\nif ($gOPD) try {\n $gOPD({}, \"\");\n} catch (e) {\n $gOPD = null;\n}\nvar throwTypeError = function () {\n throw new type();\n },\n ThrowTypeError = $gOPD ? function () {\n try {\n return throwTypeError;\n } catch (calleeThrows) {\n try {\n return $gOPD(arguments, \"callee\").get;\n } catch (gOPDthrows) {\n return throwTypeError;\n }\n }\n }() : throwTypeError,\n hasSymbols$1 = \"function\" == typeof origSymbol && \"function\" == typeof Symbol && \"symbol\" == typeof origSymbol(\"foo\") && \"symbol\" == typeof Symbol(\"bar\") && function () {\n if (\"function\" != typeof Symbol || \"function\" != typeof Object.getOwnPropertySymbols) return !1;\n if (\"symbol\" == typeof Symbol.iterator) return !0;\n var obj = {},\n sym = Symbol(\"test\"),\n symObj = Object(sym);\n if (\"string\" == typeof sym) return !1;\n if (\"[object Symbol]\" !== Object.prototype.toString.call(sym)) return !1;\n if (\"[object Symbol]\" !== Object.prototype.toString.call(symObj)) return !1;\n for (sym in obj[sym] = 42, obj) return !1;\n if (\"function\" == typeof Object.keys && 0 !== Object.keys(obj).length) return !1;\n if (\"function\" == typeof Object.getOwnPropertyNames && 0 !== Object.getOwnPropertyNames(obj).length) return !1;\n var syms = Object.getOwnPropertySymbols(obj);\n if (1 !== syms.length || syms[0] !== sym) return !1;\n if (!Object.prototype.propertyIsEnumerable.call(obj, sym)) return !1;\n if (\"function\" == typeof Object.getOwnPropertyDescriptor) {\n var descriptor = Object.getOwnPropertyDescriptor(obj, sym);\n if (42 !== descriptor.value || !0 !== descriptor.enumerable) return !1;\n }\n return !0;\n }(),\n hasProto$1 = {\n __proto__: test\n }.foo === test.foo && !({\n __proto__: null\n } instanceof $Object),\n getProto = Object.getPrototypeOf || (hasProto$1 ? function (x) {\n return x.__proto__;\n } : null),\n needsEval = {},\n TypedArray = \"undefined\" != typeof Uint8Array && getProto ? getProto(Uint8Array) : void 0,\n INTRINSICS = {\n __proto__: null,\n \"%AggregateError%\": \"undefined\" == typeof AggregateError ? void 0 : AggregateError,\n \"%Array%\": Array,\n \"%ArrayBuffer%\": \"undefined\" == typeof ArrayBuffer ? void 0 : ArrayBuffer,\n \"%ArrayIteratorPrototype%\": hasSymbols$1 && getProto ? getProto([][Symbol.iterator]()) : void 0,\n \"%AsyncFromSyncIteratorPrototype%\": void 0,\n \"%AsyncFunction%\": needsEval,\n \"%AsyncGenerator%\": needsEval,\n \"%AsyncGeneratorFunction%\": needsEval,\n \"%AsyncIteratorPrototype%\": needsEval,\n \"%Atomics%\": \"undefined\" == typeof Atomics ? void 0 : Atomics,\n \"%BigInt%\": \"undefined\" == typeof BigInt ? void 0 : BigInt,\n \"%BigInt64Array%\": \"undefined\" == typeof BigInt64Array ? void 0 : BigInt64Array,\n \"%BigUint64Array%\": \"undefined\" == typeof BigUint64Array ? void 0 : BigUint64Array,\n \"%Boolean%\": Boolean,\n \"%DataView%\": \"undefined\" == typeof DataView ? void 0 : DataView,\n \"%Date%\": Date,\n \"%decodeURI%\": decodeURI,\n \"%decodeURIComponent%\": decodeURIComponent,\n \"%encodeURI%\": encodeURI,\n \"%encodeURIComponent%\": encodeURIComponent,\n \"%Error%\": esErrors,\n \"%eval%\": eval,\n \"%EvalError%\": _eval,\n \"%Float32Array%\": \"undefined\" == typeof Float32Array ? void 0 : Float32Array,\n \"%Float64Array%\": \"undefined\" == typeof Float64Array ? void 0 : Float64Array,\n \"%FinalizationRegistry%\": \"undefined\" == typeof FinalizationRegistry ? void 0 : FinalizationRegistry,\n \"%Function%\": $Function,\n \"%GeneratorFunction%\": needsEval,\n \"%Int8Array%\": \"undefined\" == typeof Int8Array ? void 0 : Int8Array,\n \"%Int16Array%\": \"undefined\" == typeof Int16Array ? void 0 : Int16Array,\n \"%Int32Array%\": \"undefined\" == typeof Int32Array ? void 0 : Int32Array,\n \"%isFinite%\": isFinite,\n \"%isNaN%\": isNaN,\n \"%IteratorPrototype%\": hasSymbols$1 && getProto ? getProto(getProto([][Symbol.iterator]())) : void 0,\n \"%JSON%\": \"object\" == typeof JSON ? JSON : void 0,\n \"%Map%\": \"undefined\" == typeof Map ? void 0 : Map,\n \"%MapIteratorPrototype%\": \"undefined\" != typeof Map && hasSymbols$1 && getProto ? getProto(new Map()[Symbol.iterator]()) : void 0,\n \"%Math%\": Math,\n \"%Number%\": Number,\n \"%Object%\": Object,\n \"%parseFloat%\": parseFloat,\n \"%parseInt%\": parseInt,\n \"%Promise%\": \"undefined\" == typeof Promise ? void 0 : Promise,\n \"%Proxy%\": \"undefined\" == typeof Proxy ? void 0 : Proxy,\n \"%RangeError%\": range,\n \"%ReferenceError%\": ref,\n \"%Reflect%\": \"undefined\" == typeof Reflect ? void 0 : Reflect,\n \"%RegExp%\": RegExp,\n \"%Set%\": \"undefined\" == typeof Set ? void 0 : Set,\n \"%SetIteratorPrototype%\": \"undefined\" != typeof Set && hasSymbols$1 && getProto ? getProto(new Set()[Symbol.iterator]()) : void 0,\n \"%SharedArrayBuffer%\": \"undefined\" == typeof SharedArrayBuffer ? void 0 : SharedArrayBuffer,\n \"%String%\": String,\n \"%StringIteratorPrototype%\": hasSymbols$1 && getProto ? getProto(\"\"[Symbol.iterator]()) : void 0,\n \"%Symbol%\": hasSymbols$1 ? Symbol : void 0,\n \"%SyntaxError%\": syntax,\n \"%ThrowTypeError%\": ThrowTypeError,\n \"%TypedArray%\": TypedArray,\n \"%TypeError%\": type,\n \"%Uint8Array%\": \"undefined\" == typeof Uint8Array ? void 0 : Uint8Array,\n \"%Uint8ClampedArray%\": \"undefined\" == typeof Uint8ClampedArray ? void 0 : Uint8ClampedArray,\n \"%Uint16Array%\": \"undefined\" == typeof Uint16Array ? void 0 : Uint16Array,\n \"%Uint32Array%\": \"undefined\" == typeof Uint32Array ? void 0 : Uint32Array,\n \"%URIError%\": uri,\n \"%WeakMap%\": \"undefined\" == typeof WeakMap ? void 0 : WeakMap,\n \"%WeakRef%\": \"undefined\" == typeof WeakRef ? void 0 : WeakRef,\n \"%WeakSet%\": \"undefined\" == typeof WeakSet ? void 0 : WeakSet\n };\nif (getProto) try {\n null.error;\n} catch (e) {\n var errorProto = getProto(getProto(e));\n INTRINSICS[\"%Error.prototype%\"] = errorProto;\n}\nvar LEGACY_ALIASES = {\n __proto__: null,\n \"%ArrayBufferPrototype%\": [\"ArrayBuffer\", \"prototype\"],\n \"%ArrayPrototype%\": [\"Array\", \"prototype\"],\n \"%ArrayProto_entries%\": [\"Array\", \"prototype\", \"entries\"],\n \"%ArrayProto_forEach%\": [\"Array\", \"prototype\", \"forEach\"],\n \"%ArrayProto_keys%\": [\"Array\", \"prototype\", \"keys\"],\n \"%ArrayProto_values%\": [\"Array\", \"prototype\", \"values\"],\n \"%AsyncFunctionPrototype%\": [\"AsyncFunction\", \"prototype\"],\n \"%AsyncGenerator%\": [\"AsyncGeneratorFunction\", \"prototype\"],\n \"%AsyncGeneratorPrototype%\": [\"AsyncGeneratorFunction\", \"prototype\", \"prototype\"],\n \"%BooleanPrototype%\": [\"Boolean\", \"prototype\"],\n \"%DataViewPrototype%\": [\"DataView\", \"prototype\"],\n \"%DatePrototype%\": [\"Date\", \"prototype\"],\n \"%ErrorPrototype%\": [\"Error\", \"prototype\"],\n \"%EvalErrorPrototype%\": [\"EvalError\", \"prototype\"],\n \"%Float32ArrayPrototype%\": [\"Float32Array\", \"prototype\"],\n \"%Float64ArrayPrototype%\": [\"Float64Array\", \"prototype\"],\n \"%FunctionPrototype%\": [\"Function\", \"prototype\"],\n \"%Generator%\": [\"GeneratorFunction\", \"prototype\"],\n \"%GeneratorPrototype%\": [\"GeneratorFunction\", \"prototype\", \"prototype\"],\n \"%Int8ArrayPrototype%\": [\"Int8Array\", \"prototype\"],\n \"%Int16ArrayPrototype%\": [\"Int16Array\", \"prototype\"],\n \"%Int32ArrayPrototype%\": [\"Int32Array\", \"prototype\"],\n \"%JSONParse%\": [\"JSON\", \"parse\"],\n \"%JSONStringify%\": [\"JSON\", \"stringify\"],\n \"%MapPrototype%\": [\"Map\", \"prototype\"],\n \"%NumberPrototype%\": [\"Number\", \"prototype\"],\n \"%ObjectPrototype%\": [\"Object\", \"prototype\"],\n \"%ObjProto_toString%\": [\"Object\", \"prototype\", \"toString\"],\n \"%ObjProto_valueOf%\": [\"Object\", \"prototype\", \"valueOf\"],\n \"%PromisePrototype%\": [\"Promise\", \"prototype\"],\n \"%PromiseProto_then%\": [\"Promise\", \"prototype\", \"then\"],\n \"%Promise_all%\": [\"Promise\", \"all\"],\n \"%Promise_reject%\": [\"Promise\", \"reject\"],\n \"%Promise_resolve%\": [\"Promise\", \"resolve\"],\n \"%RangeErrorPrototype%\": [\"RangeError\", \"prototype\"],\n \"%ReferenceErrorPrototype%\": [\"ReferenceError\", \"prototype\"],\n \"%RegExpPrototype%\": [\"RegExp\", \"prototype\"],\n \"%SetPrototype%\": [\"Set\", \"prototype\"],\n \"%SharedArrayBufferPrototype%\": [\"SharedArrayBuffer\", \"prototype\"],\n \"%StringPrototype%\": [\"String\", \"prototype\"],\n \"%SymbolPrototype%\": [\"Symbol\", \"prototype\"],\n \"%SyntaxErrorPrototype%\": [\"SyntaxError\", \"prototype\"],\n \"%TypedArrayPrototype%\": [\"TypedArray\", \"prototype\"],\n \"%TypeErrorPrototype%\": [\"TypeError\", \"prototype\"],\n \"%Uint8ArrayPrototype%\": [\"Uint8Array\", \"prototype\"],\n \"%Uint8ClampedArrayPrototype%\": [\"Uint8ClampedArray\", \"prototype\"],\n \"%Uint16ArrayPrototype%\": [\"Uint16Array\", \"prototype\"],\n \"%Uint32ArrayPrototype%\": [\"Uint32Array\", \"prototype\"],\n \"%URIErrorPrototype%\": [\"URIError\", \"prototype\"],\n \"%WeakMapPrototype%\": [\"WeakMap\", \"prototype\"],\n \"%WeakSetPrototype%\": [\"WeakSet\", \"prototype\"]\n },\n $concat = functionBind.call(Function.call, Array.prototype.concat),\n $spliceApply = functionBind.call(Function.apply, Array.prototype.splice),\n $replace = functionBind.call(Function.call, String.prototype.replace),\n $strSlice = functionBind.call(Function.call, String.prototype.slice),\n $exec = functionBind.call(Function.call, RegExp.prototype.exec),\n rePropName = /[^%.[\\]]+|\\[(?:(-?\\d+(?:\\.\\d+)?)|([\"'])((?:(?!\\2)[^\\\\]|\\\\.)*?)\\2)\\]|(?=(?:\\.|\\[\\])(?:\\.|\\[\\]|%$))/g,\n reEscapeChar = /\\\\(\\\\)?/g,\n stringToPath = function (string) {\n var first = $strSlice(string, 0, 1),\n last = $strSlice(string, -1);\n if (\"%\" === first && \"%\" !== last) throw new syntax(\"invalid intrinsic syntax, expected closing `%`\");\n if (\"%\" === last && \"%\" !== first) throw new syntax(\"invalid intrinsic syntax, expected opening `%`\");\n var result = [];\n return $replace(string, rePropName, function (match, number, quote, subString) {\n result[result.length] = quote ? $replace(subString, reEscapeChar, \"$1\") : number || match;\n }), result;\n },\n getBaseIntrinsic = function (name, allowMissing) {\n var alias,\n intrinsicName = name;\n if (hasown(LEGACY_ALIASES, intrinsicName) && (intrinsicName = \"%\" + (alias = LEGACY_ALIASES[intrinsicName])[0] + \"%\"), hasown(INTRINSICS, intrinsicName)) {\n var value = INTRINSICS[intrinsicName];\n if (value === needsEval && (value = function doEval(name) {\n var value;\n if (\"%AsyncFunction%\" === name) value = getEvalledConstructor(\"async function () {}\");else if (\"%GeneratorFunction%\" === name) value = getEvalledConstructor(\"function* () {}\");else if (\"%AsyncGeneratorFunction%\" === name) value = getEvalledConstructor(\"async function* () {}\");else if (\"%AsyncGenerator%\" === name) {\n var fn = doEval(\"%AsyncGeneratorFunction%\");\n fn && (value = fn.prototype);\n } else if (\"%AsyncIteratorPrototype%\" === name) {\n var gen = doEval(\"%AsyncGenerator%\");\n gen && getProto && (value = getProto(gen.prototype));\n }\n return INTRINSICS[name] = value, value;\n }(intrinsicName)), void 0 === value && !allowMissing) throw new type(\"intrinsic \" + name + \" exists, but is not available. Please file an issue!\");\n return {\n alias: alias,\n name: intrinsicName,\n value: value\n };\n }\n throw new syntax(\"intrinsic \" + name + \" does not exist!\");\n },\n getIntrinsic = function (name, allowMissing) {\n if (\"string\" != typeof name || 0 === name.length) throw new type(\"intrinsic name must be a non-empty string\");\n if (arguments.length > 1 && \"boolean\" != typeof allowMissing) throw new type('\"allowMissing\" argument must be a boolean');\n if (null === $exec(/^%?[^%]*%?$/, name)) throw new syntax(\"`%` may not be present anywhere but at the beginning and end of the intrinsic name\");\n var parts = stringToPath(name),\n intrinsicBaseName = parts.length > 0 ? parts[0] : \"\",\n intrinsic = getBaseIntrinsic(\"%\" + intrinsicBaseName + \"%\", allowMissing),\n intrinsicRealName = intrinsic.name,\n value = intrinsic.value,\n skipFurtherCaching = !1,\n alias = intrinsic.alias;\n alias && (intrinsicBaseName = alias[0], $spliceApply(parts, $concat([0, 1], alias)));\n for (var i = 1, isOwn = !0; i < parts.length; i += 1) {\n var part = parts[i],\n first = $strSlice(part, 0, 1),\n last = $strSlice(part, -1);\n if (('\"' === first || \"'\" === first || \"`\" === first || '\"' === last || \"'\" === last || \"`\" === last) && first !== last) throw new syntax(\"property names with quotes must have matching quotes\");\n if (\"constructor\" !== part && isOwn || (skipFurtherCaching = !0), hasown(INTRINSICS, intrinsicRealName = \"%\" + (intrinsicBaseName += \".\" + part) + \"%\")) value = INTRINSICS[intrinsicRealName];else if (null != value) {\n if (!(part in value)) {\n if (!allowMissing) throw new type(\"base intrinsic for \" + name + \" exists, but the property is not available.\");\n return;\n }\n if ($gOPD && i + 1 >= parts.length) {\n var desc = $gOPD(value, part);\n value = (isOwn = !!desc) && \"get\" in desc && !(\"originalValue\" in desc.get) ? desc.get : value[part];\n } else isOwn = hasown(value, part), value = value[part];\n isOwn && !skipFurtherCaching && (INTRINSICS[intrinsicRealName] = value);\n }\n }\n return value;\n },\n $defineProperty = getIntrinsic(\"%Object.defineProperty%\", !0) || !1;\nif ($defineProperty) try {\n $defineProperty({}, \"a\", {\n value: 1\n });\n} catch (e) {\n $defineProperty = !1;\n}\nvar esDefineProperty = $defineProperty,\n $gOPD$1 = getIntrinsic(\"%Object.getOwnPropertyDescriptor%\", !0);\nif ($gOPD$1) try {\n $gOPD$1([], \"length\");\n} catch (e) {\n $gOPD$1 = null;\n}\nvar gopd = $gOPD$1,\n defineDataProperty = function (obj, property, value) {\n if (!obj || \"object\" != typeof obj && \"function\" != typeof obj) throw new type(\"`obj` must be an object or a function`\");\n if (\"string\" != typeof property && \"symbol\" != typeof property) throw new type(\"`property` must be a string or a symbol`\");\n if (arguments.length > 3 && \"boolean\" != typeof arguments[3] && null !== arguments[3]) throw new type(\"`nonEnumerable`, if provided, must be a boolean or null\");\n if (arguments.length > 4 && \"boolean\" != typeof arguments[4] && null !== arguments[4]) throw new type(\"`nonWritable`, if provided, must be a boolean or null\");\n if (arguments.length > 5 && \"boolean\" != typeof arguments[5] && null !== arguments[5]) throw new type(\"`nonConfigurable`, if provided, must be a boolean or null\");\n if (arguments.length > 6 && \"boolean\" != typeof arguments[6]) throw new type(\"`loose`, if provided, must be a boolean\");\n var nonEnumerable = arguments.length > 3 ? arguments[3] : null,\n nonWritable = arguments.length > 4 ? arguments[4] : null,\n nonConfigurable = arguments.length > 5 ? arguments[5] : null,\n loose = arguments.length > 6 && arguments[6],\n desc = !!gopd && gopd(obj, property);\n if (esDefineProperty) esDefineProperty(obj, property, {\n configurable: null === nonConfigurable && desc ? desc.configurable : !nonConfigurable,\n enumerable: null === nonEnumerable && desc ? desc.enumerable : !nonEnumerable,\n value: value,\n writable: null === nonWritable && desc ? desc.writable : !nonWritable\n });else {\n if (!loose && (nonEnumerable || nonWritable || nonConfigurable)) throw new syntax(\"This environment does not support defining a property as non-configurable, non-writable, or non-enumerable.\");\n obj[property] = value;\n }\n },\n hasPropertyDescriptors = function () {\n return !!esDefineProperty;\n };\nhasPropertyDescriptors.hasArrayLengthDefineBug = function () {\n if (!esDefineProperty) return null;\n try {\n return 1 !== esDefineProperty([], \"length\", {\n value: 1\n }).length;\n } catch (e) {\n return !0;\n }\n};\nvar hasDescriptors = hasPropertyDescriptors(),\n $floor = getIntrinsic(\"%Math.floor%\"),\n setFunctionLength = function (fn, length) {\n if (\"function\" != typeof fn) throw new type(\"`fn` is not a function\");\n if (\"number\" != typeof length || length < 0 || length > 4294967295 || $floor(length) !== length) throw new type(\"`length` must be a positive 32-bit integer\");\n var loose = arguments.length > 2 && !!arguments[2],\n functionLengthIsConfigurable = !0,\n functionLengthIsWritable = !0;\n if (\"length\" in fn && gopd) {\n var desc = gopd(fn, \"length\");\n desc && !desc.configurable && (functionLengthIsConfigurable = !1), desc && !desc.writable && (functionLengthIsWritable = !1);\n }\n return (functionLengthIsConfigurable || functionLengthIsWritable || !loose) && (hasDescriptors ? defineDataProperty(fn, \"length\", length, !0, !0) : defineDataProperty(fn, \"length\", length)), fn;\n },\n callBind = createCommonjsModule(function (module) {\n var $apply = getIntrinsic(\"%Function.prototype.apply%\"),\n $call = getIntrinsic(\"%Function.prototype.call%\"),\n $reflectApply = getIntrinsic(\"%Reflect.apply%\", !0) || functionBind.call($call, $apply),\n $max = getIntrinsic(\"%Math.max%\");\n module.exports = function (originalFunction) {\n if (\"function\" != typeof originalFunction) throw new type(\"a function is required\");\n var func = $reflectApply(functionBind, $call, arguments);\n return setFunctionLength(func, 1 + $max(0, originalFunction.length - (arguments.length - 1)), !0);\n };\n var applyBind = function () {\n return $reflectApply(functionBind, $apply, arguments);\n };\n esDefineProperty ? esDefineProperty(module.exports, \"apply\", {\n value: applyBind\n }) : module.exports.apply = applyBind;\n }),\n $indexOf = (callBind.apply, callBind(getIntrinsic(\"String.prototype.indexOf\"))),\n callBound = function (name, allowMissing) {\n var intrinsic = getIntrinsic(name, !!allowMissing);\n return \"function\" == typeof intrinsic && $indexOf(name, \".prototype.\") > -1 ? callBind(intrinsic) : intrinsic;\n },\n semver = function (n) {\n return n && n.default || n;\n }(Object.freeze({\n __proto__: null,\n default: {}\n })),\n hasMap = \"function\" == typeof Map && Map.prototype,\n mapSizeDescriptor = Object.getOwnPropertyDescriptor && hasMap ? Object.getOwnPropertyDescriptor(Map.prototype, \"size\") : null,\n mapSize = hasMap && mapSizeDescriptor && \"function\" == typeof mapSizeDescriptor.get ? mapSizeDescriptor.get : null,\n mapForEach = hasMap && Map.prototype.forEach,\n hasSet = \"function\" == typeof Set && Set.prototype,\n setSizeDescriptor = Object.getOwnPropertyDescriptor && hasSet ? Object.getOwnPropertyDescriptor(Set.prototype, \"size\") : null,\n setSize = hasSet && setSizeDescriptor && \"function\" == typeof setSizeDescriptor.get ? setSizeDescriptor.get : null,\n setForEach = hasSet && Set.prototype.forEach,\n weakMapHas = \"function\" == typeof WeakMap && WeakMap.prototype ? WeakMap.prototype.has : null,\n weakSetHas = \"function\" == typeof WeakSet && WeakSet.prototype ? WeakSet.prototype.has : null,\n weakRefDeref = \"function\" == typeof WeakRef && WeakRef.prototype ? WeakRef.prototype.deref : null,\n booleanValueOf = Boolean.prototype.valueOf,\n objectToString = Object.prototype.toString,\n functionToString = Function.prototype.toString,\n $match = String.prototype.match,\n $slice = String.prototype.slice,\n $replace$1 = String.prototype.replace,\n $toUpperCase = String.prototype.toUpperCase,\n $toLowerCase = String.prototype.toLowerCase,\n $test = RegExp.prototype.test,\n $concat$1 = Array.prototype.concat,\n $join = Array.prototype.join,\n $arrSlice = Array.prototype.slice,\n $floor$1 = Math.floor,\n bigIntValueOf = \"function\" == typeof BigInt ? BigInt.prototype.valueOf : null,\n gOPS = Object.getOwnPropertySymbols,\n symToString = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? Symbol.prototype.toString : null,\n hasShammedSymbols = \"function\" == typeof Symbol && \"object\" == typeof Symbol.iterator,\n toStringTag = \"function\" == typeof Symbol && Symbol.toStringTag && (typeof Symbol.toStringTag === hasShammedSymbols || \"symbol\") ? Symbol.toStringTag : null,\n isEnumerable = Object.prototype.propertyIsEnumerable,\n gPO = (\"function\" == typeof Reflect ? Reflect.getPrototypeOf : Object.getPrototypeOf) || ([].__proto__ === Array.prototype ? function (O) {\n return O.__proto__;\n } : null);\nfunction addNumericSeparator(num, str) {\n if (num === 1 / 0 || num === -1 / 0 || num != num || num && num > -1e3 && num < 1e3 || $test.call(/e/, str)) return str;\n var sepRegex = /[0-9](?=(?:[0-9]{3})+(?![0-9]))/g;\n if (\"number\" == typeof num) {\n var int = num < 0 ? -$floor$1(-num) : $floor$1(num);\n if (int !== num) {\n var intStr = String(int),\n dec = $slice.call(str, intStr.length + 1);\n return $replace$1.call(intStr, sepRegex, \"$&_\") + \".\" + $replace$1.call($replace$1.call(dec, /([0-9]{3})/g, \"$&_\"), /_$/, \"\");\n }\n }\n return $replace$1.call(str, sepRegex, \"$&_\");\n}\nvar inspectCustom = semver.custom,\n inspectSymbol = isSymbol(inspectCustom) ? inspectCustom : null,\n objectInspect = function inspect_(obj, options, depth, seen) {\n var opts = options || {};\n if (has(opts, \"quoteStyle\") && \"single\" !== opts.quoteStyle && \"double\" !== opts.quoteStyle) throw new TypeError('option \"quoteStyle\" must be \"single\" or \"double\"');\n if (has(opts, \"maxStringLength\") && (\"number\" == typeof opts.maxStringLength ? opts.maxStringLength < 0 && opts.maxStringLength !== 1 / 0 : null !== opts.maxStringLength)) throw new TypeError('option \"maxStringLength\", if provided, must be a positive integer, Infinity, or `null`');\n var customInspect = !has(opts, \"customInspect\") || opts.customInspect;\n if (\"boolean\" != typeof customInspect && \"symbol\" !== customInspect) throw new TypeError(\"option \\\"customInspect\\\", if provided, must be `true`, `false`, or `'symbol'`\");\n if (has(opts, \"indent\") && null !== opts.indent && \"\\t\" !== opts.indent && !(parseInt(opts.indent, 10) === opts.indent && opts.indent > 0)) throw new TypeError('option \"indent\" must be \"\\\\t\", an integer > 0, or `null`');\n if (has(opts, \"numericSeparator\") && \"boolean\" != typeof opts.numericSeparator) throw new TypeError('option \"numericSeparator\", if provided, must be `true` or `false`');\n var numericSeparator = opts.numericSeparator;\n if (void 0 === obj) return \"undefined\";\n if (null === obj) return \"null\";\n if (\"boolean\" == typeof obj) return obj ? \"true\" : \"false\";\n if (\"string\" == typeof obj) return function inspectString(str, opts) {\n if (str.length > opts.maxStringLength) {\n var remaining = str.length - opts.maxStringLength,\n trailer = \"... \" + remaining + \" more character\" + (remaining > 1 ? \"s\" : \"\");\n return inspectString($slice.call(str, 0, opts.maxStringLength), opts) + trailer;\n }\n return wrapQuotes($replace$1.call($replace$1.call(str, /(['\\\\])/g, \"\\\\$1\"), /[\\x00-\\x1f]/g, lowbyte), \"single\", opts);\n }(obj, opts);\n if (\"number\" == typeof obj) {\n if (0 === obj) return 1 / 0 / obj > 0 ? \"0\" : \"-0\";\n var str = String(obj);\n return numericSeparator ? addNumericSeparator(obj, str) : str;\n }\n if (\"bigint\" == typeof obj) {\n var bigIntStr = String(obj) + \"n\";\n return numericSeparator ? addNumericSeparator(obj, bigIntStr) : bigIntStr;\n }\n var maxDepth = void 0 === opts.depth ? 5 : opts.depth;\n if (void 0 === depth && (depth = 0), depth >= maxDepth && maxDepth > 0 && \"object\" == typeof obj) return isArray(obj) ? \"[Array]\" : \"[Object]\";\n var indent = function (opts, depth) {\n var baseIndent;\n if (\"\\t\" === opts.indent) baseIndent = \"\\t\";else {\n if (!(\"number\" == typeof opts.indent && opts.indent > 0)) return null;\n baseIndent = $join.call(Array(opts.indent + 1), \" \");\n }\n return {\n base: baseIndent,\n prev: $join.call(Array(depth + 1), baseIndent)\n };\n }(opts, depth);\n if (void 0 === seen) seen = [];else if (indexOf(seen, obj) >= 0) return \"[Circular]\";\n function inspect(value, from, noIndent) {\n if (from && (seen = $arrSlice.call(seen)).push(from), noIndent) {\n var newOpts = {\n depth: opts.depth\n };\n return has(opts, \"quoteStyle\") && (newOpts.quoteStyle = opts.quoteStyle), inspect_(value, newOpts, depth + 1, seen);\n }\n return inspect_(value, opts, depth + 1, seen);\n }\n if (\"function\" == typeof obj && !isRegExp(obj)) {\n var name = function (f) {\n if (f.name) return f.name;\n var m = $match.call(functionToString.call(f), /^function\\s*([\\w$]+)/);\n if (m) return m[1];\n return null;\n }(obj),\n keys = arrObjKeys(obj, inspect);\n return \"[Function\" + (name ? \": \" + name : \" (anonymous)\") + \"]\" + (keys.length > 0 ? \" { \" + $join.call(keys, \", \") + \" }\" : \"\");\n }\n if (isSymbol(obj)) {\n var symString = hasShammedSymbols ? $replace$1.call(String(obj), /^(Symbol\\(.*\\))_[^)]*$/, \"$1\") : symToString.call(obj);\n return \"object\" != typeof obj || hasShammedSymbols ? symString : markBoxed(symString);\n }\n if (function (x) {\n if (!x || \"object\" != typeof x) return !1;\n if (\"undefined\" != typeof HTMLElement && x instanceof HTMLElement) return !0;\n return \"string\" == typeof x.nodeName && \"function\" == typeof x.getAttribute;\n }(obj)) {\n for (var s = \"<\" + $toLowerCase.call(String(obj.nodeName)), attrs = obj.attributes || [], i = 0; i < attrs.length; i++) s += \" \" + attrs[i].name + \"=\" + wrapQuotes(quote(attrs[i].value), \"double\", opts);\n return s += \">\", obj.childNodes && obj.childNodes.length && (s += \"...\"), s += \"\";\n }\n if (isArray(obj)) {\n if (0 === obj.length) return \"[]\";\n var xs = arrObjKeys(obj, inspect);\n return indent && !function (xs) {\n for (var i = 0; i < xs.length; i++) if (indexOf(xs[i], \"\\n\") >= 0) return !1;\n return !0;\n }(xs) ? \"[\" + indentedJoin(xs, indent) + \"]\" : \"[ \" + $join.call(xs, \", \") + \" ]\";\n }\n if (function (obj) {\n return !(\"[object Error]\" !== toStr$1(obj) || toStringTag && \"object\" == typeof obj && toStringTag in obj);\n }(obj)) {\n var parts = arrObjKeys(obj, inspect);\n return \"cause\" in Error.prototype || !(\"cause\" in obj) || isEnumerable.call(obj, \"cause\") ? 0 === parts.length ? \"[\" + String(obj) + \"]\" : \"{ [\" + String(obj) + \"] \" + $join.call(parts, \", \") + \" }\" : \"{ [\" + String(obj) + \"] \" + $join.call($concat$1.call(\"[cause]: \" + inspect(obj.cause), parts), \", \") + \" }\";\n }\n if (\"object\" == typeof obj && customInspect) {\n if (inspectSymbol && \"function\" == typeof obj[inspectSymbol] && semver) return semver(obj, {\n depth: maxDepth - depth\n });\n if (\"symbol\" !== customInspect && \"function\" == typeof obj.inspect) return obj.inspect();\n }\n if (function (x) {\n if (!mapSize || !x || \"object\" != typeof x) return !1;\n try {\n mapSize.call(x);\n try {\n setSize.call(x);\n } catch (s) {\n return !0;\n }\n return x instanceof Map;\n } catch (e) {}\n return !1;\n }(obj)) {\n var mapParts = [];\n return mapForEach && mapForEach.call(obj, function (value, key) {\n mapParts.push(inspect(key, obj, !0) + \" => \" + inspect(value, obj));\n }), collectionOf(\"Map\", mapSize.call(obj), mapParts, indent);\n }\n if (function (x) {\n if (!setSize || !x || \"object\" != typeof x) return !1;\n try {\n setSize.call(x);\n try {\n mapSize.call(x);\n } catch (m) {\n return !0;\n }\n return x instanceof Set;\n } catch (e) {}\n return !1;\n }(obj)) {\n var setParts = [];\n return setForEach && setForEach.call(obj, function (value) {\n setParts.push(inspect(value, obj));\n }), collectionOf(\"Set\", setSize.call(obj), setParts, indent);\n }\n if (function (x) {\n if (!weakMapHas || !x || \"object\" != typeof x) return !1;\n try {\n weakMapHas.call(x, weakMapHas);\n try {\n weakSetHas.call(x, weakSetHas);\n } catch (s) {\n return !0;\n }\n return x instanceof WeakMap;\n } catch (e) {}\n return !1;\n }(obj)) return weakCollectionOf(\"WeakMap\");\n if (function (x) {\n if (!weakSetHas || !x || \"object\" != typeof x) return !1;\n try {\n weakSetHas.call(x, weakSetHas);\n try {\n weakMapHas.call(x, weakMapHas);\n } catch (s) {\n return !0;\n }\n return x instanceof WeakSet;\n } catch (e) {}\n return !1;\n }(obj)) return weakCollectionOf(\"WeakSet\");\n if (function (x) {\n if (!weakRefDeref || !x || \"object\" != typeof x) return !1;\n try {\n return weakRefDeref.call(x), !0;\n } catch (e) {}\n return !1;\n }(obj)) return weakCollectionOf(\"WeakRef\");\n if (function (obj) {\n return !(\"[object Number]\" !== toStr$1(obj) || toStringTag && \"object\" == typeof obj && toStringTag in obj);\n }(obj)) return markBoxed(inspect(Number(obj)));\n if (function (obj) {\n if (!obj || \"object\" != typeof obj || !bigIntValueOf) return !1;\n try {\n return bigIntValueOf.call(obj), !0;\n } catch (e) {}\n return !1;\n }(obj)) return markBoxed(inspect(bigIntValueOf.call(obj)));\n if (function (obj) {\n return !(\"[object Boolean]\" !== toStr$1(obj) || toStringTag && \"object\" == typeof obj && toStringTag in obj);\n }(obj)) return markBoxed(booleanValueOf.call(obj));\n if (function (obj) {\n return !(\"[object String]\" !== toStr$1(obj) || toStringTag && \"object\" == typeof obj && toStringTag in obj);\n }(obj)) return markBoxed(inspect(String(obj)));\n if (\"undefined\" != typeof window && obj === window) return \"{ [object Window] }\";\n if (obj === commonjsGlobal) return \"{ [object globalThis] }\";\n if (!function (obj) {\n return !(\"[object Date]\" !== toStr$1(obj) || toStringTag && \"object\" == typeof obj && toStringTag in obj);\n }(obj) && !isRegExp(obj)) {\n var ys = arrObjKeys(obj, inspect),\n isPlainObject = gPO ? gPO(obj) === Object.prototype : obj instanceof Object || obj.constructor === Object,\n protoTag = obj instanceof Object ? \"\" : \"null prototype\",\n stringTag = !isPlainObject && toStringTag && Object(obj) === obj && toStringTag in obj ? $slice.call(toStr$1(obj), 8, -1) : protoTag ? \"Object\" : \"\",\n tag = (isPlainObject || \"function\" != typeof obj.constructor ? \"\" : obj.constructor.name ? obj.constructor.name + \" \" : \"\") + (stringTag || protoTag ? \"[\" + $join.call($concat$1.call([], stringTag || [], protoTag || []), \": \") + \"] \" : \"\");\n return 0 === ys.length ? tag + \"{}\" : indent ? tag + \"{\" + indentedJoin(ys, indent) + \"}\" : tag + \"{ \" + $join.call(ys, \", \") + \" }\";\n }\n return String(obj);\n };\nfunction wrapQuotes(s, defaultStyle, opts) {\n var quoteChar = \"double\" === (opts.quoteStyle || defaultStyle) ? '\"' : \"'\";\n return quoteChar + s + quoteChar;\n}\nfunction quote(s) {\n return $replace$1.call(String(s), /\"/g, \""\");\n}\nfunction isArray(obj) {\n return !(\"[object Array]\" !== toStr$1(obj) || toStringTag && \"object\" == typeof obj && toStringTag in obj);\n}\nfunction isRegExp(obj) {\n return !(\"[object RegExp]\" !== toStr$1(obj) || toStringTag && \"object\" == typeof obj && toStringTag in obj);\n}\nfunction isSymbol(obj) {\n if (hasShammedSymbols) return obj && \"object\" == typeof obj && obj instanceof Symbol;\n if (\"symbol\" == typeof obj) return !0;\n if (!obj || \"object\" != typeof obj || !symToString) return !1;\n try {\n return symToString.call(obj), !0;\n } catch (e) {}\n return !1;\n}\nvar hasOwn = Object.prototype.hasOwnProperty || function (key) {\n return key in this;\n};\nfunction has(obj, key) {\n return hasOwn.call(obj, key);\n}\nfunction toStr$1(obj) {\n return objectToString.call(obj);\n}\nfunction indexOf(xs, x) {\n if (xs.indexOf) return xs.indexOf(x);\n for (var i = 0, l = xs.length; i < l; i++) if (xs[i] === x) return i;\n return -1;\n}\nfunction lowbyte(c) {\n var n = c.charCodeAt(0),\n x = {\n 8: \"b\",\n 9: \"t\",\n 10: \"n\",\n 12: \"f\",\n 13: \"r\"\n }[n];\n return x ? \"\\\\\" + x : \"\\\\x\" + (n < 16 ? \"0\" : \"\") + $toUpperCase.call(n.toString(16));\n}\nfunction markBoxed(str) {\n return \"Object(\" + str + \")\";\n}\nfunction weakCollectionOf(type) {\n return type + \" { ? }\";\n}\nfunction collectionOf(type, size, entries, indent) {\n return type + \" (\" + size + \") {\" + (indent ? indentedJoin(entries, indent) : $join.call(entries, \", \")) + \"}\";\n}\nfunction indentedJoin(xs, indent) {\n if (0 === xs.length) return \"\";\n var lineJoiner = \"\\n\" + indent.prev + indent.base;\n return lineJoiner + $join.call(xs, \",\" + lineJoiner) + \"\\n\" + indent.prev;\n}\nfunction arrObjKeys(obj, inspect) {\n var isArr = isArray(obj),\n xs = [];\n if (isArr) {\n xs.length = obj.length;\n for (var i = 0; i < obj.length; i++) xs[i] = has(obj, i) ? inspect(obj[i], obj) : \"\";\n }\n var symMap,\n syms = \"function\" == typeof gOPS ? gOPS(obj) : [];\n if (hasShammedSymbols) {\n symMap = {};\n for (var k = 0; k < syms.length; k++) symMap[\"$\" + syms[k]] = syms[k];\n }\n for (var key in obj) has(obj, key) && (isArr && String(Number(key)) === key && key < obj.length || hasShammedSymbols && symMap[\"$\" + key] instanceof Symbol || ($test.call(/[^\\w$]/, key) ? xs.push(inspect(key, obj) + \": \" + inspect(obj[key], obj)) : xs.push(key + \": \" + inspect(obj[key], obj))));\n if (\"function\" == typeof gOPS) for (var j = 0; j < syms.length; j++) isEnumerable.call(obj, syms[j]) && xs.push(\"[\" + inspect(syms[j]) + \"]: \" + inspect(obj[syms[j]], obj));\n return xs;\n}\nvar $WeakMap = getIntrinsic(\"%WeakMap%\", !0),\n $Map = getIntrinsic(\"%Map%\", !0),\n $weakMapGet = callBound(\"WeakMap.prototype.get\", !0),\n $weakMapSet = callBound(\"WeakMap.prototype.set\", !0),\n $weakMapHas = callBound(\"WeakMap.prototype.has\", !0),\n $mapGet = callBound(\"Map.prototype.get\", !0),\n $mapSet = callBound(\"Map.prototype.set\", !0),\n $mapHas = callBound(\"Map.prototype.has\", !0),\n listGetNode = function (list, key) {\n for (var curr, prev = list; null !== (curr = prev.next); prev = curr) if (curr.key === key) return prev.next = curr.next, curr.next = list.next, list.next = curr, curr;\n },\n sideChannel = function () {\n var $wm,\n $m,\n $o,\n channel = {\n assert: function (key) {\n if (!channel.has(key)) throw new type(\"Side channel does not contain \" + objectInspect(key));\n },\n get: function (key) {\n if ($WeakMap && key && (\"object\" == typeof key || \"function\" == typeof key)) {\n if ($wm) return $weakMapGet($wm, key);\n } else if ($Map) {\n if ($m) return $mapGet($m, key);\n } else if ($o) return function (objects, key) {\n var node = listGetNode(objects, key);\n return node && node.value;\n }($o, key);\n },\n has: function (key) {\n if ($WeakMap && key && (\"object\" == typeof key || \"function\" == typeof key)) {\n if ($wm) return $weakMapHas($wm, key);\n } else if ($Map) {\n if ($m) return $mapHas($m, key);\n } else if ($o) return function (objects, key) {\n return !!listGetNode(objects, key);\n }($o, key);\n return !1;\n },\n set: function (key, value) {\n $WeakMap && key && (\"object\" == typeof key || \"function\" == typeof key) ? ($wm || ($wm = new $WeakMap()), $weakMapSet($wm, key, value)) : $Map ? ($m || ($m = new $Map()), $mapSet($m, key, value)) : ($o || ($o = {\n key: {},\n next: null\n }), function (objects, key, value) {\n var node = listGetNode(objects, key);\n node ? node.value = value : objects.next = {\n key: key,\n next: objects.next,\n value: value\n };\n }($o, key, value));\n }\n };\n return channel;\n },\n replace = String.prototype.replace,\n percentTwenties = /%20/g,\n Format_RFC3986 = \"RFC3986\",\n formats = {\n default: Format_RFC3986,\n formatters: {\n RFC1738: function (value) {\n return replace.call(value, percentTwenties, \"+\");\n },\n RFC3986: function (value) {\n return String(value);\n }\n },\n RFC1738: \"RFC1738\",\n RFC3986: Format_RFC3986\n },\n has$1 = Object.prototype.hasOwnProperty,\n isArray$1 = Array.isArray,\n hexTable = function () {\n for (var array = [], i = 0; i < 256; ++i) array.push(\"%\" + ((i < 16 ? \"0\" : \"\") + i.toString(16)).toUpperCase());\n return array;\n }(),\n arrayToObject = function (source, options) {\n for (var obj = options && options.plainObjects ? Object.create(null) : {}, i = 0; i < source.length; ++i) void 0 !== source[i] && (obj[i] = source[i]);\n return obj;\n },\n utils = {\n arrayToObject: arrayToObject,\n assign: function (target, source) {\n return Object.keys(source).reduce(function (acc, key) {\n return acc[key] = source[key], acc;\n }, target);\n },\n combine: function (a, b) {\n return [].concat(a, b);\n },\n compact: function (value) {\n for (var queue = [{\n obj: {\n o: value\n },\n prop: \"o\"\n }], refs = [], i = 0; i < queue.length; ++i) for (var item = queue[i], obj = item.obj[item.prop], keys = Object.keys(obj), j = 0; j < keys.length; ++j) {\n var key = keys[j],\n val = obj[key];\n \"object\" == typeof val && null !== val && -1 === refs.indexOf(val) && (queue.push({\n obj: obj,\n prop: key\n }), refs.push(val));\n }\n return function (queue) {\n for (; queue.length > 1;) {\n var item = queue.pop(),\n obj = item.obj[item.prop];\n if (isArray$1(obj)) {\n for (var compacted = [], j = 0; j < obj.length; ++j) void 0 !== obj[j] && compacted.push(obj[j]);\n item.obj[item.prop] = compacted;\n }\n }\n }(queue), value;\n },\n decode: function (str, decoder, charset) {\n var strWithoutPlus = str.replace(/\\+/g, \" \");\n if (\"iso-8859-1\" === charset) return strWithoutPlus.replace(/%[0-9a-f]{2}/gi, unescape);\n try {\n return decodeURIComponent(strWithoutPlus);\n } catch (e) {\n return strWithoutPlus;\n }\n },\n encode: function (str, defaultEncoder, charset, kind, format) {\n if (0 === str.length) return str;\n var string = str;\n if (\"symbol\" == typeof str ? string = Symbol.prototype.toString.call(str) : \"string\" != typeof str && (string = String(str)), \"iso-8859-1\" === charset) return escape(string).replace(/%u[0-9a-f]{4}/gi, function ($0) {\n return \"%26%23\" + parseInt($0.slice(2), 16) + \"%3B\";\n });\n for (var out = \"\", j = 0; j < string.length; j += 1024) {\n for (var segment = string.length >= 1024 ? string.slice(j, j + 1024) : string, arr = [], i = 0; i < segment.length; ++i) {\n var c = segment.charCodeAt(i);\n 45 === c || 46 === c || 95 === c || 126 === c || c >= 48 && c <= 57 || c >= 65 && c <= 90 || c >= 97 && c <= 122 || format === formats.RFC1738 && (40 === c || 41 === c) ? arr[arr.length] = segment.charAt(i) : c < 128 ? arr[arr.length] = hexTable[c] : c < 2048 ? arr[arr.length] = hexTable[192 | c >> 6] + hexTable[128 | 63 & c] : c < 55296 || c >= 57344 ? arr[arr.length] = hexTable[224 | c >> 12] + hexTable[128 | c >> 6 & 63] + hexTable[128 | 63 & c] : (i += 1, c = 65536 + ((1023 & c) << 10 | 1023 & segment.charCodeAt(i)), arr[arr.length] = hexTable[240 | c >> 18] + hexTable[128 | c >> 12 & 63] + hexTable[128 | c >> 6 & 63] + hexTable[128 | 63 & c]);\n }\n out += arr.join(\"\");\n }\n return out;\n },\n isBuffer: function (obj) {\n return !(!obj || \"object\" != typeof obj) && !!(obj.constructor && obj.constructor.isBuffer && obj.constructor.isBuffer(obj));\n },\n isRegExp: function (obj) {\n return \"[object RegExp]\" === Object.prototype.toString.call(obj);\n },\n maybeMap: function (val, fn) {\n if (isArray$1(val)) {\n for (var mapped = [], i = 0; i < val.length; i += 1) mapped.push(fn(val[i]));\n return mapped;\n }\n return fn(val);\n },\n merge: function merge(target, source, options) {\n if (!source) return target;\n if (\"object\" != typeof source) {\n if (isArray$1(target)) target.push(source);else {\n if (!target || \"object\" != typeof target) return [target, source];\n (options && (options.plainObjects || options.allowPrototypes) || !has$1.call(Object.prototype, source)) && (target[source] = !0);\n }\n return target;\n }\n if (!target || \"object\" != typeof target) return [target].concat(source);\n var mergeTarget = target;\n return isArray$1(target) && !isArray$1(source) && (mergeTarget = arrayToObject(target, options)), isArray$1(target) && isArray$1(source) ? (source.forEach(function (item, i) {\n if (has$1.call(target, i)) {\n var targetItem = target[i];\n targetItem && \"object\" == typeof targetItem && item && \"object\" == typeof item ? target[i] = merge(targetItem, item, options) : target.push(item);\n } else target[i] = item;\n }), target) : Object.keys(source).reduce(function (acc, key) {\n var value = source[key];\n return has$1.call(acc, key) ? acc[key] = merge(acc[key], value, options) : acc[key] = value, acc;\n }, mergeTarget);\n }\n },\n has$2 = Object.prototype.hasOwnProperty,\n arrayPrefixGenerators = {\n brackets: function (prefix) {\n return prefix + \"[]\";\n },\n comma: \"comma\",\n indices: function (prefix, key) {\n return prefix + \"[\" + key + \"]\";\n },\n repeat: function (prefix) {\n return prefix;\n }\n },\n isArray$2 = Array.isArray,\n push = Array.prototype.push,\n pushToArray = function (arr, valueOrArray) {\n push.apply(arr, isArray$2(valueOrArray) ? valueOrArray : [valueOrArray]);\n },\n toISO = Date.prototype.toISOString,\n defaultFormat = formats.default,\n defaults = {\n addQueryPrefix: !1,\n allowDots: !1,\n allowEmptyArrays: !1,\n arrayFormat: \"indices\",\n charset: \"utf-8\",\n charsetSentinel: !1,\n delimiter: \"&\",\n encode: !0,\n encodeDotInKeys: !1,\n encoder: utils.encode,\n encodeValuesOnly: !1,\n format: defaultFormat,\n formatter: formats.formatters[defaultFormat],\n indices: !1,\n serializeDate: function (date) {\n return toISO.call(date);\n },\n skipNulls: !1,\n strictNullHandling: !1\n },\n sentinel = {},\n stringify = function stringify(object, prefix, generateArrayPrefix, commaRoundTrip, allowEmptyArrays, strictNullHandling, skipNulls, encodeDotInKeys, encoder, filter, sort, allowDots, serializeDate, format, formatter, encodeValuesOnly, charset, sideChannel$1) {\n for (var obj = object, tmpSc = sideChannel$1, step = 0, findFlag = !1; void 0 !== (tmpSc = tmpSc.get(sentinel)) && !findFlag;) {\n var pos = tmpSc.get(object);\n if (step += 1, void 0 !== pos) {\n if (pos === step) throw new RangeError(\"Cyclic object value\");\n findFlag = !0;\n }\n void 0 === tmpSc.get(sentinel) && (step = 0);\n }\n if (\"function\" == typeof filter ? obj = filter(prefix, obj) : obj instanceof Date ? obj = serializeDate(obj) : \"comma\" === generateArrayPrefix && isArray$2(obj) && (obj = utils.maybeMap(obj, function (value) {\n return value instanceof Date ? serializeDate(value) : value;\n })), null === obj) {\n if (strictNullHandling) return encoder && !encodeValuesOnly ? encoder(prefix, defaults.encoder, charset, \"key\", format) : prefix;\n obj = \"\";\n }\n if (function (v) {\n return \"string\" == typeof v || \"number\" == typeof v || \"boolean\" == typeof v || \"symbol\" == typeof v || \"bigint\" == typeof v;\n }(obj) || utils.isBuffer(obj)) return encoder ? [formatter(encodeValuesOnly ? prefix : encoder(prefix, defaults.encoder, charset, \"key\", format)) + \"=\" + formatter(encoder(obj, defaults.encoder, charset, \"value\", format))] : [formatter(prefix) + \"=\" + formatter(String(obj))];\n var objKeys,\n values = [];\n if (void 0 === obj) return values;\n if (\"comma\" === generateArrayPrefix && isArray$2(obj)) encodeValuesOnly && encoder && (obj = utils.maybeMap(obj, encoder)), objKeys = [{\n value: obj.length > 0 ? obj.join(\",\") || null : void 0\n }];else if (isArray$2(filter)) objKeys = filter;else {\n var keys = Object.keys(obj);\n objKeys = sort ? keys.sort(sort) : keys;\n }\n var encodedPrefix = encodeDotInKeys ? prefix.replace(/\\./g, \"%2E\") : prefix,\n adjustedPrefix = commaRoundTrip && isArray$2(obj) && 1 === obj.length ? encodedPrefix + \"[]\" : encodedPrefix;\n if (allowEmptyArrays && isArray$2(obj) && 0 === obj.length) return adjustedPrefix + \"[]\";\n for (var j = 0; j < objKeys.length; ++j) {\n var key = objKeys[j],\n value = \"object\" == typeof key && void 0 !== key.value ? key.value : obj[key];\n if (!skipNulls || null !== value) {\n var encodedKey = allowDots && encodeDotInKeys ? key.replace(/\\./g, \"%2E\") : key,\n keyPrefix = isArray$2(obj) ? \"function\" == typeof generateArrayPrefix ? generateArrayPrefix(adjustedPrefix, encodedKey) : adjustedPrefix : adjustedPrefix + (allowDots ? \".\" + encodedKey : \"[\" + encodedKey + \"]\");\n sideChannel$1.set(object, step);\n var valueSideChannel = sideChannel();\n valueSideChannel.set(sentinel, sideChannel$1), pushToArray(values, stringify(value, keyPrefix, generateArrayPrefix, commaRoundTrip, allowEmptyArrays, strictNullHandling, skipNulls, encodeDotInKeys, \"comma\" === generateArrayPrefix && encodeValuesOnly && isArray$2(obj) ? null : encoder, filter, sort, allowDots, serializeDate, format, formatter, encodeValuesOnly, charset, valueSideChannel));\n }\n }\n return values;\n },\n has$3 = Object.prototype.hasOwnProperty,\n isArray$3 = Array.isArray,\n defaults$1 = {\n allowDots: !1,\n allowEmptyArrays: !1,\n allowPrototypes: !1,\n allowSparse: !1,\n arrayLimit: 20,\n charset: \"utf-8\",\n charsetSentinel: !1,\n comma: !1,\n decodeDotInKeys: !1,\n decoder: utils.decode,\n delimiter: \"&\",\n depth: 5,\n duplicates: \"combine\",\n ignoreQueryPrefix: !1,\n interpretNumericEntities: !1,\n parameterLimit: 1e3,\n parseArrays: !0,\n plainObjects: !1,\n strictNullHandling: !1\n },\n interpretNumericEntities = function (str) {\n return str.replace(/&#(\\d+);/g, function ($0, numberStr) {\n return String.fromCharCode(parseInt(numberStr, 10));\n });\n },\n parseArrayValue = function (val, options) {\n return val && \"string\" == typeof val && options.comma && val.indexOf(\",\") > -1 ? val.split(\",\") : val;\n },\n parseKeys = function (givenKey, val, options, valuesParsed) {\n if (givenKey) {\n var key = options.allowDots ? givenKey.replace(/\\.([^.[]+)/g, \"[$1]\") : givenKey,\n child = /(\\[[^[\\]]*])/g,\n segment = options.depth > 0 && /(\\[[^[\\]]*])/.exec(key),\n parent = segment ? key.slice(0, segment.index) : key,\n keys = [];\n if (parent) {\n if (!options.plainObjects && has$3.call(Object.prototype, parent) && !options.allowPrototypes) return;\n keys.push(parent);\n }\n for (var i = 0; options.depth > 0 && null !== (segment = child.exec(key)) && i < options.depth;) {\n if (i += 1, !options.plainObjects && has$3.call(Object.prototype, segment[1].slice(1, -1)) && !options.allowPrototypes) return;\n keys.push(segment[1]);\n }\n return segment && keys.push(\"[\" + key.slice(segment.index) + \"]\"), function (chain, val, options, valuesParsed) {\n for (var leaf = valuesParsed ? val : parseArrayValue(val, options), i = chain.length - 1; i >= 0; --i) {\n var obj,\n root = chain[i];\n if (\"[]\" === root && options.parseArrays) obj = options.allowEmptyArrays && \"\" === leaf ? [] : [].concat(leaf);else {\n obj = options.plainObjects ? Object.create(null) : {};\n var cleanRoot = \"[\" === root.charAt(0) && \"]\" === root.charAt(root.length - 1) ? root.slice(1, -1) : root,\n decodedRoot = options.decodeDotInKeys ? cleanRoot.replace(/%2E/g, \".\") : cleanRoot,\n index = parseInt(decodedRoot, 10);\n options.parseArrays || \"\" !== decodedRoot ? !isNaN(index) && root !== decodedRoot && String(index) === decodedRoot && index >= 0 && options.parseArrays && index <= options.arrayLimit ? (obj = [])[index] = leaf : \"__proto__\" !== decodedRoot && (obj[decodedRoot] = leaf) : obj = {\n 0: leaf\n };\n }\n leaf = obj;\n }\n return leaf;\n }(keys, val, options, valuesParsed);\n }\n },\n lib = {\n formats: formats,\n parse: function (str, opts) {\n var options = function (opts) {\n if (!opts) return defaults$1;\n if (void 0 !== opts.allowEmptyArrays && \"boolean\" != typeof opts.allowEmptyArrays) throw new TypeError(\"`allowEmptyArrays` option can only be `true` or `false`, when provided\");\n if (void 0 !== opts.decodeDotInKeys && \"boolean\" != typeof opts.decodeDotInKeys) throw new TypeError(\"`decodeDotInKeys` option can only be `true` or `false`, when provided\");\n if (null !== opts.decoder && void 0 !== opts.decoder && \"function\" != typeof opts.decoder) throw new TypeError(\"Decoder has to be a function.\");\n if (void 0 !== opts.charset && \"utf-8\" !== opts.charset && \"iso-8859-1\" !== opts.charset) throw new TypeError(\"The charset option must be either utf-8, iso-8859-1, or undefined\");\n var charset = void 0 === opts.charset ? defaults$1.charset : opts.charset,\n duplicates = void 0 === opts.duplicates ? defaults$1.duplicates : opts.duplicates;\n if (\"combine\" !== duplicates && \"first\" !== duplicates && \"last\" !== duplicates) throw new TypeError(\"The duplicates option must be either combine, first, or last\");\n return {\n allowDots: void 0 === opts.allowDots ? !0 === opts.decodeDotInKeys || defaults$1.allowDots : !!opts.allowDots,\n allowEmptyArrays: \"boolean\" == typeof opts.allowEmptyArrays ? !!opts.allowEmptyArrays : defaults$1.allowEmptyArrays,\n allowPrototypes: \"boolean\" == typeof opts.allowPrototypes ? opts.allowPrototypes : defaults$1.allowPrototypes,\n allowSparse: \"boolean\" == typeof opts.allowSparse ? opts.allowSparse : defaults$1.allowSparse,\n arrayLimit: \"number\" == typeof opts.arrayLimit ? opts.arrayLimit : defaults$1.arrayLimit,\n charset: charset,\n charsetSentinel: \"boolean\" == typeof opts.charsetSentinel ? opts.charsetSentinel : defaults$1.charsetSentinel,\n comma: \"boolean\" == typeof opts.comma ? opts.comma : defaults$1.comma,\n decodeDotInKeys: \"boolean\" == typeof opts.decodeDotInKeys ? opts.decodeDotInKeys : defaults$1.decodeDotInKeys,\n decoder: \"function\" == typeof opts.decoder ? opts.decoder : defaults$1.decoder,\n delimiter: \"string\" == typeof opts.delimiter || utils.isRegExp(opts.delimiter) ? opts.delimiter : defaults$1.delimiter,\n depth: \"number\" == typeof opts.depth || !1 === opts.depth ? +opts.depth : defaults$1.depth,\n duplicates: duplicates,\n ignoreQueryPrefix: !0 === opts.ignoreQueryPrefix,\n interpretNumericEntities: \"boolean\" == typeof opts.interpretNumericEntities ? opts.interpretNumericEntities : defaults$1.interpretNumericEntities,\n parameterLimit: \"number\" == typeof opts.parameterLimit ? opts.parameterLimit : defaults$1.parameterLimit,\n parseArrays: !1 !== opts.parseArrays,\n plainObjects: \"boolean\" == typeof opts.plainObjects ? opts.plainObjects : defaults$1.plainObjects,\n strictNullHandling: \"boolean\" == typeof opts.strictNullHandling ? opts.strictNullHandling : defaults$1.strictNullHandling\n };\n }(opts);\n if (\"\" === str || null == str) return options.plainObjects ? Object.create(null) : {};\n for (var tempObj = \"string\" == typeof str ? function (str, options) {\n var i,\n obj = {\n __proto__: null\n },\n cleanStr = options.ignoreQueryPrefix ? str.replace(/^\\?/, \"\") : str,\n limit = options.parameterLimit === 1 / 0 ? void 0 : options.parameterLimit,\n parts = cleanStr.split(options.delimiter, limit),\n skipIndex = -1,\n charset = options.charset;\n if (options.charsetSentinel) for (i = 0; i < parts.length; ++i) 0 === parts[i].indexOf(\"utf8=\") && (\"utf8=%E2%9C%93\" === parts[i] ? charset = \"utf-8\" : \"utf8=%26%2310003%3B\" === parts[i] && (charset = \"iso-8859-1\"), skipIndex = i, i = parts.length);\n for (i = 0; i < parts.length; ++i) if (i !== skipIndex) {\n var key,\n val,\n part = parts[i],\n bracketEqualsPos = part.indexOf(\"]=\"),\n pos = -1 === bracketEqualsPos ? part.indexOf(\"=\") : bracketEqualsPos + 1;\n -1 === pos ? (key = options.decoder(part, defaults$1.decoder, charset, \"key\"), val = options.strictNullHandling ? null : \"\") : (key = options.decoder(part.slice(0, pos), defaults$1.decoder, charset, \"key\"), val = utils.maybeMap(parseArrayValue(part.slice(pos + 1), options), function (encodedVal) {\n return options.decoder(encodedVal, defaults$1.decoder, charset, \"value\");\n })), val && options.interpretNumericEntities && \"iso-8859-1\" === charset && (val = interpretNumericEntities(val)), part.indexOf(\"[]=\") > -1 && (val = isArray$3(val) ? [val] : val);\n var existing = has$3.call(obj, key);\n existing && \"combine\" === options.duplicates ? obj[key] = utils.combine(obj[key], val) : existing && \"last\" !== options.duplicates || (obj[key] = val);\n }\n return obj;\n }(str, options) : str, obj = options.plainObjects ? Object.create(null) : {}, keys = Object.keys(tempObj), i = 0; i < keys.length; ++i) {\n var key = keys[i],\n newObj = parseKeys(key, tempObj[key], options, \"string\" == typeof str);\n obj = utils.merge(obj, newObj, options);\n }\n return !0 === options.allowSparse ? obj : utils.compact(obj);\n },\n stringify: function (object, opts) {\n var objKeys,\n obj = object,\n options = function (opts) {\n if (!opts) return defaults;\n if (void 0 !== opts.allowEmptyArrays && \"boolean\" != typeof opts.allowEmptyArrays) throw new TypeError(\"`allowEmptyArrays` option can only be `true` or `false`, when provided\");\n if (void 0 !== opts.encodeDotInKeys && \"boolean\" != typeof opts.encodeDotInKeys) throw new TypeError(\"`encodeDotInKeys` option can only be `true` or `false`, when provided\");\n if (null !== opts.encoder && void 0 !== opts.encoder && \"function\" != typeof opts.encoder) throw new TypeError(\"Encoder has to be a function.\");\n var charset = opts.charset || defaults.charset;\n if (void 0 !== opts.charset && \"utf-8\" !== opts.charset && \"iso-8859-1\" !== opts.charset) throw new TypeError(\"The charset option must be either utf-8, iso-8859-1, or undefined\");\n var format = formats.default;\n if (void 0 !== opts.format) {\n if (!has$2.call(formats.formatters, opts.format)) throw new TypeError(\"Unknown format option provided.\");\n format = opts.format;\n }\n var arrayFormat,\n formatter = formats.formatters[format],\n filter = defaults.filter;\n if ((\"function\" == typeof opts.filter || isArray$2(opts.filter)) && (filter = opts.filter), arrayFormat = opts.arrayFormat in arrayPrefixGenerators ? opts.arrayFormat : \"indices\" in opts ? opts.indices ? \"indices\" : \"repeat\" : defaults.arrayFormat, \"commaRoundTrip\" in opts && \"boolean\" != typeof opts.commaRoundTrip) throw new TypeError(\"`commaRoundTrip` must be a boolean, or absent\");\n var allowDots = void 0 === opts.allowDots ? !0 === opts.encodeDotInKeys || defaults.allowDots : !!opts.allowDots;\n return {\n addQueryPrefix: \"boolean\" == typeof opts.addQueryPrefix ? opts.addQueryPrefix : defaults.addQueryPrefix,\n allowDots: allowDots,\n allowEmptyArrays: \"boolean\" == typeof opts.allowEmptyArrays ? !!opts.allowEmptyArrays : defaults.allowEmptyArrays,\n arrayFormat: arrayFormat,\n charset: charset,\n charsetSentinel: \"boolean\" == typeof opts.charsetSentinel ? opts.charsetSentinel : defaults.charsetSentinel,\n commaRoundTrip: opts.commaRoundTrip,\n delimiter: void 0 === opts.delimiter ? defaults.delimiter : opts.delimiter,\n encode: \"boolean\" == typeof opts.encode ? opts.encode : defaults.encode,\n encodeDotInKeys: \"boolean\" == typeof opts.encodeDotInKeys ? opts.encodeDotInKeys : defaults.encodeDotInKeys,\n encoder: \"function\" == typeof opts.encoder ? opts.encoder : defaults.encoder,\n encodeValuesOnly: \"boolean\" == typeof opts.encodeValuesOnly ? opts.encodeValuesOnly : defaults.encodeValuesOnly,\n filter: filter,\n format: format,\n formatter: formatter,\n serializeDate: \"function\" == typeof opts.serializeDate ? opts.serializeDate : defaults.serializeDate,\n skipNulls: \"boolean\" == typeof opts.skipNulls ? opts.skipNulls : defaults.skipNulls,\n sort: \"function\" == typeof opts.sort ? opts.sort : null,\n strictNullHandling: \"boolean\" == typeof opts.strictNullHandling ? opts.strictNullHandling : defaults.strictNullHandling\n };\n }(opts);\n \"function\" == typeof options.filter ? obj = (0, options.filter)(\"\", obj) : isArray$2(options.filter) && (objKeys = options.filter);\n var keys = [];\n if (\"object\" != typeof obj || null === obj) return \"\";\n var generateArrayPrefix = arrayPrefixGenerators[options.arrayFormat],\n commaRoundTrip = \"comma\" === generateArrayPrefix && options.commaRoundTrip;\n objKeys || (objKeys = Object.keys(obj)), options.sort && objKeys.sort(options.sort);\n for (var sideChannel$1 = sideChannel(), i = 0; i < objKeys.length; ++i) {\n var key = objKeys[i];\n options.skipNulls && null === obj[key] || pushToArray(keys, stringify(obj[key], key, generateArrayPrefix, commaRoundTrip, options.allowEmptyArrays, options.strictNullHandling, options.skipNulls, options.encodeDotInKeys, options.encode ? options.encoder : null, options.filter, options.sort, options.allowDots, options.serializeDate, options.format, options.formatter, options.encodeValuesOnly, options.charset, sideChannel$1));\n }\n var joined = keys.join(options.delimiter),\n prefix = !0 === options.addQueryPrefix ? \"?\" : \"\";\n return options.charsetSentinel && (\"iso-8859-1\" === options.charset ? prefix += \"utf8=%26%2310003%3B&\" : prefix += \"utf8=%E2%9C%93&\"), joined.length > 0 ? prefix + joined : \"\";\n }\n },\n componentEmitter = createCommonjsModule(function (module) {\n function Emitter(obj) {\n if (obj) return function (obj) {\n for (var key in Emitter.prototype) obj[key] = Emitter.prototype[key];\n return obj;\n }(obj);\n }\n module.exports = Emitter, Emitter.prototype.on = Emitter.prototype.addEventListener = function (event, fn) {\n return this._callbacks = this._callbacks || {}, (this._callbacks[\"$\" + event] = this._callbacks[\"$\" + event] || []).push(fn), this;\n }, Emitter.prototype.once = function (event, fn) {\n function on() {\n this.off(event, on), fn.apply(this, arguments);\n }\n return on.fn = fn, this.on(event, on), this;\n }, Emitter.prototype.off = Emitter.prototype.removeListener = Emitter.prototype.removeAllListeners = Emitter.prototype.removeEventListener = function (event, fn) {\n if (this._callbacks = this._callbacks || {}, 0 == arguments.length) return this._callbacks = {}, this;\n var cb,\n callbacks = this._callbacks[\"$\" + event];\n if (!callbacks) return this;\n if (1 == arguments.length) return delete this._callbacks[\"$\" + event], this;\n for (var i = 0; i < callbacks.length; i++) if ((cb = callbacks[i]) === fn || cb.fn === fn) {\n callbacks.splice(i, 1);\n break;\n }\n return 0 === callbacks.length && delete this._callbacks[\"$\" + event], this;\n }, Emitter.prototype.emit = function (event) {\n this._callbacks = this._callbacks || {};\n for (var args = new Array(arguments.length - 1), callbacks = this._callbacks[\"$\" + event], i = 1; i < arguments.length; i++) args[i - 1] = arguments[i];\n if (callbacks) {\n i = 0;\n for (var len = (callbacks = callbacks.slice(0)).length; i < len; ++i) callbacks[i].apply(this, args);\n }\n return this;\n }, Emitter.prototype.listeners = function (event) {\n return this._callbacks = this._callbacks || {}, this._callbacks[\"$\" + event] || [];\n }, Emitter.prototype.hasListeners = function (event) {\n return !!this.listeners(event).length;\n };\n }),\n fastSafeStringify = stringify$1;\nstringify$1.default = stringify$1, stringify$1.stable = deterministicStringify, stringify$1.stableStringify = deterministicStringify;\nvar arr = [],\n replacerStack = [];\nfunction defaultOptions() {\n return {\n depthLimit: Number.MAX_SAFE_INTEGER,\n edgesLimit: Number.MAX_SAFE_INTEGER\n };\n}\nfunction stringify$1(obj, replacer, spacer, options) {\n var res;\n void 0 === options && (options = defaultOptions()), function decirc(val, k, edgeIndex, stack, parent, depth, options) {\n var i;\n if (depth += 1, \"object\" == typeof val && null !== val) {\n for (i = 0; i < stack.length; i++) if (stack[i] === val) return void setReplace(\"[Circular]\", val, k, parent);\n if (void 0 !== options.depthLimit && depth > options.depthLimit) return void setReplace(\"[...]\", val, k, parent);\n if (void 0 !== options.edgesLimit && edgeIndex + 1 > options.edgesLimit) return void setReplace(\"[...]\", val, k, parent);\n if (stack.push(val), Array.isArray(val)) for (i = 0; i < val.length; i++) decirc(val[i], i, i, stack, val, depth, options);else {\n var keys = Object.keys(val);\n for (i = 0; i < keys.length; i++) {\n var key = keys[i];\n decirc(val[key], key, i, stack, val, depth, options);\n }\n }\n stack.pop();\n }\n }(obj, \"\", 0, [], void 0, 0, options);\n try {\n res = 0 === replacerStack.length ? JSON.stringify(obj, replacer, spacer) : JSON.stringify(obj, replaceGetterValues(replacer), spacer);\n } catch (_) {\n return JSON.stringify(\"[unable to serialize, circular reference is too complex to analyze]\");\n } finally {\n for (; 0 !== arr.length;) {\n var part = arr.pop();\n 4 === part.length ? Object.defineProperty(part[0], part[1], part[3]) : part[0][part[1]] = part[2];\n }\n }\n return res;\n}\nfunction setReplace(replace, val, k, parent) {\n var propertyDescriptor = Object.getOwnPropertyDescriptor(parent, k);\n void 0 !== propertyDescriptor.get ? propertyDescriptor.configurable ? (Object.defineProperty(parent, k, {\n value: replace\n }), arr.push([parent, k, val, propertyDescriptor])) : replacerStack.push([val, k, replace]) : (parent[k] = replace, arr.push([parent, k, val]));\n}\nfunction compareFunction(a, b) {\n return a < b ? -1 : a > b ? 1 : 0;\n}\nfunction deterministicStringify(obj, replacer, spacer, options) {\n void 0 === options && (options = defaultOptions());\n var res,\n tmp = function deterministicDecirc(val, k, edgeIndex, stack, parent, depth, options) {\n var i;\n if (depth += 1, \"object\" == typeof val && null !== val) {\n for (i = 0; i < stack.length; i++) if (stack[i] === val) return void setReplace(\"[Circular]\", val, k, parent);\n try {\n if (\"function\" == typeof val.toJSON) return;\n } catch (_) {\n return;\n }\n if (void 0 !== options.depthLimit && depth > options.depthLimit) return void setReplace(\"[...]\", val, k, parent);\n if (void 0 !== options.edgesLimit && edgeIndex + 1 > options.edgesLimit) return void setReplace(\"[...]\", val, k, parent);\n if (stack.push(val), Array.isArray(val)) for (i = 0; i < val.length; i++) deterministicDecirc(val[i], i, i, stack, val, depth, options);else {\n var tmp = {},\n keys = Object.keys(val).sort(compareFunction);\n for (i = 0; i < keys.length; i++) {\n var key = keys[i];\n deterministicDecirc(val[key], key, i, stack, val, depth, options), tmp[key] = val[key];\n }\n if (void 0 === parent) return tmp;\n arr.push([parent, k, val]), parent[k] = tmp;\n }\n stack.pop();\n }\n }(obj, \"\", 0, [], void 0, 0, options) || obj;\n try {\n res = 0 === replacerStack.length ? JSON.stringify(tmp, replacer, spacer) : JSON.stringify(tmp, replaceGetterValues(replacer), spacer);\n } catch (_) {\n return JSON.stringify(\"[unable to serialize, circular reference is too complex to analyze]\");\n } finally {\n for (; 0 !== arr.length;) {\n var part = arr.pop();\n 4 === part.length ? Object.defineProperty(part[0], part[1], part[3]) : part[0][part[1]] = part[2];\n }\n }\n return res;\n}\nfunction replaceGetterValues(replacer) {\n return replacer = void 0 !== replacer ? replacer : function (k, v) {\n return v;\n }, function (key, val) {\n if (replacerStack.length > 0) for (var i = 0; i < replacerStack.length; i++) {\n var part = replacerStack[i];\n if (part[1] === key && part[0] === val) {\n val = part[2], replacerStack.splice(i, 1);\n break;\n }\n }\n return replacer.call(this, key, val);\n };\n}\nvar utils$1 = createCommonjsModule(function (module, exports) {\n function _typeof(obj) {\n return (_typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n })(obj);\n }\n function _createForOfIteratorHelper(o, allowArrayLike) {\n var it = \"undefined\" != typeof Symbol && o[Symbol.iterator] || o[\"@@iterator\"];\n if (!it) {\n if (Array.isArray(o) || (it = function (o, minLen) {\n if (!o) return;\n if (\"string\" == typeof o) return _arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n \"Object\" === n && o.constructor && (n = o.constructor.name);\n if (\"Map\" === n || \"Set\" === n) return Array.from(o);\n if (\"Arguments\" === n || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);\n }(o)) || allowArrayLike && o && \"number\" == typeof o.length) {\n it && (o = it);\n var i = 0,\n F = function () {};\n return {\n s: F,\n n: function () {\n return i >= o.length ? {\n done: !0\n } : {\n done: !1,\n value: o[i++]\n };\n },\n e: function (_e) {\n throw _e;\n },\n f: F\n };\n }\n throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n }\n var err,\n normalCompletion = !0,\n didErr = !1;\n return {\n s: function () {\n it = it.call(o);\n },\n n: function () {\n var step = it.next();\n return normalCompletion = step.done, step;\n },\n e: function (_e2) {\n didErr = !0, err = _e2;\n },\n f: function () {\n try {\n normalCompletion || null == it.return || it.return();\n } finally {\n if (didErr) throw err;\n }\n }\n };\n }\n function _arrayLikeToArray(arr, len) {\n (null == len || len > arr.length) && (len = arr.length);\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n return arr2;\n }\n exports.type = function (string_) {\n return string_.split(/ *; */).shift();\n }, exports.params = function (value) {\n var _step,\n object = {},\n _iterator = _createForOfIteratorHelper(value.split(/ *; */));\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var parts = _step.value.split(/ *= */),\n key = parts.shift(),\n _value = parts.shift();\n key && _value && (object[key] = _value);\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n return object;\n }, exports.parseLinks = function (value) {\n var _step2,\n object = {},\n _iterator2 = _createForOfIteratorHelper(value.split(/ *, */));\n try {\n for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {\n var parts = _step2.value.split(/ *; */),\n url = parts[0].slice(1, -1);\n object[parts[1].split(/ *= */)[1].slice(1, -1)] = url;\n }\n } catch (err) {\n _iterator2.e(err);\n } finally {\n _iterator2.f();\n }\n return object;\n }, exports.cleanHeader = function (header, changesOrigin) {\n return delete header[\"content-type\"], delete header[\"content-length\"], delete header[\"transfer-encoding\"], delete header.host, changesOrigin && (delete header.authorization, delete header.cookie), header;\n }, exports.isObject = function (object) {\n return null !== object && \"object\" === _typeof(object);\n }, exports.hasOwn = Object.hasOwn || function (object, property) {\n if (null == object) throw new TypeError(\"Cannot convert undefined or null to object\");\n return Object.prototype.hasOwnProperty.call(new Object(object), property);\n }, exports.mixin = function (target, source) {\n for (var key in source) exports.hasOwn(source, key) && (target[key] = source[key]);\n };\n});\nutils$1.type, utils$1.params, utils$1.parseLinks, utils$1.cleanHeader, utils$1.isObject, utils$1.hasOwn, utils$1.mixin;\nfunction _typeof(obj) {\n return (_typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n })(obj);\n}\nvar isObject = utils$1.isObject,\n hasOwn$1 = utils$1.hasOwn,\n requestBase = RequestBase;\nfunction RequestBase() {}\nRequestBase.prototype.clearTimeout = function () {\n return clearTimeout(this._timer), clearTimeout(this._responseTimeoutTimer), clearTimeout(this._uploadTimeoutTimer), delete this._timer, delete this._responseTimeoutTimer, delete this._uploadTimeoutTimer, this;\n}, RequestBase.prototype.parse = function (fn) {\n return this._parser = fn, this;\n}, RequestBase.prototype.responseType = function (value) {\n return this._responseType = value, this;\n}, RequestBase.prototype.serialize = function (fn) {\n return this._serializer = fn, this;\n}, RequestBase.prototype.timeout = function (options) {\n if (!options || \"object\" !== _typeof(options)) return this._timeout = options, this._responseTimeout = 0, this._uploadTimeout = 0, this;\n for (var option in options) if (hasOwn$1(options, option)) switch (option) {\n case \"deadline\":\n this._timeout = options.deadline;\n break;\n case \"response\":\n this._responseTimeout = options.response;\n break;\n case \"upload\":\n this._uploadTimeout = options.upload;\n break;\n default:\n console.warn(\"Unknown timeout option\", option);\n }\n return this;\n}, RequestBase.prototype.retry = function (count, fn) {\n return 0 !== arguments.length && !0 !== count || (count = 1), count <= 0 && (count = 0), this._maxRetries = count, this._retries = 0, this._retryCallback = fn, this;\n};\nvar ERROR_CODES = new Set([\"ETIMEDOUT\", \"ECONNRESET\", \"EADDRINUSE\", \"ECONNREFUSED\", \"EPIPE\", \"ENOTFOUND\", \"ENETUNREACH\", \"EAI_AGAIN\"]),\n STATUS_CODES = new Set([408, 413, 429, 500, 502, 503, 504, 521, 522, 524]);\nRequestBase.prototype._shouldRetry = function (error, res) {\n if (!this._maxRetries || this._retries++ >= this._maxRetries) return !1;\n if (this._retryCallback) try {\n var override = this._retryCallback(error, res);\n if (!0 === override) return !0;\n if (!1 === override) return !1;\n } catch (err) {\n console.error(err);\n }\n if (res && res.status && STATUS_CODES.has(res.status)) return !0;\n if (error) {\n if (error.code && ERROR_CODES.has(error.code)) return !0;\n if (error.timeout && \"ECONNABORTED\" === error.code) return !0;\n if (error.crossDomain) return !0;\n }\n return !1;\n}, RequestBase.prototype._retry = function () {\n return this.clearTimeout(), this.req && (this.req = null, this.req = this.request()), this._aborted = !1, this.timedout = !1, this.timedoutError = null, this._end();\n}, RequestBase.prototype.then = function (resolve, reject) {\n var _this = this;\n if (!this._fullfilledPromise) {\n var self = this;\n this._endCalled && console.warn(\"Warning: superagent request was sent twice, because both .end() and .then() were called. Never call .end() if you use promises\"), this._fullfilledPromise = new Promise(function (resolve, reject) {\n self.on(\"abort\", function () {\n if (!(_this._maxRetries && _this._maxRetries > _this._retries)) if (_this.timedout && _this.timedoutError) reject(_this.timedoutError);else {\n var error = new Error(\"Aborted\");\n error.code = \"ABORTED\", error.status = _this.status, error.method = _this.method, error.url = _this.url, reject(error);\n }\n }), self.end(function (error, res) {\n error ? reject(error) : resolve(res);\n });\n });\n }\n return this._fullfilledPromise.then(resolve, reject);\n}, RequestBase.prototype.catch = function (callback) {\n return this.then(void 0, callback);\n}, RequestBase.prototype.use = function (fn) {\n return fn(this), this;\n}, RequestBase.prototype.ok = function (callback) {\n if (\"function\" != typeof callback) throw new Error(\"Callback required\");\n return this._okCallback = callback, this;\n}, RequestBase.prototype._isResponseOK = function (res) {\n return !!res && (this._okCallback ? this._okCallback(res) : res.status >= 200 && res.status < 300);\n}, RequestBase.prototype.get = function (field) {\n return this._header[field.toLowerCase()];\n}, RequestBase.prototype.getHeader = RequestBase.prototype.get, RequestBase.prototype.set = function (field, value) {\n if (isObject(field)) {\n for (var key in field) hasOwn$1(field, key) && this.set(key, field[key]);\n return this;\n }\n return this._header[field.toLowerCase()] = value, this.header[field] = value, this;\n}, RequestBase.prototype.unset = function (field) {\n return delete this._header[field.toLowerCase()], delete this.header[field], this;\n}, RequestBase.prototype.field = function (name, value, options) {\n if (null == name) throw new Error(\".field(name, val) name can not be empty\");\n if (this._data) throw new Error(\".field() can't be used if .send() is used. Please use only .send() or only .field() & .attach()\");\n if (isObject(name)) {\n for (var key in name) hasOwn$1(name, key) && this.field(key, name[key]);\n return this;\n }\n if (Array.isArray(value)) {\n for (var i in value) hasOwn$1(value, i) && this.field(name, value[i]);\n return this;\n }\n if (null == value) throw new Error(\".field(name, val) val can not be empty\");\n return \"boolean\" == typeof value && (value = String(value)), options ? this._getFormData().append(name, value, options) : this._getFormData().append(name, value), this;\n}, RequestBase.prototype.abort = function () {\n if (this._aborted) return this;\n if (this._aborted = !0, this.xhr && this.xhr.abort(), this.req) {\n if (semver.gte(process.version, \"v13.0.0\") && semver.lt(process.version, \"v14.0.0\")) throw new Error(\"Superagent does not work in v13 properly with abort() due to Node.js core changes\");\n semver.gte(process.version, \"v14.0.0\") && (this.req.destroyed = !0), this.req.abort();\n }\n return this.clearTimeout(), this.emit(\"abort\"), this;\n}, RequestBase.prototype._auth = function (user, pass, options, base64Encoder) {\n switch (options.type) {\n case \"basic\":\n this.set(\"Authorization\", \"Basic \".concat(base64Encoder(\"\".concat(user, \":\").concat(pass))));\n break;\n case \"auto\":\n this.username = user, this.password = pass;\n break;\n case \"bearer\":\n this.set(\"Authorization\", \"Bearer \".concat(user));\n }\n return this;\n}, RequestBase.prototype.withCredentials = function (on) {\n return void 0 === on && (on = !0), this._withCredentials = on, this;\n}, RequestBase.prototype.redirects = function (n) {\n return this._maxRedirects = n, this;\n}, RequestBase.prototype.maxResponseSize = function (n) {\n if (\"number\" != typeof n) throw new TypeError(\"Invalid argument\");\n return this._maxResponseSize = n, this;\n}, RequestBase.prototype.toJSON = function () {\n return {\n method: this.method,\n url: this.url,\n data: this._data,\n headers: this._header\n };\n}, RequestBase.prototype.send = function (data) {\n var isObject_ = isObject(data),\n type = this._header[\"content-type\"];\n if (this._formData) throw new Error(\".send() can't be used if .attach() or .field() is used. Please use only .send() or only .field() & .attach()\");\n if (isObject_ && !this._data) Array.isArray(data) ? this._data = [] : this._isHost(data) || (this._data = {});else if (data && this._data && this._isHost(this._data)) throw new Error(\"Can't merge these send calls\");\n if (isObject_ && isObject(this._data)) for (var key in data) hasOwn$1(data, key) && (this._data[key] = data[key]);else \"string\" == typeof data ? (type || this.type(\"form\"), (type = this._header[\"content-type\"]) && (type = type.toLowerCase().trim()), this._data = \"application/x-www-form-urlencoded\" === type ? this._data ? \"\".concat(this._data, \"&\").concat(data) : data : (this._data || \"\") + data) : this._data = data;\n return !isObject_ || this._isHost(data) || type || this.type(\"json\"), this;\n}, RequestBase.prototype.sortQuery = function (sort) {\n return this._sort = void 0 === sort || sort, this;\n}, RequestBase.prototype._finalizeQueryString = function () {\n var query = this._query.join(\"&\");\n if (query && (this.url += (this.url.includes(\"?\") ? \"&\" : \"?\") + query), this._query.length = 0, this._sort) {\n var index = this.url.indexOf(\"?\");\n if (index >= 0) {\n var queryArray = this.url.slice(index + 1).split(\"&\");\n \"function\" == typeof this._sort ? queryArray.sort(this._sort) : queryArray.sort(), this.url = this.url.slice(0, index) + \"?\" + queryArray.join(\"&\");\n }\n }\n}, RequestBase.prototype._appendQueryString = function () {\n console.warn(\"Unsupported\");\n}, RequestBase.prototype._timeoutError = function (reason, timeout, errno) {\n if (!this._aborted) {\n var error = new Error(\"\".concat(reason + timeout, \"ms exceeded\"));\n error.timeout = timeout, error.code = \"ECONNABORTED\", error.errno = errno, this.timedout = !0, this.timedoutError = error, this.abort(), this.callback(error);\n }\n}, RequestBase.prototype._setTimeouts = function () {\n var self = this;\n this._timeout && !this._timer && (this._timer = setTimeout(function () {\n self._timeoutError(\"Timeout of \", self._timeout, \"ETIME\");\n }, this._timeout)), this._responseTimeout && !this._responseTimeoutTimer && (this._responseTimeoutTimer = setTimeout(function () {\n self._timeoutError(\"Response timeout of \", self._responseTimeout, \"ETIMEDOUT\");\n }, this._responseTimeout));\n};\nvar responseBase = ResponseBase;\nfunction ResponseBase() {}\nfunction _toConsumableArray(arr) {\n return function (arr) {\n if (Array.isArray(arr)) return _arrayLikeToArray(arr);\n }(arr) || function (iter) {\n if (\"undefined\" != typeof Symbol && null != iter[Symbol.iterator] || null != iter[\"@@iterator\"]) return Array.from(iter);\n }(arr) || _unsupportedIterableToArray(arr) || function () {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n }();\n}\nfunction _unsupportedIterableToArray(o, minLen) {\n if (o) {\n if (\"string\" == typeof o) return _arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n return \"Object\" === n && o.constructor && (n = o.constructor.name), \"Map\" === n || \"Set\" === n ? Array.from(o) : \"Arguments\" === n || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n) ? _arrayLikeToArray(o, minLen) : void 0;\n }\n}\nfunction _arrayLikeToArray(arr, len) {\n (null == len || len > arr.length) && (len = arr.length);\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n return arr2;\n}\nfunction Agent() {\n this._defaults = [];\n}\nResponseBase.prototype.get = function (field) {\n return this.header[field.toLowerCase()];\n}, ResponseBase.prototype._setHeaderProperties = function (header) {\n var ct = header[\"content-type\"] || \"\";\n this.type = utils$1.type(ct);\n var parameters = utils$1.params(ct);\n for (var key in parameters) Object.prototype.hasOwnProperty.call(parameters, key) && (this[key] = parameters[key]);\n this.links = {};\n try {\n header.link && (this.links = utils$1.parseLinks(header.link));\n } catch (_unused) {}\n}, ResponseBase.prototype._setStatusProperties = function (status) {\n var type = Math.trunc(status / 100);\n this.statusCode = status, this.status = this.statusCode, this.statusType = type, this.info = 1 === type, this.ok = 2 === type, this.redirect = 3 === type, this.clientError = 4 === type, this.serverError = 5 === type, this.error = (4 === type || 5 === type) && this.toError(), this.created = 201 === status, this.accepted = 202 === status, this.noContent = 204 === status, this.badRequest = 400 === status, this.unauthorized = 401 === status, this.notAcceptable = 406 === status, this.forbidden = 403 === status, this.notFound = 404 === status, this.unprocessableEntity = 422 === status;\n};\nfor (var _loop = function () {\n var fn = _arr[_i];\n Agent.prototype[fn] = function () {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) args[_key] = arguments[_key];\n return this._defaults.push({\n fn: fn,\n args: args\n }), this;\n };\n }, _i = 0, _arr = [\"use\", \"on\", \"once\", \"set\", \"query\", \"type\", \"accept\", \"auth\", \"withCredentials\", \"sortQuery\", \"retry\", \"ok\", \"redirects\", \"timeout\", \"buffer\", \"serialize\", \"parse\", \"ca\", \"key\", \"pfx\", \"cert\", \"disableTLSCerts\"]; _i < _arr.length; _i++) _loop();\nAgent.prototype._setDefaults = function (request) {\n var _step,\n _iterator = function (o, allowArrayLike) {\n var it = \"undefined\" != typeof Symbol && o[Symbol.iterator] || o[\"@@iterator\"];\n if (!it) {\n if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && \"number\" == typeof o.length) {\n it && (o = it);\n var i = 0,\n F = function () {};\n return {\n s: F,\n n: function () {\n return i >= o.length ? {\n done: !0\n } : {\n done: !1,\n value: o[i++]\n };\n },\n e: function (_e) {\n throw _e;\n },\n f: F\n };\n }\n throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n }\n var err,\n normalCompletion = !0,\n didErr = !1;\n return {\n s: function () {\n it = it.call(o);\n },\n n: function () {\n var step = it.next();\n return normalCompletion = step.done, step;\n },\n e: function (_e2) {\n didErr = !0, err = _e2;\n },\n f: function () {\n try {\n normalCompletion || null == it.return || it.return();\n } finally {\n if (didErr) throw err;\n }\n }\n };\n }(this._defaults);\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var def = _step.value;\n request[def.fn].apply(request, _toConsumableArray(def.args));\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n};\nfor (var agentBase = Agent, client = createCommonjsModule(function (module, exports) {\n function _typeof(obj) {\n return (_typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n })(obj);\n }\n function _createForOfIteratorHelper(o, allowArrayLike) {\n var it = \"undefined\" != typeof Symbol && o[Symbol.iterator] || o[\"@@iterator\"];\n if (!it) {\n if (Array.isArray(o) || (it = function (o, minLen) {\n if (!o) return;\n if (\"string\" == typeof o) return _arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n \"Object\" === n && o.constructor && (n = o.constructor.name);\n if (\"Map\" === n || \"Set\" === n) return Array.from(o);\n if (\"Arguments\" === n || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);\n }(o)) || allowArrayLike && o && \"number\" == typeof o.length) {\n it && (o = it);\n var i = 0,\n F = function () {};\n return {\n s: F,\n n: function () {\n return i >= o.length ? {\n done: !0\n } : {\n done: !1,\n value: o[i++]\n };\n },\n e: function (_e) {\n throw _e;\n },\n f: F\n };\n }\n throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n }\n var err,\n normalCompletion = !0,\n didErr = !1;\n return {\n s: function () {\n it = it.call(o);\n },\n n: function () {\n var step = it.next();\n return normalCompletion = step.done, step;\n },\n e: function (_e2) {\n didErr = !0, err = _e2;\n },\n f: function () {\n try {\n normalCompletion || null == it.return || it.return();\n } finally {\n if (didErr) throw err;\n }\n }\n };\n }\n function _arrayLikeToArray(arr, len) {\n (null == len || len > arr.length) && (len = arr.length);\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n return arr2;\n }\n var root;\n \"undefined\" != typeof window ? root = window : \"undefined\" == typeof self ? (console.warn(\"Using browser-only version of superagent in non-browser environment\"), root = void 0) : root = self;\n var isObject = utils$1.isObject,\n mixin = utils$1.mixin,\n hasOwn = utils$1.hasOwn;\n function noop() {}\n module.exports = function (method, url) {\n return \"function\" == typeof url ? new exports.Request(\"GET\", method).end(url) : 1 === arguments.length ? new exports.Request(\"GET\", method) : new exports.Request(method, url);\n };\n var request = exports = module.exports;\n exports.Request = Request, request.getXHR = function () {\n if (root.XMLHttpRequest && (!root.location || \"file:\" !== root.location.protocol || !root.ActiveXObject)) return new XMLHttpRequest();\n try {\n return new ActiveXObject(\"Microsoft.XMLHTTP\");\n } catch (_unused) {}\n try {\n return new ActiveXObject(\"Msxml2.XMLHTTP.6.0\");\n } catch (_unused2) {}\n try {\n return new ActiveXObject(\"Msxml2.XMLHTTP.3.0\");\n } catch (_unused3) {}\n try {\n return new ActiveXObject(\"Msxml2.XMLHTTP\");\n } catch (_unused4) {}\n throw new Error(\"Browser-only version of superagent could not find XHR\");\n };\n var trim = \"\".trim ? function (s) {\n return s.trim();\n } : function (s) {\n return s.replace(/(^\\s*|\\s*$)/g, \"\");\n };\n function serialize(object) {\n if (!isObject(object)) return object;\n var pairs = [];\n for (var key in object) hasOwn(object, key) && pushEncodedKeyValuePair(pairs, key, object[key]);\n return pairs.join(\"&\");\n }\n function pushEncodedKeyValuePair(pairs, key, value) {\n if (void 0 !== value) if (null !== value) {\n if (Array.isArray(value)) {\n var _step,\n _iterator = _createForOfIteratorHelper(value);\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n pushEncodedKeyValuePair(pairs, key, _step.value);\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n } else if (isObject(value)) for (var subkey in value) hasOwn(value, subkey) && pushEncodedKeyValuePair(pairs, \"\".concat(key, \"[\").concat(subkey, \"]\"), value[subkey]);else pairs.push(encodeURI(key) + \"=\" + encodeURIComponent(value));\n } else pairs.push(encodeURI(key));\n }\n function parseString(string_) {\n for (var pair, pos, object = {}, pairs = string_.split(\"&\"), i = 0, length_ = pairs.length; i < length_; ++i) -1 === (pos = (pair = pairs[i]).indexOf(\"=\")) ? object[decodeURIComponent(pair)] = \"\" : object[decodeURIComponent(pair.slice(0, pos))] = decodeURIComponent(pair.slice(pos + 1));\n return object;\n }\n function isJSON(mime) {\n return /[/+]json($|[^-\\w])/i.test(mime);\n }\n function Response(request_) {\n this.req = request_, this.xhr = this.req.xhr, this.text = \"HEAD\" !== this.req.method && (\"\" === this.xhr.responseType || \"text\" === this.xhr.responseType) || void 0 === this.xhr.responseType ? this.xhr.responseText : null, this.statusText = this.req.xhr.statusText;\n var status = this.xhr.status;\n 1223 === status && (status = 204), this._setStatusProperties(status), this.headers = function (string_) {\n for (var index, line, field, value, lines = string_.split(/\\r?\\n/), fields = {}, i = 0, length_ = lines.length; i < length_; ++i) -1 !== (index = (line = lines[i]).indexOf(\":\")) && (field = line.slice(0, index).toLowerCase(), value = trim(line.slice(index + 1)), fields[field] = value);\n return fields;\n }(this.xhr.getAllResponseHeaders()), this.header = this.headers, this.header[\"content-type\"] = this.xhr.getResponseHeader(\"content-type\"), this._setHeaderProperties(this.header), null === this.text && request_._responseType ? this.body = this.xhr.response : this.body = \"HEAD\" === this.req.method ? null : this._parseBody(this.text ? this.text : this.xhr.response);\n }\n function Request(method, url) {\n var self = this;\n this._query = this._query || [], this.method = method, this.url = url, this.header = {}, this._header = {}, this.on(\"end\", function () {\n var new_error,\n error = null,\n res = null;\n try {\n res = new Response(self);\n } catch (err) {\n return (error = new Error(\"Parser is unable to parse the response\")).parse = !0, error.original = err, self.xhr ? (error.rawResponse = void 0 === self.xhr.responseType ? self.xhr.responseText : self.xhr.response, error.status = self.xhr.status ? self.xhr.status : null, error.statusCode = error.status) : (error.rawResponse = null, error.status = null), self.callback(error);\n }\n self.emit(\"response\", res);\n try {\n self._isResponseOK(res) || (new_error = new Error(res.statusText || res.text || \"Unsuccessful HTTP response\"));\n } catch (err) {\n new_error = err;\n }\n new_error ? (new_error.original = error, new_error.response = res, new_error.status = res.status, self.callback(new_error, res)) : self.callback(null, res);\n });\n }\n request.serializeObject = serialize, request.parseString = parseString, request.types = {\n html: \"text/html\",\n json: \"application/json\",\n xml: \"text/xml\",\n urlencoded: \"application/x-www-form-urlencoded\",\n form: \"application/x-www-form-urlencoded\",\n \"form-data\": \"application/x-www-form-urlencoded\"\n }, request.serialize = {\n \"application/x-www-form-urlencoded\": lib.stringify,\n \"application/json\": fastSafeStringify\n }, request.parse = {\n \"application/x-www-form-urlencoded\": parseString,\n \"application/json\": JSON.parse\n }, mixin(Response.prototype, responseBase.prototype), Response.prototype._parseBody = function (string_) {\n var parse = request.parse[this.type];\n return this.req._parser ? this.req._parser(this, string_) : (!parse && isJSON(this.type) && (parse = request.parse[\"application/json\"]), parse && string_ && (string_.length > 0 || string_ instanceof Object) ? parse(string_) : null);\n }, Response.prototype.toError = function () {\n var req = this.req,\n method = req.method,\n url = req.url,\n message = \"cannot \".concat(method, \" \").concat(url, \" (\").concat(this.status, \")\"),\n error = new Error(message);\n return error.status = this.status, error.method = method, error.url = url, error;\n }, request.Response = Response, componentEmitter(Request.prototype), mixin(Request.prototype, requestBase.prototype), Request.prototype.type = function (type) {\n return this.set(\"Content-Type\", request.types[type] || type), this;\n }, Request.prototype.accept = function (type) {\n return this.set(\"Accept\", request.types[type] || type), this;\n }, Request.prototype.auth = function (user, pass, options) {\n 1 === arguments.length && (pass = \"\"), \"object\" === _typeof(pass) && null !== pass && (options = pass, pass = \"\"), options || (options = {\n type: \"function\" == typeof btoa ? \"basic\" : \"auto\"\n });\n var encoder = options.encoder ? options.encoder : function (string) {\n if (\"function\" == typeof btoa) return btoa(string);\n throw new Error(\"Cannot use basic auth, btoa is not a function\");\n };\n return this._auth(user, pass, options, encoder);\n }, Request.prototype.query = function (value) {\n return \"string\" != typeof value && (value = serialize(value)), value && this._query.push(value), this;\n }, Request.prototype.attach = function (field, file, options) {\n if (file) {\n if (this._data) throw new Error(\"superagent can't mix .send() and .attach()\");\n this._getFormData().append(field, file, options || file.name);\n }\n return this;\n }, Request.prototype._getFormData = function () {\n return this._formData || (this._formData = new root.FormData()), this._formData;\n }, Request.prototype.callback = function (error, res) {\n if (this._shouldRetry(error, res)) return this._retry();\n var fn = this._callback;\n this.clearTimeout(), error && (this._maxRetries && (error.retries = this._retries - 1), this.emit(\"error\", error)), fn(error, res);\n }, Request.prototype.crossDomainError = function () {\n var error = new Error(\"Request has been terminated\\nPossible causes: the network is offline, Origin is not allowed by Access-Control-Allow-Origin, the page is being unloaded, etc.\");\n error.crossDomain = !0, error.status = this.status, error.method = this.method, error.url = this.url, this.callback(error);\n }, Request.prototype.agent = function () {\n return console.warn(\"This is not supported in browser version of superagent\"), this;\n }, Request.prototype.ca = Request.prototype.agent, Request.prototype.buffer = Request.prototype.ca, Request.prototype.write = function () {\n throw new Error(\"Streaming is not supported in browser version of superagent\");\n }, Request.prototype.pipe = Request.prototype.write, Request.prototype._isHost = function (object) {\n return object && \"object\" === _typeof(object) && !Array.isArray(object) && \"[object Object]\" !== Object.prototype.toString.call(object);\n }, Request.prototype.end = function (fn) {\n this._endCalled && console.warn(\"Warning: .end() was called twice. This is not supported in superagent\"), this._endCalled = !0, this._callback = fn || noop, this._finalizeQueryString(), this._end();\n }, Request.prototype._setUploadTimeout = function () {\n var self = this;\n this._uploadTimeout && !this._uploadTimeoutTimer && (this._uploadTimeoutTimer = setTimeout(function () {\n self._timeoutError(\"Upload timeout of \", self._uploadTimeout, \"ETIMEDOUT\");\n }, this._uploadTimeout));\n }, Request.prototype._end = function () {\n if (this._aborted) return this.callback(new Error(\"The request has been aborted even before .end() was called\"));\n var self = this;\n this.xhr = request.getXHR();\n var xhr = this.xhr,\n data = this._formData || this._data;\n this._setTimeouts(), xhr.addEventListener(\"readystatechange\", function () {\n var readyState = xhr.readyState;\n if (readyState >= 2 && self._responseTimeoutTimer && clearTimeout(self._responseTimeoutTimer), 4 === readyState) {\n var status;\n try {\n status = xhr.status;\n } catch (_unused5) {\n status = 0;\n }\n if (!status) {\n if (self.timedout || self._aborted) return;\n return self.crossDomainError();\n }\n self.emit(\"end\");\n }\n });\n var handleProgress = function (direction, e) {\n e.total > 0 && (e.percent = e.loaded / e.total * 100, 100 === e.percent && clearTimeout(self._uploadTimeoutTimer)), e.direction = direction, self.emit(\"progress\", e);\n };\n if (this.hasListeners(\"progress\")) try {\n xhr.addEventListener(\"progress\", handleProgress.bind(null, \"download\")), xhr.upload && xhr.upload.addEventListener(\"progress\", handleProgress.bind(null, \"upload\"));\n } catch (_unused6) {}\n xhr.upload && this._setUploadTimeout();\n try {\n this.username && this.password ? xhr.open(this.method, this.url, !0, this.username, this.password) : xhr.open(this.method, this.url, !0);\n } catch (err) {\n return this.callback(err);\n }\n if (this._withCredentials && (xhr.withCredentials = !0), !this._formData && \"GET\" !== this.method && \"HEAD\" !== this.method && \"string\" != typeof data && !this._isHost(data)) {\n var contentType = this._header[\"content-type\"],\n _serialize = this._serializer || request.serialize[contentType ? contentType.split(\";\")[0] : \"\"];\n !_serialize && isJSON(contentType) && (_serialize = request.serialize[\"application/json\"]), _serialize && (data = _serialize(data));\n }\n for (var field in this.header) null !== this.header[field] && hasOwn(this.header, field) && xhr.setRequestHeader(field, this.header[field]);\n this._responseType && (xhr.responseType = this._responseType), this.emit(\"request\", this), xhr.send(void 0 === data ? null : data);\n }, request.agent = function () {\n return new agentBase();\n };\n for (var _loop = function () {\n var method = _arr[_i];\n agentBase.prototype[method.toLowerCase()] = function (url, fn) {\n var request_ = new request.Request(method, url);\n return this._setDefaults(request_), fn && request_.end(fn), request_;\n };\n }, _i = 0, _arr = [\"GET\", \"POST\", \"OPTIONS\", \"PATCH\", \"PUT\", \"DELETE\"]; _i < _arr.length; _i++) _loop();\n function del(url, data, fn) {\n var request_ = request(\"DELETE\", url);\n return \"function\" == typeof data && (fn = data, data = null), data && request_.send(data), fn && request_.end(fn), request_;\n }\n agentBase.prototype.del = agentBase.prototype.delete, request.get = function (url, data, fn) {\n var request_ = request(\"GET\", url);\n return \"function\" == typeof data && (fn = data, data = null), data && request_.query(data), fn && request_.end(fn), request_;\n }, request.head = function (url, data, fn) {\n var request_ = request(\"HEAD\", url);\n return \"function\" == typeof data && (fn = data, data = null), data && request_.query(data), fn && request_.end(fn), request_;\n }, request.options = function (url, data, fn) {\n var request_ = request(\"OPTIONS\", url);\n return \"function\" == typeof data && (fn = data, data = null), data && request_.send(data), fn && request_.end(fn), request_;\n }, request.del = del, request.delete = del, request.patch = function (url, data, fn) {\n var request_ = request(\"PATCH\", url);\n return \"function\" == typeof data && (fn = data, data = null), data && request_.send(data), fn && request_.end(fn), request_;\n }, request.post = function (url, data, fn) {\n var request_ = request(\"POST\", url);\n return \"function\" == typeof data && (fn = data, data = null), data && request_.send(data), fn && request_.end(fn), request_;\n }, request.put = function (url, data, fn) {\n var request_ = request(\"PUT\", url);\n return \"function\" == typeof data && (fn = data, data = null), data && request_.send(data), fn && request_.end(fn), request_;\n };\n }), byteLength_1 = (client.Request, function (b64) {\n var lens = getLens(b64),\n validLen = lens[0],\n placeHoldersLen = lens[1];\n return 3 * (validLen + placeHoldersLen) / 4 - placeHoldersLen;\n }), toByteArray_1 = function (b64) {\n var tmp,\n i,\n lens = getLens(b64),\n validLen = lens[0],\n placeHoldersLen = lens[1],\n arr = new Arr(function (b64, validLen, placeHoldersLen) {\n return 3 * (validLen + placeHoldersLen) / 4 - placeHoldersLen;\n }(0, validLen, placeHoldersLen)),\n curByte = 0,\n len = placeHoldersLen > 0 ? validLen - 4 : validLen;\n for (i = 0; i < len; i += 4) tmp = revLookup[b64.charCodeAt(i)] << 18 | revLookup[b64.charCodeAt(i + 1)] << 12 | revLookup[b64.charCodeAt(i + 2)] << 6 | revLookup[b64.charCodeAt(i + 3)], arr[curByte++] = tmp >> 16 & 255, arr[curByte++] = tmp >> 8 & 255, arr[curByte++] = 255 & tmp;\n 2 === placeHoldersLen && (tmp = revLookup[b64.charCodeAt(i)] << 2 | revLookup[b64.charCodeAt(i + 1)] >> 4, arr[curByte++] = 255 & tmp);\n 1 === placeHoldersLen && (tmp = revLookup[b64.charCodeAt(i)] << 10 | revLookup[b64.charCodeAt(i + 1)] << 4 | revLookup[b64.charCodeAt(i + 2)] >> 2, arr[curByte++] = tmp >> 8 & 255, arr[curByte++] = 255 & tmp);\n return arr;\n }, fromByteArray_1 = function (uint8) {\n for (var tmp, len = uint8.length, extraBytes = len % 3, parts = [], i = 0, len2 = len - extraBytes; i < len2; i += 16383) parts.push(encodeChunk(uint8, i, i + 16383 > len2 ? len2 : i + 16383));\n 1 === extraBytes ? (tmp = uint8[len - 1], parts.push(lookup[tmp >> 2] + lookup[tmp << 4 & 63] + \"==\")) : 2 === extraBytes && (tmp = (uint8[len - 2] << 8) + uint8[len - 1], parts.push(lookup[tmp >> 10] + lookup[tmp >> 4 & 63] + lookup[tmp << 2 & 63] + \"=\"));\n return parts.join(\"\");\n }, lookup = [], revLookup = [], Arr = \"undefined\" != typeof Uint8Array ? Uint8Array : Array, code = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\", i = 0, len = code.length; i < len; ++i) lookup[i] = code[i], revLookup[code.charCodeAt(i)] = i;\nfunction getLens(b64) {\n var len = b64.length;\n if (len % 4 > 0) throw new Error(\"Invalid string. Length must be a multiple of 4\");\n var validLen = b64.indexOf(\"=\");\n return -1 === validLen && (validLen = len), [validLen, validLen === len ? 0 : 4 - validLen % 4];\n}\nfunction encodeChunk(uint8, start, end) {\n for (var tmp, num, output = [], i = start; i < end; i += 3) tmp = (uint8[i] << 16 & 16711680) + (uint8[i + 1] << 8 & 65280) + (255 & uint8[i + 2]), output.push(lookup[(num = tmp) >> 18 & 63] + lookup[num >> 12 & 63] + lookup[num >> 6 & 63] + lookup[63 & num]);\n return output.join(\"\");\n}\nrevLookup[\"-\".charCodeAt(0)] = 62, revLookup[\"_\".charCodeAt(0)] = 63;\nvar base64Js = {\n byteLength: byteLength_1,\n toByteArray: toByteArray_1,\n fromByteArray: fromByteArray_1\n};\nvar base64Url = {\n encode: function (str) {\n return base64Js.fromByteArray(function (str) {\n for (var arr = new Array(str.length), a = 0; a < str.length; a++) arr[a] = str.charCodeAt(a);\n return arr;\n }(str)).replace(/\\+/g, \"-\").replace(/\\//g, \"_\");\n },\n decode: function (str) {\n return str = function (str) {\n var mod = str.length % 4;\n return 0 === mod ? str : str + new Array(1 + (4 - mod)).join(\"=\");\n }(str).replace(/-/g, \"+\").replace(/_/g, \"/\"), function (array) {\n for (var result = \"\", i = 0; i < array.length; i++) result += String.fromCharCode(array[i]);\n return result;\n }(base64Js.toByteArray(str));\n }\n },\n version = {\n raw: \"9.28.0\"\n },\n toString = Object.prototype.toString;\nfunction attribute(o, attr, type, text) {\n if (type = \"array\" === type ? \"object\" : type, o && typeof o[attr] !== type) throw new Error(text);\n}\nfunction variable(o, type, text) {\n if (typeof o !== type) throw new Error(text);\n}\nfunction value(o, values, text) {\n if (-1 === values.indexOf(o)) throw new Error(text);\n}\nvar assert = {\n check: function (o, config, attributes) {\n if (config.optional && !o || variable(o, config.type, config.message), \"object\" === config.type && attributes) for (var keys = Object.keys(attributes), index = 0; index < keys.length; index++) {\n var a = keys[index];\n attributes[a].optional && !o[a] || attributes[a].condition && !attributes[a].condition(o) || (attribute(o, a, attributes[a].type, attributes[a].message), attributes[a].values && value(o[a], attributes[a].values, attributes[a].value_message));\n }\n },\n attribute: attribute,\n variable: variable,\n value: value,\n isArray: function (array) {\n return this.supportsIsArray() ? Array.isArray(array) : \"[object Array]\" === toString.call(array);\n },\n supportsIsArray: function () {\n return null != Array.isArray;\n }\n};\nfunction objectAssignPolyfill(target) {\n if (null == target) throw new TypeError(\"Cannot convert first argument to object\");\n for (var to = Object(target), i = 1; i < arguments.length; i++) {\n var nextSource = arguments[i];\n if (null != nextSource) for (var keysArray = Object.keys(Object(nextSource)), nextIndex = 0, len = keysArray.length; nextIndex < len; nextIndex++) {\n var nextKey = keysArray[nextIndex],\n desc = Object.getOwnPropertyDescriptor(nextSource, nextKey);\n void 0 !== desc && desc.enumerable && (to[nextKey] = nextSource[nextKey]);\n }\n }\n return to;\n}\nvar objectAssign = {\n get: function () {\n return Object.assign ? Object.assign : objectAssignPolyfill;\n },\n objectAssignPolyfill: objectAssignPolyfill\n};\nfunction pick(object, keys) {\n return keys.reduce(function (prev, key) {\n return object[key] && (prev[key] = object[key]), prev;\n }, {});\n}\nfunction objectValues(obj) {\n var values = [];\n for (var key in obj) values.push(obj[key]);\n return values;\n}\nfunction extend() {\n var params = objectValues(arguments);\n return params.unshift({}), objectAssign.get().apply(void 0, params);\n}\nfunction getLocationFromUrl(href) {\n var match = href.match(/^(https?:|file:|chrome-extension:)\\/\\/(([^:/?#]*)(?::([0-9]+))?)([/]{0,1}[^?#]*)(\\?[^#]*|)(#.*|)$/);\n return match && {\n href: href,\n protocol: match[1],\n host: match[2],\n hostname: match[3],\n port: match[4],\n pathname: match[5],\n search: match[6],\n hash: match[7]\n };\n}\nfunction trim(options, key) {\n var trimmed = extend(options);\n return options[key] && (trimmed[key] = options[key].trim()), trimmed;\n}\nvar objectHelper = {\n toSnakeCase: function toSnakeCase(object, exceptions) {\n return \"object\" != typeof object || assert.isArray(object) || null === object ? object : (exceptions = exceptions || [], Object.keys(object).reduce(function (p, key) {\n return p[-1 === exceptions.indexOf(key) ? function (str) {\n for (var code, newKey = \"\", index = 0, wasPrevNumber = !0, wasPrevUppercase = !0; index < str.length;) code = str.charCodeAt(index), !wasPrevUppercase && code >= 65 && code <= 90 || !wasPrevNumber && code >= 48 && code <= 57 ? (newKey += \"_\", newKey += str[index].toLowerCase()) : newKey += str[index].toLowerCase(), wasPrevNumber = code >= 48 && code <= 57, wasPrevUppercase = code >= 65 && code <= 90, index++;\n return newKey;\n }(key) : key] = toSnakeCase(object[key]), p;\n }, {}));\n },\n toCamelCase: function toCamelCase(object, exceptions, options) {\n return \"object\" != typeof object || assert.isArray(object) || null === object ? object : (exceptions = exceptions || [], options = options || {}, Object.keys(object).reduce(function (p, key) {\n var parts,\n newKey = -1 === exceptions.indexOf(key) ? (parts = key.split(\"_\")).reduce(function (p, c) {\n return p + c.charAt(0).toUpperCase() + c.slice(1);\n }, parts.shift()) : key;\n return p[newKey] = toCamelCase(object[newKey] || object[key], [], options), options.keepOriginal && (p[key] = toCamelCase(object[key], [], options)), p;\n }, {}));\n },\n blacklist: function (object, blacklistedKeys) {\n return Object.keys(object).reduce(function (p, key) {\n return -1 === blacklistedKeys.indexOf(key) && (p[key] = object[key]), p;\n }, {});\n },\n merge: function (object, keys) {\n return {\n base: keys ? pick(object, keys) : object,\n with: function (object2, keys2) {\n return object2 = keys2 ? pick(object2, keys2) : object2, extend(this.base, object2);\n }\n };\n },\n pick: pick,\n getKeysNotIn: function (obj, allowedKeys) {\n var notAllowed = [];\n for (var key in obj) -1 === allowedKeys.indexOf(key) && notAllowed.push(key);\n return notAllowed;\n },\n extend: extend,\n getOriginFromUrl: function (url) {\n if (url) {\n var parsed = getLocationFromUrl(url);\n if (!parsed) return null;\n var origin = parsed.protocol + \"//\" + parsed.hostname;\n return parsed.port && (origin += \":\" + parsed.port), origin;\n }\n },\n getLocationFromUrl: getLocationFromUrl,\n trimUserDetails: function (options) {\n return function (options, keys) {\n return keys.reduce(trim, options);\n }(options, [\"username\", \"email\", \"phoneNumber\"]);\n },\n updatePropertyOn: function updatePropertyOn(obj, path, value) {\n \"string\" == typeof path && (path = path.split(\".\"));\n var next = path[0];\n obj.hasOwnProperty(next) && (1 === path.length ? obj[next] = value : updatePropertyOn(obj[next], path.slice(1), value));\n }\n};\nfunction RequestWrapper(req) {\n this.request = req, this.method = req.method, this.url = req.url, this.body = req._data, this.headers = req._header;\n}\nfunction RequestObj(req) {\n this.request = req;\n}\nfunction RequestBuilder(options) {\n this._sendTelemetry = !1 !== options._sendTelemetry || options._sendTelemetry, this._telemetryInfo = options._telemetryInfo || null, this._timesToRetryFailedRequests = options._timesToRetryFailedRequests, this.headers = options.headers || {}, this._universalLoginPage = options.universalLoginPage;\n}\nfunction getWindow() {\n return window;\n}\nRequestWrapper.prototype.abort = function () {\n this.request.abort();\n}, RequestWrapper.prototype.getMethod = function () {\n return this.method;\n}, RequestWrapper.prototype.getBody = function () {\n return this.body;\n}, RequestWrapper.prototype.getUrl = function () {\n return this.url;\n}, RequestWrapper.prototype.getHeaders = function () {\n return this.headers;\n}, RequestObj.prototype.set = function (key, value) {\n return this.request = this.request.set(key, value), this;\n}, RequestObj.prototype.send = function (body) {\n return this.request = this.request.send(objectHelper.trimUserDetails(body)), this;\n}, RequestObj.prototype.withCredentials = function () {\n return this.request = this.request.withCredentials(), this;\n}, RequestObj.prototype.end = function (cb) {\n return this.request.end(cb), new RequestWrapper(this.request);\n}, RequestBuilder.prototype.setCommonConfiguration = function (ongoingRequest, options) {\n if (options = options || {}, this._timesToRetryFailedRequests > 0 && (ongoingRequest = ongoingRequest.retry(this._timesToRetryFailedRequests)), options.noHeaders) return ongoingRequest;\n var headers = this.headers;\n ongoingRequest = ongoingRequest.set(\"Content-Type\", \"application/json\"), options.xRequestLanguage && (ongoingRequest = ongoingRequest.set(\"X-Request-Language\", options.xRequestLanguage));\n for (var keys = Object.keys(this.headers), a = 0; a < keys.length; a++) ongoingRequest = ongoingRequest.set(keys[a], headers[keys[a]]);\n return this._sendTelemetry && (ongoingRequest = ongoingRequest.set(\"Auth0-Client\", this.getTelemetryData())), ongoingRequest;\n}, RequestBuilder.prototype.getTelemetryData = function () {\n var telemetryName = this._universalLoginPage ? \"auth0.js-ulp\" : \"auth0.js\",\n clientInfo = {\n name: telemetryName,\n version: version.raw\n };\n this._telemetryInfo && ((clientInfo = objectHelper.extend({}, this._telemetryInfo)).env = objectHelper.extend({}, this._telemetryInfo.env), clientInfo.env[telemetryName] = version.raw);\n var jsonClientInfo = JSON.stringify(clientInfo);\n return base64Url.encode(jsonClientInfo);\n}, RequestBuilder.prototype.get = function (url, options) {\n return new RequestObj(this.setCommonConfiguration(client.get(url), options));\n}, RequestBuilder.prototype.post = function (url, options) {\n return new RequestObj(this.setCommonConfiguration(client.post(url), options));\n}, RequestBuilder.prototype.patch = function (url, options) {\n return new RequestObj(this.setCommonConfiguration(client.patch(url), options));\n};\nvar windowHelper = {\n redirect: function (url) {\n getWindow().location = url;\n },\n getDocument: function () {\n return getWindow().document;\n },\n getWindow: getWindow,\n getOrigin: function () {\n var location = getWindow().location,\n origin = location.origin;\n return origin || (origin = objectHelper.getOriginFromUrl(location.href)), origin;\n }\n};\nfunction DummyStorage() {}\nDummyStorage.prototype.getItem = function () {\n return null;\n}, DummyStorage.prototype.removeItem = function () {}, DummyStorage.prototype.setItem = function () {};\nvar js_cookie = createCommonjsModule(function (module, exports) {\n var factory;\n factory = function () {\n function extend() {\n for (var i = 0, result = {}; i < arguments.length; i++) {\n var attributes = arguments[i];\n for (var key in attributes) result[key] = attributes[key];\n }\n return result;\n }\n function decode(s) {\n return s.replace(/(%[0-9A-Z]{2})+/g, decodeURIComponent);\n }\n return function init(converter) {\n function api() {}\n function set(key, value, attributes) {\n if (\"undefined\" != typeof document) {\n \"number\" == typeof (attributes = extend({\n path: \"/\"\n }, api.defaults, attributes)).expires && (attributes.expires = new Date(1 * new Date() + 864e5 * attributes.expires)), attributes.expires = attributes.expires ? attributes.expires.toUTCString() : \"\";\n try {\n var result = JSON.stringify(value);\n /^[\\{\\[]/.test(result) && (value = result);\n } catch (e) {}\n value = converter.write ? converter.write(value, key) : encodeURIComponent(String(value)).replace(/%(23|24|26|2B|3A|3C|3E|3D|2F|3F|40|5B|5D|5E|60|7B|7D|7C)/g, decodeURIComponent), key = encodeURIComponent(String(key)).replace(/%(23|24|26|2B|5E|60|7C)/g, decodeURIComponent).replace(/[\\(\\)]/g, escape);\n var stringifiedAttributes = \"\";\n for (var attributeName in attributes) attributes[attributeName] && (stringifiedAttributes += \"; \" + attributeName, !0 !== attributes[attributeName] && (stringifiedAttributes += \"=\" + attributes[attributeName].split(\";\")[0]));\n return document.cookie = key + \"=\" + value + stringifiedAttributes;\n }\n }\n function get(key, json) {\n if (\"undefined\" != typeof document) {\n for (var jar = {}, cookies = document.cookie ? document.cookie.split(\"; \") : [], i = 0; i < cookies.length; i++) {\n var parts = cookies[i].split(\"=\"),\n cookie = parts.slice(1).join(\"=\");\n json || '\"' !== cookie.charAt(0) || (cookie = cookie.slice(1, -1));\n try {\n var name = decode(parts[0]);\n if (cookie = (converter.read || converter)(cookie, name) || decode(cookie), json) try {\n cookie = JSON.parse(cookie);\n } catch (e) {}\n if (jar[name] = cookie, key === name) break;\n } catch (e) {}\n }\n return key ? jar[key] : jar;\n }\n }\n return api.set = set, api.get = function (key) {\n return get(key, !1);\n }, api.getJSON = function (key) {\n return get(key, !0);\n }, api.remove = function (key, attributes) {\n set(key, \"\", extend(attributes, {\n expires: -1\n }));\n }, api.defaults = {}, api.withConverter = init, api;\n }(function () {});\n }, module.exports = factory();\n});\nfunction buildCompatCookieKey(key) {\n return \"_\" + key + \"_compat\";\n}\nfunction CookieStorage(options) {\n this._options = options || {};\n}\nfunction Warn(options) {\n this.disableWarnings = options.disableWarnings;\n}\nfunction StorageHandler(options) {\n if (this.warn = new Warn({}), this.storage = new CookieStorage(options), !0 === options.__tryLocalStorageFirst) try {\n var localStorage = windowHelper.getWindow().localStorage;\n localStorage && (this.storage = localStorage);\n } catch (e) {\n this.warn.warning(e), this.warn.warning(\"Can't use localStorage. Using CookieStorage instead.\");\n }\n}\nfunction Storage(options) {\n this.handler = new StorageHandler(options);\n}\nfunction SSODataStorage(options) {\n this.storage = new Storage(options);\n}\nfunction buildResponse(error, description) {\n return {\n error: error,\n errorDescription: description\n };\n}\nCookieStorage.prototype.getItem = function (key) {\n return js_cookie.get(key) || js_cookie.get(buildCompatCookieKey(key));\n}, CookieStorage.prototype.removeItem = function (key) {\n var params = {};\n this._options.cookieDomain && (params.domain = this._options.cookieDomain), js_cookie.remove(key, params), js_cookie.remove(buildCompatCookieKey(key), params);\n}, CookieStorage.prototype.setItem = function (key, value, options) {\n var params = objectHelper.extend({\n expires: 1\n }, options);\n if (\"https:\" === windowHelper.getWindow().location.protocol && (params.secure = !0, params.sameSite = \"none\", this._options.legacySameSiteCookie)) {\n var legacyOptions = objectHelper.blacklist(params, [\"sameSite\"]);\n js_cookie.set(buildCompatCookieKey(key), value, legacyOptions);\n }\n this._options.cookieDomain && (params.domain = this._options.cookieDomain), js_cookie.set(key, value, params);\n}, Warn.prototype.warning = function (message) {\n this.disableWarnings || console.warn(message);\n}, StorageHandler.prototype.failover = function () {\n this.storage instanceof DummyStorage ? this.warn.warning(\"DummyStorage: ignore failover\") : this.storage instanceof CookieStorage ? (this.warn.warning(\"CookieStorage: failing over DummyStorage\"), this.storage = new DummyStorage()) : (this.warn.warning(\"LocalStorage: failing over CookieStorage\"), this.storage = new CookieStorage());\n}, StorageHandler.prototype.getItem = function (key) {\n try {\n return this.storage.getItem(key);\n } catch (e) {\n return this.warn.warning(e), this.failover(), this.getItem(key);\n }\n}, StorageHandler.prototype.removeItem = function (key) {\n try {\n return this.storage.removeItem(key);\n } catch (e) {\n return this.warn.warning(e), this.failover(), this.removeItem(key);\n }\n}, StorageHandler.prototype.setItem = function (key, value, options) {\n try {\n return this.storage.setItem(key, value, options);\n } catch (e) {\n return this.warn.warning(e), this.failover(), this.setItem(key, value, options);\n }\n}, Storage.prototype.getItem = function (key) {\n var value = this.handler.getItem(key);\n try {\n return JSON.parse(value);\n } catch (_) {\n return value;\n }\n}, Storage.prototype.removeItem = function (key) {\n return this.handler.removeItem(key);\n}, Storage.prototype.setItem = function (key, value, options) {\n var json = JSON.stringify(value);\n return this.handler.setItem(key, json, options);\n}, SSODataStorage.prototype.set = function (connection, sub) {\n var ssodata = {\n lastUsedConnection: connection,\n lastUsedSub: sub\n };\n this.storage.setItem(\"auth0.ssodata\", JSON.stringify(ssodata));\n}, SSODataStorage.prototype.get = function () {\n var ssodata = this.storage.getItem(\"auth0.ssodata\");\n if (ssodata) return JSON.parse(ssodata);\n};\nvar error = {\n buildResponse: buildResponse,\n invalidToken: function (description) {\n return buildResponse(\"invalid_token\", description);\n }\n};\nfunction wrapCallback(cb, options) {\n return (options = options || {}).ignoreCasing = !!options.ignoreCasing && options.ignoreCasing, function (err, data) {\n var errObj;\n return err || data ? (!err && data.err && (err = data.err, data = null), !err && data.error && (err = data, data = null), err ? (errObj = {\n original: err\n }, objectHelper.updatePropertyOn(errObj, \"original.response.req._data.password\", \"*****\"), err.response && err.response.statusCode && (errObj.statusCode = err.response.statusCode), err.response && err.response.statusText && (errObj.statusText = err.response.statusText), err.response && err.response.body && (err = err.response.body), err.err && (err = err.err), errObj.code = err.code || err.error || err.error_code || err.status || null, errObj.description = err.errorDescription || err.error_description || err.description || err.error || err.details || err.err || null, options.forceLegacyError && (errObj.error = errObj.code, errObj.error_description = errObj.description), err.error_codes && err.error_details && (errObj.errorDetails = {\n codes: err.error_codes,\n details: err.error_details\n }), err.name && (errObj.name = err.name), err.policy && (errObj.policy = err.policy), cb(errObj)) : !data.type || \"text/html\" !== data.type && \"text/plain\" !== data.type ? options.ignoreCasing ? cb(null, data.body || data) : cb(null, objectHelper.toCamelCase(data.body || data, [], {\n keepOriginal: options.keepOriginalCasing\n })) : cb(null, data.text)) : cb(error.buildResponse(\"generic_error\", \"Something went wrong\"));\n };\n}\nvar tokenParams = [\"realm\", \"audience\", \"otp\", \"client_id\", \"client_secret\", \"redirect_uri\", \"scope\", \"code\", \"grant_type\", \"username\", \"password\", \"refresh_token\", \"assertion\", \"client_assertion\", \"client_assertion_type\", \"code_verifier\"],\n authorizeParams = [\"connection\", \"connection_scope\", \"auth0Client\", \"owp\", \"device\", \"realm\", \"organization\", \"invitation\", \"protocol\", \"_csrf\", \"_intstate\", \"login_ticket\", \"client_id\", \"response_type\", \"response_mode\", \"redirect_uri\", \"audience\", \"scope\", \"state\", \"nonce\", \"display\", \"prompt\", \"screen_hint\", \"max_age\", \"ui_locales\", \"claims_locales\", \"id_token_hint\", \"login_hint\", \"acr_values\", \"claims\", \"registration\", \"request\", \"request_uri\", \"code_challenge\", \"code_challenge_method\", \"access_type\", \"display\"];\nvar parametersWhitelist = {\n oauthTokenParams: function (warn, params) {\n return objectHelper.pick(params, tokenParams);\n },\n oauthAuthorizeParams: function (warn, params) {\n var notAllowed = objectHelper.getKeysNotIn(params, authorizeParams);\n return notAllowed.length > 0 && warn.warning(\"Following parameters are not allowed on the `/authorize` endpoint: [\" + notAllowed.join(\",\") + \"]\"), params;\n }\n },\n t = \"undefined\" != typeof globalThis ? globalThis : \"undefined\" != typeof window ? window : \"undefined\" != typeof global ? global : \"undefined\" != typeof self ? self : {};\nfunction e(t) {\n var e = {\n exports: {}\n };\n return t(e, e.exports), e.exports;\n}\nvar r = e(function (e, r) {\n e.exports = function () {\n function e(t) {\n return \"function\" == typeof t;\n }\n var r = Array.isArray ? Array.isArray : function (t) {\n return \"[object Array]\" === Object.prototype.toString.call(t);\n },\n i = 0,\n n = void 0,\n o = void 0,\n s = function (t, e) {\n l[i] = t, l[i + 1] = e, 2 === (i += 2) && (o ? o(d) : w());\n },\n h = \"undefined\" != typeof window ? window : void 0,\n u = h || {},\n a = u.MutationObserver || u.WebKitMutationObserver,\n f = \"undefined\" == typeof self && \"undefined\" != typeof process && \"[object process]\" === {}.toString.call(process),\n c = \"undefined\" != typeof Uint8ClampedArray && \"undefined\" != typeof importScripts && \"undefined\" != typeof MessageChannel;\n function p() {\n var t = setTimeout;\n return function () {\n return t(d, 1);\n };\n }\n var l = new Array(1e3);\n function d() {\n for (var t = 0; t < i; t += 2) (0, l[t])(l[t + 1]), l[t] = void 0, l[t + 1] = void 0;\n i = 0;\n }\n var m,\n v,\n y,\n g,\n w = void 0;\n function T(t, e) {\n var r = this,\n i = new this.constructor(S);\n void 0 === i[_] && N(i);\n var n = r._state;\n if (n) {\n var o = arguments[n - 1];\n s(function () {\n return O(n, i, o, r._result);\n });\n } else C(r, i, t, e);\n return i;\n }\n function b(t) {\n if (t && \"object\" == typeof t && t.constructor === this) return t;\n var e = new this(S);\n return E(e, t), e;\n }\n w = f ? function () {\n return process.nextTick(d);\n } : a ? (v = 0, y = new a(d), g = document.createTextNode(\"\"), y.observe(g, {\n characterData: !0\n }), function () {\n g.data = v = ++v % 2;\n }) : c ? ((m = new MessageChannel()).port1.onmessage = d, function () {\n return m.port2.postMessage(0);\n }) : void 0 === h ? function () {\n try {\n var t = Function(\"return this\")().require(\"vertx\");\n return void 0 !== (n = t.runOnLoop || t.runOnContext) ? function () {\n n(d);\n } : p();\n } catch (t) {\n return p();\n }\n }() : p();\n var _ = Math.random().toString(36).substring(2);\n function S() {}\n var A = void 0;\n function x(t, r, i) {\n r.constructor === t.constructor && i === T && r.constructor.resolve === b ? function (t, e) {\n 1 === e._state ? I(t, e._result) : 2 === e._state ? M(t, e._result) : C(e, void 0, function (e) {\n return E(t, e);\n }, function (e) {\n return M(t, e);\n });\n }(t, r) : void 0 === i ? I(t, r) : e(i) ? function (t, e, r) {\n s(function (t) {\n var i = !1,\n n = function (r, n, o, s) {\n try {\n r.call(n, function (r) {\n i || (i = !0, e !== r ? E(t, r) : I(t, r));\n }, function (e) {\n i || (i = !0, M(t, e));\n });\n } catch (t) {\n return t;\n }\n }(r, e);\n !i && n && (i = !0, M(t, n));\n }, t);\n }(t, r, i) : I(t, r);\n }\n function E(t, e) {\n if (t === e) M(t, new TypeError(\"You cannot resolve a promise with itself\"));else if (n = typeof (i = e), null === i || \"object\" !== n && \"function\" !== n) I(t, e);else {\n var r = void 0;\n try {\n r = e.then;\n } catch (e) {\n return void M(t, e);\n }\n x(t, e, r);\n }\n var i, n;\n }\n function k(t) {\n t._onerror && t._onerror(t._result), R(t);\n }\n function I(t, e) {\n t._state === A && (t._result = e, t._state = 1, 0 !== t._subscribers.length && s(R, t));\n }\n function M(t, e) {\n t._state === A && (t._state = 2, t._result = e, s(k, t));\n }\n function C(t, e, r, i) {\n var n = t._subscribers,\n o = n.length;\n t._onerror = null, n[o] = e, n[o + 1] = r, n[o + 2] = i, 0 === o && t._state && s(R, t);\n }\n function R(t) {\n var e = t._subscribers,\n r = t._state;\n if (0 !== e.length) {\n for (var i = void 0, n = void 0, o = t._result, s = 0; s < e.length; s += 3) n = e[s + r], (i = e[s]) ? O(r, i, n, o) : n(o);\n t._subscribers.length = 0;\n }\n }\n function O(t, r, i, n) {\n var o = e(i),\n s = void 0,\n h = void 0,\n u = !0;\n if (o) {\n try {\n s = i(n);\n } catch (t) {\n u = !1, h = t;\n }\n if (r === s) return void M(r, new TypeError(\"A promises callback cannot return that same promise.\"));\n } else s = n;\n r._state !== A || (o && u ? E(r, s) : !1 === u ? M(r, h) : 1 === t ? I(r, s) : 2 === t && M(r, s));\n }\n var j = 0;\n function N(t) {\n t[_] = j++, t._state = void 0, t._result = void 0, t._subscribers = [];\n }\n var P = function () {\n function t(t, e) {\n this._instanceConstructor = t, this.promise = new t(S), this.promise[_] || N(this.promise), r(e) ? (this.length = e.length, this._remaining = e.length, this._result = new Array(this.length), 0 === this.length ? I(this.promise, this._result) : (this.length = this.length || 0, this._enumerate(e), 0 === this._remaining && I(this.promise, this._result))) : M(this.promise, new Error(\"Array Methods must be provided an Array\"));\n }\n return t.prototype._enumerate = function (t) {\n for (var e = 0; this._state === A && e < t.length; e++) this._eachEntry(t[e], e);\n }, t.prototype._eachEntry = function (t, e) {\n var r = this._instanceConstructor,\n i = r.resolve;\n if (i === b) {\n var n = void 0,\n o = void 0,\n s = !1;\n try {\n n = t.then;\n } catch (t) {\n s = !0, o = t;\n }\n if (n === T && t._state !== A) this._settledAt(t._state, e, t._result);else if (\"function\" != typeof n) this._remaining--, this._result[e] = t;else if (r === V) {\n var h = new r(S);\n s ? M(h, o) : x(h, t, n), this._willSettleAt(h, e);\n } else this._willSettleAt(new r(function (e) {\n return e(t);\n }), e);\n } else this._willSettleAt(i(t), e);\n }, t.prototype._settledAt = function (t, e, r) {\n var i = this.promise;\n i._state === A && (this._remaining--, 2 === t ? M(i, r) : this._result[e] = r), 0 === this._remaining && I(i, this._result);\n }, t.prototype._willSettleAt = function (t, e) {\n var r = this;\n C(t, void 0, function (t) {\n return r._settledAt(1, e, t);\n }, function (t) {\n return r._settledAt(2, e, t);\n });\n }, t;\n }(),\n V = function () {\n function t(e) {\n this[_] = j++, this._result = this._state = void 0, this._subscribers = [], S !== e && (\"function\" != typeof e && function () {\n throw new TypeError(\"You must pass a resolver function as the first argument to the promise constructor\");\n }(), this instanceof t ? function (t, e) {\n try {\n e(function (e) {\n E(t, e);\n }, function (e) {\n M(t, e);\n });\n } catch (e) {\n M(t, e);\n }\n }(this, e) : function () {\n throw new TypeError(\"Failed to construct 'Promise': Please use the 'new' operator, this object constructor cannot be called as a function.\");\n }());\n }\n return t.prototype.catch = function (t) {\n return this.then(null, t);\n }, t.prototype.finally = function (t) {\n var r = this,\n i = r.constructor;\n return e(t) ? r.then(function (e) {\n return i.resolve(t()).then(function () {\n return e;\n });\n }, function (e) {\n return i.resolve(t()).then(function () {\n throw e;\n });\n }) : r.then(t, t);\n }, t;\n }();\n return V.prototype.then = T, V.all = function (t) {\n return new P(this, t).promise;\n }, V.race = function (t) {\n var e = this;\n return r(t) ? new e(function (r, i) {\n for (var n = t.length, o = 0; o < n; o++) e.resolve(t[o]).then(r, i);\n }) : new e(function (t, e) {\n return e(new TypeError(\"You must pass an array to race.\"));\n });\n }, V.resolve = b, V.reject = function (t) {\n var e = new this(S);\n return M(e, t), e;\n }, V._setScheduler = function (t) {\n o = t;\n }, V._setAsap = function (t) {\n s = t;\n }, V._asap = s, V.polyfill = function () {\n var e = void 0;\n if (void 0 !== t) e = t;else if (\"undefined\" != typeof self) e = self;else try {\n e = Function(\"return this\")();\n } catch (t) {\n throw new Error(\"polyfill failed because global object is unavailable in this environment\");\n }\n var r = e.Promise;\n if (r) {\n var i = null;\n try {\n i = Object.prototype.toString.call(r.resolve());\n } catch (t) {}\n if (\"[object Promise]\" === i && !r.cast) return;\n }\n e.Promise = V;\n }, V.Promise = V, V;\n }();\n }),\n i$1 = {\n __proto__: null,\n default: {}\n },\n n = e(function (e, r) {\n var n;\n e.exports = n = n || function (e, r) {\n var n;\n if (\"undefined\" != typeof window && window.crypto && (n = window.crypto), \"undefined\" != typeof self && self.crypto && (n = self.crypto), \"undefined\" != typeof globalThis && globalThis.crypto && (n = globalThis.crypto), !n && \"undefined\" != typeof window && window.msCrypto && (n = window.msCrypto), !n && void 0 !== t && t.crypto && (n = t.crypto), !n) try {\n n = i$1;\n } catch (t) {}\n var o = function () {\n if (n) {\n if (\"function\" == typeof n.getRandomValues) try {\n return n.getRandomValues(new Uint32Array(1))[0];\n } catch (t) {}\n if (\"function\" == typeof n.randomBytes) try {\n return n.randomBytes(4).readInt32LE();\n } catch (t) {}\n }\n throw new Error(\"Native crypto module could not be used to get secure random number.\");\n },\n s = Object.create || function () {\n function t() {}\n return function (e) {\n var r;\n return t.prototype = e, r = new t(), t.prototype = null, r;\n };\n }(),\n h = {},\n u = h.lib = {},\n a = u.Base = {\n extend: function (t) {\n var e = s(this);\n return t && e.mixIn(t), e.hasOwnProperty(\"init\") && this.init !== e.init || (e.init = function () {\n e.$super.init.apply(this, arguments);\n }), e.init.prototype = e, e.$super = this, e;\n },\n create: function () {\n var t = this.extend();\n return t.init.apply(t, arguments), t;\n },\n init: function () {},\n mixIn: function (t) {\n for (var e in t) t.hasOwnProperty(e) && (this[e] = t[e]);\n t.hasOwnProperty(\"toString\") && (this.toString = t.toString);\n },\n clone: function () {\n return this.init.prototype.extend(this);\n }\n },\n f = u.WordArray = a.extend({\n init: function (t, e) {\n t = this.words = t || [], this.sigBytes = null != e ? e : 4 * t.length;\n },\n toString: function (t) {\n return (t || p).stringify(this);\n },\n concat: function (t) {\n var e = this.words,\n r = t.words,\n i = this.sigBytes,\n n = t.sigBytes;\n if (this.clamp(), i % 4) for (var o = 0; o < n; o++) e[i + o >>> 2] |= (r[o >>> 2] >>> 24 - o % 4 * 8 & 255) << 24 - (i + o) % 4 * 8;else for (var s = 0; s < n; s += 4) e[i + s >>> 2] = r[s >>> 2];\n return this.sigBytes += n, this;\n },\n clamp: function () {\n var t = this.words,\n r = this.sigBytes;\n t[r >>> 2] &= 4294967295 << 32 - r % 4 * 8, t.length = e.ceil(r / 4);\n },\n clone: function () {\n var t = a.clone.call(this);\n return t.words = this.words.slice(0), t;\n },\n random: function (t) {\n for (var e = [], r = 0; r < t; r += 4) e.push(o());\n return new f.init(e, t);\n }\n }),\n c = h.enc = {},\n p = c.Hex = {\n stringify: function (t) {\n for (var e = t.words, r = t.sigBytes, i = [], n = 0; n < r; n++) {\n var o = e[n >>> 2] >>> 24 - n % 4 * 8 & 255;\n i.push((o >>> 4).toString(16)), i.push((15 & o).toString(16));\n }\n return i.join(\"\");\n },\n parse: function (t) {\n for (var e = t.length, r = [], i = 0; i < e; i += 2) r[i >>> 3] |= parseInt(t.substr(i, 2), 16) << 24 - i % 8 * 4;\n return new f.init(r, e / 2);\n }\n },\n l = c.Latin1 = {\n stringify: function (t) {\n for (var e = t.words, r = t.sigBytes, i = [], n = 0; n < r; n++) i.push(String.fromCharCode(e[n >>> 2] >>> 24 - n % 4 * 8 & 255));\n return i.join(\"\");\n },\n parse: function (t) {\n for (var e = t.length, r = [], i = 0; i < e; i++) r[i >>> 2] |= (255 & t.charCodeAt(i)) << 24 - i % 4 * 8;\n return new f.init(r, e);\n }\n },\n d = c.Utf8 = {\n stringify: function (t) {\n try {\n return decodeURIComponent(escape(l.stringify(t)));\n } catch (t) {\n throw new Error(\"Malformed UTF-8 data\");\n }\n },\n parse: function (t) {\n return l.parse(unescape(encodeURIComponent(t)));\n }\n },\n m = u.BufferedBlockAlgorithm = a.extend({\n reset: function () {\n this._data = new f.init(), this._nDataBytes = 0;\n },\n _append: function (t) {\n \"string\" == typeof t && (t = d.parse(t)), this._data.concat(t), this._nDataBytes += t.sigBytes;\n },\n _process: function (t) {\n var r,\n i = this._data,\n n = i.words,\n o = i.sigBytes,\n s = this.blockSize,\n h = o / (4 * s),\n u = (h = t ? e.ceil(h) : e.max((0 | h) - this._minBufferSize, 0)) * s,\n a = e.min(4 * u, o);\n if (u) {\n for (var c = 0; c < u; c += s) this._doProcessBlock(n, c);\n r = n.splice(0, u), i.sigBytes -= a;\n }\n return new f.init(r, a);\n },\n clone: function () {\n var t = a.clone.call(this);\n return t._data = this._data.clone(), t;\n },\n _minBufferSize: 0\n });\n u.Hasher = m.extend({\n cfg: a.extend(),\n init: function (t) {\n this.cfg = this.cfg.extend(t), this.reset();\n },\n reset: function () {\n m.reset.call(this), this._doReset();\n },\n update: function (t) {\n return this._append(t), this._process(), this;\n },\n finalize: function (t) {\n return t && this._append(t), this._doFinalize();\n },\n blockSize: 16,\n _createHelper: function (t) {\n return function (e, r) {\n return new t.init(r).finalize(e);\n };\n },\n _createHmacHelper: function (t) {\n return function (e, r) {\n return new v.HMAC.init(t, r).finalize(e);\n };\n }\n });\n var v = h.algo = {};\n return h;\n }(Math);\n }),\n o = e(function (t, e) {\n var r;\n t.exports = (r = n, function (t) {\n var e = r,\n i = e.lib,\n n = i.WordArray,\n o = i.Hasher,\n s = e.algo,\n h = [],\n u = [];\n !function () {\n function e(e) {\n for (var r = t.sqrt(e), i = 2; i <= r; i++) if (!(e % i)) return !1;\n return !0;\n }\n function r(t) {\n return 4294967296 * (t - (0 | t)) | 0;\n }\n for (var i = 2, n = 0; n < 64;) e(i) && (n < 8 && (h[n] = r(t.pow(i, .5))), u[n] = r(t.pow(i, 1 / 3)), n++), i++;\n }();\n var a = [],\n f = s.SHA256 = o.extend({\n _doReset: function () {\n this._hash = new n.init(h.slice(0));\n },\n _doProcessBlock: function (t, e) {\n for (var r = this._hash.words, i = r[0], n = r[1], o = r[2], s = r[3], h = r[4], f = r[5], c = r[6], p = r[7], l = 0; l < 64; l++) {\n if (l < 16) a[l] = 0 | t[e + l];else {\n var d = a[l - 15],\n m = a[l - 2];\n a[l] = ((d << 25 | d >>> 7) ^ (d << 14 | d >>> 18) ^ d >>> 3) + a[l - 7] + ((m << 15 | m >>> 17) ^ (m << 13 | m >>> 19) ^ m >>> 10) + a[l - 16];\n }\n var v = i & n ^ i & o ^ n & o,\n y = p + ((h << 26 | h >>> 6) ^ (h << 21 | h >>> 11) ^ (h << 7 | h >>> 25)) + (h & f ^ ~h & c) + u[l] + a[l];\n p = c, c = f, f = h, h = s + y | 0, s = o, o = n, n = i, i = y + (((i << 30 | i >>> 2) ^ (i << 19 | i >>> 13) ^ (i << 10 | i >>> 22)) + v) | 0;\n }\n r[0] = r[0] + i | 0, r[1] = r[1] + n | 0, r[2] = r[2] + o | 0, r[3] = r[3] + s | 0, r[4] = r[4] + h | 0, r[5] = r[5] + f | 0, r[6] = r[6] + c | 0, r[7] = r[7] + p | 0;\n },\n _doFinalize: function () {\n var e = this._data,\n r = e.words,\n i = 8 * this._nDataBytes,\n n = 8 * e.sigBytes;\n return r[n >>> 5] |= 128 << 24 - n % 32, r[14 + (n + 64 >>> 9 << 4)] = t.floor(i / 4294967296), r[15 + (n + 64 >>> 9 << 4)] = i, e.sigBytes = 4 * r.length, this._process(), this._hash;\n },\n clone: function () {\n var t = o.clone.call(this);\n return t._hash = this._hash.clone(), t;\n }\n });\n e.SHA256 = o._createHelper(f), e.HmacSHA256 = o._createHmacHelper(f);\n }(Math), r.SHA256);\n }),\n s = e(function (t, e) {\n var r, i;\n t.exports = (i = (r = n).lib.WordArray, r.enc.Base64 = {\n stringify: function (t) {\n var e = t.words,\n r = t.sigBytes,\n i = this._map;\n t.clamp();\n for (var n = [], o = 0; o < r; o += 3) for (var s = (e[o >>> 2] >>> 24 - o % 4 * 8 & 255) << 16 | (e[o + 1 >>> 2] >>> 24 - (o + 1) % 4 * 8 & 255) << 8 | e[o + 2 >>> 2] >>> 24 - (o + 2) % 4 * 8 & 255, h = 0; h < 4 && o + .75 * h < r; h++) n.push(i.charAt(s >>> 6 * (3 - h) & 63));\n var u = i.charAt(64);\n if (u) for (; n.length % 4;) n.push(u);\n return n.join(\"\");\n },\n parse: function (t) {\n var e = t.length,\n r = this._map,\n n = this._reverseMap;\n if (!n) {\n n = this._reverseMap = [];\n for (var o = 0; o < r.length; o++) n[r.charCodeAt(o)] = o;\n }\n var s = r.charAt(64);\n if (s) {\n var h = t.indexOf(s);\n -1 !== h && (e = h);\n }\n return function (t, e, r) {\n for (var n = [], o = 0, s = 0; s < e; s++) if (s % 4) {\n var h = r[t.charCodeAt(s - 1)] << s % 4 * 2,\n u = r[t.charCodeAt(s)] >>> 6 - s % 4 * 2;\n n[o >>> 2] |= (h | u) << 24 - o % 4 * 8, o++;\n }\n return i.create(n, o);\n }(t, e, n);\n },\n _map: \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\"\n }, r.enc.Base64);\n }),\n h = e(function (t, e) {\n t.exports = n.enc.Hex;\n }),\n u = e(function (e, r) {\n (function () {\n var t;\n function r(t, e, r) {\n null != t && (\"number\" == typeof t ? this.fromNumber(t, e, r) : this.fromString(t, null == e && \"string\" != typeof t ? 256 : e));\n }\n function i() {\n return new r(null);\n }\n var n = \"undefined\" != typeof navigator;\n n && \"Microsoft Internet Explorer\" == navigator.appName ? (r.prototype.am = function (t, e, r, i, n, o) {\n for (var s = 32767 & e, h = e >> 15; --o >= 0;) {\n var u = 32767 & this[t],\n a = this[t++] >> 15,\n f = h * u + a * s;\n n = ((u = s * u + ((32767 & f) << 15) + r[i] + (1073741823 & n)) >>> 30) + (f >>> 15) + h * a + (n >>> 30), r[i++] = 1073741823 & u;\n }\n return n;\n }, t = 30) : n && \"Netscape\" != navigator.appName ? (r.prototype.am = function (t, e, r, i, n, o) {\n for (; --o >= 0;) {\n var s = e * this[t++] + r[i] + n;\n n = Math.floor(s / 67108864), r[i++] = 67108863 & s;\n }\n return n;\n }, t = 26) : (r.prototype.am = function (t, e, r, i, n, o) {\n for (var s = 16383 & e, h = e >> 14; --o >= 0;) {\n var u = 16383 & this[t],\n a = this[t++] >> 14,\n f = h * u + a * s;\n n = ((u = s * u + ((16383 & f) << 14) + r[i] + n) >> 28) + (f >> 14) + h * a, r[i++] = 268435455 & u;\n }\n return n;\n }, t = 28), r.prototype.DB = t, r.prototype.DM = (1 << t) - 1, r.prototype.DV = 1 << t, r.prototype.FV = Math.pow(2, 52), r.prototype.F1 = 52 - t, r.prototype.F2 = 2 * t - 52;\n var o,\n s,\n h = new Array();\n for (o = \"0\".charCodeAt(0), s = 0; s <= 9; ++s) h[o++] = s;\n for (o = \"a\".charCodeAt(0), s = 10; s < 36; ++s) h[o++] = s;\n for (o = \"A\".charCodeAt(0), s = 10; s < 36; ++s) h[o++] = s;\n function u(t) {\n return \"0123456789abcdefghijklmnopqrstuvwxyz\".charAt(t);\n }\n function a(t, e) {\n var r = h[t.charCodeAt(e)];\n return null == r ? -1 : r;\n }\n function f(t) {\n var e = i();\n return e.fromInt(t), e;\n }\n function c(t) {\n var e,\n r = 1;\n return 0 != (e = t >>> 16) && (t = e, r += 16), 0 != (e = t >> 8) && (t = e, r += 8), 0 != (e = t >> 4) && (t = e, r += 4), 0 != (e = t >> 2) && (t = e, r += 2), 0 != (e = t >> 1) && (t = e, r += 1), r;\n }\n function p(t) {\n this.m = t;\n }\n function l(t) {\n this.m = t, this.mp = t.invDigit(), this.mpl = 32767 & this.mp, this.mph = this.mp >> 15, this.um = (1 << t.DB - 15) - 1, this.mt2 = 2 * t.t;\n }\n function d(t, e) {\n return t & e;\n }\n function m(t, e) {\n return t | e;\n }\n function v(t, e) {\n return t ^ e;\n }\n function y(t, e) {\n return t & ~e;\n }\n function g(t) {\n if (0 == t) return -1;\n var e = 0;\n return 0 == (65535 & t) && (t >>= 16, e += 16), 0 == (255 & t) && (t >>= 8, e += 8), 0 == (15 & t) && (t >>= 4, e += 4), 0 == (3 & t) && (t >>= 2, e += 2), 0 == (1 & t) && ++e, e;\n }\n function w(t) {\n for (var e = 0; 0 != t;) t &= t - 1, ++e;\n return e;\n }\n function T() {}\n function b(t) {\n return t;\n }\n function _(t) {\n this.r2 = i(), this.q3 = i(), r.ONE.dlShiftTo(2 * t.t, this.r2), this.mu = this.r2.divide(t), this.m = t;\n }\n p.prototype.convert = function (t) {\n return t.s < 0 || t.compareTo(this.m) >= 0 ? t.mod(this.m) : t;\n }, p.prototype.revert = function (t) {\n return t;\n }, p.prototype.reduce = function (t) {\n t.divRemTo(this.m, null, t);\n }, p.prototype.mulTo = function (t, e, r) {\n t.multiplyTo(e, r), this.reduce(r);\n }, p.prototype.sqrTo = function (t, e) {\n t.squareTo(e), this.reduce(e);\n }, l.prototype.convert = function (t) {\n var e = i();\n return t.abs().dlShiftTo(this.m.t, e), e.divRemTo(this.m, null, e), t.s < 0 && e.compareTo(r.ZERO) > 0 && this.m.subTo(e, e), e;\n }, l.prototype.revert = function (t) {\n var e = i();\n return t.copyTo(e), this.reduce(e), e;\n }, l.prototype.reduce = function (t) {\n for (; t.t <= this.mt2;) t[t.t++] = 0;\n for (var e = 0; e < this.m.t; ++e) {\n var r = 32767 & t[e],\n i = r * this.mpl + ((r * this.mph + (t[e] >> 15) * this.mpl & this.um) << 15) & t.DM;\n for (t[r = e + this.m.t] += this.m.am(0, i, t, e, 0, this.m.t); t[r] >= t.DV;) t[r] -= t.DV, t[++r]++;\n }\n t.clamp(), t.drShiftTo(this.m.t, t), t.compareTo(this.m) >= 0 && t.subTo(this.m, t);\n }, l.prototype.mulTo = function (t, e, r) {\n t.multiplyTo(e, r), this.reduce(r);\n }, l.prototype.sqrTo = function (t, e) {\n t.squareTo(e), this.reduce(e);\n }, r.prototype.copyTo = function (t) {\n for (var e = this.t - 1; e >= 0; --e) t[e] = this[e];\n t.t = this.t, t.s = this.s;\n }, r.prototype.fromInt = function (t) {\n this.t = 1, this.s = t < 0 ? -1 : 0, t > 0 ? this[0] = t : t < -1 ? this[0] = t + this.DV : this.t = 0;\n }, r.prototype.fromString = function (t, e) {\n var i;\n if (16 == e) i = 4;else if (8 == e) i = 3;else if (256 == e) i = 8;else if (2 == e) i = 1;else if (32 == e) i = 5;else {\n if (4 != e) return void this.fromRadix(t, e);\n i = 2;\n }\n this.t = 0, this.s = 0;\n for (var n = t.length, o = !1, s = 0; --n >= 0;) {\n var h = 8 == i ? 255 & t[n] : a(t, n);\n h < 0 ? \"-\" == t.charAt(n) && (o = !0) : (o = !1, 0 == s ? this[this.t++] = h : s + i > this.DB ? (this[this.t - 1] |= (h & (1 << this.DB - s) - 1) << s, this[this.t++] = h >> this.DB - s) : this[this.t - 1] |= h << s, (s += i) >= this.DB && (s -= this.DB));\n }\n 8 == i && 0 != (128 & t[0]) && (this.s = -1, s > 0 && (this[this.t - 1] |= (1 << this.DB - s) - 1 << s)), this.clamp(), o && r.ZERO.subTo(this, this);\n }, r.prototype.clamp = function () {\n for (var t = this.s & this.DM; this.t > 0 && this[this.t - 1] == t;) --this.t;\n }, r.prototype.dlShiftTo = function (t, e) {\n var r;\n for (r = this.t - 1; r >= 0; --r) e[r + t] = this[r];\n for (r = t - 1; r >= 0; --r) e[r] = 0;\n e.t = this.t + t, e.s = this.s;\n }, r.prototype.drShiftTo = function (t, e) {\n for (var r = t; r < this.t; ++r) e[r - t] = this[r];\n e.t = Math.max(this.t - t, 0), e.s = this.s;\n }, r.prototype.lShiftTo = function (t, e) {\n var r,\n i = t % this.DB,\n n = this.DB - i,\n o = (1 << n) - 1,\n s = Math.floor(t / this.DB),\n h = this.s << i & this.DM;\n for (r = this.t - 1; r >= 0; --r) e[r + s + 1] = this[r] >> n | h, h = (this[r] & o) << i;\n for (r = s - 1; r >= 0; --r) e[r] = 0;\n e[s] = h, e.t = this.t + s + 1, e.s = this.s, e.clamp();\n }, r.prototype.rShiftTo = function (t, e) {\n e.s = this.s;\n var r = Math.floor(t / this.DB);\n if (r >= this.t) e.t = 0;else {\n var i = t % this.DB,\n n = this.DB - i,\n o = (1 << i) - 1;\n e[0] = this[r] >> i;\n for (var s = r + 1; s < this.t; ++s) e[s - r - 1] |= (this[s] & o) << n, e[s - r] = this[s] >> i;\n i > 0 && (e[this.t - r - 1] |= (this.s & o) << n), e.t = this.t - r, e.clamp();\n }\n }, r.prototype.subTo = function (t, e) {\n for (var r = 0, i = 0, n = Math.min(t.t, this.t); r < n;) i += this[r] - t[r], e[r++] = i & this.DM, i >>= this.DB;\n if (t.t < this.t) {\n for (i -= t.s; r < this.t;) i += this[r], e[r++] = i & this.DM, i >>= this.DB;\n i += this.s;\n } else {\n for (i += this.s; r < t.t;) i -= t[r], e[r++] = i & this.DM, i >>= this.DB;\n i -= t.s;\n }\n e.s = i < 0 ? -1 : 0, i < -1 ? e[r++] = this.DV + i : i > 0 && (e[r++] = i), e.t = r, e.clamp();\n }, r.prototype.multiplyTo = function (t, e) {\n var i = this.abs(),\n n = t.abs(),\n o = i.t;\n for (e.t = o + n.t; --o >= 0;) e[o] = 0;\n for (o = 0; o < n.t; ++o) e[o + i.t] = i.am(0, n[o], e, o, 0, i.t);\n e.s = 0, e.clamp(), this.s != t.s && r.ZERO.subTo(e, e);\n }, r.prototype.squareTo = function (t) {\n for (var e = this.abs(), r = t.t = 2 * e.t; --r >= 0;) t[r] = 0;\n for (r = 0; r < e.t - 1; ++r) {\n var i = e.am(r, e[r], t, 2 * r, 0, 1);\n (t[r + e.t] += e.am(r + 1, 2 * e[r], t, 2 * r + 1, i, e.t - r - 1)) >= e.DV && (t[r + e.t] -= e.DV, t[r + e.t + 1] = 1);\n }\n t.t > 0 && (t[t.t - 1] += e.am(r, e[r], t, 2 * r, 0, 1)), t.s = 0, t.clamp();\n }, r.prototype.divRemTo = function (t, e, n) {\n var o = t.abs();\n if (!(o.t <= 0)) {\n var s = this.abs();\n if (s.t < o.t) return null != e && e.fromInt(0), void (null != n && this.copyTo(n));\n null == n && (n = i());\n var h = i(),\n u = this.s,\n a = t.s,\n f = this.DB - c(o[o.t - 1]);\n f > 0 ? (o.lShiftTo(f, h), s.lShiftTo(f, n)) : (o.copyTo(h), s.copyTo(n));\n var p = h.t,\n l = h[p - 1];\n if (0 != l) {\n var d = l * (1 << this.F1) + (p > 1 ? h[p - 2] >> this.F2 : 0),\n m = this.FV / d,\n v = (1 << this.F1) / d,\n y = 1 << this.F2,\n g = n.t,\n w = g - p,\n T = null == e ? i() : e;\n for (h.dlShiftTo(w, T), n.compareTo(T) >= 0 && (n[n.t++] = 1, n.subTo(T, n)), r.ONE.dlShiftTo(p, T), T.subTo(h, h); h.t < p;) h[h.t++] = 0;\n for (; --w >= 0;) {\n var b = n[--g] == l ? this.DM : Math.floor(n[g] * m + (n[g - 1] + y) * v);\n if ((n[g] += h.am(0, b, n, w, 0, p)) < b) for (h.dlShiftTo(w, T), n.subTo(T, n); n[g] < --b;) n.subTo(T, n);\n }\n null != e && (n.drShiftTo(p, e), u != a && r.ZERO.subTo(e, e)), n.t = p, n.clamp(), f > 0 && n.rShiftTo(f, n), u < 0 && r.ZERO.subTo(n, n);\n }\n }\n }, r.prototype.invDigit = function () {\n if (this.t < 1) return 0;\n var t = this[0];\n if (0 == (1 & t)) return 0;\n var e = 3 & t;\n return (e = (e = (e = (e = e * (2 - (15 & t) * e) & 15) * (2 - (255 & t) * e) & 255) * (2 - ((65535 & t) * e & 65535)) & 65535) * (2 - t * e % this.DV) % this.DV) > 0 ? this.DV - e : -e;\n }, r.prototype.isEven = function () {\n return 0 == (this.t > 0 ? 1 & this[0] : this.s);\n }, r.prototype.exp = function (t, e) {\n if (t > 4294967295 || t < 1) return r.ONE;\n var n = i(),\n o = i(),\n s = e.convert(this),\n h = c(t) - 1;\n for (s.copyTo(n); --h >= 0;) if (e.sqrTo(n, o), (t & 1 << h) > 0) e.mulTo(o, s, n);else {\n var u = n;\n n = o, o = u;\n }\n return e.revert(n);\n }, r.prototype.toString = function (t) {\n if (this.s < 0) return \"-\" + this.negate().toString(t);\n var e;\n if (16 == t) e = 4;else if (8 == t) e = 3;else if (2 == t) e = 1;else if (32 == t) e = 5;else {\n if (4 != t) return this.toRadix(t);\n e = 2;\n }\n var r,\n i = (1 << e) - 1,\n n = !1,\n o = \"\",\n s = this.t,\n h = this.DB - s * this.DB % e;\n if (s-- > 0) for (h < this.DB && (r = this[s] >> h) > 0 && (n = !0, o = u(r)); s >= 0;) h < e ? (r = (this[s] & (1 << h) - 1) << e - h, r |= this[--s] >> (h += this.DB - e)) : (r = this[s] >> (h -= e) & i, h <= 0 && (h += this.DB, --s)), r > 0 && (n = !0), n && (o += u(r));\n return n ? o : \"0\";\n }, r.prototype.negate = function () {\n var t = i();\n return r.ZERO.subTo(this, t), t;\n }, r.prototype.abs = function () {\n return this.s < 0 ? this.negate() : this;\n }, r.prototype.compareTo = function (t) {\n var e = this.s - t.s;\n if (0 != e) return e;\n var r = this.t;\n if (0 != (e = r - t.t)) return this.s < 0 ? -e : e;\n for (; --r >= 0;) if (0 != (e = this[r] - t[r])) return e;\n return 0;\n }, r.prototype.bitLength = function () {\n return this.t <= 0 ? 0 : this.DB * (this.t - 1) + c(this[this.t - 1] ^ this.s & this.DM);\n }, r.prototype.mod = function (t) {\n var e = i();\n return this.abs().divRemTo(t, null, e), this.s < 0 && e.compareTo(r.ZERO) > 0 && t.subTo(e, e), e;\n }, r.prototype.modPowInt = function (t, e) {\n var r;\n return r = t < 256 || e.isEven() ? new p(e) : new l(e), this.exp(t, r);\n }, r.ZERO = f(0), r.ONE = f(1), T.prototype.convert = b, T.prototype.revert = b, T.prototype.mulTo = function (t, e, r) {\n t.multiplyTo(e, r);\n }, T.prototype.sqrTo = function (t, e) {\n t.squareTo(e);\n }, _.prototype.convert = function (t) {\n if (t.s < 0 || t.t > 2 * this.m.t) return t.mod(this.m);\n if (t.compareTo(this.m) < 0) return t;\n var e = i();\n return t.copyTo(e), this.reduce(e), e;\n }, _.prototype.revert = function (t) {\n return t;\n }, _.prototype.reduce = function (t) {\n for (t.drShiftTo(this.m.t - 1, this.r2), t.t > this.m.t + 1 && (t.t = this.m.t + 1, t.clamp()), this.mu.multiplyUpperTo(this.r2, this.m.t + 1, this.q3), this.m.multiplyLowerTo(this.q3, this.m.t + 1, this.r2); t.compareTo(this.r2) < 0;) t.dAddOffset(1, this.m.t + 1);\n for (t.subTo(this.r2, t); t.compareTo(this.m) >= 0;) t.subTo(this.m, t);\n }, _.prototype.mulTo = function (t, e, r) {\n t.multiplyTo(e, r), this.reduce(r);\n }, _.prototype.sqrTo = function (t, e) {\n t.squareTo(e), this.reduce(e);\n };\n var S,\n A,\n D,\n B = [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97, 101, 103, 107, 109, 113, 127, 131, 137, 139, 149, 151, 157, 163, 167, 173, 179, 181, 191, 193, 197, 199, 211, 223, 227, 229, 233, 239, 241, 251, 257, 263, 269, 271, 277, 281, 283, 293, 307, 311, 313, 317, 331, 337, 347, 349, 353, 359, 367, 373, 379, 383, 389, 397, 401, 409, 419, 421, 431, 433, 439, 443, 449, 457, 461, 463, 467, 479, 487, 491, 499, 503, 509, 521, 523, 541, 547, 557, 563, 569, 571, 577, 587, 593, 599, 601, 607, 613, 617, 619, 631, 641, 643, 647, 653, 659, 661, 673, 677, 683, 691, 701, 709, 719, 727, 733, 739, 743, 751, 757, 761, 769, 773, 787, 797, 809, 811, 821, 823, 827, 829, 839, 853, 857, 859, 863, 877, 881, 883, 887, 907, 911, 919, 929, 937, 941, 947, 953, 967, 971, 977, 983, 991, 997],\n x = (1 << 26) / B[B.length - 1];\n function E() {\n var t;\n t = new Date().getTime(), A[D++] ^= 255 & t, A[D++] ^= t >> 8 & 255, A[D++] ^= t >> 16 & 255, A[D++] ^= t >> 24 & 255, D >= j && (D -= j);\n }\n if (r.prototype.chunkSize = function (t) {\n return Math.floor(Math.LN2 * this.DB / Math.log(t));\n }, r.prototype.toRadix = function (t) {\n if (null == t && (t = 10), 0 == this.signum() || t < 2 || t > 36) return \"0\";\n var e = this.chunkSize(t),\n r = Math.pow(t, e),\n n = f(r),\n o = i(),\n s = i(),\n h = \"\";\n for (this.divRemTo(n, o, s); o.signum() > 0;) h = (r + s.intValue()).toString(t).substr(1) + h, o.divRemTo(n, o, s);\n return s.intValue().toString(t) + h;\n }, r.prototype.fromRadix = function (t, e) {\n this.fromInt(0), null == e && (e = 10);\n for (var i = this.chunkSize(e), n = Math.pow(e, i), o = !1, s = 0, h = 0, u = 0; u < t.length; ++u) {\n var f = a(t, u);\n f < 0 ? \"-\" == t.charAt(u) && 0 == this.signum() && (o = !0) : (h = e * h + f, ++s >= i && (this.dMultiply(n), this.dAddOffset(h, 0), s = 0, h = 0));\n }\n s > 0 && (this.dMultiply(Math.pow(e, s)), this.dAddOffset(h, 0)), o && r.ZERO.subTo(this, this);\n }, r.prototype.fromNumber = function (t, e, i) {\n if (\"number\" == typeof e) {\n if (t < 2) this.fromInt(1);else for (this.fromNumber(t, i), this.testBit(t - 1) || this.bitwiseTo(r.ONE.shiftLeft(t - 1), m, this), this.isEven() && this.dAddOffset(1, 0); !this.isProbablePrime(e);) this.dAddOffset(2, 0), this.bitLength() > t && this.subTo(r.ONE.shiftLeft(t - 1), this);\n } else {\n var n = new Array(),\n o = 7 & t;\n n.length = 1 + (t >> 3), e.nextBytes(n), o > 0 ? n[0] &= (1 << o) - 1 : n[0] = 0, this.fromString(n, 256);\n }\n }, r.prototype.bitwiseTo = function (t, e, r) {\n var i,\n n,\n o = Math.min(t.t, this.t);\n for (i = 0; i < o; ++i) r[i] = e(this[i], t[i]);\n if (t.t < this.t) {\n for (n = t.s & this.DM, i = o; i < this.t; ++i) r[i] = e(this[i], n);\n r.t = this.t;\n } else {\n for (n = this.s & this.DM, i = o; i < t.t; ++i) r[i] = e(n, t[i]);\n r.t = t.t;\n }\n r.s = e(this.s, t.s), r.clamp();\n }, r.prototype.changeBit = function (t, e) {\n var i = r.ONE.shiftLeft(t);\n return this.bitwiseTo(i, e, i), i;\n }, r.prototype.addTo = function (t, e) {\n for (var r = 0, i = 0, n = Math.min(t.t, this.t); r < n;) i += this[r] + t[r], e[r++] = i & this.DM, i >>= this.DB;\n if (t.t < this.t) {\n for (i += t.s; r < this.t;) i += this[r], e[r++] = i & this.DM, i >>= this.DB;\n i += this.s;\n } else {\n for (i += this.s; r < t.t;) i += t[r], e[r++] = i & this.DM, i >>= this.DB;\n i += t.s;\n }\n e.s = i < 0 ? -1 : 0, i > 0 ? e[r++] = i : i < -1 && (e[r++] = this.DV + i), e.t = r, e.clamp();\n }, r.prototype.dMultiply = function (t) {\n this[this.t] = this.am(0, t - 1, this, 0, 0, this.t), ++this.t, this.clamp();\n }, r.prototype.dAddOffset = function (t, e) {\n if (0 != t) {\n for (; this.t <= e;) this[this.t++] = 0;\n for (this[e] += t; this[e] >= this.DV;) this[e] -= this.DV, ++e >= this.t && (this[this.t++] = 0), ++this[e];\n }\n }, r.prototype.multiplyLowerTo = function (t, e, r) {\n var i,\n n = Math.min(this.t + t.t, e);\n for (r.s = 0, r.t = n; n > 0;) r[--n] = 0;\n for (i = r.t - this.t; n < i; ++n) r[n + this.t] = this.am(0, t[n], r, n, 0, this.t);\n for (i = Math.min(t.t, e); n < i; ++n) this.am(0, t[n], r, n, 0, e - n);\n r.clamp();\n }, r.prototype.multiplyUpperTo = function (t, e, r) {\n --e;\n var i = r.t = this.t + t.t - e;\n for (r.s = 0; --i >= 0;) r[i] = 0;\n for (i = Math.max(e - this.t, 0); i < t.t; ++i) r[this.t + i - e] = this.am(e - i, t[i], r, 0, 0, this.t + i - e);\n r.clamp(), r.drShiftTo(1, r);\n }, r.prototype.modInt = function (t) {\n if (t <= 0) return 0;\n var e = this.DV % t,\n r = this.s < 0 ? t - 1 : 0;\n if (this.t > 0) if (0 == e) r = this[0] % t;else for (var i = this.t - 1; i >= 0; --i) r = (e * r + this[i]) % t;\n return r;\n }, r.prototype.millerRabin = function (t) {\n var e = this.subtract(r.ONE),\n n = e.getLowestSetBit();\n if (n <= 0) return !1;\n var o = e.shiftRight(n);\n (t = t + 1 >> 1) > B.length && (t = B.length);\n for (var s = i(), h = 0; h < t; ++h) {\n s.fromInt(B[Math.floor(Math.random() * B.length)]);\n var u = s.modPow(o, this);\n if (0 != u.compareTo(r.ONE) && 0 != u.compareTo(e)) {\n for (var a = 1; a++ < n && 0 != u.compareTo(e);) if (0 == (u = u.modPowInt(2, this)).compareTo(r.ONE)) return !1;\n if (0 != u.compareTo(e)) return !1;\n }\n }\n return !0;\n }, r.prototype.clone = function () {\n var t = i();\n return this.copyTo(t), t;\n }, r.prototype.intValue = function () {\n if (this.s < 0) {\n if (1 == this.t) return this[0] - this.DV;\n if (0 == this.t) return -1;\n } else {\n if (1 == this.t) return this[0];\n if (0 == this.t) return 0;\n }\n return (this[1] & (1 << 32 - this.DB) - 1) << this.DB | this[0];\n }, r.prototype.byteValue = function () {\n return 0 == this.t ? this.s : this[0] << 24 >> 24;\n }, r.prototype.shortValue = function () {\n return 0 == this.t ? this.s : this[0] << 16 >> 16;\n }, r.prototype.signum = function () {\n return this.s < 0 ? -1 : this.t <= 0 || 1 == this.t && this[0] <= 0 ? 0 : 1;\n }, r.prototype.toByteArray = function () {\n var t = this.t,\n e = new Array();\n e[0] = this.s;\n var r,\n i = this.DB - t * this.DB % 8,\n n = 0;\n if (t-- > 0) for (i < this.DB && (r = this[t] >> i) != (this.s & this.DM) >> i && (e[n++] = r | this.s << this.DB - i); t >= 0;) i < 8 ? (r = (this[t] & (1 << i) - 1) << 8 - i, r |= this[--t] >> (i += this.DB - 8)) : (r = this[t] >> (i -= 8) & 255, i <= 0 && (i += this.DB, --t)), 0 != (128 & r) && (r |= -256), 0 == n && (128 & this.s) != (128 & r) && ++n, (n > 0 || r != this.s) && (e[n++] = r);\n return e;\n }, r.prototype.equals = function (t) {\n return 0 == this.compareTo(t);\n }, r.prototype.min = function (t) {\n return this.compareTo(t) < 0 ? this : t;\n }, r.prototype.max = function (t) {\n return this.compareTo(t) > 0 ? this : t;\n }, r.prototype.and = function (t) {\n var e = i();\n return this.bitwiseTo(t, d, e), e;\n }, r.prototype.or = function (t) {\n var e = i();\n return this.bitwiseTo(t, m, e), e;\n }, r.prototype.xor = function (t) {\n var e = i();\n return this.bitwiseTo(t, v, e), e;\n }, r.prototype.andNot = function (t) {\n var e = i();\n return this.bitwiseTo(t, y, e), e;\n }, r.prototype.not = function () {\n for (var t = i(), e = 0; e < this.t; ++e) t[e] = this.DM & ~this[e];\n return t.t = this.t, t.s = ~this.s, t;\n }, r.prototype.shiftLeft = function (t) {\n var e = i();\n return t < 0 ? this.rShiftTo(-t, e) : this.lShiftTo(t, e), e;\n }, r.prototype.shiftRight = function (t) {\n var e = i();\n return t < 0 ? this.lShiftTo(-t, e) : this.rShiftTo(t, e), e;\n }, r.prototype.getLowestSetBit = function () {\n for (var t = 0; t < this.t; ++t) if (0 != this[t]) return t * this.DB + g(this[t]);\n return this.s < 0 ? this.t * this.DB : -1;\n }, r.prototype.bitCount = function () {\n for (var t = 0, e = this.s & this.DM, r = 0; r < this.t; ++r) t += w(this[r] ^ e);\n return t;\n }, r.prototype.testBit = function (t) {\n var e = Math.floor(t / this.DB);\n return e >= this.t ? 0 != this.s : 0 != (this[e] & 1 << t % this.DB);\n }, r.prototype.setBit = function (t) {\n return this.changeBit(t, m);\n }, r.prototype.clearBit = function (t) {\n return this.changeBit(t, y);\n }, r.prototype.flipBit = function (t) {\n return this.changeBit(t, v);\n }, r.prototype.add = function (t) {\n var e = i();\n return this.addTo(t, e), e;\n }, r.prototype.subtract = function (t) {\n var e = i();\n return this.subTo(t, e), e;\n }, r.prototype.multiply = function (t) {\n var e = i();\n return this.multiplyTo(t, e), e;\n }, r.prototype.divide = function (t) {\n var e = i();\n return this.divRemTo(t, e, null), e;\n }, r.prototype.remainder = function (t) {\n var e = i();\n return this.divRemTo(t, null, e), e;\n }, r.prototype.divideAndRemainder = function (t) {\n var e = i(),\n r = i();\n return this.divRemTo(t, e, r), new Array(e, r);\n }, r.prototype.modPow = function (t, e) {\n var r,\n n,\n o = t.bitLength(),\n s = f(1);\n if (o <= 0) return s;\n r = o < 18 ? 1 : o < 48 ? 3 : o < 144 ? 4 : o < 768 ? 5 : 6, n = o < 8 ? new p(e) : e.isEven() ? new _(e) : new l(e);\n var h = new Array(),\n u = 3,\n a = r - 1,\n d = (1 << r) - 1;\n if (h[1] = n.convert(this), r > 1) {\n var m = i();\n for (n.sqrTo(h[1], m); u <= d;) h[u] = i(), n.mulTo(m, h[u - 2], h[u]), u += 2;\n }\n var v,\n y,\n g = t.t - 1,\n w = !0,\n T = i();\n for (o = c(t[g]) - 1; g >= 0;) {\n for (o >= a ? v = t[g] >> o - a & d : (v = (t[g] & (1 << o + 1) - 1) << a - o, g > 0 && (v |= t[g - 1] >> this.DB + o - a)), u = r; 0 == (1 & v);) v >>= 1, --u;\n if ((o -= u) < 0 && (o += this.DB, --g), w) h[v].copyTo(s), w = !1;else {\n for (; u > 1;) n.sqrTo(s, T), n.sqrTo(T, s), u -= 2;\n u > 0 ? n.sqrTo(s, T) : (y = s, s = T, T = y), n.mulTo(T, h[v], s);\n }\n for (; g >= 0 && 0 == (t[g] & 1 << o);) n.sqrTo(s, T), y = s, s = T, T = y, --o < 0 && (o = this.DB - 1, --g);\n }\n return n.revert(s);\n }, r.prototype.modInverse = function (t) {\n var e = t.isEven();\n if (this.isEven() && e || 0 == t.signum()) return r.ZERO;\n for (var i = t.clone(), n = this.clone(), o = f(1), s = f(0), h = f(0), u = f(1); 0 != i.signum();) {\n for (; i.isEven();) i.rShiftTo(1, i), e ? (o.isEven() && s.isEven() || (o.addTo(this, o), s.subTo(t, s)), o.rShiftTo(1, o)) : s.isEven() || s.subTo(t, s), s.rShiftTo(1, s);\n for (; n.isEven();) n.rShiftTo(1, n), e ? (h.isEven() && u.isEven() || (h.addTo(this, h), u.subTo(t, u)), h.rShiftTo(1, h)) : u.isEven() || u.subTo(t, u), u.rShiftTo(1, u);\n i.compareTo(n) >= 0 ? (i.subTo(n, i), e && o.subTo(h, o), s.subTo(u, s)) : (n.subTo(i, n), e && h.subTo(o, h), u.subTo(s, u));\n }\n return 0 != n.compareTo(r.ONE) ? r.ZERO : u.compareTo(t) >= 0 ? u.subtract(t) : u.signum() < 0 ? (u.addTo(t, u), u.signum() < 0 ? u.add(t) : u) : u;\n }, r.prototype.pow = function (t) {\n return this.exp(t, new T());\n }, r.prototype.gcd = function (t) {\n var e = this.s < 0 ? this.negate() : this.clone(),\n r = t.s < 0 ? t.negate() : t.clone();\n if (e.compareTo(r) < 0) {\n var i = e;\n e = r, r = i;\n }\n var n = e.getLowestSetBit(),\n o = r.getLowestSetBit();\n if (o < 0) return e;\n for (n < o && (o = n), o > 0 && (e.rShiftTo(o, e), r.rShiftTo(o, r)); e.signum() > 0;) (n = e.getLowestSetBit()) > 0 && e.rShiftTo(n, e), (n = r.getLowestSetBit()) > 0 && r.rShiftTo(n, r), e.compareTo(r) >= 0 ? (e.subTo(r, e), e.rShiftTo(1, e)) : (r.subTo(e, r), r.rShiftTo(1, r));\n return o > 0 && r.lShiftTo(o, r), r;\n }, r.prototype.isProbablePrime = function (t) {\n var e,\n r = this.abs();\n if (1 == r.t && r[0] <= B[B.length - 1]) {\n for (e = 0; e < B.length; ++e) if (r[0] == B[e]) return !0;\n return !1;\n }\n if (r.isEven()) return !1;\n for (e = 1; e < B.length;) {\n for (var i = B[e], n = e + 1; n < B.length && i < x;) i *= B[n++];\n for (i = r.modInt(i); e < n;) if (i % B[e++] == 0) return !1;\n }\n return r.millerRabin(t);\n }, r.prototype.square = function () {\n var t = i();\n return this.squareTo(t), t;\n }, r.prototype.Barrett = _, null == A) {\n var k;\n if (A = new Array(), D = 0, \"undefined\" != typeof window && window.crypto) if (window.crypto.getRandomValues) {\n var I = new Uint8Array(32);\n for (window.crypto.getRandomValues(I), k = 0; k < 32; ++k) A[D++] = I[k];\n } else if (\"Netscape\" == navigator.appName && navigator.appVersion < \"5\") {\n var M = window.crypto.random(32);\n for (k = 0; k < M.length; ++k) A[D++] = 255 & M.charCodeAt(k);\n }\n for (; D < j;) k = Math.floor(65536 * Math.random()), A[D++] = k >>> 8, A[D++] = 255 & k;\n D = 0, E();\n }\n function C() {\n if (null == S) {\n for (E(), (S = new O()).init(A), D = 0; D < A.length; ++D) A[D] = 0;\n D = 0;\n }\n return S.next();\n }\n function R() {}\n function O() {\n this.i = 0, this.j = 0, this.S = new Array();\n }\n R.prototype.nextBytes = function (t) {\n var e;\n for (e = 0; e < t.length; ++e) t[e] = C();\n }, O.prototype.init = function (t) {\n var e, r, i;\n for (e = 0; e < 256; ++e) this.S[e] = e;\n for (r = 0, e = 0; e < 256; ++e) i = this.S[e], this.S[e] = this.S[r = r + this.S[e] + t[e % t.length] & 255], this.S[r] = i;\n this.i = 0, this.j = 0;\n }, O.prototype.next = function () {\n var t;\n return this.i = this.i + 1 & 255, this.j = this.j + this.S[this.i] & 255, t = this.S[this.i], this.S[this.i] = this.S[this.j], this.S[this.j] = t, this.S[t + this.S[this.i] & 255];\n };\n var j = 256;\n e.exports = {\n default: r,\n BigInteger: r,\n SecureRandom: R\n };\n }).call(t);\n }),\n a = {\n sha1: \"3021300906052b0e03021a05000414\",\n sha224: \"302d300d06096086480165030402040500041c\",\n sha256: \"3031300d060960864801650304020105000420\",\n sha384: \"3041300d060960864801650304020205000430\",\n sha512: \"3051300d060960864801650304020305000440\",\n md2: \"3020300c06082a864886f70d020205000410\",\n md5: \"3020300c06082a864886f70d020505000410\",\n ripemd160: \"3021300906052b2403020105000414\"\n },\n f = {\n sha256: o\n };\nfunction c(t, e) {\n if (this.n = null, this.e = 0, !(null != t && null != e && t.length > 0 && e.length > 0)) throw new Error(\"Invalid key data\");\n this.n = new u.BigInteger(t, 16), this.e = parseInt(e, 16);\n}\nc.prototype.verify = function (t, e) {\n e = e.replace(/[^0-9a-f]|[\\s\\n]]/gi, \"\");\n var r = new u.BigInteger(e, 16);\n if (r.bitLength() > this.n.bitLength()) throw new Error(\"Signature does not match with the key modulus.\");\n var i = function (t) {\n for (var e in a) {\n var r = a[e],\n i = r.length;\n if (t.substring(0, i) === r) return {\n alg: e,\n hash: t.substring(i)\n };\n }\n return [];\n }(r.modPowInt(this.e, this.n).toString(16).replace(/^1f+00/, \"\"));\n if (0 === i.length) return !1;\n if (!f.hasOwnProperty(i.alg)) throw new Error(\"Hashing algorithm is not supported.\");\n var n = f[i.alg](t).toString();\n return i.hash === n;\n};\nfor (var p = [], l = [], d = \"undefined\" != typeof Uint8Array ? Uint8Array : Array, m = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\", v = 0; v < 64; ++v) p[v] = m[v], l[m.charCodeAt(v)] = v;\nl[\"-\".charCodeAt(0)] = 62, l[\"_\".charCodeAt(0)] = 63;\nvar y = function (t) {\n var e,\n r,\n i = function (t) {\n var e = t.length;\n if (e % 4 > 0) throw new Error(\"Invalid string. Length must be a multiple of 4\");\n var r = t.indexOf(\"=\");\n return -1 === r && (r = e), [r, r === e ? 0 : 4 - r % 4];\n }(t),\n n = i[0],\n o = i[1],\n s = new d(function (t, e, r) {\n return 3 * (e + r) / 4 - r;\n }(0, n, o)),\n h = 0,\n u = o > 0 ? n - 4 : n;\n for (r = 0; r < u; r += 4) e = l[t.charCodeAt(r)] << 18 | l[t.charCodeAt(r + 1)] << 12 | l[t.charCodeAt(r + 2)] << 6 | l[t.charCodeAt(r + 3)], s[h++] = e >> 16 & 255, s[h++] = e >> 8 & 255, s[h++] = 255 & e;\n return 2 === o && (e = l[t.charCodeAt(r)] << 2 | l[t.charCodeAt(r + 1)] >> 4, s[h++] = 255 & e), 1 === o && (e = l[t.charCodeAt(r)] << 10 | l[t.charCodeAt(r + 1)] << 4 | l[t.charCodeAt(r + 2)] >> 2, s[h++] = e >> 8 & 255, s[h++] = 255 & e), s;\n};\nfunction g(t) {\n var e = t.length % 4;\n return 0 === e ? t : t + new Array(4 - e + 1).join(\"=\");\n}\nfunction w(t) {\n return t = g(t).replace(/\\-/g, \"+\").replace(/_/g, \"/\"), decodeURIComponent(function (t) {\n for (var e = \"\", r = 0; r < t.length; r++) e += String.fromCharCode(t[r]);\n return e;\n }(y(t)).split(\"\").map(function (t) {\n return \"%\" + (\"00\" + t.charCodeAt(0).toString(16)).slice(-2);\n }).join(\"\"));\n}\nfunction T(t) {\n return function (t) {\n for (var e = \"\", r = 0; r < t.length; r++) {\n var i = t[r].toString(16);\n e += 2 === i.length ? i : \"0\" + i;\n }\n return e;\n }(y(g(t)));\n}\nvar b = e(function (e) {\n var r, i;\n r = t, i = function () {\n return function () {\n return function (t) {\n var e = [];\n if (0 === t.length) return \"\";\n if (\"string\" != typeof t[0]) throw new TypeError(\"Url must be a string. Received \" + t[0]);\n if (t[0].match(/^[^/:]+:\\/*$/) && t.length > 1) {\n var r = t.shift();\n t[0] = r + t[0];\n }\n t[0] = t[0].match(/^file:\\/\\/\\//) ? t[0].replace(/^([^/:]+):\\/*/, \"$1:///\") : t[0].replace(/^([^/:]+):\\/*/, \"$1://\");\n for (var i = 0; i < t.length; i++) {\n var n = t[i];\n if (\"string\" != typeof n) throw new TypeError(\"Url must be a string. Received \" + n);\n \"\" !== n && (i > 0 && (n = n.replace(/^[\\/]+/, \"\")), n = n.replace(/[\\/]+$/, i < t.length - 1 ? \"\" : \"/\"), e.push(n));\n }\n var o = e.join(\"/\"),\n s = (o = o.replace(/\\/(\\?|&|#[^!])/g, \"$1\")).split(\"?\");\n return s.shift() + (s.length > 0 ? \"?\" : \"\") + s.join(\"&\");\n }(\"object\" == typeof arguments[0] ? arguments[0] : [].slice.call(arguments));\n };\n }, e.exports ? e.exports = i() : r.urljoin = i();\n});\nfunction _(t, e) {\n return e = e || {}, new Promise(function (r, i) {\n var n = new XMLHttpRequest(),\n o = [],\n s = [],\n h = {},\n u = function () {\n return {\n ok: 2 == (n.status / 100 | 0),\n statusText: n.statusText,\n status: n.status,\n url: n.responseURL,\n text: function () {\n return Promise.resolve(n.responseText);\n },\n json: function () {\n return Promise.resolve(n.responseText).then(JSON.parse);\n },\n blob: function () {\n return Promise.resolve(new Blob([n.response]));\n },\n clone: u,\n headers: {\n keys: function () {\n return o;\n },\n entries: function () {\n return s;\n },\n get: function (t) {\n return h[t.toLowerCase()];\n },\n has: function (t) {\n return t.toLowerCase() in h;\n }\n }\n };\n };\n for (var a in n.open(e.method || \"get\", t, !0), n.onload = function () {\n n.getAllResponseHeaders().replace(/^(.*?):[^\\S\\n]*([\\s\\S]*?)$/gm, function (t, e, r) {\n o.push(e = e.toLowerCase()), s.push([e, r]), h[e] = h[e] ? h[e] + \",\" + r : r;\n }), r(u());\n }, n.onerror = i, n.withCredentials = \"include\" == e.credentials, e.headers) n.setRequestHeader(a, e.headers[a]);\n n.send(e.body || null);\n });\n}\nfunction S(t) {\n if (t.ok) return t.json();\n var e = new Error(t.statusText);\n return e.response = t, Promise.reject(e);\n}\nfunction A(t) {\n this.name = \"ConfigurationError\", this.message = t || \"\";\n}\nfunction D(t) {\n this.name = \"TokenValidationError\", this.message = t || \"\";\n}\nA.prototype = Error.prototype, D.prototype = Error.prototype;\nvar B = function () {\n function t() {}\n var e = t.prototype;\n return e.get = function () {\n return null;\n }, e.has = function () {\n return null;\n }, e.set = function () {\n return null;\n }, t;\n}();\nr.polyfill();\nvar x = \"RS256\",\n E = function (t) {\n return \"number\" == typeof t;\n },\n k = function () {\n return new Date();\n };\nfunction I(t) {\n var e = t || {};\n if (this.jwksCache = e.jwksCache || new B(), this.expectedAlg = e.expectedAlg || \"RS256\", this.issuer = e.issuer, this.audience = e.audience, this.leeway = 0 === e.leeway ? 0 : e.leeway || 60, this.jwksURI = e.jwksURI, this.maxAge = e.maxAge, this.__clock = \"function\" == typeof e.__clock ? e.__clock : k, this.leeway < 0 || this.leeway > 300) throw new A(\"The leeway should be positive and lower than five minutes.\");\n if (x !== this.expectedAlg) throw new A('Signature algorithm of \"' + this.expectedAlg + '\" is not supported. Expected the ID token to be signed with \"' + x + '\".');\n}\nfunction PluginHandler(webAuth, plugins) {\n this.plugins = plugins;\n for (var a = 0; a < this.plugins.length; a++) {\n if (this.plugins[a].version !== version.raw) {\n var pluginName = \"\";\n throw this.plugins[a].constructor && this.plugins[a].constructor.name && (pluginName = this.plugins[a].constructor.name), new Error(\"Plugin \" + pluginName + \" version (\" + this.plugins[a].version + \") is not compatible with the SDK version (\" + version.raw + \")\");\n }\n this.plugins[a].setWebAuth(webAuth);\n }\n}\nI.prototype.verify = function (t, e, r) {\n if (!r && e && \"function\" == typeof e && (r = e, e = void 0), !t) return r(new D(\"ID token is required but missing\"), null);\n var i = this.decode(t);\n if (i instanceof Error) return r(new D(\"ID token could not be decoded\"), null);\n var n = i.encoded.header + \".\" + i.encoded.payload,\n o = T(i.encoded.signature),\n s = i.header.alg,\n h = i.header.kid,\n u = i.payload.aud,\n a = i.payload.sub,\n f = i.payload.iss,\n c = i.payload.exp,\n p = i.payload.nbf,\n l = i.payload.iat,\n d = i.payload.azp,\n m = i.payload.auth_time,\n v = i.payload.nonce,\n y = this.__clock(),\n g = this;\n if (g.expectedAlg !== s) return r(new D('Signature algorithm of \"' + s + '\" is not supported. Expected the ID token to be signed with \"' + x + '\".'), null);\n this.getRsaVerifier(f, h, function (t, s) {\n if (t) return r(t, null);\n if (!s.verify(n, o)) return r(new D(\"Invalid ID token signature.\"), null);\n if (!f || \"string\" != typeof f) return r(new D(\"Issuer (iss) claim must be a string present in the ID token\"), null);\n if (g.issuer !== f) return r(new D('Issuer (iss) claim mismatch in the ID token, expected \"' + g.issuer + '\", found \"' + f + '\"'), null);\n if (!a || \"string\" != typeof a) return r(new D(\"Subject (sub) claim must be a string present in the ID token\"), null);\n if (!u || \"string\" != typeof u && !Array.isArray(u)) return r(new D(\"Audience (aud) claim must be a string or array of strings present in the ID token\"), null);\n if (Array.isArray(u) && !u.includes(g.audience)) return r(new D('Audience (aud) claim mismatch in the ID token; expected \"' + g.audience + '\" but was not one of \"' + u.join(\", \") + '\"'), null);\n if (\"string\" == typeof u && g.audience !== u) return r(new D('Audience (aud) claim mismatch in the ID token; expected \"' + g.audience + '\" but found \"' + u + '\"'), null);\n if (e) {\n if (!v || \"string\" != typeof v) return r(new D(\"Nonce (nonce) claim must be a string present in the ID token\"), null);\n if (v !== e) return r(new D('Nonce (nonce) claim value mismatch in the ID token; expected \"' + e + '\", found \"' + v + '\"'), null);\n }\n if (Array.isArray(u) && u.length > 1) {\n if (!d || \"string\" != typeof d) return r(new D(\"Authorized Party (azp) claim must be a string present in the ID token when Audience (aud) claim has multiple values\"), null);\n if (d !== g.audience) return r(new D('Authorized Party (azp) claim mismatch in the ID token; expected \"' + g.audience + '\", found \"' + d + '\"'), null);\n }\n if (!c || !E(c)) return r(new D(\"Expiration Time (exp) claim must be a number present in the ID token\"), null);\n if (!l || !E(l)) return r(new D(\"Issued At (iat) claim must be a number present in the ID token\"), null);\n var h = c + g.leeway,\n w = new Date(0);\n if (w.setUTCSeconds(h), y > w) return r(new D('Expiration Time (exp) claim error in the ID token; current time \"' + y + '\" is after expiration time \"' + w + '\"'), null);\n if (p && E(p)) {\n var T = p - g.leeway,\n b = new Date(0);\n if (b.setUTCSeconds(T), y < b) return r(new D('Not Before Time (nbf) claim error in the ID token; current time \"' + y + '\" is before the not before time \"' + b + '\"'), null);\n }\n if (g.maxAge) {\n if (!m || !E(m)) return r(new D(\"Authentication Time (auth_time) claim must be a number present in the ID token when Max Age (max_age) is specified\"), null);\n var _ = m + g.maxAge + g.leeway,\n S = new Date(0);\n if (S.setUTCSeconds(_), y > S) return r(new D('Authentication Time (auth_time) claim in the ID token indicates that too much time has passed since the last end-user authentication. Current time \"' + y + '\" is after last auth time at \"' + S + '\"'), null);\n }\n return r(null, i.payload);\n });\n}, I.prototype.getRsaVerifier = function (t, e, r) {\n var i = this,\n n = t + e;\n Promise.resolve(this.jwksCache.has(n)).then(function (r) {\n return r ? i.jwksCache.get(n) : (s = (o = {\n jwksURI: i.jwksURI,\n iss: t,\n kid: e\n }).jwksURI || b(o.iss, \".well-known\", \"jwks.json\"), (\"undefined\" == fetch ? _ : fetch)(s).then(S).then(function (t) {\n var e,\n r,\n i,\n n = null;\n for (e = 0; e < t.keys.length && null === n; e++) (r = t.keys[e]).kid === o.kid && (n = r);\n if (!n) throw new Error('Could not find a public key for Key ID (kid) \"' + o.kid + '\"');\n return {\n modulus: T((i = n).n),\n exp: T(i.e)\n };\n }).catch(function (t) {\n throw t;\n }));\n var o, s;\n }).then(function (t) {\n if (!t || !t.modulus || !t.exp) throw new Error(\"Empty keyInfo in response\");\n return Promise.resolve(i.jwksCache.set(n, t)).then(function () {\n r && r(null, new c(t.modulus, t.exp));\n });\n }).catch(function (t) {\n r && r(t);\n });\n}, I.prototype.decode = function (t) {\n var e,\n r,\n i = t.split(\".\");\n if (3 !== i.length) return new D(\"Cannot decode a malformed JWT\");\n try {\n e = JSON.parse(w(i[0])), r = JSON.parse(w(i[1]));\n } catch (t) {\n return new D(\"Token header or payload is not valid JSON\");\n }\n return {\n header: e,\n payload: r,\n encoded: {\n header: i[0],\n payload: i[1],\n signature: i[2]\n }\n };\n}, I.prototype.validateAccessToken = function (t, e, r, i) {\n if (this.expectedAlg !== e) return i(new D('Signature algorithm of \"' + e + '\" is not supported. Expected \"' + this.expectedAlg + '\"'));\n var n,\n u = o(t),\n a = h.stringify(u),\n f = a.substring(0, a.length / 2),\n c = h.parse(f),\n p = s.stringify(c);\n return i((n = {\n \"+\": \"-\",\n \"/\": \"_\",\n \"=\": \"\"\n }, p.replace(/[+/=]/g, function (t) {\n return n[t];\n }) !== r ? new D(\"Invalid access_token\") : null));\n}, PluginHandler.prototype.get = function (extensibilityPoint) {\n for (var a = 0; a < this.plugins.length; a++) if (this.plugins[a].supports(extensibilityPoint)) return this.plugins[a].init();\n return null;\n};\nvar random = {\n randomString: function (length) {\n var bytes = new Uint8Array(length),\n result = [],\n charset = \"0123456789ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvwxyz-._~\",\n cryptoObj = windowHelper.getWindow().crypto || windowHelper.getWindow().msCrypto;\n if (!cryptoObj) return null;\n for (var random = cryptoObj.getRandomValues(bytes), a = 0; a < random.length; a++) result.push(charset[random[a] % charset.length]);\n return result.join(\"\");\n }\n};\nfunction TransactionManager(options) {\n var transaction = options.transaction || {};\n this.namespace = transaction.namespace || \"com.auth0.auth.\", this.keyLength = transaction.keyLength || 32, this.stateExpiration = options.stateExpiration ? options.stateExpiration / 60 / 24 : 1 / 48, this.storage = new Storage(options), this.options = options;\n}\nfunction IframeHandler(options) {\n if (this.url = options.url, this.callback = options.callback, this.timeout = options.timeout || 6e4, this.timeoutCallback = options.timeoutCallback || null, this.eventListenerType = options.eventListenerType || \"message\", this.iframe = null, this.timeoutHandle = null, this._destroyTimeout = null, this.transientMessageEventListener = null, this.proxyEventListener = null, this.eventValidator = options.eventValidator || {\n isValid: function () {\n return !0;\n }\n }, \"function\" != typeof this.callback) throw new Error(\"options.callback must be a function\");\n}\nfunction WebMessageHandler(webAuth) {\n this.webAuth = webAuth, this.warn = new Warn(webAuth.baseOptions);\n}\nfunction CrossOriginAuthentication(webAuth, options) {\n this.webAuth = webAuth, this.baseOptions = options, this.request = new RequestBuilder(options), this.webMessageHandler = new WebMessageHandler(webAuth), this.storage = new Storage(options);\n}\nfunction createKey(origin, coId) {\n return [\"co/verifier\", encodeURIComponent(origin), encodeURIComponent(coId)].join(\"/\");\n}\nfunction Redirect(auth0, options) {\n this.webAuth = auth0, this.baseOptions = options, this.crossOriginAuthentication = new CrossOriginAuthentication(auth0, this.baseOptions), this.warn = new Warn({\n disableWarnings: !!options._disableDeprecationWarnings\n });\n}\nTransactionManager.prototype.process = function (options) {\n if (!options.responseType) throw new Error(\"responseType is required\");\n var lastUsedConnection = options.realm || options.connection,\n responseTypeIncludesIdToken = -1 !== options.responseType.indexOf(\"id_token\"),\n transaction = this.generateTransaction(options.appState, options.state, options.nonce, lastUsedConnection, responseTypeIncludesIdToken, options.organization);\n return options.state || (options.state = transaction.state), responseTypeIncludesIdToken && !options.nonce && (options.nonce = transaction.nonce), options;\n}, TransactionManager.prototype.generateTransaction = function (appState, state, nonce, lastUsedConnection, generateNonce, organization) {\n if (state = state || random.randomString(this.keyLength), nonce = nonce || (generateNonce ? random.randomString(this.keyLength) : null), !(windowHelper.getWindow().location.host === this.options.domain)) {\n var transactionPayload = {\n nonce: nonce,\n appState: appState,\n state: state,\n lastUsedConnection: lastUsedConnection\n };\n organization && (transactionPayload.organization = organization), this.storage.setItem(this.namespace + state, transactionPayload, {\n expires: this.stateExpiration\n });\n }\n return {\n state: state,\n nonce: nonce\n };\n}, TransactionManager.prototype.getStoredTransaction = function (state) {\n var transactionData;\n return transactionData = this.storage.getItem(this.namespace + state), this.clearTransaction(state), transactionData;\n}, TransactionManager.prototype.clearTransaction = function (state) {\n this.storage.removeItem(this.namespace + state);\n}, IframeHandler.prototype.init = function () {\n var _this = this,\n _window = windowHelper.getWindow();\n switch (this.iframe = _window.document.createElement(\"iframe\"), this.iframe.style.display = \"none\", this.proxyEventListener = function (e) {\n _this.eventListener(e);\n }, this.eventListenerType) {\n case \"message\":\n this.eventSourceObject = _window;\n break;\n case \"load\":\n this.eventSourceObject = this.iframe;\n break;\n default:\n throw new Error(\"Unsupported event listener type: \" + this.eventListenerType);\n }\n this.eventSourceObject.addEventListener(this.eventListenerType, this.proxyEventListener, !1), _window.document.body.appendChild(this.iframe), this.iframe.src = this.url, this.timeoutHandle = setTimeout(function () {\n _this.timeoutHandler();\n }, this.timeout);\n}, IframeHandler.prototype.eventListener = function (event) {\n var eventData = {\n event: event,\n sourceObject: this.eventSourceObject\n };\n this.eventValidator.isValid(eventData) && (this.destroy(), this.callback(eventData));\n}, IframeHandler.prototype.timeoutHandler = function () {\n this.destroy(), this.timeoutCallback && this.timeoutCallback();\n}, IframeHandler.prototype.destroy = function () {\n var _this = this;\n clearTimeout(this.timeoutHandle), this._destroyTimeout = setTimeout(function () {\n _this.eventSourceObject.removeEventListener(_this.eventListenerType, _this.proxyEventListener, !1), _this.iframe.parentNode && _this.iframe.parentNode.removeChild(_this.iframe);\n }, 0);\n}, WebMessageHandler.prototype.run = function (options, cb) {\n var _this = this;\n options.responseMode = \"web_message\", options.prompt = \"none\";\n var currentOrigin = windowHelper.getOrigin(),\n redirectUriOrigin = objectHelper.getOriginFromUrl(options.redirectUri);\n if (redirectUriOrigin && currentOrigin !== redirectUriOrigin) return cb({\n error: \"origin_mismatch\",\n error_description: \"The redirectUri's origin (\" + redirectUriOrigin + \") should match the window's origin (\" + currentOrigin + \").\"\n });\n !function (authorizeUrl, options, callback) {\n new IframeHandler({\n url: authorizeUrl,\n eventListenerType: \"message\",\n callback: function (eventData) {\n callback(null, eventData);\n },\n timeout: options.timeout,\n eventValidator: {\n isValid: function (eventData) {\n return !(!eventData.event.data || \"authorization_response\" !== eventData.event.data.type || options.state !== eventData.event.data.response.state);\n }\n },\n timeoutCallback: function () {\n callback({\n error: \"timeout\",\n error_description: \"Timeout during executing web_message communication\",\n state: options.state\n });\n }\n }).init();\n }(this.webAuth.client.buildAuthorizeUrl(options), options, function (err, eventData) {\n var error = err;\n if (!err && eventData.event.data.response.error && (error = eventData.event.data.response), !error) {\n var parsedHash = eventData.event.data.response;\n return _this.webAuth.validateAuthenticationResponse(options, parsedHash, cb);\n }\n return \"consent_required\" === error.error && \"localhost\" === windowHelper.getWindow().location.hostname && _this.warn.warning(\"Consent Required. Consent can't be skipped on localhost. Read more here: https://auth0.com/docs/api-auth/user-consent#skipping-consent-for-first-party-clients\"), _this.webAuth.transactionManager.clearTransaction(error.state), cb(objectHelper.pick(error, [\"error\", \"error_description\"]));\n });\n}, CrossOriginAuthentication.prototype.login = function (options, cb) {\n var _this = this,\n url = urlJoin(this.baseOptions.rootUrl, \"/co/authenticate\");\n options.username = options.username || options.email, delete options.email;\n var authenticateBody = {\n client_id: options.clientID || this.baseOptions.clientID,\n username: options.username\n };\n options.password && (authenticateBody.password = options.password), options.otp && (authenticateBody.otp = options.otp);\n var realm = options.realm || this.baseOptions.realm;\n if (realm) {\n var credentialType = options.credentialType || this.baseOptions.credentialType || \"http://auth0.com/oauth/grant-type/password-realm\";\n authenticateBody.realm = realm, authenticateBody.credential_type = credentialType;\n } else authenticateBody.credential_type = \"password\";\n this.request.post(url).withCredentials().send(authenticateBody).end(function (err, data) {\n if (err) {\n var errorObject = err.response && err.response.body || {\n error: \"request_error\",\n error_description: JSON.stringify(err)\n };\n return wrapCallback(cb, {\n forceLegacyError: !0\n })(errorObject);\n }\n function doAuth() {\n var popupMode = !0 === options.popup;\n options = objectHelper.blacklist(options, [\"password\", \"credentialType\", \"otp\", \"popup\", \"onRedirecting\"]);\n var authorizeOptions = objectHelper.merge(options).with({\n loginTicket: data.body.login_ticket\n }),\n key = createKey(_this.baseOptions.rootUrl, data.body.co_id);\n _this.storage.setItem(key, data.body.co_verifier, {\n expires: 1 / 96\n }), popupMode ? _this.webMessageHandler.run(authorizeOptions, wrapCallback(cb, {\n forceLegacyError: !0\n })) : _this.webAuth.authorize(authorizeOptions);\n }\n \"function\" == typeof options.onRedirecting ? options.onRedirecting(doAuth) : doAuth();\n });\n}, CrossOriginAuthentication.prototype.callback = function () {\n var targetOrigin = decodeURIComponent(function (name) {\n var parts = (\"&\" + windowHelper.getWindow().location.hash.substring(1)).split(\"&\" + name + \"=\");\n if (2 === parts.length) return parts.pop().split(\"&\").shift();\n }(\"origin\")),\n theWindow = windowHelper.getWindow(),\n _this = this;\n theWindow.addEventListener(\"message\", function (evt) {\n if (\"co_verifier_request\" === evt.data.type) {\n var key = createKey(evt.origin, evt.data.request.id),\n verifier = function (storage, key) {\n try {\n var verifier = storage.getItem(key);\n return storage.removeItem(key), verifier || \"\";\n } catch (e) {\n return \"\";\n }\n }(_this.storage, key);\n evt.source.postMessage({\n type: \"co_verifier_response\",\n response: {\n verifier: verifier\n }\n }, evt.origin);\n }\n }), theWindow.parent.postMessage({\n type: \"ready\"\n }, targetOrigin);\n}, Redirect.prototype.loginWithCredentials = function (options, cb) {\n options.realm = options.realm || options.connection, delete options.connection, this.crossOriginAuthentication.login(options, cb);\n}, Redirect.prototype.signupAndLogin = function (options, cb) {\n var _this = this;\n return this.webAuth.client.dbConnection.signup(options, function (err) {\n return err ? cb(err) : (options.realm = options.realm || options.connection, delete options.connection, _this.webAuth.login(options, cb));\n });\n};\nvar winchan = createCommonjsModule(function (module) {\n var WinChan = function () {\n function addListener(w, event, cb) {\n w.attachEvent ? w.attachEvent(\"on\" + event, cb) : w.addEventListener && w.addEventListener(event, cb, !1);\n }\n function removeListener(w, event, cb) {\n w.detachEvent ? w.detachEvent(\"on\" + event, cb) : w.removeEventListener && w.removeEventListener(event, cb, !1);\n }\n function extractOrigin(url) {\n /^https?:\\/\\//.test(url) || (url = window.location.href);\n var m = /^(https?:\\/\\/[\\-_a-zA-Z\\.0-9:]+)/.exec(url);\n return m ? m[1] : url;\n }\n var isIE = function () {\n if (\"undefined\" == typeof navigator) return !1;\n var rv = -1,\n ua = navigator.userAgent;\n if (\"Microsoft Internet Explorer\" === navigator.appName) null != new RegExp(\"MSIE ([0-9]{1,}[.0-9]{0,})\").exec(ua) && (rv = parseFloat(RegExp.$1));else if (ua.indexOf(\"Trident\") > -1) {\n null !== new RegExp(\"rv:([0-9]{2,2}[.0-9]{0,})\").exec(ua) && (rv = parseFloat(RegExp.$1));\n }\n return rv >= 8;\n }();\n return \"undefined\" != typeof window && window.JSON && window.JSON.stringify && window.JSON.parse && window.postMessage ? {\n open: function (opts, cb) {\n if (!cb) throw \"missing required callback argument\";\n var err, iframe;\n opts.url || (err = \"missing required 'url' parameter\"), opts.relay_url || (err = \"missing required 'relay_url' parameter\"), err && setTimeout(function () {\n cb(err);\n }, 0), opts.window_name || (opts.window_name = null), opts.window_features && !function () {\n try {\n var userAgent = navigator.userAgent;\n return -1 != userAgent.indexOf(\"Fennec/\") || -1 != userAgent.indexOf(\"Firefox/\") && -1 != userAgent.indexOf(\"Android\");\n } catch (e) {}\n return !1;\n }() || (opts.window_features = void 0);\n var messageTarget,\n origin = opts.origin || extractOrigin(opts.url);\n if (origin !== extractOrigin(opts.relay_url)) return setTimeout(function () {\n cb(\"invalid arguments: origin of url and relay_url must match\");\n }, 0);\n isIE && ((iframe = document.createElement(\"iframe\")).setAttribute(\"src\", opts.relay_url), iframe.style.display = \"none\", iframe.setAttribute(\"name\", \"__winchan_relay_frame\"), document.body.appendChild(iframe), messageTarget = iframe.contentWindow);\n var w = opts.popup || window.open(opts.url, opts.window_name, opts.window_features);\n opts.popup && (w.location.href = opts.url), messageTarget || (messageTarget = w);\n var closeInterval = setInterval(function () {\n w && w.closed && (cleanup(), cb && (cb(\"User closed the popup window\"), cb = null));\n }, 500),\n req = JSON.stringify({\n a: \"request\",\n d: opts.params\n });\n function cleanup() {\n if (iframe && document.body.removeChild(iframe), iframe = void 0, closeInterval && (closeInterval = clearInterval(closeInterval)), removeListener(window, \"message\", onMessage), removeListener(window, \"unload\", cleanup), w) try {\n w.close();\n } catch (securityViolation) {\n messageTarget.postMessage(\"die\", origin);\n }\n w = messageTarget = void 0;\n }\n function onMessage(e) {\n if (e.origin === origin) {\n try {\n var d = JSON.parse(e.data);\n } catch (err) {\n if (cb) return cb(err);\n throw err;\n }\n \"ready\" === d.a ? messageTarget.postMessage(req, origin) : \"error\" === d.a ? (cleanup(), cb && (cb(d.d), cb = null)) : \"response\" === d.a && (cleanup(), cb && (cb(null, d.d), cb = null));\n }\n }\n return addListener(window, \"unload\", cleanup), addListener(window, \"message\", onMessage), {\n originalPopup: w,\n close: cleanup,\n focus: function () {\n if (w) try {\n w.focus();\n } catch (e) {}\n }\n };\n },\n onOpen: function (cb) {\n var o = \"*\",\n msgTarget = isIE ? function () {\n for (var frames = window.opener.frames, i = frames.length - 1; i >= 0; i--) try {\n if (frames[i].location.protocol === window.location.protocol && frames[i].location.host === window.location.host && \"__winchan_relay_frame\" === frames[i].name) return frames[i];\n } catch (e) {}\n }() : window.opener;\n if (!msgTarget) throw \"can't find relay frame\";\n function doPost(msg) {\n msg = JSON.stringify(msg), isIE ? msgTarget.doPost(msg, o) : msgTarget.postMessage(msg, o);\n }\n function onDie(e) {\n if (\"die\" === e.data) try {\n window.close();\n } catch (o_O) {}\n }\n addListener(isIE ? msgTarget : window, \"message\", function onMessage(e) {\n var d;\n try {\n d = JSON.parse(e.data);\n } catch (err) {}\n d && \"request\" === d.a && (removeListener(window, \"message\", onMessage), o = e.origin, cb && setTimeout(function () {\n cb(o, d.d, function (r) {\n cb = void 0, doPost({\n a: \"response\",\n d: r\n });\n });\n }, 0));\n }), addListener(isIE ? msgTarget : window, \"message\", onDie);\n try {\n doPost({\n a: \"ready\"\n });\n } catch (e) {\n addListener(msgTarget, \"load\", function (e) {\n doPost({\n a: \"ready\"\n });\n });\n }\n var onUnload = function () {\n try {\n removeListener(isIE ? msgTarget : window, \"message\", onDie);\n } catch (ohWell) {}\n cb && doPost({\n a: \"error\",\n d: \"client closed window\"\n }), cb = void 0;\n try {\n window.close();\n } catch (e) {}\n };\n return addListener(window, \"unload\", onUnload), {\n detach: function () {\n removeListener(window, \"unload\", onUnload);\n }\n };\n }\n } : {\n open: function (url, winopts, arg, cb) {\n setTimeout(function () {\n cb(\"unsupported browser\");\n }, 0);\n },\n onOpen: function (cb) {\n setTimeout(function () {\n cb(\"unsupported browser\");\n }, 0);\n }\n };\n }();\n module.exports && (module.exports = WinChan);\n});\nvar urlHelper = {\n extractOrigin: function (url) {\n /^https?:\\/\\//.test(url) || (url = window.location.href);\n var m = /^(https?:\\/\\/[-_a-zA-Z.0-9:]+)/.exec(url);\n return m ? m[1] : url;\n }\n};\nfunction PopupHandler() {\n this._current_popup = null;\n}\nfunction Popup(webAuth, options) {\n this.baseOptions = options, this.baseOptions.popupOrigin = options.popupOrigin, this.client = webAuth.client, this.webAuth = webAuth, this.transactionManager = new TransactionManager(this.baseOptions), this.crossOriginAuthentication = new CrossOriginAuthentication(webAuth, this.baseOptions), this.warn = new Warn({\n disableWarnings: !!options._disableDeprecationWarnings\n });\n}\nfunction SilentAuthenticationHandler(options) {\n this.authenticationUrl = options.authenticationUrl, this.timeout = options.timeout || 6e4, this.handler = null, this.postMessageDataType = options.postMessageDataType || !1, this.postMessageOrigin = options.postMessageOrigin || windowHelper.getWindow().location.origin || windowHelper.getWindow().location.protocol + \"//\" + windowHelper.getWindow().location.hostname + (windowHelper.getWindow().location.port ? \":\" + windowHelper.getWindow().location.port : \"\");\n}\nfunction UsernamePassword(options) {\n this.baseOptions = options, this.request = new RequestBuilder(options), this.transactionManager = new TransactionManager(this.baseOptions);\n}\nfunction HostedPages(client, options) {\n this.baseOptions = options, this.client = client, this.baseOptions.universalLoginPage = !0, this.request = new RequestBuilder(this.baseOptions), this.warn = new Warn({\n disableWarnings: !!options._disableDeprecationWarnings\n });\n}\nPopupHandler.prototype.calculatePosition = function (options) {\n var width = options.width || 500,\n height = options.height || 600,\n _window = windowHelper.getWindow(),\n screenX = void 0 !== _window.screenX ? _window.screenX : _window.screenLeft,\n screenY = void 0 !== _window.screenY ? _window.screenY : _window.screenTop,\n outerWidth = void 0 !== _window.outerWidth ? _window.outerWidth : _window.document.body.clientWidth,\n outerHeight = void 0 !== _window.outerHeight ? _window.outerHeight : _window.document.body.clientHeight;\n return {\n width: width,\n height: height,\n left: options.left || screenX + (outerWidth - width) / 2,\n top: options.top || screenY + (outerHeight - height) / 2\n };\n}, PopupHandler.prototype.preload = function (options) {\n var _this = this,\n _window = windowHelper.getWindow(),\n popupPosition = this.calculatePosition(options.popupOptions || {}),\n popupOptions = objectHelper.merge(popupPosition).with(options.popupOptions),\n url = options.url || \"about:blank\",\n windowFeatures = lib.stringify(popupOptions, {\n encode: !1,\n delimiter: \",\"\n });\n return this._current_popup && !this._current_popup.closed || (this._current_popup = _window.open(url, \"auth0_signup_popup\", windowFeatures), this._current_popup.kill = function () {\n this.close(), _this._current_popup = null;\n }), this._current_popup;\n}, PopupHandler.prototype.load = function (url, relayUrl, options, cb) {\n var _this = this,\n popupPosition = this.calculatePosition(options.popupOptions || {}),\n popupOptions = objectHelper.merge(popupPosition).with(options.popupOptions),\n winchanOptions = objectHelper.merge({\n url: url,\n relay_url: relayUrl,\n window_features: lib.stringify(popupOptions, {\n delimiter: \",\",\n encode: !1\n }),\n popup: this._current_popup\n }).with(options),\n popup = winchan.open(winchanOptions, function (err, data) {\n if (!err || \"SyntaxError\" !== err.name) return _this._current_popup = null, cb(err, data);\n });\n return popup.focus(), popup;\n}, Popup.prototype.buildPopupHandler = function () {\n var pluginHandler = this.baseOptions.plugins.get(\"popup.getPopupHandler\");\n return pluginHandler ? pluginHandler.getPopupHandler() : new PopupHandler();\n}, Popup.prototype.preload = function (options) {\n options = options || {};\n var popup = this.buildPopupHandler();\n return popup.preload(options), popup;\n}, Popup.prototype.getPopupHandler = function (options, preload) {\n return options.popupHandler ? options.popupHandler : preload ? this.preload(options) : this.buildPopupHandler();\n}, Popup.prototype.callback = function (options) {\n var _this = this,\n theWindow = windowHelper.getWindow(),\n originUrl = (options = options || {}).popupOrigin || this.baseOptions.popupOrigin || windowHelper.getOrigin();\n theWindow.opener ? winchan.onOpen(function (popupOrigin, r, cb) {\n if (popupOrigin !== originUrl) return cb({\n error: \"origin_mismatch\",\n error_description: \"The popup's origin (\" + popupOrigin + \") should match the `popupOrigin` parameter (\" + originUrl + \").\"\n });\n _this.webAuth.parseHash(options || {}, function (err, data) {\n return cb(err || data);\n });\n }) : theWindow.doPost = function (msg) {\n theWindow.parent && theWindow.parent.postMessage(msg, originUrl);\n };\n}, Popup.prototype.authorize = function (options, cb) {\n var url,\n relayUrl,\n popOpts = {},\n pluginHandler = this.baseOptions.plugins.get(\"popup.authorize\"),\n params = objectHelper.merge(this.baseOptions, [\"clientID\", \"scope\", \"domain\", \"audience\", \"tenant\", \"responseType\", \"redirectUri\", \"_csrf\", \"state\", \"_intstate\", \"nonce\", \"organization\", \"invitation\"]).with(objectHelper.blacklist(options, [\"popupHandler\"]));\n return assert.check(params, {\n type: \"object\",\n message: \"options parameter is not valid\"\n }, {\n responseType: {\n type: \"string\",\n message: \"responseType option is required\"\n }\n }), relayUrl = urlJoin(this.baseOptions.rootUrl, \"relay.html\"), options.owp ? params.owp = !0 : (popOpts.origin = urlHelper.extractOrigin(params.redirectUri), relayUrl = params.redirectUri), options.popupOptions && (popOpts.popupOptions = objectHelper.pick(options.popupOptions, [\"width\", \"height\", \"top\", \"left\"])), pluginHandler && (params = pluginHandler.processParams(params)), (params = this.transactionManager.process(params)).scope = params.scope || \"openid profile email\", delete params.domain, url = this.client.buildAuthorizeUrl(params), this.getPopupHandler(options).load(url, relayUrl, popOpts, wrapCallback(cb, {\n keepOriginalCasing: !0\n }));\n}, Popup.prototype.loginWithCredentials = function (options, cb) {\n options.realm = options.realm || options.connection, options.popup = !0, options = objectHelper.merge(this.baseOptions, [\"redirectUri\", \"responseType\", \"state\", \"nonce\", \"timeout\"]).with(objectHelper.blacklist(options, [\"popupHandler\", \"connection\"])), options = this.transactionManager.process(options), this.crossOriginAuthentication.login(options, cb);\n}, Popup.prototype.passwordlessVerify = function (options, cb) {\n var _this = this;\n return this.client.passwordless.verify(objectHelper.blacklist(options, [\"popupHandler\"]), function (err) {\n if (err) return cb(err);\n options.username = options.phoneNumber || options.email, options.password = options.verificationCode, delete options.email, delete options.phoneNumber, delete options.verificationCode, delete options.type, _this.client.loginWithResourceOwner(options, cb);\n });\n}, Popup.prototype.signupAndLogin = function (options, cb) {\n var _this = this;\n return this.client.dbConnection.signup(options, function (err) {\n if (err) return cb(err);\n _this.loginWithCredentials(options, cb);\n });\n}, SilentAuthenticationHandler.create = function (options) {\n return new SilentAuthenticationHandler(options);\n}, SilentAuthenticationHandler.prototype.login = function (usePostMessage, callback) {\n this.handler = new IframeHandler({\n auth0: this.auth0,\n url: this.authenticationUrl,\n eventListenerType: usePostMessage ? \"message\" : \"load\",\n callback: this.getCallbackHandler(callback, usePostMessage),\n timeout: this.timeout,\n eventValidator: this.getEventValidator(),\n timeoutCallback: function () {\n callback(null, \"#error=timeout&error_description=Timeout+during+authentication+renew.\");\n },\n usePostMessage: usePostMessage || !1\n }), this.handler.init();\n}, SilentAuthenticationHandler.prototype.getEventValidator = function () {\n var _this = this;\n return {\n isValid: function (eventData) {\n switch (eventData.event.type) {\n case \"message\":\n return eventData.event.origin === _this.postMessageOrigin && eventData.event.source === _this.handler.iframe.contentWindow && (!1 === _this.postMessageDataType || eventData.event.data.type && eventData.event.data.type === _this.postMessageDataType);\n case \"load\":\n if (\"about:\" === eventData.sourceObject.contentWindow.location.protocol) return !1;\n default:\n return !0;\n }\n }\n };\n}, SilentAuthenticationHandler.prototype.getCallbackHandler = function (callback, usePostMessage) {\n return function (eventData) {\n var callbackValue;\n callbackValue = usePostMessage ? \"object\" == typeof eventData.event.data && eventData.event.data.hash ? eventData.event.data.hash : eventData.event.data : eventData.sourceObject.contentWindow.location.hash, callback(null, callbackValue);\n };\n}, UsernamePassword.prototype.login = function (options, cb) {\n var url, body;\n return url = urlJoin(this.baseOptions.rootUrl, \"usernamepassword\", \"login\"), options.username = options.username || options.email, options = objectHelper.blacklist(options, [\"email\", \"onRedirecting\"]), body = objectHelper.merge(this.baseOptions, [\"clientID\", \"redirectUri\", \"tenant\", \"responseType\", \"responseMode\", \"scope\", \"audience\"]).with(options), body = this.transactionManager.process(body), body = objectHelper.toSnakeCase(body, [\"auth0Client\"]), this.request.post(url).send(body).end(wrapCallback(cb));\n}, UsernamePassword.prototype.callback = function (formHtml) {\n var div,\n _document = windowHelper.getDocument();\n (div = _document.createElement(\"div\")).innerHTML = formHtml, _document.body.appendChild(div).children[0].submit();\n}, HostedPages.prototype.login = function (options, cb) {\n if (windowHelper.getWindow().location.host !== this.baseOptions.domain) throw new Error(\"This method is meant to be used only inside the Universal Login Page.\");\n var usernamePassword,\n params = objectHelper.merge(this.baseOptions, [\"clientID\", \"redirectUri\", \"tenant\", \"responseType\", \"responseMode\", \"scope\", \"audience\", \"_csrf\", \"state\", \"_intstate\", \"nonce\"]).with(options);\n return assert.check(params, {\n type: \"object\",\n message: \"options parameter is not valid\"\n }, {\n responseType: {\n type: \"string\",\n message: \"responseType option is required\"\n }\n }), (usernamePassword = new UsernamePassword(this.baseOptions)).login(params, function (err, data) {\n if (err) return cb(err);\n function doAuth() {\n usernamePassword.callback(data);\n }\n if (\"function\" == typeof options.onRedirecting) return options.onRedirecting(function () {\n doAuth();\n });\n doAuth();\n });\n}, HostedPages.prototype.signupAndLogin = function (options, cb) {\n var _this = this;\n return _this.client.client.dbConnection.signup(options, function (err) {\n return err ? cb(err) : _this.login(options, cb);\n });\n}, HostedPages.prototype.getSSOData = function (withActiveDirectories, cb) {\n var url,\n params = \"\";\n return \"function\" == typeof withActiveDirectories && (cb = withActiveDirectories, withActiveDirectories = !1), assert.check(withActiveDirectories, {\n type: \"boolean\",\n message: \"withActiveDirectories parameter is not valid\"\n }), assert.check(cb, {\n type: \"function\",\n message: \"cb parameter is not valid\"\n }), withActiveDirectories && (params = \"?\" + lib.stringify({\n ldaps: 1,\n client_id: this.baseOptions.clientID\n })), url = urlJoin(this.baseOptions.rootUrl, \"user\", \"ssodata\", params), this.request.get(url, {\n noHeaders: !0\n }).withCredentials().end(wrapCallback(cb));\n};\nvar noop = function () {},\n captchaSolved = noop,\n done = noop,\n captchaReloaded = !1,\n Flow = {\n DEFAULT: \"default\",\n SIGNUP: \"signup\",\n PASSWORDLESS: \"passwordless\",\n PASSWORD_RESET: \"password_reset\"\n },\n defaults$2 = {\n lang: \"en\",\n templates: {\n auth0: function (challenge) {\n var message = \"code\" === challenge.type ? \"Enter the code shown above\" : \"Solve the formula shown above\";\n return '
\\n \\n \\n
\\n';\n },\n recaptcha_v2: function () {\n return '
';\n },\n recaptcha_enterprise: function () {\n return '
';\n },\n hcaptcha: function () {\n return '
';\n },\n friendly_captcha: function () {\n return '
';\n },\n arkose: function () {\n return '
';\n },\n auth0_v2: function () {\n return '
';\n },\n error: function () {\n return '
Error getting the bot detection challenge. Please contact the system administrator.
';\n }\n }\n };\nfunction globalForCaptchaProvider(provider) {\n switch (provider) {\n case \"recaptcha_v2\":\n return window.grecaptcha;\n case \"recaptcha_enterprise\":\n return window.grecaptcha.enterprise;\n case \"hcaptcha\":\n return window.hcaptcha;\n case \"friendly_captcha\":\n return window.friendlyChallenge;\n case \"arkose\":\n return window.arkose;\n case \"auth0_v2\":\n return window.turnstile;\n default:\n throw new Error(\"Unknown captcha provider\");\n }\n}\nfunction loadScript(url, attributes) {\n var script = window.document.createElement(\"script\");\n for (var attr in attributes) attr.startsWith(\"data-\") ? script.dataset[attr.replace(\"data-\", \"\")] = attributes[attr] : script[attr] = attributes[attr];\n script.src = url, window.document.body.appendChild(script);\n}\nfunction removeScript(url) {\n window.document.querySelectorAll('script[src=\"' + url + '\"]').forEach(function (script) {\n script.remove();\n });\n}\nfunction injectCaptchaScript(opts, callback, setValue) {\n var callbackName = opts.provider + \"Callback_\" + Math.floor(1000001 * Math.random()),\n attributes = {\n async: !0,\n defer: !0\n },\n scriptSrc = function (provider, lang, callback, clientSubdomain, siteKey) {\n switch (provider) {\n case \"recaptcha_v2\":\n return \"https://www.recaptcha.net/recaptcha/api.js?hl=\" + lang + \"&onload=\" + callback;\n case \"recaptcha_enterprise\":\n return \"https://www.recaptcha.net/recaptcha/enterprise.js?render=explicit&hl=\" + lang + \"&onload=\" + callback;\n case \"hcaptcha\":\n return \"https://js.hcaptcha.com/1/api.js?hl=\" + lang + \"&onload=\" + callback;\n case \"friendly_captcha\":\n return \"https://cdn.jsdelivr.net/npm/friendly-challenge@0.9.12/widget.min.js\";\n case \"arkose\":\n return \"https://\" + clientSubdomain + \".arkoselabs.com/v2/\" + siteKey + \"/api.js\";\n case \"auth0_v2\":\n return \"https://challenges.cloudflare.com/turnstile/v0/api.js?render=explicit&onload=\" + callback;\n default:\n throw new Error(\"Unknown captcha provider\");\n }\n }(opts.provider, opts.lang, callbackName, opts.clientSubdomain, opts.siteKey);\n if (\"arkose\" === opts.provider || \"auth0_v2\" === opts.provider) {\n var retryCount = 0;\n attributes[\"data-callback\"] = callbackName, attributes.onerror = function () {\n if (retryCount < 3) return removeScript(scriptSrc), loadScript(scriptSrc, attributes), void retryCount++;\n removeScript(scriptSrc), done(new Error(opts.provider + \" failed to load\")), setValue(\"BYPASS_CAPTCHA\");\n }, window[callbackName] = function (arkose) {\n window.arkose = arkose, callback(arkose);\n };\n } else window[callbackName] = function () {\n delete window[callbackName], callback();\n }, \"friendly_captcha\" === opts.provider && (attributes.onload = window[callbackName]);\n loadScript(scriptSrc, attributes);\n}\nvar captcha = {\n render: function (auth0Client, flow, element, options, callback) {\n function load(loadDone) {\n function challengeCallback(err, challenge) {\n return err ? (element.innerHTML = options.templates.error(err), done(err)) : challenge.required ? (element.style.display = \"\", void (\"auth0\" === challenge.provider ? (!function (element, options, challenge, load) {\n element.innerHTML = options.templates[challenge.provider](challenge), element.querySelector(\".captcha-reload\").addEventListener(\"click\", function (e) {\n e.preventDefault(), load();\n });\n }(element, options, challenge, load), done()) : \"recaptcha_v2\" !== challenge.provider && \"recaptcha_enterprise\" !== challenge.provider && \"hcaptcha\" !== challenge.provider && \"friendly_captcha\" !== challenge.provider && \"arkose\" !== challenge.provider && \"auth0_v2\" !== challenge.provider || function (element, options, challenge) {\n var captchaClass,\n widgetId = element.hasAttribute(\"data-wid\") && element.getAttribute(\"data-wid\");\n function setValue(value) {\n element.querySelector('input[name=\"captcha\"]').value = value || \"\";\n }\n if (\"friendly_captcha\" === challenge.provider && window.auth0FCInstance) return setValue(), void window.auth0FCInstance.reset();\n if (\"arkose\" === challenge.provider && globalForCaptchaProvider(challenge.provider)) return setValue(), void globalForCaptchaProvider(challenge.provider).reset();\n if (widgetId) return setValue(), void globalForCaptchaProvider(challenge.provider).reset(widgetId);\n switch (element.innerHTML = options.templates[challenge.provider](challenge), challenge.provider) {\n case \"recaptcha_enterprise\":\n case \"recaptcha_v2\":\n captchaClass = \".recaptcha\";\n break;\n case \"hcaptcha\":\n captchaClass = \".hcaptcha\";\n break;\n case \"friendly_captcha\":\n captchaClass = \".friendly-captcha\";\n break;\n case \"arkose\":\n captchaClass = \".arkose\";\n break;\n case \"auth0_v2\":\n captchaClass = \".auth0_v2\";\n }\n var captchaDiv = element.querySelector(captchaClass);\n injectCaptchaScript({\n lang: options.lang,\n provider: challenge.provider,\n clientSubdomain: challenge.clientSubdomain,\n siteKey: challenge.siteKey\n }, function (arkose) {\n var global = globalForCaptchaProvider(challenge.provider);\n if (\"arkose\" === challenge.provider) {\n var retryCount = 0,\n arkoseLoaded = !1;\n arkose.setConfig({\n onReady: function () {\n arkoseLoaded && !captchaReloaded || (done(null, {\n triggerCaptcha: function (solvedCallback) {\n arkose.run(), captchaSolved = solvedCallback;\n }\n }), captchaReloaded && (captchaReloaded = !1), arkoseLoaded = !0);\n },\n onCompleted: function (response) {\n setValue(response.token), captchaSolved();\n },\n onError: function (response) {\n retryCount < 3 ? (setValue(), arkose.reset(), setTimeout(function () {\n arkose.run();\n }, 500), retryCount++) : (arkoseLoaded || (done(new Error(response.error.error)), arkoseLoaded = !0), setValue(\"BYPASS_CAPTCHA\"));\n }\n });\n } else if (\"friendly_captcha\" === challenge.provider) window.auth0FCInstance = new global.WidgetInstance(captchaDiv, {\n sitekey: challenge.siteKey,\n language: options.lang,\n doneCallback: function (solution) {\n setValue(solution);\n },\n errorCallback: function () {\n setValue();\n }\n }), done();else {\n var renderParams = {\n callback: setValue,\n \"expired-callback\": function () {\n setValue();\n },\n \"error-callback\": function () {\n setValue();\n },\n sitekey: challenge.siteKey\n };\n \"auth0_v2\" === challenge.provider && (retryCount = 0, renderParams.language = options.lang, renderParams.theme = \"light\", renderParams.retry = \"never\", renderParams[\"response-field\"] = !1, renderParams[\"error-callback\"] = function () {\n return retryCount < 3 ? (setValue(), globalForCaptchaProvider(challenge.provider).reset(widgetId), retryCount++) : setValue(\"BYPASS_CAPTCHA\"), !0;\n }), widgetId = global.render(captchaDiv, renderParams), element.setAttribute(\"data-wid\", widgetId), done();\n }\n }, setValue);\n }(element, options, challenge))) : (element.style.display = \"none\", element.innerHTML = \"\", done());\n }\n done = loadDone || noop, flow === Flow.PASSWORDLESS ? auth0Client.passwordless.getChallenge(challengeCallback) : flow === Flow.PASSWORD_RESET ? auth0Client.dbConnection.getPasswordResetChallenge(challengeCallback) : flow === Flow.SIGNUP ? auth0Client.dbConnection.getSignupChallenge(challengeCallback) : auth0Client.getChallenge(challengeCallback);\n }\n return options = objectHelper.merge(defaults$2).with(options || {}), load(callback), {\n reload: function (reloadDone) {\n captchaReloaded = !0, load(reloadDone);\n },\n getValue: function () {\n var captchaInput = element.querySelector('input[name=\"captcha\"]');\n if (captchaInput) return captchaInput.value;\n }\n };\n },\n Flow: Flow\n};\nfunction defaultClock() {\n return new Date();\n}\nfunction WebAuth(options) {\n assert.check(options, {\n type: \"object\",\n message: \"options parameter is not valid\"\n }, {\n domain: {\n type: \"string\",\n message: \"domain option is required\"\n },\n clientID: {\n type: \"string\",\n message: \"clientID option is required\"\n },\n responseType: {\n optional: !0,\n type: \"string\",\n message: \"responseType is not valid\"\n },\n responseMode: {\n optional: !0,\n type: \"string\",\n message: \"responseMode is not valid\"\n },\n redirectUri: {\n optional: !0,\n type: \"string\",\n message: \"redirectUri is not valid\"\n },\n scope: {\n optional: !0,\n type: \"string\",\n message: \"scope is not valid\"\n },\n audience: {\n optional: !0,\n type: \"string\",\n message: \"audience is not valid\"\n },\n popupOrigin: {\n optional: !0,\n type: \"string\",\n message: \"popupOrigin is not valid\"\n },\n leeway: {\n optional: !0,\n type: \"number\",\n message: \"leeway is not valid\"\n },\n plugins: {\n optional: !0,\n type: \"array\",\n message: \"plugins is not valid\"\n },\n maxAge: {\n optional: !0,\n type: \"number\",\n message: \"maxAge is not valid\"\n },\n stateExpiration: {\n optional: !0,\n type: \"number\",\n message: \"stateExpiration is not valid\"\n },\n legacySameSiteCookie: {\n optional: !0,\n type: \"boolean\",\n message: \"legacySameSiteCookie option is not valid\"\n },\n _disableDeprecationWarnings: {\n optional: !0,\n type: \"boolean\",\n message: \"_disableDeprecationWarnings option is not valid\"\n },\n _sendTelemetry: {\n optional: !0,\n type: \"boolean\",\n message: \"_sendTelemetry option is not valid\"\n },\n _telemetryInfo: {\n optional: !0,\n type: \"object\",\n message: \"_telemetryInfo option is not valid\"\n },\n _timesToRetryFailedRequests: {\n optional: !0,\n type: \"number\",\n message: \"_timesToRetryFailedRequests option is not valid\"\n }\n }), options.overrides && assert.check(options.overrides, {\n type: \"object\",\n message: \"overrides option is not valid\"\n }, {\n __tenant: {\n optional: !0,\n type: \"string\",\n message: \"__tenant option is required\"\n },\n __token_issuer: {\n optional: !0,\n type: \"string\",\n message: \"__token_issuer option is required\"\n },\n __jwks_uri: {\n optional: !0,\n type: \"string\",\n message: \"__jwks_uri is required\"\n }\n }), this.baseOptions = options, this.baseOptions.plugins = new PluginHandler(this, this.baseOptions.plugins || []), this.baseOptions._sendTelemetry = !1 !== this.baseOptions._sendTelemetry || this.baseOptions._sendTelemetry, this.baseOptions._timesToRetryFailedRequests = options._timesToRetryFailedRequests ? parseInt(options._timesToRetryFailedRequests) : 0, this.baseOptions.tenant = this.baseOptions.overrides && this.baseOptions.overrides.__tenant || this.baseOptions.domain.split(\".\")[0], this.baseOptions.token_issuer = this.baseOptions.overrides && this.baseOptions.overrides.__token_issuer || \"https://\" + this.baseOptions.domain + \"/\", this.baseOptions.jwksURI = this.baseOptions.overrides && this.baseOptions.overrides.__jwks_uri, !1 !== options.legacySameSiteCookie && (this.baseOptions.legacySameSiteCookie = !0), this.transactionManager = new TransactionManager(this.baseOptions), this.client = new Authentication(this.baseOptions), this.redirect = new Redirect(this, this.baseOptions), this.popup = new Popup(this, this.baseOptions), this.crossOriginAuthentication = new CrossOriginAuthentication(this, this.baseOptions), this.webMessageHandler = new WebMessageHandler(this), this._universalLogin = new HostedPages(this, this.baseOptions), this.ssodataStorage = new SSODataStorage(this.baseOptions);\n}\nfunction PasswordlessAuthentication(request, options) {\n this.baseOptions = options, this.request = request;\n}\nfunction DBConnection(request, options) {\n this.baseOptions = options, this.request = request;\n}\nfunction Authentication(auth0, options) {\n 2 === arguments.length ? this.auth0 = auth0 : options = auth0, assert.check(options, {\n type: \"object\",\n message: \"options parameter is not valid\"\n }, {\n domain: {\n type: \"string\",\n message: \"domain option is required\"\n },\n clientID: {\n type: \"string\",\n message: \"clientID option is required\"\n },\n responseType: {\n optional: !0,\n type: \"string\",\n message: \"responseType is not valid\"\n },\n responseMode: {\n optional: !0,\n type: \"string\",\n message: \"responseMode is not valid\"\n },\n redirectUri: {\n optional: !0,\n type: \"string\",\n message: \"redirectUri is not valid\"\n },\n scope: {\n optional: !0,\n type: \"string\",\n message: \"scope is not valid\"\n },\n audience: {\n optional: !0,\n type: \"string\",\n message: \"audience is not valid\"\n },\n _disableDeprecationWarnings: {\n optional: !0,\n type: \"boolean\",\n message: \"_disableDeprecationWarnings option is not valid\"\n },\n _sendTelemetry: {\n optional: !0,\n type: \"boolean\",\n message: \"_sendTelemetry option is not valid\"\n },\n _telemetryInfo: {\n optional: !0,\n type: \"object\",\n message: \"_telemetryInfo option is not valid\"\n }\n }), this.baseOptions = options, this.baseOptions._sendTelemetry = !1 !== this.baseOptions._sendTelemetry || this.baseOptions._sendTelemetry, this.baseOptions.rootUrl = this.baseOptions.domain && 0 === this.baseOptions.domain.toLowerCase().indexOf(\"http\") ? this.baseOptions.domain : \"https://\" + this.baseOptions.domain, this.request = new RequestBuilder(this.baseOptions), this.passwordless = new PasswordlessAuthentication(this.request, this.baseOptions), this.dbConnection = new DBConnection(this.request, this.baseOptions), this.warn = new Warn({\n disableWarnings: !!options._disableDeprecationWarnings\n }), this.ssodataStorage = new SSODataStorage(this.baseOptions);\n}\nfunction Management(options) {\n assert.check(options, {\n type: \"object\",\n message: \"options parameter is not valid\"\n }, {\n domain: {\n type: \"string\",\n message: \"domain option is required\"\n },\n token: {\n type: \"string\",\n message: \"token option is required\"\n },\n _sendTelemetry: {\n optional: !0,\n type: \"boolean\",\n message: \"_sendTelemetry option is not valid\"\n },\n _telemetryInfo: {\n optional: !0,\n type: \"object\",\n message: \"_telemetryInfo option is not valid\"\n }\n }), this.baseOptions = options, this.baseOptions.headers = {\n Authorization: \"Bearer \" + this.baseOptions.token\n }, this.request = new RequestBuilder(this.baseOptions), this.baseOptions.rootUrl = urlJoin(\"https://\" + this.baseOptions.domain, \"api\", \"v2\");\n}\nWebAuth.prototype.parseHash = function (options, cb) {\n var parsedQs, err;\n cb || \"function\" != typeof options ? options = options || {} : (cb = options, options = {});\n var hashStr = void 0 === options.hash ? windowHelper.getWindow().location.hash : options.hash;\n if (hashStr = hashStr.replace(/^#?\\/?/, \"\"), (parsedQs = lib.parse(hashStr)).hasOwnProperty(\"error\")) return err = error.buildResponse(parsedQs.error, parsedQs.error_description), parsedQs.state && (err.state = parsedQs.state), cb(err);\n if (!parsedQs.hasOwnProperty(\"access_token\") && !parsedQs.hasOwnProperty(\"id_token\") && !parsedQs.hasOwnProperty(\"refresh_token\")) return cb(null, null);\n var responseTypes = (this.baseOptions.responseType || options.responseType || \"\").split(\" \");\n return responseTypes.length > 0 && -1 !== responseTypes.indexOf(\"token\") && !parsedQs.hasOwnProperty(\"access_token\") ? cb(error.buildResponse(\"invalid_hash\", \"response_type contains `token`, but the parsed hash does not contain an `access_token` property\")) : responseTypes.length > 0 && -1 !== responseTypes.indexOf(\"id_token\") && !parsedQs.hasOwnProperty(\"id_token\") ? cb(error.buildResponse(\"invalid_hash\", \"response_type contains `id_token`, but the parsed hash does not contain an `id_token` property\")) : this.validateAuthenticationResponse(options, parsedQs, cb);\n}, WebAuth.prototype.validateAuthenticationResponse = function (options, parsedHash, cb) {\n var _this = this;\n options.__enableIdPInitiatedLogin = options.__enableIdPInitiatedLogin || options.__enableImpersonation;\n var state = parsedHash.state,\n transaction = this.transactionManager.getStoredTransaction(state),\n transactionState = options.state || transaction && transaction.state || null,\n transactionStateMatchesState = transactionState === state;\n if (!(!state && !transactionState && options.__enableIdPInitiatedLogin) && !transactionStateMatchesState) return cb({\n error: \"invalid_token\",\n errorDescription: \"`state` does not match.\"\n });\n var transactionNonce = options.nonce || transaction && transaction.nonce || null,\n transactionOrganization = transaction && transaction.organization,\n appState = options.state || transaction && transaction.appState || null,\n callback = function (err, payload) {\n if (err) return cb(err);\n var sub;\n transaction && transaction.lastUsedConnection && (payload && (sub = payload.sub), _this.ssodataStorage.set(transaction.lastUsedConnection, sub));\n return cb(null, function (qsParams, appState, token) {\n return {\n accessToken: qsParams.access_token || null,\n idToken: qsParams.id_token || null,\n idTokenPayload: token || null,\n appState: appState || null,\n refreshToken: qsParams.refresh_token || null,\n state: qsParams.state || null,\n expiresIn: qsParams.expires_in ? parseInt(qsParams.expires_in, 10) : null,\n tokenType: qsParams.token_type || null,\n scope: qsParams.scope || null\n };\n }(parsedHash, appState, payload));\n };\n return parsedHash.id_token ? this.validateToken(parsedHash.id_token, transactionNonce, function (validationError, payload) {\n if (!validationError) {\n if (transactionOrganization) if (0 === transactionOrganization.indexOf(\"org_\")) {\n if (!payload.org_id) return callback(error.invalidToken(\"Organization Id (org_id) claim must be a string present in the ID token\"));\n if (payload.org_id !== transactionOrganization) return callback(error.invalidToken('Organization Id (org_id) claim value mismatch in the ID token; expected \"' + transactionOrganization + '\", found \"' + payload.org_id + '\"'));\n } else {\n if (!payload.org_name) return callback(error.invalidToken(\"Organization Name (org_name) claim must be a string present in the ID token\"));\n if (payload.org_name !== transactionOrganization.toLowerCase()) return callback(error.invalidToken('Organization Name (org_name) claim value mismatch in the ID token; expected \"' + transactionOrganization + '\", found \"' + payload.org_name + '\"'));\n }\n return parsedHash.access_token && payload.at_hash ? new I().validateAccessToken(parsedHash.access_token, \"RS256\", payload.at_hash, function (err) {\n return err ? callback(error.invalidToken(err.message)) : callback(null, payload);\n }) : callback(null, payload);\n }\n if (\"invalid_token\" !== validationError.error || validationError.errorDescription && validationError.errorDescription.indexOf(\"Nonce (nonce) claim value mismatch in the ID token\") > -1) return callback(validationError);\n var decodedToken = new I().decode(parsedHash.id_token);\n if (\"HS256\" !== decodedToken.header.alg) return callback(validationError);\n if ((decodedToken.payload.nonce || null) !== transactionNonce) return callback({\n error: \"invalid_token\",\n errorDescription: 'Nonce (nonce) claim value mismatch in the ID token; expected \"' + transactionNonce + '\", found \"' + decodedToken.payload.nonce + '\"'\n });\n if (!parsedHash.access_token) {\n return callback({\n error: \"invalid_token\",\n description: \"The id_token cannot be validated because it was signed with the HS256 algorithm and public clients (like a browser) can’t store secrets. Please read the associated doc for possible ways to fix this. Read more: https://auth0.com/docs/errors/libraries/auth0-js/invalid-token#parsing-an-hs256-signed-id-token-without-an-access-token\"\n });\n }\n return _this.client.userInfo(parsedHash.access_token, function (errUserInfo, profile) {\n return errUserInfo ? callback(errUserInfo) : callback(null, profile);\n });\n }) : callback(null, null);\n}, WebAuth.prototype.validateToken = function (token, nonce, cb) {\n new I({\n issuer: this.baseOptions.token_issuer,\n jwksURI: this.baseOptions.jwksURI,\n audience: this.baseOptions.clientID,\n leeway: this.baseOptions.leeway || 60,\n maxAge: this.baseOptions.maxAge,\n __clock: this.baseOptions.__clock || defaultClock\n }).verify(token, nonce, function (err, payload) {\n if (err) return cb(error.invalidToken(err.message));\n cb(null, payload);\n });\n}, WebAuth.prototype.renewAuth = function (options, cb) {\n var usePostMessage = !!options.usePostMessage,\n postMessageDataType = options.postMessageDataType || !1,\n postMessageOrigin = options.postMessageOrigin || windowHelper.getWindow().origin,\n timeout = options.timeout,\n _this = this,\n params = objectHelper.merge(this.baseOptions, [\"clientID\", \"redirectUri\", \"responseType\", \"scope\", \"audience\", \"_csrf\", \"state\", \"_intstate\", \"nonce\"]).with(options);\n params.responseType = params.responseType || \"token\", params.responseMode = params.responseMode || \"fragment\", params = this.transactionManager.process(params), assert.check(params, {\n type: \"object\",\n message: \"options parameter is not valid\"\n }), assert.check(cb, {\n type: \"function\",\n message: \"cb parameter is not valid\"\n }), params.prompt = \"none\", params = objectHelper.blacklist(params, [\"usePostMessage\", \"tenant\", \"postMessageDataType\", \"postMessageOrigin\"]), SilentAuthenticationHandler.create({\n authenticationUrl: this.client.buildAuthorizeUrl(params),\n postMessageDataType: postMessageDataType,\n postMessageOrigin: postMessageOrigin,\n timeout: timeout\n }).login(usePostMessage, function (err, hash) {\n if (\"object\" == typeof hash) return cb(err, hash);\n _this.parseHash({\n hash: hash\n }, cb);\n });\n}, WebAuth.prototype.checkSession = function (options, cb) {\n var params = objectHelper.merge(this.baseOptions, [\"clientID\", \"responseType\", \"redirectUri\", \"scope\", \"audience\", \"_csrf\", \"state\", \"_intstate\", \"nonce\"]).with(options);\n return \"code\" === params.responseType ? cb({\n error: \"error\",\n error_description: \"responseType can't be `code`\"\n }) : (options.nonce || (params = this.transactionManager.process(params)), params.redirectUri ? (assert.check(params, {\n type: \"object\",\n message: \"options parameter is not valid\"\n }), assert.check(cb, {\n type: \"function\",\n message: \"cb parameter is not valid\"\n }), params = objectHelper.blacklist(params, [\"usePostMessage\", \"tenant\", \"postMessageDataType\"]), void this.webMessageHandler.run(params, wrapCallback(cb, {\n forceLegacyError: !0,\n ignoreCasing: !0\n }))) : cb({\n error: \"error\",\n error_description: \"redirectUri can't be empty\"\n }));\n}, WebAuth.prototype.changePassword = function (options, cb) {\n return this.client.dbConnection.changePassword(options, cb);\n}, WebAuth.prototype.passwordlessStart = function (options, cb) {\n var authParams = objectHelper.merge(this.baseOptions, [\"responseType\", \"responseMode\", \"redirectUri\", \"scope\", \"audience\", \"_csrf\", \"state\", \"_intstate\", \"nonce\"]).with(options.authParams);\n return options.authParams = this.transactionManager.process(authParams), this.client.passwordless.start(options, cb);\n}, WebAuth.prototype.signup = function (options, cb) {\n return this.client.dbConnection.signup(options, cb);\n}, WebAuth.prototype.authorize = function (options) {\n var params = objectHelper.merge(this.baseOptions, [\"clientID\", \"responseType\", \"responseMode\", \"redirectUri\", \"scope\", \"audience\", \"_csrf\", \"state\", \"_intstate\", \"nonce\", \"organization\", \"invitation\"]).with(options);\n assert.check(params, {\n type: \"object\",\n message: \"options parameter is not valid\"\n }, {\n responseType: {\n type: \"string\",\n message: \"responseType option is required\"\n }\n }), (params = this.transactionManager.process(params)).scope = params.scope || \"openid profile email\", windowHelper.redirect(this.client.buildAuthorizeUrl(params));\n}, WebAuth.prototype.signupAndAuthorize = function (options, cb) {\n var _this = this;\n return this.client.dbConnection.signup(objectHelper.blacklist(options, [\"popupHandler\"]), function (err) {\n if (err) return cb(err);\n options.realm = options.connection, options.username || (options.username = options.email), _this.client.login(options, cb);\n });\n}, WebAuth.prototype.login = function (options, cb) {\n var params = objectHelper.merge(this.baseOptions, [\"clientID\", \"responseType\", \"redirectUri\", \"scope\", \"audience\", \"_csrf\", \"state\", \"_intstate\", \"nonce\", \"onRedirecting\", \"organization\", \"invitation\"]).with(options);\n params = this.transactionManager.process(params), windowHelper.getWindow().location.host === this.baseOptions.domain ? (params.connection = params.realm, delete params.realm, this._universalLogin.login(params, cb)) : this.crossOriginAuthentication.login(params, cb);\n}, WebAuth.prototype.passwordlessLogin = function (options, cb) {\n var params = objectHelper.merge(this.baseOptions, [\"clientID\", \"responseType\", \"redirectUri\", \"scope\", \"audience\", \"_csrf\", \"state\", \"_intstate\", \"nonce\", \"onRedirecting\"]).with(options);\n if (params = this.transactionManager.process(params), windowHelper.getWindow().location.host === this.baseOptions.domain) this.passwordlessVerify(params, cb);else {\n var crossOriginOptions = objectHelper.extend({\n credentialType: \"http://auth0.com/oauth/grant-type/passwordless/otp\",\n realm: params.connection,\n username: params.email || params.phoneNumber,\n otp: params.verificationCode\n }, objectHelper.blacklist(params, [\"connection\", \"email\", \"phoneNumber\", \"verificationCode\"]));\n this.crossOriginAuthentication.login(crossOriginOptions, cb);\n }\n}, WebAuth.prototype.crossOriginAuthenticationCallback = function () {\n this.crossOriginVerification();\n}, WebAuth.prototype.crossOriginVerification = function () {\n this.crossOriginAuthentication.callback();\n}, WebAuth.prototype.logout = function (options) {\n windowHelper.redirect(this.client.buildLogoutUrl(options));\n}, WebAuth.prototype.passwordlessVerify = function (options, cb) {\n var _this = this,\n params = objectHelper.merge(this.baseOptions, [\"clientID\", \"responseType\", \"responseMode\", \"redirectUri\", \"scope\", \"audience\", \"_csrf\", \"state\", \"_intstate\", \"nonce\", \"onRedirecting\"]).with(options);\n return assert.check(params, {\n type: \"object\",\n message: \"options parameter is not valid\"\n }, {\n responseType: {\n type: \"string\",\n message: \"responseType option is required\"\n }\n }), params = this.transactionManager.process(params), this.client.passwordless.verify(params, function (err) {\n if (err) return cb(err);\n function doAuth() {\n windowHelper.redirect(_this.client.passwordless.buildVerifyUrl(params));\n }\n if (\"function\" == typeof options.onRedirecting) return options.onRedirecting(function () {\n doAuth();\n });\n doAuth();\n });\n}, WebAuth.prototype.renderCaptcha = function (element, options, callback) {\n return captcha.render(this.client, captcha.Flow.DEFAULT, element, options, callback);\n}, WebAuth.prototype.renderSignupCaptcha = function (element, options, callback) {\n return captcha.render(this.client, captcha.Flow.SIGNUP, element, options, callback);\n}, WebAuth.prototype.renderPasswordlessCaptcha = function (element, options, callback) {\n return captcha.render(this.client, captcha.Flow.PASSWORDLESS, element, options, callback);\n}, WebAuth.prototype.renderPasswordResetCaptcha = function (element, options, callback) {\n return captcha.render(this.client, captcha.Flow.PASSWORD_RESET, element, options, callback);\n}, PasswordlessAuthentication.prototype.buildVerifyUrl = function (options) {\n var params, qString;\n return assert.check(options, {\n type: \"object\",\n message: \"options parameter is not valid\"\n }, {\n connection: {\n type: \"string\",\n message: \"connection option is required\"\n },\n verificationCode: {\n type: \"string\",\n message: \"verificationCode option is required\"\n },\n phoneNumber: {\n optional: !1,\n type: \"string\",\n message: \"phoneNumber option is required\",\n condition: function (o) {\n return !o.email;\n }\n },\n email: {\n optional: !1,\n type: \"string\",\n message: \"email option is required\",\n condition: function (o) {\n return !o.phoneNumber;\n }\n }\n }), params = objectHelper.merge(this.baseOptions, [\"clientID\", \"responseType\", \"responseMode\", \"redirectUri\", \"scope\", \"audience\", \"_csrf\", \"state\", \"_intstate\", \"protocol\", \"nonce\"]).with(options), this.baseOptions._sendTelemetry && (params.auth0Client = this.request.getTelemetryData()), params = objectHelper.toSnakeCase(params, [\"auth0Client\"]), qString = lib.stringify(params), urlJoin(this.baseOptions.rootUrl, \"passwordless\", \"verify_redirect\", \"?\" + qString);\n}, PasswordlessAuthentication.prototype.start = function (options, cb) {\n var url, body;\n assert.check(options, {\n type: \"object\",\n message: \"options parameter is not valid\"\n }, {\n connection: {\n type: \"string\",\n message: \"connection option is required\"\n },\n send: {\n type: \"string\",\n message: \"send option is required\",\n values: [\"link\", \"code\"],\n value_message: \"send is not valid ([link, code])\"\n },\n phoneNumber: {\n optional: !0,\n type: \"string\",\n message: \"phoneNumber option is required\",\n condition: function (o) {\n return \"code\" === o.send || !o.email;\n }\n },\n email: {\n optional: !0,\n type: \"string\",\n message: \"email option is required\",\n condition: function (o) {\n return \"link\" === o.send || !o.phoneNumber;\n }\n },\n authParams: {\n optional: !0,\n type: \"object\",\n message: \"authParams option is required\"\n }\n }), assert.check(cb, {\n type: \"function\",\n message: \"cb parameter is not valid\"\n }), url = urlJoin(this.baseOptions.rootUrl, \"passwordless\", \"start\");\n var xRequestLanguage = options.xRequestLanguage;\n delete options.xRequestLanguage, (body = objectHelper.merge(this.baseOptions, [\"clientID\", \"responseType\", \"redirectUri\", \"scope\"]).with(options)).scope && (body.authParams = body.authParams || {}, body.authParams.scope = body.authParams.scope || body.scope), body.redirectUri && (body.authParams = body.authParams || {}, body.authParams.redirect_uri = body.authParams.redirectUri || body.redirectUri), body.responseType && (body.authParams = body.authParams || {}, body.authParams.response_type = body.authParams.responseType || body.responseType), delete body.redirectUri, delete body.responseType, delete body.scope, body = objectHelper.toSnakeCase(body, [\"auth0Client\", \"authParams\"]);\n var postOptions = xRequestLanguage ? {\n xRequestLanguage: xRequestLanguage\n } : void 0;\n return this.request.post(url, postOptions).send(body).end(wrapCallback(cb));\n}, PasswordlessAuthentication.prototype.verify = function (options, cb) {\n var url, cleanOption;\n return assert.check(options, {\n type: \"object\",\n message: \"options parameter is not valid\"\n }, {\n connection: {\n type: \"string\",\n message: \"connection option is required\"\n },\n verificationCode: {\n type: \"string\",\n message: \"verificationCode option is required\"\n },\n phoneNumber: {\n optional: !1,\n type: \"string\",\n message: \"phoneNumber option is required\",\n condition: function (o) {\n return !o.email;\n }\n },\n email: {\n optional: !1,\n type: \"string\",\n message: \"email option is required\",\n condition: function (o) {\n return !o.phoneNumber;\n }\n }\n }), assert.check(cb, {\n type: \"function\",\n message: \"cb parameter is not valid\"\n }), cleanOption = objectHelper.pick(options, [\"connection\", \"verificationCode\", \"phoneNumber\", \"email\", \"auth0Client\", \"clientID\"]), cleanOption = objectHelper.toSnakeCase(cleanOption, [\"auth0Client\"]), url = urlJoin(this.baseOptions.rootUrl, \"passwordless\", \"verify\"), this.request.post(url).send(cleanOption).end(wrapCallback(cb));\n}, PasswordlessAuthentication.prototype.getChallenge = function (cb) {\n if (assert.check(cb, {\n type: \"function\",\n message: \"cb parameter is not valid\"\n }), !this.baseOptions.state) return cb();\n var url = urlJoin(this.baseOptions.rootUrl, \"passwordless\", \"challenge\");\n return this.request.post(url).send({\n state: this.baseOptions.state\n }).end(wrapCallback(cb, {\n ignoreCasing: !0\n }));\n}, DBConnection.prototype.signup = function (options, cb) {\n var url, body, metadata;\n return assert.check(options, {\n type: \"object\",\n message: \"options parameter is not valid\"\n }, {\n connection: {\n type: \"string\",\n message: \"connection option is required\"\n },\n email: {\n type: \"string\",\n message: \"email option is required\"\n },\n password: {\n type: \"string\",\n message: \"password option is required\"\n }\n }), assert.check(cb, {\n type: \"function\",\n message: \"cb parameter is not valid\"\n }), url = urlJoin(this.baseOptions.rootUrl, \"dbconnections\", \"signup\"), metadata = (body = objectHelper.merge(this.baseOptions, [\"clientID\", \"state\"]).with(options)).user_metadata || body.userMetadata, body = objectHelper.blacklist(body, [\"scope\", \"userMetadata\", \"user_metadata\"]), body = objectHelper.toSnakeCase(body, [\"auth0Client\"]), metadata && (body.user_metadata = metadata), this.request.post(url).send(body).end(wrapCallback(cb));\n}, DBConnection.prototype.changePassword = function (options, cb) {\n var url, body;\n return assert.check(options, {\n type: \"object\",\n message: \"options parameter is not valid\"\n }, {\n connection: {\n type: \"string\",\n message: \"connection option is required\"\n },\n email: {\n type: \"string\",\n message: \"email option is required\"\n }\n }), assert.check(cb, {\n type: \"function\",\n message: \"cb parameter is not valid\"\n }), url = urlJoin(this.baseOptions.rootUrl, \"dbconnections\", \"change_password\"), body = objectHelper.merge(this.baseOptions, [\"clientID\", \"state\"]).with(options, [\"email\", \"connection\", \"captcha\"]), body = objectHelper.toSnakeCase(body, [\"auth0Client\"]), this.request.post(url).send(body).end(wrapCallback(cb));\n}, DBConnection.prototype.getPasswordResetChallenge = function (cb) {\n if (assert.check(cb, {\n type: \"function\",\n message: \"cb parameter is not valid\"\n }), !this.baseOptions.state) return cb();\n var url = urlJoin(this.baseOptions.rootUrl, \"dbconnections\", \"change_password\", \"challenge\");\n return this.request.post(url).send({\n state: this.baseOptions.state\n }).end(wrapCallback(cb, {\n ignoreCasing: !0\n }));\n}, DBConnection.prototype.getSignupChallenge = function (cb) {\n if (assert.check(cb, {\n type: \"function\",\n message: \"cb parameter is not valid\"\n }), !this.baseOptions.state) return cb();\n var url = urlJoin(this.baseOptions.rootUrl, \"dbconnections\", \"signup\", \"challenge\");\n return this.request.post(url).send({\n state: this.baseOptions.state\n }).end(wrapCallback(cb, {\n ignoreCasing: !0\n }));\n}, Authentication.prototype.buildAuthorizeUrl = function (options) {\n var params, qString;\n return assert.check(options, {\n type: \"object\",\n message: \"options parameter is not valid\"\n }), params = objectHelper.merge(this.baseOptions, [\"clientID\", \"responseType\", \"responseMode\", \"redirectUri\", \"scope\", \"audience\"]).with(options), assert.check(params, {\n type: \"object\",\n message: \"options parameter is not valid\"\n }, {\n clientID: {\n type: \"string\",\n message: \"clientID option is required\"\n },\n redirectUri: {\n optional: !0,\n type: \"string\",\n message: \"redirectUri option is required\"\n },\n responseType: {\n type: \"string\",\n message: \"responseType option is required\"\n },\n nonce: {\n type: \"string\",\n message: \"nonce option is required\",\n condition: function (o) {\n return -1 === o.responseType.indexOf(\"code\") && -1 !== o.responseType.indexOf(\"id_token\");\n }\n },\n scope: {\n optional: !0,\n type: \"string\",\n message: \"scope option is required\"\n },\n audience: {\n optional: !0,\n type: \"string\",\n message: \"audience option is required\"\n }\n }), this.baseOptions._sendTelemetry && (params.auth0Client = this.request.getTelemetryData()), params.connection_scope && assert.isArray(params.connection_scope) && (params.connection_scope = params.connection_scope.join(\",\")), params = objectHelper.blacklist(params, [\"username\", \"popupOptions\", \"domain\", \"tenant\", \"timeout\", \"appState\"]), params = objectHelper.toSnakeCase(params, [\"auth0Client\"]), params = parametersWhitelist.oauthAuthorizeParams(this.warn, params), qString = lib.stringify(params), urlJoin(this.baseOptions.rootUrl, \"authorize\", \"?\" + qString);\n}, Authentication.prototype.buildLogoutUrl = function (options) {\n var params, qString;\n return assert.check(options, {\n optional: !0,\n type: \"object\",\n message: \"options parameter is not valid\"\n }), params = objectHelper.merge(this.baseOptions, [\"clientID\"]).with(options || {}), this.baseOptions._sendTelemetry && (params.auth0Client = this.request.getTelemetryData()), params = objectHelper.toSnakeCase(params, [\"auth0Client\", \"returnTo\"]), qString = lib.stringify(objectHelper.blacklist(params, [\"federated\"])), options && void 0 !== options.federated && !1 !== options.federated && \"false\" !== options.federated && (qString += \"&federated\"), urlJoin(this.baseOptions.rootUrl, \"v2\", \"logout\", \"?\" + qString);\n}, Authentication.prototype.loginWithDefaultDirectory = function (options, cb) {\n return assert.check(options, {\n type: \"object\",\n message: \"options parameter is not valid\"\n }, {\n username: {\n type: \"string\",\n message: \"username option is required\"\n },\n password: {\n type: \"string\",\n message: \"password option is required\"\n },\n scope: {\n optional: !0,\n type: \"string\",\n message: \"scope option is required\"\n },\n audience: {\n optional: !0,\n type: \"string\",\n message: \"audience option is required\"\n }\n }), options.grantType = \"password\", this.oauthToken(options, cb);\n}, Authentication.prototype.login = function (options, cb) {\n return assert.check(options, {\n type: \"object\",\n message: \"options parameter is not valid\"\n }, {\n username: {\n type: \"string\",\n message: \"username option is required\"\n },\n password: {\n type: \"string\",\n message: \"password option is required\"\n },\n realm: {\n type: \"string\",\n message: \"realm option is required\"\n },\n scope: {\n optional: !0,\n type: \"string\",\n message: \"scope option is required\"\n },\n audience: {\n optional: !0,\n type: \"string\",\n message: \"audience option is required\"\n }\n }), options.grantType = \"http://auth0.com/oauth/grant-type/password-realm\", this.oauthToken(options, cb);\n}, Authentication.prototype.oauthToken = function (options, cb) {\n var url, body;\n return assert.check(options, {\n type: \"object\",\n message: \"options parameter is not valid\"\n }), assert.check(cb, {\n type: \"function\",\n message: \"cb parameter is not valid\"\n }), url = urlJoin(this.baseOptions.rootUrl, \"oauth\", \"token\"), body = objectHelper.merge(this.baseOptions, [\"clientID\", \"scope\", \"audience\"]).with(options), assert.check(body, {\n type: \"object\",\n message: \"options parameter is not valid\"\n }, {\n clientID: {\n type: \"string\",\n message: \"clientID option is required\"\n },\n grantType: {\n type: \"string\",\n message: \"grantType option is required\"\n },\n scope: {\n optional: !0,\n type: \"string\",\n message: \"scope option is required\"\n },\n audience: {\n optional: !0,\n type: \"string\",\n message: \"audience option is required\"\n }\n }), body = objectHelper.toSnakeCase(body, [\"auth0Client\"]), body = parametersWhitelist.oauthTokenParams(this.warn, body), this.request.post(url).send(body).end(wrapCallback(cb));\n}, Authentication.prototype.loginWithResourceOwner = function (options, cb) {\n var url, body;\n return assert.check(options, {\n type: \"object\",\n message: \"options parameter is not valid\"\n }, {\n username: {\n type: \"string\",\n message: \"username option is required\"\n },\n password: {\n type: \"string\",\n message: \"password option is required\"\n },\n connection: {\n type: \"string\",\n message: \"connection option is required\"\n },\n scope: {\n optional: !0,\n type: \"string\",\n message: \"scope option is required\"\n }\n }), assert.check(cb, {\n type: \"function\",\n message: \"cb parameter is not valid\"\n }), url = urlJoin(this.baseOptions.rootUrl, \"oauth\", \"ro\"), body = objectHelper.merge(this.baseOptions, [\"clientID\", \"scope\"]).with(options, [\"username\", \"password\", \"scope\", \"connection\", \"device\"]), (body = objectHelper.toSnakeCase(body, [\"auth0Client\"])).grant_type = body.grant_type || \"password\", this.request.post(url).send(body).end(wrapCallback(cb));\n}, Authentication.prototype.getSSOData = function (withActiveDirectories, cb) {\n if (this.auth0 || (this.auth0 = new WebAuth(this.baseOptions)), windowHelper.getWindow().location.host === this.baseOptions.domain) return this.auth0._universalLogin.getSSOData(withActiveDirectories, cb);\n \"function\" == typeof withActiveDirectories && (cb = withActiveDirectories), assert.check(cb, {\n type: \"function\",\n message: \"cb parameter is not valid\"\n });\n var clientId = this.baseOptions.clientID,\n ssodataInformation = this.ssodataStorage.get() || {};\n this.auth0.checkSession({\n responseType: \"token id_token\",\n scope: \"openid profile email\",\n connection: ssodataInformation.lastUsedConnection,\n timeout: 5e3\n }, function (err, result) {\n return err ? \"login_required\" === err.error ? cb(null, {\n sso: !1\n }) : (\"consent_required\" === err.error && (err.error_description = \"Consent required. When using `getSSOData`, the user has to be authenticated with the following scope: `openid profile email`.\"), cb(err, {\n sso: !1\n })) : ssodataInformation.lastUsedSub && ssodataInformation.lastUsedSub !== result.idTokenPayload.sub ? cb(err, {\n sso: !1\n }) : cb(null, {\n lastUsedConnection: {\n name: ssodataInformation.lastUsedConnection\n },\n lastUsedUserID: result.idTokenPayload.sub,\n lastUsedUsername: result.idTokenPayload.email || result.idTokenPayload.name,\n lastUsedClientID: clientId,\n sessionClients: [clientId],\n sso: !0\n });\n });\n}, Authentication.prototype.userInfo = function (accessToken, cb) {\n var url;\n return assert.check(accessToken, {\n type: \"string\",\n message: \"accessToken parameter is not valid\"\n }), assert.check(cb, {\n type: \"function\",\n message: \"cb parameter is not valid\"\n }), url = urlJoin(this.baseOptions.rootUrl, \"userinfo\"), this.request.get(url).set(\"Authorization\", \"Bearer \" + accessToken).end(wrapCallback(cb, {\n ignoreCasing: !0\n }));\n}, Authentication.prototype.getChallenge = function (cb) {\n if (assert.check(cb, {\n type: \"function\",\n message: \"cb parameter is not valid\"\n }), !this.baseOptions.state) return cb();\n var url = urlJoin(this.baseOptions.rootUrl, \"usernamepassword\", \"challenge\");\n return this.request.post(url).send({\n state: this.baseOptions.state\n }).end(wrapCallback(cb, {\n ignoreCasing: !0\n }));\n}, Authentication.prototype.delegation = function (options, cb) {\n var url, body;\n return assert.check(options, {\n type: \"object\",\n message: \"options parameter is not valid\"\n }, {\n grant_type: {\n type: \"string\",\n message: \"grant_type option is required\"\n }\n }), assert.check(cb, {\n type: \"function\",\n message: \"cb parameter is not valid\"\n }), url = urlJoin(this.baseOptions.rootUrl, \"delegation\"), body = objectHelper.merge(this.baseOptions, [\"clientID\"]).with(options), body = objectHelper.toSnakeCase(body, [\"auth0Client\"]), this.request.post(url).send(body).end(wrapCallback(cb));\n}, Authentication.prototype.getUserCountry = function (cb) {\n var url;\n return assert.check(cb, {\n type: \"function\",\n message: \"cb parameter is not valid\"\n }), url = urlJoin(this.baseOptions.rootUrl, \"user\", \"geoloc\", \"country\"), this.request.get(url).end(wrapCallback(cb));\n}, Management.prototype.getUser = function (userId, cb) {\n var url;\n return assert.check(userId, {\n type: \"string\",\n message: \"userId parameter is not valid\"\n }), assert.check(cb, {\n type: \"function\",\n message: \"cb parameter is not valid\"\n }), url = urlJoin(this.baseOptions.rootUrl, \"users\", userId), this.request.get(url).end(wrapCallback(cb, {\n ignoreCasing: !0\n }));\n}, Management.prototype.patchUserMetadata = function (userId, userMetadata, cb) {\n var url;\n return assert.check(userId, {\n type: \"string\",\n message: \"userId parameter is not valid\"\n }), assert.check(userMetadata, {\n type: \"object\",\n message: \"userMetadata parameter is not valid\"\n }), assert.check(cb, {\n type: \"function\",\n message: \"cb parameter is not valid\"\n }), url = urlJoin(this.baseOptions.rootUrl, \"users\", userId), this.request.patch(url).send({\n user_metadata: userMetadata\n }).end(wrapCallback(cb, {\n ignoreCasing: !0\n }));\n}, Management.prototype.patchUserAttributes = function (userId, user, cb) {\n var url;\n return assert.check(userId, {\n type: \"string\",\n message: \"userId parameter is not valid\"\n }), assert.check(user, {\n type: \"object\",\n message: \"user parameter is not valid\"\n }), assert.check(cb, {\n type: \"function\",\n message: \"cb parameter is not valid\"\n }), url = urlJoin(this.baseOptions.rootUrl, \"users\", userId), this.request.patch(url).send(user).end(wrapCallback(cb, {\n ignoreCasing: !0\n }));\n}, Management.prototype.linkUser = function (userId, secondaryUserToken, cb) {\n var url;\n return assert.check(userId, {\n type: \"string\",\n message: \"userId parameter is not valid\"\n }), assert.check(secondaryUserToken, {\n type: \"string\",\n message: \"secondaryUserToken parameter is not valid\"\n }), assert.check(cb, {\n type: \"function\",\n message: \"cb parameter is not valid\"\n }), url = urlJoin(this.baseOptions.rootUrl, \"users\", userId, \"identities\"), this.request.post(url).send({\n link_with: secondaryUserToken\n }).end(wrapCallback(cb, {\n ignoreCasing: !0\n }));\n};\nvar index = {\n Authentication: Authentication,\n Management: Management,\n WebAuth: WebAuth,\n version: version\n};\nexport default index;\nexport { Authentication, Management, WebAuth, version };"],"names":["commonjsGlobal","globalThis","window","g","self","createCommonjsModule","fn","module","exports","urlJoin","context","definition","strArray","resultArray","length","TypeError","match","first","shift","replace","i","component","push","str","join","parts","split","normalize","arguments","slice","call","urljoin","esErrors","Error","_eval","EvalError","range","RangeError","ref","ReferenceError","syntax","SyntaxError","type","uri","URIError","origSymbol","Symbol","test","foo","$Object","Object","toStr","prototype","toString","max","Math","concatty","a","b","arr","j","functionBind","Function","bind","that","target","this","apply","bound","args","arrLike","offset","slicy","boundLength","boundArgs","joiner","joiny","result","Empty","$hasOwn","hasOwnProperty","hasown","$Function","getEvalledConstructor","expressionSyntax","e","$gOPD","getOwnPropertyDescriptor","throwTypeError","ThrowTypeError","calleeThrows","get","gOPDthrows","hasSymbols$1","getOwnPropertySymbols","iterator","obj","sym","symObj","keys","getOwnPropertyNames","syms","propertyIsEnumerable","descriptor","value","enumerable","hasProto$1","__proto__","getProto","getPrototypeOf","x","needsEval","TypedArray","Uint8Array","INTRINSICS","AggregateError","Array","ArrayBuffer","Atomics","BigInt","BigInt64Array","BigUint64Array","Boolean","DataView","Date","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","eval","Float32Array","Float64Array","FinalizationRegistry","Int8Array","Int16Array","Int32Array","isFinite","isNaN","JSON","Map","Number","parseFloat","parseInt","Promise","Proxy","Reflect","RegExp","Set","SharedArrayBuffer","String","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","WeakRef","WeakSet","error","errorProto","LEGACY_ALIASES","$concat","concat","$spliceApply","splice","$replace","$strSlice","$exec","exec","rePropName","reEscapeChar","getIntrinsic","name","allowMissing","string","last","number","quote","subString","stringToPath","intrinsicBaseName","intrinsic","alias","intrinsicName","doEval","gen","getBaseIntrinsic","intrinsicRealName","skipFurtherCaching","isOwn","part","desc","$defineProperty","esDefineProperty","$gOPD$1","gopd","defineDataProperty","property","nonEnumerable","nonWritable","nonConfigurable","loose","configurable","writable","hasPropertyDescriptors","hasArrayLengthDefineBug","hasDescriptors","$floor","callBind","$apply","$call","$reflectApply","$max","originalFunction","functionLengthIsConfigurable","functionLengthIsWritable","setFunctionLength","applyBind","$indexOf","callBound","semver","n","default","freeze","hasMap","mapSizeDescriptor","mapSize","mapForEach","forEach","hasSet","setSizeDescriptor","setSize","setForEach","weakMapHas","has","weakSetHas","weakRefDeref","deref","booleanValueOf","valueOf","objectToString","functionToString","$match","$slice","$replace$1","$toUpperCase","toUpperCase","$toLowerCase","toLowerCase","$test","$concat$1","$join","$arrSlice","$floor$1","floor","bigIntValueOf","gOPS","symToString","hasShammedSymbols","toStringTag","isEnumerable","gPO","O","addNumericSeparator","num","sepRegex","int","intStr","dec","inspectCustom","custom","inspectSymbol","isSymbol","objectInspect","inspect_","options","depth","seen","opts","quoteStyle","maxStringLength","customInspect","indent","numericSeparator","inspectString","remaining","trailer","wrapQuotes","lowbyte","bigIntStr","maxDepth","isArray","baseIndent","base","prev","indexOf","inspect","from","noIndent","newOpts","isRegExp","f","m","arrObjKeys","symString","markBoxed","HTMLElement","nodeName","getAttribute","s","attrs","attributes","childNodes","xs","indentedJoin","toStr$1","cause","mapParts","key","collectionOf","setParts","weakCollectionOf","ys","isPlainObject","constructor","protoTag","stringTag","tag","defaultStyle","quoteChar","hasOwn","l","c","charCodeAt","size","entries","lineJoiner","isArr","symMap","k","$WeakMap","$Map","$weakMapGet","$weakMapSet","$weakMapHas","$mapGet","$mapSet","$mapHas","listGetNode","list","curr","next","sideChannel","$wm","$m","$o","channel","assert","objects","node","set","percentTwenties","Format_RFC3986","formats","formatters","RFC1738","RFC3986","has$1","isArray$1","hexTable","array","arrayToObject","source","plainObjects","create","utils","assign","reduce","acc","combine","compact","queue","o","prop","refs","item","val","pop","compacted","decode","decoder","charset","strWithoutPlus","unescape","encode","defaultEncoder","kind","format","escape","$0","out","segment","charAt","isBuffer","maybeMap","mapped","merge","allowPrototypes","mergeTarget","targetItem","has$2","arrayPrefixGenerators","brackets","prefix","comma","indices","repeat","isArray$2","pushToArray","valueOrArray","toISO","toISOString","defaultFormat","defaults","addQueryPrefix","allowDots","allowEmptyArrays","arrayFormat","charsetSentinel","delimiter","encodeDotInKeys","encoder","encodeValuesOnly","formatter","serializeDate","date","skipNulls","strictNullHandling","sentinel","stringify","object","generateArrayPrefix","commaRoundTrip","filter","sort","sideChannel$1","tmpSc","step","findFlag","pos","v","objKeys","values","encodedPrefix","adjustedPrefix","encodedKey","keyPrefix","valueSideChannel","has$3","isArray$3","defaults$1","allowSparse","arrayLimit","decodeDotInKeys","duplicates","ignoreQueryPrefix","interpretNumericEntities","parameterLimit","parseArrays","numberStr","fromCharCode","parseArrayValue","parseKeys","givenKey","valuesParsed","child","parent","index","chain","leaf","root","cleanRoot","decodedRoot","lib","parse","tempObj","cleanStr","limit","skipIndex","bracketEqualsPos","encodedVal","existing","newObj","joined","componentEmitter","Emitter","on","addEventListener","event","_callbacks","once","off","removeListener","removeAllListeners","removeEventListener","cb","callbacks","emit","len","listeners","hasListeners","fastSafeStringify","stringify$1","stable","deterministicStringify","stableStringify","replacerStack","defaultOptions","depthLimit","MAX_SAFE_INTEGER","edgesLimit","replacer","spacer","res","decirc","edgeIndex","stack","setReplace","replaceGetterValues","_","defineProperty","propertyDescriptor","compareFunction","tmp","deterministicDecirc","toJSON","utils$1","_typeof","_createForOfIteratorHelper","allowArrayLike","it","minLen","_arrayLikeToArray","F","done","_e","err","normalCompletion","didErr","_e2","return","arr2","string_","params","_step","_iterator","_value","parseLinks","_step2","_iterator2","url","cleanHeader","header","changesOrigin","host","authorization","cookie","isObject","mixin","hasOwn$1","requestBase","RequestBase","clearTimeout","_timer","_responseTimeoutTimer","_uploadTimeoutTimer","_parser","responseType","_responseType","serialize","_serializer","timeout","_timeout","_responseTimeout","_uploadTimeout","option","deadline","response","upload","console","warn","retry","count","_maxRetries","_retries","_retryCallback","ERROR_CODES","STATUS_CODES","_shouldRetry","override","status","code","crossDomain","_retry","req","request","_aborted","timedout","timedoutError","_end","then","resolve","reject","_this","_fullfilledPromise","_endCalled","method","end","catch","callback","use","ok","_okCallback","_isResponseOK","field","_header","getHeader","unset","_data","_getFormData","append","abort","xhr","gte","process","version","lt","destroyed","_auth","user","pass","base64Encoder","username","password","withCredentials","_withCredentials","redirects","_maxRedirects","maxResponseSize","_maxResponseSize","data","headers","send","isObject_","_formData","_isHost","trim","sortQuery","_sort","_finalizeQueryString","query","_query","includes","queryArray","_appendQueryString","_timeoutError","reason","errno","_setTimeouts","setTimeout","responseBase","ResponseBase","_toConsumableArray","iter","_unsupportedIterableToArray","Agent","_defaults","_setHeaderProperties","ct","parameters","links","link","_unused","_setStatusProperties","trunc","statusCode","statusType","info","redirect","clientError","serverError","toError","created","accepted","noContent","badRequest","unauthorized","notAcceptable","forbidden","notFound","unprocessableEntity","_loop","_arr","_i","_len","_key","_setDefaults","def","agentBase","client","noop","Request","getXHR","XMLHttpRequest","location","protocol","ActiveXObject","_unused2","_unused3","_unused4","pairs","pushEncodedKeyValuePair","subkey","parseString","pair","length_","isJSON","mime","Response","request_","text","responseText","statusText","line","lines","fields","getAllResponseHeaders","getResponseHeader","body","_parseBody","new_error","original","rawResponse","serializeObject","types","html","json","xml","urlencoded","form","message","accept","auth","btoa","attach","file","FormData","_callback","retries","crossDomainError","agent","ca","buffer","write","pipe","_setUploadTimeout","readyState","_unused5","handleProgress","direction","total","percent","loaded","_unused6","open","contentType","_serialize","setRequestHeader","del","delete","head","patch","post","put","lookup","revLookup","getLens","b64","validLen","encodeChunk","uint8","start","output","base64Js","extraBytes","len2","base64Url","raw","attribute","attr","variable","check","config","optional","condition","value_message","supportsIsArray","objectAssignPolyfill","to","nextSource","keysArray","nextIndex","nextKey","objectAssign","pick","extend","objectValues","unshift","getLocationFromUrl","href","hostname","port","pathname","search","hash","trimmed","objectHelper","toSnakeCase","exceptions","p","newKey","wasPrevNumber","wasPrevUppercase","toCamelCase","keepOriginal","blacklist","blacklistedKeys","with","object2","keys2","getKeysNotIn","allowedKeys","notAllowed","getOriginFromUrl","parsed","origin","trimUserDetails","updatePropertyOn","path","RequestWrapper","RequestObj","RequestBuilder","_sendTelemetry","_telemetryInfo","_timesToRetryFailedRequests","_universalLoginPage","universalLoginPage","getWindow","getMethod","getBody","getUrl","getHeaders","setCommonConfiguration","ongoingRequest","noHeaders","xRequestLanguage","getTelemetryData","telemetryName","clientInfo","env","jsonClientInfo","windowHelper","getDocument","document","getOrigin","DummyStorage","getItem","removeItem","setItem","js_cookie","factory","init","converter","api","expires","toUTCString","stringifiedAttributes","attributeName","jar","cookies","read","getJSON","remove","withConverter","buildCompatCookieKey","CookieStorage","_options","Warn","disableWarnings","StorageHandler","storage","__tryLocalStorageFirst","localStorage","warning","Storage","handler","SSODataStorage","buildResponse","description","errorDescription","cookieDomain","domain","secure","sameSite","legacySameSiteCookie","legacyOptions","failover","connection","sub","ssodata","lastUsedConnection","lastUsedSub","invalidToken","wrapCallback","ignoreCasing","errObj","error_code","error_description","details","forceLegacyError","error_codes","error_details","errorDetails","codes","policy","keepOriginalCasing","tokenParams","authorizeParams","parametersWhitelist","t","r","d","w","h","u","MutationObserver","WebKitMutationObserver","importScripts","MessageChannel","y","T","S","N","_state","_result","C","E","nextTick","createTextNode","observe","characterData","port1","onmessage","port2","postMessage","require","runOnLoop","runOnContext","random","substring","A","I","M","_onerror","R","_subscribers","P","_instanceConstructor","promise","_remaining","_enumerate","_eachEntry","_settledAt","V","_willSettleAt","finally","all","race","_setScheduler","_setAsap","_asap","polyfill","cast","i$1","crypto","msCrypto","getRandomValues","randomBytes","readInt32LE","Base","mixIn","$super","clone","WordArray","words","sigBytes","clamp","ceil","enc","Hex","substr","Latin1","Utf8","BufferedBlockAlgorithm","reset","_nDataBytes","_append","_process","blockSize","_minBufferSize","min","_doProcessBlock","Hasher","cfg","_doReset","update","finalize","_doFinalize","_createHelper","_createHmacHelper","HMAC","algo","sqrt","pow","SHA256","_hash","HmacSHA256","Base64","_map","_reverseMap","fromNumber","fromString","navigator","appName","am","DB","DM","DV","FV","F1","F2","fromInt","mp","invDigit","mpl","mph","um","mt2","r2","q3","ONE","dlShiftTo","mu","divide","convert","compareTo","mod","revert","divRemTo","mulTo","multiplyTo","sqrTo","squareTo","abs","ZERO","subTo","copyTo","drShiftTo","fromRadix","lShiftTo","rShiftTo","isEven","exp","negate","toRadix","bitLength","modPowInt","multiplyUpperTo","multiplyLowerTo","dAddOffset","D","B","getTime","chunkSize","LN2","log","signum","intValue","dMultiply","testBit","bitwiseTo","shiftLeft","isProbablePrime","nextBytes","changeBit","addTo","modInt","millerRabin","subtract","getLowestSetBit","shiftRight","modPow","byteValue","shortValue","toByteArray","equals","and","or","xor","andNot","not","bitCount","setBit","clearBit","flipBit","add","multiply","remainder","divideAndRemainder","modInverse","gcd","square","Barrett","appVersion","BigInteger","SecureRandom","sha1","sha224","sha256","sha384","sha512","md2","md5","ripemd160","verify","alg","map","responseURL","blob","Blob","onload","onerror","credentials","jwksCache","expectedAlg","issuer","audience","leeway","jwksURI","maxAge","__clock","PluginHandler","webAuth","plugins","pluginName","setWebAuth","encoded","payload","signature","kid","aud","iss","nbf","iat","azp","auth_time","nonce","getRsaVerifier","setUTCSeconds","fetch","modulus","validateAccessToken","extensibilityPoint","supports","bytes","cryptoObj","TransactionManager","transaction","namespace","keyLength","stateExpiration","IframeHandler","timeoutCallback","eventListenerType","iframe","timeoutHandle","_destroyTimeout","transientMessageEventListener","proxyEventListener","eventValidator","isValid","WebMessageHandler","baseOptions","CrossOriginAuthentication","webMessageHandler","createKey","coId","Redirect","auth0","crossOriginAuthentication","_disableDeprecationWarnings","realm","responseTypeIncludesIdToken","generateTransaction","appState","state","organization","generateNonce","transactionPayload","getStoredTransaction","transactionData","clearTransaction","_window","createElement","style","display","eventListener","eventSourceObject","appendChild","src","timeoutHandler","eventData","sourceObject","destroy","parentNode","removeChild","run","responseMode","prompt","currentOrigin","redirectUriOrigin","redirectUri","authorizeUrl","buildAuthorizeUrl","parsedHash","validateAuthenticationResponse","transactionManager","login","rootUrl","email","authenticateBody","client_id","clientID","otp","credentialType","credential_type","errorObject","doAuth","popupMode","popup","authorizeOptions","loginTicket","login_ticket","co_id","co_verifier","authorize","onRedirecting","targetOrigin","theWindow","evt","id","verifier","loginWithCredentials","signupAndLogin","dbConnection","signup","winchan","WinChan","addListener","attachEvent","detachEvent","extractOrigin","isIE","rv","ua","userAgent","$1","relay_url","window_name","window_features","messageTarget","setAttribute","contentWindow","closeInterval","setInterval","closed","cleanup","clearInterval","onMessage","close","securityViolation","originalPopup","focus","onOpen","msgTarget","frames","opener","doPost","msg","onDie","o_O","onUnload","ohWell","detach","winopts","arg","urlHelper","PopupHandler","_current_popup","Popup","popupOrigin","SilentAuthenticationHandler","authenticationUrl","postMessageDataType","postMessageOrigin","UsernamePassword","HostedPages","calculatePosition","width","height","screenX","screenLeft","screenY","screenTop","outerWidth","clientWidth","outerHeight","clientHeight","left","top","preload","popupPosition","popupOptions","windowFeatures","kill","load","relayUrl","winchanOptions","buildPopupHandler","pluginHandler","getPopupHandler","popupHandler","originUrl","parseHash","popOpts","owp","processParams","scope","passwordlessVerify","passwordless","phoneNumber","verificationCode","loginWithResourceOwner","usePostMessage","getCallbackHandler","getEventValidator","callbackValue","formHtml","div","_document","innerHTML","children","submit","usernamePassword","getSSOData","withActiveDirectories","ldaps","captchaSolved","captchaReloaded","Flow","DEFAULT","SIGNUP","PASSWORDLESS","PASSWORD_RESET","defaults$2","lang","templates","challenge","image","recaptcha_v2","recaptcha_enterprise","hcaptcha","friendly_captcha","arkose","auth0_v2","globalForCaptchaProvider","provider","grecaptcha","enterprise","friendlyChallenge","turnstile","loadScript","script","startsWith","dataset","removeScript","querySelectorAll","captcha","auth0Client","flow","element","loadDone","challengeCallback","required","querySelector","preventDefault","captchaClass","widgetId","hasAttribute","setValue","auth0FCInstance","captchaDiv","callbackName","async","defer","scriptSrc","clientSubdomain","siteKey","retryCount","injectCaptchaScript","global","arkoseLoaded","setConfig","onReady","triggerCaptcha","solvedCallback","onCompleted","token","onError","WidgetInstance","sitekey","language","doneCallback","solution","errorCallback","renderParams","theme","render","getChallenge","getPasswordResetChallenge","getSignupChallenge","reload","reloadDone","getValue","captchaInput","defaultClock","WebAuth","overrides","__tenant","__token_issuer","__jwks_uri","tenant","token_issuer","Authentication","_universalLogin","ssodataStorage","PasswordlessAuthentication","DBConnection","Management","Authorization","parsedQs","hashStr","responseTypes","__enableIdPInitiatedLogin","__enableImpersonation","transactionState","transactionStateMatchesState","transactionNonce","transactionOrganization","qsParams","accessToken","access_token","idToken","id_token","idTokenPayload","refreshToken","refresh_token","expiresIn","expires_in","tokenType","token_type","validateToken","validationError","org_id","org_name","at_hash","decodedToken","userInfo","errUserInfo","profile","renewAuth","checkSession","changePassword","passwordlessStart","authParams","signupAndAuthorize","passwordlessLogin","crossOriginOptions","crossOriginAuthenticationCallback","crossOriginVerification","logout","buildLogoutUrl","buildVerifyUrl","renderCaptcha","renderSignupCaptcha","renderPasswordlessCaptcha","renderPasswordResetCaptcha","qString","redirect_uri","response_type","postOptions","cleanOption","metadata","user_metadata","userMetadata","connection_scope","federated","loginWithDefaultDirectory","grantType","oauthToken","grant_type","clientId","ssodataInformation","sso","lastUsedUserID","lastUsedUsername","lastUsedClientID","sessionClients","delegation","getUserCountry","getUser","userId","patchUserMetadata","patchUserAttributes","linkUser","secondaryUserToken","link_with"],"sourceRoot":""}