{"version":3,"file":"js/chunk-vendors.a4f490c3.js","mappings":"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","sources":["webpack://frontpage/./node_modules/js-sha256/src/sha256.js","webpack://frontpage/./node_modules/core-js/internals/a-callable.js","webpack://frontpage/./node_modules/core-js/internals/a-possible-prototype.js","webpack://frontpage/./node_modules/core-js/internals/an-instance.js","webpack://frontpage/./node_modules/core-js/internals/an-object.js","webpack://frontpage/./node_modules/core-js/internals/array-buffer-basic-detection.js","webpack://frontpage/./node_modules/core-js/internals/array-buffer-byte-length.js","webpack://frontpage/./node_modules/core-js/internals/array-buffer-is-detached.js","webpack://frontpage/./node_modules/core-js/internals/array-buffer-transfer.js","webpack://frontpage/./node_modules/core-js/internals/array-buffer-view-core.js","webpack://frontpage/./node_modules/core-js/internals/array-from-constructor-and-list.js","webpack://frontpage/./node_modules/core-js/internals/array-includes.js","webpack://frontpage/./node_modules/core-js/internals/array-set-length.js","webpack://frontpage/./node_modules/core-js/internals/array-to-reversed.js","webpack://frontpage/./node_modules/core-js/internals/array-with.js","webpack://frontpage/./node_modules/core-js/internals/classof-raw.js","webpack://frontpage/./node_modules/core-js/internals/classof.js","webpack://frontpage/./node_modules/core-js/internals/copy-constructor-properties.js","webpack://frontpage/./node_modules/core-js/internals/correct-prototype-getter.js","webpack://frontpage/./node_modules/core-js/internals/create-non-enumerable-property.js","webpack://frontpage/./node_modules/core-js/internals/create-property-descriptor.js","webpack://frontpage/./node_modules/core-js/internals/define-built-in-accessor.js","webpack://frontpage/./node_modules/core-js/internals/define-built-in.js","webpack://frontpage/./node_modules/core-js/internals/define-global-property.js","webpack://frontpage/./node_modules/core-js/internals/descriptors.js","webpack://frontpage/./node_modules/core-js/internals/detach-transferable.js","webpack://frontpage/./node_modules/core-js/internals/document-create-element.js","webpack://frontpage/./node_modules/core-js/internals/does-not-exceed-safe-integer.js","webpack://frontpage/./node_modules/core-js/internals/dom-exception-constants.js","webpack://frontpage/./node_modules/core-js/internals/engine-is-browser.js","webpack://frontpage/./node_modules/core-js/internals/engine-is-deno.js","webpack://frontpage/./node_modules/core-js/internals/engine-is-node.js","webpack://frontpage/./node_modules/core-js/internals/engine-user-agent.js","webpack://frontpage/./node_modules/core-js/internals/engine-v8-version.js","webpack://frontpage/./node_modules/core-js/internals/enum-bug-keys.js","webpack://frontpage/./node_modules/core-js/internals/error-stack-clear.js","webpack://frontpage/./node_modules/core-js/internals/export.js","webpack://frontpage/./node_modules/core-js/internals/fails.js","webpack://frontpage/./node_modules/core-js/internals/function-bind-native.js","webpack://frontpage/./node_modules/core-js/internals/function-call.js","webpack://frontpage/./node_modules/core-js/internals/function-name.js","webpack://frontpage/./node_modules/core-js/internals/function-uncurry-this-accessor.js","webpack://frontpage/./node_modules/core-js/internals/function-uncurry-this.js","webpack://frontpage/./node_modules/core-js/internals/get-built-in.js","webpack://frontpage/./node_modules/core-js/internals/get-method.js","webpack://frontpage/./node_modules/core-js/internals/global.js","webpack://frontpage/./node_modules/core-js/internals/has-own-property.js","webpack://frontpage/./node_modules/core-js/internals/hidden-keys.js","webpack://frontpage/./node_modules/core-js/internals/ie8-dom-define.js","webpack://frontpage/./node_modules/core-js/internals/indexed-object.js","webpack://frontpage/./node_modules/core-js/internals/inherit-if-required.js","webpack://frontpage/./node_modules/core-js/internals/inspect-source.js","webpack://frontpage/./node_modules/core-js/internals/internal-state.js","webpack://frontpage/./node_modules/core-js/internals/is-array.js","webpack://frontpage/./node_modules/core-js/internals/is-big-int-array.js","webpack://frontpage/./node_modules/core-js/internals/is-callable.js","webpack://frontpage/./node_modules/core-js/internals/is-forced.js","webpack://frontpage/./node_modules/core-js/internals/is-null-or-undefined.js","webpack://frontpage/./node_modules/core-js/internals/is-object.js","webpack://frontpage/./node_modules/core-js/internals/is-possible-prototype.js","webpack://frontpage/./node_modules/core-js/internals/is-pure.js","webpack://frontpage/./node_modules/core-js/internals/is-symbol.js","webpack://frontpage/./node_modules/core-js/internals/length-of-array-like.js","webpack://frontpage/./node_modules/core-js/internals/make-built-in.js","webpack://frontpage/./node_modules/core-js/internals/math-trunc.js","webpack://frontpage/./node_modules/core-js/internals/normalize-string-argument.js","webpack://frontpage/./node_modules/core-js/internals/object-define-property.js","webpack://frontpage/./node_modules/core-js/internals/object-get-own-property-descriptor.js","webpack://frontpage/./node_modules/core-js/internals/object-get-own-property-names.js","webpack://frontpage/./node_modules/core-js/internals/object-get-own-property-symbols.js","webpack://frontpage/./node_modules/core-js/internals/object-get-prototype-of.js","webpack://frontpage/./node_modules/core-js/internals/object-is-prototype-of.js","webpack://frontpage/./node_modules/core-js/internals/object-keys-internal.js","webpack://frontpage/./node_modules/core-js/internals/object-property-is-enumerable.js","webpack://frontpage/./node_modules/core-js/internals/object-set-prototype-of.js","webpack://frontpage/./node_modules/core-js/internals/ordinary-to-primitive.js","webpack://frontpage/./node_modules/core-js/internals/own-keys.js","webpack://frontpage/./node_modules/core-js/internals/require-object-coercible.js","webpack://frontpage/./node_modules/core-js/internals/shared-key.js","webpack://frontpage/./node_modules/core-js/internals/shared-store.js","webpack://frontpage/./node_modules/core-js/internals/shared.js","webpack://frontpage/./node_modules/core-js/internals/structured-clone-proper-transfer.js","webpack://frontpage/./node_modules/core-js/internals/symbol-constructor-detection.js","webpack://frontpage/./node_modules/core-js/internals/to-absolute-index.js","webpack://frontpage/./node_modules/core-js/internals/to-big-int.js","webpack://frontpage/./node_modules/core-js/internals/to-index.js","webpack://frontpage/./node_modules/core-js/internals/to-indexed-object.js","webpack://frontpage/./node_modules/core-js/internals/to-integer-or-infinity.js","webpack://frontpage/./node_modules/core-js/internals/to-length.js","webpack://frontpage/./node_modules/core-js/internals/to-object.js","webpack://frontpage/./node_modules/core-js/internals/to-primitive.js","webpack://frontpage/./node_modules/core-js/internals/to-property-key.js","webpack://frontpage/./node_modules/core-js/internals/to-string-tag-support.js","webpack://frontpage/./node_modules/core-js/internals/to-string.js","webpack://frontpage/./node_modules/core-js/internals/try-node-require.js","webpack://frontpage/./node_modules/core-js/internals/try-to-string.js","webpack://frontpage/./node_modules/core-js/internals/uid.js","webpack://frontpage/./node_modules/core-js/internals/use-symbol-as-uid.js","webpack://frontpage/./node_modules/core-js/internals/v8-prototype-define-bug.js","webpack://frontpage/./node_modules/core-js/internals/validate-arguments-length.js","webpack://frontpage/./node_modules/core-js/internals/weak-map-basic-detection.js","webpack://frontpage/./node_modules/core-js/internals/well-known-symbol.js","webpack://frontpage/./node_modules/core-js/modules/es.array-buffer.detached.js","webpack://frontpage/./node_modules/core-js/modules/es.array-buffer.transfer-to-fixed-length.js","webpack://frontpage/./node_modules/core-js/modules/es.array-buffer.transfer.js","webpack://frontpage/./node_modules/core-js/modules/es.array.push.js","webpack://frontpage/./node_modules/core-js/modules/es.typed-array.to-reversed.js","webpack://frontpage/./node_modules/core-js/modules/es.typed-array.to-sorted.js","webpack://frontpage/./node_modules/core-js/modules/es.typed-array.with.js","webpack://frontpage/./node_modules/core-js/modules/web.dom-exception.stack.js","webpack://frontpage/./node_modules/core-js/modules/web.url-search-params.delete.js","webpack://frontpage/./node_modules/core-js/modules/web.url-search-params.has.js","webpack://frontpage/./node_modules/core-js/modules/web.url-search-params.size.js","webpack://frontpage/./node_modules/jwt-decode/build/esm/index.js","webpack://frontpage/./node_modules/keycloak-js/dist/keycloak.mjs"],"sourcesContent":["/**\n * [js-sha256]{@link https://github.com/emn178/js-sha256}\n *\n * @version 0.11.0\n * @author Chen, Yi-Cyuan [emn178@gmail.com]\n * @copyright Chen, Yi-Cyuan 2014-2024\n * @license MIT\n */\n/*jslint bitwise: true */\n(function () {\n 'use strict';\n\n var ERROR = 'input is invalid type';\n var WINDOW = typeof window === 'object';\n var root = WINDOW ? window : {};\n if (root.JS_SHA256_NO_WINDOW) {\n WINDOW = false;\n }\n var WEB_WORKER = !WINDOW && typeof self === 'object';\n var NODE_JS = !root.JS_SHA256_NO_NODE_JS && typeof process === 'object' && process.versions && process.versions.node;\n if (NODE_JS) {\n root = global;\n } else if (WEB_WORKER) {\n root = self;\n }\n var COMMON_JS = !root.JS_SHA256_NO_COMMON_JS && typeof module === 'object' && module.exports;\n var AMD = typeof define === 'function' && define.amd;\n var ARRAY_BUFFER = !root.JS_SHA256_NO_ARRAY_BUFFER && typeof ArrayBuffer !== 'undefined';\n var HEX_CHARS = '0123456789abcdef'.split('');\n var EXTRA = [-2147483648, 8388608, 32768, 128];\n var SHIFT = [24, 16, 8, 0];\n var K = [\n 0x428a2f98, 0x71374491, 0xb5c0fbcf, 0xe9b5dba5, 0x3956c25b, 0x59f111f1, 0x923f82a4, 0xab1c5ed5,\n 0xd807aa98, 0x12835b01, 0x243185be, 0x550c7dc3, 0x72be5d74, 0x80deb1fe, 0x9bdc06a7, 0xc19bf174,\n 0xe49b69c1, 0xefbe4786, 0x0fc19dc6, 0x240ca1cc, 0x2de92c6f, 0x4a7484aa, 0x5cb0a9dc, 0x76f988da,\n 0x983e5152, 0xa831c66d, 0xb00327c8, 0xbf597fc7, 0xc6e00bf3, 0xd5a79147, 0x06ca6351, 0x14292967,\n 0x27b70a85, 0x2e1b2138, 0x4d2c6dfc, 0x53380d13, 0x650a7354, 0x766a0abb, 0x81c2c92e, 0x92722c85,\n 0xa2bfe8a1, 0xa81a664b, 0xc24b8b70, 0xc76c51a3, 0xd192e819, 0xd6990624, 0xf40e3585, 0x106aa070,\n 0x19a4c116, 0x1e376c08, 0x2748774c, 0x34b0bcb5, 0x391c0cb3, 0x4ed8aa4a, 0x5b9cca4f, 0x682e6ff3,\n 0x748f82ee, 0x78a5636f, 0x84c87814, 0x8cc70208, 0x90befffa, 0xa4506ceb, 0xbef9a3f7, 0xc67178f2\n ];\n var OUTPUT_TYPES = ['hex', 'array', 'digest', 'arrayBuffer'];\n\n var blocks = [];\n\n if (root.JS_SHA256_NO_NODE_JS || !Array.isArray) {\n Array.isArray = function (obj) {\n return Object.prototype.toString.call(obj) === '[object Array]';\n };\n }\n\n if (ARRAY_BUFFER && (root.JS_SHA256_NO_ARRAY_BUFFER_IS_VIEW || !ArrayBuffer.isView)) {\n ArrayBuffer.isView = function (obj) {\n return typeof obj === 'object' && obj.buffer && obj.buffer.constructor === ArrayBuffer;\n };\n }\n\n var createOutputMethod = function (outputType, is224) {\n return function (message) {\n return new Sha256(is224, true).update(message)[outputType]();\n };\n };\n\n var createMethod = function (is224) {\n var method = createOutputMethod('hex', is224);\n if (NODE_JS) {\n method = nodeWrap(method, is224);\n }\n method.create = function () {\n return new Sha256(is224);\n };\n method.update = function (message) {\n return method.create().update(message);\n };\n for (var i = 0; i < OUTPUT_TYPES.length; ++i) {\n var type = OUTPUT_TYPES[i];\n method[type] = createOutputMethod(type, is224);\n }\n return method;\n };\n\n var nodeWrap = function (method, is224) {\n var crypto = require('crypto')\n var Buffer = require('buffer').Buffer;\n var algorithm = is224 ? 'sha224' : 'sha256';\n var bufferFrom;\n if (Buffer.from && !root.JS_SHA256_NO_BUFFER_FROM) {\n bufferFrom = Buffer.from;\n } else {\n bufferFrom = function (message) {\n return new Buffer(message);\n };\n }\n var nodeMethod = function (message) {\n if (typeof message === 'string') {\n return crypto.createHash(algorithm).update(message, 'utf8').digest('hex');\n } else {\n if (message === null || message === undefined) {\n throw new Error(ERROR);\n } else if (message.constructor === ArrayBuffer) {\n message = new Uint8Array(message);\n }\n }\n if (Array.isArray(message) || ArrayBuffer.isView(message) ||\n message.constructor === Buffer) {\n return crypto.createHash(algorithm).update(bufferFrom(message)).digest('hex');\n } else {\n return method(message);\n }\n };\n return nodeMethod;\n };\n\n var createHmacOutputMethod = function (outputType, is224) {\n return function (key, message) {\n return new HmacSha256(key, is224, true).update(message)[outputType]();\n };\n };\n\n var createHmacMethod = function (is224) {\n var method = createHmacOutputMethod('hex', is224);\n method.create = function (key) {\n return new HmacSha256(key, is224);\n };\n method.update = function (key, message) {\n return method.create(key).update(message);\n };\n for (var i = 0; i < OUTPUT_TYPES.length; ++i) {\n var type = OUTPUT_TYPES[i];\n method[type] = createHmacOutputMethod(type, is224);\n }\n return method;\n };\n\n function Sha256(is224, sharedMemory) {\n if (sharedMemory) {\n blocks[0] = blocks[16] = blocks[1] = blocks[2] = blocks[3] =\n blocks[4] = blocks[5] = blocks[6] = blocks[7] =\n blocks[8] = blocks[9] = blocks[10] = blocks[11] =\n blocks[12] = blocks[13] = blocks[14] = blocks[15] = 0;\n this.blocks = blocks;\n } else {\n this.blocks = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];\n }\n\n if (is224) {\n this.h0 = 0xc1059ed8;\n this.h1 = 0x367cd507;\n this.h2 = 0x3070dd17;\n this.h3 = 0xf70e5939;\n this.h4 = 0xffc00b31;\n this.h5 = 0x68581511;\n this.h6 = 0x64f98fa7;\n this.h7 = 0xbefa4fa4;\n } else { // 256\n this.h0 = 0x6a09e667;\n this.h1 = 0xbb67ae85;\n this.h2 = 0x3c6ef372;\n this.h3 = 0xa54ff53a;\n this.h4 = 0x510e527f;\n this.h5 = 0x9b05688c;\n this.h6 = 0x1f83d9ab;\n this.h7 = 0x5be0cd19;\n }\n\n this.block = this.start = this.bytes = this.hBytes = 0;\n this.finalized = this.hashed = false;\n this.first = true;\n this.is224 = is224;\n }\n\n Sha256.prototype.update = function (message) {\n if (this.finalized) {\n return;\n }\n var notString, type = typeof message;\n if (type !== 'string') {\n if (type === 'object') {\n if (message === null) {\n throw new Error(ERROR);\n } else if (ARRAY_BUFFER && message.constructor === ArrayBuffer) {\n message = new Uint8Array(message);\n } else if (!Array.isArray(message)) {\n if (!ARRAY_BUFFER || !ArrayBuffer.isView(message)) {\n throw new Error(ERROR);\n }\n }\n } else {\n throw new Error(ERROR);\n }\n notString = true;\n }\n var code, index = 0, i, length = message.length, blocks = this.blocks;\n while (index < length) {\n if (this.hashed) {\n this.hashed = false;\n blocks[0] = this.block;\n this.block = blocks[16] = blocks[1] = blocks[2] = blocks[3] =\n blocks[4] = blocks[5] = blocks[6] = blocks[7] =\n blocks[8] = blocks[9] = blocks[10] = blocks[11] =\n blocks[12] = blocks[13] = blocks[14] = blocks[15] = 0;\n }\n\n if (notString) {\n for (i = this.start; index < length && i < 64; ++index) {\n blocks[i >>> 2] |= message[index] << SHIFT[i++ & 3];\n }\n } else {\n for (i = this.start; index < length && i < 64; ++index) {\n code = message.charCodeAt(index);\n if (code < 0x80) {\n blocks[i >>> 2] |= code << SHIFT[i++ & 3];\n } else if (code < 0x800) {\n blocks[i >>> 2] |= (0xc0 | (code >>> 6)) << SHIFT[i++ & 3];\n blocks[i >>> 2] |= (0x80 | (code & 0x3f)) << SHIFT[i++ & 3];\n } else if (code < 0xd800 || code >= 0xe000) {\n blocks[i >>> 2] |= (0xe0 | (code >>> 12)) << SHIFT[i++ & 3];\n blocks[i >>> 2] |= (0x80 | ((code >>> 6) & 0x3f)) << SHIFT[i++ & 3];\n blocks[i >>> 2] |= (0x80 | (code & 0x3f)) << SHIFT[i++ & 3];\n } else {\n code = 0x10000 + (((code & 0x3ff) << 10) | (message.charCodeAt(++index) & 0x3ff));\n blocks[i >>> 2] |= (0xf0 | (code >>> 18)) << SHIFT[i++ & 3];\n blocks[i >>> 2] |= (0x80 | ((code >>> 12) & 0x3f)) << SHIFT[i++ & 3];\n blocks[i >>> 2] |= (0x80 | ((code >>> 6) & 0x3f)) << SHIFT[i++ & 3];\n blocks[i >>> 2] |= (0x80 | (code & 0x3f)) << SHIFT[i++ & 3];\n }\n }\n }\n\n this.lastByteIndex = i;\n this.bytes += i - this.start;\n if (i >= 64) {\n this.block = blocks[16];\n this.start = i - 64;\n this.hash();\n this.hashed = true;\n } else {\n this.start = i;\n }\n }\n if (this.bytes > 4294967295) {\n this.hBytes += this.bytes / 4294967296 << 0;\n this.bytes = this.bytes % 4294967296;\n }\n return this;\n };\n\n Sha256.prototype.finalize = function () {\n if (this.finalized) {\n return;\n }\n this.finalized = true;\n var blocks = this.blocks, i = this.lastByteIndex;\n blocks[16] = this.block;\n blocks[i >>> 2] |= EXTRA[i & 3];\n this.block = blocks[16];\n if (i >= 56) {\n if (!this.hashed) {\n this.hash();\n }\n blocks[0] = this.block;\n blocks[16] = blocks[1] = blocks[2] = blocks[3] =\n blocks[4] = blocks[5] = blocks[6] = blocks[7] =\n blocks[8] = blocks[9] = blocks[10] = blocks[11] =\n blocks[12] = blocks[13] = blocks[14] = blocks[15] = 0;\n }\n blocks[14] = this.hBytes << 3 | this.bytes >>> 29;\n blocks[15] = this.bytes << 3;\n this.hash();\n };\n\n Sha256.prototype.hash = function () {\n var a = this.h0, b = this.h1, c = this.h2, d = this.h3, e = this.h4, f = this.h5, g = this.h6,\n h = this.h7, blocks = this.blocks, j, s0, s1, maj, t1, t2, ch, ab, da, cd, bc;\n\n for (j = 16; j < 64; ++j) {\n // rightrotate\n t1 = blocks[j - 15];\n s0 = ((t1 >>> 7) | (t1 << 25)) ^ ((t1 >>> 18) | (t1 << 14)) ^ (t1 >>> 3);\n t1 = blocks[j - 2];\n s1 = ((t1 >>> 17) | (t1 << 15)) ^ ((t1 >>> 19) | (t1 << 13)) ^ (t1 >>> 10);\n blocks[j] = blocks[j - 16] + s0 + blocks[j - 7] + s1 << 0;\n }\n\n bc = b & c;\n for (j = 0; j < 64; j += 4) {\n if (this.first) {\n if (this.is224) {\n ab = 300032;\n t1 = blocks[0] - 1413257819;\n h = t1 - 150054599 << 0;\n d = t1 + 24177077 << 0;\n } else {\n ab = 704751109;\n t1 = blocks[0] - 210244248;\n h = t1 - 1521486534 << 0;\n d = t1 + 143694565 << 0;\n }\n this.first = false;\n } else {\n s0 = ((a >>> 2) | (a << 30)) ^ ((a >>> 13) | (a << 19)) ^ ((a >>> 22) | (a << 10));\n s1 = ((e >>> 6) | (e << 26)) ^ ((e >>> 11) | (e << 21)) ^ ((e >>> 25) | (e << 7));\n ab = a & b;\n maj = ab ^ (a & c) ^ bc;\n ch = (e & f) ^ (~e & g);\n t1 = h + s1 + ch + K[j] + blocks[j];\n t2 = s0 + maj;\n h = d + t1 << 0;\n d = t1 + t2 << 0;\n }\n s0 = ((d >>> 2) | (d << 30)) ^ ((d >>> 13) | (d << 19)) ^ ((d >>> 22) | (d << 10));\n s1 = ((h >>> 6) | (h << 26)) ^ ((h >>> 11) | (h << 21)) ^ ((h >>> 25) | (h << 7));\n da = d & a;\n maj = da ^ (d & b) ^ ab;\n ch = (h & e) ^ (~h & f);\n t1 = g + s1 + ch + K[j + 1] + blocks[j + 1];\n t2 = s0 + maj;\n g = c + t1 << 0;\n c = t1 + t2 << 0;\n s0 = ((c >>> 2) | (c << 30)) ^ ((c >>> 13) | (c << 19)) ^ ((c >>> 22) | (c << 10));\n s1 = ((g >>> 6) | (g << 26)) ^ ((g >>> 11) | (g << 21)) ^ ((g >>> 25) | (g << 7));\n cd = c & d;\n maj = cd ^ (c & a) ^ da;\n ch = (g & h) ^ (~g & e);\n t1 = f + s1 + ch + K[j + 2] + blocks[j + 2];\n t2 = s0 + maj;\n f = b + t1 << 0;\n b = t1 + t2 << 0;\n s0 = ((b >>> 2) | (b << 30)) ^ ((b >>> 13) | (b << 19)) ^ ((b >>> 22) | (b << 10));\n s1 = ((f >>> 6) | (f << 26)) ^ ((f >>> 11) | (f << 21)) ^ ((f >>> 25) | (f << 7));\n bc = b & c;\n maj = bc ^ (b & d) ^ cd;\n ch = (f & g) ^ (~f & h);\n t1 = e + s1 + ch + K[j + 3] + blocks[j + 3];\n t2 = s0 + maj;\n e = a + t1 << 0;\n a = t1 + t2 << 0;\n this.chromeBugWorkAround = true;\n }\n\n this.h0 = this.h0 + a << 0;\n this.h1 = this.h1 + b << 0;\n this.h2 = this.h2 + c << 0;\n this.h3 = this.h3 + d << 0;\n this.h4 = this.h4 + e << 0;\n this.h5 = this.h5 + f << 0;\n this.h6 = this.h6 + g << 0;\n this.h7 = this.h7 + h << 0;\n };\n\n Sha256.prototype.hex = function () {\n this.finalize();\n\n var h0 = this.h0, h1 = this.h1, h2 = this.h2, h3 = this.h3, h4 = this.h4, h5 = this.h5,\n h6 = this.h6, h7 = this.h7;\n\n var hex = HEX_CHARS[(h0 >>> 28) & 0x0F] + HEX_CHARS[(h0 >>> 24) & 0x0F] +\n HEX_CHARS[(h0 >>> 20) & 0x0F] + HEX_CHARS[(h0 >>> 16) & 0x0F] +\n HEX_CHARS[(h0 >>> 12) & 0x0F] + HEX_CHARS[(h0 >>> 8) & 0x0F] +\n HEX_CHARS[(h0 >>> 4) & 0x0F] + HEX_CHARS[h0 & 0x0F] +\n HEX_CHARS[(h1 >>> 28) & 0x0F] + HEX_CHARS[(h1 >>> 24) & 0x0F] +\n HEX_CHARS[(h1 >>> 20) & 0x0F] + HEX_CHARS[(h1 >>> 16) & 0x0F] +\n HEX_CHARS[(h1 >>> 12) & 0x0F] + HEX_CHARS[(h1 >>> 8) & 0x0F] +\n HEX_CHARS[(h1 >>> 4) & 0x0F] + HEX_CHARS[h1 & 0x0F] +\n HEX_CHARS[(h2 >>> 28) & 0x0F] + HEX_CHARS[(h2 >>> 24) & 0x0F] +\n HEX_CHARS[(h2 >>> 20) & 0x0F] + HEX_CHARS[(h2 >>> 16) & 0x0F] +\n HEX_CHARS[(h2 >>> 12) & 0x0F] + HEX_CHARS[(h2 >>> 8) & 0x0F] +\n HEX_CHARS[(h2 >>> 4) & 0x0F] + HEX_CHARS[h2 & 0x0F] +\n HEX_CHARS[(h3 >>> 28) & 0x0F] + HEX_CHARS[(h3 >>> 24) & 0x0F] +\n HEX_CHARS[(h3 >>> 20) & 0x0F] + HEX_CHARS[(h3 >>> 16) & 0x0F] +\n HEX_CHARS[(h3 >>> 12) & 0x0F] + HEX_CHARS[(h3 >>> 8) & 0x0F] +\n HEX_CHARS[(h3 >>> 4) & 0x0F] + HEX_CHARS[h3 & 0x0F] +\n HEX_CHARS[(h4 >>> 28) & 0x0F] + HEX_CHARS[(h4 >>> 24) & 0x0F] +\n HEX_CHARS[(h4 >>> 20) & 0x0F] + HEX_CHARS[(h4 >>> 16) & 0x0F] +\n HEX_CHARS[(h4 >>> 12) & 0x0F] + HEX_CHARS[(h4 >>> 8) & 0x0F] +\n HEX_CHARS[(h4 >>> 4) & 0x0F] + HEX_CHARS[h4 & 0x0F] +\n HEX_CHARS[(h5 >>> 28) & 0x0F] + HEX_CHARS[(h5 >>> 24) & 0x0F] +\n HEX_CHARS[(h5 >>> 20) & 0x0F] + HEX_CHARS[(h5 >>> 16) & 0x0F] +\n HEX_CHARS[(h5 >>> 12) & 0x0F] + HEX_CHARS[(h5 >>> 8) & 0x0F] +\n HEX_CHARS[(h5 >>> 4) & 0x0F] + HEX_CHARS[h5 & 0x0F] +\n HEX_CHARS[(h6 >>> 28) & 0x0F] + HEX_CHARS[(h6 >>> 24) & 0x0F] +\n HEX_CHARS[(h6 >>> 20) & 0x0F] + HEX_CHARS[(h6 >>> 16) & 0x0F] +\n HEX_CHARS[(h6 >>> 12) & 0x0F] + HEX_CHARS[(h6 >>> 8) & 0x0F] +\n HEX_CHARS[(h6 >>> 4) & 0x0F] + HEX_CHARS[h6 & 0x0F];\n if (!this.is224) {\n hex += HEX_CHARS[(h7 >>> 28) & 0x0F] + HEX_CHARS[(h7 >>> 24) & 0x0F] +\n HEX_CHARS[(h7 >>> 20) & 0x0F] + HEX_CHARS[(h7 >>> 16) & 0x0F] +\n HEX_CHARS[(h7 >>> 12) & 0x0F] + HEX_CHARS[(h7 >>> 8) & 0x0F] +\n HEX_CHARS[(h7 >>> 4) & 0x0F] + HEX_CHARS[h7 & 0x0F];\n }\n return hex;\n };\n\n Sha256.prototype.toString = Sha256.prototype.hex;\n\n Sha256.prototype.digest = function () {\n this.finalize();\n\n var h0 = this.h0, h1 = this.h1, h2 = this.h2, h3 = this.h3, h4 = this.h4, h5 = this.h5,\n h6 = this.h6, h7 = this.h7;\n\n var arr = [\n (h0 >>> 24) & 0xFF, (h0 >>> 16) & 0xFF, (h0 >>> 8) & 0xFF, h0 & 0xFF,\n (h1 >>> 24) & 0xFF, (h1 >>> 16) & 0xFF, (h1 >>> 8) & 0xFF, h1 & 0xFF,\n (h2 >>> 24) & 0xFF, (h2 >>> 16) & 0xFF, (h2 >>> 8) & 0xFF, h2 & 0xFF,\n (h3 >>> 24) & 0xFF, (h3 >>> 16) & 0xFF, (h3 >>> 8) & 0xFF, h3 & 0xFF,\n (h4 >>> 24) & 0xFF, (h4 >>> 16) & 0xFF, (h4 >>> 8) & 0xFF, h4 & 0xFF,\n (h5 >>> 24) & 0xFF, (h5 >>> 16) & 0xFF, (h5 >>> 8) & 0xFF, h5 & 0xFF,\n (h6 >>> 24) & 0xFF, (h6 >>> 16) & 0xFF, (h6 >>> 8) & 0xFF, h6 & 0xFF\n ];\n if (!this.is224) {\n arr.push((h7 >>> 24) & 0xFF, (h7 >>> 16) & 0xFF, (h7 >>> 8) & 0xFF, h7 & 0xFF);\n }\n return arr;\n };\n\n Sha256.prototype.array = Sha256.prototype.digest;\n\n Sha256.prototype.arrayBuffer = function () {\n this.finalize();\n\n var buffer = new ArrayBuffer(this.is224 ? 28 : 32);\n var dataView = new DataView(buffer);\n dataView.setUint32(0, this.h0);\n dataView.setUint32(4, this.h1);\n dataView.setUint32(8, this.h2);\n dataView.setUint32(12, this.h3);\n dataView.setUint32(16, this.h4);\n dataView.setUint32(20, this.h5);\n dataView.setUint32(24, this.h6);\n if (!this.is224) {\n dataView.setUint32(28, this.h7);\n }\n return buffer;\n };\n\n function HmacSha256(key, is224, sharedMemory) {\n var i, type = typeof key;\n if (type === 'string') {\n var bytes = [], length = key.length, index = 0, code;\n for (i = 0; i < length; ++i) {\n code = key.charCodeAt(i);\n if (code < 0x80) {\n bytes[index++] = code;\n } else if (code < 0x800) {\n bytes[index++] = (0xc0 | (code >>> 6));\n bytes[index++] = (0x80 | (code & 0x3f));\n } else if (code < 0xd800 || code >= 0xe000) {\n bytes[index++] = (0xe0 | (code >>> 12));\n bytes[index++] = (0x80 | ((code >>> 6) & 0x3f));\n bytes[index++] = (0x80 | (code & 0x3f));\n } else {\n code = 0x10000 + (((code & 0x3ff) << 10) | (key.charCodeAt(++i) & 0x3ff));\n bytes[index++] = (0xf0 | (code >>> 18));\n bytes[index++] = (0x80 | ((code >>> 12) & 0x3f));\n bytes[index++] = (0x80 | ((code >>> 6) & 0x3f));\n bytes[index++] = (0x80 | (code & 0x3f));\n }\n }\n key = bytes;\n } else {\n if (type === 'object') {\n if (key === null) {\n throw new Error(ERROR);\n } else if (ARRAY_BUFFER && key.constructor === ArrayBuffer) {\n key = new Uint8Array(key);\n } else if (!Array.isArray(key)) {\n if (!ARRAY_BUFFER || !ArrayBuffer.isView(key)) {\n throw new Error(ERROR);\n }\n }\n } else {\n throw new Error(ERROR);\n }\n }\n\n if (key.length > 64) {\n key = (new Sha256(is224, true)).update(key).array();\n }\n\n var oKeyPad = [], iKeyPad = [];\n for (i = 0; i < 64; ++i) {\n var b = key[i] || 0;\n oKeyPad[i] = 0x5c ^ b;\n iKeyPad[i] = 0x36 ^ b;\n }\n\n Sha256.call(this, is224, sharedMemory);\n\n this.update(iKeyPad);\n this.oKeyPad = oKeyPad;\n this.inner = true;\n this.sharedMemory = sharedMemory;\n }\n HmacSha256.prototype = new Sha256();\n\n HmacSha256.prototype.finalize = function () {\n Sha256.prototype.finalize.call(this);\n if (this.inner) {\n this.inner = false;\n var innerHash = this.array();\n Sha256.call(this, this.is224, this.sharedMemory);\n this.update(this.oKeyPad);\n this.update(innerHash);\n Sha256.prototype.finalize.call(this);\n }\n };\n\n var exports = createMethod();\n exports.sha256 = exports;\n exports.sha224 = createMethod(true);\n exports.sha256.hmac = createHmacMethod();\n exports.sha224.hmac = createHmacMethod(true);\n\n if (COMMON_JS) {\n module.exports = exports;\n } else {\n root.sha256 = exports.sha256;\n root.sha224 = exports.sha224;\n if (AMD) {\n define(function () {\n return exports;\n });\n }\n }\n})();\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar tryToString = require('../internals/try-to-string');\n\nvar $TypeError = TypeError;\n\n// `Assert: IsCallable(argument) is true`\nmodule.exports = function (argument) {\n if (isCallable(argument)) return argument;\n throw new $TypeError(tryToString(argument) + ' is not a function');\n};\n","'use strict';\nvar isPossiblePrototype = require('../internals/is-possible-prototype');\n\nvar $String = String;\nvar $TypeError = TypeError;\n\nmodule.exports = function (argument) {\n if (isPossiblePrototype(argument)) return argument;\n throw new $TypeError(\"Can't set \" + $String(argument) + ' as a prototype');\n};\n","'use strict';\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\n\nvar $TypeError = TypeError;\n\nmodule.exports = function (it, Prototype) {\n if (isPrototypeOf(Prototype, it)) return it;\n throw new $TypeError('Incorrect invocation');\n};\n","'use strict';\nvar isObject = require('../internals/is-object');\n\nvar $String = String;\nvar $TypeError = TypeError;\n\n// `Assert: Type(argument) is Object`\nmodule.exports = function (argument) {\n if (isObject(argument)) return argument;\n throw new $TypeError($String(argument) + ' is not an object');\n};\n","'use strict';\n// eslint-disable-next-line es/no-typed-arrays -- safe\nmodule.exports = typeof ArrayBuffer != 'undefined' && typeof DataView != 'undefined';\n","'use strict';\nvar uncurryThisAccessor = require('../internals/function-uncurry-this-accessor');\nvar classof = require('../internals/classof-raw');\n\nvar $TypeError = TypeError;\n\n// Includes\n// - Perform ? RequireInternalSlot(O, [[ArrayBufferData]]).\n// - If IsSharedArrayBuffer(O) is true, throw a TypeError exception.\nmodule.exports = uncurryThisAccessor(ArrayBuffer.prototype, 'byteLength', 'get') || function (O) {\n if (classof(O) !== 'ArrayBuffer') throw new $TypeError('ArrayBuffer expected');\n return O.byteLength;\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar arrayBufferByteLength = require('../internals/array-buffer-byte-length');\n\nvar slice = uncurryThis(ArrayBuffer.prototype.slice);\n\nmodule.exports = function (O) {\n if (arrayBufferByteLength(O) !== 0) return false;\n try {\n slice(O, 0, 0);\n return false;\n } catch (error) {\n return true;\n }\n};\n","'use strict';\nvar global = require('../internals/global');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar uncurryThisAccessor = require('../internals/function-uncurry-this-accessor');\nvar toIndex = require('../internals/to-index');\nvar isDetached = require('../internals/array-buffer-is-detached');\nvar arrayBufferByteLength = require('../internals/array-buffer-byte-length');\nvar detachTransferable = require('../internals/detach-transferable');\nvar PROPER_STRUCTURED_CLONE_TRANSFER = require('../internals/structured-clone-proper-transfer');\n\nvar structuredClone = global.structuredClone;\nvar ArrayBuffer = global.ArrayBuffer;\nvar DataView = global.DataView;\nvar TypeError = global.TypeError;\nvar min = Math.min;\nvar ArrayBufferPrototype = ArrayBuffer.prototype;\nvar DataViewPrototype = DataView.prototype;\nvar slice = uncurryThis(ArrayBufferPrototype.slice);\nvar isResizable = uncurryThisAccessor(ArrayBufferPrototype, 'resizable', 'get');\nvar maxByteLength = uncurryThisAccessor(ArrayBufferPrototype, 'maxByteLength', 'get');\nvar getInt8 = uncurryThis(DataViewPrototype.getInt8);\nvar setInt8 = uncurryThis(DataViewPrototype.setInt8);\n\nmodule.exports = (PROPER_STRUCTURED_CLONE_TRANSFER || detachTransferable) && function (arrayBuffer, newLength, preserveResizability) {\n var byteLength = arrayBufferByteLength(arrayBuffer);\n var newByteLength = newLength === undefined ? byteLength : toIndex(newLength);\n var fixedLength = !isResizable || !isResizable(arrayBuffer);\n var newBuffer;\n if (isDetached(arrayBuffer)) throw new TypeError('ArrayBuffer is detached');\n if (PROPER_STRUCTURED_CLONE_TRANSFER) {\n arrayBuffer = structuredClone(arrayBuffer, { transfer: [arrayBuffer] });\n if (byteLength === newByteLength && (preserveResizability || fixedLength)) return arrayBuffer;\n }\n if (byteLength >= newByteLength && (!preserveResizability || fixedLength)) {\n newBuffer = slice(arrayBuffer, 0, newByteLength);\n } else {\n var options = preserveResizability && !fixedLength && maxByteLength ? { maxByteLength: maxByteLength(arrayBuffer) } : undefined;\n newBuffer = new ArrayBuffer(newByteLength, options);\n var a = new DataView(arrayBuffer);\n var b = new DataView(newBuffer);\n var copyLength = min(newByteLength, byteLength);\n for (var i = 0; i < copyLength; i++) setInt8(b, i, getInt8(a, i));\n }\n if (!PROPER_STRUCTURED_CLONE_TRANSFER) detachTransferable(arrayBuffer);\n return newBuffer;\n};\n","'use strict';\nvar NATIVE_ARRAY_BUFFER = require('../internals/array-buffer-basic-detection');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar global = require('../internals/global');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar hasOwn = require('../internals/has-own-property');\nvar classof = require('../internals/classof');\nvar tryToString = require('../internals/try-to-string');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar defineBuiltInAccessor = require('../internals/define-built-in-accessor');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar uid = require('../internals/uid');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar enforceInternalState = InternalStateModule.enforce;\nvar getInternalState = InternalStateModule.get;\nvar Int8Array = global.Int8Array;\nvar Int8ArrayPrototype = Int8Array && Int8Array.prototype;\nvar Uint8ClampedArray = global.Uint8ClampedArray;\nvar Uint8ClampedArrayPrototype = Uint8ClampedArray && Uint8ClampedArray.prototype;\nvar TypedArray = Int8Array && getPrototypeOf(Int8Array);\nvar TypedArrayPrototype = Int8ArrayPrototype && getPrototypeOf(Int8ArrayPrototype);\nvar ObjectPrototype = Object.prototype;\nvar TypeError = global.TypeError;\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar TYPED_ARRAY_TAG = uid('TYPED_ARRAY_TAG');\nvar TYPED_ARRAY_CONSTRUCTOR = 'TypedArrayConstructor';\n// Fixing native typed arrays in Opera Presto crashes the browser, see #595\nvar NATIVE_ARRAY_BUFFER_VIEWS = NATIVE_ARRAY_BUFFER && !!setPrototypeOf && classof(global.opera) !== 'Opera';\nvar TYPED_ARRAY_TAG_REQUIRED = false;\nvar NAME, Constructor, Prototype;\n\nvar TypedArrayConstructorsList = {\n Int8Array: 1,\n Uint8Array: 1,\n Uint8ClampedArray: 1,\n Int16Array: 2,\n Uint16Array: 2,\n Int32Array: 4,\n Uint32Array: 4,\n Float32Array: 4,\n Float64Array: 8\n};\n\nvar BigIntArrayConstructorsList = {\n BigInt64Array: 8,\n BigUint64Array: 8\n};\n\nvar isView = function isView(it) {\n if (!isObject(it)) return false;\n var klass = classof(it);\n return klass === 'DataView'\n || hasOwn(TypedArrayConstructorsList, klass)\n || hasOwn(BigIntArrayConstructorsList, klass);\n};\n\nvar getTypedArrayConstructor = function (it) {\n var proto = getPrototypeOf(it);\n if (!isObject(proto)) return;\n var state = getInternalState(proto);\n return (state && hasOwn(state, TYPED_ARRAY_CONSTRUCTOR)) ? state[TYPED_ARRAY_CONSTRUCTOR] : getTypedArrayConstructor(proto);\n};\n\nvar isTypedArray = function (it) {\n if (!isObject(it)) return false;\n var klass = classof(it);\n return hasOwn(TypedArrayConstructorsList, klass)\n || hasOwn(BigIntArrayConstructorsList, klass);\n};\n\nvar aTypedArray = function (it) {\n if (isTypedArray(it)) return it;\n throw new TypeError('Target is not a typed array');\n};\n\nvar aTypedArrayConstructor = function (C) {\n if (isCallable(C) && (!setPrototypeOf || isPrototypeOf(TypedArray, C))) return C;\n throw new TypeError(tryToString(C) + ' is not a typed array constructor');\n};\n\nvar exportTypedArrayMethod = function (KEY, property, forced, options) {\n if (!DESCRIPTORS) return;\n if (forced) for (var ARRAY in TypedArrayConstructorsList) {\n var TypedArrayConstructor = global[ARRAY];\n if (TypedArrayConstructor && hasOwn(TypedArrayConstructor.prototype, KEY)) try {\n delete TypedArrayConstructor.prototype[KEY];\n } catch (error) {\n // old WebKit bug - some methods are non-configurable\n try {\n TypedArrayConstructor.prototype[KEY] = property;\n } catch (error2) { /* empty */ }\n }\n }\n if (!TypedArrayPrototype[KEY] || forced) {\n defineBuiltIn(TypedArrayPrototype, KEY, forced ? property\n : NATIVE_ARRAY_BUFFER_VIEWS && Int8ArrayPrototype[KEY] || property, options);\n }\n};\n\nvar exportTypedArrayStaticMethod = function (KEY, property, forced) {\n var ARRAY, TypedArrayConstructor;\n if (!DESCRIPTORS) return;\n if (setPrototypeOf) {\n if (forced) for (ARRAY in TypedArrayConstructorsList) {\n TypedArrayConstructor = global[ARRAY];\n if (TypedArrayConstructor && hasOwn(TypedArrayConstructor, KEY)) try {\n delete TypedArrayConstructor[KEY];\n } catch (error) { /* empty */ }\n }\n if (!TypedArray[KEY] || forced) {\n // V8 ~ Chrome 49-50 `%TypedArray%` methods are non-writable non-configurable\n try {\n return defineBuiltIn(TypedArray, KEY, forced ? property : NATIVE_ARRAY_BUFFER_VIEWS && TypedArray[KEY] || property);\n } catch (error) { /* empty */ }\n } else return;\n }\n for (ARRAY in TypedArrayConstructorsList) {\n TypedArrayConstructor = global[ARRAY];\n if (TypedArrayConstructor && (!TypedArrayConstructor[KEY] || forced)) {\n defineBuiltIn(TypedArrayConstructor, KEY, property);\n }\n }\n};\n\nfor (NAME in TypedArrayConstructorsList) {\n Constructor = global[NAME];\n Prototype = Constructor && Constructor.prototype;\n if (Prototype) enforceInternalState(Prototype)[TYPED_ARRAY_CONSTRUCTOR] = Constructor;\n else NATIVE_ARRAY_BUFFER_VIEWS = false;\n}\n\nfor (NAME in BigIntArrayConstructorsList) {\n Constructor = global[NAME];\n Prototype = Constructor && Constructor.prototype;\n if (Prototype) enforceInternalState(Prototype)[TYPED_ARRAY_CONSTRUCTOR] = Constructor;\n}\n\n// WebKit bug - typed arrays constructors prototype is Object.prototype\nif (!NATIVE_ARRAY_BUFFER_VIEWS || !isCallable(TypedArray) || TypedArray === Function.prototype) {\n // eslint-disable-next-line no-shadow -- safe\n TypedArray = function TypedArray() {\n throw new TypeError('Incorrect invocation');\n };\n if (NATIVE_ARRAY_BUFFER_VIEWS) for (NAME in TypedArrayConstructorsList) {\n if (global[NAME]) setPrototypeOf(global[NAME], TypedArray);\n }\n}\n\nif (!NATIVE_ARRAY_BUFFER_VIEWS || !TypedArrayPrototype || TypedArrayPrototype === ObjectPrototype) {\n TypedArrayPrototype = TypedArray.prototype;\n if (NATIVE_ARRAY_BUFFER_VIEWS) for (NAME in TypedArrayConstructorsList) {\n if (global[NAME]) setPrototypeOf(global[NAME].prototype, TypedArrayPrototype);\n }\n}\n\n// WebKit bug - one more object in Uint8ClampedArray prototype chain\nif (NATIVE_ARRAY_BUFFER_VIEWS && getPrototypeOf(Uint8ClampedArrayPrototype) !== TypedArrayPrototype) {\n setPrototypeOf(Uint8ClampedArrayPrototype, TypedArrayPrototype);\n}\n\nif (DESCRIPTORS && !hasOwn(TypedArrayPrototype, TO_STRING_TAG)) {\n TYPED_ARRAY_TAG_REQUIRED = true;\n defineBuiltInAccessor(TypedArrayPrototype, TO_STRING_TAG, {\n configurable: true,\n get: function () {\n return isObject(this) ? this[TYPED_ARRAY_TAG] : undefined;\n }\n });\n for (NAME in TypedArrayConstructorsList) if (global[NAME]) {\n createNonEnumerableProperty(global[NAME], TYPED_ARRAY_TAG, NAME);\n }\n}\n\nmodule.exports = {\n NATIVE_ARRAY_BUFFER_VIEWS: NATIVE_ARRAY_BUFFER_VIEWS,\n TYPED_ARRAY_TAG: TYPED_ARRAY_TAG_REQUIRED && TYPED_ARRAY_TAG,\n aTypedArray: aTypedArray,\n aTypedArrayConstructor: aTypedArrayConstructor,\n exportTypedArrayMethod: exportTypedArrayMethod,\n exportTypedArrayStaticMethod: exportTypedArrayStaticMethod,\n getTypedArrayConstructor: getTypedArrayConstructor,\n isView: isView,\n isTypedArray: isTypedArray,\n TypedArray: TypedArray,\n TypedArrayPrototype: TypedArrayPrototype\n};\n","'use strict';\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\n\nmodule.exports = function (Constructor, list, $length) {\n var index = 0;\n var length = arguments.length > 2 ? $length : lengthOfArrayLike(list);\n var result = new Constructor(length);\n while (length > index) result[index] = list[index++];\n return result;\n};\n","'use strict';\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\n\n// `Array.prototype.{ indexOf, includes }` methods implementation\nvar createMethod = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIndexedObject($this);\n var length = lengthOfArrayLike(O);\n if (length === 0) return !IS_INCLUDES && -1;\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n // Array#includes uses SameValueZero equality algorithm\n // eslint-disable-next-line no-self-compare -- NaN check\n if (IS_INCLUDES && el !== el) while (length > index) {\n value = O[index++];\n // eslint-disable-next-line no-self-compare -- NaN check\n if (value !== value) return true;\n // Array#indexOf ignores holes, Array#includes - not\n } else for (;length > index; index++) {\n if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.includes` method\n // https://tc39.es/ecma262/#sec-array.prototype.includes\n includes: createMethod(true),\n // `Array.prototype.indexOf` method\n // https://tc39.es/ecma262/#sec-array.prototype.indexof\n indexOf: createMethod(false)\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar isArray = require('../internals/is-array');\n\nvar $TypeError = TypeError;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// Safari < 13 does not throw an error in this case\nvar SILENT_ON_NON_WRITABLE_LENGTH_SET = DESCRIPTORS && !function () {\n // makes no sense without proper strict mode support\n if (this !== undefined) return true;\n try {\n // eslint-disable-next-line es/no-object-defineproperty -- safe\n Object.defineProperty([], 'length', { writable: false }).length = 1;\n } catch (error) {\n return error instanceof TypeError;\n }\n}();\n\nmodule.exports = SILENT_ON_NON_WRITABLE_LENGTH_SET ? function (O, length) {\n if (isArray(O) && !getOwnPropertyDescriptor(O, 'length').writable) {\n throw new $TypeError('Cannot set read only .length');\n } return O.length = length;\n} : function (O, length) {\n return O.length = length;\n};\n","'use strict';\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\n\n// https://tc39.es/proposal-change-array-by-copy/#sec-array.prototype.toReversed\n// https://tc39.es/proposal-change-array-by-copy/#sec-%typedarray%.prototype.toReversed\nmodule.exports = function (O, C) {\n var len = lengthOfArrayLike(O);\n var A = new C(len);\n var k = 0;\n for (; k < len; k++) A[k] = O[len - k - 1];\n return A;\n};\n","'use strict';\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\n\nvar $RangeError = RangeError;\n\n// https://tc39.es/proposal-change-array-by-copy/#sec-array.prototype.with\n// https://tc39.es/proposal-change-array-by-copy/#sec-%typedarray%.prototype.with\nmodule.exports = function (O, C, index, value) {\n var len = lengthOfArrayLike(O);\n var relativeIndex = toIntegerOrInfinity(index);\n var actualIndex = relativeIndex < 0 ? len + relativeIndex : relativeIndex;\n if (actualIndex >= len || actualIndex < 0) throw new $RangeError('Incorrect index');\n var A = new C(len);\n var k = 0;\n for (; k < len; k++) A[k] = k === actualIndex ? value : O[k];\n return A;\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nvar toString = uncurryThis({}.toString);\nvar stringSlice = uncurryThis(''.slice);\n\nmodule.exports = function (it) {\n return stringSlice(toString(it), 8, -1);\n};\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar isCallable = require('../internals/is-callable');\nvar classofRaw = require('../internals/classof-raw');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar $Object = Object;\n\n// ES3 wrong here\nvar CORRECT_ARGUMENTS = classofRaw(function () { return arguments; }()) === 'Arguments';\n\n// fallback for IE11 Script Access Denied error\nvar tryGet = function (it, key) {\n try {\n return it[key];\n } catch (error) { /* empty */ }\n};\n\n// getting tag from ES6+ `Object.prototype.toString`\nmodule.exports = TO_STRING_TAG_SUPPORT ? classofRaw : function (it) {\n var O, tag, result;\n return it === undefined ? 'Undefined' : it === null ? 'Null'\n // @@toStringTag case\n : typeof (tag = tryGet(O = $Object(it), TO_STRING_TAG)) == 'string' ? tag\n // builtinTag case\n : CORRECT_ARGUMENTS ? classofRaw(O)\n // ES3 arguments fallback\n : (result = classofRaw(O)) === 'Object' && isCallable(O.callee) ? 'Arguments' : result;\n};\n","'use strict';\nvar hasOwn = require('../internals/has-own-property');\nvar ownKeys = require('../internals/own-keys');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar definePropertyModule = require('../internals/object-define-property');\n\nmodule.exports = function (target, source, exceptions) {\n var keys = ownKeys(source);\n var defineProperty = definePropertyModule.f;\n var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n if (!hasOwn(target, key) && !(exceptions && hasOwn(exceptions, key))) {\n defineProperty(target, key, getOwnPropertyDescriptor(source, key));\n }\n }\n};\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n function F() { /* empty */ }\n F.prototype.constructor = null;\n // eslint-disable-next-line es/no-object-getprototypeof -- required for testing\n return Object.getPrototypeOf(new F()) !== F.prototype;\n});\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = DESCRIPTORS ? function (object, key, value) {\n return definePropertyModule.f(object, key, createPropertyDescriptor(1, value));\n} : function (object, key, value) {\n object[key] = value;\n return object;\n};\n","'use strict';\nmodule.exports = function (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n};\n","'use strict';\nvar makeBuiltIn = require('../internals/make-built-in');\nvar defineProperty = require('../internals/object-define-property');\n\nmodule.exports = function (target, name, descriptor) {\n if (descriptor.get) makeBuiltIn(descriptor.get, name, { getter: true });\n if (descriptor.set) makeBuiltIn(descriptor.set, name, { setter: true });\n return defineProperty.f(target, name, descriptor);\n};\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar definePropertyModule = require('../internals/object-define-property');\nvar makeBuiltIn = require('../internals/make-built-in');\nvar defineGlobalProperty = require('../internals/define-global-property');\n\nmodule.exports = function (O, key, value, options) {\n if (!options) options = {};\n var simple = options.enumerable;\n var name = options.name !== undefined ? options.name : key;\n if (isCallable(value)) makeBuiltIn(value, name, options);\n if (options.global) {\n if (simple) O[key] = value;\n else defineGlobalProperty(key, value);\n } else {\n try {\n if (!options.unsafe) delete O[key];\n else if (O[key]) simple = true;\n } catch (error) { /* empty */ }\n if (simple) O[key] = value;\n else definePropertyModule.f(O, key, {\n value: value,\n enumerable: false,\n configurable: !options.nonConfigurable,\n writable: !options.nonWritable\n });\n } return O;\n};\n","'use strict';\nvar global = require('../internals/global');\n\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar defineProperty = Object.defineProperty;\n\nmodule.exports = function (key, value) {\n try {\n defineProperty(global, key, { value: value, configurable: true, writable: true });\n } catch (error) {\n global[key] = value;\n } return value;\n};\n","'use strict';\nvar fails = require('../internals/fails');\n\n// Detect IE8's incomplete defineProperty implementation\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] !== 7;\n});\n","'use strict';\nvar global = require('../internals/global');\nvar tryNodeRequire = require('../internals/try-node-require');\nvar PROPER_STRUCTURED_CLONE_TRANSFER = require('../internals/structured-clone-proper-transfer');\n\nvar structuredClone = global.structuredClone;\nvar $ArrayBuffer = global.ArrayBuffer;\nvar $MessageChannel = global.MessageChannel;\nvar detach = false;\nvar WorkerThreads, channel, buffer, $detach;\n\nif (PROPER_STRUCTURED_CLONE_TRANSFER) {\n detach = function (transferable) {\n structuredClone(transferable, { transfer: [transferable] });\n };\n} else if ($ArrayBuffer) try {\n if (!$MessageChannel) {\n WorkerThreads = tryNodeRequire('worker_threads');\n if (WorkerThreads) $MessageChannel = WorkerThreads.MessageChannel;\n }\n\n if ($MessageChannel) {\n channel = new $MessageChannel();\n buffer = new $ArrayBuffer(2);\n\n $detach = function (transferable) {\n channel.port1.postMessage(null, [transferable]);\n };\n\n if (buffer.byteLength === 2) {\n $detach(buffer);\n if (buffer.byteLength === 0) detach = $detach;\n }\n }\n} catch (error) { /* empty */ }\n\nmodule.exports = detach;\n","'use strict';\nvar global = require('../internals/global');\nvar isObject = require('../internals/is-object');\n\nvar document = global.document;\n// typeof document.createElement is 'object' in old IE\nvar EXISTS = isObject(document) && isObject(document.createElement);\n\nmodule.exports = function (it) {\n return EXISTS ? document.createElement(it) : {};\n};\n","'use strict';\nvar $TypeError = TypeError;\nvar MAX_SAFE_INTEGER = 0x1FFFFFFFFFFFFF; // 2 ** 53 - 1 == 9007199254740991\n\nmodule.exports = function (it) {\n if (it > MAX_SAFE_INTEGER) throw $TypeError('Maximum allowed index exceeded');\n return it;\n};\n","'use strict';\nmodule.exports = {\n IndexSizeError: { s: 'INDEX_SIZE_ERR', c: 1, m: 1 },\n DOMStringSizeError: { s: 'DOMSTRING_SIZE_ERR', c: 2, m: 0 },\n HierarchyRequestError: { s: 'HIERARCHY_REQUEST_ERR', c: 3, m: 1 },\n WrongDocumentError: { s: 'WRONG_DOCUMENT_ERR', c: 4, m: 1 },\n InvalidCharacterError: { s: 'INVALID_CHARACTER_ERR', c: 5, m: 1 },\n NoDataAllowedError: { s: 'NO_DATA_ALLOWED_ERR', c: 6, m: 0 },\n NoModificationAllowedError: { s: 'NO_MODIFICATION_ALLOWED_ERR', c: 7, m: 1 },\n NotFoundError: { s: 'NOT_FOUND_ERR', c: 8, m: 1 },\n NotSupportedError: { s: 'NOT_SUPPORTED_ERR', c: 9, m: 1 },\n InUseAttributeError: { s: 'INUSE_ATTRIBUTE_ERR', c: 10, m: 1 },\n InvalidStateError: { s: 'INVALID_STATE_ERR', c: 11, m: 1 },\n SyntaxError: { s: 'SYNTAX_ERR', c: 12, m: 1 },\n InvalidModificationError: { s: 'INVALID_MODIFICATION_ERR', c: 13, m: 1 },\n NamespaceError: { s: 'NAMESPACE_ERR', c: 14, m: 1 },\n InvalidAccessError: { s: 'INVALID_ACCESS_ERR', c: 15, m: 1 },\n ValidationError: { s: 'VALIDATION_ERR', c: 16, m: 0 },\n TypeMismatchError: { s: 'TYPE_MISMATCH_ERR', c: 17, m: 1 },\n SecurityError: { s: 'SECURITY_ERR', c: 18, m: 1 },\n NetworkError: { s: 'NETWORK_ERR', c: 19, m: 1 },\n AbortError: { s: 'ABORT_ERR', c: 20, m: 1 },\n URLMismatchError: { s: 'URL_MISMATCH_ERR', c: 21, m: 1 },\n QuotaExceededError: { s: 'QUOTA_EXCEEDED_ERR', c: 22, m: 1 },\n TimeoutError: { s: 'TIMEOUT_ERR', c: 23, m: 1 },\n InvalidNodeTypeError: { s: 'INVALID_NODE_TYPE_ERR', c: 24, m: 1 },\n DataCloneError: { s: 'DATA_CLONE_ERR', c: 25, m: 1 }\n};\n","'use strict';\nvar IS_DENO = require('../internals/engine-is-deno');\nvar IS_NODE = require('../internals/engine-is-node');\n\nmodule.exports = !IS_DENO && !IS_NODE\n && typeof window == 'object'\n && typeof document == 'object';\n","'use strict';\n/* global Deno -- Deno case */\nmodule.exports = typeof Deno == 'object' && Deno && typeof Deno.version == 'object';\n","'use strict';\nvar global = require('../internals/global');\nvar classof = require('../internals/classof-raw');\n\nmodule.exports = classof(global.process) === 'process';\n","'use strict';\nmodule.exports = typeof navigator != 'undefined' && String(navigator.userAgent) || '';\n","'use strict';\nvar global = require('../internals/global');\nvar userAgent = require('../internals/engine-user-agent');\n\nvar process = global.process;\nvar Deno = global.Deno;\nvar versions = process && process.versions || Deno && Deno.version;\nvar v8 = versions && versions.v8;\nvar match, version;\n\nif (v8) {\n match = v8.split('.');\n // in old Chrome, versions of V8 isn't V8 = Chrome / 10\n // but their correct versions are not interesting for us\n version = match[0] > 0 && match[0] < 4 ? 1 : +(match[0] + match[1]);\n}\n\n// BrowserFS NodeJS `process` polyfill incorrectly set `.v8` to `0.0`\n// so check `userAgent` even if `.v8` exists, but 0\nif (!version && userAgent) {\n match = userAgent.match(/Edge\\/(\\d+)/);\n if (!match || match[1] >= 74) {\n match = userAgent.match(/Chrome\\/(\\d+)/);\n if (match) version = +match[1];\n }\n}\n\nmodule.exports = version;\n","'use strict';\n// IE8- don't enum bug keys\nmodule.exports = [\n 'constructor',\n 'hasOwnProperty',\n 'isPrototypeOf',\n 'propertyIsEnumerable',\n 'toLocaleString',\n 'toString',\n 'valueOf'\n];\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nvar $Error = Error;\nvar replace = uncurryThis(''.replace);\n\nvar TEST = (function (arg) { return String(new $Error(arg).stack); })('zxcasd');\n// eslint-disable-next-line redos/no-vulnerable -- safe\nvar V8_OR_CHAKRA_STACK_ENTRY = /\\n\\s*at [^:]*:[^\\n]*/;\nvar IS_V8_OR_CHAKRA_STACK = V8_OR_CHAKRA_STACK_ENTRY.test(TEST);\n\nmodule.exports = function (stack, dropEntries) {\n if (IS_V8_OR_CHAKRA_STACK && typeof stack == 'string' && !$Error.prepareStackTrace) {\n while (dropEntries--) stack = replace(stack, V8_OR_CHAKRA_STACK_ENTRY, '');\n } return stack;\n};\n","'use strict';\nvar global = require('../internals/global');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar defineGlobalProperty = require('../internals/define-global-property');\nvar copyConstructorProperties = require('../internals/copy-constructor-properties');\nvar isForced = require('../internals/is-forced');\n\n/*\n options.target - name of the target object\n options.global - target is the global object\n options.stat - export as static methods of target\n options.proto - export as prototype methods of target\n options.real - real prototype method for the `pure` version\n options.forced - export even if the native feature is available\n options.bind - bind methods to the target, required for the `pure` version\n options.wrap - wrap constructors to preventing global pollution, required for the `pure` version\n options.unsafe - use the simple assignment of property instead of delete + defineProperty\n options.sham - add a flag to not completely full polyfills\n options.enumerable - export as enumerable property\n options.dontCallGetSet - prevent calling a getter on target\n options.name - the .name of the function if it does not match the key\n*/\nmodule.exports = function (options, source) {\n var TARGET = options.target;\n var GLOBAL = options.global;\n var STATIC = options.stat;\n var FORCED, target, key, targetProperty, sourceProperty, descriptor;\n if (GLOBAL) {\n target = global;\n } else if (STATIC) {\n target = global[TARGET] || defineGlobalProperty(TARGET, {});\n } else {\n target = global[TARGET] && global[TARGET].prototype;\n }\n if (target) for (key in source) {\n sourceProperty = source[key];\n if (options.dontCallGetSet) {\n descriptor = getOwnPropertyDescriptor(target, key);\n targetProperty = descriptor && descriptor.value;\n } else targetProperty = target[key];\n FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);\n // contained in target\n if (!FORCED && targetProperty !== undefined) {\n if (typeof sourceProperty == typeof targetProperty) continue;\n copyConstructorProperties(sourceProperty, targetProperty);\n }\n // add a flag to not completely full polyfills\n if (options.sham || (targetProperty && targetProperty.sham)) {\n createNonEnumerableProperty(sourceProperty, 'sham', true);\n }\n defineBuiltIn(target, key, sourceProperty, options);\n }\n};\n","'use strict';\nmodule.exports = function (exec) {\n try {\n return !!exec();\n } catch (error) {\n return true;\n }\n};\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-function-prototype-bind -- safe\n var test = (function () { /* empty */ }).bind();\n // eslint-disable-next-line no-prototype-builtins -- safe\n return typeof test != 'function' || test.hasOwnProperty('prototype');\n});\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar call = Function.prototype.call;\n\nmodule.exports = NATIVE_BIND ? call.bind(call) : function () {\n return call.apply(call, arguments);\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar hasOwn = require('../internals/has-own-property');\n\nvar FunctionPrototype = Function.prototype;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar getDescriptor = DESCRIPTORS && Object.getOwnPropertyDescriptor;\n\nvar EXISTS = hasOwn(FunctionPrototype, 'name');\n// additional protection from minified / mangled / dropped function names\nvar PROPER = EXISTS && (function something() { /* empty */ }).name === 'something';\nvar CONFIGURABLE = EXISTS && (!DESCRIPTORS || (DESCRIPTORS && getDescriptor(FunctionPrototype, 'name').configurable));\n\nmodule.exports = {\n EXISTS: EXISTS,\n PROPER: PROPER,\n CONFIGURABLE: CONFIGURABLE\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar aCallable = require('../internals/a-callable');\n\nmodule.exports = function (object, key, method) {\n try {\n // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\n return uncurryThis(aCallable(Object.getOwnPropertyDescriptor(object, key)[method]));\n } catch (error) { /* empty */ }\n};\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar FunctionPrototype = Function.prototype;\nvar call = FunctionPrototype.call;\nvar uncurryThisWithBind = NATIVE_BIND && FunctionPrototype.bind.bind(call, call);\n\nmodule.exports = NATIVE_BIND ? uncurryThisWithBind : function (fn) {\n return function () {\n return call.apply(fn, arguments);\n };\n};\n","'use strict';\nvar global = require('../internals/global');\nvar isCallable = require('../internals/is-callable');\n\nvar aFunction = function (argument) {\n return isCallable(argument) ? argument : undefined;\n};\n\nmodule.exports = function (namespace, method) {\n return arguments.length < 2 ? aFunction(global[namespace]) : global[namespace] && global[namespace][method];\n};\n","'use strict';\nvar aCallable = require('../internals/a-callable');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\n\n// `GetMethod` abstract operation\n// https://tc39.es/ecma262/#sec-getmethod\nmodule.exports = function (V, P) {\n var func = V[P];\n return isNullOrUndefined(func) ? undefined : aCallable(func);\n};\n","'use strict';\nvar check = function (it) {\n return it && it.Math === Math && it;\n};\n\n// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nmodule.exports =\n // eslint-disable-next-line es/no-global-this -- safe\n check(typeof globalThis == 'object' && globalThis) ||\n check(typeof window == 'object' && window) ||\n // eslint-disable-next-line no-restricted-globals -- safe\n check(typeof self == 'object' && self) ||\n check(typeof global == 'object' && global) ||\n check(typeof this == 'object' && this) ||\n // eslint-disable-next-line no-new-func -- fallback\n (function () { return this; })() || Function('return this')();\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar toObject = require('../internals/to-object');\n\nvar hasOwnProperty = uncurryThis({}.hasOwnProperty);\n\n// `HasOwnProperty` abstract operation\n// https://tc39.es/ecma262/#sec-hasownproperty\n// eslint-disable-next-line es/no-object-hasown -- safe\nmodule.exports = Object.hasOwn || function hasOwn(it, key) {\n return hasOwnProperty(toObject(it), key);\n};\n","'use strict';\nmodule.exports = {};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\nvar createElement = require('../internals/document-create-element');\n\n// Thanks to IE8 for its funny defineProperty\nmodule.exports = !DESCRIPTORS && !fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty(createElement('div'), 'a', {\n get: function () { return 7; }\n }).a !== 7;\n});\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar classof = require('../internals/classof-raw');\n\nvar $Object = Object;\nvar split = uncurryThis(''.split);\n\n// fallback for non-array-like ES3 and non-enumerable old V8 strings\nmodule.exports = fails(function () {\n // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346\n // eslint-disable-next-line no-prototype-builtins -- safe\n return !$Object('z').propertyIsEnumerable(0);\n}) ? function (it) {\n return classof(it) === 'String' ? split(it, '') : $Object(it);\n} : $Object;\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\n\n// makes subclassing work correct for wrapped built-ins\nmodule.exports = function ($this, dummy, Wrapper) {\n var NewTarget, NewTargetPrototype;\n if (\n // it can work only with native `setPrototypeOf`\n setPrototypeOf &&\n // we haven't completely correct pre-ES6 way for getting `new.target`, so use this\n isCallable(NewTarget = dummy.constructor) &&\n NewTarget !== Wrapper &&\n isObject(NewTargetPrototype = NewTarget.prototype) &&\n NewTargetPrototype !== Wrapper.prototype\n ) setPrototypeOf($this, NewTargetPrototype);\n return $this;\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar isCallable = require('../internals/is-callable');\nvar store = require('../internals/shared-store');\n\nvar functionToString = uncurryThis(Function.toString);\n\n// this helper broken in `core-js@3.4.1-3.4.4`, so we can't use `shared` helper\nif (!isCallable(store.inspectSource)) {\n store.inspectSource = function (it) {\n return functionToString(it);\n };\n}\n\nmodule.exports = store.inspectSource;\n","'use strict';\nvar NATIVE_WEAK_MAP = require('../internals/weak-map-basic-detection');\nvar global = require('../internals/global');\nvar isObject = require('../internals/is-object');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar hasOwn = require('../internals/has-own-property');\nvar shared = require('../internals/shared-store');\nvar sharedKey = require('../internals/shared-key');\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar OBJECT_ALREADY_INITIALIZED = 'Object already initialized';\nvar TypeError = global.TypeError;\nvar WeakMap = global.WeakMap;\nvar set, get, has;\n\nvar enforce = function (it) {\n return has(it) ? get(it) : set(it, {});\n};\n\nvar getterFor = function (TYPE) {\n return function (it) {\n var state;\n if (!isObject(it) || (state = get(it)).type !== TYPE) {\n throw new TypeError('Incompatible receiver, ' + TYPE + ' required');\n } return state;\n };\n};\n\nif (NATIVE_WEAK_MAP || shared.state) {\n var store = shared.state || (shared.state = new WeakMap());\n /* eslint-disable no-self-assign -- prototype methods protection */\n store.get = store.get;\n store.has = store.has;\n store.set = store.set;\n /* eslint-enable no-self-assign -- prototype methods protection */\n set = function (it, metadata) {\n if (store.has(it)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n store.set(it, metadata);\n return metadata;\n };\n get = function (it) {\n return store.get(it) || {};\n };\n has = function (it) {\n return store.has(it);\n };\n} else {\n var STATE = sharedKey('state');\n hiddenKeys[STATE] = true;\n set = function (it, metadata) {\n if (hasOwn(it, STATE)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n createNonEnumerableProperty(it, STATE, metadata);\n return metadata;\n };\n get = function (it) {\n return hasOwn(it, STATE) ? it[STATE] : {};\n };\n has = function (it) {\n return hasOwn(it, STATE);\n };\n}\n\nmodule.exports = {\n set: set,\n get: get,\n has: has,\n enforce: enforce,\n getterFor: getterFor\n};\n","'use strict';\nvar classof = require('../internals/classof-raw');\n\n// `IsArray` abstract operation\n// https://tc39.es/ecma262/#sec-isarray\n// eslint-disable-next-line es/no-array-isarray -- safe\nmodule.exports = Array.isArray || function isArray(argument) {\n return classof(argument) === 'Array';\n};\n","'use strict';\nvar classof = require('../internals/classof');\n\nmodule.exports = function (it) {\n var klass = classof(it);\n return klass === 'BigInt64Array' || klass === 'BigUint64Array';\n};\n","'use strict';\n// https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot\nvar documentAll = typeof document == 'object' && document.all;\n\n// `IsCallable` abstract operation\n// https://tc39.es/ecma262/#sec-iscallable\n// eslint-disable-next-line unicorn/no-typeof-undefined -- required for testing\nmodule.exports = typeof documentAll == 'undefined' && documentAll !== undefined ? function (argument) {\n return typeof argument == 'function' || argument === documentAll;\n} : function (argument) {\n return typeof argument == 'function';\n};\n","'use strict';\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\n\nvar replacement = /#|\\.prototype\\./;\n\nvar isForced = function (feature, detection) {\n var value = data[normalize(feature)];\n return value === POLYFILL ? true\n : value === NATIVE ? false\n : isCallable(detection) ? fails(detection)\n : !!detection;\n};\n\nvar normalize = isForced.normalize = function (string) {\n return String(string).replace(replacement, '.').toLowerCase();\n};\n\nvar data = isForced.data = {};\nvar NATIVE = isForced.NATIVE = 'N';\nvar POLYFILL = isForced.POLYFILL = 'P';\n\nmodule.exports = isForced;\n","'use strict';\n// we can't use just `it == null` since of `document.all` special case\n// https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot-aec\nmodule.exports = function (it) {\n return it === null || it === undefined;\n};\n","'use strict';\nvar isCallable = require('../internals/is-callable');\n\nmodule.exports = function (it) {\n return typeof it == 'object' ? it !== null : isCallable(it);\n};\n","'use strict';\nvar isObject = require('../internals/is-object');\n\nmodule.exports = function (argument) {\n return isObject(argument) || argument === null;\n};\n","'use strict';\nmodule.exports = false;\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar isCallable = require('../internals/is-callable');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar $Object = Object;\n\nmodule.exports = USE_SYMBOL_AS_UID ? function (it) {\n return typeof it == 'symbol';\n} : function (it) {\n var $Symbol = getBuiltIn('Symbol');\n return isCallable($Symbol) && isPrototypeOf($Symbol.prototype, $Object(it));\n};\n","'use strict';\nvar toLength = require('../internals/to-length');\n\n// `LengthOfArrayLike` abstract operation\n// https://tc39.es/ecma262/#sec-lengthofarraylike\nmodule.exports = function (obj) {\n return toLength(obj.length);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar hasOwn = require('../internals/has-own-property');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar CONFIGURABLE_FUNCTION_NAME = require('../internals/function-name').CONFIGURABLE;\nvar inspectSource = require('../internals/inspect-source');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar enforceInternalState = InternalStateModule.enforce;\nvar getInternalState = InternalStateModule.get;\nvar $String = String;\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar defineProperty = Object.defineProperty;\nvar stringSlice = uncurryThis(''.slice);\nvar replace = uncurryThis(''.replace);\nvar join = uncurryThis([].join);\n\nvar CONFIGURABLE_LENGTH = DESCRIPTORS && !fails(function () {\n return defineProperty(function () { /* empty */ }, 'length', { value: 8 }).length !== 8;\n});\n\nvar TEMPLATE = String(String).split('String');\n\nvar makeBuiltIn = module.exports = function (value, name, options) {\n if (stringSlice($String(name), 0, 7) === 'Symbol(') {\n name = '[' + replace($String(name), /^Symbol\\(([^)]*)\\).*$/, '$1') + ']';\n }\n if (options && options.getter) name = 'get ' + name;\n if (options && options.setter) name = 'set ' + name;\n if (!hasOwn(value, 'name') || (CONFIGURABLE_FUNCTION_NAME && value.name !== name)) {\n if (DESCRIPTORS) defineProperty(value, 'name', { value: name, configurable: true });\n else value.name = name;\n }\n if (CONFIGURABLE_LENGTH && options && hasOwn(options, 'arity') && value.length !== options.arity) {\n defineProperty(value, 'length', { value: options.arity });\n }\n try {\n if (options && hasOwn(options, 'constructor') && options.constructor) {\n if (DESCRIPTORS) defineProperty(value, 'prototype', { writable: false });\n // in V8 ~ Chrome 53, prototypes of some methods, like `Array.prototype.values`, are non-writable\n } else if (value.prototype) value.prototype = undefined;\n } catch (error) { /* empty */ }\n var state = enforceInternalState(value);\n if (!hasOwn(state, 'source')) {\n state.source = join(TEMPLATE, typeof name == 'string' ? name : '');\n } return value;\n};\n\n// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative\n// eslint-disable-next-line no-extend-native -- required\nFunction.prototype.toString = makeBuiltIn(function toString() {\n return isCallable(this) && getInternalState(this).source || inspectSource(this);\n}, 'toString');\n","'use strict';\nvar ceil = Math.ceil;\nvar floor = Math.floor;\n\n// `Math.trunc` method\n// https://tc39.es/ecma262/#sec-math.trunc\n// eslint-disable-next-line es/no-math-trunc -- safe\nmodule.exports = Math.trunc || function trunc(x) {\n var n = +x;\n return (n > 0 ? floor : ceil)(n);\n};\n","'use strict';\nvar toString = require('../internals/to-string');\n\nmodule.exports = function (argument, $default) {\n return argument === undefined ? arguments.length < 2 ? '' : $default : toString(argument);\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\nvar V8_PROTOTYPE_DEFINE_BUG = require('../internals/v8-prototype-define-bug');\nvar anObject = require('../internals/an-object');\nvar toPropertyKey = require('../internals/to-property-key');\n\nvar $TypeError = TypeError;\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar $defineProperty = Object.defineProperty;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\nvar ENUMERABLE = 'enumerable';\nvar CONFIGURABLE = 'configurable';\nvar WRITABLE = 'writable';\n\n// `Object.defineProperty` method\n// https://tc39.es/ecma262/#sec-object.defineproperty\nexports.f = DESCRIPTORS ? V8_PROTOTYPE_DEFINE_BUG ? function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPropertyKey(P);\n anObject(Attributes);\n if (typeof O === 'function' && P === 'prototype' && 'value' in Attributes && WRITABLE in Attributes && !Attributes[WRITABLE]) {\n var current = $getOwnPropertyDescriptor(O, P);\n if (current && current[WRITABLE]) {\n O[P] = Attributes.value;\n Attributes = {\n configurable: CONFIGURABLE in Attributes ? Attributes[CONFIGURABLE] : current[CONFIGURABLE],\n enumerable: ENUMERABLE in Attributes ? Attributes[ENUMERABLE] : current[ENUMERABLE],\n writable: false\n };\n }\n } return $defineProperty(O, P, Attributes);\n} : $defineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPropertyKey(P);\n anObject(Attributes);\n if (IE8_DOM_DEFINE) try {\n return $defineProperty(O, P, Attributes);\n } catch (error) { /* empty */ }\n if ('get' in Attributes || 'set' in Attributes) throw new $TypeError('Accessors not supported');\n if ('value' in Attributes) O[P] = Attributes.value;\n return O;\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar call = require('../internals/function-call');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toPropertyKey = require('../internals/to-property-key');\nvar hasOwn = require('../internals/has-own-property');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\n\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// `Object.getOwnPropertyDescriptor` method\n// https://tc39.es/ecma262/#sec-object.getownpropertydescriptor\nexports.f = DESCRIPTORS ? $getOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {\n O = toIndexedObject(O);\n P = toPropertyKey(P);\n if (IE8_DOM_DEFINE) try {\n return $getOwnPropertyDescriptor(O, P);\n } catch (error) { /* empty */ }\n if (hasOwn(O, P)) return createPropertyDescriptor(!call(propertyIsEnumerableModule.f, O, P), O[P]);\n};\n","'use strict';\nvar internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\nvar hiddenKeys = enumBugKeys.concat('length', 'prototype');\n\n// `Object.getOwnPropertyNames` method\n// https://tc39.es/ecma262/#sec-object.getownpropertynames\n// eslint-disable-next-line es/no-object-getownpropertynames -- safe\nexports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {\n return internalObjectKeys(O, hiddenKeys);\n};\n","'use strict';\n// eslint-disable-next-line es/no-object-getownpropertysymbols -- safe\nexports.f = Object.getOwnPropertySymbols;\n","'use strict';\nvar hasOwn = require('../internals/has-own-property');\nvar isCallable = require('../internals/is-callable');\nvar toObject = require('../internals/to-object');\nvar sharedKey = require('../internals/shared-key');\nvar CORRECT_PROTOTYPE_GETTER = require('../internals/correct-prototype-getter');\n\nvar IE_PROTO = sharedKey('IE_PROTO');\nvar $Object = Object;\nvar ObjectPrototype = $Object.prototype;\n\n// `Object.getPrototypeOf` method\n// https://tc39.es/ecma262/#sec-object.getprototypeof\n// eslint-disable-next-line es/no-object-getprototypeof -- safe\nmodule.exports = CORRECT_PROTOTYPE_GETTER ? $Object.getPrototypeOf : function (O) {\n var object = toObject(O);\n if (hasOwn(object, IE_PROTO)) return object[IE_PROTO];\n var constructor = object.constructor;\n if (isCallable(constructor) && object instanceof constructor) {\n return constructor.prototype;\n } return object instanceof $Object ? ObjectPrototype : null;\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = uncurryThis({}.isPrototypeOf);\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar hasOwn = require('../internals/has-own-property');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar indexOf = require('../internals/array-includes').indexOf;\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar push = uncurryThis([].push);\n\nmodule.exports = function (object, names) {\n var O = toIndexedObject(object);\n var i = 0;\n var result = [];\n var key;\n for (key in O) !hasOwn(hiddenKeys, key) && hasOwn(O, key) && push(result, key);\n // Don't enum bug & hidden keys\n while (names.length > i) if (hasOwn(O, key = names[i++])) {\n ~indexOf(result, key) || push(result, key);\n }\n return result;\n};\n","'use strict';\nvar $propertyIsEnumerable = {}.propertyIsEnumerable;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// Nashorn ~ JDK8 bug\nvar NASHORN_BUG = getOwnPropertyDescriptor && !$propertyIsEnumerable.call({ 1: 2 }, 1);\n\n// `Object.prototype.propertyIsEnumerable` method implementation\n// https://tc39.es/ecma262/#sec-object.prototype.propertyisenumerable\nexports.f = NASHORN_BUG ? function propertyIsEnumerable(V) {\n var descriptor = getOwnPropertyDescriptor(this, V);\n return !!descriptor && descriptor.enumerable;\n} : $propertyIsEnumerable;\n","'use strict';\n/* eslint-disable no-proto -- safe */\nvar uncurryThisAccessor = require('../internals/function-uncurry-this-accessor');\nvar isObject = require('../internals/is-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar aPossiblePrototype = require('../internals/a-possible-prototype');\n\n// `Object.setPrototypeOf` method\n// https://tc39.es/ecma262/#sec-object.setprototypeof\n// Works with __proto__ only. Old v8 can't work with null proto objects.\n// eslint-disable-next-line es/no-object-setprototypeof -- safe\nmodule.exports = Object.setPrototypeOf || ('__proto__' in {} ? function () {\n var CORRECT_SETTER = false;\n var test = {};\n var setter;\n try {\n setter = uncurryThisAccessor(Object.prototype, '__proto__', 'set');\n setter(test, []);\n CORRECT_SETTER = test instanceof Array;\n } catch (error) { /* empty */ }\n return function setPrototypeOf(O, proto) {\n requireObjectCoercible(O);\n aPossiblePrototype(proto);\n if (!isObject(O)) return O;\n if (CORRECT_SETTER) setter(O, proto);\n else O.__proto__ = proto;\n return O;\n };\n}() : undefined);\n","'use strict';\nvar call = require('../internals/function-call');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\n\nvar $TypeError = TypeError;\n\n// `OrdinaryToPrimitive` abstract operation\n// https://tc39.es/ecma262/#sec-ordinarytoprimitive\nmodule.exports = function (input, pref) {\n var fn, val;\n if (pref === 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;\n if (isCallable(fn = input.valueOf) && !isObject(val = call(fn, input))) return val;\n if (pref !== 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;\n throw new $TypeError(\"Can't convert object to primitive value\");\n};\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar anObject = require('../internals/an-object');\n\nvar concat = uncurryThis([].concat);\n\n// all object keys, includes non-enumerable and symbols\nmodule.exports = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) {\n var keys = getOwnPropertyNamesModule.f(anObject(it));\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n return getOwnPropertySymbols ? concat(keys, getOwnPropertySymbols(it)) : keys;\n};\n","'use strict';\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\n\nvar $TypeError = TypeError;\n\n// `RequireObjectCoercible` abstract operation\n// https://tc39.es/ecma262/#sec-requireobjectcoercible\nmodule.exports = function (it) {\n if (isNullOrUndefined(it)) throw new $TypeError(\"Can't call method on \" + it);\n return it;\n};\n","'use strict';\nvar shared = require('../internals/shared');\nvar uid = require('../internals/uid');\n\nvar keys = shared('keys');\n\nmodule.exports = function (key) {\n return keys[key] || (keys[key] = uid(key));\n};\n","'use strict';\nvar IS_PURE = require('../internals/is-pure');\nvar globalThis = require('../internals/global');\nvar defineGlobalProperty = require('../internals/define-global-property');\n\nvar SHARED = '__core-js_shared__';\nvar store = module.exports = globalThis[SHARED] || defineGlobalProperty(SHARED, {});\n\n(store.versions || (store.versions = [])).push({\n version: '3.37.1',\n mode: IS_PURE ? 'pure' : 'global',\n copyright: '© 2014-2024 Denis Pushkarev (zloirock.ru)',\n license: 'https://github.com/zloirock/core-js/blob/v3.37.1/LICENSE',\n source: 'https://github.com/zloirock/core-js'\n});\n","'use strict';\nvar store = require('../internals/shared-store');\n\nmodule.exports = function (key, value) {\n return store[key] || (store[key] = value || {});\n};\n","'use strict';\nvar global = require('../internals/global');\nvar fails = require('../internals/fails');\nvar V8 = require('../internals/engine-v8-version');\nvar IS_BROWSER = require('../internals/engine-is-browser');\nvar IS_DENO = require('../internals/engine-is-deno');\nvar IS_NODE = require('../internals/engine-is-node');\n\nvar structuredClone = global.structuredClone;\n\nmodule.exports = !!structuredClone && !fails(function () {\n // prevent V8 ArrayBufferDetaching protector cell invalidation and performance degradation\n // https://github.com/zloirock/core-js/issues/679\n if ((IS_DENO && V8 > 92) || (IS_NODE && V8 > 94) || (IS_BROWSER && V8 > 97)) return false;\n var buffer = new ArrayBuffer(8);\n var clone = structuredClone(buffer, { transfer: [buffer] });\n return buffer.byteLength !== 0 || clone.byteLength !== 8;\n});\n","'use strict';\n/* eslint-disable es/no-symbol -- required for testing */\nvar V8_VERSION = require('../internals/engine-v8-version');\nvar fails = require('../internals/fails');\nvar global = require('../internals/global');\n\nvar $String = global.String;\n\n// eslint-disable-next-line es/no-object-getownpropertysymbols -- required for testing\nmodule.exports = !!Object.getOwnPropertySymbols && !fails(function () {\n var symbol = Symbol('symbol detection');\n // Chrome 38 Symbol has incorrect toString conversion\n // `get-own-property-symbols` polyfill symbols converted to object are not Symbol instances\n // nb: Do not call `String` directly to avoid this being optimized out to `symbol+''` which will,\n // of course, fail.\n return !$String(symbol) || !(Object(symbol) instanceof Symbol) ||\n // Chrome 38-40 symbols are not inherited from DOM collections prototypes to instances\n !Symbol.sham && V8_VERSION && V8_VERSION < 41;\n});\n","'use strict';\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\n\nvar max = Math.max;\nvar min = Math.min;\n\n// Helper for a popular repeating case of the spec:\n// Let integer be ? ToInteger(index).\n// If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length).\nmodule.exports = function (index, length) {\n var integer = toIntegerOrInfinity(index);\n return integer < 0 ? max(integer + length, 0) : min(integer, length);\n};\n","'use strict';\nvar toPrimitive = require('../internals/to-primitive');\n\nvar $TypeError = TypeError;\n\n// `ToBigInt` abstract operation\n// https://tc39.es/ecma262/#sec-tobigint\nmodule.exports = function (argument) {\n var prim = toPrimitive(argument, 'number');\n if (typeof prim == 'number') throw new $TypeError(\"Can't convert number to bigint\");\n // eslint-disable-next-line es/no-bigint -- safe\n return BigInt(prim);\n};\n","'use strict';\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\nvar toLength = require('../internals/to-length');\n\nvar $RangeError = RangeError;\n\n// `ToIndex` abstract operation\n// https://tc39.es/ecma262/#sec-toindex\nmodule.exports = function (it) {\n if (it === undefined) return 0;\n var number = toIntegerOrInfinity(it);\n var length = toLength(number);\n if (number !== length) throw new $RangeError('Wrong length or index');\n return length;\n};\n","'use strict';\n// toObject with fallback for non-array-like ES3 strings\nvar IndexedObject = require('../internals/indexed-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nmodule.exports = function (it) {\n return IndexedObject(requireObjectCoercible(it));\n};\n","'use strict';\nvar trunc = require('../internals/math-trunc');\n\n// `ToIntegerOrInfinity` abstract operation\n// https://tc39.es/ecma262/#sec-tointegerorinfinity\nmodule.exports = function (argument) {\n var number = +argument;\n // eslint-disable-next-line no-self-compare -- NaN check\n return number !== number || number === 0 ? 0 : trunc(number);\n};\n","'use strict';\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\n\nvar min = Math.min;\n\n// `ToLength` abstract operation\n// https://tc39.es/ecma262/#sec-tolength\nmodule.exports = function (argument) {\n var len = toIntegerOrInfinity(argument);\n return len > 0 ? min(len, 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991\n};\n","'use strict';\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nvar $Object = Object;\n\n// `ToObject` abstract operation\n// https://tc39.es/ecma262/#sec-toobject\nmodule.exports = function (argument) {\n return $Object(requireObjectCoercible(argument));\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar isObject = require('../internals/is-object');\nvar isSymbol = require('../internals/is-symbol');\nvar getMethod = require('../internals/get-method');\nvar ordinaryToPrimitive = require('../internals/ordinary-to-primitive');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar $TypeError = TypeError;\nvar TO_PRIMITIVE = wellKnownSymbol('toPrimitive');\n\n// `ToPrimitive` abstract operation\n// https://tc39.es/ecma262/#sec-toprimitive\nmodule.exports = function (input, pref) {\n if (!isObject(input) || isSymbol(input)) return input;\n var exoticToPrim = getMethod(input, TO_PRIMITIVE);\n var result;\n if (exoticToPrim) {\n if (pref === undefined) pref = 'default';\n result = call(exoticToPrim, input, pref);\n if (!isObject(result) || isSymbol(result)) return result;\n throw new $TypeError(\"Can't convert object to primitive value\");\n }\n if (pref === undefined) pref = 'number';\n return ordinaryToPrimitive(input, pref);\n};\n","'use strict';\nvar toPrimitive = require('../internals/to-primitive');\nvar isSymbol = require('../internals/is-symbol');\n\n// `ToPropertyKey` abstract operation\n// https://tc39.es/ecma262/#sec-topropertykey\nmodule.exports = function (argument) {\n var key = toPrimitive(argument, 'string');\n return isSymbol(key) ? key : key + '';\n};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar test = {};\n\ntest[TO_STRING_TAG] = 'z';\n\nmodule.exports = String(test) === '[object z]';\n","'use strict';\nvar classof = require('../internals/classof');\n\nvar $String = String;\n\nmodule.exports = function (argument) {\n if (classof(argument) === 'Symbol') throw new TypeError('Cannot convert a Symbol value to a string');\n return $String(argument);\n};\n","'use strict';\nvar IS_NODE = require('../internals/engine-is-node');\n\nmodule.exports = function (name) {\n try {\n // eslint-disable-next-line no-new-func -- safe\n if (IS_NODE) return Function('return require(\"' + name + '\")')();\n } catch (error) { /* empty */ }\n};\n","'use strict';\nvar $String = String;\n\nmodule.exports = function (argument) {\n try {\n return $String(argument);\n } catch (error) {\n return 'Object';\n }\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nvar id = 0;\nvar postfix = Math.random();\nvar toString = uncurryThis(1.0.toString);\n\nmodule.exports = function (key) {\n return 'Symbol(' + (key === undefined ? '' : key) + ')_' + toString(++id + postfix, 36);\n};\n","'use strict';\n/* eslint-disable es/no-symbol -- required for testing */\nvar NATIVE_SYMBOL = require('../internals/symbol-constructor-detection');\n\nmodule.exports = NATIVE_SYMBOL\n && !Symbol.sham\n && typeof Symbol.iterator == 'symbol';\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\n\n// V8 ~ Chrome 36-\n// https://bugs.chromium.org/p/v8/issues/detail?id=3334\nmodule.exports = DESCRIPTORS && fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty(function () { /* empty */ }, 'prototype', {\n value: 42,\n writable: false\n }).prototype !== 42;\n});\n","'use strict';\nvar $TypeError = TypeError;\n\nmodule.exports = function (passed, required) {\n if (passed < required) throw new $TypeError('Not enough arguments');\n return passed;\n};\n","'use strict';\nvar global = require('../internals/global');\nvar isCallable = require('../internals/is-callable');\n\nvar WeakMap = global.WeakMap;\n\nmodule.exports = isCallable(WeakMap) && /native code/.test(String(WeakMap));\n","'use strict';\nvar global = require('../internals/global');\nvar shared = require('../internals/shared');\nvar hasOwn = require('../internals/has-own-property');\nvar uid = require('../internals/uid');\nvar NATIVE_SYMBOL = require('../internals/symbol-constructor-detection');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar Symbol = global.Symbol;\nvar WellKnownSymbolsStore = shared('wks');\nvar createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol['for'] || Symbol : Symbol && Symbol.withoutSetter || uid;\n\nmodule.exports = function (name) {\n if (!hasOwn(WellKnownSymbolsStore, name)) {\n WellKnownSymbolsStore[name] = NATIVE_SYMBOL && hasOwn(Symbol, name)\n ? Symbol[name]\n : createWellKnownSymbol('Symbol.' + name);\n } return WellKnownSymbolsStore[name];\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar defineBuiltInAccessor = require('../internals/define-built-in-accessor');\nvar isDetached = require('../internals/array-buffer-is-detached');\n\nvar ArrayBufferPrototype = ArrayBuffer.prototype;\n\nif (DESCRIPTORS && !('detached' in ArrayBufferPrototype)) {\n defineBuiltInAccessor(ArrayBufferPrototype, 'detached', {\n configurable: true,\n get: function detached() {\n return isDetached(this);\n }\n });\n}\n","'use strict';\nvar $ = require('../internals/export');\nvar $transfer = require('../internals/array-buffer-transfer');\n\n// `ArrayBuffer.prototype.transferToFixedLength` method\n// https://tc39.es/proposal-arraybuffer-transfer/#sec-arraybuffer.prototype.transfertofixedlength\nif ($transfer) $({ target: 'ArrayBuffer', proto: true }, {\n transferToFixedLength: function transferToFixedLength() {\n return $transfer(this, arguments.length ? arguments[0] : undefined, false);\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar $transfer = require('../internals/array-buffer-transfer');\n\n// `ArrayBuffer.prototype.transfer` method\n// https://tc39.es/proposal-arraybuffer-transfer/#sec-arraybuffer.prototype.transfer\nif ($transfer) $({ target: 'ArrayBuffer', proto: true }, {\n transfer: function transfer() {\n return $transfer(this, arguments.length ? arguments[0] : undefined, true);\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar toObject = require('../internals/to-object');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar setArrayLength = require('../internals/array-set-length');\nvar doesNotExceedSafeInteger = require('../internals/does-not-exceed-safe-integer');\nvar fails = require('../internals/fails');\n\nvar INCORRECT_TO_LENGTH = fails(function () {\n return [].push.call({ length: 0x100000000 }, 1) !== 4294967297;\n});\n\n// V8 <= 121 and Safari <= 15.4; FF < 23 throws InternalError\n// https://bugs.chromium.org/p/v8/issues/detail?id=12681\nvar properErrorOnNonWritableLength = function () {\n try {\n // eslint-disable-next-line es/no-object-defineproperty -- safe\n Object.defineProperty([], 'length', { writable: false }).push();\n } catch (error) {\n return error instanceof TypeError;\n }\n};\n\nvar FORCED = INCORRECT_TO_LENGTH || !properErrorOnNonWritableLength();\n\n// `Array.prototype.push` method\n// https://tc39.es/ecma262/#sec-array.prototype.push\n$({ target: 'Array', proto: true, arity: 1, forced: FORCED }, {\n // eslint-disable-next-line no-unused-vars -- required for `.length`\n push: function push(item) {\n var O = toObject(this);\n var len = lengthOfArrayLike(O);\n var argCount = arguments.length;\n doesNotExceedSafeInteger(len + argCount);\n for (var i = 0; i < argCount; i++) {\n O[len] = arguments[i];\n len++;\n }\n setArrayLength(O, len);\n return len;\n }\n});\n","'use strict';\nvar arrayToReversed = require('../internals/array-to-reversed');\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\n\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\nvar getTypedArrayConstructor = ArrayBufferViewCore.getTypedArrayConstructor;\n\n// `%TypedArray%.prototype.toReversed` method\n// https://tc39.es/ecma262/#sec-%typedarray%.prototype.toreversed\nexportTypedArrayMethod('toReversed', function toReversed() {\n return arrayToReversed(aTypedArray(this), getTypedArrayConstructor(this));\n});\n","'use strict';\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar aCallable = require('../internals/a-callable');\nvar arrayFromConstructorAndList = require('../internals/array-from-constructor-and-list');\n\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar getTypedArrayConstructor = ArrayBufferViewCore.getTypedArrayConstructor;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\nvar sort = uncurryThis(ArrayBufferViewCore.TypedArrayPrototype.sort);\n\n// `%TypedArray%.prototype.toSorted` method\n// https://tc39.es/ecma262/#sec-%typedarray%.prototype.tosorted\nexportTypedArrayMethod('toSorted', function toSorted(compareFn) {\n if (compareFn !== undefined) aCallable(compareFn);\n var O = aTypedArray(this);\n var A = arrayFromConstructorAndList(getTypedArrayConstructor(O), O);\n return sort(A, compareFn);\n});\n","'use strict';\nvar arrayWith = require('../internals/array-with');\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\nvar isBigIntArray = require('../internals/is-big-int-array');\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\nvar toBigInt = require('../internals/to-big-int');\n\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar getTypedArrayConstructor = ArrayBufferViewCore.getTypedArrayConstructor;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\n\nvar PROPER_ORDER = !!function () {\n try {\n // eslint-disable-next-line no-throw-literal, es/no-typed-arrays, es/no-array-prototype-with -- required for testing\n new Int8Array(1)['with'](2, { valueOf: function () { throw 8; } });\n } catch (error) {\n // some early implementations, like WebKit, does not follow the final semantic\n // https://github.com/tc39/proposal-change-array-by-copy/pull/86\n return error === 8;\n }\n}();\n\n// `%TypedArray%.prototype.with` method\n// https://tc39.es/ecma262/#sec-%typedarray%.prototype.with\nexportTypedArrayMethod('with', { 'with': function (index, value) {\n var O = aTypedArray(this);\n var relativeIndex = toIntegerOrInfinity(index);\n var actualValue = isBigIntArray(O) ? toBigInt(value) : +value;\n return arrayWith(O, getTypedArrayConstructor(O), relativeIndex, actualValue);\n} }['with'], !PROPER_ORDER);\n","'use strict';\nvar $ = require('../internals/export');\nvar global = require('../internals/global');\nvar getBuiltIn = require('../internals/get-built-in');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar defineProperty = require('../internals/object-define-property').f;\nvar hasOwn = require('../internals/has-own-property');\nvar anInstance = require('../internals/an-instance');\nvar inheritIfRequired = require('../internals/inherit-if-required');\nvar normalizeStringArgument = require('../internals/normalize-string-argument');\nvar DOMExceptionConstants = require('../internals/dom-exception-constants');\nvar clearErrorStack = require('../internals/error-stack-clear');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar IS_PURE = require('../internals/is-pure');\n\nvar DOM_EXCEPTION = 'DOMException';\nvar Error = getBuiltIn('Error');\nvar NativeDOMException = getBuiltIn(DOM_EXCEPTION);\n\nvar $DOMException = function DOMException() {\n anInstance(this, DOMExceptionPrototype);\n var argumentsLength = arguments.length;\n var message = normalizeStringArgument(argumentsLength < 1 ? undefined : arguments[0]);\n var name = normalizeStringArgument(argumentsLength < 2 ? undefined : arguments[1], 'Error');\n var that = new NativeDOMException(message, name);\n var error = new Error(message);\n error.name = DOM_EXCEPTION;\n defineProperty(that, 'stack', createPropertyDescriptor(1, clearErrorStack(error.stack, 1)));\n inheritIfRequired(that, this, $DOMException);\n return that;\n};\n\nvar DOMExceptionPrototype = $DOMException.prototype = NativeDOMException.prototype;\n\nvar ERROR_HAS_STACK = 'stack' in new Error(DOM_EXCEPTION);\nvar DOM_EXCEPTION_HAS_STACK = 'stack' in new NativeDOMException(1, 2);\n\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar descriptor = NativeDOMException && DESCRIPTORS && Object.getOwnPropertyDescriptor(global, DOM_EXCEPTION);\n\n// Bun ~ 0.1.1 DOMException have incorrect descriptor and we can't redefine it\n// https://github.com/Jarred-Sumner/bun/issues/399\nvar BUGGY_DESCRIPTOR = !!descriptor && !(descriptor.writable && descriptor.configurable);\n\nvar FORCED_CONSTRUCTOR = ERROR_HAS_STACK && !BUGGY_DESCRIPTOR && !DOM_EXCEPTION_HAS_STACK;\n\n// `DOMException` constructor patch for `.stack` where it's required\n// https://webidl.spec.whatwg.org/#es-DOMException-specialness\n$({ global: true, constructor: true, forced: IS_PURE || FORCED_CONSTRUCTOR }, { // TODO: fix export logic\n DOMException: FORCED_CONSTRUCTOR ? $DOMException : NativeDOMException\n});\n\nvar PolyfilledDOMException = getBuiltIn(DOM_EXCEPTION);\nvar PolyfilledDOMExceptionPrototype = PolyfilledDOMException.prototype;\n\nif (PolyfilledDOMExceptionPrototype.constructor !== PolyfilledDOMException) {\n if (!IS_PURE) {\n defineProperty(PolyfilledDOMExceptionPrototype, 'constructor', createPropertyDescriptor(1, PolyfilledDOMException));\n }\n\n for (var key in DOMExceptionConstants) if (hasOwn(DOMExceptionConstants, key)) {\n var constant = DOMExceptionConstants[key];\n var constantName = constant.s;\n if (!hasOwn(PolyfilledDOMException, constantName)) {\n defineProperty(PolyfilledDOMException, constantName, createPropertyDescriptor(6, constant.c));\n }\n }\n}\n","'use strict';\nvar defineBuiltIn = require('../internals/define-built-in');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar toString = require('../internals/to-string');\nvar validateArgumentsLength = require('../internals/validate-arguments-length');\n\nvar $URLSearchParams = URLSearchParams;\nvar URLSearchParamsPrototype = $URLSearchParams.prototype;\nvar append = uncurryThis(URLSearchParamsPrototype.append);\nvar $delete = uncurryThis(URLSearchParamsPrototype['delete']);\nvar forEach = uncurryThis(URLSearchParamsPrototype.forEach);\nvar push = uncurryThis([].push);\nvar params = new $URLSearchParams('a=1&a=2&b=3');\n\nparams['delete']('a', 1);\n// `undefined` case is a Chromium 117 bug\n// https://bugs.chromium.org/p/v8/issues/detail?id=14222\nparams['delete']('b', undefined);\n\nif (params + '' !== 'a=2') {\n defineBuiltIn(URLSearchParamsPrototype, 'delete', function (name /* , value */) {\n var length = arguments.length;\n var $value = length < 2 ? undefined : arguments[1];\n if (length && $value === undefined) return $delete(this, name);\n var entries = [];\n forEach(this, function (v, k) { // also validates `this`\n push(entries, { key: k, value: v });\n });\n validateArgumentsLength(length, 1);\n var key = toString(name);\n var value = toString($value);\n var index = 0;\n var dindex = 0;\n var found = false;\n var entriesLength = entries.length;\n var entry;\n while (index < entriesLength) {\n entry = entries[index++];\n if (found || entry.key === key) {\n found = true;\n $delete(this, entry.key);\n } else dindex++;\n }\n while (dindex < entriesLength) {\n entry = entries[dindex++];\n if (!(entry.key === key && entry.value === value)) append(this, entry.key, entry.value);\n }\n }, { enumerable: true, unsafe: true });\n}\n","'use strict';\nvar defineBuiltIn = require('../internals/define-built-in');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar toString = require('../internals/to-string');\nvar validateArgumentsLength = require('../internals/validate-arguments-length');\n\nvar $URLSearchParams = URLSearchParams;\nvar URLSearchParamsPrototype = $URLSearchParams.prototype;\nvar getAll = uncurryThis(URLSearchParamsPrototype.getAll);\nvar $has = uncurryThis(URLSearchParamsPrototype.has);\nvar params = new $URLSearchParams('a=1');\n\n// `undefined` case is a Chromium 117 bug\n// https://bugs.chromium.org/p/v8/issues/detail?id=14222\nif (params.has('a', 2) || !params.has('a', undefined)) {\n defineBuiltIn(URLSearchParamsPrototype, 'has', function has(name /* , value */) {\n var length = arguments.length;\n var $value = length < 2 ? undefined : arguments[1];\n if (length && $value === undefined) return $has(this, name);\n var values = getAll(this, name); // also validates `this`\n validateArgumentsLength(length, 1);\n var value = toString($value);\n var index = 0;\n while (index < values.length) {\n if (values[index++] === value) return true;\n } return false;\n }, { enumerable: true, unsafe: true });\n}\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar defineBuiltInAccessor = require('../internals/define-built-in-accessor');\n\nvar URLSearchParamsPrototype = URLSearchParams.prototype;\nvar forEach = uncurryThis(URLSearchParamsPrototype.forEach);\n\n// `URLSearchParams.prototype.size` getter\n// https://github.com/whatwg/url/pull/734\nif (DESCRIPTORS && !('size' in URLSearchParamsPrototype)) {\n defineBuiltInAccessor(URLSearchParamsPrototype, 'size', {\n get: function size() {\n var count = 0;\n forEach(this, function () { count++; });\n return count;\n },\n configurable: true,\n enumerable: true\n });\n}\n","export class InvalidTokenError extends Error {\n}\nInvalidTokenError.prototype.name = \"InvalidTokenError\";\nfunction b64DecodeUnicode(str) {\n return decodeURIComponent(atob(str).replace(/(.)/g, (m, p) => {\n let code = p.charCodeAt(0).toString(16).toUpperCase();\n if (code.length < 2) {\n code = \"0\" + code;\n }\n return \"%\" + code;\n }));\n}\nfunction base64UrlDecode(str) {\n let output = str.replace(/-/g, \"+\").replace(/_/g, \"/\");\n switch (output.length % 4) {\n case 0:\n break;\n case 2:\n output += \"==\";\n break;\n case 3:\n output += \"=\";\n break;\n default:\n throw new Error(\"base64 string is not of the correct length\");\n }\n try {\n return b64DecodeUnicode(output);\n }\n catch (err) {\n return atob(output);\n }\n}\nexport function jwtDecode(token, options) {\n if (typeof token !== \"string\") {\n throw new InvalidTokenError(\"Invalid token specified: must be a string\");\n }\n options || (options = {});\n const pos = options.header === true ? 0 : 1;\n const part = token.split(\".\")[pos];\n if (typeof part !== \"string\") {\n throw new InvalidTokenError(`Invalid token specified: missing part #${pos + 1}`);\n }\n let decoded;\n try {\n decoded = base64UrlDecode(part);\n }\n catch (e) {\n throw new InvalidTokenError(`Invalid token specified: invalid base64 for part #${pos + 1} (${e.message})`);\n }\n try {\n return JSON.parse(decoded);\n }\n catch (e) {\n throw new InvalidTokenError(`Invalid token specified: invalid json for part #${pos + 1} (${e.message})`);\n }\n}\n","import sha256 from 'js-sha256';\nimport { jwtDecode } from 'jwt-decode';\n\n/*\n * Copyright 2016 Red Hat, Inc. and/or its affiliates\n * and other contributors as indicated by the @author tags.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nif (typeof Promise === 'undefined') {\n throw Error('Keycloak requires an environment that supports Promises. Make sure that you include the appropriate polyfill.');\n}\n\nfunction Keycloak (config) {\n if (!(this instanceof Keycloak)) {\n throw new Error(\"The 'Keycloak' constructor must be invoked with 'new'.\")\n }\n\n var kc = this;\n var adapter;\n var refreshQueue = [];\n var callbackStorage;\n\n var loginIframe = {\n enable: true,\n callbackList: [],\n interval: 5\n };\n\n var scripts = document.getElementsByTagName('script');\n for (var i = 0; i < scripts.length; i++) {\n if ((scripts[i].src.indexOf('keycloak.js') !== -1 || scripts[i].src.indexOf('keycloak.min.js') !== -1) && scripts[i].src.indexOf('version=') !== -1) {\n kc.iframeVersion = scripts[i].src.substring(scripts[i].src.indexOf('version=') + 8).split('&')[0];\n }\n }\n\n var useNonce = true;\n var logInfo = createLogger(console.info);\n var logWarn = createLogger(console.warn);\n\n kc.init = function (initOptions) {\n if (kc.didInitialize) {\n throw new Error(\"A 'Keycloak' instance can only be initialized once.\");\n }\n\n kc.didInitialize = true;\n\n kc.authenticated = false;\n\n callbackStorage = createCallbackStorage();\n var adapters = ['default', 'cordova', 'cordova-native'];\n\n if (initOptions && adapters.indexOf(initOptions.adapter) > -1) {\n adapter = loadAdapter(initOptions.adapter);\n } else if (initOptions && typeof initOptions.adapter === \"object\") {\n adapter = initOptions.adapter;\n } else {\n if (window.Cordova || window.cordova) {\n adapter = loadAdapter('cordova');\n } else {\n adapter = loadAdapter();\n }\n }\n\n if (initOptions) {\n if (typeof initOptions.useNonce !== 'undefined') {\n useNonce = initOptions.useNonce;\n }\n\n if (typeof initOptions.checkLoginIframe !== 'undefined') {\n loginIframe.enable = initOptions.checkLoginIframe;\n }\n\n if (initOptions.checkLoginIframeInterval) {\n loginIframe.interval = initOptions.checkLoginIframeInterval;\n }\n\n if (initOptions.onLoad === 'login-required') {\n kc.loginRequired = true;\n }\n\n if (initOptions.responseMode) {\n if (initOptions.responseMode === 'query' || initOptions.responseMode === 'fragment') {\n kc.responseMode = initOptions.responseMode;\n } else {\n throw 'Invalid value for responseMode';\n }\n }\n\n if (initOptions.flow) {\n switch (initOptions.flow) {\n case 'standard':\n kc.responseType = 'code';\n break;\n case 'implicit':\n kc.responseType = 'id_token token';\n break;\n case 'hybrid':\n kc.responseType = 'code id_token token';\n break;\n default:\n throw 'Invalid value for flow';\n }\n kc.flow = initOptions.flow;\n }\n\n if (initOptions.timeSkew != null) {\n kc.timeSkew = initOptions.timeSkew;\n }\n\n if(initOptions.redirectUri) {\n kc.redirectUri = initOptions.redirectUri;\n }\n\n if (initOptions.silentCheckSsoRedirectUri) {\n kc.silentCheckSsoRedirectUri = initOptions.silentCheckSsoRedirectUri;\n }\n\n if (typeof initOptions.silentCheckSsoFallback === 'boolean') {\n kc.silentCheckSsoFallback = initOptions.silentCheckSsoFallback;\n } else {\n kc.silentCheckSsoFallback = true;\n }\n\n if (typeof initOptions.pkceMethod !== \"undefined\") {\n if (initOptions.pkceMethod !== \"S256\" && initOptions.pkceMethod !== false) {\n throw new TypeError(`Invalid value for pkceMethod', expected 'S256' or false but got ${initOptions.pkceMethod}.`);\n }\n\n kc.pkceMethod = initOptions.pkceMethod;\n } else {\n kc.pkceMethod = \"S256\";\n }\n\n if (typeof initOptions.enableLogging === 'boolean') {\n kc.enableLogging = initOptions.enableLogging;\n } else {\n kc.enableLogging = false;\n }\n\n if (initOptions.logoutMethod === 'POST') {\n kc.logoutMethod = 'POST';\n } else {\n kc.logoutMethod = 'GET';\n }\n\n if (typeof initOptions.scope === 'string') {\n kc.scope = initOptions.scope;\n }\n\n if (typeof initOptions.acrValues === 'string') {\n kc.acrValues = initOptions.acrValues;\n }\n\n if (typeof initOptions.messageReceiveTimeout === 'number' && initOptions.messageReceiveTimeout > 0) {\n kc.messageReceiveTimeout = initOptions.messageReceiveTimeout;\n } else {\n kc.messageReceiveTimeout = 10000;\n }\n }\n\n if (!kc.responseMode) {\n kc.responseMode = 'fragment';\n }\n if (!kc.responseType) {\n kc.responseType = 'code';\n kc.flow = 'standard';\n }\n\n var promise = createPromise();\n\n var initPromise = createPromise();\n initPromise.promise.then(function() {\n kc.onReady && kc.onReady(kc.authenticated);\n promise.setSuccess(kc.authenticated);\n }).catch(function(error) {\n promise.setError(error);\n });\n\n var configPromise = loadConfig();\n\n function onLoad() {\n var doLogin = function(prompt) {\n if (!prompt) {\n options.prompt = 'none';\n }\n\n if (initOptions && initOptions.locale) {\n options.locale = initOptions.locale;\n }\n kc.login(options).then(function () {\n initPromise.setSuccess();\n }).catch(function (error) {\n initPromise.setError(error);\n });\n };\n\n var checkSsoSilently = function() {\n var ifrm = document.createElement(\"iframe\");\n var src = kc.createLoginUrl({prompt: 'none', redirectUri: kc.silentCheckSsoRedirectUri});\n ifrm.setAttribute(\"src\", src);\n ifrm.setAttribute(\"sandbox\", \"allow-storage-access-by-user-activation allow-scripts allow-same-origin\");\n ifrm.setAttribute(\"title\", \"keycloak-silent-check-sso\");\n ifrm.style.display = \"none\";\n document.body.appendChild(ifrm);\n\n var messageCallback = function(event) {\n if (event.origin !== window.location.origin || ifrm.contentWindow !== event.source) {\n return;\n }\n\n var oauth = parseCallback(event.data);\n processCallback(oauth, initPromise);\n\n document.body.removeChild(ifrm);\n window.removeEventListener(\"message\", messageCallback);\n };\n\n window.addEventListener(\"message\", messageCallback);\n };\n\n var options = {};\n switch (initOptions.onLoad) {\n case 'check-sso':\n if (loginIframe.enable) {\n setupCheckLoginIframe().then(function() {\n checkLoginIframe().then(function (unchanged) {\n if (!unchanged) {\n kc.silentCheckSsoRedirectUri ? checkSsoSilently() : doLogin(false);\n } else {\n initPromise.setSuccess();\n }\n }).catch(function (error) {\n initPromise.setError(error);\n });\n });\n } else {\n kc.silentCheckSsoRedirectUri ? checkSsoSilently() : doLogin(false);\n }\n break;\n case 'login-required':\n doLogin(true);\n break;\n default:\n throw 'Invalid value for onLoad';\n }\n }\n\n function processInit() {\n var callback = parseCallback(window.location.href);\n\n if (callback) {\n window.history.replaceState(window.history.state, null, callback.newUrl);\n }\n\n if (callback && callback.valid) {\n return setupCheckLoginIframe().then(function() {\n processCallback(callback, initPromise);\n }).catch(function (error) {\n initPromise.setError(error);\n });\n } else if (initOptions) {\n if (initOptions.token && initOptions.refreshToken) {\n setToken(initOptions.token, initOptions.refreshToken, initOptions.idToken);\n\n if (loginIframe.enable) {\n setupCheckLoginIframe().then(function() {\n checkLoginIframe().then(function (unchanged) {\n if (unchanged) {\n kc.onAuthSuccess && kc.onAuthSuccess();\n initPromise.setSuccess();\n scheduleCheckIframe();\n } else {\n initPromise.setSuccess();\n }\n }).catch(function (error) {\n initPromise.setError(error);\n });\n });\n } else {\n kc.updateToken(-1).then(function() {\n kc.onAuthSuccess && kc.onAuthSuccess();\n initPromise.setSuccess();\n }).catch(function(error) {\n kc.onAuthError && kc.onAuthError();\n if (initOptions.onLoad) {\n onLoad();\n } else {\n initPromise.setError(error);\n }\n });\n }\n } else if (initOptions.onLoad) {\n onLoad();\n } else {\n initPromise.setSuccess();\n }\n } else {\n initPromise.setSuccess();\n }\n }\n\n function domReady() {\n var promise = createPromise();\n\n var checkReadyState = function () {\n if (document.readyState === 'interactive' || document.readyState === 'complete') {\n document.removeEventListener('readystatechange', checkReadyState);\n promise.setSuccess();\n }\n };\n document.addEventListener('readystatechange', checkReadyState);\n\n checkReadyState(); // just in case the event was already fired and we missed it (in case the init is done later than at the load time, i.e. it's done from code)\n\n return promise.promise;\n }\n\n configPromise.then(function () {\n domReady()\n .then(check3pCookiesSupported)\n .then(processInit)\n .catch(function (error) {\n promise.setError(error);\n });\n });\n configPromise.catch(function (error) {\n promise.setError(error);\n });\n\n return promise.promise;\n };\n\n kc.login = function (options) {\n return adapter.login(options);\n };\n\n function generateRandomData(len) {\n // use web crypto APIs if possible\n var array = null;\n var crypto = window.crypto || window.msCrypto;\n if (crypto && crypto.getRandomValues && window.Uint8Array) {\n array = new Uint8Array(len);\n crypto.getRandomValues(array);\n return array;\n }\n\n // fallback to Math random\n array = new Array(len);\n for (var j = 0; j < array.length; j++) {\n array[j] = Math.floor(256 * Math.random());\n }\n return array;\n }\n\n function generateCodeVerifier(len) {\n return generateRandomString(len, 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789');\n }\n\n function generateRandomString(len, alphabet){\n var randomData = generateRandomData(len);\n var chars = new Array(len);\n for (var i = 0; i < len; i++) {\n chars[i] = alphabet.charCodeAt(randomData[i] % alphabet.length);\n }\n return String.fromCharCode.apply(null, chars);\n }\n\n function generatePkceChallenge(pkceMethod, codeVerifier) {\n if (pkceMethod !== \"S256\") {\n throw new TypeError(`Invalid value for 'pkceMethod', expected 'S256' but got '${pkceMethod}'.`);\n }\n\n // hash codeVerifier, then encode as url-safe base64 without padding\n const hashBytes = new Uint8Array(sha256.arrayBuffer(codeVerifier));\n const encodedHash = bytesToBase64(hashBytes)\n .replace(/\\+/g, '-')\n .replace(/\\//g, '_')\n .replace(/\\=/g, '');\n\n return encodedHash;\n }\n\n function buildClaimsParameter(requestedAcr){\n var claims = {\n id_token: {\n acr: requestedAcr\n }\n };\n return JSON.stringify(claims);\n }\n\n kc.createLoginUrl = function(options) {\n var state = createUUID();\n var nonce = createUUID();\n\n var redirectUri = adapter.redirectUri(options);\n\n var callbackState = {\n state: state,\n nonce: nonce,\n redirectUri: encodeURIComponent(redirectUri),\n loginOptions: options\n };\n\n if (options && options.prompt) {\n callbackState.prompt = options.prompt;\n }\n\n var baseUrl;\n if (options && options.action == 'register') {\n baseUrl = kc.endpoints.register();\n } else {\n baseUrl = kc.endpoints.authorize();\n }\n\n var scope = options && options.scope || kc.scope;\n if (!scope) {\n // if scope is not set, default to \"openid\"\n scope = \"openid\";\n } else if (scope.indexOf(\"openid\") === -1) {\n // if openid scope is missing, prefix the given scopes with it\n scope = \"openid \" + scope;\n }\n\n var url = baseUrl\n + '?client_id=' + encodeURIComponent(kc.clientId)\n + '&redirect_uri=' + encodeURIComponent(redirectUri)\n + '&state=' + encodeURIComponent(state)\n + '&response_mode=' + encodeURIComponent(kc.responseMode)\n + '&response_type=' + encodeURIComponent(kc.responseType)\n + '&scope=' + encodeURIComponent(scope);\n if (useNonce) {\n url = url + '&nonce=' + encodeURIComponent(nonce);\n }\n\n if (options && options.prompt) {\n url += '&prompt=' + encodeURIComponent(options.prompt);\n }\n\n if (options && options.maxAge) {\n url += '&max_age=' + encodeURIComponent(options.maxAge);\n }\n\n if (options && options.loginHint) {\n url += '&login_hint=' + encodeURIComponent(options.loginHint);\n }\n\n if (options && options.idpHint) {\n url += '&kc_idp_hint=' + encodeURIComponent(options.idpHint);\n }\n\n if (options && options.action && options.action != 'register') {\n url += '&kc_action=' + encodeURIComponent(options.action);\n }\n\n if (options && options.locale) {\n url += '&ui_locales=' + encodeURIComponent(options.locale);\n }\n\n if (options && options.acr) {\n var claimsParameter = buildClaimsParameter(options.acr);\n url += '&claims=' + encodeURIComponent(claimsParameter);\n }\n\n if ((options && options.acrValues) || kc.acrValues) {\n url += '&acr_values=' + encodeURIComponent(options.acrValues || kc.acrValues);\n }\n\n if (kc.pkceMethod) {\n var codeVerifier = generateCodeVerifier(96);\n callbackState.pkceCodeVerifier = codeVerifier;\n var pkceChallenge = generatePkceChallenge(kc.pkceMethod, codeVerifier);\n url += '&code_challenge=' + pkceChallenge;\n url += '&code_challenge_method=' + kc.pkceMethod;\n }\n\n callbackStorage.add(callbackState);\n\n return url;\n };\n\n kc.logout = function(options) {\n return adapter.logout(options);\n };\n\n kc.createLogoutUrl = function(options) {\n\n const logoutMethod = options?.logoutMethod ?? kc.logoutMethod;\n if (logoutMethod === 'POST') {\n return kc.endpoints.logout();\n }\n\n var url = kc.endpoints.logout()\n + '?client_id=' + encodeURIComponent(kc.clientId)\n + '&post_logout_redirect_uri=' + encodeURIComponent(adapter.redirectUri(options, false));\n\n if (kc.idToken) {\n url += '&id_token_hint=' + encodeURIComponent(kc.idToken);\n }\n\n return url;\n };\n\n kc.register = function (options) {\n return adapter.register(options);\n };\n\n kc.createRegisterUrl = function(options) {\n if (!options) {\n options = {};\n }\n options.action = 'register';\n return kc.createLoginUrl(options);\n };\n\n kc.createAccountUrl = function(options) {\n var realm = getRealmUrl();\n var url = undefined;\n if (typeof realm !== 'undefined') {\n url = realm\n + '/account'\n + '?referrer=' + encodeURIComponent(kc.clientId)\n + '&referrer_uri=' + encodeURIComponent(adapter.redirectUri(options));\n }\n return url;\n };\n\n kc.accountManagement = function() {\n return adapter.accountManagement();\n };\n\n kc.hasRealmRole = function (role) {\n var access = kc.realmAccess;\n return !!access && access.roles.indexOf(role) >= 0;\n };\n\n kc.hasResourceRole = function(role, resource) {\n if (!kc.resourceAccess) {\n return false;\n }\n\n var access = kc.resourceAccess[resource || kc.clientId];\n return !!access && access.roles.indexOf(role) >= 0;\n };\n\n kc.loadUserProfile = function() {\n var url = getRealmUrl() + '/account';\n var req = new XMLHttpRequest();\n req.open('GET', url, true);\n req.setRequestHeader('Accept', 'application/json');\n req.setRequestHeader('Authorization', 'bearer ' + kc.token);\n\n var promise = createPromise();\n\n req.onreadystatechange = function () {\n if (req.readyState == 4) {\n if (req.status == 200) {\n kc.profile = JSON.parse(req.responseText);\n promise.setSuccess(kc.profile);\n } else {\n promise.setError();\n }\n }\n };\n\n req.send();\n\n return promise.promise;\n };\n\n kc.loadUserInfo = function() {\n var url = kc.endpoints.userinfo();\n var req = new XMLHttpRequest();\n req.open('GET', url, true);\n req.setRequestHeader('Accept', 'application/json');\n req.setRequestHeader('Authorization', 'bearer ' + kc.token);\n\n var promise = createPromise();\n\n req.onreadystatechange = function () {\n if (req.readyState == 4) {\n if (req.status == 200) {\n kc.userInfo = JSON.parse(req.responseText);\n promise.setSuccess(kc.userInfo);\n } else {\n promise.setError();\n }\n }\n };\n\n req.send();\n\n return promise.promise;\n };\n\n kc.isTokenExpired = function(minValidity) {\n if (!kc.tokenParsed || (!kc.refreshToken && kc.flow != 'implicit' )) {\n throw 'Not authenticated';\n }\n\n if (kc.timeSkew == null) {\n logInfo('[KEYCLOAK] Unable to determine if token is expired as timeskew is not set');\n return true;\n }\n\n var expiresIn = kc.tokenParsed['exp'] - Math.ceil(new Date().getTime() / 1000) + kc.timeSkew;\n if (minValidity) {\n if (isNaN(minValidity)) {\n throw 'Invalid minValidity';\n }\n expiresIn -= minValidity;\n }\n return expiresIn < 0;\n };\n\n kc.updateToken = function(minValidity) {\n var promise = createPromise();\n\n if (!kc.refreshToken) {\n promise.setError();\n return promise.promise;\n }\n\n minValidity = minValidity || 5;\n\n var exec = function() {\n var refreshToken = false;\n if (minValidity == -1) {\n refreshToken = true;\n logInfo('[KEYCLOAK] Refreshing token: forced refresh');\n } else if (!kc.tokenParsed || kc.isTokenExpired(minValidity)) {\n refreshToken = true;\n logInfo('[KEYCLOAK] Refreshing token: token expired');\n }\n\n if (!refreshToken) {\n promise.setSuccess(false);\n } else {\n var params = 'grant_type=refresh_token&' + 'refresh_token=' + kc.refreshToken;\n var url = kc.endpoints.token();\n\n refreshQueue.push(promise);\n\n if (refreshQueue.length == 1) {\n var req = new XMLHttpRequest();\n req.open('POST', url, true);\n req.setRequestHeader('Content-type', 'application/x-www-form-urlencoded');\n req.withCredentials = true;\n\n params += '&client_id=' + encodeURIComponent(kc.clientId);\n\n var timeLocal = new Date().getTime();\n\n req.onreadystatechange = function () {\n if (req.readyState == 4) {\n if (req.status == 200) {\n logInfo('[KEYCLOAK] Token refreshed');\n\n timeLocal = (timeLocal + new Date().getTime()) / 2;\n\n var tokenResponse = JSON.parse(req.responseText);\n\n setToken(tokenResponse['access_token'], tokenResponse['refresh_token'], tokenResponse['id_token'], timeLocal);\n\n kc.onAuthRefreshSuccess && kc.onAuthRefreshSuccess();\n for (var p = refreshQueue.pop(); p != null; p = refreshQueue.pop()) {\n p.setSuccess(true);\n }\n } else {\n logWarn('[KEYCLOAK] Failed to refresh token');\n\n if (req.status == 400) {\n kc.clearToken();\n }\n\n kc.onAuthRefreshError && kc.onAuthRefreshError();\n for (var p = refreshQueue.pop(); p != null; p = refreshQueue.pop()) {\n p.setError(true);\n }\n }\n }\n };\n\n req.send(params);\n }\n }\n };\n\n if (loginIframe.enable) {\n var iframePromise = checkLoginIframe();\n iframePromise.then(function() {\n exec();\n }).catch(function(error) {\n promise.setError(error);\n });\n } else {\n exec();\n }\n\n return promise.promise;\n };\n\n kc.clearToken = function() {\n if (kc.token) {\n setToken(null, null, null);\n kc.onAuthLogout && kc.onAuthLogout();\n if (kc.loginRequired) {\n kc.login();\n }\n }\n };\n\n function getRealmUrl() {\n if (typeof kc.authServerUrl !== 'undefined') {\n if (kc.authServerUrl.charAt(kc.authServerUrl.length - 1) == '/') {\n return kc.authServerUrl + 'realms/' + encodeURIComponent(kc.realm);\n } else {\n return kc.authServerUrl + '/realms/' + encodeURIComponent(kc.realm);\n }\n } else {\n return undefined;\n }\n }\n\n function getOrigin() {\n if (!window.location.origin) {\n return window.location.protocol + \"//\" + window.location.hostname + (window.location.port ? ':' + window.location.port: '');\n } else {\n return window.location.origin;\n }\n }\n\n function processCallback(oauth, promise) {\n var code = oauth.code;\n var error = oauth.error;\n var prompt = oauth.prompt;\n\n var timeLocal = new Date().getTime();\n\n if (oauth['kc_action_status']) {\n kc.onActionUpdate && kc.onActionUpdate(oauth['kc_action_status']);\n }\n\n if (error) {\n if (prompt != 'none') {\n if (oauth.error_description && oauth.error_description === \"authentication_expired\") {\n kc.login(oauth.loginOptions);\n } else {\n var errorData = { error: error, error_description: oauth.error_description };\n kc.onAuthError && kc.onAuthError(errorData);\n promise && promise.setError(errorData);\n }\n } else {\n promise && promise.setSuccess();\n }\n return;\n } else if ((kc.flow != 'standard') && (oauth.access_token || oauth.id_token)) {\n authSuccess(oauth.access_token, null, oauth.id_token, true);\n }\n\n if ((kc.flow != 'implicit') && code) {\n var params = 'code=' + code + '&grant_type=authorization_code';\n var url = kc.endpoints.token();\n\n var req = new XMLHttpRequest();\n req.open('POST', url, true);\n req.setRequestHeader('Content-type', 'application/x-www-form-urlencoded');\n\n params += '&client_id=' + encodeURIComponent(kc.clientId);\n params += '&redirect_uri=' + oauth.redirectUri;\n\n if (oauth.pkceCodeVerifier) {\n params += '&code_verifier=' + oauth.pkceCodeVerifier;\n }\n\n req.withCredentials = true;\n\n req.onreadystatechange = function() {\n if (req.readyState == 4) {\n if (req.status == 200) {\n\n var tokenResponse = JSON.parse(req.responseText);\n authSuccess(tokenResponse['access_token'], tokenResponse['refresh_token'], tokenResponse['id_token'], kc.flow === 'standard');\n scheduleCheckIframe();\n } else {\n kc.onAuthError && kc.onAuthError();\n promise && promise.setError();\n }\n }\n };\n\n req.send(params);\n }\n\n function authSuccess(accessToken, refreshToken, idToken, fulfillPromise) {\n timeLocal = (timeLocal + new Date().getTime()) / 2;\n\n setToken(accessToken, refreshToken, idToken, timeLocal);\n\n if (useNonce && (kc.idTokenParsed && kc.idTokenParsed.nonce != oauth.storedNonce)) {\n logInfo('[KEYCLOAK] Invalid nonce, clearing token');\n kc.clearToken();\n promise && promise.setError();\n } else {\n if (fulfillPromise) {\n kc.onAuthSuccess && kc.onAuthSuccess();\n promise && promise.setSuccess();\n }\n }\n }\n\n }\n\n function loadConfig(url) {\n var promise = createPromise();\n var configUrl;\n\n if (!config) {\n configUrl = 'keycloak.json';\n } else if (typeof config === 'string') {\n configUrl = config;\n }\n\n function setupOidcEndoints(oidcConfiguration) {\n if (! oidcConfiguration) {\n kc.endpoints = {\n authorize: function() {\n return getRealmUrl() + '/protocol/openid-connect/auth';\n },\n token: function() {\n return getRealmUrl() + '/protocol/openid-connect/token';\n },\n logout: function() {\n return getRealmUrl() + '/protocol/openid-connect/logout';\n },\n checkSessionIframe: function() {\n var src = getRealmUrl() + '/protocol/openid-connect/login-status-iframe.html';\n if (kc.iframeVersion) {\n src = src + '?version=' + kc.iframeVersion;\n }\n return src;\n },\n thirdPartyCookiesIframe: function() {\n var src = getRealmUrl() + '/protocol/openid-connect/3p-cookies/step1.html';\n if (kc.iframeVersion) {\n src = src + '?version=' + kc.iframeVersion;\n }\n return src;\n },\n register: function() {\n return getRealmUrl() + '/protocol/openid-connect/registrations';\n },\n userinfo: function() {\n return getRealmUrl() + '/protocol/openid-connect/userinfo';\n }\n };\n } else {\n kc.endpoints = {\n authorize: function() {\n return oidcConfiguration.authorization_endpoint;\n },\n token: function() {\n return oidcConfiguration.token_endpoint;\n },\n logout: function() {\n if (!oidcConfiguration.end_session_endpoint) {\n throw \"Not supported by the OIDC server\";\n }\n return oidcConfiguration.end_session_endpoint;\n },\n checkSessionIframe: function() {\n if (!oidcConfiguration.check_session_iframe) {\n throw \"Not supported by the OIDC server\";\n }\n return oidcConfiguration.check_session_iframe;\n },\n register: function() {\n throw 'Redirection to \"Register user\" page not supported in standard OIDC mode';\n },\n userinfo: function() {\n if (!oidcConfiguration.userinfo_endpoint) {\n throw \"Not supported by the OIDC server\";\n }\n return oidcConfiguration.userinfo_endpoint;\n }\n };\n }\n }\n\n if (configUrl) {\n var req = new XMLHttpRequest();\n req.open('GET', configUrl, true);\n req.setRequestHeader('Accept', 'application/json');\n\n req.onreadystatechange = function () {\n if (req.readyState == 4) {\n if (req.status == 200 || fileLoaded(req)) {\n var config = JSON.parse(req.responseText);\n\n kc.authServerUrl = config['auth-server-url'];\n kc.realm = config['realm'];\n kc.clientId = config['resource'];\n setupOidcEndoints(null);\n promise.setSuccess();\n } else {\n promise.setError();\n }\n }\n };\n\n req.send();\n } else {\n if (!config.clientId) {\n throw 'clientId missing';\n }\n\n kc.clientId = config.clientId;\n\n var oidcProvider = config['oidcProvider'];\n if (!oidcProvider) {\n if (!config['url']) {\n var scripts = document.getElementsByTagName('script');\n for (var i = 0; i < scripts.length; i++) {\n if (scripts[i].src.match(/.*keycloak\\.js/)) {\n config.url = scripts[i].src.substr(0, scripts[i].src.indexOf('/js/keycloak.js'));\n break;\n }\n }\n }\n if (!config.realm) {\n throw 'realm missing';\n }\n\n kc.authServerUrl = config.url;\n kc.realm = config.realm;\n setupOidcEndoints(null);\n promise.setSuccess();\n } else {\n if (typeof oidcProvider === 'string') {\n var oidcProviderConfigUrl;\n if (oidcProvider.charAt(oidcProvider.length - 1) == '/') {\n oidcProviderConfigUrl = oidcProvider + '.well-known/openid-configuration';\n } else {\n oidcProviderConfigUrl = oidcProvider + '/.well-known/openid-configuration';\n }\n var req = new XMLHttpRequest();\n req.open('GET', oidcProviderConfigUrl, true);\n req.setRequestHeader('Accept', 'application/json');\n\n req.onreadystatechange = function () {\n if (req.readyState == 4) {\n if (req.status == 200 || fileLoaded(req)) {\n var oidcProviderConfig = JSON.parse(req.responseText);\n setupOidcEndoints(oidcProviderConfig);\n promise.setSuccess();\n } else {\n promise.setError();\n }\n }\n };\n\n req.send();\n } else {\n setupOidcEndoints(oidcProvider);\n promise.setSuccess();\n }\n }\n }\n\n return promise.promise;\n }\n\n function fileLoaded(xhr) {\n return xhr.status == 0 && xhr.responseText && xhr.responseURL.startsWith('file:');\n }\n\n function setToken(token, refreshToken, idToken, timeLocal) {\n if (kc.tokenTimeoutHandle) {\n clearTimeout(kc.tokenTimeoutHandle);\n kc.tokenTimeoutHandle = null;\n }\n\n if (refreshToken) {\n kc.refreshToken = refreshToken;\n kc.refreshTokenParsed = jwtDecode(refreshToken);\n } else {\n delete kc.refreshToken;\n delete kc.refreshTokenParsed;\n }\n\n if (idToken) {\n kc.idToken = idToken;\n kc.idTokenParsed = jwtDecode(idToken);\n } else {\n delete kc.idToken;\n delete kc.idTokenParsed;\n }\n\n if (token) {\n kc.token = token;\n kc.tokenParsed = jwtDecode(token);\n kc.sessionId = kc.tokenParsed.sid;\n kc.authenticated = true;\n kc.subject = kc.tokenParsed.sub;\n kc.realmAccess = kc.tokenParsed.realm_access;\n kc.resourceAccess = kc.tokenParsed.resource_access;\n\n if (timeLocal) {\n kc.timeSkew = Math.floor(timeLocal / 1000) - kc.tokenParsed.iat;\n }\n\n if (kc.timeSkew != null) {\n logInfo('[KEYCLOAK] Estimated time difference between browser and server is ' + kc.timeSkew + ' seconds');\n\n if (kc.onTokenExpired) {\n var expiresIn = (kc.tokenParsed['exp'] - (new Date().getTime() / 1000) + kc.timeSkew) * 1000;\n logInfo('[KEYCLOAK] Token expires in ' + Math.round(expiresIn / 1000) + ' s');\n if (expiresIn <= 0) {\n kc.onTokenExpired();\n } else {\n kc.tokenTimeoutHandle = setTimeout(kc.onTokenExpired, expiresIn);\n }\n }\n }\n } else {\n delete kc.token;\n delete kc.tokenParsed;\n delete kc.subject;\n delete kc.realmAccess;\n delete kc.resourceAccess;\n\n kc.authenticated = false;\n }\n }\n\n function createUUID() {\n var hexDigits = '0123456789abcdef';\n var s = generateRandomString(36, hexDigits).split(\"\");\n s[14] = '4';\n s[19] = hexDigits.substr((s[19] & 0x3) | 0x8, 1);\n s[8] = s[13] = s[18] = s[23] = '-';\n var uuid = s.join('');\n return uuid;\n }\n\n function parseCallback(url) {\n var oauth = parseCallbackUrl(url);\n if (!oauth) {\n return;\n }\n\n var oauthState = callbackStorage.get(oauth.state);\n\n if (oauthState) {\n oauth.valid = true;\n oauth.redirectUri = oauthState.redirectUri;\n oauth.storedNonce = oauthState.nonce;\n oauth.prompt = oauthState.prompt;\n oauth.pkceCodeVerifier = oauthState.pkceCodeVerifier;\n oauth.loginOptions = oauthState.loginOptions;\n }\n\n return oauth;\n }\n\n function parseCallbackUrl(url) {\n var supportedParams;\n switch (kc.flow) {\n case 'standard':\n supportedParams = ['code', 'state', 'session_state', 'kc_action_status', 'iss'];\n break;\n case 'implicit':\n supportedParams = ['access_token', 'token_type', 'id_token', 'state', 'session_state', 'expires_in', 'kc_action_status', 'iss'];\n break;\n case 'hybrid':\n supportedParams = ['access_token', 'token_type', 'id_token', 'code', 'state', 'session_state', 'expires_in', 'kc_action_status', 'iss'];\n break;\n }\n\n supportedParams.push('error');\n supportedParams.push('error_description');\n supportedParams.push('error_uri');\n\n var queryIndex = url.indexOf('?');\n var fragmentIndex = url.indexOf('#');\n\n var newUrl;\n var parsed;\n\n if (kc.responseMode === 'query' && queryIndex !== -1) {\n newUrl = url.substring(0, queryIndex);\n parsed = parseCallbackParams(url.substring(queryIndex + 1, fragmentIndex !== -1 ? fragmentIndex : url.length), supportedParams);\n if (parsed.paramsString !== '') {\n newUrl += '?' + parsed.paramsString;\n }\n if (fragmentIndex !== -1) {\n newUrl += url.substring(fragmentIndex);\n }\n } else if (kc.responseMode === 'fragment' && fragmentIndex !== -1) {\n newUrl = url.substring(0, fragmentIndex);\n parsed = parseCallbackParams(url.substring(fragmentIndex + 1), supportedParams);\n if (parsed.paramsString !== '') {\n newUrl += '#' + parsed.paramsString;\n }\n }\n\n if (parsed && parsed.oauthParams) {\n if (kc.flow === 'standard' || kc.flow === 'hybrid') {\n if ((parsed.oauthParams.code || parsed.oauthParams.error) && parsed.oauthParams.state) {\n parsed.oauthParams.newUrl = newUrl;\n return parsed.oauthParams;\n }\n } else if (kc.flow === 'implicit') {\n if ((parsed.oauthParams.access_token || parsed.oauthParams.error) && parsed.oauthParams.state) {\n parsed.oauthParams.newUrl = newUrl;\n return parsed.oauthParams;\n }\n }\n }\n }\n\n function parseCallbackParams(paramsString, supportedParams) {\n var p = paramsString.split('&');\n var result = {\n paramsString: '',\n oauthParams: {}\n };\n for (var i = 0; i < p.length; i++) {\n var split = p[i].indexOf(\"=\");\n var key = p[i].slice(0, split);\n if (supportedParams.indexOf(key) !== -1) {\n result.oauthParams[key] = p[i].slice(split + 1);\n } else {\n if (result.paramsString !== '') {\n result.paramsString += '&';\n }\n result.paramsString += p[i];\n }\n }\n return result;\n }\n\n function createPromise() {\n // Need to create a native Promise which also preserves the\n // interface of the custom promise type previously used by the API\n var p = {\n setSuccess: function(result) {\n p.resolve(result);\n },\n\n setError: function(result) {\n p.reject(result);\n }\n };\n p.promise = new Promise(function(resolve, reject) {\n p.resolve = resolve;\n p.reject = reject;\n });\n\n return p;\n }\n\n // Function to extend existing native Promise with timeout\n function applyTimeoutToPromise(promise, timeout, errorMessage) {\n var timeoutHandle = null;\n var timeoutPromise = new Promise(function (resolve, reject) {\n timeoutHandle = setTimeout(function () {\n reject({ \"error\": errorMessage });\n }, timeout);\n });\n\n return Promise.race([promise, timeoutPromise]).finally(function () {\n clearTimeout(timeoutHandle);\n });\n }\n\n function setupCheckLoginIframe() {\n var promise = createPromise();\n\n if (!loginIframe.enable) {\n promise.setSuccess();\n return promise.promise;\n }\n\n if (loginIframe.iframe) {\n promise.setSuccess();\n return promise.promise;\n }\n\n var iframe = document.createElement('iframe');\n loginIframe.iframe = iframe;\n\n iframe.onload = function() {\n var authUrl = kc.endpoints.authorize();\n if (authUrl.charAt(0) === '/') {\n loginIframe.iframeOrigin = getOrigin();\n } else {\n loginIframe.iframeOrigin = authUrl.substring(0, authUrl.indexOf('/', 8));\n }\n promise.setSuccess();\n };\n\n var src = kc.endpoints.checkSessionIframe();\n iframe.setAttribute('src', src );\n iframe.setAttribute('sandbox', 'allow-storage-access-by-user-activation allow-scripts allow-same-origin');\n iframe.setAttribute('title', 'keycloak-session-iframe' );\n iframe.style.display = 'none';\n document.body.appendChild(iframe);\n\n var messageCallback = function(event) {\n if ((event.origin !== loginIframe.iframeOrigin) || (loginIframe.iframe.contentWindow !== event.source)) {\n return;\n }\n\n if (!(event.data == 'unchanged' || event.data == 'changed' || event.data == 'error')) {\n return;\n }\n\n\n if (event.data != 'unchanged') {\n kc.clearToken();\n }\n\n var callbacks = loginIframe.callbackList.splice(0, loginIframe.callbackList.length);\n\n for (var i = callbacks.length - 1; i >= 0; --i) {\n var promise = callbacks[i];\n if (event.data == 'error') {\n promise.setError();\n } else {\n promise.setSuccess(event.data == 'unchanged');\n }\n }\n };\n\n window.addEventListener('message', messageCallback, false);\n\n return promise.promise;\n }\n\n function scheduleCheckIframe() {\n if (loginIframe.enable) {\n if (kc.token) {\n setTimeout(function() {\n checkLoginIframe().then(function(unchanged) {\n if (unchanged) {\n scheduleCheckIframe();\n }\n });\n }, loginIframe.interval * 1000);\n }\n }\n }\n\n function checkLoginIframe() {\n var promise = createPromise();\n\n if (loginIframe.iframe && loginIframe.iframeOrigin ) {\n var msg = kc.clientId + ' ' + (kc.sessionId ? kc.sessionId : '');\n loginIframe.callbackList.push(promise);\n var origin = loginIframe.iframeOrigin;\n if (loginIframe.callbackList.length == 1) {\n loginIframe.iframe.contentWindow.postMessage(msg, origin);\n }\n } else {\n promise.setSuccess();\n }\n\n return promise.promise;\n }\n\n function check3pCookiesSupported() {\n var promise = createPromise();\n\n if (loginIframe.enable || kc.silentCheckSsoRedirectUri) {\n var iframe = document.createElement('iframe');\n iframe.setAttribute('src', kc.endpoints.thirdPartyCookiesIframe());\n iframe.setAttribute('sandbox', 'allow-storage-access-by-user-activation allow-scripts allow-same-origin');\n iframe.setAttribute('title', 'keycloak-3p-check-iframe' );\n iframe.style.display = 'none';\n document.body.appendChild(iframe);\n\n var messageCallback = function(event) {\n if (iframe.contentWindow !== event.source) {\n return;\n }\n\n if (event.data !== \"supported\" && event.data !== \"unsupported\") {\n return;\n } else if (event.data === \"unsupported\") {\n logWarn(\n \"[KEYCLOAK] Your browser is blocking access to 3rd-party cookies, this means:\\n\\n\" +\n \" - It is not possible to retrieve tokens without redirecting to the Keycloak server (a.k.a. no support for silent authentication).\\n\" +\n \" - It is not possible to automatically detect changes to the session status (such as the user logging out in another tab).\\n\\n\" +\n \"For more information see: https://www.keycloak.org/docs/latest/securing_apps/#_modern_browsers\"\n );\n\n loginIframe.enable = false;\n if (kc.silentCheckSsoFallback) {\n kc.silentCheckSsoRedirectUri = false;\n }\n }\n\n document.body.removeChild(iframe);\n window.removeEventListener(\"message\", messageCallback);\n promise.setSuccess();\n };\n\n window.addEventListener('message', messageCallback, false);\n } else {\n promise.setSuccess();\n }\n\n return applyTimeoutToPromise(promise.promise, kc.messageReceiveTimeout, \"Timeout when waiting for 3rd party check iframe message.\");\n }\n\n function loadAdapter(type) {\n if (!type || type == 'default') {\n return {\n login: function(options) {\n window.location.assign(kc.createLoginUrl(options));\n return createPromise().promise;\n },\n\n logout: async function(options) {\n\n const logoutMethod = options?.logoutMethod ?? kc.logoutMethod;\n if (logoutMethod === \"GET\") {\n window.location.replace(kc.createLogoutUrl(options));\n return;\n }\n\n const logoutUrl = kc.createLogoutUrl(options);\n const response = await fetch(logoutUrl, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/x-www-form-urlencoded\"\n },\n body: new URLSearchParams({\n id_token_hint: kc.idToken,\n client_id: kc.clientId,\n post_logout_redirect_uri: adapter.redirectUri(options, false)\n })\n });\n\n if (response.redirected) {\n window.location.href = response.url;\n return;\n }\n\n if (response.ok) {\n window.location.reload();\n return;\n }\n\n throw new Error(\"Logout failed, request returned an error code.\");\n },\n\n register: function(options) {\n window.location.assign(kc.createRegisterUrl(options));\n return createPromise().promise;\n },\n\n accountManagement : function() {\n var accountUrl = kc.createAccountUrl();\n if (typeof accountUrl !== 'undefined') {\n window.location.href = accountUrl;\n } else {\n throw \"Not supported by the OIDC server\";\n }\n return createPromise().promise;\n },\n\n redirectUri: function(options, encodeHash) {\n\n if (options && options.redirectUri) {\n return options.redirectUri;\n } else if (kc.redirectUri) {\n return kc.redirectUri;\n } else {\n return location.href;\n }\n }\n };\n }\n\n if (type == 'cordova') {\n loginIframe.enable = false;\n var cordovaOpenWindowWrapper = function(loginUrl, target, options) {\n if (window.cordova && window.cordova.InAppBrowser) {\n // Use inappbrowser for IOS and Android if available\n return window.cordova.InAppBrowser.open(loginUrl, target, options);\n } else {\n return window.open(loginUrl, target, options);\n }\n };\n\n var shallowCloneCordovaOptions = function (userOptions) {\n if (userOptions && userOptions.cordovaOptions) {\n return Object.keys(userOptions.cordovaOptions).reduce(function (options, optionName) {\n options[optionName] = userOptions.cordovaOptions[optionName];\n return options;\n }, {});\n } else {\n return {};\n }\n };\n\n var formatCordovaOptions = function (cordovaOptions) {\n return Object.keys(cordovaOptions).reduce(function (options, optionName) {\n options.push(optionName+\"=\"+cordovaOptions[optionName]);\n return options;\n }, []).join(\",\");\n };\n\n var createCordovaOptions = function (userOptions) {\n var cordovaOptions = shallowCloneCordovaOptions(userOptions);\n cordovaOptions.location = 'no';\n if (userOptions && userOptions.prompt == 'none') {\n cordovaOptions.hidden = 'yes';\n }\n return formatCordovaOptions(cordovaOptions);\n };\n\n var getCordovaRedirectUri = function() {\n return kc.redirectUri || 'http://localhost';\n };\n \n return {\n login: function(options) {\n var promise = createPromise();\n\n var cordovaOptions = createCordovaOptions(options);\n var loginUrl = kc.createLoginUrl(options);\n var ref = cordovaOpenWindowWrapper(loginUrl, '_blank', cordovaOptions);\n var completed = false;\n\n var closed = false;\n var closeBrowser = function() {\n closed = true;\n ref.close();\n };\n\n ref.addEventListener('loadstart', function(event) {\n if (event.url.indexOf(getCordovaRedirectUri()) == 0) {\n var callback = parseCallback(event.url);\n processCallback(callback, promise);\n closeBrowser();\n completed = true;\n }\n });\n\n ref.addEventListener('loaderror', function(event) {\n if (!completed) {\n if (event.url.indexOf(getCordovaRedirectUri()) == 0) {\n var callback = parseCallback(event.url);\n processCallback(callback, promise);\n closeBrowser();\n completed = true;\n } else {\n promise.setError();\n closeBrowser();\n }\n }\n });\n\n ref.addEventListener('exit', function(event) {\n if (!closed) {\n promise.setError({\n reason: \"closed_by_user\"\n });\n }\n });\n\n return promise.promise;\n },\n\n logout: function(options) {\n var promise = createPromise();\n\n var logoutUrl = kc.createLogoutUrl(options);\n var ref = cordovaOpenWindowWrapper(logoutUrl, '_blank', 'location=no,hidden=yes,clearcache=yes');\n\n var error;\n\n ref.addEventListener('loadstart', function(event) {\n if (event.url.indexOf(getCordovaRedirectUri()) == 0) {\n ref.close();\n }\n });\n\n ref.addEventListener('loaderror', function(event) {\n if (event.url.indexOf(getCordovaRedirectUri()) == 0) {\n ref.close();\n } else {\n error = true;\n ref.close();\n }\n });\n\n ref.addEventListener('exit', function(event) {\n if (error) {\n promise.setError();\n } else {\n kc.clearToken();\n promise.setSuccess();\n }\n });\n\n return promise.promise;\n },\n\n register : function(options) {\n var promise = createPromise();\n var registerUrl = kc.createRegisterUrl();\n var cordovaOptions = createCordovaOptions(options);\n var ref = cordovaOpenWindowWrapper(registerUrl, '_blank', cordovaOptions);\n ref.addEventListener('loadstart', function(event) {\n if (event.url.indexOf(getCordovaRedirectUri()) == 0) {\n ref.close();\n var oauth = parseCallback(event.url);\n processCallback(oauth, promise);\n }\n });\n return promise.promise;\n },\n\n accountManagement : function() {\n var accountUrl = kc.createAccountUrl();\n if (typeof accountUrl !== 'undefined') {\n var ref = cordovaOpenWindowWrapper(accountUrl, '_blank', 'location=no');\n ref.addEventListener('loadstart', function(event) {\n if (event.url.indexOf(getCordovaRedirectUri()) == 0) {\n ref.close();\n }\n });\n } else {\n throw \"Not supported by the OIDC server\";\n }\n },\n\n redirectUri: function(options) {\n return getCordovaRedirectUri();\n }\n }\n }\n\n if (type == 'cordova-native') {\n loginIframe.enable = false;\n\n return {\n login: function(options) {\n var promise = createPromise();\n var loginUrl = kc.createLoginUrl(options);\n\n universalLinks.subscribe('keycloak', function(event) {\n universalLinks.unsubscribe('keycloak');\n window.cordova.plugins.browsertab.close();\n var oauth = parseCallback(event.url);\n processCallback(oauth, promise);\n });\n\n window.cordova.plugins.browsertab.openUrl(loginUrl);\n return promise.promise;\n },\n\n logout: function(options) {\n var promise = createPromise();\n var logoutUrl = kc.createLogoutUrl(options);\n\n universalLinks.subscribe('keycloak', function(event) {\n universalLinks.unsubscribe('keycloak');\n window.cordova.plugins.browsertab.close();\n kc.clearToken();\n promise.setSuccess();\n });\n\n window.cordova.plugins.browsertab.openUrl(logoutUrl);\n return promise.promise;\n },\n\n register : function(options) {\n var promise = createPromise();\n var registerUrl = kc.createRegisterUrl(options);\n universalLinks.subscribe('keycloak' , function(event) {\n universalLinks.unsubscribe('keycloak');\n window.cordova.plugins.browsertab.close();\n var oauth = parseCallback(event.url);\n processCallback(oauth, promise);\n });\n window.cordova.plugins.browsertab.openUrl(registerUrl);\n return promise.promise;\n\n },\n\n accountManagement : function() {\n var accountUrl = kc.createAccountUrl();\n if (typeof accountUrl !== 'undefined') {\n window.cordova.plugins.browsertab.openUrl(accountUrl);\n } else {\n throw \"Not supported by the OIDC server\";\n }\n },\n\n redirectUri: function(options) {\n if (options && options.redirectUri) {\n return options.redirectUri;\n } else if (kc.redirectUri) {\n return kc.redirectUri;\n } else {\n return \"http://localhost\";\n }\n }\n }\n }\n\n throw 'invalid adapter type: ' + type;\n }\n\n var LocalStorage = function() {\n if (!(this instanceof LocalStorage)) {\n return new LocalStorage();\n }\n\n localStorage.setItem('kc-test', 'test');\n localStorage.removeItem('kc-test');\n\n var cs = this;\n\n function clearExpired() {\n var time = new Date().getTime();\n for (var i = 0; i < localStorage.length; i++) {\n var key = localStorage.key(i);\n if (key && key.indexOf('kc-callback-') == 0) {\n var value = localStorage.getItem(key);\n if (value) {\n try {\n var expires = JSON.parse(value).expires;\n if (!expires || expires < time) {\n localStorage.removeItem(key);\n }\n } catch (err) {\n localStorage.removeItem(key);\n }\n }\n }\n }\n }\n\n cs.get = function(state) {\n if (!state) {\n return;\n }\n\n var key = 'kc-callback-' + state;\n var value = localStorage.getItem(key);\n if (value) {\n localStorage.removeItem(key);\n value = JSON.parse(value);\n }\n\n clearExpired();\n return value;\n };\n\n cs.add = function(state) {\n clearExpired();\n\n var key = 'kc-callback-' + state.state;\n state.expires = new Date().getTime() + (60 * 60 * 1000);\n localStorage.setItem(key, JSON.stringify(state));\n };\n };\n\n var CookieStorage = function() {\n if (!(this instanceof CookieStorage)) {\n return new CookieStorage();\n }\n\n var cs = this;\n\n cs.get = function(state) {\n if (!state) {\n return;\n }\n\n var value = getCookie('kc-callback-' + state);\n setCookie('kc-callback-' + state, '', cookieExpiration(-100));\n if (value) {\n return JSON.parse(value);\n }\n };\n\n cs.add = function(state) {\n setCookie('kc-callback-' + state.state, JSON.stringify(state), cookieExpiration(60));\n };\n\n cs.removeItem = function(key) {\n setCookie(key, '', cookieExpiration(-100));\n };\n\n var cookieExpiration = function (minutes) {\n var exp = new Date();\n exp.setTime(exp.getTime() + (minutes*60*1000));\n return exp;\n };\n\n var getCookie = function (key) {\n var name = key + '=';\n var ca = document.cookie.split(';');\n for (var i = 0; i < ca.length; i++) {\n var c = ca[i];\n while (c.charAt(0) == ' ') {\n c = c.substring(1);\n }\n if (c.indexOf(name) == 0) {\n return c.substring(name.length, c.length);\n }\n }\n return '';\n };\n\n var setCookie = function (key, value, expirationDate) {\n var cookie = key + '=' + value + '; '\n + 'expires=' + expirationDate.toUTCString() + '; ';\n document.cookie = cookie;\n };\n };\n\n function createCallbackStorage() {\n try {\n return new LocalStorage();\n } catch (err) {\n }\n\n return new CookieStorage();\n }\n\n function createLogger(fn) {\n return function() {\n if (kc.enableLogging) {\n fn.apply(console, Array.prototype.slice.call(arguments));\n }\n };\n }\n}\n\n// See: https://developer.mozilla.org/en-US/docs/Glossary/Base64#the_unicode_problem\nfunction bytesToBase64(bytes) {\n const binString = String.fromCodePoint(...bytes);\n return btoa(binString);\n}\n\nexport { Keycloak as default };\n"],"names":["ERROR","WINDOW","window","root","JS_SHA256_NO_WINDOW","WEB_WORKER","self","NODE_JS","JS_SHA256_NO_NODE_JS","process","versions","node","global","COMMON_JS","JS_SHA256_NO_COMMON_JS","module","exports","AMD","define","ARRAY_BUFFER","JS_SHA256_NO_ARRAY_BUFFER","ArrayBuffer","HEX_CHARS","split","EXTRA","SHIFT","K","OUTPUT_TYPES","blocks","Array","isArray","obj","Object","prototype","toString","call","JS_SHA256_NO_ARRAY_BUFFER_IS_VIEW","isView","buffer","constructor","createOutputMethod","outputType","is224","message","Sha256","update","createMethod","method","nodeWrap","create","i","length","type","bufferFrom","crypto","require","Buffer","algorithm","from","JS_SHA256_NO_BUFFER_FROM","nodeMethod","createHash","digest","undefined","Error","Uint8Array","createHmacOutputMethod","key","HmacSha256","createHmacMethod","sharedMemory","this","h0","h1","h2","h3","h4","h5","h6","h7","block","start","bytes","hBytes","finalized","hashed","first","code","index","charCodeAt","array","oKeyPad","iKeyPad","b","inner","notString","lastByteIndex","hash","finalize","j","s0","s1","maj","t1","t2","ch","ab","da","cd","bc","a","c","d","e","f","g","h","chromeBugWorkAround","hex","arr","push","arrayBuffer","dataView","DataView","setUint32","innerHash","sha256","sha224","hmac","isCallable","tryToString","$TypeError","TypeError","argument","isPossiblePrototype","$String","String","isPrototypeOf","it","Prototype","isObject","uncurryThisAccessor","classof","O","byteLength","uncurryThis","arrayBufferByteLength","slice","error","toIndex","isDetached","detachTransferable","PROPER_STRUCTURED_CLONE_TRANSFER","structuredClone","min","Math","ArrayBufferPrototype","DataViewPrototype","isResizable","maxByteLength","getInt8","setInt8","newLength","preserveResizability","newBuffer","newByteLength","fixedLength","transfer","options","copyLength","NAME","Constructor","NATIVE_ARRAY_BUFFER","DESCRIPTORS","hasOwn","createNonEnumerableProperty","defineBuiltIn","defineBuiltInAccessor","getPrototypeOf","setPrototypeOf","wellKnownSymbol","uid","InternalStateModule","enforceInternalState","enforce","getInternalState","get","Int8Array","Int8ArrayPrototype","Uint8ClampedArray","Uint8ClampedArrayPrototype","TypedArray","TypedArrayPrototype","ObjectPrototype","TO_STRING_TAG","TYPED_ARRAY_TAG","TYPED_ARRAY_CONSTRUCTOR","NATIVE_ARRAY_BUFFER_VIEWS","opera","TYPED_ARRAY_TAG_REQUIRED","TypedArrayConstructorsList","Int16Array","Uint16Array","Int32Array","Uint32Array","Float32Array","Float64Array","BigIntArrayConstructorsList","BigInt64Array","BigUint64Array","klass","getTypedArrayConstructor","proto","state","isTypedArray","aTypedArray","aTypedArrayConstructor","C","exportTypedArrayMethod","KEY","property","forced","ARRAY","TypedArrayConstructor","error2","exportTypedArrayStaticMethod","Function","configurable","lengthOfArrayLike","list","$length","arguments","result","toIndexedObject","toAbsoluteIndex","IS_INCLUDES","$this","el","fromIndex","value","includes","indexOf","getOwnPropertyDescriptor","SILENT_ON_NON_WRITABLE_LENGTH_SET","defineProperty","writable","len","A","k","toIntegerOrInfinity","$RangeError","RangeError","relativeIndex","actualIndex","stringSlice","TO_STRING_TAG_SUPPORT","classofRaw","$Object","CORRECT_ARGUMENTS","tryGet","tag","callee","ownKeys","getOwnPropertyDescriptorModule","definePropertyModule","target","source","exceptions","keys","fails","F","createPropertyDescriptor","object","bitmap","enumerable","makeBuiltIn","name","descriptor","getter","set","setter","defineGlobalProperty","simple","unsafe","nonConfigurable","nonWritable","WorkerThreads","channel","$detach","tryNodeRequire","$ArrayBuffer","$MessageChannel","MessageChannel","detach","transferable","port1","postMessage","document","EXISTS","createElement","MAX_SAFE_INTEGER","IndexSizeError","s","m","DOMStringSizeError","HierarchyRequestError","WrongDocumentError","InvalidCharacterError","NoDataAllowedError","NoModificationAllowedError","NotFoundError","NotSupportedError","InUseAttributeError","InvalidStateError","SyntaxError","InvalidModificationError","NamespaceError","InvalidAccessError","ValidationError","TypeMismatchError","SecurityError","NetworkError","AbortError","URLMismatchError","QuotaExceededError","TimeoutError","InvalidNodeTypeError","DataCloneError","IS_DENO","IS_NODE","Deno","version","navigator","userAgent","match","v8","$Error","replace","TEST","arg","stack","V8_OR_CHAKRA_STACK_ENTRY","IS_V8_OR_CHAKRA_STACK","test","dropEntries","prepareStackTrace","copyConstructorProperties","isForced","FORCED","targetProperty","sourceProperty","TARGET","GLOBAL","STATIC","stat","dontCallGetSet","sham","exec","bind","hasOwnProperty","NATIVE_BIND","apply","FunctionPrototype","getDescriptor","PROPER","CONFIGURABLE","aCallable","uncurryThisWithBind","fn","aFunction","namespace","isNullOrUndefined","V","P","func","check","globalThis","toObject","propertyIsEnumerable","dummy","Wrapper","NewTarget","NewTargetPrototype","store","functionToString","inspectSource","has","NATIVE_WEAK_MAP","shared","sharedKey","hiddenKeys","OBJECT_ALREADY_INITIALIZED","WeakMap","getterFor","TYPE","metadata","facade","STATE","documentAll","all","replacement","feature","detection","data","normalize","POLYFILL","NATIVE","string","toLowerCase","getBuiltIn","USE_SYMBOL_AS_UID","$Symbol","toLength","CONFIGURABLE_FUNCTION_NAME","join","CONFIGURABLE_LENGTH","TEMPLATE","arity","ceil","floor","trunc","x","n","$default","IE8_DOM_DEFINE","V8_PROTOTYPE_DEFINE_BUG","anObject","toPropertyKey","$defineProperty","$getOwnPropertyDescriptor","ENUMERABLE","WRITABLE","Attributes","current","propertyIsEnumerableModule","internalObjectKeys","enumBugKeys","concat","getOwnPropertyNames","getOwnPropertySymbols","CORRECT_PROTOTYPE_GETTER","IE_PROTO","names","$propertyIsEnumerable","NASHORN_BUG","requireObjectCoercible","aPossiblePrototype","CORRECT_SETTER","__proto__","input","pref","val","valueOf","getOwnPropertyNamesModule","getOwnPropertySymbolsModule","IS_PURE","SHARED","mode","copyright","license","V8","IS_BROWSER","clone","V8_VERSION","symbol","Symbol","max","integer","toPrimitive","prim","BigInt","number","IndexedObject","isSymbol","getMethod","ordinaryToPrimitive","TO_PRIMITIVE","exoticToPrim","id","postfix","random","NATIVE_SYMBOL","iterator","passed","required","WellKnownSymbolsStore","createWellKnownSymbol","withoutSetter","$","$transfer","transferToFixedLength","setArrayLength","doesNotExceedSafeInteger","INCORRECT_TO_LENGTH","properErrorOnNonWritableLength","item","argCount","arrayToReversed","ArrayBufferViewCore","arrayFromConstructorAndList","sort","compareFn","arrayWith","isBigIntArray","toBigInt","PROPER_ORDER","actualValue","anInstance","inheritIfRequired","normalizeStringArgument","DOMExceptionConstants","clearErrorStack","DOM_EXCEPTION","NativeDOMException","$DOMException","DOMExceptionPrototype","argumentsLength","that","ERROR_HAS_STACK","DOM_EXCEPTION_HAS_STACK","BUGGY_DESCRIPTOR","FORCED_CONSTRUCTOR","DOMException","PolyfilledDOMException","PolyfilledDOMExceptionPrototype","constant","constantName","validateArgumentsLength","$URLSearchParams","URLSearchParams","URLSearchParamsPrototype","append","$delete","forEach","params","$value","entries","v","entry","dindex","found","entriesLength","getAll","$has","values","count","InvalidTokenError","b64DecodeUnicode","str","decodeURIComponent","atob","p","toUpperCase","base64UrlDecode","output","err","jwtDecode","token","pos","header","part","decoded","JSON","parse","Promise","Keycloak","config","adapter","callbackStorage","kc","refreshQueue","loginIframe","enable","callbackList","interval","scripts","getElementsByTagName","src","iframeVersion","substring","useNonce","logInfo","createLogger","console","info","logWarn","warn","generateRandomData","msCrypto","getRandomValues","generateCodeVerifier","generateRandomString","alphabet","randomData","chars","fromCharCode","generatePkceChallenge","pkceMethod","codeVerifier","hashBytes","encodedHash","bytesToBase64","buildClaimsParameter","requestedAcr","claims","id_token","acr","stringify","getRealmUrl","authServerUrl","charAt","encodeURIComponent","realm","getOrigin","location","origin","protocol","hostname","port","processCallback","oauth","promise","prompt","timeLocal","Date","getTime","onActionUpdate","error_description","login","loginOptions","errorData","onAuthError","setError","setSuccess","flow","access_token","authSuccess","url","endpoints","req","XMLHttpRequest","open","setRequestHeader","clientId","redirectUri","pkceCodeVerifier","withCredentials","onreadystatechange","readyState","status","tokenResponse","responseText","scheduleCheckIframe","send","accessToken","refreshToken","idToken","fulfillPromise","setToken","idTokenParsed","nonce","storedNonce","clearToken","onAuthSuccess","loadConfig","configUrl","createPromise","setupOidcEndoints","oidcConfiguration","authorize","authorization_endpoint","token_endpoint","logout","end_session_endpoint","checkSessionIframe","check_session_iframe","register","userinfo","userinfo_endpoint","thirdPartyCookiesIframe","fileLoaded","oidcProvider","oidcProviderConfigUrl","oidcProviderConfig","substr","xhr","responseURL","startsWith","tokenTimeoutHandle","clearTimeout","refreshTokenParsed","tokenParsed","sessionId","sid","authenticated","subject","sub","realmAccess","realm_access","resourceAccess","resource_access","timeSkew","iat","onTokenExpired","expiresIn","round","setTimeout","createUUID","hexDigits","uuid","parseCallback","parseCallbackUrl","oauthState","valid","supportedParams","newUrl","parsed","queryIndex","fragmentIndex","responseMode","parseCallbackParams","paramsString","oauthParams","resolve","reject","applyTimeoutToPromise","timeout","errorMessage","timeoutHandle","timeoutPromise","race","finally","setupCheckLoginIframe","iframe","onload","authUrl","iframeOrigin","setAttribute","style","display","body","appendChild","messageCallback","event","contentWindow","callbacks","splice","addEventListener","checkLoginIframe","then","unchanged","msg","check3pCookiesSupported","silentCheckSsoRedirectUri","silentCheckSsoFallback","removeChild","removeEventListener","messageReceiveTimeout","loadAdapter","assign","createLoginUrl","async","logoutMethod","createLogoutUrl","logoutUrl","response","fetch","headers","id_token_hint","client_id","post_logout_redirect_uri","redirected","href","ok","reload","createRegisterUrl","accountManagement","accountUrl","createAccountUrl","encodeHash","cordovaOpenWindowWrapper","loginUrl","cordova","InAppBrowser","shallowCloneCordovaOptions","userOptions","cordovaOptions","reduce","optionName","formatCordovaOptions","createCordovaOptions","hidden","getCordovaRedirectUri","ref","completed","closed","closeBrowser","close","callback","reason","registerUrl","universalLinks","subscribe","unsubscribe","plugins","browsertab","openUrl","init","initOptions","didInitialize","createCallbackStorage","adapters","Cordova","checkLoginIframeInterval","onLoad","loginRequired","responseType","enableLogging","scope","acrValues","initPromise","onReady","catch","configPromise","doLogin","locale","checkSsoSilently","ifrm","processInit","history","replaceState","updateToken","domReady","checkReadyState","baseUrl","callbackState","action","maxAge","loginHint","idpHint","claimsParameter","pkceChallenge","add","hasRealmRole","role","access","roles","hasResourceRole","resource","loadUserProfile","profile","loadUserInfo","userInfo","isTokenExpired","minValidity","isNaN","onAuthRefreshSuccess","pop","onAuthRefreshError","iframePromise","onAuthLogout","LocalStorage","localStorage","setItem","removeItem","cs","clearExpired","time","getItem","expires","CookieStorage","getCookie","setCookie","cookieExpiration","minutes","exp","setTime","ca","cookie","expirationDate","toUTCString","binString","fromCodePoint","btoa"],"sourceRoot":""}