diff --git a/.nvmrc b/.nvmrc new file mode 100644 index 00000000..4a9c19cb --- /dev/null +++ b/.nvmrc @@ -0,0 +1 @@ +v14.21.3 diff --git a/dist/build/bundle.dev.html b/dist/build/bundle.dev.html index 36b6fd74..40b0b9cb 100644 --- a/dist/build/bundle.dev.html +++ b/dist/build/bundle.dev.html @@ -3,7 +3,7 @@ - fhirclient [1 Sep 2022 at 11:23] + fhirclient [7 Feb 2024 at 11:46] diff --git a/dist/build/bundle.prod.html b/dist/build/bundle.prod.html index 2adcf204..8eeaece0 100644 --- a/dist/build/bundle.prod.html +++ b/dist/build/bundle.prod.html @@ -3,7 +3,7 @@ - fhirclient [1 Sep 2022 at 11:23] + fhirclient [7 Feb 2024 at 11:46] diff --git a/dist/build/bundle.pure.dev.html b/dist/build/bundle.pure.dev.html index 18405763..e4caa4f2 100644 --- a/dist/build/bundle.pure.dev.html +++ b/dist/build/bundle.pure.dev.html @@ -3,7 +3,7 @@ - fhirclient [1 Sep 2022 at 11:23] + fhirclient [7 Feb 2024 at 11:46] diff --git a/dist/build/bundle.pure.prod.html b/dist/build/bundle.pure.prod.html index 9ab13499..cb379a5f 100644 --- a/dist/build/bundle.pure.prod.html +++ b/dist/build/bundle.pure.prod.html @@ -3,7 +3,7 @@ - fhirclient [1 Sep 2022 at 11:23] + fhirclient [7 Feb 2024 at 11:46] diff --git a/dist/build/fhir-client.js b/dist/build/fhir-client.js index 7424f9e6..e54ca63b 100644 --- a/dist/build/fhir-client.js +++ b/dist/build/fhir-client.js @@ -377,29 +377,23 @@ var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_RESULT__;(function (fac "use strict"; -__webpack_require__(/*! core-js/modules/es.regexp.exec.js */ "./node_modules/core-js/modules/es.regexp.exec.js"); - -__webpack_require__(/*! core-js/modules/es.string.match.js */ "./node_modules/core-js/modules/es.string.match.js"); - +__webpack_require__(/*! core-js/modules/es.array.splice.js */ "./node_modules/core-js/modules/es.array.splice.js"); __webpack_require__(/*! core-js/modules/es.regexp.constructor.js */ "./node_modules/core-js/modules/es.regexp.constructor.js"); - +__webpack_require__(/*! core-js/modules/es.regexp.exec.js */ "./node_modules/core-js/modules/es.regexp.exec.js"); __webpack_require__(/*! core-js/modules/es.regexp.to-string.js */ "./node_modules/core-js/modules/es.regexp.to-string.js"); - -__webpack_require__(/*! core-js/modules/es.array.splice.js */ "./node_modules/core-js/modules/es.array.splice.js"); - +__webpack_require__(/*! core-js/modules/es.string.match.js */ "./node_modules/core-js/modules/es.string.match.js"); __webpack_require__(/*! core-js/modules/es.string.replace.js */ "./node_modules/core-js/modules/es.string.replace.js"); - /* eslint-env browser */ /** * This is the web browser implementation of `debug()`. */ + exports.formatArgs = formatArgs; exports.save = save; exports.load = load; exports.useColors = useColors; exports.storage = localstorage(); - exports.destroy = function () { var warned = false; return function () { @@ -409,12 +403,13 @@ exports.destroy = function () { } }; }(); + /** * Colors. */ - exports.colors = ['#0000CC', '#0000FF', '#0033CC', '#0033FF', '#0066CC', '#0066FF', '#0099CC', '#0099FF', '#00CC00', '#00CC33', '#00CC66', '#00CC99', '#00CCCC', '#00CCFF', '#3300CC', '#3300FF', '#3333CC', '#3333FF', '#3366CC', '#3366FF', '#3399CC', '#3399FF', '#33CC00', '#33CC33', '#33CC66', '#33CC99', '#33CCCC', '#33CCFF', '#6600CC', '#6600FF', '#6633CC', '#6633FF', '#66CC00', '#66CC33', '#9900CC', '#9900FF', '#9933CC', '#9933FF', '#99CC00', '#99CC33', '#CC0000', '#CC0033', '#CC0066', '#CC0099', '#CC00CC', '#CC00FF', '#CC3300', '#CC3333', '#CC3366', '#CC3399', '#CC33CC', '#CC33FF', '#CC6600', '#CC6633', '#CC9900', '#CC9933', '#CCCC00', '#CCCC33', '#FF0000', '#FF0033', '#FF0066', '#FF0099', '#FF00CC', '#FF00FF', '#FF3300', '#FF3333', '#FF3366', '#FF3399', '#FF33CC', '#FF33FF', '#FF6600', '#FF6633', '#FF9900', '#FF9933', '#FFCC00', '#FFCC33']; + /** * Currently only WebKit-based Web Inspectors, Firefox >= v31, * and the Firebug extension (any Firefox version) are known @@ -422,57 +417,57 @@ exports.colors = ['#0000CC', '#0000FF', '#0033CC', '#0033FF', '#0066CC', '#0066F * * TODO: add a `localStorage` variable to explicitly enable/disable colors */ -// eslint-disable-next-line complexity +// eslint-disable-next-line complexity function useColors() { // NB: In an Electron preload script, document will be defined but not fully // initialized. Since we know we're in Chrome, we'll just detect this case // explicitly if (typeof window !== 'undefined' && window.process && (window.process.type === 'renderer' || window.process.__nwjs)) { return true; - } // Internet Explorer and Edge do not support colors. - + } + // Internet Explorer and Edge do not support colors. if (typeof navigator !== 'undefined' && navigator.userAgent && navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/)) { return false; - } // Is webkit? http://stackoverflow.com/a/16459606/376773 - // document is undefined in react-native: https://github.com/facebook/react-native/pull/1632 - + } - return typeof document !== 'undefined' && document.documentElement && document.documentElement.style && document.documentElement.style.WebkitAppearance || // Is firebug? http://stackoverflow.com/a/398120/376773 - typeof window !== 'undefined' && window.console && (window.console.firebug || window.console.exception && window.console.table) || // Is firefox >= v31? + // Is webkit? http://stackoverflow.com/a/16459606/376773 + // document is undefined in react-native: https://github.com/facebook/react-native/pull/1632 + return typeof document !== 'undefined' && document.documentElement && document.documentElement.style && document.documentElement.style.WebkitAppearance || + // Is firebug? http://stackoverflow.com/a/398120/376773 + typeof window !== 'undefined' && window.console && (window.console.firebug || window.console.exception && window.console.table) || + // Is firefox >= v31? // https://developer.mozilla.org/en-US/docs/Tools/Web_Console#Styling_messages - typeof navigator !== 'undefined' && navigator.userAgent && navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/) && parseInt(RegExp.$1, 10) >= 31 || // Double check webkit in userAgent just in case we are in a worker + typeof navigator !== 'undefined' && navigator.userAgent && navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/) && parseInt(RegExp.$1, 10) >= 31 || + // Double check webkit in userAgent just in case we are in a worker typeof navigator !== 'undefined' && navigator.userAgent && navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/); } + /** * Colorize log arguments if enabled. * * @api public */ - function formatArgs(args) { args[0] = (this.useColors ? '%c' : '') + this.namespace + (this.useColors ? ' %c' : ' ') + args[0] + (this.useColors ? '%c ' : ' ') + '+' + module.exports.humanize(this.diff); - if (!this.useColors) { return; } - var c = 'color: ' + this.color; - args.splice(1, 0, c, 'color: inherit'); // The final "%c" is somewhat tricky, because there could be other + args.splice(1, 0, c, 'color: inherit'); + + // The final "%c" is somewhat tricky, because there could be other // arguments passed either before or after the %c, so we need to // figure out the correct index to insert the CSS into - var index = 0; var lastC = 0; args[0].replace(/%[a-zA-Z%]/g, function (match) { if (match === '%%') { return; } - index++; - if (match === '%c') { // We only are interested in the *last* %c // (the user may have provided their own) @@ -481,6 +476,7 @@ function formatArgs(args) { }); args.splice(lastC, 0, c); } + /** * Invokes `console.debug()` when available. * No-op when `console.debug` is not a "function". @@ -489,17 +485,14 @@ function formatArgs(args) { * * @api public */ - - exports.log = console.debug || console.log || function () {}; + /** * Save `namespaces`. * * @param {String} namespaces * @api private */ - - function save(namespaces) { try { if (namespaces) { @@ -507,34 +500,34 @@ function save(namespaces) { } else { exports.storage.removeItem('debug'); } - } catch (error) {// Swallow + } catch (error) { + // Swallow // XXX (@Qix-) should we be logging these? } } + /** * Load `namespaces`. * * @return {String} returns the previously persisted debug modes * @api private */ - - function load() { var r; - try { r = exports.storage.getItem('debug'); - } catch (error) {// Swallow + } catch (error) { + // Swallow // XXX (@Qix-) should we be logging these? - } // If debug isn't set in LS, and we're in Electron, try to load $DEBUG - + } + // If debug isn't set in LS, and we're in Electron, try to load $DEBUG if (!r && typeof process !== 'undefined' && 'env' in process) { r = process.env.DEBUG; } - return r; } + /** * Localstorage attempts to return the localstorage. * @@ -546,19 +539,19 @@ function load() { * @api private */ - function localstorage() { try { // TVMLKit (Apple TV JS Runtime) does not have a window object, just localStorage in the global context // The Browser also has localStorage in the global context. return localStorage; - } catch (error) {// Swallow + } catch (error) { + // Swallow // XXX (@Qix-) should we be logging these? } } - module.exports = __webpack_require__(/*! ./common */ "./node_modules/debug/src/common.js")(exports); var formatters = module.exports.formatters; + /** * Map %j to `JSON.stringify()`, since no Web Inspectors do that by default. */ @@ -583,41 +576,26 @@ formatters.j = function (v) { var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/interopRequireDefault.js"); - var _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ "./node_modules/@babel/runtime/helpers/toConsumableArray.js")); - -__webpack_require__(/*! core-js/modules/es.object.to-string.js */ "./node_modules/core-js/modules/es.object.to-string.js"); - -__webpack_require__(/*! core-js/modules/web.dom-collections.for-each.js */ "./node_modules/core-js/modules/web.dom-collections.for-each.js"); - -__webpack_require__(/*! core-js/modules/es.object.keys.js */ "./node_modules/core-js/modules/es.object.keys.js"); - +__webpack_require__(/*! core-js/modules/es.array.concat.js */ "./node_modules/core-js/modules/es.array.concat.js"); +__webpack_require__(/*! core-js/modules/es.array.join.js */ "./node_modules/core-js/modules/es.array.join.js"); +__webpack_require__(/*! core-js/modules/es.array.map.js */ "./node_modules/core-js/modules/es.array.map.js"); +__webpack_require__(/*! core-js/modules/es.array.slice.js */ "./node_modules/core-js/modules/es.array.slice.js"); +__webpack_require__(/*! core-js/modules/es.array.splice.js */ "./node_modules/core-js/modules/es.array.splice.js"); __webpack_require__(/*! core-js/modules/es.number.constructor.js */ "./node_modules/core-js/modules/es.number.constructor.js"); - +__webpack_require__(/*! core-js/modules/es.object.keys.js */ "./node_modules/core-js/modules/es.object.keys.js"); +__webpack_require__(/*! core-js/modules/es.object.to-string.js */ "./node_modules/core-js/modules/es.object.to-string.js"); +__webpack_require__(/*! core-js/modules/es.regexp.constructor.js */ "./node_modules/core-js/modules/es.regexp.constructor.js"); __webpack_require__(/*! core-js/modules/es.regexp.exec.js */ "./node_modules/core-js/modules/es.regexp.exec.js"); - +__webpack_require__(/*! core-js/modules/es.regexp.to-string.js */ "./node_modules/core-js/modules/es.regexp.to-string.js"); __webpack_require__(/*! core-js/modules/es.string.replace.js */ "./node_modules/core-js/modules/es.string.replace.js"); - -__webpack_require__(/*! core-js/modules/es.array.splice.js */ "./node_modules/core-js/modules/es.array.splice.js"); - __webpack_require__(/*! core-js/modules/es.string.split.js */ "./node_modules/core-js/modules/es.string.split.js"); - -__webpack_require__(/*! core-js/modules/es.regexp.constructor.js */ "./node_modules/core-js/modules/es.regexp.constructor.js"); - -__webpack_require__(/*! core-js/modules/es.regexp.to-string.js */ "./node_modules/core-js/modules/es.regexp.to-string.js"); - -__webpack_require__(/*! core-js/modules/es.array.slice.js */ "./node_modules/core-js/modules/es.array.slice.js"); - -__webpack_require__(/*! core-js/modules/es.array.join.js */ "./node_modules/core-js/modules/es.array.join.js"); - -__webpack_require__(/*! core-js/modules/es.array.concat.js */ "./node_modules/core-js/modules/es.array.concat.js"); - -__webpack_require__(/*! core-js/modules/es.array.map.js */ "./node_modules/core-js/modules/es.array.map.js"); - +__webpack_require__(/*! core-js/modules/web.dom-collections.for-each.js */ "./node_modules/core-js/modules/web.dom-collections.for-each.js"); /** * This is the common logic for both the Node.js and web browser * implementations of `debug()`. */ + function setup(env) { createDebug.debug = createDebug; createDebug.default = createDebug; @@ -630,38 +608,37 @@ function setup(env) { Object.keys(env).forEach(function (key) { createDebug[key] = env[key]; }); + /** * The currently active debug mode names, and names to skip. */ createDebug.names = []; createDebug.skips = []; + /** * Map of special "%n" handling functions, for the debug "format" argument. * * Valid key names are a single, lower or upper-case letter, i.e. "n" and "N". */ - createDebug.formatters = {}; + /** * Selects a color for a debug namespace * @param {String} namespace The namespace string for the debug instance to be colored * @return {Number|String} An ANSI color code for the given namespace * @api private */ - function selectColor(namespace) { var hash = 0; - for (var i = 0; i < namespace.length; i++) { hash = (hash << 5) - hash + namespace.charCodeAt(i); hash |= 0; // Convert to 32bit integer } - return createDebug.colors[Math.abs(hash) % createDebug.colors.length]; } - createDebug.selectColor = selectColor; + /** * Create a debugger with the given `namespace`. * @@ -669,25 +646,22 @@ function setup(env) { * @return {Function} * @api public */ - function createDebug(namespace) { var prevTime; var enableOverride = null; var namespacesCache; var enabledCache; - function debug() { for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { args[_key] = arguments[_key]; } - // Disabled? if (!debug.enabled) { return; } + var self = debug; - var self = debug; // Set `diff` timestamp - + // Set `diff` timestamp var curr = Number(new Date()); var ms = curr - (prevTime || curr); self.diff = ms; @@ -695,39 +669,36 @@ function setup(env) { self.curr = curr; prevTime = curr; args[0] = createDebug.coerce(args[0]); - if (typeof args[0] !== 'string') { // Anything else let's inspect with %O args.unshift('%O'); - } // Apply any `formatters` transformations - + } + // Apply any `formatters` transformations var index = 0; args[0] = args[0].replace(/%([a-zA-Z%])/g, function (match, format) { // If we encounter an escaped % then don't increase the array index if (match === '%%') { return '%'; } - index++; var formatter = createDebug.formatters[format]; - if (typeof formatter === 'function') { var val = args[index]; - match = formatter.call(self, val); // Now we need to remove `args[index]` since it's inlined in the `format` + match = formatter.call(self, val); + // Now we need to remove `args[index]` since it's inlined in the `format` args.splice(index, 1); index--; } - return match; - }); // Apply env-specific formatting (colors, etc.) + }); + // Apply env-specific formatting (colors, etc.) createDebug.formatArgs.call(self, args); var logFn = self.log || createDebug.log; logFn.apply(self, args); } - debug.namespace = namespace; debug.useColors = createDebug.useColors(); debug.color = createDebug.selectColor(namespace); @@ -741,31 +712,29 @@ function setup(env) { if (enableOverride !== null) { return enableOverride; } - if (namespacesCache !== createDebug.namespaces) { namespacesCache = createDebug.namespaces; enabledCache = createDebug.enabled(namespace); } - return enabledCache; }, set: function set(v) { enableOverride = v; } - }); // Env-specific initialization logic for debug instances + }); + // Env-specific initialization logic for debug instances if (typeof createDebug.init === 'function') { createDebug.init(debug); } - return debug; } - function extend(namespace, delimiter) { var newDebug = createDebug(this.namespace + (typeof delimiter === 'undefined' ? ':' : delimiter) + namespace); newDebug.log = this.log; return newDebug; } + /** * Enables a debug mode by namespaces. This can include modes * separated by a colon and wildcards. @@ -773,8 +742,6 @@ function setup(env) { * @param {String} namespaces * @api public */ - - function enable(namespaces) { createDebug.save(namespaces); createDebug.namespaces = namespaces; @@ -783,15 +750,12 @@ function setup(env) { var i; var split = (typeof namespaces === 'string' ? namespaces : '').split(/[\s,]+/); var len = split.length; - for (i = 0; i < len; i++) { if (!split[i]) { // ignore empty strings continue; } - namespaces = split[i].replace(/\*/g, '.*?'); - if (namespaces[0] === '-') { createDebug.skips.push(new RegExp('^' + namespaces.slice(1) + '$')); } else { @@ -799,14 +763,13 @@ function setup(env) { } } } + /** * Disable debug output. * * @return {String} namespaces * @api public */ - - function disable() { var namespaces = [].concat((0, _toConsumableArray2.default)(createDebug.names.map(toNamespace)), (0, _toConsumableArray2.default)(createDebug.skips.map(toNamespace).map(function (namespace) { return '-' + namespace; @@ -814,6 +777,7 @@ function setup(env) { createDebug.enable(''); return namespaces; } + /** * Returns true if the given mode name is enabled, false otherwise. * @@ -821,30 +785,25 @@ function setup(env) { * @return {Boolean} * @api public */ - - function enabled(name) { if (name[name.length - 1] === '*') { return true; } - var i; var len; - for (i = 0, len = createDebug.skips.length; i < len; i++) { if (createDebug.skips[i].test(name)) { return false; } } - for (i = 0, len = createDebug.names.length; i < len; i++) { if (createDebug.names[i].test(name)) { return true; } } - return false; } + /** * Convert regexp to namespace * @@ -852,11 +811,10 @@ function setup(env) { * @return {String} namespace * @api private */ - - function toNamespace(regexp) { return regexp.toString().substring(2, regexp.toString().length - 2).replace(/\.\*\?$/, '*'); } + /** * Coerce `val`. * @@ -864,29 +822,23 @@ function setup(env) { * @return {Mixed} * @api private */ - - function coerce(val) { if (val instanceof Error) { return val.stack || val.message; } - return val; } + /** * XXX DO NOT USE. This is a temporary stub function. * XXX It WILL be removed in the next major release. */ - - function destroy() { console.warn('Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.'); } - createDebug.enable(createDebug.load()); return createDebug; } - module.exports = setup; /***/ }), @@ -901,97 +853,53 @@ module.exports = setup; __webpack_require__(/*! core-js/modules/es.symbol.js */ "./node_modules/core-js/modules/es.symbol.js"); - __webpack_require__(/*! core-js/modules/es.object.get-own-property-descriptor.js */ "./node_modules/core-js/modules/es.object.get-own-property-descriptor.js"); - __webpack_require__(/*! core-js/modules/es.object.get-own-property-descriptors.js */ "./node_modules/core-js/modules/es.object.get-own-property-descriptors.js"); - var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/interopRequireDefault.js"); - var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/@babel/runtime/regenerator/index.js")); - -__webpack_require__(/*! core-js/modules/es.object.to-string.js */ "./node_modules/core-js/modules/es.object.to-string.js"); - -__webpack_require__(/*! core-js/modules/es.promise.js */ "./node_modules/core-js/modules/es.promise.js"); - +__webpack_require__(/*! core-js/modules/es.array.concat.js */ "./node_modules/core-js/modules/es.array.concat.js"); +__webpack_require__(/*! core-js/modules/es.array.filter.js */ "./node_modules/core-js/modules/es.array.filter.js"); +__webpack_require__(/*! core-js/modules/es.array.find.js */ "./node_modules/core-js/modules/es.array.find.js"); +__webpack_require__(/*! core-js/modules/es.array.flat.js */ "./node_modules/core-js/modules/es.array.flat.js"); __webpack_require__(/*! core-js/modules/es.array.iterator.js */ "./node_modules/core-js/modules/es.array.iterator.js"); - -__webpack_require__(/*! core-js/modules/es.string.iterator.js */ "./node_modules/core-js/modules/es.string.iterator.js"); - -__webpack_require__(/*! core-js/modules/web.dom-collections.iterator.js */ "./node_modules/core-js/modules/web.dom-collections.iterator.js"); - +__webpack_require__(/*! core-js/modules/es.array.join.js */ "./node_modules/core-js/modules/es.array.join.js"); __webpack_require__(/*! core-js/modules/es.array.map.js */ "./node_modules/core-js/modules/es.array.map.js"); - -__webpack_require__(/*! core-js/modules/es.array.filter.js */ "./node_modules/core-js/modules/es.array.filter.js"); - +__webpack_require__(/*! core-js/modules/es.array.slice.js */ "./node_modules/core-js/modules/es.array.slice.js"); +__webpack_require__(/*! core-js/modules/es.array.sort.js */ "./node_modules/core-js/modules/es.array.sort.js"); +__webpack_require__(/*! core-js/modules/es.array.unscopables.flat.js */ "./node_modules/core-js/modules/es.array.unscopables.flat.js"); +__webpack_require__(/*! core-js/modules/es.object.assign.js */ "./node_modules/core-js/modules/es.object.assign.js"); +__webpack_require__(/*! core-js/modules/es.object.keys.js */ "./node_modules/core-js/modules/es.object.keys.js"); +__webpack_require__(/*! core-js/modules/es.object.to-string.js */ "./node_modules/core-js/modules/es.object.to-string.js"); +__webpack_require__(/*! core-js/modules/es.promise.js */ "./node_modules/core-js/modules/es.promise.js"); +__webpack_require__(/*! core-js/modules/es.promise.finally.js */ "./node_modules/core-js/modules/es.promise.finally.js"); __webpack_require__(/*! core-js/modules/es.regexp.exec.js */ "./node_modules/core-js/modules/es.regexp.exec.js"); - +__webpack_require__(/*! core-js/modules/es.string.iterator.js */ "./node_modules/core-js/modules/es.string.iterator.js"); +__webpack_require__(/*! core-js/modules/es.string.match.js */ "./node_modules/core-js/modules/es.string.match.js"); __webpack_require__(/*! core-js/modules/es.string.replace.js */ "./node_modules/core-js/modules/es.string.replace.js"); - -__webpack_require__(/*! core-js/modules/es.array.concat.js */ "./node_modules/core-js/modules/es.array.concat.js"); - +__webpack_require__(/*! core-js/modules/es.string.search.js */ "./node_modules/core-js/modules/es.string.search.js"); __webpack_require__(/*! core-js/modules/es.string.trim.js */ "./node_modules/core-js/modules/es.string.trim.js"); - +__webpack_require__(/*! core-js/modules/es.string.link.js */ "./node_modules/core-js/modules/es.string.link.js"); __webpack_require__(/*! core-js/modules/web.dom-collections.for-each.js */ "./node_modules/core-js/modules/web.dom-collections.for-each.js"); - -__webpack_require__(/*! core-js/modules/es.string.split.js */ "./node_modules/core-js/modules/es.string.split.js"); - -__webpack_require__(/*! core-js/modules/es.array.sort.js */ "./node_modules/core-js/modules/es.array.sort.js"); - -__webpack_require__(/*! core-js/modules/es.object.keys.js */ "./node_modules/core-js/modules/es.object.keys.js"); - -__webpack_require__(/*! core-js/modules/es.string.match.js */ "./node_modules/core-js/modules/es.string.match.js"); - -__webpack_require__(/*! core-js/modules/es.array.join.js */ "./node_modules/core-js/modules/es.array.join.js"); - -__webpack_require__(/*! core-js/modules/es.array.slice.js */ "./node_modules/core-js/modules/es.array.slice.js"); - +__webpack_require__(/*! core-js/modules/web.dom-collections.iterator.js */ "./node_modules/core-js/modules/web.dom-collections.iterator.js"); __webpack_require__(/*! core-js/modules/web.url.js */ "./node_modules/core-js/modules/web.url.js"); - __webpack_require__(/*! core-js/modules/web.url-search-params.js */ "./node_modules/core-js/modules/web.url-search-params.js"); - -__webpack_require__(/*! core-js/modules/es.array.flat.js */ "./node_modules/core-js/modules/es.array.flat.js"); - -__webpack_require__(/*! core-js/modules/es.array.unscopables.flat.js */ "./node_modules/core-js/modules/es.array.unscopables.flat.js"); - -__webpack_require__(/*! core-js/modules/es.string.link.js */ "./node_modules/core-js/modules/es.string.link.js"); - -__webpack_require__(/*! core-js/modules/es.array.find.js */ "./node_modules/core-js/modules/es.array.find.js"); - -__webpack_require__(/*! core-js/modules/es.object.assign.js */ "./node_modules/core-js/modules/es.object.assign.js"); - -__webpack_require__(/*! core-js/modules/es.string.search.js */ "./node_modules/core-js/modules/es.string.search.js"); - -__webpack_require__(/*! core-js/modules/es.promise.finally.js */ "./node_modules/core-js/modules/es.promise.finally.js"); - var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/@babel/runtime/helpers/defineProperty.js")); - var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/@babel/runtime/helpers/classCallCheck.js")); - var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/@babel/runtime/helpers/createClass.js")); - var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/@babel/runtime/helpers/asyncToGenerator.js")); - -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } - -function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } - +function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; } +function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; } Object.defineProperty(exports, "__esModule", ({ value: true })); - var lib_1 = __webpack_require__(/*! ./lib */ "./src/lib.ts"); - var strings_1 = __webpack_require__(/*! ./strings */ "./src/strings.ts"); - -var settings_1 = __webpack_require__(/*! ./settings */ "./src/settings.ts"); // $lab:coverage:off$ +var settings_1 = __webpack_require__(/*! ./settings */ "./src/settings.ts"); +// $lab:coverage:off$ // @ts-ignore - - var _ref = typeof FHIRCLIENT_PURE !== "undefined" ? window : __webpack_require__(/*! cross-fetch */ "./node_modules/cross-fetch/dist/browser-ponyfill.js"), - Response = _ref.Response; // $lab:coverage:on$ - - + Response = _ref.Response; +// $lab:coverage:on$ var debug = lib_1.debug.extend("client"); /** * Adds patient context to requestOptions object to be used with [[Client.request]] @@ -1000,7 +908,6 @@ var debug = lib_1.debug.extend("client"); * @param client Current FHIR client object containing patient context * @return requestOptions object contextualized to current patient */ - function contextualize(_x, _x2) { return _contextualize.apply(this, arguments); } @@ -1013,85 +920,65 @@ function contextualize(_x, _x2) { * @returns The resolved reference * @private */ - - function _contextualize() { _contextualize = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee9(requestOptions, client) { var base, contextualURL, _contextualURL; - return _regenerator.default.wrap(function _callee9$(_context9) { - while (1) { - switch (_context9.prev = _context9.next) { - case 0: - _contextualURL = function _contextualURL3() { - _contextualURL = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee8(_url) { - var resourceType, conformance, searchParam; - return _regenerator.default.wrap(function _callee8$(_context8) { - while (1) { - switch (_context8.prev = _context8.next) { - case 0: - resourceType = _url.pathname.split("/").pop(); - (0, lib_1.assert)(resourceType, "Invalid url \"".concat(_url, "\"")); - (0, lib_1.assert)(settings_1.patientCompartment.indexOf(resourceType) > -1, "Cannot filter \"".concat(resourceType, "\" resources by patient")); - _context8.next = 5; - return (0, lib_1.fetchConformanceStatement)(client.state.serverUrl); - - case 5: - conformance = _context8.sent; - searchParam = (0, lib_1.getPatientParam)(conformance, resourceType); - - _url.searchParams.set(searchParam, client.patient.id); - - return _context8.abrupt("return", _url.href); - - case 9: - case "end": - return _context8.stop(); - } - } - }, _callee8); - })); - return _contextualURL.apply(this, arguments); - }; - - contextualURL = function _contextualURL2(_x9) { - return _contextualURL.apply(this, arguments); - }; - - base = (0, lib_1.absolute)("/", client.state.serverUrl); - - if (!(typeof requestOptions == "string" || requestOptions instanceof URL)) { - _context9.next = 8; - break; - } - - _context9.next = 6; - return contextualURL(new URL(requestOptions + "", base)); - - case 6: - _context9.t0 = _context9.sent; - return _context9.abrupt("return", { - url: _context9.t0 - }); - - case 8: - _context9.next = 10; - return contextualURL(new URL(requestOptions.url + "", base)); - - case 10: - requestOptions.url = _context9.sent; - return _context9.abrupt("return", requestOptions); - - case 12: - case "end": - return _context9.stop(); - } - } - }, _callee9); + while (1) switch (_context9.prev = _context9.next) { + case 0: + _contextualURL = function _contextualURL3() { + _contextualURL = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee8(_url) { + var resourceType, conformance, searchParam; + return _regenerator.default.wrap(function _callee8$(_context8) { + while (1) switch (_context8.prev = _context8.next) { + case 0: + resourceType = _url.pathname.split("/").pop(); + (0, lib_1.assert)(resourceType, "Invalid url \"".concat(_url, "\"")); + (0, lib_1.assert)(settings_1.patientCompartment.indexOf(resourceType) > -1, "Cannot filter \"".concat(resourceType, "\" resources by patient")); + _context8.next = 5; + return (0, lib_1.fetchConformanceStatement)(client.state.serverUrl); + case 5: + conformance = _context8.sent; + searchParam = (0, lib_1.getPatientParam)(conformance, resourceType); + _url.searchParams.set(searchParam, client.patient.id); + return _context8.abrupt("return", _url.href); + case 9: + case "end": + return _context8.stop(); + } + }, _callee8); + })); + return _contextualURL.apply(this, arguments); + }; + contextualURL = function _contextualURL2(_x9) { + return _contextualURL.apply(this, arguments); + }; + base = (0, lib_1.absolute)("/", client.state.serverUrl); + if (!(typeof requestOptions == "string" || requestOptions instanceof URL)) { + _context9.next = 8; + break; + } + _context9.next = 6; + return contextualURL(new URL(requestOptions + "", base)); + case 6: + _context9.t0 = _context9.sent; + return _context9.abrupt("return", { + url: _context9.t0 + }); + case 8: + _context9.next = 10; + return contextualURL(new URL(requestOptions.url + "", base)); + case 10: + requestOptions.url = _context9.sent; + return _context9.abrupt("return", requestOptions); + case 12: + case "end": + return _context9.stop(); + } + }, _callee9); })); return _contextualize.apply(this, arguments); } - function getRef(refId, cache, client, signal) { if (!cache[refId]) { // Note that we set cache[refId] immediately! When the promise is @@ -1108,23 +995,18 @@ function getRef(refId, cache, client, signal) { throw error; }); } - return Promise.resolve(cache[refId]); } /** * Resolves a reference in the given resource. * @param obj FHIR Resource */ - - function resolveRef(obj, path, graph, cache, client, signal) { var node = (0, lib_1.getPath)(obj, path); - if (node) { var isArray = Array.isArray(node); return Promise.all((0, lib_1.makeArray)(node).filter(Boolean).map(function (item, i) { var ref = item.reference; - if (ref) { return getRef(ref, cache, client, signal).then(function (sub) { if (graph) { @@ -1156,8 +1038,6 @@ function resolveRef(obj, path, graph, cache, client, signal) { * @param client The client instance * @private */ - - function resolveRefs(obj, fhirOptions, cache, client, signal) { // 1. Sanitize paths, remove any invalid ones var paths = (0, lib_1.makeArray)(fhirOptions.resolveReferences).filter(Boolean) // No false, 0, null, undefined or "" @@ -1165,36 +1045,30 @@ function resolveRefs(obj, fhirOptions, cache, client, signal) { return String(path).trim(); }).filter(Boolean); // No space-only strings // 2. Remove duplicates - paths = paths.filter(function (p, i) { var index = paths.indexOf(p, i + 1); - if (index > -1) { debug("Duplicated reference path \"%s\"", p); return false; } - return true; - }); // 3. Early exit if no valid paths are found - + }); + // 3. Early exit if no valid paths are found if (!paths.length) { return Promise.resolve(); - } // 4. Group the paths by depth so that child refs are looked up + } + // 4. Group the paths by depth so that child refs are looked up // after their parents! - - var groups = {}; paths.forEach(function (path) { var len = path.split(".").length; - if (!groups[len]) { groups[len] = []; } - groups[len].push(path); - }); // 5. Execute groups sequentially! Paths within same group are + }); + // 5. Execute groups sequentially! Paths within same group are // fetched in parallel! - var task = Promise.resolve(); Object.keys(groups).sort().forEach(function (len) { var group = groups[len]; @@ -1218,8 +1092,6 @@ function resolveRefs(obj, fhirOptions, cache, client, signal) { * const client = smart(req, res).client("https://r4.smarthealthit.org"); * ``` */ - - var Client = /*#__PURE__*/function () { /** * Validates the parameters, creates an instance and tries to connect it to @@ -1227,30 +1099,25 @@ var Client = /*#__PURE__*/function () { */ function Client(environment, state) { var _this = this; - (0, _classCallCheck2.default)(this, Client); - /** * @category Utility */ this.units = lib_1.units; - var _state = typeof state == "string" ? { serverUrl: state - } : state; // Valid serverUrl is required! - - + } : state; + // Valid serverUrl is required! (0, lib_1.assert)(_state.serverUrl && _state.serverUrl.match(/https?:\/\/.+/), "A \"serverUrl\" option is required and must begin with \"http(s)\""); this.state = _state; this.environment = environment; this._refreshTask = null; - var client = this; // patient api --------------------------------------------------------- - + var client = this; + // patient api --------------------------------------------------------- this.patient = { get id() { return client.getPatientId(); }, - read: function read(requestOptions) { var id = _this.patient.id; return id ? _this.request(_objectSpread(_objectSpread({}, requestOptions), {}, { @@ -1259,25 +1126,20 @@ var Client = /*#__PURE__*/function () { }, request: function request(requestOptions) { var fhirOptions = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; - if (_this.patient.id) { return (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() { var options; return _regenerator.default.wrap(function _callee$(_context) { - while (1) { - switch (_context.prev = _context.next) { - case 0: - _context.next = 2; - return contextualize(requestOptions, _this); - - case 2: - options = _context.sent; - return _context.abrupt("return", _this.request(options, fhirOptions)); - - case 4: - case "end": - return _context.stop(); - } + while (1) switch (_context.prev = _context.next) { + case 0: + _context.next = 2; + return contextualize(requestOptions, _this); + case 2: + options = _context.sent; + return _context.abrupt("return", _this.request(options, fhirOptions)); + case 4: + case "end": + return _context.stop(); } }, _callee); }))(); @@ -1285,43 +1147,39 @@ var Client = /*#__PURE__*/function () { return Promise.reject(new Error("Patient is not available")); } } - }; // encounter api ------------------------------------------------------- - + }; + // encounter api ------------------------------------------------------- this.encounter = { get id() { return client.getEncounterId(); }, - read: function read(requestOptions) { var id = _this.encounter.id; return id ? _this.request(_objectSpread(_objectSpread({}, requestOptions), {}, { url: "Encounter/".concat(id) })) : Promise.reject(new Error("Encounter is not available")); } - }; // user api ------------------------------------------------------------ - + }; + // user api ------------------------------------------------------------ this.user = { get fhirUser() { return client.getFhirUser(); }, - get id() { return client.getUserId(); }, - get resourceType() { return client.getUserType(); }, - read: function read(requestOptions) { var fhirUser = _this.user.fhirUser; return fhirUser ? _this.request(_objectSpread(_objectSpread({}, requestOptions), {}, { url: fhirUser })) : Promise.reject(new Error("User is not available")); } - }; // fhir.js api (attached automatically in browser) + }; + // fhir.js api (attached automatically in browser) // --------------------------------------------------------------------- - this.connect(environment.fhir); } /** @@ -1332,8 +1190,6 @@ var Client = /*#__PURE__*/function () { * instance. You should only use this method to connect to `fhir.js` which * is not global. */ - - (0, _createClass2.default)(Client, [{ key: "connect", value: function connect(fhirJs) { @@ -1342,16 +1198,14 @@ var Client = /*#__PURE__*/function () { baseUrl: this.state.serverUrl.replace(/\/$/, "") }; var accessToken = this.getState("tokenResponse.access_token"); - if (accessToken) { options.auth = { token: accessToken }; } else { var _this$state = this.state, - username = _this$state.username, - password = _this$state.password; - + username = _this$state.username, + password = _this$state.password; if (username && password) { options.auth = { user: username, @@ -1359,29 +1213,24 @@ var Client = /*#__PURE__*/function () { }; } } - this.api = fhirJs(options); var patientId = this.getState("tokenResponse.patient"); - if (patientId) { this.patient.api = fhirJs(_objectSpread(_objectSpread({}, options), {}, { patient: patientId })); } } - return this; } /** * Returns the ID of the selected patient or null. You should have requested * "launch/patient" scope. Otherwise this will return null. */ - }, { key: "getPatientId", value: function getPatientId() { var tokenResponse = this.state.tokenResponse; - if (tokenResponse) { // We have been authorized against this server but we don't know // the patient. This should be a scope issue. @@ -1392,19 +1241,15 @@ var Client = /*#__PURE__*/function () { // The server should have returned the patient! debug("The ID of the selected patient is not available. Please check if your server supports that."); } - return null; } - return tokenResponse.patient; } - if (this.state.authorizeUri) { debug(strings_1.default.noIfNoAuth, "the ID of the selected patient"); } else { debug(strings_1.default.noFreeContext, "selected patient"); } - return null; } /** @@ -1413,12 +1258,10 @@ var Client = /*#__PURE__*/function () { * Note that not all servers support the "launch/encounter" scope so this * will be null if they don't. */ - }, { key: "getEncounterId", value: function getEncounterId() { var tokenResponse = this.state.tokenResponse; - if (tokenResponse) { // We have been authorized against this server but we don't know // the encounter. This should be a scope issue. @@ -1429,19 +1272,15 @@ var Client = /*#__PURE__*/function () { // The server should have returned the encounter! debug("The ID of the selected encounter is not available. Please check if your server supports that, and that the selected patient has any recorded encounters."); } - return null; } - return tokenResponse.encounter; } - if (this.state.authorizeUri) { debug(strings_1.default.noIfNoAuth, "the ID of the selected encounter"); } else { debug(strings_1.default.noFreeContext, "selected encounter"); } - return null; } /** @@ -1449,41 +1288,34 @@ var Client = /*#__PURE__*/function () { * "profile" scopes if you need to receive an id_token (if you need to know * who the logged-in user is). */ - }, { key: "getIdToken", value: function getIdToken() { var tokenResponse = this.state.tokenResponse; - if (tokenResponse) { var idToken = tokenResponse.id_token; - var scope = this.state.scope || ""; // We have been authorized against this server but we don't have + var scope = this.state.scope || ""; + // We have been authorized against this server but we don't have // the id_token. This should be a scope issue. - if (!idToken) { var hasOpenid = scope.match(/\bopenid\b/); var hasProfile = scope.match(/\bprofile\b/); var hasFhirUser = scope.match(/\bfhirUser\b/); - if (!hasOpenid || !(hasFhirUser || hasProfile)) { debug("You are trying to get the id_token but you are not " + "using the right scopes. Please add 'openid' and " + "'fhirUser' or 'profile' to the scopes you are " + "requesting."); } else { // The server should have returned the id_token! debug("The id_token is not available. Please check if your server supports that."); } - return null; } - return (0, lib_1.jwtDecode)(idToken, this.environment); } - if (this.state.authorizeUri) { debug(strings_1.default.noIfNoAuth, "the id_token"); } else { debug(strings_1.default.noFreeContext, "id_token"); } - return null; } /** @@ -1491,127 +1323,101 @@ var Client = /*#__PURE__*/function () { * having the following shape `"{user type}/{user id}"`. For example: * `"Practitioner/abc"` or `"Patient/xyz"`. */ - }, { key: "getFhirUser", value: function getFhirUser() { var idToken = this.getIdToken(); - if (idToken) { // Epic may return a full url // @see https://github.com/smart-on-fhir/client-js/issues/105 if (idToken.fhirUser) { return idToken.fhirUser.split("/").slice(-2).join("/"); } - return idToken.profile; } - return null; } /** * Returns the user ID or null. */ - }, { key: "getUserId", value: function getUserId() { var profile = this.getFhirUser(); - if (profile) { return profile.split("/")[1]; } - return null; } /** * Returns the type of the logged-in user or null. The result can be * "Practitioner", "Patient" or "RelatedPerson". */ - }, { key: "getUserType", value: function getUserType() { var profile = this.getFhirUser(); - if (profile) { return profile.split("/")[0]; } - return null; } /** * Builds and returns the value of the `Authorization` header that can be * sent to the FHIR server */ - }, { key: "getAuthorizationHeader", value: function getAuthorizationHeader() { var accessToken = this.getState("tokenResponse.access_token"); - if (accessToken) { return "Bearer " + accessToken; } - var _this$state2 = this.state, - username = _this$state2.username, - password = _this$state2.password; - + username = _this$state2.username, + password = _this$state2.password; if (username && password) { return "Basic " + this.environment.btoa(username + ":" + password); } - return null; } /** * Used internally to clear the state of the instance and the state in the * associated storage. */ - }, { key: "_clearState", - value: function () { + value: (function () { var _clearState2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() { var storage, key; return _regenerator.default.wrap(function _callee2$(_context2) { - while (1) { - switch (_context2.prev = _context2.next) { - case 0: - storage = this.environment.getStorage(); - _context2.next = 3; - return storage.get(settings_1.SMART_KEY); - - case 3: - key = _context2.sent; - - if (!key) { - _context2.next = 7; - break; - } - + while (1) switch (_context2.prev = _context2.next) { + case 0: + storage = this.environment.getStorage(); + _context2.next = 3; + return storage.get(settings_1.SMART_KEY); + case 3: + key = _context2.sent; + if (!key) { _context2.next = 7; - return storage.unset(key); - - case 7: - _context2.next = 9; - return storage.unset(settings_1.SMART_KEY); - - case 9: - this.state.tokenResponse = {}; - - case 10: - case "end": - return _context2.stop(); - } + break; + } + _context2.next = 7; + return storage.unset(key); + case 7: + _context2.next = 9; + return storage.unset(settings_1.SMART_KEY); + case 9: + this.state.tokenResponse = {}; + case 10: + case "end": + return _context2.stop(); } }, _callee2, this); })); - function _clearState() { return _clearState2.apply(this, arguments); } - return _clearState; }() /** @@ -1622,7 +1428,7 @@ var Client = /*#__PURE__*/function () { * Note that `method` and `body` will be ignored. * @category Request */ - + ) }, { key: "create", value: function create(resource, requestOptions) { @@ -1645,7 +1451,6 @@ var Client = /*#__PURE__*/function () { * Note that `method` and `body` will be ignored. * @category Request */ - }, { key: "update", value: function update(resource, requestOptions) { @@ -1668,7 +1473,6 @@ var Client = /*#__PURE__*/function () { * to `DELETE`) to be passed to the fetch call. * @category Request */ - }, { key: "delete", value: function _delete(url) { @@ -1696,41 +1500,35 @@ var Client = /*#__PURE__*/function () { * [[fhirclient.FHIR.Resource]]) does not work for you, you can pass * in your own resolve type parameter. */ - }, { key: "patch", - value: function () { + value: (function () { var _patch2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee3(url, _patch) { var requestOptions, - _args3 = arguments; + _args3 = arguments; return _regenerator.default.wrap(function _callee3$(_context3) { - while (1) { - switch (_context3.prev = _context3.next) { - case 0: - requestOptions = _args3.length > 2 && _args3[2] !== undefined ? _args3[2] : {}; - (0, lib_1.assertJsonPatch)(_patch); - return _context3.abrupt("return", this.request(_objectSpread(_objectSpread({}, requestOptions), {}, { - url: url, - method: "PATCH", - body: JSON.stringify(_patch), - headers: _objectSpread({ - "prefer": "return=presentation", - "content-type": "application/json-patch+json; charset=UTF-8" - }, requestOptions.headers) - }))); - - case 3: - case "end": - return _context3.stop(); - } + while (1) switch (_context3.prev = _context3.next) { + case 0: + requestOptions = _args3.length > 2 && _args3[2] !== undefined ? _args3[2] : {}; + (0, lib_1.assertJsonPatch)(_patch); + return _context3.abrupt("return", this.request(_objectSpread(_objectSpread({}, requestOptions), {}, { + url: url, + method: "PATCH", + body: JSON.stringify(_patch), + headers: _objectSpread({ + "prefer": "return=presentation", + "content-type": "application/json-patch+json; charset=UTF-8" + }, requestOptions.headers) + }))); + case 3: + case "end": + return _context3.stop(); } }, _callee3, this); })); - function patch(_x3, _x4) { return _patch2.apply(this, arguments); } - return patch; }() /** @@ -1740,320 +1538,273 @@ var Client = /*#__PURE__*/function () { * @param _resolvedRefs DO NOT USE! Used internally. * @category Request */ - + ) }, { key: "request", - value: function () { + value: (function () { var _request = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee7(requestOptions) { var _this2 = this; - var fhirOptions, - _resolvedRefs, - _a, - debugRequest, - url, - options, - signal, - job, - response, - _args7 = arguments; - + _resolvedRefs, + _a, + debugRequest, + url, + options, + signal, + job, + response, + _args7 = arguments; return _regenerator.default.wrap(function _callee7$(_context7) { - while (1) { - switch (_context7.prev = _context7.next) { - case 0: - fhirOptions = _args7.length > 1 && _args7[1] !== undefined ? _args7[1] : {}; - _resolvedRefs = _args7.length > 2 && _args7[2] !== undefined ? _args7[2] : {}; - debugRequest = lib_1.debug.extend("client:request"); - (0, lib_1.assert)(requestOptions, "request requires an url or request options as argument"); // url ----------------------------------------------------------------- - - if (typeof requestOptions == "string" || requestOptions instanceof URL) { - url = String(requestOptions); - requestOptions = {}; - } else { - url = String(requestOptions.url); + while (1) switch (_context7.prev = _context7.next) { + case 0: + fhirOptions = _args7.length > 1 && _args7[1] !== undefined ? _args7[1] : {}; + _resolvedRefs = _args7.length > 2 && _args7[2] !== undefined ? _args7[2] : {}; + debugRequest = lib_1.debug.extend("client:request"); + (0, lib_1.assert)(requestOptions, "request requires an url or request options as argument"); + // url ----------------------------------------------------------------- + + if (typeof requestOptions == "string" || requestOptions instanceof URL) { + url = String(requestOptions); + requestOptions = {}; + } else { + url = String(requestOptions.url); + } + url = (0, lib_1.absolute)(url, this.state.serverUrl); + options = { + graph: fhirOptions.graph !== false, + flat: !!fhirOptions.flat, + pageLimit: (_a = fhirOptions.pageLimit) !== null && _a !== void 0 ? _a : 1, + resolveReferences: fhirOptions.resolveReferences || [], + useRefreshToken: fhirOptions.useRefreshToken !== false, + onPage: typeof fhirOptions.onPage == "function" ? fhirOptions.onPage : undefined + }; + signal = requestOptions.signal || undefined; // Refresh the access token if needed + job = options.useRefreshToken ? this.refreshIfNeeded({ + signal: signal + }).then(function () { + return requestOptions; + }) : Promise.resolve(requestOptions); + return _context7.abrupt("return", job + // Add the Authorization header now, after the access token might + // have been updated + .then(function (requestOptions) { + var authHeader = _this2.getAuthorizationHeader(); + if (authHeader) { + requestOptions.headers = _objectSpread(_objectSpread({}, requestOptions.headers), {}, { + authorization: authHeader + }); } - - url = (0, lib_1.absolute)(url, this.state.serverUrl); - options = { - graph: fhirOptions.graph !== false, - flat: !!fhirOptions.flat, - pageLimit: (_a = fhirOptions.pageLimit) !== null && _a !== void 0 ? _a : 1, - resolveReferences: fhirOptions.resolveReferences || [], - useRefreshToken: fhirOptions.useRefreshToken !== false, - onPage: typeof fhirOptions.onPage == "function" ? fhirOptions.onPage : undefined - }; - signal = requestOptions.signal || undefined; // Refresh the access token if needed - - job = options.useRefreshToken ? this.refreshIfNeeded({ - signal: signal - }).then(function () { - return requestOptions; - }) : Promise.resolve(requestOptions); - return _context7.abrupt("return", job // Add the Authorization header now, after the access token might - // have been updated - .then(function (requestOptions) { - var authHeader = _this2.getAuthorizationHeader(); - - if (authHeader) { - requestOptions.headers = _objectSpread(_objectSpread({}, requestOptions.headers), {}, { - authorization: authHeader - }); + return requestOptions; + }) + // Make the request + .then(function (requestOptions) { + debugRequest("%s, options: %O, fhirOptions: %O", url, requestOptions, options); + return (0, lib_1.request)(url, requestOptions).then(function (result) { + if (requestOptions.includeResponse) { + response = result.response; + return result.body; } - - return requestOptions; - }) // Make the request - .then(function (requestOptions) { - debugRequest("%s, options: %O, fhirOptions: %O", url, requestOptions, options); - return (0, lib_1.request)(url, requestOptions).then(function (result) { - if (requestOptions.includeResponse) { - response = result.response; - return result.body; - } - - return result; - }); - }) // Handle 401 ------------------------------------------------------ - .catch( /*#__PURE__*/function () { - var _ref3 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee4(error) { - return _regenerator.default.wrap(function _callee4$(_context4) { - while (1) { - switch (_context4.prev = _context4.next) { - case 0: - if (!(error.status == 401)) { - _context4.next = 15; - break; - } - - if (_this2.getState("tokenResponse.access_token")) { - _context4.next = 4; - break; - } - - error.message += "\nThis app cannot be accessed directly. Please launch it as SMART app!"; - throw error; - - case 4: - if (options.useRefreshToken) { - _context4.next = 10; - break; - } - - debugRequest("Your session has expired and the useRefreshToken option is set to false. Please re-launch the app."); - _context4.next = 8; - return _this2._clearState(); - - case 8: - error.message += "\n" + strings_1.default.expired; - throw error; - - case 10: - // In rare cases we may have a valid access token and a refresh - // token and the request might still fail with 401 just because - // the access token has just been revoked. - // otherwise -> auto-refresh failed. Session expired. - // Need to re-launch. Clear state to start over! - debugRequest("Auto-refresh failed! Please re-launch the app."); - _context4.next = 13; - return _this2._clearState(); - - case 13: - error.message += "\n" + strings_1.default.expired; - throw error; - - case 15: - throw error; - - case 16: - case "end": - return _context4.stop(); + return result; + }); + }) + // Handle 401 ------------------------------------------------------ + .catch( /*#__PURE__*/function () { + var _ref3 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee4(error) { + return _regenerator.default.wrap(function _callee4$(_context4) { + while (1) switch (_context4.prev = _context4.next) { + case 0: + if (!(error.status == 401)) { + _context4.next = 15; + break; + } + if (_this2.getState("tokenResponse.access_token")) { + _context4.next = 4; + break; } + error.message += "\nThis app cannot be accessed directly. Please launch it as SMART app!"; + throw error; + case 4: + if (options.useRefreshToken) { + _context4.next = 10; + break; + } + debugRequest("Your session has expired and the useRefreshToken option is set to false. Please re-launch the app."); + _context4.next = 8; + return _this2._clearState(); + case 8: + error.message += "\n" + strings_1.default.expired; + throw error; + case 10: + // In rare cases we may have a valid access token and a refresh + // token and the request might still fail with 401 just because + // the access token has just been revoked. + // otherwise -> auto-refresh failed. Session expired. + // Need to re-launch. Clear state to start over! + debugRequest("Auto-refresh failed! Please re-launch the app."); + _context4.next = 13; + return _this2._clearState(); + case 13: + error.message += "\n" + strings_1.default.expired; + throw error; + case 15: + throw error; + case 16: + case "end": + return _context4.stop(); + } + }, _callee4); + })); + return function (_x6) { + return _ref3.apply(this, arguments); + }; + }()) + // Handle 403 ------------------------------------------------------ + .catch(function (error) { + if (error.status == 403) { + debugRequest("Permission denied! Please make sure that you have requested the proper scopes."); + } + throw error; + }).then(function (data) { + // At this point we don't know what `data` actually is! + // We might gen an empty or falsy result. If so return it as is + if (!data) return data; + // Handle raw responses + if (typeof data == "string" || data instanceof Response) return data; + // Resolve References ------------------------------------------ + return function () { + var _ref4 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee5(_data) { + return _regenerator.default.wrap(function _callee5$(_context5) { + while (1) switch (_context5.prev = _context5.next) { + case 0: + if (!(_data.resourceType == "Bundle")) { + _context5.next = 5; + break; + } + _context5.next = 3; + return Promise.all((_data.entry || []).map(function (item) { + return resolveRefs(item.resource, options, _resolvedRefs, _this2, signal); + })); + case 3: + _context5.next = 7; + break; + case 5: + _context5.next = 7; + return resolveRefs(_data, options, _resolvedRefs, _this2, signal); + case 7: + return _context5.abrupt("return", _data); + case 8: + case "end": + return _context5.stop(); } - }, _callee4); + }, _callee5); })); - - return function (_x6) { - return _ref3.apply(this, arguments); + return function (_x7) { + return _ref4.apply(this, arguments); }; - }()) // Handle 403 ------------------------------------------------------ - .catch(function (error) { - if (error.status == 403) { - debugRequest("Permission denied! Please make sure that you have requested the proper scopes."); - } - - throw error; - }).then(function (data) { - // At this point we don't know what `data` actually is! - // We might gen an empty or falsy result. If so return it as is - if (!data) return data; // Handle raw responses - - if (typeof data == "string" || data instanceof Response) return data; // Resolve References ------------------------------------------ - - return function () { - var _ref4 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee5(_data) { - return _regenerator.default.wrap(function _callee5$(_context5) { - while (1) { - switch (_context5.prev = _context5.next) { - case 0: - if (!(_data.resourceType == "Bundle")) { - _context5.next = 5; - break; - } - - _context5.next = 3; - return Promise.all((_data.entry || []).map(function (item) { - return resolveRefs(item.resource, options, _resolvedRefs, _this2, signal); - })); - - case 3: - _context5.next = 7; - break; - - case 5: - _context5.next = 7; - return resolveRefs(_data, options, _resolvedRefs, _this2, signal); - - case 7: - return _context5.abrupt("return", _data); - - case 8: - case "end": - return _context5.stop(); + }()(data) + // Pagination ---------------------------------------------- + .then( /*#__PURE__*/function () { + var _ref5 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee6(_data) { + var links, next, nextPage; + return _regenerator.default.wrap(function _callee6$(_context6) { + while (1) switch (_context6.prev = _context6.next) { + case 0: + if (!(_data && _data.resourceType == "Bundle")) { + _context6.next = 19; + break; } - } - }, _callee5); - })); - - return function (_x7) { - return _ref4.apply(this, arguments); - }; - }()(data) // Pagination ---------------------------------------------- - .then( /*#__PURE__*/function () { - var _ref5 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee6(_data) { - var links, next, nextPage; - return _regenerator.default.wrap(function _callee6$(_context6) { - while (1) { - switch (_context6.prev = _context6.next) { - case 0: - if (!(_data && _data.resourceType == "Bundle")) { - _context6.next = 19; - break; - } - - links = _data.link || []; - - if (options.flat) { - _data = (_data.entry || []).map(function (entry) { - return entry.resource; - }); - } - - if (!options.onPage) { - _context6.next = 6; - break; - } - - _context6.next = 6; - return options.onPage(_data, _objectSpread({}, _resolvedRefs)); - - case 6: - if (! --options.pageLimit) { - _context6.next = 19; - break; - } - - next = links.find(function (l) { - return l.relation == "next"; - }); - _data = (0, lib_1.makeArray)(_data); - - if (!(next && next.url)) { - _context6.next = 19; - break; - } - - _context6.next = 12; - return _this2.request({ - url: next.url, - // Aborting the main request (even after it is complete) - // must propagate to any child requests and abort them! - // To do so, just pass the same AbortSignal if one is - // provided. - signal: signal - }, options, _resolvedRefs); - - case 12: - nextPage = _context6.sent; - - if (!options.onPage) { - _context6.next = 15; - break; - } - - return _context6.abrupt("return", null); - - case 15: - if (!options.resolveReferences.length) { - _context6.next = 18; - break; - } - - Object.assign(_resolvedRefs, nextPage.references); - return _context6.abrupt("return", _data.concat((0, lib_1.makeArray)(nextPage.data || nextPage))); - - case 18: - return _context6.abrupt("return", _data.concat((0, lib_1.makeArray)(nextPage))); - - case 19: - return _context6.abrupt("return", _data); - - case 20: - case "end": - return _context6.stop(); + links = _data.link || []; + if (options.flat) { + _data = (_data.entry || []).map(function (entry) { + return entry.resource; + }); } - } - }, _callee6); - })); - - return function (_x8) { - return _ref5.apply(this, arguments); + if (!options.onPage) { + _context6.next = 6; + break; + } + _context6.next = 6; + return options.onPage(_data, _objectSpread({}, _resolvedRefs)); + case 6: + if (! --options.pageLimit) { + _context6.next = 19; + break; + } + next = links.find(function (l) { + return l.relation == "next"; + }); + _data = (0, lib_1.makeArray)(_data); + if (!(next && next.url)) { + _context6.next = 19; + break; + } + _context6.next = 12; + return _this2.request({ + url: next.url, + // Aborting the main request (even after it is complete) + // must propagate to any child requests and abort them! + // To do so, just pass the same AbortSignal if one is + // provided. + signal: signal + }, options, _resolvedRefs); + case 12: + nextPage = _context6.sent; + if (!options.onPage) { + _context6.next = 15; + break; + } + return _context6.abrupt("return", null); + case 15: + if (!options.resolveReferences.length) { + _context6.next = 18; + break; + } + Object.assign(_resolvedRefs, nextPage.references); + return _context6.abrupt("return", _data.concat((0, lib_1.makeArray)(nextPage.data || nextPage))); + case 18: + return _context6.abrupt("return", _data.concat((0, lib_1.makeArray)(nextPage))); + case 19: + return _context6.abrupt("return", _data); + case 20: + case "end": + return _context6.stop(); + } + }, _callee6); + })); + return function (_x8) { + return _ref5.apply(this, arguments); + }; + }()) + // Finalize ------------------------------------------------ + .then(function (_data) { + if (options.graph) { + _resolvedRefs = {}; + } else if (!options.onPage && options.resolveReferences.length) { + return { + data: _data, + references: _resolvedRefs }; - }()) // Finalize ------------------------------------------------ - .then(function (_data) { - if (options.graph) { - _resolvedRefs = {}; - } else if (!options.onPage && options.resolveReferences.length) { - return { - data: _data, - references: _resolvedRefs - }; - } - - return _data; - }).then(function (_data) { - if (requestOptions.includeResponse) { - return { - body: _data, - response: response - }; - } - - return _data; - }); - })); - - case 10: - case "end": - return _context7.stop(); - } + } + return _data; + }).then(function (_data) { + if (requestOptions.includeResponse) { + return { + body: _data, + response: response + }; + } + return _data; + }); + })); + case 10: + case "end": + return _context7.stop(); } }, _callee7, this); })); - function request(_x5) { return _request.apply(this, arguments); } - return request; }() /** @@ -2065,7 +1816,7 @@ var Client = /*#__PURE__*/function () { * request options or an abort signal. * @category Request */ - + ) }, { key: "refreshIfNeeded", value: function refreshIfNeeded() { @@ -2073,11 +1824,9 @@ var Client = /*#__PURE__*/function () { var accessToken = this.getState("tokenResponse.access_token"); var refreshToken = this.getState("tokenResponse.refresh_token"); var expiresAt = this.state.expiresAt || 0; - if (accessToken && refreshToken && expiresAt - 10 < Date.now() / 1000) { return this.refresh(requestOptions); } - return Promise.resolve(this.state); } /** @@ -2093,16 +1842,12 @@ var Client = /*#__PURE__*/function () { * request options or an abort signal. * @category Request */ - }, { key: "refresh", value: function refresh() { var _this3 = this; - var requestOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; - var _a, _b; - var debugRefresh = lib_1.debug.extend("client:refresh"); debugRefresh("Attempting to refresh with refresh_token..."); var refreshToken = (_b = (_a = this.state) === null || _a === void 0 ? void 0 : _a.tokenResponse) === null || _b === void 0 ? void 0 : _b.refresh_token; @@ -2112,11 +1857,11 @@ var Client = /*#__PURE__*/function () { var scopes = this.getState("tokenResponse.scope") || ""; var hasOfflineAccess = scopes.search(/\boffline_access\b/) > -1; var hasOnlineAccess = scopes.search(/\bonline_access\b/) > -1; - (0, lib_1.assert)(hasOfflineAccess || hasOnlineAccess, "Unable to refresh. No offline_access or online_access scope found."); // This method is typically called internally from `request` if certain + (0, lib_1.assert)(hasOfflineAccess || hasOnlineAccess, "Unable to refresh. No offline_access or online_access scope found."); + // This method is typically called internally from `request` if certain // request fails with 401. However, clients will often run multiple // requests in parallel which may result in multiple refresh calls. // To avoid that, we keep a reference to the current refresh task (if any). - if (!this._refreshTask) { var refreshRequestOptions = _objectSpread(_objectSpread({ credentials: this.environment.options.refreshTokenWithCredentials || "same-origin" @@ -2127,20 +1872,17 @@ var Client = /*#__PURE__*/function () { "content-type": "application/x-www-form-urlencoded" }), body: "grant_type=refresh_token&refresh_token=".concat(encodeURIComponent(refreshToken)) - }); // custom authorization header can be passed on manual calls - - + }); + // custom authorization header can be passed on manual calls if (!("authorization" in refreshRequestOptions.headers)) { var _this$state3 = this.state, - clientSecret = _this$state3.clientSecret, - clientId = _this$state3.clientId; - + clientSecret = _this$state3.clientSecret, + clientId = _this$state3.clientId; if (clientSecret) { // @ts-ignore refreshRequestOptions.headers.authorization = "Basic " + this.environment.btoa(clientId + ":" + clientSecret); } } - this._refreshTask = (0, lib_1.request)(tokenUri, refreshRequestOptions).then(function (data) { (0, lib_1.assert)(data.access_token, "No access token received"); debugRefresh("Received new access token response %O", data); @@ -2149,17 +1891,14 @@ var Client = /*#__PURE__*/function () { return _this3.state; }).catch(function (error) { var _a, _b; - if ((_b = (_a = _this3.state) === null || _a === void 0 ? void 0 : _a.tokenResponse) === null || _b === void 0 ? void 0 : _b.refresh_token) { debugRefresh("Deleting the expired or invalid refresh token."); delete _this3.state.tokenResponse.refresh_token; } - throw error; }).finally(function () { _this3._refreshTask = null; var key = _this3.state.key; - if (key) { _this3.environment.getStorage().set(key, _this3.state); } else { @@ -2167,10 +1906,9 @@ var Client = /*#__PURE__*/function () { } }); } - return this._refreshTask; - } // utils ------------------------------------------------------------------- - + } + // utils ------------------------------------------------------------------- /** * Groups the observations by code. Returns a map that will look like: * ```js @@ -2187,7 +1925,6 @@ var Client = /*#__PURE__*/function () { * @deprecated * @category Utility */ - }, { key: "byCode", value: function byCode(observations, property) { @@ -2210,7 +1947,6 @@ var Client = /*#__PURE__*/function () { * @deprecated * @category Utility */ - }, { key: "byCodes", value: function byCodes(observations, property) { @@ -2229,7 +1965,6 @@ var Client = /*#__PURE__*/function () { * @deprecated * @category Utility */ - }, { key: "getPath", value: function getPath(obj) { @@ -2248,7 +1983,6 @@ var Client = /*#__PURE__*/function () { * @param path The path (eg. "a.b.4.c") * @returns {*} Whatever is found in the path or undefined */ - }, { key: "getState", value: function getState() { @@ -2259,7 +1993,6 @@ var Client = /*#__PURE__*/function () { * Returns a promise that will be resolved with the fhir version as defined * in the CapabilityStatement. */ - }, { key: "getFhirVersion", value: function getFhirVersion() { @@ -2274,20 +2007,17 @@ var Client = /*#__PURE__*/function () { * - 4 for R4 * - 0 if the version is not known */ - }, { key: "getFhirRelease", value: function getFhirRelease() { return this.getFhirVersion().then(function (v) { var _a; - return (_a = settings_1.fhirVersions[v]) !== null && _a !== void 0 ? _a : 0; }); } }]); return Client; }(); - exports["default"] = Client; /***/ }), @@ -2302,53 +2032,31 @@ exports["default"] = Client; __webpack_require__(/*! core-js/modules/es.object.to-string.js */ "./node_modules/core-js/modules/es.object.to-string.js"); - __webpack_require__(/*! core-js/modules/es.reflect.construct.js */ "./node_modules/core-js/modules/es.reflect.construct.js"); - var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/interopRequireDefault.js"); - var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/@babel/runtime/regenerator/index.js")); - __webpack_require__(/*! core-js/modules/es.array.concat.js */ "./node_modules/core-js/modules/es.array.concat.js"); - __webpack_require__(/*! core-js/modules/es.function.name.js */ "./node_modules/core-js/modules/es.function.name.js"); - __webpack_require__(/*! core-js/modules/es.regexp.exec.js */ "./node_modules/core-js/modules/es.regexp.exec.js"); - __webpack_require__(/*! core-js/modules/es.string.match.js */ "./node_modules/core-js/modules/es.string.match.js"); - var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/@babel/runtime/helpers/asyncToGenerator.js")); - var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/@babel/runtime/helpers/classCallCheck.js")); - var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/@babel/runtime/helpers/createClass.js")); - -var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/inherits */ "./node_modules/@babel/runtime/helpers/inherits.js")); - var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "./node_modules/@babel/runtime/helpers/possibleConstructorReturn.js")); - var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "./node_modules/@babel/runtime/helpers/getPrototypeOf.js")); - +var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/inherits */ "./node_modules/@babel/runtime/helpers/inherits.js")); var _wrapNativeSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/wrapNativeSuper */ "./node_modules/@babel/runtime/helpers/wrapNativeSuper.js")); - -function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; } - -function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } } - +function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2.default)(o), (0, _possibleConstructorReturn2.default)(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2.default)(t).constructor) : o.apply(t, e)); } +function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); } Object.defineProperty(exports, "__esModule", ({ value: true })); - var HttpError = /*#__PURE__*/function (_Error) { (0, _inherits2.default)(HttpError, _Error); - - var _super = _createSuper(HttpError); - function HttpError(response) { var _this; - (0, _classCallCheck2.default)(this, HttpError); - _this = _super.call(this, "".concat(response.status, " ").concat(response.statusText, "\nURL: ").concat(response.url)); + _this = _callSuper(this, HttpError, ["".concat(response.status, " ").concat(response.statusText, "\nURL: ").concat(response.url)]); _this.name = "HttpError"; _this.response = response; _this.statusCode = response.status; @@ -2356,88 +2064,67 @@ var HttpError = /*#__PURE__*/function (_Error) { _this.statusText = response.statusText; return _this; } - (0, _createClass2.default)(HttpError, [{ key: "parse", value: function () { var _parse = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() { var type, body, _body; - return _regenerator.default.wrap(function _callee$(_context) { - while (1) { - switch (_context.prev = _context.next) { - case 0: - if (this.response.bodyUsed) { - _context.next = 19; - break; - } - - _context.prev = 1; - type = this.response.headers.get("content-type") || "text/plain"; - - if (!type.match(/\bjson\b/i)) { - _context.next = 10; - break; - } - - _context.next = 6; - return this.response.json(); - - case 6: - body = _context.sent; - - if (body.error) { - this.message += "\n" + body.error; - - if (body.error_description) { - this.message += ": " + body.error_description; - } - } else { - this.message += "\n\n" + JSON.stringify(body, null, 4); + while (1) switch (_context.prev = _context.next) { + case 0: + if (this.response.bodyUsed) { + _context.next = 19; + break; + } + _context.prev = 1; + type = this.response.headers.get("content-type") || "text/plain"; + if (!type.match(/\bjson\b/i)) { + _context.next = 10; + break; + } + _context.next = 6; + return this.response.json(); + case 6: + body = _context.sent; + if (body.error) { + this.message += "\n" + body.error; + if (body.error_description) { + this.message += ": " + body.error_description; } - + } else { + this.message += "\n\n" + JSON.stringify(body, null, 4); + } + _context.next = 15; + break; + case 10: + if (!type.match(/^text\//i)) { _context.next = 15; break; - - case 10: - if (!type.match(/^text\//i)) { - _context.next = 15; - break; - } - - _context.next = 13; - return this.response.text(); - - case 13: - _body = _context.sent; - - if (_body) { - this.message += "\n\n" + _body; - } - - case 15: - _context.next = 19; - break; - - case 17: - _context.prev = 17; - _context.t0 = _context["catch"](1); - - case 19: - return _context.abrupt("return", this); - - case 20: - case "end": - return _context.stop(); - } + } + _context.next = 13; + return this.response.text(); + case 13: + _body = _context.sent; + if (_body) { + this.message += "\n\n" + _body; + } + case 15: + _context.next = 19; + break; + case 17: + _context.prev = 17; + _context.t0 = _context["catch"](1); + case 19: + return _context.abrupt("return", this); + case 20: + case "end": + return _context.stop(); } }, _callee, this, [[1, 17]]); })); - function parse() { return _parse.apply(this, arguments); } - return parse; }() }, { @@ -2454,7 +2141,6 @@ var HttpError = /*#__PURE__*/function (_Error) { }]); return HttpError; }( /*#__PURE__*/(0, _wrapNativeSuper2.default)(Error)); - exports["default"] = HttpError; /***/ }), @@ -2468,62 +2154,36 @@ exports["default"] = HttpError; "use strict"; -__webpack_require__(/*! core-js/modules/es.object.keys.js */ "./node_modules/core-js/modules/es.object.keys.js"); - __webpack_require__(/*! core-js/modules/es.symbol.js */ "./node_modules/core-js/modules/es.symbol.js"); - __webpack_require__(/*! core-js/modules/es.array.filter.js */ "./node_modules/core-js/modules/es.array.filter.js"); - __webpack_require__(/*! core-js/modules/es.object.get-own-property-descriptor.js */ "./node_modules/core-js/modules/es.object.get-own-property-descriptor.js"); - -__webpack_require__(/*! core-js/modules/web.dom-collections.for-each.js */ "./node_modules/core-js/modules/web.dom-collections.for-each.js"); - __webpack_require__(/*! core-js/modules/es.object.get-own-property-descriptors.js */ "./node_modules/core-js/modules/es.object.get-own-property-descriptors.js"); - +__webpack_require__(/*! core-js/modules/es.object.keys.js */ "./node_modules/core-js/modules/es.object.keys.js"); +__webpack_require__(/*! core-js/modules/web.dom-collections.for-each.js */ "./node_modules/core-js/modules/web.dom-collections.for-each.js"); var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/interopRequireDefault.js"); - +__webpack_require__(/*! core-js/modules/es.array.concat.js */ "./node_modules/core-js/modules/es.array.concat.js"); __webpack_require__(/*! core-js/modules/es.array.iterator.js */ "./node_modules/core-js/modules/es.array.iterator.js"); - __webpack_require__(/*! core-js/modules/es.object.to-string.js */ "./node_modules/core-js/modules/es.object.to-string.js"); - __webpack_require__(/*! core-js/modules/es.string.iterator.js */ "./node_modules/core-js/modules/es.string.iterator.js"); - __webpack_require__(/*! core-js/modules/web.dom-collections.iterator.js */ "./node_modules/core-js/modules/web.dom-collections.iterator.js"); - __webpack_require__(/*! core-js/modules/web.url.js */ "./node_modules/core-js/modules/web.url.js"); - __webpack_require__(/*! core-js/modules/web.url-search-params.js */ "./node_modules/core-js/modules/web.url-search-params.js"); - -__webpack_require__(/*! core-js/modules/es.array.concat.js */ "./node_modules/core-js/modules/es.array.concat.js"); - var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/@babel/runtime/helpers/defineProperty.js")); - var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/@babel/runtime/helpers/classCallCheck.js")); - var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/@babel/runtime/helpers/createClass.js")); - -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } - -function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } - +function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; } +function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; } Object.defineProperty(exports, "__esModule", ({ value: true })); - var smart_1 = __webpack_require__(/*! ../smart */ "./src/smart.ts"); - var Client_1 = __webpack_require__(/*! ../Client */ "./src/Client.ts"); - var BrowserStorage_1 = __webpack_require__(/*! ../storage/BrowserStorage */ "./src/storage/BrowserStorage.ts"); - var security = __webpack_require__(/*! ../security/browser */ "./src/security/browser.ts"); - var js_base64_1 = __webpack_require__(/*! js-base64 */ "./node_modules/js-base64/base64.js"); /** * Browser Adapter */ - - var BrowserAdapter = /*#__PURE__*/function () { /** * @param options Environment-specific options @@ -2531,7 +2191,6 @@ var BrowserAdapter = /*#__PURE__*/function () { function BrowserAdapter() { var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; (0, _classCallCheck2.default)(this, BrowserAdapter); - /** * Stores the URL instance associated with this adapter */ @@ -2539,7 +2198,6 @@ var BrowserAdapter = /*#__PURE__*/function () { /** * Holds the Storage instance associated with this instance */ - this._storage = null; this.security = security; this.options = _objectSpread({ @@ -2575,8 +2233,6 @@ var BrowserAdapter = /*#__PURE__*/function () { /** * Given a relative path, returns an absolute url using the instance base URL */ - - (0, _createClass2.default)(BrowserAdapter, [{ key: "relative", value: function relative(path) { @@ -2587,7 +2243,6 @@ var BrowserAdapter = /*#__PURE__*/function () { * included in the page. If it is, it should have created a "fhir" variable * in the global scope. */ - }, { key: "fhir", get: function get() { @@ -2598,21 +2253,18 @@ var BrowserAdapter = /*#__PURE__*/function () { * Given the current environment, this method must return the current url * as URL instance */ - }, { key: "getUrl", value: function getUrl() { if (!this._url) { this._url = new URL(location + ""); } - return this._url; } /** * Given the current environment, this method must redirect to the given * path */ - }, { key: "redirect", value: function redirect(to) { @@ -2622,21 +2274,18 @@ var BrowserAdapter = /*#__PURE__*/function () { * Returns a BrowserStorage object which is just a wrapper around * sessionStorage */ - }, { key: "getStorage", value: function getStorage() { if (!this._storage) { this._storage = new BrowserStorage_1.default(); } - return this._storage; } /** * Returns a reference to the AbortController constructor. In browsers, * AbortController will always be available as global (native or polyfilled) */ - }, { key: "getAbortController", value: function getAbortController() { @@ -2645,7 +2294,6 @@ var BrowserAdapter = /*#__PURE__*/function () { /** * ASCII string to Base64 */ - }, { key: "atob", value: function atob(str) { @@ -2654,7 +2302,6 @@ var BrowserAdapter = /*#__PURE__*/function () { /** * Base64 to ASCII string */ - }, { key: "btoa", value: function btoa(str) { @@ -2666,7 +2313,6 @@ var BrowserAdapter = /*#__PURE__*/function () { if (typeof input == "string") { return (0, js_base64_1.encodeURL)(input); } - return (0, js_base64_1.fromUint8Array)(input, true); } }, { @@ -2681,18 +2327,15 @@ var BrowserAdapter = /*#__PURE__*/function () { * arguments. For example in node we will need a request, a response and * optionally a storage or storage factory function. */ - }, { key: "getSmartApi", value: function getSmartApi() { var _this = this; - return { ready: function ready() { for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { args[_key] = arguments[_key]; } - return (0, smart_1.ready).apply(void 0, [_this].concat(args)); }, authorize: function authorize(options) { @@ -2713,7 +2356,6 @@ var BrowserAdapter = /*#__PURE__*/function () { }]); return BrowserAdapter; }(); - exports["default"] = BrowserAdapter; /***/ }), @@ -2725,45 +2367,38 @@ exports["default"] = BrowserAdapter; /***/ (function(module, __unused_webpack_exports, __webpack_require__) { "use strict"; - // In Browsers we create an adapter, get the SMART api from it and build the -// global FHIR object -__webpack_require__(/*! core-js/modules/es.object.to-string.js */ "./node_modules/core-js/modules/es.object.to-string.js"); +// In Browsers we create an adapter, get the SMART api from it and build the +// global FHIR object +__webpack_require__(/*! core-js/modules/es.object.to-string.js */ "./node_modules/core-js/modules/es.object.to-string.js"); __webpack_require__(/*! core-js/modules/es.promise.js */ "./node_modules/core-js/modules/es.promise.js"); - var BrowserAdapter_1 = __webpack_require__(/*! ../adapters/BrowserAdapter */ "./src/adapters/BrowserAdapter.ts"); - var adapter = new BrowserAdapter_1.default(); - var _adapter$getSmartApi = adapter.getSmartApi(), - ready = _adapter$getSmartApi.ready, - authorize = _adapter$getSmartApi.authorize, - init = _adapter$getSmartApi.init, - client = _adapter$getSmartApi.client, - options = _adapter$getSmartApi.options, - utils = _adapter$getSmartApi.utils; // We have two kinds of browser builds - "pure" for new browsers and "legacy" + ready = _adapter$getSmartApi.ready, + authorize = _adapter$getSmartApi.authorize, + init = _adapter$getSmartApi.init, + client = _adapter$getSmartApi.client, + options = _adapter$getSmartApi.options, + utils = _adapter$getSmartApi.utils; +// We have two kinds of browser builds - "pure" for new browsers and "legacy" // for old ones. In pure builds we assume that the browser supports everything // we need. In legacy mode, the library also acts as a polyfill. Babel will // automatically polyfill everything except "fetch", which we have to handle // manually. // @ts-ignore - - if (typeof FHIRCLIENT_PURE == "undefined") { var fetch = __webpack_require__(/*! cross-fetch */ "./node_modules/cross-fetch/dist/browser-ponyfill.js"); - __webpack_require__(/*! abortcontroller-polyfill/dist/abortcontroller-polyfill-only */ "./node_modules/abortcontroller-polyfill/dist/abortcontroller-polyfill-only.js"); - if (!window.fetch) { window.fetch = fetch.default; window.Headers = fetch.Headers; window.Request = fetch.Request; window.Response = fetch.Response; } -} // $lab:coverage:off$ - - +} +// $lab:coverage:off$ var FHIR = { AbortController: window.AbortController, client: client, @@ -2775,7 +2410,8 @@ var FHIR = { init: init } }; -module.exports = FHIR; // $lab:coverage:on$ +module.exports = FHIR; +// $lab:coverage:on$ /***/ }), @@ -2787,98 +2423,62 @@ module.exports = FHIR; // $lab:coverage:on$ "use strict"; + /* * This file contains some shared functions. They are used by other modules, but * are defined here so that tests can import this library and test them. */ - __webpack_require__(/*! core-js/modules/es.symbol.js */ "./node_modules/core-js/modules/es.symbol.js"); - __webpack_require__(/*! core-js/modules/es.object.get-own-property-descriptor.js */ "./node_modules/core-js/modules/es.object.get-own-property-descriptor.js"); - __webpack_require__(/*! core-js/modules/es.object.get-own-property-descriptors.js */ "./node_modules/core-js/modules/es.object.get-own-property-descriptors.js"); - var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/interopRequireDefault.js"); - var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/@babel/runtime/regenerator/index.js")); - var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/@babel/runtime/helpers/defineProperty.js")); - var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "./node_modules/@babel/runtime/helpers/objectWithoutProperties.js")); - var _typeof2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/typeof */ "./node_modules/@babel/runtime/helpers/typeof.js")); - var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/@babel/runtime/helpers/asyncToGenerator.js")); - -__webpack_require__(/*! core-js/modules/es.regexp.exec.js */ "./node_modules/core-js/modules/es.regexp.exec.js"); - -__webpack_require__(/*! core-js/modules/es.string.match.js */ "./node_modules/core-js/modules/es.string.match.js"); - +__webpack_require__(/*! core-js/modules/es.array.concat.js */ "./node_modules/core-js/modules/es.array.concat.js"); +__webpack_require__(/*! core-js/modules/es.array.filter.js */ "./node_modules/core-js/modules/es.array.filter.js"); +__webpack_require__(/*! core-js/modules/es.array.find.js */ "./node_modules/core-js/modules/es.array.find.js"); +__webpack_require__(/*! core-js/modules/es.array.join.js */ "./node_modules/core-js/modules/es.array.join.js"); __webpack_require__(/*! core-js/modules/es.array.map.js */ "./node_modules/core-js/modules/es.array.map.js"); - -__webpack_require__(/*! core-js/modules/es.object.to-string.js */ "./node_modules/core-js/modules/es.object.to-string.js"); - -__webpack_require__(/*! core-js/modules/web.dom-collections.for-each.js */ "./node_modules/core-js/modules/web.dom-collections.for-each.js"); - +__webpack_require__(/*! core-js/modules/es.function.name.js */ "./node_modules/core-js/modules/es.function.name.js"); __webpack_require__(/*! core-js/modules/es.object.keys.js */ "./node_modules/core-js/modules/es.object.keys.js"); - +__webpack_require__(/*! core-js/modules/es.object.to-string.js */ "./node_modules/core-js/modules/es.object.to-string.js"); __webpack_require__(/*! core-js/modules/es.promise.js */ "./node_modules/core-js/modules/es.promise.js"); - +__webpack_require__(/*! core-js/modules/es.regexp.exec.js */ "./node_modules/core-js/modules/es.regexp.exec.js"); +__webpack_require__(/*! core-js/modules/es.string.match.js */ "./node_modules/core-js/modules/es.string.match.js"); __webpack_require__(/*! core-js/modules/es.string.replace.js */ "./node_modules/core-js/modules/es.string.replace.js"); - -__webpack_require__(/*! core-js/modules/es.array.concat.js */ "./node_modules/core-js/modules/es.array.concat.js"); - __webpack_require__(/*! core-js/modules/es.string.trim.js */ "./node_modules/core-js/modules/es.string.trim.js"); - -__webpack_require__(/*! core-js/modules/es.string.split.js */ "./node_modules/core-js/modules/es.string.split.js"); - -__webpack_require__(/*! core-js/modules/es.array.join.js */ "./node_modules/core-js/modules/es.array.join.js"); - -__webpack_require__(/*! core-js/modules/es.array.filter.js */ "./node_modules/core-js/modules/es.array.filter.js"); - -__webpack_require__(/*! core-js/modules/es.array.find.js */ "./node_modules/core-js/modules/es.array.find.js"); - -__webpack_require__(/*! core-js/modules/es.function.name.js */ "./node_modules/core-js/modules/es.function.name.js"); - +__webpack_require__(/*! core-js/modules/web.dom-collections.for-each.js */ "./node_modules/core-js/modules/web.dom-collections.for-each.js"); var _excluded = ["includeResponse"]; - -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } - -function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } - +function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; } +function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; } Object.defineProperty(exports, "__esModule", ({ value: true })); exports.assertJsonPatch = exports.assert = exports.getTargetWindow = exports.getPatientParam = exports.byCodes = exports.byCode = exports.getAccessTokenExpiration = exports.getTimeInFuture = exports.jwtDecode = exports.randomString = exports.absolute = exports.makeArray = exports.setPath = exports.getPath = exports.fetchConformanceStatement = exports.getAndCache = exports.request = exports.loweCaseKeys = exports.responseToJSON = exports.checkResponse = exports.units = exports.debug = void 0; - var HttpError_1 = __webpack_require__(/*! ./HttpError */ "./src/HttpError.ts"); - var settings_1 = __webpack_require__(/*! ./settings */ "./src/settings.ts"); - -var debug = __webpack_require__(/*! debug */ "./node_modules/debug/src/browser.js"); // $lab:coverage:off$ +var debug = __webpack_require__(/*! debug */ "./node_modules/debug/src/browser.js"); +// $lab:coverage:off$ // @ts-ignore - - var _ref = typeof FHIRCLIENT_PURE !== "undefined" ? window : __webpack_require__(/*! cross-fetch */ "./node_modules/cross-fetch/dist/browser-ponyfill.js"), - fetch = _ref.fetch; // $lab:coverage:on$ - - + fetch = _ref.fetch; +// $lab:coverage:on$ var _debug = debug("FHIR"); - exports.debug = _debug; /** * The cache for the `getAndCache` function */ - var cache = {}; /** * A namespace with functions for converting between different measurement units */ - exports.units = { cm: function cm(_ref2) { var code = _ref2.code, - value = _ref2.value; + value = _ref2.value; ensureNumerical({ code: code, value: value @@ -2894,7 +2494,7 @@ exports.units = { }, kg: function kg(_ref3) { var code = _ref3.code, - value = _ref3.value; + value = _ref3.value; ensureNumerical({ code: code, value: value @@ -2913,11 +2513,9 @@ exports.units = { /** * Assertion function to guard arguments for `units` functions */ - function ensureNumerical(_ref4) { var value = _ref4.value, - code = _ref4.code; - + code = _ref4.code; if (typeof value !== "number") { throw new Error("Found a non-numerical unit: " + value + " " + code); } @@ -2925,73 +2523,58 @@ function ensureNumerical(_ref4) { /** * Used in fetch Promise chains to reject if the "ok" property is not true */ - - function checkResponse(_x) { return _checkResponse.apply(this, arguments); } - function _checkResponse() { _checkResponse = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(resp) { var error; return _regenerator.default.wrap(function _callee$(_context) { - while (1) { - switch (_context.prev = _context.next) { - case 0: - if (resp.ok) { - _context.next = 5; - break; - } - - error = new HttpError_1.default(resp); - _context.next = 4; - return error.parse(); - - case 4: - throw error; - - case 5: - return _context.abrupt("return", resp); - - case 6: - case "end": - return _context.stop(); - } + while (1) switch (_context.prev = _context.next) { + case 0: + if (resp.ok) { + _context.next = 5; + break; + } + error = new HttpError_1.default(resp); + _context.next = 4; + return error.parse(); + case 4: + throw error; + case 5: + return _context.abrupt("return", resp); + case 6: + case "end": + return _context.stop(); } }, _callee); })); return _checkResponse.apply(this, arguments); } - exports.checkResponse = checkResponse; /** * Used in fetch Promise chains to return the JSON version of the response. * Note that `resp.json()` will throw on empty body so we use resp.text() * instead. */ - function responseToJSON(resp) { return resp.text().then(function (text) { return text.length ? JSON.parse(text) : ""; }); } - exports.responseToJSON = responseToJSON; - function loweCaseKeys(obj) { // Can be undefined to signal that this key should be removed if (!obj) { return obj; - } // Arrays are valid values in case of recursive calls - - + } + // Arrays are valid values in case of recursive calls if (Array.isArray(obj)) { return obj.map(function (v) { return v && (0, _typeof2.default)(v) === "object" ? loweCaseKeys(v) : v; }); - } // Plain object - - + } + // Plain object var out = {}; Object.keys(obj).forEach(function (key) { var lowerKey = key.toLowerCase(); @@ -3000,7 +2583,6 @@ function loweCaseKeys(obj) { }); return out; } - exports.loweCaseKeys = loweCaseKeys; /** * This is our built-in request function. It does a few things by default @@ -3012,11 +2594,10 @@ exports.loweCaseKeys = loweCaseKeys; * - If the response is text return the result text * - Otherwise return the response object on which we call stuff like `.blob()` */ - function request(url) { var requestOptions = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; var includeResponse = requestOptions.includeResponse, - options = (0, _objectWithoutProperties2.default)(requestOptions, _excluded); + options = (0, _objectWithoutProperties2.default)(requestOptions, _excluded); return fetch(url, _objectSpread(_objectSpread({ mode: "cors" }, options), {}, { @@ -3025,7 +2606,6 @@ function request(url) { }, loweCaseKeys(options.headers)) })).then(checkResponse).then(function (res) { var type = res.headers.get("content-type") + ""; - if (type.match(/\bjson\b/i)) { return responseToJSON(res).then(function (body) { return { @@ -3034,7 +2614,6 @@ function request(url) { }; }); } - if (type.match(/^text\//i)) { return res.text().then(function (body) { return { @@ -3043,20 +2622,17 @@ function request(url) { }; }); } - return { res: res }; }).then(function (_ref5) { var res = _ref5.res, - body = _ref5.body; - + body = _ref5.body; // Some servers will reply after CREATE with json content type but with // empty body. In this case check if a location header is received and // fetch that to use it as the final result. if (!body && res.status == 201) { var location = res.headers.get("location"); - if (location) { return request(location, _objectSpread(_objectSpread({}, options), {}, { method: "GET", @@ -3065,26 +2641,22 @@ function request(url) { })); } } - if (includeResponse) { return { body: body, response: res }; - } // For any non-text and non-json response return the Response object. + } + // For any non-text and non-json response return the Response object. // This to let users decide if they want to call text(), blob() or // something else on it - - if (body === undefined) { return res; - } // Otherwise just return the parsed body (can also be "" or null) - - + } + // Otherwise just return the parsed body (can also be "" or null) return body; }); } - exports.request = request; /** * Makes a request using `fetch` and stores the result in internal memory cache. @@ -3094,18 +2666,14 @@ exports.request = request; * @param force If true, reload from source and update the cache, even if it has * already been cached. */ - function getAndCache(url, requestOptions) { var force = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : "development" === "test"; - if (force || !cache[url]) { cache[url] = request(url, requestOptions); return cache[url]; } - return Promise.resolve(cache[url]); } - exports.getAndCache = getAndCache; /** * Fetches the conformance statement from the given base URL. @@ -3114,7 +2682,6 @@ exports.getAndCache = getAndCache; * @param baseUrl The base URL of the FHIR server * @param [requestOptions] Any options passed to the fetch call */ - function fetchConformanceStatement() { var baseUrl = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : "/"; var requestOptions = arguments.length > 1 ? arguments[1] : undefined; @@ -3123,7 +2690,6 @@ function fetchConformanceStatement() { throw new Error("Failed to fetch the conformance statement from \"".concat(url, "\". ").concat(ex)); }); } - exports.fetchConformanceStatement = fetchConformanceStatement; /** * Walks through an object (or array) and returns the value found at the @@ -3134,21 +2700,16 @@ exports.fetchConformanceStatement = fetchConformanceStatement; * @param path The path (eg. "a.b.4.c") * @returns {*} Whatever is found in the path or undefined */ - function getPath(obj) { var path = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : ""; path = path.trim(); - if (!path) { return obj; } - var segments = path.split("."); var result = obj; - while (result && segments.length) { var key = segments.shift(); - if (!key && Array.isArray(result)) { return result.map(function (o) { return getPath(o, segments.join(".")); @@ -3157,10 +2718,8 @@ function getPath(obj) { result = result[key]; } } - return result; } - exports.getPath = getPath; /** * Like getPath, but if the node is found, its value is set to @value @@ -3170,7 +2729,6 @@ exports.getPath = getPath; * @param createEmpty If true, create missing intermediate objects or arrays * @returns The modified object */ - function setPath(obj, path, value) { var createEmpty = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false; path.trim().split(".").reduce(function (out, key, idx, arr) { @@ -3180,13 +2738,11 @@ function setPath(obj, path, value) { if (out && out[key] === undefined && createEmpty) { out[key] = arr[idx + 1].match(/^[0-9]+$/) ? [] : {}; } - return out ? out[key] : undefined; } }, obj); return obj; } - exports.setPath = setPath; /** * If the argument is an array returns it as is. Otherwise puts it in an array @@ -3194,15 +2750,12 @@ exports.setPath = setPath; * @param arg The element to test and possibly convert to array * @category Utility */ - function makeArray(arg) { if (Array.isArray(arg)) { return arg; } - return [arg]; } - exports.makeArray = makeArray; /** * Given a path, converts it to absolute url based on the `baseUrl`. If baseUrl @@ -3210,13 +2763,11 @@ exports.makeArray = makeArray; * @param path The path to convert * @param baseUrl The base URL */ - function absolute(path, baseUrl) { if (path.match(/^http/)) return path; if (path.match(/^urn/)) return path; return String(baseUrl || "").replace(/\/+$/, "") + "/" + path.replace(/^\/+/, ""); } - exports.absolute = absolute; /** * Generates random strings. By default this returns random 8 characters long @@ -3226,20 +2777,16 @@ exports.absolute = absolute; * Defaults to all the upper and lower-case letters plus digits. * @category Utility */ - function randomString() { var strLength = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 8; var charSet = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789"; var result = []; var len = charSet.length; - while (strLength--) { result.push(charSet.charAt(Math.floor(Math.random() * len))); } - return result.join(""); } - exports.randomString = randomString; /** * Decodes a JWT token and returns it's body. @@ -3247,12 +2794,10 @@ exports.randomString = randomString; * @param env An `Adapter` or any other object that has an `atob` method * @category Utility */ - function jwtDecode(token, env) { var payload = token.split(".")[1]; return payload ? JSON.parse(env.atob(payload)) : null; } - exports.jwtDecode = jwtDecode; /** * Add a supplied number of seconds to the supplied Date, returning @@ -3260,13 +2805,11 @@ exports.jwtDecode = jwtDecode; * @param secondsAhead How far ahead, in seconds (defaults to 120 seconds) * @param from Initial time (defaults to current time) */ - function getTimeInFuture() { var secondsAhead = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 120; var from = arguments.length > 1 ? arguments[1] : undefined; return Math.floor(+(from || new Date()) / 1000 + secondsAhead); } - exports.getTimeInFuture = getTimeInFuture; /** * Given a token response, computes and returns the expiresAt timestamp. @@ -3275,27 +2818,22 @@ exports.getTimeInFuture = getTimeInFuture; * @param tokenResponse * @param env */ - function getAccessTokenExpiration(tokenResponse, env) { - var now = Math.floor(Date.now() / 1000); // Option 1 - using the expires_in property of the token response - + var now = Math.floor(Date.now() / 1000); + // Option 1 - using the expires_in property of the token response if (tokenResponse.expires_in) { return now + tokenResponse.expires_in; - } // Option 2 - using the exp property of JWT tokens (must not assume JWT!) - - + } + // Option 2 - using the exp property of JWT tokens (must not assume JWT!) if (tokenResponse.access_token) { var tokenBody = jwtDecode(tokenResponse.access_token, env); - if (tokenBody && tokenBody.exp) { return tokenBody.exp; } - } // Option 3 - if none of the above worked set this to 5 minutes after now - - + } + // Option 3 - if none of the above worked set this to 5 minutes after now return now + 300; } - exports.getAccessTokenExpiration = getAccessTokenExpiration; /** * Groups the observations by code. Returns a map that will look like: @@ -3309,15 +2847,12 @@ exports.getAccessTokenExpiration = getAccessTokenExpiration; * @param observations Array of observations * @param property The name of a CodeableConcept property to group by */ - function byCode(observations, property) { var ret = {}; - function handleCodeableConcept(concept, observation) { if (concept && Array.isArray(concept.coding)) { concept.coding.forEach(function (_ref6) { var code = _ref6.code; - if (code) { ret[code] = ret[code] || []; ret[code].push(observation); @@ -3325,7 +2860,6 @@ function byCode(observations, property) { }); } } - makeArray(observations).forEach(function (o) { if (o.resourceType === "Observation" && o[property]) { if (Array.isArray(o[property])) { @@ -3339,7 +2873,6 @@ function byCode(observations, property) { }); return ret; } - exports.byCode = byCode; /** * First groups the observations by code using `byCode`. Then returns a function @@ -3354,14 +2887,12 @@ exports.byCode = byCode; * @param observations Array of observations * @param property The name of a CodeableConcept property to group by */ - function byCodes(observations, property) { var bank = byCode(observations, property); return function () { for (var _len = arguments.length, codes = new Array(_len), _key = 0; _key < _len; _key++) { codes[_key] = arguments[_key]; } - return codes.filter(function (code) { return code + "" in bank; }).reduce(function (prev, code) { @@ -3369,51 +2900,43 @@ function byCodes(observations, property) { }, []); }; } - exports.byCodes = byCodes; /** * Given a conformance statement and a resource type, returns the name of the * URL parameter that can be used to scope the resource type by patient ID. */ - function getPatientParam(conformance, resourceType) { // Find what resources are supported by this server - var resources = getPath(conformance, "rest.0.resource") || []; // Check if this resource is supported - + var resources = getPath(conformance, "rest.0.resource") || []; + // Check if this resource is supported var meta = resources.find(function (r) { return r.type === resourceType; }); - if (!meta) { throw new Error("Resource \"".concat(resourceType, "\" is not supported by this FHIR server")); - } // Check if any search parameters are available for this resource - - + } + // Check if any search parameters are available for this resource if (!Array.isArray(meta.searchParam)) { throw new Error("No search parameters supported for \"".concat(resourceType, "\" on this FHIR server")); - } // This is a rare case but could happen in generic workflows - - + } + // This is a rare case but could happen in generic workflows if (resourceType == "Patient" && meta.searchParam.find(function (x) { return x.name == "_id"; })) { return "_id"; - } // Now find the first possible parameter name - - + } + // Now find the first possible parameter name var out = settings_1.patientParams.find(function (p) { return meta.searchParam.find(function (x) { return x.name == p; }); - }); // If there is no match - + }); + // If there is no match if (!out) { throw new Error("I don't know what param to use for " + resourceType); } - return out; } - exports.getPatientParam = getPatientParam; /** * Resolves a reference to target window. It may also open new window or tab if @@ -3422,204 +2945,153 @@ exports.getPatientParam = getPatientParam; * @param width Only used when `target = "popup"` * @param height Only used when `target = "popup"` */ - function getTargetWindow(_x2) { return _getTargetWindow.apply(this, arguments); } - function _getTargetWindow() { _getTargetWindow = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2(target) { var width, - height, - error, - targetWindow, - _error, - _targetWindow, - winOrFrame, - _args2 = arguments; - + height, + error, + targetWindow, + _error, + _targetWindow, + winOrFrame, + _args2 = arguments; return _regenerator.default.wrap(function _callee2$(_context2) { - while (1) { - switch (_context2.prev = _context2.next) { - case 0: - width = _args2.length > 1 && _args2[1] !== undefined ? _args2[1] : 800; - height = _args2.length > 2 && _args2[2] !== undefined ? _args2[2] : 720; - - if (!(typeof target == "function")) { - _context2.next = 6; - break; - } - - _context2.next = 5; - return target(); - - case 5: - target = _context2.sent; - - case 6: - if (!(target && (0, _typeof2.default)(target) == "object")) { - _context2.next = 8; - break; - } - - return _context2.abrupt("return", target); - - case 8: - if (!(typeof target != "string")) { - _context2.next = 11; - break; - } - - _debug("Invalid target type '%s'. Failing back to '_self'.", (0, _typeof2.default)(target)); - - return _context2.abrupt("return", self); - - case 11: - if (!(target == "_self")) { - _context2.next = 13; - break; - } - - return _context2.abrupt("return", self); - - case 13: - if (!(target == "_parent")) { - _context2.next = 15; - break; - } - - return _context2.abrupt("return", parent); - - case 15: - if (!(target == "_top")) { - _context2.next = 17; - break; - } - - return _context2.abrupt("return", top || self); - - case 17: - if (!(target == "_blank")) { - _context2.next = 34; - break; - } - - targetWindow = null; - _context2.prev = 19; - targetWindow = window.open("", "SMARTAuthPopup"); - - if (targetWindow) { - _context2.next = 23; - break; - } - - throw new Error("Perhaps window.open was blocked"); - - case 23: - _context2.next = 28; + while (1) switch (_context2.prev = _context2.next) { + case 0: + width = _args2.length > 1 && _args2[1] !== undefined ? _args2[1] : 800; + height = _args2.length > 2 && _args2[2] !== undefined ? _args2[2] : 720; + if (!(typeof target == "function")) { + _context2.next = 6; break; - - case 25: - _context2.prev = 25; - _context2.t0 = _context2["catch"](19); - error = _context2.t0; - - case 28: - if (targetWindow) { - _context2.next = 33; - break; - } - - _debug("Cannot open window. Failing back to '_self'. %s", error); - - return _context2.abrupt("return", self); - - case 33: - return _context2.abrupt("return", targetWindow); - - case 34: - if (!(target == "popup")) { - _context2.next = 51; - break; - } - - _targetWindow = null; // if (!targetWindow || targetWindow.closed) { - - _context2.prev = 36; - _targetWindow = window.open("", "SMARTAuthPopup", ["height=" + height, "width=" + width, "menubar=0", "resizable=1", "status=0", "top=" + (screen.height - height) / 2, "left=" + (screen.width - width) / 2].join(",")); - - if (_targetWindow) { - _context2.next = 40; - break; - } - - throw new Error("Perhaps the popup window was blocked"); - - case 40: - _context2.next = 45; + } + _context2.next = 5; + return target(); + case 5: + target = _context2.sent; + case 6: + if (!(target && (0, _typeof2.default)(target) == "object")) { + _context2.next = 8; break; - - case 42: - _context2.prev = 42; - _context2.t1 = _context2["catch"](36); - _error = _context2.t1; - - case 45: - if (_targetWindow) { - _context2.next = 50; - break; - } - - _debug("Cannot open window. Failing back to '_self'. %s", _error); - - return _context2.abrupt("return", self); - - case 50: - return _context2.abrupt("return", _targetWindow); - - case 51: - // Frame or window by name - winOrFrame = frames[target]; - - if (!winOrFrame) { - _context2.next = 54; - break; - } - - return _context2.abrupt("return", winOrFrame); - - case 54: - _debug("Unknown target '%s'. Failing back to '_self'.", target); - - return _context2.abrupt("return", self); - - case 56: - case "end": - return _context2.stop(); - } + } + return _context2.abrupt("return", target); + case 8: + if (!(typeof target != "string")) { + _context2.next = 11; + break; + } + _debug("Invalid target type '%s'. Failing back to '_self'.", (0, _typeof2.default)(target)); + return _context2.abrupt("return", self); + case 11: + if (!(target == "_self")) { + _context2.next = 13; + break; + } + return _context2.abrupt("return", self); + case 13: + if (!(target == "_parent")) { + _context2.next = 15; + break; + } + return _context2.abrupt("return", parent); + case 15: + if (!(target == "_top")) { + _context2.next = 17; + break; + } + return _context2.abrupt("return", top || self); + case 17: + if (!(target == "_blank")) { + _context2.next = 34; + break; + } + targetWindow = null; + _context2.prev = 19; + targetWindow = window.open("", "SMARTAuthPopup"); + if (targetWindow) { + _context2.next = 23; + break; + } + throw new Error("Perhaps window.open was blocked"); + case 23: + _context2.next = 28; + break; + case 25: + _context2.prev = 25; + _context2.t0 = _context2["catch"](19); + error = _context2.t0; + case 28: + if (targetWindow) { + _context2.next = 33; + break; + } + _debug("Cannot open window. Failing back to '_self'. %s", error); + return _context2.abrupt("return", self); + case 33: + return _context2.abrupt("return", targetWindow); + case 34: + if (!(target == "popup")) { + _context2.next = 51; + break; + } + _targetWindow = null; // if (!targetWindow || targetWindow.closed) { + _context2.prev = 36; + _targetWindow = window.open("", "SMARTAuthPopup", ["height=" + height, "width=" + width, "menubar=0", "resizable=1", "status=0", "top=" + (screen.height - height) / 2, "left=" + (screen.width - width) / 2].join(",")); + if (_targetWindow) { + _context2.next = 40; + break; + } + throw new Error("Perhaps the popup window was blocked"); + case 40: + _context2.next = 45; + break; + case 42: + _context2.prev = 42; + _context2.t1 = _context2["catch"](36); + _error = _context2.t1; + case 45: + if (_targetWindow) { + _context2.next = 50; + break; + } + _debug("Cannot open window. Failing back to '_self'. %s", _error); + return _context2.abrupt("return", self); + case 50: + return _context2.abrupt("return", _targetWindow); + case 51: + // Frame or window by name + winOrFrame = frames[target]; + if (!winOrFrame) { + _context2.next = 54; + break; + } + return _context2.abrupt("return", winOrFrame); + case 54: + _debug("Unknown target '%s'. Failing back to '_self'.", target); + return _context2.abrupt("return", self); + case 56: + case "end": + return _context2.stop(); } }, _callee2, null, [[19, 25], [36, 42]]); })); return _getTargetWindow.apply(this, arguments); } - exports.getTargetWindow = getTargetWindow; - function assert(condition, message) { if (!condition) { throw new Error(message); } } - exports.assert = assert; - function assertJsonPatch(patch) { assert(Array.isArray(patch), "The JSON patch must be an array"); assert(patch.length > 0, "The JSON patch array should not be empty"); patch.forEach(function (operation) { assert(["add", "replace", "test", "move", "copy", "remove"].indexOf(operation.op) > -1, 'Each patch operation must have an "op" property which must be one of: "add", "replace", "test", "move", "copy", "remove"'); assert(operation.path && (0, _typeof2.default)(operation.path), "Invalid \"".concat(operation.op, "\" operation. Missing \"path\" property")); - if (operation.op == "add" || operation.op == "replace" || operation.op == "test") { assert("value" in operation, "Invalid \"".concat(operation.op, "\" operation. Missing \"value\" property")); assert(Object.keys(operation).length == 3, "Invalid \"".concat(operation.op, "\" operation. Contains unknown properties")); @@ -3631,7 +3103,6 @@ function assertJsonPatch(patch) { } }); } - exports.assertJsonPatch = assertJsonPatch; /***/ }), @@ -3645,99 +3116,54 @@ exports.assertJsonPatch = assertJsonPatch; "use strict"; -__webpack_require__(/*! core-js/modules/es.object.keys.js */ "./node_modules/core-js/modules/es.object.keys.js"); - __webpack_require__(/*! core-js/modules/es.symbol.js */ "./node_modules/core-js/modules/es.symbol.js"); - __webpack_require__(/*! core-js/modules/es.array.filter.js */ "./node_modules/core-js/modules/es.array.filter.js"); - __webpack_require__(/*! core-js/modules/es.object.get-own-property-descriptor.js */ "./node_modules/core-js/modules/es.object.get-own-property-descriptor.js"); - -__webpack_require__(/*! core-js/modules/web.dom-collections.for-each.js */ "./node_modules/core-js/modules/web.dom-collections.for-each.js"); - __webpack_require__(/*! core-js/modules/es.object.get-own-property-descriptors.js */ "./node_modules/core-js/modules/es.object.get-own-property-descriptors.js"); - +__webpack_require__(/*! core-js/modules/es.object.keys.js */ "./node_modules/core-js/modules/es.object.keys.js"); +__webpack_require__(/*! core-js/modules/web.dom-collections.for-each.js */ "./node_modules/core-js/modules/web.dom-collections.for-each.js"); var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/interopRequireDefault.js"); - var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/@babel/runtime/regenerator/index.js")); - -__webpack_require__(/*! core-js/modules/esnext.global-this.js */ "./node_modules/core-js/modules/esnext.global-this.js"); - +__webpack_require__(/*! core-js/modules/es.array.concat.js */ "./node_modules/core-js/modules/es.array.concat.js"); +__webpack_require__(/*! core-js/modules/es.array.includes.js */ "./node_modules/core-js/modules/es.array.includes.js"); __webpack_require__(/*! core-js/modules/es.array.iterator.js */ "./node_modules/core-js/modules/es.array.iterator.js"); - __webpack_require__(/*! core-js/modules/es.object.to-string.js */ "./node_modules/core-js/modules/es.object.to-string.js"); - +__webpack_require__(/*! core-js/modules/es.string.includes.js */ "./node_modules/core-js/modules/es.string.includes.js"); __webpack_require__(/*! core-js/modules/es.typed-array.uint8-array.js */ "./node_modules/core-js/modules/es.typed-array.uint8-array.js"); - __webpack_require__(/*! core-js/modules/es.typed-array.copy-within.js */ "./node_modules/core-js/modules/es.typed-array.copy-within.js"); - __webpack_require__(/*! core-js/modules/es.typed-array.every.js */ "./node_modules/core-js/modules/es.typed-array.every.js"); - __webpack_require__(/*! core-js/modules/es.typed-array.fill.js */ "./node_modules/core-js/modules/es.typed-array.fill.js"); - __webpack_require__(/*! core-js/modules/es.typed-array.filter.js */ "./node_modules/core-js/modules/es.typed-array.filter.js"); - __webpack_require__(/*! core-js/modules/es.typed-array.find.js */ "./node_modules/core-js/modules/es.typed-array.find.js"); - __webpack_require__(/*! core-js/modules/es.typed-array.find-index.js */ "./node_modules/core-js/modules/es.typed-array.find-index.js"); - __webpack_require__(/*! core-js/modules/es.typed-array.for-each.js */ "./node_modules/core-js/modules/es.typed-array.for-each.js"); - __webpack_require__(/*! core-js/modules/es.typed-array.includes.js */ "./node_modules/core-js/modules/es.typed-array.includes.js"); - __webpack_require__(/*! core-js/modules/es.typed-array.index-of.js */ "./node_modules/core-js/modules/es.typed-array.index-of.js"); - __webpack_require__(/*! core-js/modules/es.typed-array.iterator.js */ "./node_modules/core-js/modules/es.typed-array.iterator.js"); - __webpack_require__(/*! core-js/modules/es.typed-array.join.js */ "./node_modules/core-js/modules/es.typed-array.join.js"); - __webpack_require__(/*! core-js/modules/es.typed-array.last-index-of.js */ "./node_modules/core-js/modules/es.typed-array.last-index-of.js"); - __webpack_require__(/*! core-js/modules/es.typed-array.map.js */ "./node_modules/core-js/modules/es.typed-array.map.js"); - __webpack_require__(/*! core-js/modules/es.typed-array.reduce.js */ "./node_modules/core-js/modules/es.typed-array.reduce.js"); - __webpack_require__(/*! core-js/modules/es.typed-array.reduce-right.js */ "./node_modules/core-js/modules/es.typed-array.reduce-right.js"); - __webpack_require__(/*! core-js/modules/es.typed-array.reverse.js */ "./node_modules/core-js/modules/es.typed-array.reverse.js"); - __webpack_require__(/*! core-js/modules/es.typed-array.set.js */ "./node_modules/core-js/modules/es.typed-array.set.js"); - __webpack_require__(/*! core-js/modules/es.typed-array.slice.js */ "./node_modules/core-js/modules/es.typed-array.slice.js"); - __webpack_require__(/*! core-js/modules/es.typed-array.some.js */ "./node_modules/core-js/modules/es.typed-array.some.js"); - __webpack_require__(/*! core-js/modules/es.typed-array.sort.js */ "./node_modules/core-js/modules/es.typed-array.sort.js"); - __webpack_require__(/*! core-js/modules/es.typed-array.subarray.js */ "./node_modules/core-js/modules/es.typed-array.subarray.js"); - __webpack_require__(/*! core-js/modules/es.typed-array.to-locale-string.js */ "./node_modules/core-js/modules/es.typed-array.to-locale-string.js"); - __webpack_require__(/*! core-js/modules/es.typed-array.to-string.js */ "./node_modules/core-js/modules/es.typed-array.to-string.js"); - -__webpack_require__(/*! core-js/modules/es.array.includes.js */ "./node_modules/core-js/modules/es.array.includes.js"); - -__webpack_require__(/*! core-js/modules/es.string.includes.js */ "./node_modules/core-js/modules/es.string.includes.js"); - -__webpack_require__(/*! core-js/modules/es.array.concat.js */ "./node_modules/core-js/modules/es.array.concat.js"); - +__webpack_require__(/*! core-js/modules/esnext.global-this.js */ "./node_modules/core-js/modules/esnext.global-this.js"); var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/@babel/runtime/helpers/defineProperty.js")); - var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/@babel/runtime/helpers/asyncToGenerator.js")); - var _typeof2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/typeof */ "./node_modules/@babel/runtime/helpers/typeof.js")); - -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } - -function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } - +function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; } +function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; } Object.defineProperty(exports, "__esModule", ({ value: true })); exports.signCompactJws = exports.importJWK = exports.generatePKCEChallenge = exports.digestSha256 = exports.randomBytes = void 0; - var js_base64_1 = __webpack_require__(/*! js-base64 */ "./node_modules/js-base64/base64.js"); - var crypto = (typeof globalThis === "undefined" ? "undefined" : (0, _typeof2.default)(globalThis)) === "object" && globalThis.crypto ? globalThis.crypto : (__webpack_require__(/*! isomorphic-webcrypto */ "./node_modules/isomorphic-webcrypto/src/browser.mjs")["default"]); var subtle = crypto.subtle; var ALGS = { @@ -3754,180 +3180,144 @@ var ALGS = { } } }; - function randomBytes(count) { return crypto.getRandomValues(new Uint8Array(count)); } - exports.randomBytes = randomBytes; - function digestSha256(_x) { return _digestSha.apply(this, arguments); } - function _digestSha() { _digestSha = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2(payload) { var prepared, hash; return _regenerator.default.wrap(function _callee2$(_context2) { - while (1) { - switch (_context2.prev = _context2.next) { - case 0: - prepared = new TextEncoder().encode(payload); - _context2.next = 3; - return subtle.digest('SHA-256', prepared); - - case 3: - hash = _context2.sent; - return _context2.abrupt("return", new Uint8Array(hash)); - - case 5: - case "end": - return _context2.stop(); - } + while (1) switch (_context2.prev = _context2.next) { + case 0: + prepared = new TextEncoder().encode(payload); + _context2.next = 3; + return subtle.digest('SHA-256', prepared); + case 3: + hash = _context2.sent; + return _context2.abrupt("return", new Uint8Array(hash)); + case 5: + case "end": + return _context2.stop(); } }, _callee2); })); return _digestSha.apply(this, arguments); } - exports.digestSha256 = digestSha256; - var generatePKCEChallenge = /*#__PURE__*/function () { var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() { var entropy, - inputBytes, - codeVerifier, - codeChallenge, - _args = arguments; + inputBytes, + codeVerifier, + codeChallenge, + _args = arguments; return _regenerator.default.wrap(function _callee$(_context) { - while (1) { - switch (_context.prev = _context.next) { - case 0: - entropy = _args.length > 0 && _args[0] !== undefined ? _args[0] : 96; - inputBytes = randomBytes(entropy); - codeVerifier = (0, js_base64_1.fromUint8Array)(inputBytes, true); - _context.t0 = (0, js_base64_1.fromUint8Array); - _context.next = 6; - return digestSha256(codeVerifier); - - case 6: - _context.t1 = _context.sent; - codeChallenge = (0, _context.t0)(_context.t1, true); - return _context.abrupt("return", { - codeChallenge: codeChallenge, - codeVerifier: codeVerifier - }); - - case 9: - case "end": - return _context.stop(); - } + while (1) switch (_context.prev = _context.next) { + case 0: + entropy = _args.length > 0 && _args[0] !== undefined ? _args[0] : 96; + inputBytes = randomBytes(entropy); + codeVerifier = (0, js_base64_1.fromUint8Array)(inputBytes, true); + _context.t0 = (0, js_base64_1.fromUint8Array); + _context.next = 6; + return digestSha256(codeVerifier); + case 6: + _context.t1 = _context.sent; + codeChallenge = (0, _context.t0)(_context.t1, true); + return _context.abrupt("return", { + codeChallenge: codeChallenge, + codeVerifier: codeVerifier + }); + case 9: + case "end": + return _context.stop(); } }, _callee); })); - return function generatePKCEChallenge() { return _ref.apply(this, arguments); }; }(); - exports.generatePKCEChallenge = generatePKCEChallenge; - function importJWK(_x2) { return _importJWK.apply(this, arguments); } - function _importJWK() { _importJWK = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee3(jwk) { return _regenerator.default.wrap(function _callee3$(_context3) { - while (1) { - switch (_context3.prev = _context3.next) { - case 0: - if (jwk.alg) { - _context3.next = 2; - break; - } - - throw new Error('The "alg" property of the JWK must be set to "ES384" or "RS384"'); - - case 2: - // Use of the "key_ops" member is OPTIONAL, unless the application requires its presence. - // https://www.rfc-editor.org/rfc/rfc7517.html#section-4.3 - // - // In our case the app will only import private keys so we can assume "sign" - if (!Array.isArray(jwk.key_ops)) { - jwk.key_ops = ["sign"]; - } // In this case the JWK has a "key_ops" array and "sign" is not listed - - - if (jwk.key_ops.includes("sign")) { - _context3.next = 5; - break; - } - - throw new Error('The "key_ops" property of the JWK does not contain "sign"'); - - case 5: - _context3.prev = 5; - _context3.next = 8; - return subtle.importKey("jwk", jwk, ALGS[jwk.alg], jwk.ext === true, jwk.key_ops // || ['sign'] - ); - - case 8: - return _context3.abrupt("return", _context3.sent); - - case 11: - _context3.prev = 11; - _context3.t0 = _context3["catch"](5); - throw new Error("The ".concat(jwk.alg, " is not supported by this browser: ").concat(_context3.t0)); - - case 14: - case "end": - return _context3.stop(); - } + while (1) switch (_context3.prev = _context3.next) { + case 0: + if (jwk.alg) { + _context3.next = 2; + break; + } + throw new Error('The "alg" property of the JWK must be set to "ES384" or "RS384"'); + case 2: + // Use of the "key_ops" member is OPTIONAL, unless the application requires its presence. + // https://www.rfc-editor.org/rfc/rfc7517.html#section-4.3 + // + // In our case the app will only import private keys so we can assume "sign" + if (!Array.isArray(jwk.key_ops)) { + jwk.key_ops = ["sign"]; + } + // In this case the JWK has a "key_ops" array and "sign" is not listed + if (jwk.key_ops.includes("sign")) { + _context3.next = 5; + break; + } + throw new Error('The "key_ops" property of the JWK does not contain "sign"'); + case 5: + _context3.prev = 5; + _context3.next = 8; + return subtle.importKey("jwk", jwk, ALGS[jwk.alg], jwk.ext === true, jwk.key_ops // || ['sign'] + ); + case 8: + return _context3.abrupt("return", _context3.sent); + case 11: + _context3.prev = 11; + _context3.t0 = _context3["catch"](5); + throw new Error("The ".concat(jwk.alg, " is not supported by this browser: ").concat(_context3.t0)); + case 14: + case "end": + return _context3.stop(); } }, _callee3, null, [[5, 11]]); })); return _importJWK.apply(this, arguments); } - exports.importJWK = importJWK; - function signCompactJws(_x3, _x4, _x5, _x6) { return _signCompactJws.apply(this, arguments); } - function _signCompactJws() { _signCompactJws = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee4(alg, privateKey, header, payload) { var jwtHeader, jwtPayload, jwtAuthenticatedContent, signature; return _regenerator.default.wrap(function _callee4$(_context4) { - while (1) { - switch (_context4.prev = _context4.next) { - case 0: - jwtHeader = JSON.stringify(_objectSpread(_objectSpread({}, header), {}, { - alg: alg - })); - jwtPayload = JSON.stringify(payload); - jwtAuthenticatedContent = "".concat((0, js_base64_1.encodeURL)(jwtHeader), ".").concat((0, js_base64_1.encodeURL)(jwtPayload)); - _context4.next = 5; - return subtle.sign(_objectSpread(_objectSpread({}, privateKey.algorithm), {}, { - hash: 'SHA-384' - }), privateKey, new TextEncoder().encode(jwtAuthenticatedContent)); - - case 5: - signature = _context4.sent; - return _context4.abrupt("return", "".concat(jwtAuthenticatedContent, ".").concat((0, js_base64_1.fromUint8Array)(new Uint8Array(signature), true))); - - case 7: - case "end": - return _context4.stop(); - } + while (1) switch (_context4.prev = _context4.next) { + case 0: + jwtHeader = JSON.stringify(_objectSpread(_objectSpread({}, header), {}, { + alg: alg + })); + jwtPayload = JSON.stringify(payload); + jwtAuthenticatedContent = "".concat((0, js_base64_1.encodeURL)(jwtHeader), ".").concat((0, js_base64_1.encodeURL)(jwtPayload)); + _context4.next = 5; + return subtle.sign(_objectSpread(_objectSpread({}, privateKey.algorithm), {}, { + hash: 'SHA-384' + }), privateKey, new TextEncoder().encode(jwtAuthenticatedContent)); + case 5: + signature = _context4.sent; + return _context4.abrupt("return", "".concat(jwtAuthenticatedContent, ".").concat((0, js_base64_1.fromUint8Array)(new Uint8Array(signature), true))); + case 7: + case "end": + return _context4.stop(); } }, _callee4); })); return _signCompactJws.apply(this, arguments); } - exports.signCompactJws = signCompactJws; /***/ }), @@ -3948,12 +3338,10 @@ exports.SMART_KEY = exports.patientParams = exports.fhirVersions = exports.patie /** * Combined list of FHIR resource types accepting patient parameter in FHIR R2-R4 */ - exports.patientCompartment = ["Account", "AdverseEvent", "AllergyIntolerance", "Appointment", "AppointmentResponse", "AuditEvent", "Basic", "BodySite", "BodyStructure", "CarePlan", "CareTeam", "ChargeItem", "Claim", "ClaimResponse", "ClinicalImpression", "Communication", "CommunicationRequest", "Composition", "Condition", "Consent", "Coverage", "CoverageEligibilityRequest", "CoverageEligibilityResponse", "DetectedIssue", "DeviceRequest", "DeviceUseRequest", "DeviceUseStatement", "DiagnosticOrder", "DiagnosticReport", "DocumentManifest", "DocumentReference", "EligibilityRequest", "Encounter", "EnrollmentRequest", "EpisodeOfCare", "ExplanationOfBenefit", "FamilyMemberHistory", "Flag", "Goal", "Group", "ImagingManifest", "ImagingObjectSelection", "ImagingStudy", "Immunization", "ImmunizationEvaluation", "ImmunizationRecommendation", "Invoice", "List", "MeasureReport", "Media", "MedicationAdministration", "MedicationDispense", "MedicationOrder", "MedicationRequest", "MedicationStatement", "MolecularSequence", "NutritionOrder", "Observation", "Order", "Patient", "Person", "Procedure", "ProcedureRequest", "Provenance", "QuestionnaireResponse", "ReferralRequest", "RelatedPerson", "RequestGroup", "ResearchSubject", "RiskAssessment", "Schedule", "ServiceRequest", "Specimen", "SupplyDelivery", "SupplyRequest", "VisionPrescription"]; /** * Map of FHIR releases and their abstract version as number */ - exports.fhirVersions = { "0.4.0": 2, "0.5.0": 2, @@ -3975,12 +3363,10 @@ exports.fhirVersions = { * Combined (FHIR R2-R4) list of search parameters that can be used to scope * a request by patient ID. */ - exports.patientParams = ["patient", "subject", "requester", "member", "actor", "beneficiary"]; /** * The name of the sessionStorage entry that contains the current key */ - exports.SMART_KEY = "SMART_KEY"; /***/ }), @@ -3994,84 +3380,47 @@ exports.SMART_KEY = "SMART_KEY"; "use strict"; -__webpack_require__(/*! core-js/modules/es.object.keys.js */ "./node_modules/core-js/modules/es.object.keys.js"); - __webpack_require__(/*! core-js/modules/es.symbol.js */ "./node_modules/core-js/modules/es.symbol.js"); - __webpack_require__(/*! core-js/modules/es.object.get-own-property-descriptor.js */ "./node_modules/core-js/modules/es.object.get-own-property-descriptor.js"); - __webpack_require__(/*! core-js/modules/es.object.get-own-property-descriptors.js */ "./node_modules/core-js/modules/es.object.get-own-property-descriptors.js"); - +__webpack_require__(/*! core-js/modules/es.object.keys.js */ "./node_modules/core-js/modules/es.object.keys.js"); var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/interopRequireDefault.js"); - var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/@babel/runtime/regenerator/index.js")); - -__webpack_require__(/*! core-js/modules/es.regexp.exec.js */ "./node_modules/core-js/modules/es.regexp.exec.js"); - -__webpack_require__(/*! core-js/modules/es.string.replace.js */ "./node_modules/core-js/modules/es.string.replace.js"); - __webpack_require__(/*! core-js/modules/es.array.concat.js */ "./node_modules/core-js/modules/es.array.concat.js"); - -__webpack_require__(/*! core-js/modules/es.array.map.js */ "./node_modules/core-js/modules/es.array.map.js"); - __webpack_require__(/*! core-js/modules/es.array.filter.js */ "./node_modules/core-js/modules/es.array.filter.js"); - -__webpack_require__(/*! core-js/modules/es.object.to-string.js */ "./node_modules/core-js/modules/es.object.to-string.js"); - -__webpack_require__(/*! core-js/modules/web.dom-collections.for-each.js */ "./node_modules/core-js/modules/web.dom-collections.for-each.js"); - -__webpack_require__(/*! core-js/modules/es.function.name.js */ "./node_modules/core-js/modules/es.function.name.js"); - +__webpack_require__(/*! core-js/modules/es.array.find.js */ "./node_modules/core-js/modules/es.array.find.js"); +__webpack_require__(/*! core-js/modules/es.array.includes.js */ "./node_modules/core-js/modules/es.array.includes.js"); __webpack_require__(/*! core-js/modules/es.array.iterator.js */ "./node_modules/core-js/modules/es.array.iterator.js"); - +__webpack_require__(/*! core-js/modules/es.array.join.js */ "./node_modules/core-js/modules/es.array.join.js"); +__webpack_require__(/*! core-js/modules/es.array.map.js */ "./node_modules/core-js/modules/es.array.map.js"); +__webpack_require__(/*! core-js/modules/es.function.name.js */ "./node_modules/core-js/modules/es.function.name.js"); +__webpack_require__(/*! core-js/modules/es.object.assign.js */ "./node_modules/core-js/modules/es.object.assign.js"); +__webpack_require__(/*! core-js/modules/es.object.to-string.js */ "./node_modules/core-js/modules/es.object.to-string.js"); +__webpack_require__(/*! core-js/modules/es.promise.js */ "./node_modules/core-js/modules/es.promise.js"); +__webpack_require__(/*! core-js/modules/es.regexp.constructor.js */ "./node_modules/core-js/modules/es.regexp.constructor.js"); +__webpack_require__(/*! core-js/modules/es.regexp.exec.js */ "./node_modules/core-js/modules/es.regexp.exec.js"); +__webpack_require__(/*! core-js/modules/es.regexp.to-string.js */ "./node_modules/core-js/modules/es.regexp.to-string.js"); +__webpack_require__(/*! core-js/modules/es.string.includes.js */ "./node_modules/core-js/modules/es.string.includes.js"); __webpack_require__(/*! core-js/modules/es.string.iterator.js */ "./node_modules/core-js/modules/es.string.iterator.js"); - +__webpack_require__(/*! core-js/modules/es.string.match.js */ "./node_modules/core-js/modules/es.string.match.js"); +__webpack_require__(/*! core-js/modules/es.string.replace.js */ "./node_modules/core-js/modules/es.string.replace.js"); +__webpack_require__(/*! core-js/modules/web.dom-collections.for-each.js */ "./node_modules/core-js/modules/web.dom-collections.for-each.js"); __webpack_require__(/*! core-js/modules/web.dom-collections.iterator.js */ "./node_modules/core-js/modules/web.dom-collections.iterator.js"); - __webpack_require__(/*! core-js/modules/web.url.js */ "./node_modules/core-js/modules/web.url.js"); - __webpack_require__(/*! core-js/modules/web.url-search-params.js */ "./node_modules/core-js/modules/web.url-search-params.js"); - -__webpack_require__(/*! core-js/modules/es.array.find.js */ "./node_modules/core-js/modules/es.array.find.js"); - -__webpack_require__(/*! core-js/modules/es.regexp.constructor.js */ "./node_modules/core-js/modules/es.regexp.constructor.js"); - -__webpack_require__(/*! core-js/modules/es.regexp.to-string.js */ "./node_modules/core-js/modules/es.regexp.to-string.js"); - -__webpack_require__(/*! core-js/modules/es.string.match.js */ "./node_modules/core-js/modules/es.string.match.js"); - -__webpack_require__(/*! core-js/modules/es.object.assign.js */ "./node_modules/core-js/modules/es.object.assign.js"); - -__webpack_require__(/*! core-js/modules/es.array.includes.js */ "./node_modules/core-js/modules/es.array.includes.js"); - -__webpack_require__(/*! core-js/modules/es.string.includes.js */ "./node_modules/core-js/modules/es.string.includes.js"); - -__webpack_require__(/*! core-js/modules/es.array.join.js */ "./node_modules/core-js/modules/es.array.join.js"); - -__webpack_require__(/*! core-js/modules/es.promise.js */ "./node_modules/core-js/modules/es.promise.js"); - var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/@babel/runtime/helpers/defineProperty.js")); - var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/@babel/runtime/helpers/asyncToGenerator.js")); - var _typeof2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/typeof */ "./node_modules/@babel/runtime/helpers/typeof.js")); - -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } - -function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } - +function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; } +function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; } Object.defineProperty(exports, "__esModule", ({ value: true })); exports.init = exports.buildTokenRequest = exports.ready = exports.onMessage = exports.isInPopUp = exports.isInFrame = exports.authorize = exports.getSecurityExtensions = exports.fetchWellKnownJson = exports.KEY = void 0; /* global window */ - var lib_1 = __webpack_require__(/*! ./lib */ "./src/lib.ts"); - var Client_1 = __webpack_require__(/*! ./Client */ "./src/Client.ts"); - var settings_1 = __webpack_require__(/*! ./settings */ "./src/settings.ts"); - Object.defineProperty(exports, "KEY", ({ enumerable: true, get: function get() { @@ -4079,7 +3428,6 @@ Object.defineProperty(exports, "KEY", ({ } })); var debug = lib_1.debug.extend("oauth2"); - function isBrowser() { return (typeof window === "undefined" ? "undefined" : (0, _typeof2.default)(window)) === "object"; } @@ -4089,8 +3437,6 @@ function isBrowser() { * browser) because it might have to be re-used by the client * @param baseUrl The base URL of the FHIR server */ - - function fetchWellKnownJson() { var baseUrl = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : "/"; var requestOptions = arguments.length > 1 ? arguments[1] : undefined; @@ -4099,12 +3445,10 @@ function fetchWellKnownJson() { throw new Error("Failed to fetch the well-known json \"".concat(url, "\". ").concat(ex.message)); }); } - exports.fetchWellKnownJson = fetchWellKnownJson; /** * Fetch a "WellKnownJson" and extract the SMART endpoints from it */ - function getSecurityExtensionsFromWellKnownJson() { var baseUrl = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : "/"; var requestOptions = arguments.length > 1 ? arguments[1] : undefined; @@ -4112,7 +3456,6 @@ function getSecurityExtensionsFromWellKnownJson() { if (!meta.authorization_endpoint || !meta.token_endpoint) { throw new Error("Invalid wellKnownJson"); } - return { registrationUri: meta.registration_endpoint || "", authorizeUri: meta.authorization_endpoint, @@ -4124,8 +3467,6 @@ function getSecurityExtensionsFromWellKnownJson() { /** * Fetch a `CapabilityStatement` and extract the SMART endpoints from it */ - - function getSecurityExtensionsFromConformanceStatement() { var baseUrl = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : "/"; var requestOptions = arguments.length > 1 ? arguments[1] : undefined; @@ -4142,23 +3483,19 @@ function getSecurityExtensionsFromConformanceStatement() { tokenUri: "", codeChallengeMethods: [] }; - if (extensions) { extensions.forEach(function (ext) { if (ext.url === "register") { out.registrationUri = ext.valueUri; } - if (ext.url === "authorize") { out.authorizeUri = ext.valueUri; } - if (ext.url === "token") { out.tokenUri = ext.valueUri; } }); } - return out; }); } @@ -4169,15 +3506,12 @@ function getSecurityExtensionsFromConformanceStatement() { * Arrives first will be used and the other request will be aborted. * @param [baseUrl = "/"] Fhir server base URL */ - - function getSecurityExtensions() { var baseUrl = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : "/"; return getSecurityExtensionsFromWellKnownJson(baseUrl).catch(function () { return getSecurityExtensionsFromConformanceStatement(baseUrl); }); } - exports.getSecurityExtensions = getSecurityExtensions; /** * Starts the SMART Launch Sequence. @@ -4189,382 +3523,312 @@ exports.getSecurityExtensions = getSecurityExtensions; * @param env * @param [params] */ - function authorize(_x) { return _authorize.apply(this, arguments); } - function _authorize() { _authorize = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(env) { var params, - url, - urlISS, - cfg, - redirect_uri, - clientSecret, - fakeTokenResponse, - patientId, - encounterId, - client_id, - target, - width, - height, - pkceMode, - clientPublicKeySetUrl, - iss, - launch, - fhirServiceUrl, - redirectUri, - noRedirect, - _params$scope, - scope, - clientId, - completeInTarget, - clientPrivateJwk, - storage, - serverUrl, - inFrame, - inPopUp, - oldKey, - stateKey, - state, - fullSessionStorageSupport, - redirectUrl, - extensions, - redirectParams, - codes, - win, - _args = arguments; - + url, + urlISS, + cfg, + clientSecret, + fakeTokenResponse, + encounterId, + target, + width, + height, + pkceMode, + clientPublicKeySetUrl, + redirect_uri, + client_id, + iss, + launch, + patientId, + fhirServiceUrl, + redirectUri, + noRedirect, + _params$scope, + scope, + clientId, + completeInTarget, + clientPrivateJwk, + storage, + serverUrl, + inFrame, + inPopUp, + oldKey, + stateKey, + state, + fullSessionStorageSupport, + redirectUrl, + extensions, + redirectParams, + codes, + win, + _args = arguments; return _regenerator.default.wrap(function _callee$(_context) { - while (1) { - switch (_context.prev = _context.next) { - case 0: - params = _args.length > 1 && _args[1] !== undefined ? _args[1] : {}; - url = env.getUrl(); // Multiple config for EHR launches --------------------------------------- - - if (!Array.isArray(params)) { - _context.next = 11; - break; - } - - urlISS = url.searchParams.get("iss") || url.searchParams.get("fhirServiceUrl"); - - if (urlISS) { - _context.next = 6; - break; - } - - throw new Error('Passing in an "iss" url parameter is required if authorize ' + 'uses multiple configurations'); - - case 6: - // pick the right config - cfg = params.find(function (x) { - if (x.issMatch) { - if (typeof x.issMatch === "function") { - return !!x.issMatch(urlISS); - } - - if (typeof x.issMatch === "string") { - return x.issMatch === urlISS; - } - - if (x.issMatch instanceof RegExp) { - return x.issMatch.test(urlISS); - } + while (1) switch (_context.prev = _context.next) { + case 0: + params = _args.length > 1 && _args[1] !== undefined ? _args[1] : {}; + url = env.getUrl(); // Multiple config for EHR launches --------------------------------------- + if (!Array.isArray(params)) { + _context.next = 11; + break; + } + urlISS = url.searchParams.get("iss") || url.searchParams.get("fhirServiceUrl"); + if (urlISS) { + _context.next = 6; + break; + } + throw new Error('Passing in an "iss" url parameter is required if authorize ' + 'uses multiple configurations'); + case 6: + // pick the right config + cfg = params.find(function (x) { + if (x.issMatch) { + if (typeof x.issMatch === "function") { + return !!x.issMatch(urlISS); } - - return false; - }); - (0, lib_1.assert)(cfg, "No configuration found matching the current \"iss\" parameter \"".concat(urlISS, "\"")); - _context.next = 10; - return authorize(env, cfg); - - case 10: - return _context.abrupt("return", _context.sent); - - case 11: - // ------------------------------------------------------------------------ - // Obtain input - redirect_uri = params.redirect_uri, clientSecret = params.clientSecret, fakeTokenResponse = params.fakeTokenResponse, patientId = params.patientId, encounterId = params.encounterId, client_id = params.client_id, target = params.target, width = params.width, height = params.height, pkceMode = params.pkceMode, clientPublicKeySetUrl = params.clientPublicKeySetUrl; - iss = params.iss, launch = params.launch, fhirServiceUrl = params.fhirServiceUrl, redirectUri = params.redirectUri, noRedirect = params.noRedirect, _params$scope = params.scope, scope = _params$scope === void 0 ? "" : _params$scope, clientId = params.clientId, completeInTarget = params.completeInTarget, clientPrivateJwk = params.clientPrivateJwk; - storage = env.getStorage(); // For these three an url param takes precedence over inline option - - iss = url.searchParams.get("iss") || iss; - fhirServiceUrl = url.searchParams.get("fhirServiceUrl") || fhirServiceUrl; - launch = url.searchParams.get("launch") || launch; - - if (!clientId) { - clientId = client_id; - } - - if (!redirectUri) { - redirectUri = redirect_uri; - } - - if (!redirectUri) { - redirectUri = env.relative("."); - } else if (!redirectUri.match(/^https?\:\/\//)) { - redirectUri = env.relative(redirectUri); - } - - serverUrl = String(iss || fhirServiceUrl || ""); // Validate input - - if (serverUrl) { - _context.next = 23; - break; - } - - throw new Error("No server url found. It must be specified as `iss` or as " + "`fhirServiceUrl` parameter"); - - case 23: - if (iss) { - debug("Making %s launch...", launch ? "EHR" : "standalone"); - } // append launch scope if needed - - - if (launch && !scope.match(/launch/)) { - scope += " launch"; - } - - if (isBrowser()) { - inFrame = isInFrame(); - inPopUp = isInPopUp(); - - if ((inFrame || inPopUp) && completeInTarget !== true && completeInTarget !== false) { - // completeInTarget will default to true if authorize is called from - // within an iframe. This is to avoid issues when the entire app - // happens to be rendered in an iframe (including in some EHRs), - // even though that was not how the app developer's intention. - completeInTarget = inFrame; // In this case we can't always make the best decision so ask devs - // to be explicit in their configuration. - - console.warn('Your app is being authorized from within an iframe or popup ' + 'window. Please be explicit and provide a "completeInTarget" ' + 'option. Use "true" to complete the authorization in the ' + 'same window, or "false" to try to complete it in the parent ' + 'or the opener window. See http://docs.smarthealthit.org/client-js/api.html'); + if (typeof x.issMatch === "string") { + return x.issMatch === urlISS; + } + if (x.issMatch instanceof RegExp) { + return x.issMatch.test(urlISS); } - } // If `authorize` is called, make sure we clear any previous state (in case - // this is a re-authorize) - - - _context.next = 28; - return storage.get(settings_1.SMART_KEY); - - case 28: - oldKey = _context.sent; - _context.next = 31; - return storage.unset(oldKey); - - case 31: - // create initial state - stateKey = (0, lib_1.randomString)(16); - state = { - clientId: clientId, - scope: scope, - redirectUri: redirectUri, - serverUrl: serverUrl, - clientSecret: clientSecret, - clientPrivateJwk: clientPrivateJwk, - tokenResponse: {}, - key: stateKey, - completeInTarget: completeInTarget, - clientPublicKeySetUrl: clientPublicKeySetUrl - }; - fullSessionStorageSupport = isBrowser() ? (0, lib_1.getPath)(env, "options.fullSessionStorageSupport") : true; - - if (!fullSessionStorageSupport) { - _context.next = 37; - break; - } - - _context.next = 37; - return storage.set(settings_1.SMART_KEY, stateKey); - - case 37: - // fakeTokenResponse to override stuff (useful in development) - if (fakeTokenResponse) { - Object.assign(state.tokenResponse, fakeTokenResponse); - } // Fixed patientId (useful in development) - - - if (patientId) { - Object.assign(state.tokenResponse, { - patient: patientId - }); - } // Fixed encounterId (useful in development) - - - if (encounterId) { - Object.assign(state.tokenResponse, { - encounter: encounterId - }); - } - - redirectUrl = redirectUri + "?state=" + encodeURIComponent(stateKey); // bypass oauth if fhirServiceUrl is used (but iss takes precedence) - - if (!(fhirServiceUrl && !iss)) { - _context.next = 50; - break; } - - debug("Making fake launch..."); - _context.next = 45; - return storage.set(stateKey, state); - - case 45: - if (!noRedirect) { - _context.next = 47; - break; + return false; + }); + (0, lib_1.assert)(cfg, "No configuration found matching the current \"iss\" parameter \"".concat(urlISS, "\"")); + _context.next = 10; + return authorize(env, cfg); + case 10: + return _context.abrupt("return", _context.sent); + case 11: + // ------------------------------------------------------------------------ + // Obtain input + clientSecret = params.clientSecret, fakeTokenResponse = params.fakeTokenResponse, encounterId = params.encounterId, target = params.target, width = params.width, height = params.height, pkceMode = params.pkceMode, clientPublicKeySetUrl = params.clientPublicKeySetUrl, redirect_uri = params.redirect_uri, client_id = params.client_id; + iss = params.iss, launch = params.launch, patientId = params.patientId, fhirServiceUrl = params.fhirServiceUrl, redirectUri = params.redirectUri, noRedirect = params.noRedirect, _params$scope = params.scope, scope = _params$scope === void 0 ? "" : _params$scope, clientId = params.clientId, completeInTarget = params.completeInTarget, clientPrivateJwk = params.clientPrivateJwk; + storage = env.getStorage(); // For these, a url param takes precedence over inline option + iss = url.searchParams.get("iss") || iss; + fhirServiceUrl = url.searchParams.get("fhirServiceUrl") || fhirServiceUrl; + launch = url.searchParams.get("launch") || launch; + patientId = url.searchParams.get("patientId") || patientId; + clientId = url.searchParams.get("clientId") || clientId; + // If there's still no clientId or redirectUri, check deprecated params + if (!clientId) { + clientId = client_id; + } + if (!redirectUri) { + redirectUri = redirect_uri; + } + if (!redirectUri) { + redirectUri = env.relative("."); + } else if (!redirectUri.match(/^https?\:\/\//)) { + redirectUri = env.relative(redirectUri); + } + serverUrl = String(iss || fhirServiceUrl || ""); // Validate input + if (serverUrl) { + _context.next = 25; + break; + } + throw new Error("No server url found. It must be specified as `iss` or as " + "`fhirServiceUrl` parameter"); + case 25: + if (iss) { + debug("Making %s launch...", launch ? "EHR" : "standalone"); + } + // append launch scope if needed + if (launch && !scope.match(/launch/)) { + scope += " launch"; + } + if (isBrowser()) { + inFrame = isInFrame(); + inPopUp = isInPopUp(); + if ((inFrame || inPopUp) && completeInTarget !== true && completeInTarget !== false) { + // completeInTarget will default to true if authorize is called from + // within an iframe. This is to avoid issues when the entire app + // happens to be rendered in an iframe (including in some EHRs), + // even though that was not how the app developer's intention. + completeInTarget = inFrame; + // In this case we can't always make the best decision so ask devs + // to be explicit in their configuration. + console.warn('Your app is being authorized from within an iframe or popup ' + 'window. Please be explicit and provide a "completeInTarget" ' + 'option. Use "true" to complete the authorization in the ' + 'same window, or "false" to try to complete it in the parent ' + 'or the opener window. See http://docs.smarthealthit.org/client-js/api.html'); } - - return _context.abrupt("return", redirectUrl); - - case 47: - _context.next = 49; - return env.redirect(redirectUrl); - - case 49: - return _context.abrupt("return", _context.sent); - - case 50: + } + // If `authorize` is called, make sure we clear any previous state (in case + // this is a re-authorize) + _context.next = 30; + return storage.get(settings_1.SMART_KEY); + case 30: + oldKey = _context.sent; + _context.next = 33; + return storage.unset(oldKey); + case 33: + // create initial state + stateKey = (0, lib_1.randomString)(16); + state = { + clientId: clientId, + scope: scope, + redirectUri: redirectUri, + serverUrl: serverUrl, + clientSecret: clientSecret, + clientPrivateJwk: clientPrivateJwk, + tokenResponse: {}, + key: stateKey, + completeInTarget: completeInTarget, + clientPublicKeySetUrl: clientPublicKeySetUrl + }; + fullSessionStorageSupport = isBrowser() ? (0, lib_1.getPath)(env, "options.fullSessionStorageSupport") : true; + if (!fullSessionStorageSupport) { + _context.next = 39; + break; + } + _context.next = 39; + return storage.set(settings_1.SMART_KEY, stateKey); + case 39: + // fakeTokenResponse to override stuff (useful in development) + if (fakeTokenResponse) { + Object.assign(state.tokenResponse, fakeTokenResponse); + } + // Fixed patientId (useful in development) + if (patientId) { + Object.assign(state.tokenResponse, { + patient: patientId + }); + } + // Fixed encounterId (useful in development) + if (encounterId) { + Object.assign(state.tokenResponse, { + encounter: encounterId + }); + } + redirectUrl = redirectUri + "?state=" + encodeURIComponent(stateKey); // bypass oauth if fhirServiceUrl is used (but iss takes precedence) + if (!(fhirServiceUrl && !iss)) { _context.next = 52; - return getSecurityExtensions(serverUrl); - - case 52: - extensions = _context.sent; - Object.assign(state, extensions); - _context.next = 56; - return storage.set(stateKey, state); - - case 56: - if (state.authorizeUri) { - _context.next = 62; - break; - } - - if (!noRedirect) { - _context.next = 59; - break; - } - - return _context.abrupt("return", redirectUrl); - - case 59: + break; + } + debug("Making fake launch..."); + _context.next = 47; + return storage.set(stateKey, state); + case 47: + if (!noRedirect) { + _context.next = 49; + break; + } + return _context.abrupt("return", redirectUrl); + case 49: + _context.next = 51; + return env.redirect(redirectUrl); + case 51: + return _context.abrupt("return", _context.sent); + case 52: + _context.next = 54; + return getSecurityExtensions(serverUrl); + case 54: + extensions = _context.sent; + Object.assign(state, extensions); + _context.next = 58; + return storage.set(stateKey, state); + case 58: + if (state.authorizeUri) { + _context.next = 64; + break; + } + if (!noRedirect) { _context.next = 61; - return env.redirect(redirectUrl); - - case 61: - return _context.abrupt("return", _context.sent); - - case 62: - // build the redirect uri - redirectParams = ["response_type=code", "client_id=" + encodeURIComponent(clientId || ""), "scope=" + encodeURIComponent(scope), "redirect_uri=" + encodeURIComponent(redirectUri), "aud=" + encodeURIComponent(serverUrl), "state=" + encodeURIComponent(stateKey)]; // also pass this in case of EHR launch - - if (launch) { - redirectParams.push("launch=" + encodeURIComponent(launch)); - } - - if (!shouldIncludeChallenge(extensions.codeChallengeMethods.includes('S256'), pkceMode)) { - _context.next = 73; - break; - } - - _context.next = 67; - return env.security.generatePKCEChallenge(); - - case 67: - codes = _context.sent; - Object.assign(state, codes); - _context.next = 71; - return storage.set(stateKey, state); - - case 71: - redirectParams.push("code_challenge=" + state.codeChallenge); // note that the challenge is ALREADY encoded properly - - redirectParams.push("code_challenge_method=S256"); - - case 73: - redirectUrl = state.authorizeUri + "?" + redirectParams.join("&"); - - if (!noRedirect) { - _context.next = 76; - break; - } - - return _context.abrupt("return", redirectUrl); - - case 76: - if (!(target && isBrowser())) { - _context.next = 85; - break; - } - - _context.next = 79; - return (0, lib_1.getTargetWindow)(target, width, height); - - case 79: - win = _context.sent; - - if (win !== self) { - try { - // Also remove any old state from the target window and then - // transfer the current state there - win.sessionStorage.removeItem(oldKey); - win.sessionStorage.setItem(stateKey, JSON.stringify(state)); - } catch (ex) { - (0, lib_1.debug)("Failed to modify window.sessionStorage. Perhaps it is from different origin?. Failing back to \"_self\". %s", ex); - win = self; - } + break; + } + return _context.abrupt("return", redirectUrl); + case 61: + _context.next = 63; + return env.redirect(redirectUrl); + case 63: + return _context.abrupt("return", _context.sent); + case 64: + // build the redirect uri + redirectParams = ["response_type=code", "client_id=" + encodeURIComponent(clientId || ""), "scope=" + encodeURIComponent(scope), "redirect_uri=" + encodeURIComponent(redirectUri), "aud=" + encodeURIComponent(serverUrl), "state=" + encodeURIComponent(stateKey)]; // also pass this in case of EHR launch + if (launch) { + redirectParams.push("launch=" + encodeURIComponent(launch)); + } + if (!shouldIncludeChallenge(extensions.codeChallengeMethods.includes('S256'), pkceMode)) { + _context.next = 75; + break; + } + _context.next = 69; + return env.security.generatePKCEChallenge(); + case 69: + codes = _context.sent; + Object.assign(state, codes); + _context.next = 73; + return storage.set(stateKey, state); + case 73: + redirectParams.push("code_challenge=" + state.codeChallenge); // note that the challenge is ALREADY encoded properly + redirectParams.push("code_challenge_method=S256"); + case 75: + redirectUrl = state.authorizeUri + "?" + redirectParams.join("&"); + if (!noRedirect) { + _context.next = 78; + break; + } + return _context.abrupt("return", redirectUrl); + case 78: + if (!(target && isBrowser())) { + _context.next = 87; + break; + } + _context.next = 81; + return (0, lib_1.getTargetWindow)(target, width, height); + case 81: + win = _context.sent; + if (win !== self) { + try { + // Also remove any old state from the target window and then + // transfer the current state there + win.sessionStorage.removeItem(oldKey); + win.sessionStorage.setItem(stateKey, JSON.stringify(state)); + } catch (ex) { + (0, lib_1.debug)("Failed to modify window.sessionStorage. Perhaps it is from different origin?. Failing back to \"_self\". %s", ex); + win = self; } - - if (win !== self) { - try { - win.location.href = redirectUrl; - self.addEventListener("message", onMessage); - } catch (ex) { - (0, lib_1.debug)("Failed to modify window.location. Perhaps it is from different origin?. Failing back to \"_self\". %s", ex); - self.location.href = redirectUrl; - } - } else { + } + if (win !== self) { + try { + win.location.href = redirectUrl; + self.addEventListener("message", onMessage); + } catch (ex) { + (0, lib_1.debug)("Failed to modify window.location. Perhaps it is from different origin?. Failing back to \"_self\". %s", ex); self.location.href = redirectUrl; } - - return _context.abrupt("return"); - - case 85: - _context.next = 87; - return env.redirect(redirectUrl); - - case 87: - return _context.abrupt("return", _context.sent); - - case 88: - case "end": - return _context.stop(); - } + } else { + self.location.href = redirectUrl; + } + return _context.abrupt("return"); + case 87: + _context.next = 89; + return env.redirect(redirectUrl); + case 89: + return _context.abrupt("return", _context.sent); + case 90: + case "end": + return _context.stop(); } }, _callee); })); return _authorize.apply(this, arguments); } - exports.authorize = authorize; - function shouldIncludeChallenge(S256supported, pkceMode) { if (pkceMode === "disabled") { return false; } - if (pkceMode === "unsafeV1") { return true; } - if (pkceMode === "required") { if (!S256supported) { throw new Error("Required PKCE code challenge method (`S256`) was not found."); } - return true; } - return S256supported; } /** @@ -4573,8 +3837,6 @@ function shouldIncludeChallenge(S256supported, pkceMode) { * another window, returns true. If trying to access `top` or `parent` throws an * error, returns true. Otherwise returns `false`. */ - - function isInFrame() { try { return self !== top && parent !== self; @@ -4582,7 +3844,6 @@ function isInFrame() { return true; } } - exports.isInFrame = isInFrame; /** * Checks if called within another window (popup or tab). Only works in browsers! @@ -4591,7 +3852,6 @@ exports.isInFrame = isInFrame; * 2. `!!opener && opener !== self` The window has an opener * 3. `!!window.name` The window has a `name` set */ - function isInPopUp() { try { return self === top && !!opener && opener !== self && !!window.name; @@ -4599,21 +3859,18 @@ function isInPopUp() { return false; } } - exports.isInPopUp = isInPopUp; /** * Another window can send a "completeAuth" message to this one, making it to * navigate to e.data.url * @param e The message event */ - function onMessage(e) { if (e.data.type == "completeAuth" && e.origin === new URL(self.location.href).origin) { window.removeEventListener("message", onMessage); window.location.href = e.data.url; } } - exports.onMessage = onMessage; /** * The ready function should only be called on the page that represents @@ -4621,349 +3878,295 @@ exports.onMessage = onMessage; * authorization server, but this code will also be executed upon subsequent * navigation or page refresh. */ - function ready(_x2) { return _ready.apply(this, arguments); } - function _ready() { _ready = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2(env) { var options, - _a, - _b, - url, - Storage, - params, - key, - code, - authError, - authErrorDescription, - state, - fullSessionStorageSupport, - inFrame, - inPopUp, - href, - origin, - hasState, - authorized, - requestOptions, - tokenResponse, - client, - _args2 = arguments; - + _a, + _b, + url, + Storage, + params, + key, + code, + authError, + authErrorDescription, + state, + fullSessionStorageSupport, + inFrame, + inPopUp, + href, + origin, + hasState, + authorized, + requestOptions, + tokenResponse, + client, + _args2 = arguments; return _regenerator.default.wrap(function _callee2$(_context2) { - while (1) { - switch (_context2.prev = _context2.next) { - case 0: - options = _args2.length > 1 && _args2[1] !== undefined ? _args2[1] : {}; - url = env.getUrl(); - Storage = env.getStorage(); - params = url.searchParams; - key = params.get("state"); - code = params.get("code"); - authError = params.get("error"); - authErrorDescription = params.get("error_description"); - - if (key) { - _context2.next = 12; - break; - } - - _context2.next = 11; - return Storage.get(settings_1.SMART_KEY); - - case 11: - key = _context2.sent; - - case 12: - if (!(authError || authErrorDescription)) { - _context2.next = 14; - break; - } - - throw new Error([authError, authErrorDescription].filter(Boolean).join(": ")); - - case 14: - debug("key: %s, code: %s", key, code); // key might be coming from the page url so it might be empty or missing - - (0, lib_1.assert)(key, "No 'state' parameter found. Please (re)launch the app."); // Check if we have a previous state - - _context2.next = 18; - return Storage.get(key); - - case 18: - state = _context2.sent; - fullSessionStorageSupport = isBrowser() ? (0, lib_1.getPath)(env, "options.fullSessionStorageSupport") : true; // If we are in a popup window or an iframe and the authorization is - // complete, send the location back to our opener and exit. - - if (!(isBrowser() && state && !state.completeInTarget)) { - _context2.next = 29; - break; - } - - inFrame = isInFrame(); - inPopUp = isInPopUp(); // we are about to return to the opener/parent where completeAuth will - // be called again. In rare cases the opener or parent might also be - // a frame or popup. Then inFrame or inPopUp will be true but we still - // have to stop going up the chain. To guard against that weird form of - // recursion we pass one additional parameter to the url which we later - // remove. - - if (!((inFrame || inPopUp) && !url.searchParams.get("complete"))) { - _context2.next = 29; - break; - } - - url.searchParams.set("complete", "1"); - href = url.href, origin = url.origin; - - if (inFrame) { - parent.postMessage({ - type: "completeAuth", - url: href - }, origin); + while (1) switch (_context2.prev = _context2.next) { + case 0: + options = _args2.length > 1 && _args2[1] !== undefined ? _args2[1] : {}; + url = env.getUrl(); + Storage = env.getStorage(); + params = url.searchParams; + key = params.get("state"); + code = params.get("code"); + authError = params.get("error"); + authErrorDescription = params.get("error_description"); + if (key) { + _context2.next = 12; + break; + } + _context2.next = 11; + return Storage.get(settings_1.SMART_KEY); + case 11: + key = _context2.sent; + case 12: + if (!(authError || authErrorDescription)) { + _context2.next = 14; + break; + } + throw new Error([authError, authErrorDescription].filter(Boolean).join(": ")); + case 14: + debug("key: %s, code: %s", key, code); + // key might be coming from the page url so it might be empty or missing + (0, lib_1.assert)(key, "No 'state' parameter found. Please (re)launch the app."); + // Check if we have a previous state + _context2.next = 18; + return Storage.get(key); + case 18: + state = _context2.sent; + fullSessionStorageSupport = isBrowser() ? (0, lib_1.getPath)(env, "options.fullSessionStorageSupport") : true; // If we are in a popup window or an iframe and the authorization is + // complete, send the location back to our opener and exit. + if (!(isBrowser() && state && !state.completeInTarget)) { + _context2.next = 29; + break; + } + inFrame = isInFrame(); + inPopUp = isInPopUp(); // we are about to return to the opener/parent where completeAuth will + // be called again. In rare cases the opener or parent might also be + // a frame or popup. Then inFrame or inPopUp will be true but we still + // have to stop going up the chain. To guard against that weird form of + // recursion we pass one additional parameter to the url which we later + // remove. + if (!((inFrame || inPopUp) && !url.searchParams.get("complete"))) { + _context2.next = 29; + break; + } + url.searchParams.set("complete", "1"); + href = url.href, origin = url.origin; + if (inFrame) { + parent.postMessage({ + type: "completeAuth", + url: href + }, origin); + } + if (inPopUp) { + opener.postMessage({ + type: "completeAuth", + url: href + }, origin); + window.close(); + } + return _context2.abrupt("return", new Promise(function () {})); + case 29: + url.searchParams.delete("complete"); + // Do we have to remove the `code` and `state` params from the URL? + hasState = params.has("state"); + if (isBrowser() && (0, lib_1.getPath)(env, "options.replaceBrowserHistory") && (code || hasState)) { + // `code` is the flag that tell us to request an access token. + // We have to remove it, otherwise the page will authorize on + // every load! + if (code) { + params.delete("code"); + debug("Removed code parameter from the url."); } - - if (inPopUp) { - opener.postMessage({ - type: "completeAuth", - url: href - }, origin); - window.close(); + // If we have `fullSessionStorageSupport` it means we no longer + // need the `state` key. It will be stored to a well know + // location - sessionStorage[SMART_KEY]. However, no + // fullSessionStorageSupport means that this "well know location" + // might be shared between windows and tabs. In this case we + // MUST keep the `state` url parameter. + if (hasState && fullSessionStorageSupport) { + params.delete("state"); + debug("Removed state parameter from the url."); } - - return _context2.abrupt("return", new Promise(function () {})); - - case 29: - url.searchParams.delete("complete"); // Do we have to remove the `code` and `state` params from the URL? - - hasState = params.has("state"); - - if (isBrowser() && (0, lib_1.getPath)(env, "options.replaceBrowserHistory") && (code || hasState)) { - // `code` is the flag that tell us to request an access token. - // We have to remove it, otherwise the page will authorize on - // every load! - if (code) { - params.delete("code"); - debug("Removed code parameter from the url."); - } // If we have `fullSessionStorageSupport` it means we no longer - // need the `state` key. It will be stored to a well know - // location - sessionStorage[SMART_KEY]. However, no - // fullSessionStorageSupport means that this "well know location" - // might be shared between windows and tabs. In this case we - // MUST keep the `state` url parameter. - - - if (hasState && fullSessionStorageSupport) { - params.delete("state"); - debug("Removed state parameter from the url."); - } // If the browser does not support the replaceState method for the - // History Web API, the "code" parameter cannot be removed. As a - // consequence, the page will (re)authorize on every load. The - // workaround is to reload the page to new location without those - // parameters. If that is not acceptable replaceBrowserHistory - // should be set to false. - - - if (window.history.replaceState) { - window.history.replaceState({}, "", url.href); - } - } // If the state does not exist, it means the page has been loaded directly. - - - (0, lib_1.assert)(state, "No state found! Please (re)launch the app."); // Assume the client has already completed a token exchange when - // there is no code (but we have a state) or access token is found in state - - authorized = !code || ((_a = state.tokenResponse) === null || _a === void 0 ? void 0 : _a.access_token); // If we are authorized already, then this is just a reload. - // Otherwise, we have to complete the code flow - - if (!(!authorized && state.tokenUri)) { - _context2.next = 53; - break; + // If the browser does not support the replaceState method for the + // History Web API, the "code" parameter cannot be removed. As a + // consequence, the page will (re)authorize on every load. The + // workaround is to reload the page to new location without those + // parameters. If that is not acceptable replaceBrowserHistory + // should be set to false. + if (window.history.replaceState) { + window.history.replaceState({}, "", url.href); } - - (0, lib_1.assert)(code, "'code' url parameter is required"); - debug("Preparing to exchange the code for access token..."); - _context2.next = 39; - return buildTokenRequest(env, { - code: code, - state: state, - clientPublicKeySetUrl: options.clientPublicKeySetUrl, - privateKey: options.privateKey || state.clientPrivateJwk - }); - - case 39: - requestOptions = _context2.sent; - debug("Token request options: %O", requestOptions); // The EHR authorization server SHALL return a JSON structure that - // includes an access token or a message indicating that the - // authorization request has been denied. - - _context2.next = 43; - return (0, lib_1.request)(state.tokenUri, requestOptions); - - case 43: - tokenResponse = _context2.sent; - debug("Token response: %O", tokenResponse); - (0, lib_1.assert)(tokenResponse.access_token, "Failed to obtain access token."); // Now we need to determine when is this authorization going to expire - - state.expiresAt = (0, lib_1.getAccessTokenExpiration)(tokenResponse, env); // save the tokenResponse so that we don't have to re-authorize on - // every page reload - - state = _objectSpread(_objectSpread({}, state), {}, { - tokenResponse: tokenResponse - }); - _context2.next = 50; - return Storage.set(key, state); - - case 50: - debug("Authorization successful!"); - _context2.next = 54; + } + // If the state does not exist, it means the page has been loaded directly. + (0, lib_1.assert)(state, "No state found! Please (re)launch the app."); + // Assume the client has already completed a token exchange when + // there is no code (but we have a state) or access token is found in state + authorized = !code || ((_a = state.tokenResponse) === null || _a === void 0 ? void 0 : _a.access_token); // If we are authorized already, then this is just a reload. + // Otherwise, we have to complete the code flow + if (!(!authorized && state.tokenUri)) { + _context2.next = 53; break; - - case 53: - debug(((_b = state.tokenResponse) === null || _b === void 0 ? void 0 : _b.access_token) ? "Already authorized" : "No authorization needed"); - - case 54: - if (!fullSessionStorageSupport) { - _context2.next = 57; - break; - } - + } + (0, lib_1.assert)(code, "'code' url parameter is required"); + debug("Preparing to exchange the code for access token..."); + _context2.next = 39; + return buildTokenRequest(env, { + code: code, + state: state, + clientPublicKeySetUrl: options.clientPublicKeySetUrl, + privateKey: options.privateKey || state.clientPrivateJwk + }); + case 39: + requestOptions = _context2.sent; + debug("Token request options: %O", requestOptions); + // The EHR authorization server SHALL return a JSON structure that + // includes an access token or a message indicating that the + // authorization request has been denied. + _context2.next = 43; + return (0, lib_1.request)(state.tokenUri, requestOptions); + case 43: + tokenResponse = _context2.sent; + debug("Token response: %O", tokenResponse); + (0, lib_1.assert)(tokenResponse.access_token, "Failed to obtain access token."); + // Now we need to determine when is this authorization going to expire + state.expiresAt = (0, lib_1.getAccessTokenExpiration)(tokenResponse, env); + // save the tokenResponse so that we don't have to re-authorize on + // every page reload + state = _objectSpread(_objectSpread({}, state), {}, { + tokenResponse: tokenResponse + }); + _context2.next = 50; + return Storage.set(key, state); + case 50: + debug("Authorization successful!"); + _context2.next = 54; + break; + case 53: + debug(((_b = state.tokenResponse) === null || _b === void 0 ? void 0 : _b.access_token) ? "Already authorized" : "No authorization needed"); + case 54: + if (!fullSessionStorageSupport) { _context2.next = 57; - return Storage.set(settings_1.SMART_KEY, key); - - case 57: - client = new Client_1.default(env, state); - debug("Created client instance: %O", client); - return _context2.abrupt("return", client); - - case 60: - case "end": - return _context2.stop(); - } + break; + } + _context2.next = 57; + return Storage.set(settings_1.SMART_KEY, key); + case 57: + client = new Client_1.default(env, state); + debug("Created client instance: %O", client); + return _context2.abrupt("return", client); + case 60: + case "end": + return _context2.stop(); } }, _callee2); })); return _ready.apply(this, arguments); } - exports.ready = ready; /** * Builds the token request options. Does not make the request, just * creates it's configuration and returns it in a Promise. */ - function buildTokenRequest(_x3, _x4) { return _buildTokenRequest.apply(this, arguments); } - function _buildTokenRequest() { _buildTokenRequest = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee3(env, _ref) { var code, state, clientPublicKeySetUrl, privateKey, redirectUri, clientSecret, tokenUri, clientId, codeVerifier, requestOptions, pk, jwtHeaders, jwtClaims, clientAssertion; return _regenerator.default.wrap(function _callee3$(_context3) { - while (1) { - switch (_context3.prev = _context3.next) { - case 0: - code = _ref.code, state = _ref.state, clientPublicKeySetUrl = _ref.clientPublicKeySetUrl, privateKey = _ref.privateKey; - redirectUri = state.redirectUri, clientSecret = state.clientSecret, tokenUri = state.tokenUri, clientId = state.clientId, codeVerifier = state.codeVerifier; - (0, lib_1.assert)(redirectUri, "Missing state.redirectUri"); - (0, lib_1.assert)(tokenUri, "Missing state.tokenUri"); - (0, lib_1.assert)(clientId, "Missing state.clientId"); - requestOptions = { - method: "POST", - headers: { - "content-type": "application/x-www-form-urlencoded" - }, - body: "code=".concat(code, "&grant_type=authorization_code&redirect_uri=").concat(encodeURIComponent(redirectUri)) - }; // For public apps, authentication is not possible (and thus not required), - // since a client with no secret cannot prove its identity when it issues a - // call. (The end-to-end system can still be secure because the client comes - // from a known, https protected endpoint specified and enforced by the - // redirect uri.) For confidential apps, an Authorization header using HTTP - // Basic authentication is required, where the username is the app’s - // client_id and the password is the app’s client_secret (see example). - - if (!clientSecret) { - _context3.next = 11; - break; - } - - requestOptions.headers.authorization = "Basic " + env.btoa(clientId + ":" + clientSecret); - debug("Using state.clientSecret to construct the authorization header: %s", requestOptions.headers.authorization); - _context3.next = 32; + while (1) switch (_context3.prev = _context3.next) { + case 0: + code = _ref.code, state = _ref.state, clientPublicKeySetUrl = _ref.clientPublicKeySetUrl, privateKey = _ref.privateKey; + redirectUri = state.redirectUri, clientSecret = state.clientSecret, tokenUri = state.tokenUri, clientId = state.clientId, codeVerifier = state.codeVerifier; + (0, lib_1.assert)(redirectUri, "Missing state.redirectUri"); + (0, lib_1.assert)(tokenUri, "Missing state.tokenUri"); + (0, lib_1.assert)(clientId, "Missing state.clientId"); + requestOptions = { + method: "POST", + headers: { + "content-type": "application/x-www-form-urlencoded" + }, + body: "code=".concat(code, "&grant_type=authorization_code&redirect_uri=").concat(encodeURIComponent(redirectUri)) + }; // For public apps, authentication is not possible (and thus not required), + // since a client with no secret cannot prove its identity when it issues a + // call. (The end-to-end system can still be secure because the client comes + // from a known, https protected endpoint specified and enforced by the + // redirect uri.) For confidential apps, an Authorization header using HTTP + // Basic authentication is required, where the username is the app’s + // client_id and the password is the app’s client_secret (see example). + if (!clientSecret) { + _context3.next = 11; break; - - case 11: - if (!privateKey) { - _context3.next = 30; - break; - } - - if (!("key" in privateKey)) { - _context3.next = 16; - break; - } - - _context3.t0 = privateKey.key; - _context3.next = 19; + } + requestOptions.headers.authorization = "Basic " + env.btoa(clientId + ":" + clientSecret); + debug("Using state.clientSecret to construct the authorization header: %s", requestOptions.headers.authorization); + _context3.next = 32; + break; + case 11: + if (!privateKey) { + _context3.next = 30; break; - - case 16: - _context3.next = 18; - return env.security.importJWK(privateKey); - - case 18: - _context3.t0 = _context3.sent; - - case 19: - pk = _context3.t0; - jwtHeaders = { - typ: "JWT", - kid: privateKey.kid, - jku: clientPublicKeySetUrl || state.clientPublicKeySetUrl - }; - jwtClaims = { - iss: clientId, - sub: clientId, - aud: tokenUri, - jti: env.base64urlencode(env.security.randomBytes(32)), - exp: (0, lib_1.getTimeInFuture)(120) // two minutes in the future - - }; - _context3.next = 24; - return env.security.signCompactJws(privateKey.alg, pk, jwtHeaders, jwtClaims); - - case 24: - clientAssertion = _context3.sent; - requestOptions.body += "&client_assertion_type=".concat(encodeURIComponent("urn:ietf:params:oauth:client-assertion-type:jwt-bearer")); - requestOptions.body += "&client_assertion=".concat(encodeURIComponent(clientAssertion)); - debug("Using state.clientPrivateJwk to add a client_assertion to the POST body"); - _context3.next = 32; + } + if (!("key" in privateKey)) { + _context3.next = 16; break; - - case 30: - debug("Public client detected; adding state.clientId to the POST body"); - requestOptions.body += "&client_id=".concat(encodeURIComponent(clientId)); - - case 32: - if (codeVerifier) { - debug("Found state.codeVerifier, adding to the POST body"); // Note that the codeVerifier is ALREADY encoded properly - - requestOptions.body += "&code_verifier=" + codeVerifier; - } - - return _context3.abrupt("return", requestOptions); - - case 34: - case "end": - return _context3.stop(); - } + } + _context3.t0 = privateKey.key; + _context3.next = 19; + break; + case 16: + _context3.next = 18; + return env.security.importJWK(privateKey); + case 18: + _context3.t0 = _context3.sent; + case 19: + pk = _context3.t0; + jwtHeaders = { + typ: "JWT", + kid: privateKey.kid, + jku: clientPublicKeySetUrl || state.clientPublicKeySetUrl + }; + jwtClaims = { + iss: clientId, + sub: clientId, + aud: tokenUri, + jti: env.base64urlencode(env.security.randomBytes(32)), + exp: (0, lib_1.getTimeInFuture)(120) // two minutes in the future + }; + _context3.next = 24; + return env.security.signCompactJws(privateKey.alg, pk, jwtHeaders, jwtClaims); + case 24: + clientAssertion = _context3.sent; + requestOptions.body += "&client_assertion_type=".concat(encodeURIComponent("urn:ietf:params:oauth:client-assertion-type:jwt-bearer")); + requestOptions.body += "&client_assertion=".concat(encodeURIComponent(clientAssertion)); + debug("Using state.clientPrivateJwk to add a client_assertion to the POST body"); + _context3.next = 32; + break; + case 30: + debug("Public client detected; adding state.clientId to the POST body"); + requestOptions.body += "&client_id=".concat(encodeURIComponent(clientId)); + case 32: + if (codeVerifier) { + debug("Found state.codeVerifier, adding to the POST body"); + // Note that the codeVerifier is ALREADY encoded properly + requestOptions.body += "&code_verifier=" + codeVerifier; + } + return _context3.abrupt("return", requestOptions); + case 34: + case "end": + return _context3.stop(); } }, _callee3); })); return _buildTokenRequest.apply(this, arguments); } - exports.buildTokenRequest = buildTokenRequest; /** * This function can be used when you want to handle everything in one page @@ -4995,84 +4198,67 @@ exports.buildTokenRequest = buildTokenRequest; * @param env The adapter * @param authorizeOptions The authorize options */ - function init(_x5, _x6, _x7) { return _init.apply(this, arguments); } - function _init() { _init = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee4(env, authorizeOptions, readyOptions) { var url, code, state, storage, key, cached; return _regenerator.default.wrap(function _callee4$(_context4) { - while (1) { - switch (_context4.prev = _context4.next) { - case 0: - url = env.getUrl(); - code = url.searchParams.get("code"); - state = url.searchParams.get("state"); // if `code` and `state` params are present we need to complete the auth flow - - if (!(code && state)) { - _context4.next = 5; - break; - } - - return _context4.abrupt("return", ready(env, readyOptions)); - - case 5: - // Check for existing client state. If state is found, it means a client - // instance have already been created in this session and we should try to - // "revive" it. - storage = env.getStorage(); - _context4.t0 = state; - - if (_context4.t0) { - _context4.next = 11; - break; - } - - _context4.next = 10; - return storage.get(settings_1.SMART_KEY); - - case 10: - _context4.t0 = _context4.sent; - - case 11: - key = _context4.t0; - _context4.next = 14; - return storage.get(key); - - case 14: - cached = _context4.sent; - - if (!cached) { - _context4.next = 17; - break; - } - - return _context4.abrupt("return", new Client_1.default(env, cached)); - - case 17: - return _context4.abrupt("return", authorize(env, authorizeOptions).then(function () { - // `init` promises a Client but that cannot happen in this case. The - // browser will be redirected (unload the page and be redirected back - // to it later and the same init function will be called again). On - // success, authorize will resolve with the redirect url but we don't - // want to return that from this promise chain because it is not a - // Client instance. At the same time, if authorize fails, we do want to - // pass the error to those waiting for a client instance. - return new Promise(function () {}); - })); - - case 18: - case "end": - return _context4.stop(); - } + while (1) switch (_context4.prev = _context4.next) { + case 0: + url = env.getUrl(); + code = url.searchParams.get("code"); + state = url.searchParams.get("state"); // if `code` and `state` params are present we need to complete the auth flow + if (!(code && state)) { + _context4.next = 5; + break; + } + return _context4.abrupt("return", ready(env, readyOptions)); + case 5: + // Check for existing client state. If state is found, it means a client + // instance have already been created in this session and we should try to + // "revive" it. + storage = env.getStorage(); + _context4.t0 = state; + if (_context4.t0) { + _context4.next = 11; + break; + } + _context4.next = 10; + return storage.get(settings_1.SMART_KEY); + case 10: + _context4.t0 = _context4.sent; + case 11: + key = _context4.t0; + _context4.next = 14; + return storage.get(key); + case 14: + cached = _context4.sent; + if (!cached) { + _context4.next = 17; + break; + } + return _context4.abrupt("return", new Client_1.default(env, cached)); + case 17: + return _context4.abrupt("return", authorize(env, authorizeOptions).then(function () { + // `init` promises a Client but that cannot happen in this case. The + // browser will be redirected (unload the page and be redirected back + // to it later and the same init function will be called again). On + // success, authorize will resolve with the redirect url but we don't + // want to return that from this promise chain because it is not a + // Client instance. At the same time, if authorize fails, we do want to + // pass the error to those waiting for a client instance. + return new Promise(function () {}); + })); + case 18: + case "end": + return _context4.stop(); } }, _callee4); })); return _init.apply(this, arguments); } - exports.init = init; /***/ }), @@ -5087,27 +4273,21 @@ exports.init = init; var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/interopRequireDefault.js"); - var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/@babel/runtime/regenerator/index.js")); - +__webpack_require__(/*! core-js/modules/es.object.keys.js */ "./node_modules/core-js/modules/es.object.keys.js"); var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "./node_modules/@babel/runtime/helpers/asyncToGenerator.js")); - var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/@babel/runtime/helpers/classCallCheck.js")); - var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/@babel/runtime/helpers/createClass.js")); - Object.defineProperty(exports, "__esModule", ({ value: true })); - var Storage = /*#__PURE__*/function () { function Storage() { (0, _classCallCheck2.default)(this, Storage); } - (0, _createClass2.default)(Storage, [{ key: "get", - value: + value: ( /** * Gets the value at `key`. Returns a promise that will be resolved * with that value (or undefined for missing keys). @@ -5116,63 +4296,50 @@ var Storage = /*#__PURE__*/function () { var _get = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(key) { var value; return _regenerator.default.wrap(function _callee$(_context) { - while (1) { - switch (_context.prev = _context.next) { - case 0: - value = sessionStorage[key]; - - if (!value) { - _context.next = 3; - break; - } - - return _context.abrupt("return", JSON.parse(value)); - - case 3: - return _context.abrupt("return", null); - - case 4: - case "end": - return _context.stop(); - } + while (1) switch (_context.prev = _context.next) { + case 0: + value = sessionStorage[key]; + if (!value) { + _context.next = 3; + break; + } + return _context.abrupt("return", JSON.parse(value)); + case 3: + return _context.abrupt("return", null); + case 4: + case "end": + return _context.stop(); } }, _callee); })); - function get(_x) { return _get.apply(this, arguments); } - return get; }() /** * Sets the `value` on `key` and returns a promise that will be resolved * with the value that was set. */ - + ) }, { key: "set", - value: function () { + value: (function () { var _set = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2(key, value) { return _regenerator.default.wrap(function _callee2$(_context2) { - while (1) { - switch (_context2.prev = _context2.next) { - case 0: - sessionStorage[key] = JSON.stringify(value); - return _context2.abrupt("return", value); - - case 2: - case "end": - return _context2.stop(); - } + while (1) switch (_context2.prev = _context2.next) { + case 0: + sessionStorage[key] = JSON.stringify(value); + return _context2.abrupt("return", value); + case 2: + case "end": + return _context2.stop(); } }, _callee2); })); - function set(_x2, _x3) { return _set.apply(this, arguments); } - return set; }() /** @@ -5180,44 +4347,36 @@ var Storage = /*#__PURE__*/function () { * with true if the key was deleted or with false if it was not (eg. if * did not exist). */ - + ) }, { key: "unset", - value: function () { + value: (function () { var _unset = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee3(key) { return _regenerator.default.wrap(function _callee3$(_context3) { - while (1) { - switch (_context3.prev = _context3.next) { - case 0: - if (!(key in sessionStorage)) { - _context3.next = 3; - break; - } - - delete sessionStorage[key]; - return _context3.abrupt("return", true); - - case 3: - return _context3.abrupt("return", false); - - case 4: - case "end": - return _context3.stop(); - } + while (1) switch (_context3.prev = _context3.next) { + case 0: + if (!(key in sessionStorage)) { + _context3.next = 3; + break; + } + delete sessionStorage[key]; + return _context3.abrupt("return", true); + case 3: + return _context3.abrupt("return", false); + case 4: + case "end": + return _context3.stop(); } }, _callee3); })); - function unset(_x4) { return _unset.apply(this, arguments); } - return unset; - }() + }()) }]); return Storage; }(); - exports["default"] = Storage; /***/ }), @@ -5233,8 +4392,8 @@ exports["default"] = Storage; Object.defineProperty(exports, "__esModule", ({ value: true -})); // This map contains reusable debug messages (only those used in multiple places) - +})); +// This map contains reusable debug messages (only those used in multiple places) exports["default"] = { expired: "Session expired! Please re-launch the app", noScopeForId: "Trying to get the ID of the selected %s. Please add 'launch' or 'launch/%s' to the requested scopes and try again.", @@ -17548,14 +16707,9 @@ function plural(ms, msAbs, n, name) { function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; - - for (var i = 0, arr2 = new Array(len); i < len; i++) { - arr2[i] = arr[i]; - } - + for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; } - module.exports = _arrayLikeToArray, module.exports.__esModule = true, module.exports["default"] = module.exports; /***/ }), @@ -17567,11 +16721,9 @@ module.exports = _arrayLikeToArray, module.exports.__esModule = true, module.exp /***/ (function(module, __unused_webpack_exports, __webpack_require__) { var arrayLikeToArray = __webpack_require__(/*! ./arrayLikeToArray.js */ "./node_modules/@babel/runtime/helpers/arrayLikeToArray.js"); - function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return arrayLikeToArray(arr); } - module.exports = _arrayWithoutHoles, module.exports.__esModule = true, module.exports["default"] = module.exports; /***/ }), @@ -17586,10 +16738,8 @@ function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } - return self; } - module.exports = _assertThisInitialized, module.exports.__esModule = true, module.exports["default"] = module.exports; /***/ }), @@ -17608,34 +16758,28 @@ function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { reject(error); return; } - if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } } - function _asyncToGenerator(fn) { return function () { var self = this, - args = arguments; + args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); - function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } - function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } - _next(undefined); }); }; } - module.exports = _asyncToGenerator, module.exports.__esModule = true, module.exports["default"] = module.exports; /***/ }), @@ -17651,7 +16795,6 @@ function _classCallCheck(instance, Constructor) { throw new TypeError("Cannot call a class as a function"); } } - module.exports = _classCallCheck, module.exports.__esModule = true, module.exports["default"] = module.exports; /***/ }), @@ -17663,26 +16806,14 @@ module.exports = _classCallCheck, module.exports.__esModule = true, module.expor /***/ (function(module, __unused_webpack_exports, __webpack_require__) { var setPrototypeOf = __webpack_require__(/*! ./setPrototypeOf.js */ "./node_modules/@babel/runtime/helpers/setPrototypeOf.js"); - var isNativeReflectConstruct = __webpack_require__(/*! ./isNativeReflectConstruct.js */ "./node_modules/@babel/runtime/helpers/isNativeReflectConstruct.js"); - -function _construct(Parent, args, Class) { - if (isNativeReflectConstruct()) { - module.exports = _construct = Reflect.construct.bind(), module.exports.__esModule = true, module.exports["default"] = module.exports; - } else { - module.exports = _construct = function _construct(Parent, args, Class) { - var a = [null]; - a.push.apply(a, args); - var Constructor = Function.bind.apply(Parent, a); - var instance = new Constructor(); - if (Class) setPrototypeOf(instance, Class.prototype); - return instance; - }, module.exports.__esModule = true, module.exports["default"] = module.exports; - } - - return _construct.apply(null, arguments); +function _construct(t, e, r) { + if (isNativeReflectConstruct()) return Reflect.construct.apply(null, arguments); + var o = [null]; + o.push.apply(o, e); + var p = new (t.bind.apply(t, o))(); + return r && setPrototypeOf(p, r.prototype), p; } - module.exports = _construct, module.exports.__esModule = true, module.exports["default"] = module.exports; /***/ }), @@ -17691,18 +16822,18 @@ module.exports = _construct, module.exports.__esModule = true, module.exports["d /*!************************************************************!*\ !*** ./node_modules/@babel/runtime/helpers/createClass.js ***! \************************************************************/ -/***/ (function(module) { +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { +var toPropertyKey = __webpack_require__(/*! ./toPropertyKey.js */ "./node_modules/@babel/runtime/helpers/toPropertyKey.js"); function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; - Object.defineProperty(target, descriptor.key, descriptor); + Object.defineProperty(target, toPropertyKey(descriptor.key), descriptor); } } - function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); @@ -17711,7 +16842,6 @@ function _createClass(Constructor, protoProps, staticProps) { }); return Constructor; } - module.exports = _createClass, module.exports.__esModule = true, module.exports["default"] = module.exports; /***/ }), @@ -17720,9 +16850,11 @@ module.exports = _createClass, module.exports.__esModule = true, module.exports[ /*!***************************************************************!*\ !*** ./node_modules/@babel/runtime/helpers/defineProperty.js ***! \***************************************************************/ -/***/ (function(module) { +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { +var toPropertyKey = __webpack_require__(/*! ./toPropertyKey.js */ "./node_modules/@babel/runtime/helpers/toPropertyKey.js"); function _defineProperty(obj, key, value) { + key = toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, @@ -17733,10 +16865,8 @@ function _defineProperty(obj, key, value) { } else { obj[key] = value; } - return obj; } - module.exports = _defineProperty, module.exports.__esModule = true, module.exports["default"] = module.exports; /***/ }), @@ -17753,7 +16883,6 @@ function _getPrototypeOf(o) { }, module.exports.__esModule = true, module.exports["default"] = module.exports; return _getPrototypeOf(o); } - module.exports = _getPrototypeOf, module.exports.__esModule = true, module.exports["default"] = module.exports; /***/ }), @@ -17765,12 +16894,10 @@ module.exports = _getPrototypeOf, module.exports.__esModule = true, module.expor /***/ (function(module, __unused_webpack_exports, __webpack_require__) { var setPrototypeOf = __webpack_require__(/*! ./setPrototypeOf.js */ "./node_modules/@babel/runtime/helpers/setPrototypeOf.js"); - function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } - subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, @@ -17783,7 +16910,6 @@ function _inherits(subClass, superClass) { }); if (superClass) setPrototypeOf(subClass, superClass); } - module.exports = _inherits, module.exports.__esModule = true, module.exports["default"] = module.exports; /***/ }), @@ -17799,7 +16925,6 @@ function _interopRequireDefault(obj) { "default": obj }; } - module.exports = _interopRequireDefault, module.exports.__esModule = true, module.exports["default"] = module.exports; /***/ }), @@ -17811,9 +16936,12 @@ module.exports = _interopRequireDefault, module.exports.__esModule = true, modul /***/ (function(module) { function _isNativeFunction(fn) { - return Function.toString.call(fn).indexOf("[native code]") !== -1; + try { + return Function.toString.call(fn).indexOf("[native code]") !== -1; + } catch (e) { + return typeof fn === "function"; + } } - module.exports = _isNativeFunction, module.exports.__esModule = true, module.exports["default"] = module.exports; /***/ }), @@ -17825,18 +16953,13 @@ module.exports = _isNativeFunction, module.exports.__esModule = true, module.exp /***/ (function(module) { function _isNativeReflectConstruct() { - if (typeof Reflect === "undefined" || !Reflect.construct) return false; - if (Reflect.construct.sham) return false; - if (typeof Proxy === "function") return true; - try { - Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); - return true; - } catch (e) { - return false; - } + var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); + } catch (t) {} + return (module.exports = _isNativeReflectConstruct = function _isNativeReflectConstruct() { + return !!t; + }, module.exports.__esModule = true, module.exports["default"] = module.exports)(); } - module.exports = _isNativeReflectConstruct, module.exports.__esModule = true, module.exports["default"] = module.exports; /***/ }), @@ -17850,7 +16973,6 @@ module.exports = _isNativeReflectConstruct, module.exports.__esModule = true, mo function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); } - module.exports = _iterableToArray, module.exports.__esModule = true, module.exports["default"] = module.exports; /***/ }), @@ -17864,7 +16986,6 @@ module.exports = _iterableToArray, module.exports.__esModule = true, module.expo function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } - module.exports = _nonIterableSpread, module.exports.__esModule = true, module.exports["default"] = module.exports; /***/ }), @@ -17876,15 +16997,12 @@ module.exports = _nonIterableSpread, module.exports.__esModule = true, module.ex /***/ (function(module, __unused_webpack_exports, __webpack_require__) { var objectWithoutPropertiesLoose = __webpack_require__(/*! ./objectWithoutPropertiesLoose.js */ "./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js"); - function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = objectWithoutPropertiesLoose(source, excluded); var key, i; - if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); - for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; @@ -17892,10 +17010,8 @@ function _objectWithoutProperties(source, excluded) { target[key] = source[key]; } } - return target; } - module.exports = _objectWithoutProperties, module.exports.__esModule = true, module.exports["default"] = module.exports; /***/ }), @@ -17911,16 +17027,13 @@ function _objectWithoutPropertiesLoose(source, excluded) { var target = {}; var sourceKeys = Object.keys(source); var key, i; - for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } - return target; } - module.exports = _objectWithoutPropertiesLoose, module.exports.__esModule = true, module.exports["default"] = module.exports; /***/ }), @@ -17932,19 +17045,15 @@ module.exports = _objectWithoutPropertiesLoose, module.exports.__esModule = true /***/ (function(module, __unused_webpack_exports, __webpack_require__) { var _typeof = (__webpack_require__(/*! ./typeof.js */ "./node_modules/@babel/runtime/helpers/typeof.js")["default"]); - var assertThisInitialized = __webpack_require__(/*! ./assertThisInitialized.js */ "./node_modules/@babel/runtime/helpers/assertThisInitialized.js"); - function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } else if (call !== void 0) { throw new TypeError("Derived constructors may only return object or undefined"); } - return assertThisInitialized(self); } - module.exports = _possibleConstructorReturn, module.exports.__esModule = true, module.exports["default"] = module.exports; /***/ }), @@ -17956,358 +17065,308 @@ module.exports = _possibleConstructorReturn, module.exports.__esModule = true, m /***/ (function(module, __unused_webpack_exports, __webpack_require__) { var _typeof = (__webpack_require__(/*! ./typeof.js */ "./node_modules/@babel/runtime/helpers/typeof.js")["default"]); - function _regeneratorRuntime() { - "use strict"; - /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ - + "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ module.exports = _regeneratorRuntime = function _regeneratorRuntime() { - return exports; + return e; }, module.exports.__esModule = true, module.exports["default"] = module.exports; - var exports = {}, - Op = Object.prototype, - hasOwn = Op.hasOwnProperty, - $Symbol = "function" == typeof Symbol ? Symbol : {}, - iteratorSymbol = $Symbol.iterator || "@@iterator", - asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", - toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; - - function define(obj, key, value) { - return Object.defineProperty(obj, key, { - value: value, + var t, + e = {}, + r = Object.prototype, + n = r.hasOwnProperty, + o = Object.defineProperty || function (t, e, r) { + t[e] = r.value; + }, + i = "function" == typeof Symbol ? Symbol : {}, + a = i.iterator || "@@iterator", + c = i.asyncIterator || "@@asyncIterator", + u = i.toStringTag || "@@toStringTag"; + function define(t, e, r) { + return Object.defineProperty(t, e, { + value: r, enumerable: !0, configurable: !0, writable: !0 - }), obj[key]; + }), t[e]; } - try { define({}, ""); - } catch (err) { - define = function define(obj, key, value) { - return obj[key] = value; + } catch (t) { + define = function define(t, e, r) { + return t[e] = r; }; } - - function wrap(innerFn, outerFn, self, tryLocsList) { - var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, - generator = Object.create(protoGenerator.prototype), - context = new Context(tryLocsList || []); - return generator._invoke = function (innerFn, self, context) { - var state = "suspendedStart"; - return function (method, arg) { - if ("executing" === state) throw new Error("Generator is already running"); - - if ("completed" === state) { - if ("throw" === method) throw arg; - return doneResult(); - } - - for (context.method = method, context.arg = arg;;) { - var delegate = context.delegate; - - if (delegate) { - var delegateResult = maybeInvokeDelegate(delegate, context); - - if (delegateResult) { - if (delegateResult === ContinueSentinel) continue; - return delegateResult; - } - } - - if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { - if ("suspendedStart" === state) throw state = "completed", context.arg; - context.dispatchException(context.arg); - } else "return" === context.method && context.abrupt("return", context.arg); - state = "executing"; - var record = tryCatch(innerFn, self, context); - - if ("normal" === record.type) { - if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; - return { - value: record.arg, - done: context.done - }; - } - - "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); - } - }; - }(innerFn, self, context), generator; + function wrap(t, e, r, n) { + var i = e && e.prototype instanceof Generator ? e : Generator, + a = Object.create(i.prototype), + c = new Context(n || []); + return o(a, "_invoke", { + value: makeInvokeMethod(t, r, c) + }), a; } - - function tryCatch(fn, obj, arg) { + function tryCatch(t, e, r) { try { return { type: "normal", - arg: fn.call(obj, arg) + arg: t.call(e, r) }; - } catch (err) { + } catch (t) { return { type: "throw", - arg: err + arg: t }; } } - - exports.wrap = wrap; - var ContinueSentinel = {}; - + e.wrap = wrap; + var h = "suspendedStart", + l = "suspendedYield", + f = "executing", + s = "completed", + y = {}; function Generator() {} - function GeneratorFunction() {} - function GeneratorFunctionPrototype() {} - - var IteratorPrototype = {}; - define(IteratorPrototype, iteratorSymbol, function () { + var p = {}; + define(p, a, function () { return this; }); - var getProto = Object.getPrototypeOf, - NativeIteratorPrototype = getProto && getProto(getProto(values([]))); - NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); - var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); - - function defineIteratorMethods(prototype) { - ["next", "throw", "return"].forEach(function (method) { - define(prototype, method, function (arg) { - return this._invoke(method, arg); + var d = Object.getPrototypeOf, + v = d && d(d(values([]))); + v && v !== r && n.call(v, a) && (p = v); + var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p); + function defineIteratorMethods(t) { + ["next", "throw", "return"].forEach(function (e) { + define(t, e, function (t) { + return this._invoke(e, t); }); }); } - - function AsyncIterator(generator, PromiseImpl) { - function invoke(method, arg, resolve, reject) { - var record = tryCatch(generator[method], generator, arg); - - if ("throw" !== record.type) { - var result = record.arg, - value = result.value; - return value && "object" == _typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { - invoke("next", value, resolve, reject); - }, function (err) { - invoke("throw", err, resolve, reject); - }) : PromiseImpl.resolve(value).then(function (unwrapped) { - result.value = unwrapped, resolve(result); - }, function (error) { - return invoke("throw", error, resolve, reject); + function AsyncIterator(t, e) { + function invoke(r, o, i, a) { + var c = tryCatch(t[r], t, o); + if ("throw" !== c.type) { + var u = c.arg, + h = u.value; + return h && "object" == _typeof(h) && n.call(h, "__await") ? e.resolve(h.__await).then(function (t) { + invoke("next", t, i, a); + }, function (t) { + invoke("throw", t, i, a); + }) : e.resolve(h).then(function (t) { + u.value = t, i(u); + }, function (t) { + return invoke("throw", t, i, a); }); } - - reject(record.arg); + a(c.arg); } - - var previousPromise; - - this._invoke = function (method, arg) { - function callInvokeWithMethodAndArg() { - return new PromiseImpl(function (resolve, reject) { - invoke(method, arg, resolve, reject); - }); + var r; + o(this, "_invoke", { + value: function value(t, n) { + function callInvokeWithMethodAndArg() { + return new e(function (e, r) { + invoke(t, n, e, r); + }); + } + return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } - - return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); - }; + }); } - - function maybeInvokeDelegate(delegate, context) { - var method = delegate.iterator[context.method]; - - if (undefined === method) { - if (context.delegate = null, "throw" === context.method) { - if (delegate.iterator["return"] && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; - context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); + function makeInvokeMethod(e, r, n) { + var o = h; + return function (i, a) { + if (o === f) throw new Error("Generator is already running"); + if (o === s) { + if ("throw" === i) throw a; + return { + value: t, + done: !0 + }; } - - return ContinueSentinel; - } - - var record = tryCatch(method, delegate.iterator, context.arg); - if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; - var info = record.arg; - return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); + for (n.method = i, n.arg = a;;) { + var c = n.delegate; + if (c) { + var u = maybeInvokeDelegate(c, n); + if (u) { + if (u === y) continue; + return u; + } + } + if ("next" === n.method) n.sent = n._sent = n.arg;else if ("throw" === n.method) { + if (o === h) throw o = s, n.arg; + n.dispatchException(n.arg); + } else "return" === n.method && n.abrupt("return", n.arg); + o = f; + var p = tryCatch(e, r, n); + if ("normal" === p.type) { + if (o = n.done ? s : l, p.arg === y) continue; + return { + value: p.arg, + done: n.done + }; + } + "throw" === p.type && (o = s, n.method = "throw", n.arg = p.arg); + } + }; } - - function pushTryEntry(locs) { - var entry = { - tryLoc: locs[0] + function maybeInvokeDelegate(e, r) { + var n = r.method, + o = e.iterator[n]; + if (o === t) return r.delegate = null, "throw" === n && e.iterator["return"] && (r.method = "return", r.arg = t, maybeInvokeDelegate(e, r), "throw" === r.method) || "return" !== n && (r.method = "throw", r.arg = new TypeError("The iterator does not provide a '" + n + "' method")), y; + var i = tryCatch(o, e.iterator, r.arg); + if ("throw" === i.type) return r.method = "throw", r.arg = i.arg, r.delegate = null, y; + var a = i.arg; + return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, "return" !== r.method && (r.method = "next", r.arg = t), r.delegate = null, y) : a : (r.method = "throw", r.arg = new TypeError("iterator result is not an object"), r.delegate = null, y); + } + function pushTryEntry(t) { + var e = { + tryLoc: t[0] }; - 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); + 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e); } - - function resetTryEntry(entry) { - var record = entry.completion || {}; - record.type = "normal", delete record.arg, entry.completion = record; + function resetTryEntry(t) { + var e = t.completion || {}; + e.type = "normal", delete e.arg, t.completion = e; } - - function Context(tryLocsList) { + function Context(t) { this.tryEntries = [{ tryLoc: "root" - }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); + }], t.forEach(pushTryEntry, this), this.reset(!0); } - - function values(iterable) { - if (iterable) { - var iteratorMethod = iterable[iteratorSymbol]; - if (iteratorMethod) return iteratorMethod.call(iterable); - if ("function" == typeof iterable.next) return iterable; - - if (!isNaN(iterable.length)) { - var i = -1, - next = function next() { - for (; ++i < iterable.length;) { - if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; - } - - return next.value = undefined, next.done = !0, next; - }; - - return next.next = next; + function values(e) { + if (e || "" === e) { + var r = e[a]; + if (r) return r.call(e); + if ("function" == typeof e.next) return e; + if (!isNaN(e.length)) { + var o = -1, + i = function next() { + for (; ++o < e.length;) if (n.call(e, o)) return next.value = e[o], next.done = !1, next; + return next.value = t, next.done = !0, next; + }; + return i.next = i; } } - - return { - next: doneResult - }; - } - - function doneResult() { - return { - value: undefined, - done: !0 - }; + throw new TypeError(_typeof(e) + " is not iterable"); } - - return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { - var ctor = "function" == typeof genFun && genFun.constructor; - return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); - }, exports.mark = function (genFun) { - return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; - }, exports.awrap = function (arg) { + return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(g, "constructor", { + value: GeneratorFunctionPrototype, + configurable: !0 + }), o(GeneratorFunctionPrototype, "constructor", { + value: GeneratorFunction, + configurable: !0 + }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, u, "GeneratorFunction"), e.isGeneratorFunction = function (t) { + var e = "function" == typeof t && t.constructor; + return !!e && (e === GeneratorFunction || "GeneratorFunction" === (e.displayName || e.name)); + }, e.mark = function (t) { + return Object.setPrototypeOf ? Object.setPrototypeOf(t, GeneratorFunctionPrototype) : (t.__proto__ = GeneratorFunctionPrototype, define(t, u, "GeneratorFunction")), t.prototype = Object.create(g), t; + }, e.awrap = function (t) { return { - __await: arg + __await: t }; - }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { + }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, c, function () { return this; - }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { - void 0 === PromiseImpl && (PromiseImpl = Promise); - var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); - return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { - return result.done ? result.value : iter.next(); + }), e.AsyncIterator = AsyncIterator, e.async = function (t, r, n, o, i) { + void 0 === i && (i = Promise); + var a = new AsyncIterator(wrap(t, r, n, o), i); + return e.isGeneratorFunction(r) ? a : a.next().then(function (t) { + return t.done ? t.value : a.next(); }); - }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { + }, defineIteratorMethods(g), define(g, u, "Generator"), define(g, a, function () { return this; - }), define(Gp, "toString", function () { + }), define(g, "toString", function () { return "[object Generator]"; - }), exports.keys = function (object) { - var keys = []; - - for (var key in object) { - keys.push(key); - } - - return keys.reverse(), function next() { - for (; keys.length;) { - var key = keys.pop(); - if (key in object) return next.value = key, next.done = !1, next; + }), e.keys = function (t) { + var e = Object(t), + r = []; + for (var n in e) r.push(n); + return r.reverse(), function next() { + for (; r.length;) { + var t = r.pop(); + if (t in e) return next.value = t, next.done = !1, next; } - return next.done = !0, next; }; - }, exports.values = values, Context.prototype = { + }, e.values = values, Context.prototype = { constructor: Context, - reset: function reset(skipTempReset) { - if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { - "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); - } + reset: function reset(e) { + if (this.prev = 0, this.next = 0, this.sent = this._sent = t, this.done = !1, this.delegate = null, this.method = "next", this.arg = t, this.tryEntries.forEach(resetTryEntry), !e) for (var r in this) "t" === r.charAt(0) && n.call(this, r) && !isNaN(+r.slice(1)) && (this[r] = t); }, stop: function stop() { this.done = !0; - var rootRecord = this.tryEntries[0].completion; - if ("throw" === rootRecord.type) throw rootRecord.arg; + var t = this.tryEntries[0].completion; + if ("throw" === t.type) throw t.arg; return this.rval; }, - dispatchException: function dispatchException(exception) { - if (this.done) throw exception; - var context = this; - - function handle(loc, caught) { - return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; + dispatchException: function dispatchException(e) { + if (this.done) throw e; + var r = this; + function handle(n, o) { + return a.type = "throw", a.arg = e, r.next = n, o && (r.method = "next", r.arg = t), !!o; } - - for (var i = this.tryEntries.length - 1; i >= 0; --i) { - var entry = this.tryEntries[i], - record = entry.completion; - if ("root" === entry.tryLoc) return handle("end"); - - if (entry.tryLoc <= this.prev) { - var hasCatch = hasOwn.call(entry, "catchLoc"), - hasFinally = hasOwn.call(entry, "finallyLoc"); - - if (hasCatch && hasFinally) { - if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); - if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); - } else if (hasCatch) { - if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); + for (var o = this.tryEntries.length - 1; o >= 0; --o) { + var i = this.tryEntries[o], + a = i.completion; + if ("root" === i.tryLoc) return handle("end"); + if (i.tryLoc <= this.prev) { + var c = n.call(i, "catchLoc"), + u = n.call(i, "finallyLoc"); + if (c && u) { + if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); + if (this.prev < i.finallyLoc) return handle(i.finallyLoc); + } else if (c) { + if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); } else { - if (!hasFinally) throw new Error("try statement without catch or finally"); - if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); + if (!u) throw new Error("try statement without catch or finally"); + if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } } } }, - abrupt: function abrupt(type, arg) { - for (var i = this.tryEntries.length - 1; i >= 0; --i) { - var entry = this.tryEntries[i]; - - if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { - var finallyEntry = entry; + abrupt: function abrupt(t, e) { + for (var r = this.tryEntries.length - 1; r >= 0; --r) { + var o = this.tryEntries[r]; + if (o.tryLoc <= this.prev && n.call(o, "finallyLoc") && this.prev < o.finallyLoc) { + var i = o; break; } } - - finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); - var record = finallyEntry ? finallyEntry.completion : {}; - return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); + i && ("break" === t || "continue" === t) && i.tryLoc <= e && e <= i.finallyLoc && (i = null); + var a = i ? i.completion : {}; + return a.type = t, a.arg = e, i ? (this.method = "next", this.next = i.finallyLoc, y) : this.complete(a); }, - complete: function complete(record, afterLoc) { - if ("throw" === record.type) throw record.arg; - return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; + complete: function complete(t, e) { + if ("throw" === t.type) throw t.arg; + return "break" === t.type || "continue" === t.type ? this.next = t.arg : "return" === t.type ? (this.rval = this.arg = t.arg, this.method = "return", this.next = "end") : "normal" === t.type && e && (this.next = e), y; }, - finish: function finish(finallyLoc) { - for (var i = this.tryEntries.length - 1; i >= 0; --i) { - var entry = this.tryEntries[i]; - if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; + finish: function finish(t) { + for (var e = this.tryEntries.length - 1; e >= 0; --e) { + var r = this.tryEntries[e]; + if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y; } }, - "catch": function _catch(tryLoc) { - for (var i = this.tryEntries.length - 1; i >= 0; --i) { - var entry = this.tryEntries[i]; - - if (entry.tryLoc === tryLoc) { - var record = entry.completion; - - if ("throw" === record.type) { - var thrown = record.arg; - resetTryEntry(entry); + "catch": function _catch(t) { + for (var e = this.tryEntries.length - 1; e >= 0; --e) { + var r = this.tryEntries[e]; + if (r.tryLoc === t) { + var n = r.completion; + if ("throw" === n.type) { + var o = n.arg; + resetTryEntry(r); } - - return thrown; + return o; } } - throw new Error("illegal catch attempt"); }, - delegateYield: function delegateYield(iterable, resultName, nextLoc) { + delegateYield: function delegateYield(e, r, n) { return this.delegate = { - iterator: values(iterable), - resultName: resultName, - nextLoc: nextLoc - }, "next" === this.method && (this.arg = undefined), ContinueSentinel; + iterator: values(e), + resultName: r, + nextLoc: n + }, "next" === this.method && (this.arg = t), y; } - }, exports; + }, e; } - module.exports = _regeneratorRuntime, module.exports.__esModule = true, module.exports["default"] = module.exports; /***/ }), @@ -18325,7 +17384,6 @@ function _setPrototypeOf(o, p) { }, module.exports.__esModule = true, module.exports["default"] = module.exports; return _setPrototypeOf(o, p); } - module.exports = _setPrototypeOf, module.exports.__esModule = true, module.exports["default"] = module.exports; /***/ }), @@ -18337,37 +17395,68 @@ module.exports = _setPrototypeOf, module.exports.__esModule = true, module.expor /***/ (function(module, __unused_webpack_exports, __webpack_require__) { var arrayWithoutHoles = __webpack_require__(/*! ./arrayWithoutHoles.js */ "./node_modules/@babel/runtime/helpers/arrayWithoutHoles.js"); - var iterableToArray = __webpack_require__(/*! ./iterableToArray.js */ "./node_modules/@babel/runtime/helpers/iterableToArray.js"); - var unsupportedIterableToArray = __webpack_require__(/*! ./unsupportedIterableToArray.js */ "./node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js"); - var nonIterableSpread = __webpack_require__(/*! ./nonIterableSpread.js */ "./node_modules/@babel/runtime/helpers/nonIterableSpread.js"); - function _toConsumableArray(arr) { return arrayWithoutHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableSpread(); } - module.exports = _toConsumableArray, module.exports.__esModule = true, module.exports["default"] = module.exports; /***/ }), +/***/ "./node_modules/@babel/runtime/helpers/toPrimitive.js": +/*!************************************************************!*\ + !*** ./node_modules/@babel/runtime/helpers/toPrimitive.js ***! + \************************************************************/ +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var _typeof = (__webpack_require__(/*! ./typeof.js */ "./node_modules/@babel/runtime/helpers/typeof.js")["default"]); +function toPrimitive(t, r) { + if ("object" != _typeof(t) || !t) return t; + var e = t[Symbol.toPrimitive]; + if (void 0 !== e) { + var i = e.call(t, r || "default"); + if ("object" != _typeof(i)) return i; + throw new TypeError("@@toPrimitive must return a primitive value."); + } + return ("string" === r ? String : Number)(t); +} +module.exports = toPrimitive, module.exports.__esModule = true, module.exports["default"] = module.exports; + +/***/ }), + +/***/ "./node_modules/@babel/runtime/helpers/toPropertyKey.js": +/*!**************************************************************!*\ + !*** ./node_modules/@babel/runtime/helpers/toPropertyKey.js ***! + \**************************************************************/ +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var _typeof = (__webpack_require__(/*! ./typeof.js */ "./node_modules/@babel/runtime/helpers/typeof.js")["default"]); +var toPrimitive = __webpack_require__(/*! ./toPrimitive.js */ "./node_modules/@babel/runtime/helpers/toPrimitive.js"); +function toPropertyKey(t) { + var i = toPrimitive(t, "string"); + return "symbol" == _typeof(i) ? i : String(i); +} +module.exports = toPropertyKey, module.exports.__esModule = true, module.exports["default"] = module.exports; + +/***/ }), + /***/ "./node_modules/@babel/runtime/helpers/typeof.js": /*!*******************************************************!*\ !*** ./node_modules/@babel/runtime/helpers/typeof.js ***! \*******************************************************/ /***/ (function(module) { -function _typeof(obj) { +function _typeof(o) { "@babel/helpers - typeof"; - return (module.exports = _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { - return typeof obj; - } : function (obj) { - return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; - }, module.exports.__esModule = true, module.exports["default"] = module.exports), _typeof(obj); + return (module.exports = _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { + return typeof o; + } : function (o) { + return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; + }, module.exports.__esModule = true, module.exports["default"] = module.exports), _typeof(o); } - module.exports = _typeof, module.exports.__esModule = true, module.exports["default"] = module.exports; /***/ }), @@ -18379,7 +17468,6 @@ module.exports = _typeof, module.exports.__esModule = true, module.exports["defa /***/ (function(module, __unused_webpack_exports, __webpack_require__) { var arrayLikeToArray = __webpack_require__(/*! ./arrayLikeToArray.js */ "./node_modules/@babel/runtime/helpers/arrayLikeToArray.js"); - function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return arrayLikeToArray(o, minLen); @@ -18388,7 +17476,6 @@ function _unsupportedIterableToArray(o, minLen) { if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen); } - module.exports = _unsupportedIterableToArray, module.exports.__esModule = true, module.exports["default"] = module.exports; /***/ }), @@ -18400,33 +17487,23 @@ module.exports = _unsupportedIterableToArray, module.exports.__esModule = true, /***/ (function(module, __unused_webpack_exports, __webpack_require__) { var getPrototypeOf = __webpack_require__(/*! ./getPrototypeOf.js */ "./node_modules/@babel/runtime/helpers/getPrototypeOf.js"); - var setPrototypeOf = __webpack_require__(/*! ./setPrototypeOf.js */ "./node_modules/@babel/runtime/helpers/setPrototypeOf.js"); - var isNativeFunction = __webpack_require__(/*! ./isNativeFunction.js */ "./node_modules/@babel/runtime/helpers/isNativeFunction.js"); - var construct = __webpack_require__(/*! ./construct.js */ "./node_modules/@babel/runtime/helpers/construct.js"); - function _wrapNativeSuper(Class) { var _cache = typeof Map === "function" ? new Map() : undefined; - module.exports = _wrapNativeSuper = function _wrapNativeSuper(Class) { if (Class === null || !isNativeFunction(Class)) return Class; - if (typeof Class !== "function") { throw new TypeError("Super expression must either be null or a function"); } - if (typeof _cache !== "undefined") { if (_cache.has(Class)) return _cache.get(Class); - _cache.set(Class, Wrapper); } - function Wrapper() { return construct(Class, arguments, getPrototypeOf(this).constructor); } - Wrapper.prototype = Object.create(Class.prototype, { constructor: { value: Wrapper, @@ -18439,7 +17516,6 @@ function _wrapNativeSuper(Class) { }, module.exports.__esModule = true, module.exports["default"] = module.exports; return _wrapNativeSuper(Class); } - module.exports = _wrapNativeSuper, module.exports.__esModule = true, module.exports["default"] = module.exports; /***/ }), diff --git a/dist/build/fhir-client.js.map b/dist/build/fhir-client.js.map index e98c3983..988d4c84 100644 --- a/dist/build/fhir-client.js.map +++ b/dist/build/fhir-client.js.map @@ -1 +1 @@ -{"version":3,"file":"fhir-client.js","mappings":";;;;;;;;;AAAA;AACA,EAAE,KAA0C,GAAG,oCAAO,OAAO;AAAA;AAAA;AAAA;AAAA,kGAAC;AAC9D,EAAE,CAAS;AACX,CAAC,gBAAgB;;AAEjB;AACA;AACA;AACA;AACA;;AAEA;AACA,oBAAoB,kBAAkB;AACtC;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,kFAAkF;AAClF;AACA,MAAM;AACN;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA,QAAQ;AACR;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,MAAM;AACN;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,iBAAiB;AACjB;AACA;AACA,OAAO;AACP;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,SAAS;AACT;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;;AAEA;;AAEA,0CAA0C,OAAO;AACjD;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA,gDAAgD,OAAO;AACvD;;AAEA;AACA;AACA,YAAY;AACZ;AACA;AACA,aAAa;AACb;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,KAAK;;AAEL;AACA,GAAG;;AAEH;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA,iCAAiC;AACjC;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,QAAQ;AACR;;;AAGA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,KAAK;;AAEL;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,KAAK;;AAEL;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;;;AAGA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,GAAG,uCAAuC,qBAAM;;AAEhD,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;AChWD;;AAEA;AACA;AACA;AAEAA,kBAAA,GAAqBC,UAArB;AACAD,YAAA,GAAeE,IAAf;AACAF,YAAA,GAAeG,IAAf;AACAH,iBAAA,GAAoBI,SAApB;AACAJ,eAAA,GAAkBM,YAAY,EAA9B;;AACAN,eAAA,GAAmB,YAAM;EACxB,IAAIQ,MAAM,GAAG,KAAb;EAEA,OAAO,YAAM;IACZ,IAAI,CAACA,MAAL,EAAa;MACZA,MAAM,GAAG,IAAT;MACAC,OAAO,CAACC,IAAR,CAAa,uIAAb;IACA;EACD,CALD;AAMA,CATiB,EAAlB;AAWA;AACA;AACA;;;AAEAV,cAAA,GAAiB,CAChB,SADgB,EAEhB,SAFgB,EAGhB,SAHgB,EAIhB,SAJgB,EAKhB,SALgB,EAMhB,SANgB,EAOhB,SAPgB,EAQhB,SARgB,EAShB,SATgB,EAUhB,SAVgB,EAWhB,SAXgB,EAYhB,SAZgB,EAahB,SAbgB,EAchB,SAdgB,EAehB,SAfgB,EAgBhB,SAhBgB,EAiBhB,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A;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,gDAAgD,mBAAmB,uCAAuC;AAC1G;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB,WAAW;AAC7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,GAAG;AACH,EAAE;AACF;AACA;AACA;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;;AAEA,wEAAwE,gBAAgB;AACxF;AACA;AACA;AACA;;AAEA;AACA,IAAI;AACJ;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,GAAG,IAAI,cAAc;AACrB;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;;;;;;;;;;;ACtPa;AACb,eAAe,mBAAO,CAAC,6EAAwB;AAC/C,sBAAsB,mBAAO,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oBAAoB,mBAAO,CAAC,yGAAsC;;AAElE;AACA;AACA;AACA;AACA,uBAAuB;AACvB,GAAG;AACH,CAAC;;;;;;;;;;;ACVD;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA,IAAI;AACJ;AACA;AACA,IAAI;AACJ;;AAEA;AACA;AACA;AACA;;;;;;;;;;;ACrGA,kBAAkB,mBAAO,CAAC,qGAAoC;AAC9D,YAAY,mBAAO,CAAC,qEAAoB;AACxC,cAAc,mBAAO,CAAC,iFAA0B;;AAEhD;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA,EAAE;;;;;;;;;;;ACdF,iBAAiB,mBAAO,CAAC,iFAA0B;AACnD,eAAe,mBAAO,CAAC,6EAAwB;AAC/C,qBAAqB,mBAAO,CAAC,yGAAsC;;AAEnE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACjBA,kBAAkB,mBAAO,CAAC,qGAAoC;AAC9D,iBAAiB,mBAAO,CAAC,iFAA0B;AACnD,YAAY,mBAAO,CAAC,mFAA2B;;AAE/C;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;;;;;;;;;;ACbA,sBAAsB,mBAAO,CAAC,yFAA8B;AAC5D,aAAa,mBAAO,CAAC,uEAAqB;AAC1C,kBAAkB,mBAAO,CAAC,qGAAo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A;AACA;AACA;;;;;;;;;;;ACTA,aAAa,mBAAO,CAAC,uEAAqB;AAC1C,WAAW,mBAAO,CAAC,qGAAoC;AACvD,+BAA+B,wJAA4D;AAC3F,gBAAgB,8FAAgC;AAChD,aAAa,mBAAO,CAAC,qFAA4B;AACjD,oBAAoB,mBAAO,CAAC,mGAAmC;AAC/D,sBAAsB,mBAAO,CAAC,uGAAqC;AACnE,cAAc,mBAAO,CAAC,uFAA6B;;AAEnD;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ;AACR;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,gDAAgD,qBAAqB;AACrE;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,eAAe;AACf;AACA;AACA;AACA;AACA,IAAI;AACJ;;;;;;;;;;;ACpFA,oBAAoB,mBAAO,CAAC,qFAA4B;;AAExD;AACA;;;;;;;;;;;ACHA;AACA,iBAAiB,mBAAO,CAAC,6FAAgC;AACzD,YAAY,mBAAO,CAAC,qEAAoB;;AAExC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;;;;;;;;;;ACZD,YAAY,mBAAO,CAAC,qEAAoB;AACxC,sBAAsB,mBAAO,CAAC,6FAAgC;AAC9D,cAAc,mBAAO,CAAC,yEAAsB;;AAE5C;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;;;;;;;;;;ACjCD,aAAa,mBAAO,CAAC,uEAAqB;AAC1C,iBAAiB,mBAAO,CAAC,iFAA0B;AACnD,oBAAoB,mBAAO,CAAC,uFAA6B;;AAEzD;;A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CA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ;AACR,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,0BAA0B;AAC9C;AACA;AACA,OAAO;AACP;;AAEA;AACA;AACA,kBAAkB,mBAAmB;AACrC;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;;;;;;;;;;;ACpHa;AACb,eAAe,mBAAO,CAAC,6EAAwB;;AAE/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACjBA,WAAW,mBAAO,CAAC,qFAA4B;AAC/C,aAAa,mBAAO,CAAC,2FAA+B;AACpD,oBAAoB,mBAAO,CAAC,uGAAqC;AACjE,kBAAkB,mBAAO,CAAC,mFAA2B;;AAErD;;AAEA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACXA,YAAY,mBAAO,CAAC,qEAAoB;AACxC,aAAa,mBAAO,CAAC,uEAAqB;;AAE1C;AACA;;AAEA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;;;;;;;;;;;AC7BA,YAAY,mBAAO,CAAC,qEAAoB;AACxC,aAAa,mBAAO,CAAC,uEAAqB;;AAE1C;AACA;;AAEA;AACA;AACA;AACA,CAAC;;;;;;;;;;;ACTD,YAAY,mBAAO,CAAC,qEAAoB;AACxC,aAAa,mBAAO,CAAC,uEAAqB;;AAE1C;AACA;;AAEA;AACA;AACA;AACA;AACA,CAAC;;;;;;;;;;;ACVD;;AAEA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACNa;AACb,iBAAiB,mBAAO,CAAC,mFAA2B;AACpD,2BAA2B,mBAAO,CAAC,uGAAqC;AACxE,sBAAsB,mBAAO,CAAC,6FAAgC;AAC9D,kBAAkB,mBAAO,CAAC,iFAA0B;;AAEpD;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,yBAAyB;AACzB,KAAK;AACL;AACA;;;;;;;;;;;AClBA,qBAAqB,gIAAgD;AACrE,aAAa,mBAAO,CAAC,2FAA+B;AACpD,sBAAsB,mBAAO,CAAC,6FAAgC;;AAE9D;;AAEA;AACA;AACA;AACA,4CAA4C,gCAAgC;AAC5E;AACA;;;;;;;;;;;ACXA,aAAa,mBAAO,CAAC,uEAAqB;AAC1C,UAAU,mBAAO,CAAC,iEAAkB;;AAEpC;;AAEA;AACA;AACA;;;;;;;;;;;ACPA,aAAa,mBAAO,CAAC,uEAAqB;AAC1C,2BAA2B,mBAAO,CAAC,uGAAqC;;AAExE;AACA,6DAA6D;;AAE7D;;;;;;;;;;;ACNA,cAAc,mBAAO,CAAC,yEAAsB;AAC5C,YAAY,mBAAO,CAAC,mFAA2B;;AAE/C;AACA,qEAAqE;AACrE,CAAC;AACD;AACA;AACA;AACA;AACA;AACA,CAAC;;;;;;;;;;;ACXD,eAAe,mBAAO,CAAC,6EAAwB;AAC/C,mBAAmB,mBAAO,CAAC,qFAA4B;AACvD,sBAAsB,mBAAO,CAAC,6FAAgC;;AAE9D;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACZA,YAAY,mBAAO,CAAC,qEAAoB;;AAExC;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;;;;;;;;;;ACTA,kBAAkB,mBAAO,CAAC,qGAAoC;AAC9D,0BAA0B,mBAAO,CAAC,uGAAqC;AACvE,eAAe,mBAAO,CAAC,6EAAwB;AAC/C,6BAA6B,mBAAO,CAAC,2GAAuC;;AAE5E;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACnCa;AACb;AACA,kBAAkB,mBAAO,CAAC,qGAAoC;;AAE9D,yBAAyB;AACzB;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB;AACpB,qBAAqB;AACrB,oCAAoC;AACpC,gDAAgD;AAChD;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC;AACxC;AACA,QAAQ;AACR,wCAAwC;AACxC;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,cAAc,kBAAkB;AAChC;AACA;AACA;AACA;AACA;;AAEA,mCAAmC;AACnC,oCAAoC;;AAEpC;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,gBAAgB,kBAAkB;AAClC;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA,gBAAgB,kBAAkB;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,cAAc,mBAAmB;AACjC;AACA;AACA;AACA;AACA;;;;;;;;;;;ACpLA,2BAA2B,mHAA4C;AACvE,YAAY,mBAAO,CAAC,qEAAoB;AACxC,kBAAkB,mBAAO,CAAC,iFAA0B;;AAEpD;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;;;;;;;;;;ACdA,kBAAkB,mBAAO,CAAC,qGAAoC;AAC9D,6BAA6B,mBAAO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0B,mBAAO,CAAC,uFAA6B;AAC/D,wBAAwB,mBAAO,CAAC,iGAAkC;;AAElE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,kCAAkC;AAClC;AACA,KAAK;AACL;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,MAAM,kEAAkE;AACxE;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA,OAAO;AACP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA;AACA;AACA;AACA,UAAU;AACV;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA,OAAO;;AAEP;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,OAAO;;AAEP;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;;AAEA,QAAQ,mFAAmF;;AAE3F;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,EAAE,oCAAoC;;;;;;;;;;;ACjPtC;AACA,aAAa,mBAAO,CAAC,uEAAqB;AAC1C,YAAY,mBAAO,CAAC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AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iCAAiC;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ;AACR;AACA,QAAQ;AACR,MAAM;AACN,IAAI;AACJ;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,eAAe;AACnB;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV,OAAO;AACP;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB;AACxB;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA,OAAO;AACP,MAAM;AACN;AACA;AACA;AACA;AACA,IAAI;AACJ,qBAAqB,aAAa;AAClC;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;A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AO,CAAC,uHAA6C;AACvF,0BAA0B,8IAAuD;AACjF,oBAAoB,mBAAO,CAAC,uGAAqC;AACjE,eAAe,mBAAO,CAAC,6EAAwB;AAC/C,eAAe,mBAAO,CAAC,6EAAwB;AAC/C,qBAAqB,mBAAO,CAAC,2FAA+B;AAC5D,oBAAoB,mBAAO,CAAC,qGAAoC;AAChE,oBAAoB,mBAAO,CAAC,uFAA6B;AACzD,oBAAoB,mBAAO,CAAC,yFAA8B;AAC1D,YAAY,mBAAO,CAAC,qEAAoB;AACxC,aAAa,mBAAO,CAAC,2FAA+B;AACpD,2BAA2B,sHAA8C;AACzE,iBAAiB,mBAAO,CAAC,iFAA0B;AACnD,sBAAsB,mBAAO,CAAC,6FAAgC;AAC9D,0BAA0B,mBAAO,CAAC,+GAAyC;AAC3E,sBAAsB,mBAAO,CAAC,uGAAqC;;AAEnE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA,SAAS,iBAAiB;AAC1B;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA,QAAQ;AACR;AACA,QAAQ;AACR;AACA,IAAI;AACJ;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS,iBAAiB;AAC1B;AACA;AACA;AACA,MAAM;AACN;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;A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CAAC,+EAAyB;AACjD,iBAAiB,mBAAO,CAAC,+FAAiC;AAC1D,qBAAqB,mBAAO,CAAC,mGAAmC;AAChE,iBAAiB,mBAAO,CAAC,iFAA0B;AACnD,oBAAoB,mBAAO,CAAC,qGAAoC;AAChE,YAAY,mBAAO,CAAC,qEAAoB;;AAExC;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,0BAA0B;AAC1B;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gFAAgF;AAChF;AACA;AACA;AACA,QAAQ;AACR;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA,IAAI;;AAEJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA,0BAA0B,mBAAmB;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;;;;;;;;;;;AC3JY;AACb,QAAQ,mBAAO,CAAC,uEAAqB;AACrC,YAAY,6GAAwC;AACpD,6BAA6B,mBAAO,CAAC,+FAAiC;;AAEtE;AACA;AACA,IAAI,uEAAuE;AAC3E;AACA;AACA;AACA,CAAC;;;;;;;;;;;;ACXY;AACb,QAAQ,mBAAO,CAAC,uEAAqB;AACrC,aAAa,mBAAO,CAAC,uEAAqB;AAC1C,WAAW,mBAAO,CAAC,qFAA4B;AAC/C,kBAAkB,mBAAO,CAAC,qGAAoC;AAC9D,cAAc,mBAAO,CAAC,yEAAsB;AAC5C,kBAAkB,mBAAO,CAAC,iFAA0B;AACpD,oBAAoB,mBAAO,CAAC,qFAA4B;AACxD,YAAY,mBAAO,CAAC,qEAAoB;AACxC,aAAa,mBAAO,CAAC,2FAA+B;AACpD,oBAAoB,mBAAO,CAAC,uGAAqC;AACjE,eAAe,mBAAO,CAAC,6EAAwB;AAC/C,sBAAsB,mBAAO,CAAC,6FAAgC;AAC9D,oBAAoB,mBAAO,CAAC,yFAA8B;AAC1D,gBAAgB,mBAAO,CAAC,6EAAwB;AAChD,+BAA+B,mBAAO,CAAC,+GAAyC;AAChF,yBAAyB,mBAAO,CAAC,qFAA4B;AAC7D,iBAAiB,mBAAO,CAAC,iFAA0B;AACnD,gCAAgC,mBAAO,CAAC,qHAA4C;AACpF,kCAAkC,mBAAO,CAAC,uIAAqD;AAC/F,kCAAkC,mBAAO,CAAC,yHAA8C;AACxF,qCAAqC,mBAAO,CAAC,+HAAiD;AAC9F,2BAA2B,mBAAO,CAAC,uGAAqC;AACxE,6BAA6B,mBAAO,CAAC,2GAAuC;AAC5E,iCAAiC,mBAAO,CAAC,qHAA4C;AACrF,oBAAoB,mBAAO,CAAC,yFAA8B;AAC1D,aAAa,mBAAO,CAAC,uEAAqB;AAC1C,gBAAgB,mBAAO,CAAC,+EAAyB;AACjD,iBAAiB,mBAAO,CAAC,iFAA0B;AACnD,UAAU,mBAAO,CAAC,iEAAkB;AACpC,sBAAsB,mBAAO,CAAC,6FAAgC;AAC9D,mCAAmC,mBAAO,CAAC,6GAAwC;AACnF,4BAA4B,mBAAO,CAAC,2GAAuC;AAC3E,8BAA8B,mBAAO,CAAC,+GAAyC;AAC/E,qBAAqB,mBAAO,CAAC,6FAAgC;AAC7D,0BAA0B,mBAAO,CAAC,uFAA6B;AAC/D,eAAe,wHAA+C;;AAE9D;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,mDAAmD;AACnD,uBAAuB,yCAAyC,UAAU;AAC1E,GAAG;AACH,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA,EAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4FAA4F;AAC5F;AACA,MAAM;AACN;AACA,oDAAoD,gDAAgD;AACpG,MAAM;AACN,IAAI;AACJ;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+EAA+E,iCAAiC;AAChH;AACA;;AAEA;;AAEA;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA,sFAAsF,cAAc;AACpG;AACA;AACA;;AAEA,IAAI,2FAA2F;AAC/F;AACA,CAAC;;AAED;AACA;AACA,CAAC;;AAED,IAAI,oDAAoD;AACxD,2BAA2B,oBAAoB;AAC/C,2BAA2B;AAC3B,CAAC;;AAED,IAAI,0EAA0E;AAC9E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED,IAAI,sDAAsD;AAC1D;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;;;;;;;;;;AC3PA,QAAQ,mBAAO,CAAC,uEAAqB;AACrC,iBAAiB,mBAAO,CAAC,mFAA2B;AACpD,aAAa,mBAAO,CAAC,2FAA+B;AACpD,eAAe,mBAAO,CAAC,6EAAwB;AAC/C,aAAa,mBAAO,CAAC,uEAAqB;AAC1C,6BAA6B,mBAAO,CAAC,uGAAqC;;AAE1E;AACA;;AAEA;AACA;AACA,IAAI,+DAA+D;AACnE;AACA;AACA;AACA;AACA;AAC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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B,6DAA6D;AAC1F;AACA,MAAM;AACN,2BAA2B,yCAAyC;AACpE;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN,GAAG;AACH;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,0BAA0B,+CAA+C;AACzE;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,wBAAwB;AACnC;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,wBAAwB;AACnC;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,wBAAwB;AACnC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,sBAAsB;AACtD;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,CAAC,IAAI,kBAAkB;;AAEvB;AACA,sFAAsF,iBAAiB;;AAEvG;AACA;AACA;AACA;AACA,CAAC,IAAI,kBAAkB;;AAEvB;;AAEA,IAAI,0DAA0D;AAC9D;AACA,CAAC;;AAED;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iFAAiF;AACjF;AACA;AACA;AACA;AACA,SAAS;AACT;AACA,MAAM;AACN;;AAEA;AACA,QAAQ,oEAAoE;AAC5E;AACA,8FAA8F;AAC9F;AACA,KAAK;AACL;;AAEA;AACA;AACA;AACA,kGAAkG;AAClG;;AAEA;AACA;;AAEA,QAAQ,qEAAqE;AAC7E;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;AACA;;;;;;;;;;;ACvYA;AACA,mBAAO,CAAC,yHAA8C;;;;;;;;;;;;ACDzC;AACb;AACA,mBAAO,CAAC,2FAA+B;AACvC,QAAQ,mBAAO,CAAC,uEAAqB;AACrC,kBAAkB,mBAAO,CAAC,iFAA0B;AACpD,qBAAqB,mBAAO,CAAC,+EAAyB;AACtD,aAAa,mBAAO,CAAC,uEAAqB;AAC1C,WAAW,mBAAO,CAAC,qGAAoC;AACvD,kBAAkB,mBAAO,CAAC,qGAAoC;AAC9D,oBAAoB,mBAAO,CAAC,yFAA8B;AAC1D,4BAA4B,mBAAO,CAAC,2GAAuC;AAC3E,iBAAiB,mBAAO,CAAC,iFAA0B;AACnD,aAAa,mBAAO,CAAC,2FAA+B;AACpD,aAAa,mBAAO,CAAC,qFAA4B;AACjD,gBAAgB,mBAAO,CAAC,+EAAyB;AACjD,iBAAiB,mBAAO,CAAC,+FAAiC;AAC1D,aAAa,yHAA+C;AAC5D,cAAc,mBAAO,CAAC,2GAAuC;AAC7D,gBAAgB,mBAAO,CAAC,6EAAwB;AAChD,qBAAqB,mBAAO,CAAC,6FAAgC;AAC7D,8BAA8B,mBAAO,CAAC,6GAAwC;AAC9E,4BAA4B,mBAAO,CAAC,yHAA8C;AAClF,0BAA0B,mBAAO,CAAC,uFAA6B;;AAE/D;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB,qBAAqB;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA,kBAAkB,qBAAqB;AACvC;AACA;AACA;AACA,MAAM;AACN;AACA;AACA,kBAAkB,wBAAwB;AAC1C;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS,WAAW;AACpB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,WAAW;AAC/B;AACA;AACA,MAAM;AACN;AACA,IAAI;AACJ;AACA;AACA,oBAAoB,WAAW;AAC/B;AACA;AACA;AACA;AACA;AACA,QAAQ;AACR;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;;AAEA;AACA,wCAAwC;AACxC;AACA,CAAC;AACD,oCAAoC;AACpC,oBAAoB,QAAQ;AAC5B,CAAC;AACD,wCAAwC;AACxC,oBAAoB;AACpB,CAAC;;AAED;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA;AACA,YAAY;AACZ;;AAEA;AACA;AACA;AACA,YAAY;AACZ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA;AACA;AACA;AACA,YAAY;AACZ;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA;AACA,YAAY;;AAEZ;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA,YAAY;AACZ;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY;;AAEZ;AACA;AACA;AACA,YAAY;AACZ;AACA,YAAY;AACZ;AACA;AACA;AACA;AACA;AACA;AACA,YAAY;;AAEZ;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,YAAY;;AAEZ;AACA;AACA;AACA;AACA;AACA,4BAA4B,6BAA6B;AACzD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY;AACZ;;AAEA;AACA;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA;AACA;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA;AACA;AACA,YAAY;;AAEZ;AACA;AACA;AACA,YAAY;AACZ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY;AACZ;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA;AACA,YAAY;;AAEZ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd,YAAY;AACZ;;AAEA;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA;AACA,YAAY;AACZ;AACA;AACA,YAAY;AACZ;AACA;AACA,YAAY;;AAEZ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA,cAAc;AACd;AACA;AACA,kDAAkD;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA,YAAY;AACZ;AACA,YAAY;;AAEZ;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA;AACA,YAAY;AACZ;AACA,YAAY;;AAEZ;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA;AACA;AACA,YAAY;;AAEZ;AACA;AACA;AACA;;AAEA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA,sBAAsB,2BAA2B;AACjD;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,oBAAoB,uBAAuB;AAC3C;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,oBAAoB,uBAAuB;AAC3C;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,CAAC,IAAI,kBAAkB;;AAEvB;AACA;AACA;AACA;AACA,CAAC,IAAI,kBAAkB;;AAEvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA,IAAI,8EAA8E;AAClF;AACA,CAAC;;;;;;;;;;;ACjhCD;AACA,mBAAO,CAAC,6FAAgC;;;;;;;;;;;ACDxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA,OAAO;AACP;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,gBAAgB;AAChB;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,OAAO;AACP,MAAM;AACN;AACA;AACA,OAAO;AACP,MAAM;AACN;AACA;AACA,OAAO;AACP;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,oBAAoB,iBAAiB;AACrC;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,QAAQ;AACR;AACA,QAAQ;AACR;AACA,QAAQ;AACR;AACA,QAAQ;AACR;AACA,QAAQ;AACR;AACA;AACA;AACA,QAAQ;AACR;AACA,QAAQ;AACR;AACA;;AAEA;AACA;AACA,uDAAuD;AACvD,UAAU;AACV;AACA,UAAU;AACV,8EAA8E;AAC9E;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,UAAU;AACV;AACA,UAAU;AACV;AACA,UAAU;AACV;AACA;AACA;;AAEA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,QAAQ;AACR;AACA,QAAQ;AACR;AACA,QAAQ;AACR;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,8BAA8B,qBAAqB;AACnD;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;;AAEA;AACA,uCAAuC,0BAA0B;AACjE;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA,+BAA+B,0BAA0B,eAAe;AACxE;;AAEA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,QAAQ;AACR;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,OAAO;;AAEP;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,KAAK;AACL;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA,iDAAiD,aAAa;;AAE9D;;AAEA,CAAC,IAAI;AACL,CAAC;AACD;AACA;AACA;AACA;AACA;AACA,oBAAoB;AACpB;AACA,kBAAe;AACf,aAAa,mCAAmC,OAAO;AACvD,eAAe;AACf,eAAe;AACf,gBAAgB;AAChB;;;;;;;;;;;ACziBA;AACA;AACA;AACA;AACA;AACA,IAAI,KAA4D;AAChE;AACA,UAAU,CAeM;AAChB,CAAC;AACD;AACA,iBAAiB,qBAAM,mBAAmB,qBAAM;AAChD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC,oBAAoB;AACxD;AACA,KAAK;AACL,mCAAmC,EAAE,oBAAoB,EAAE,sBAAsB,EAAE;AACnF;AACA;AACA;AACA;AACA,iCAAiC,oBAAoB;AACrD;AACA;AACA,sCAAsC;AACtC,6DAA6D,+BAA+B;AAC5F,kCAAkC;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,eAAe;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,QAAQ;AACvB,iBAAiB,QAAQ;AACzB;AACA,4CAA4C;AAC5C,wCAAwC;AACxC;AACA;AACA,2BAA2B;AAC3B;AACA;AACA;AACA;AACA,4CAA4C,OAAO;AACnD;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,SAAS;AACxB,iBAAiB,QAAQ;AACzB;AACA;AACA,kCAAkC;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,QAAQ;AACvB,iBAAiB,QAAQ;AACzB;AACA,8BAA8B;AAC9B;AACA;AACA,yBAAyB;AACzB;AACA,6BAA6B;AAC7B,6BAA6B;AAC7B;AACA;AACA,eAAe,SAAS;AACxB,iBAAiB,QAAQ;AACzB;AACA;AACA,kCAAkC;AAClC;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,QAAQ;AACzB;AACA,qCAAqC;AACrC;AACA;AACA;AACA,iEAAiE,EAAE,wBAAwB,EAAE;AAC7F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,QAAQ;AACvB,iBAAiB,QAAQ;AACzB;AACA,8BAA8B;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,eAAe;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,QAAQ;AACvB,iBAAiB,QAAQ;AACzB;AACA,4CAA4C;AAC5C,wCAAwC;AACxC;AACA;AACA;AACA,yBAAyB;AACzB,yBAAyB,yCAAyC,yBAAyB;AAC3F;AACA;AACA;AACA,sCAAsC;AACtC;AACA;AACA,yBAAyB;AACzB;AACA,6BAA6B;AAC7B,6BAA6B;AAC7B,gCAAgC,mDAAmD,+BAA+B;AAClH;AACA;AACA,eAAe,QAAQ;AACvB,iBAAiB,QAAQ;AACzB;AACA,kCAAkC;AAClC;AACA;AACA,eAAe,QAAQ;AACvB;AACA;AACA;AACA;AACA,mDAAmD,IAAI;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2CAA2C;AAC3C,yCAAyC,sBAAsB;AAC/D,8CAA8C,+BAA+B;AAC7E,0CAA0C,4BAA4B;AACtE,0CAA0C,4BAA4B;AACtE,2CAA2C,4BAA4B;AACvE;AACA;AACA;AACA;AACA;AACA,2CAA2C;AAC3C,8CAA8C,uCAAuC;AACrF,0CAA0C,oCAAoC;AAC9E,0CAA0C,oCAAoC;AAC9E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC;AACxC;AACA,gDAAgD,wCAAwC;AACxF;AACA,CAAC;;;;;;;;;;;AC9TD;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,eAAe;AAC1B,WAAW,QAAQ;AACnB,YAAY,OAAO;AACnB,YAAY;AACZ;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,WAAW,QAAQ;AACnB,YAAY;AACZ;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,WAAW,QAAQ;AACnB,YAAY;AACZ;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,WAAW,QAAQ;AACnB,YAAY;AACZ;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;;;;;;;;;;ACjKA;AACA;;AAEA,yCAAyC,SAAS;AAClD;AACA;;AAEA;AACA;;AAEA,oCAAoC,yBAAyB,SAAS,yBAAyB;;;;;;;;;;ACV/F,uBAAuB,mBAAO,CAAC,wFAAuB;;AAEtD;AACA;AACA;;AAEA,qCAAqC,yBAAyB,SAAS,yBAAyB;;;;;;;;;;ACNhG;AACA;AACA;AACA;;AAEA;AACA;;AAEA,yCAAyC,yBAAyB,SAAS,yBAAyB;;;;;;;;;;ACRpG;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,KAAK;AACL;AACA;;AAEA,oCAAoC,yBAAyB,SAAS,yBAAyB;;;;;;;;;;ACpC/F;AACA;AACA;AACA;AACA;;AAEA,kCAAkC,yBAAyB,SAAS,yBAAyB;;;;;;;;;;ACN7F,qBAAqB,mBAAO,CAAC,oFAAqB;;AAElD,+BAA+B,mBAAO,CAAC,wGAA+B;;AAEtE;AACA;AACA,4DAA4D,yBAAyB,SAAS,yBAAyB;AACvH,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK,EAAE,yBAAyB,SAAS,yBAAyB;AAClE;;AAEA;AACA;;AAEA,6BAA6B,yBAAyB,SAAS,yBAAyB;;;;;;;;;;ACrBxF;AACA,kBAAkB,kBAAkB;AACpC;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AAEA,+BAA+B,yBAAyB,SAAS,yBAAyB;;;;;;;;;;ACnB1F;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL,IAAI;AACJ;AACA;;AAEA;AACA;;AAEA,kCAAkC,yBAAyB,SAAS,yBAAyB;;;;;;;;;;ACf7F;AACA;AACA;AACA,GAAG,EAAE,yBAAyB,SAAS,yBAAyB;AAChE;AACA;;AAEA,kCAAkC,yBAAyB,SAAS,yBAAyB;;;;;;;;;;ACP7F,qBAAqB,mBAAO,CAAC,oFAAqB;;AAElD;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA;;AAEA,4BAA4B,yBAAyB,SAAS,yBAAyB;;;;;;;;;;ACpBvF;AACA;AACA;AACA;AACA;;AAEA,yCAAyC,yBAAyB,SAAS,yBAAyB;;;;;;;;;;ACNpG;AACA;AACA;;AAEA,oCAAoC,yBAAyB,SAAS,yBAAyB;;;;;;;;;;ACJ/F;AACA;AACA;AACA;;AAEA;AACA,gFAAgF;AAChF;AACA,IAAI;AACJ;AACA;AACA;;AAEA,4CAA4C,yBAAyB,SAAS,yBAAyB;;;;;;;;;;ACbvG;AACA;AACA;;AAEA,mCAAmC,yBAAyB,SAAS,yBAAyB;;;;;;;;;;ACJ9F;AACA;AACA;;AAEA,qCAAqC,yBAAyB,SAAS,yBAAyB;;;;;;;;;;ACJhG,mCAAmC,mBAAO,CAAC,gHAAmC;;AAE9E;AACA;AACA;AACA;;AAEA;AACA;;AAEA,gBAAgB,6BAA6B;AAC7C;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA,2CAA2C,yBAAyB,SAAS,yBAAyB;;;;;;;;;;ACrBtG;AACA;AACA;AACA;AACA;;AAEA,cAAc,uBAAuB;AACrC;AACA;AACA;AACA;;AAEA;AACA;;AAEA,gDAAgD,yBAAyB,SAAS,yBAAyB;;;;;;;;;;ACf3G,cAAc,sGAAiC;;AAE/C,4BAA4B,mBAAO,CAAC,kGAA4B;;AAEhE;AACA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;AACA;;AAEA,6CAA6C,yBAAyB,SAAS,yBAAyB;;;;;;;;;;ACdxG,cAAc,sGAAiC;;AAE/C;AACA;AACA;;AAEA;AACA;AACA,GAAG,EAAE,yBAAyB,SAAS,yBAAyB;AAChE,kBAAkB;AAClB;AACA;AACA,yDAAyD;AACzD;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;;AAEA;AACA,aAAa;AACb,IAAI;AACJ;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA,yDAAyD;AACzD;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,oFAAoF;AACpF;AACA;AACA,YAAY;AACZ;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,OAAO;AACP,KAAK;AACL;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA,SAAS;AACT;AACA,SAAS;AACT;AACA,SAAS;AACT;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,SAAS;AACT;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,iBAAiB,sBAAsB;AACvC;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,KAAK;AACL,GAAG;AACH;AACA,GAAG;AACH;AACA,GAAG;AACH;;AAEA;AACA;AACA;;AAEA;AACA,aAAa,YAAY;AACzB;AACA;AACA;;AAEA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;;AAEA,+CAA+C,QAAQ;AACvD;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,YAAY;AACZ;AACA,YAAY;AACZ;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA,+CAA+C,QAAQ;AACvD;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA,+CAA+C,QAAQ;AACvD;AACA;AACA;AACA,KAAK;AACL;AACA,+CAA+C,QAAQ;AACvD;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA,GAAG;AACH;;AAEA,sCAAsC,yBAAyB,SAAS,yBAAyB;;;;;;;;;;ACjWjG;AACA;AACA;AACA;AACA,GAAG,EAAE,yBAAyB,SAAS,yBAAyB;AAChE;AACA;;AAEA,kCAAkC,yBAAyB,SAAS,yBAAyB;;;;;;;;;;ACR7F,wBAAwB,mBAAO,CAAC,0FAAwB;;AAExD,sBAAsB,mBAAO,CAAC,sFAAsB;;AAEpD,iCAAiC,mBAAO,CAAC,4GAAiC;;AAE1E,wBAAwB,mBAAO,CAAC,0FAAwB;;AAExD;AACA;AACA;;AAEA,qCAAqC,yBAAyB,SAAS,yBAAyB;;;;;;;;;;ACZhG;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA,GAAG,EAAE,yBAAyB,SAAS,yBAAyB;AAChE;;AAEA,0BAA0B,yBAAyB,SAAS,yBAAyB;;;;;;;;;;ACVrF,uBAAuB,mBAAO,CAAC,wFAAuB;;AAEtD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,8CAA8C,yBAAyB,SAAS,yBAAyB;;;;;;;;;;ACXzG,qBAAqB,mBAAO,CAAC,oFAAqB;;AAElD,qBAAqB,mBAAO,CAAC,oFAAqB;;AAElD,uBAAuB,mBAAO,CAAC,wFAAuB;;AAEtD,gBAAgB,mBAAO,CAAC,0EAAgB;;AAExC;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA,GAAG,EAAE,yBAAyB,SAAS,yBAAyB;AAChE;AACA;;AAEA,mCAAmC,yBAAyB,SAAS,yBAAyB;;;;;;;;;;ACzC9F;;AAEA,cAAc,mBAAO,CAAC,kGAA+B;AACrD;;AAEA;AACA;AACA;AACA,EAAE;AACF;AACA;AACA,IAAI;AACJ;AACA;AACA;;;;;;;;;;;;;ACd6B;AAC7B,+DAAe,aAAa;;;;;;;;;;;;ACD5B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,MAAM;AACN;AACA;AACA,MAAM;AACN;AACA;AACA,CAAC,sCAAsC,SAAI;AAC3C;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,yBAAyB,cAAc;AACvC;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS,yBAAyB;AAClC;;AAEA;AACA;AACA,oBAAoB;AACpB;AACA;AACA;AACA;AACA,+FAA+F,8BAA8B;AAC7H;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,yDAAyD;AACzD,oBAAoB;AACpB;AACA;AACA;AACA;AACA,2CAA2C;AAC3C,iCAAiC,mBAAmB;AACpD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,iCAAiC,oBAAoB;AACrD;AACA;AACA;AACA;AACA,4FAA4F;AAC5F;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC;AAChC,kDAAkD;AAClD;AACA;;AAEA,oBAAoB,wCAAwC;AAC5D,oBAAoB;;AAEpB;AACA;AACA,4BAA4B;;AAE5B;;AAEA;AACA;;AAEA;AACA;AACA;AACA,gCAAgC,OAAO;AACvC;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+CAA+C,eAAe;AAC9D;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA,0BAA0B;;AAE1B,4CAA4C;AAC5C;AACA,6BAA6B,SAAS;AACtC;AACA,iDAAiD;AACjD;AACA,6BAA6B,SAAS;AACtC;AACA,mCAAmC;AACnC;AACA;AACA,gEAAgE;AAChE;AACA;AACA,6BAA6B,SAAS;AACtC;AACA,2CAA2C;AAC3C,6BAA6B,gBAAgB;AAC7C;AACA;AACA,sGAAsG;AACtG;AACA,yBAAyB,iBAAiB,SAAS;AACnD;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,+CAA+C,gEAAgE;AAC/G;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB;AACzB;AACA;AACA;AACA;AACA;AACA,yBAAyB;AACzB;;AAEA,6DAA6D;AAC7D;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,yBAAyB;AACzB;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,yDAAyD;AACzD,yDAAyD;AACzD,qBAAqB;AACrB;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;;AAEjB;AACA;AACA,SAAS;;AAET;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,sEAAsE;AACtE;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,yBAAyB;AACzB;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,yDAAyD;AACzD,yDAAyD;AACzD,qBAAqB;AACrB;;AAEA;AACA;AACA,8EAA8E;AAC9E;AACA,qCAAqC;AACrC;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;;AAEA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;;AAEA;AACA;AACA,SAAS;;AAET;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,qBAAqB;AACrB;;AAEA;AACA;AACA,SAAS;;AAET;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,iDAAiD;AACjD,iDAAiD;AACjD,aAAa;;AAEb;AACA;;AAEA;AACA,+BAA+B,wBAAwB,qCAAqC;AAC5F,+BAA+B,gBAAgB;AAC/C,SAAS;;AAET;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,CAAC;;AAED,CAAC,sEAAe,EAAE,GAAC;;;;;;;UCnmBnB;UACA;;UAEA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;;UAEA;UACA;;UAEA;UACA;UACA;;;;;WCtBA;WACA;WACA;WACA;WACA,GAAG;WACH;WACA;WACA,CAAC;;;;;UEPD;UACA;UACA;UACA","sources":["webpack://FHIR/./node_modules/abortcontroller-polyfill/dist/abortcontroller-polyfill-only.js","webpack://FHIR/./node_modules/debug/src/browser.js","webpack://FHIR/./node_modules/debug/src/common.js","webpack://FHIR/./src/Client.ts","webpack://FHIR/./src/HttpError.ts","webpack://FHIR/./src/adapters/BrowserAdapter.ts","webpack://FHIR/./src/entry/browser.ts","webpack://FHIR/./src/lib.ts","webpack://FHIR/./src/security/browser.ts","webpack://FHIR/./src/settings.ts","webpack://FHIR/./src/smart.ts","webpack://FHIR/./src/storage/BrowserStorage.ts","webpack://FHIR/./src/strings.ts","webpack://FHIR/./node_modules/core-js/internals/a-callable.js","webpack://FHIR/./node_modules/core-js/internals/a-constructor.js","webpack://FHIR/./node_modules/core-js/internals/a-possible-prototype.js","webpack://FHIR/./node_modules/core-js/internals/add-to-unscopables.js","webpack://FHIR/./node_modules/core-js/internals/advance-string-index.js","webpack://FHIR/./node_modules/core-js/internals/an-instance.js","webpack://FHIR/./node_modules/core-js/internals/an-object.js","webpack://FHIR/./node_modules/core-js/internals/array-buffer-native.js","webpack://FHIR/./node_modules/core-js/internals/array-buffer-view-core.js","webpack://FHIR/./node_modules/core-js/internals/array-buffer.js","webpack://FHIR/./node_modules/core-js/internals/array-copy-within.js","webpack://FHIR/./node_modules/core-js/internals/array-fill.js","webpack://FHIR/./node_modules/core-js/internals/array-for-each.js","webpack://FHIR/./node_modules/core-js/internals/array-from-constructor-and-list.js","webpack://FHIR/./node_modules/core-js/internals/array-from.js","webpack://FHIR/./node_modules/core-js/internals/array-includes.js","webpack://FHIR/./node_modules/core-js/internals/array-iteration.js","webpack://FHIR/./node_modules/core-js/internals/array-last-index-of.js","webpack://FHIR/./node_modules/core-js/internals/array-method-has-species-support.js","webpack://FHIR/./node_modules/core-js/internals/array-method-is-strict.js","webpack://FHIR/./node_modules/core-js/internals/array-reduce.js","webpack://FHIR/./node_modules/core-js/internals/array-slice-simple.js","webpack://FHIR/./node_modules/core-js/internals/array-slice.js","webpack://FHIR/./node_modules/core-js/internals/array-sort.js","webpack://FHIR/./node_modules/core-js/internals/array-species-constructor.js","webpack://FHIR/./node_modules/core-js/internals/array-species-create.js","webpack://FHIR/./node_modules/core-js/internals/call-with-safe-iteration-closing.js","webpack://FHIR/./node_modules/core-js/internals/check-correctness-of-iteration.js","webpack://FHIR/./node_modules/core-js/internals/classof-raw.js","webpack://FHIR/./node_modules/core-js/internals/classof.js","webpack://FHIR/./node_modules/core-js/internals/copy-constructor-properties.js","webpack://FHIR/./node_modules/core-js/internals/correct-is-regexp-logic.js","webpack://FHIR/./node_modules/core-js/internals/correct-prototype-getter.js","webpack://FHIR/./node_modules/core-js/internals/create-html.js","webpack://FHIR/./node_modules/core-js/internals/create-iterator-constructor.js","webpack://FHIR/./node_modules/core-js/internals/create-non-enumerable-property.js","webpack://FHIR/./node_modules/core-js/internals/create-property-descriptor.js","webpack://FHIR/./node_modules/core-js/internals/create-property.js","webpack://FHIR/./node_modules/core-js/internals/define-built-in-accessor.js","webpack://FHIR/./node_modules/core-js/internals/define-built-in.js","webpack://FHIR/./node_modules/core-js/internals/define-built-ins.js","webpack://FHIR/./node_modules/core-js/internals/define-global-property.js","webpack://FHIR/./node_modules/core-js/internals/define-iterator.js","webpack://FHIR/./node_modules/core-js/internals/define-well-known-symbol.js","webpack://FHIR/./node_modules/core-js/internals/delete-property-or-throw.js","webpack://FHIR/./node_modules/core-js/internals/descriptors.js","webpack://FHIR/./node_modules/core-js/internals/document-create-element.js","webpack://FHIR/./node_modules/core-js/internals/does-not-exceed-safe-integer.js","webpack://FHIR/./node_modules/core-js/internals/dom-iterables.js","webpack://FHIR/./node_modules/core-js/internals/dom-token-list-prototype.js","webpack://FHIR/./node_modules/core-js/internals/engine-ff-version.js","webpack://FHIR/./node_modules/core-js/internals/engine-is-browser.js","webpack://FHIR/./node_modules/core-js/internals/engine-is-ie-or-edge.js","webpack://FHIR/./node_modules/core-js/internals/engine-is-ios-pebble.js","webpack://FHIR/./node_modules/core-js/internals/engine-is-ios.js","webpack://FHIR/./node_modules/core-js/internals/engine-is-node.js","webpack://FHIR/./node_modules/core-js/internals/engine-is-webos-webkit.js","webpack://FHIR/./node_modules/core-js/internals/engine-user-agent.js","webpack://FHIR/./node_modules/core-js/internals/engine-v8-version.js","webpack://FHIR/./node_modules/core-js/internals/engine-webkit-version.js","webpack://FHIR/./node_modules/core-js/internals/enum-bug-keys.js","webpack://FHIR/./node_modules/core-js/internals/export.js","webpack://FHIR/./node_modules/core-js/internals/fails.js","webpack://FHIR/./node_modules/core-js/internals/fix-regexp-well-known-symbol-logic.js","webpack://FHIR/./node_modules/core-js/internals/flatten-into-array.js","webpack://FHIR/./node_modules/core-js/internals/function-apply.js","webpack://FHIR/./node_modules/core-js/internals/function-bind-context.js","webpack://FHIR/./node_modules/core-js/internals/function-bind-native.js","webpack://FHIR/./node_modules/core-js/internals/function-bind.js","webpack://FHIR/./node_modules/core-js/internals/function-call.js","webpack://FHIR/./node_modules/core-js/internals/function-name.js","webpack://FHIR/./node_modules/core-js/internals/function-uncurry-this.js","webpack://FHIR/./node_modules/core-js/internals/get-built-in.js","webpack://FHIR/./node_modules/core-js/internals/get-iterator-method.js","webpack://FHIR/./node_modules/core-js/internals/get-iterator.js","webpack://FHIR/./node_modules/core-js/internals/get-method.js","webpack://FHIR/./node_modules/core-js/internals/get-substitution.js","webpack://FHIR/./node_modules/core-js/internals/global.js","webpack://FHIR/./node_modules/core-js/internals/has-own-property.js","webpack://FHIR/./node_modules/core-js/internals/hidden-keys.js","webpack://FHIR/./node_modules/core-js/internals/host-report-errors.js","webpack://FHIR/./node_modules/core-js/internals/html.js","webpack://FHIR/./node_modules/core-js/internals/ie8-dom-define.js","webpack://FHIR/./node_modules/core-js/internals/ieee754.js","webpack://FHIR/./node_modules/core-js/internals/indexed-object.js","webpack://FHIR/./node_modules/core-js/internals/inherit-if-required.js","webpack://FHIR/./node_modules/core-js/internals/inspect-source.js","webpack://FHIR/./node_modules/core-js/internals/internal-state.js","webpack://FHIR/./node_modules/core-js/internals/is-array-iterator-method.js","webpack://FHIR/./node_modules/core-js/internals/is-array.js","webpack://FHIR/./node_modules/core-js/internals/is-callable.js","webpack://FHIR/./node_modules/core-js/internals/is-constructor.js","webpack://FHIR/./node_modules/core-js/internals/is-forced.js","webpack://FHIR/./node_modules/core-js/internals/is-integral-number.js","webpack://FHIR/./node_modules/core-js/internals/is-object.js","webpack://FHIR/./node_modules/core-js/internals/is-pure.js","webpack://FHIR/./node_modules/core-js/internals/is-regexp.js","webpack://FHIR/./node_modules/core-js/internals/is-symbol.js","webpack://FHIR/./node_modules/core-js/internals/iterate.js","webpack://FHIR/./node_modules/core-js/internals/iterator-close.js","webpack://FHIR/./node_modules/core-js/internals/iterators-core.js","webpack://FHIR/./node_modules/core-js/internals/iterators.js","webpack://FHIR/./node_modules/core-js/internals/length-of-array-like.js","webpack://FHIR/./node_modules/core-js/internals/make-built-in.js","webpack://FHIR/./node_modules/core-js/internals/math-trunc.js","webpack://FHIR/./node_modules/core-js/internals/microtask.js","webpack://FHIR/./node_modules/core-js/internals/native-symbol-registry.js","webpack://FHIR/./node_modules/core-js/internals/native-symbol.js","webpack://FHIR/./node_modules/core-js/internals/native-url.js","webpack://FHIR/./node_modules/core-js/internals/native-weak-map.js","webpack://FHIR/./node_modules/core-js/internals/new-promise-capability.js","webpack://FHIR/./node_modules/core-js/internals/not-a-regexp.js","webpack://FHIR/./node_modules/core-js/internals/object-assign.js","webpack://FHIR/./node_modules/core-js/internals/object-create.js","webpack://FHIR/./node_modules/core-js/internals/object-define-properties.js","webpack://FHIR/./node_modules/core-js/internals/object-define-property.js","webpack://FHIR/./node_modules/core-js/internals/object-get-own-property-descriptor.js","webpack://FHIR/./node_modules/core-js/internals/object-get-own-property-names-external.js","webpack://FHIR/./node_modules/core-js/internals/object-get-own-property-names.js","webpack://FHIR/./node_modules/core-js/internals/object-get-own-property-symbols.js","webpack://FHIR/./node_modules/core-js/internals/object-get-prototype-of.js","webpack://FHIR/./node_modules/core-js/internals/object-is-prototype-of.js","webpack://FHIR/./node_modules/core-js/internals/object-keys-internal.js","webpack://FHIR/./node_modules/core-js/internals/object-keys.js","webpack://FHIR/./node_modules/core-js/internals/object-property-is-enumerable.js","webpack://FHIR/./node_modules/core-js/internals/object-set-prototype-of.js","webpack://FHIR/./node_modules/core-js/internals/object-to-string.js","webpack://FHIR/./node_modules/core-js/internals/ordinary-to-primitive.js","webpack://FHIR/./node_modules/core-js/internals/own-keys.js","webpack://FHIR/./node_modules/core-js/internals/path.js","webpack://FHIR/./node_modules/core-js/internals/perform.js","webpack://FHIR/./node_modules/core-js/internals/promise-constructor-detection.js","webpack://FHIR/./node_modules/core-js/internals/promise-native-constructor.js","webpack://FHIR/./node_modules/core-js/internals/promise-resolve.js","webpack://FHIR/./node_modules/core-js/internals/promise-statics-incorrect-iteration.js","webpack://FHIR/./node_modules/core-js/internals/proxy-accessor.js","webpack://FHIR/./node_modules/core-js/internals/queue.js","webpack://FHIR/./node_modules/core-js/internals/regexp-exec-abstract.js","webpack://FHIR/./node_modules/core-js/internals/regexp-exec.js","webpack://FHIR/./node_modules/core-js/internals/regexp-flags.js","webpack://FHIR/./node_modules/core-js/internals/regexp-get-flags.js","webpack://FHIR/./node_modules/core-js/internals/regexp-sticky-helpers.js","webpack://FHIR/./node_modules/core-js/internals/regexp-unsupported-dot-all.js","webpack://FHIR/./node_modules/core-js/internals/regexp-unsupported-ncg.js","webpack://FHIR/./node_modules/core-js/internals/require-object-coercible.js","webpack://FHIR/./node_modules/core-js/internals/same-value.js","webpack://FHIR/./node_modules/core-js/internals/set-species.js","webpack://FHIR/./node_modules/core-js/internals/set-to-string-tag.js","webpack://FHIR/./node_modules/core-js/internals/shared-key.js","webpack://FHIR/./node_modules/core-js/internals/shared-store.js","webpack://FHIR/./node_modules/core-js/internals/shared.js","webpack://FHIR/./node_modules/core-js/internals/species-constructor.js","webpack://FHIR/./node_modules/core-js/internals/string-html-forced.js","webpack://FHIR/./node_modules/core-js/internals/string-multibyte.js","webpack://FHIR/./node_modules/core-js/internals/string-punycode-to-ascii.js","webpack://FHIR/./node_modules/core-js/internals/string-trim-forced.js","webpack://FHIR/./node_modules/core-js/internals/string-trim.js","webpack://FHIR/./node_modules/core-js/internals/symbol-define-to-primitive.js","webpack://FHIR/./node_modules/core-js/internals/task.js","webpack://FHIR/./node_modules/core-js/internals/this-number-value.js","webpack://FHIR/./node_modules/core-js/internals/to-absolute-index.js","webpack://FHIR/./node_modules/core-js/internals/to-big-int.js","webpack://FHIR/./node_modules/core-js/internals/to-index.js","webpack://FHIR/./node_modules/core-js/internals/to-indexed-object.js","webpack://FHIR/./node_modules/core-js/internals/to-integer-or-infinity.js","webpack://FHIR/./node_modules/core-js/internals/to-length.js","webpack://FHIR/./node_modules/core-js/internals/to-object.js","webpack://FHIR/./node_modules/core-js/internals/to-offset.js","webpack://FHIR/./node_modules/core-js/internals/to-positive-integer.js","webpack://FHIR/./node_modules/core-js/internals/to-primitive.js","webpack://FHIR/./node_modules/core-js/internals/to-property-key.js","webpack://FHIR/./node_modules/core-js/internals/to-string-tag-support.js","webpack://FHIR/./node_modules/core-js/internals/to-string.js","webpack://FHIR/./node_modules/core-js/internals/try-to-string.js","webpack://FHIR/./node_modules/core-js/internals/typed-array-constructor.js","webpack://FHIR/./node_modules/core-js/internals/typed-array-constructors-require-wrappers.js","webpack://FHIR/./node_modules/core-js/internals/typed-array-from-species-and-list.js","webpack://FHIR/./node_modules/core-js/internals/typed-array-from.js","webpack://FHIR/./node_modules/core-js/internals/typed-array-species-constructor.js","webpack://FHIR/./node_modules/core-js/internals/uid.js","webpack://FHIR/./node_modules/core-js/internals/use-symbol-as-uid.js","webpack://FHIR/./node_modules/core-js/internals/v8-prototype-define-bug.js","webpack://FHIR/./node_modules/core-js/internals/validate-arguments-length.js","webpack://FHIR/./node_modules/core-js/internals/well-known-symbol-wrapped.js","webpack://FHIR/./node_modules/core-js/internals/well-known-symbol.js","webpack://FHIR/./node_modules/core-js/internals/whitespaces.js","webpack://FHIR/./node_modules/core-js/modules/es.array.concat.js","webpack://FHIR/./node_modules/core-js/modules/es.array.filter.js","webpack://FHIR/./node_modules/core-js/modules/es.array.find.js","webpack://FHIR/./node_modules/core-js/modules/es.array.flat.js","webpack://FHIR/./node_modules/core-js/modules/es.array.includes.js","webpack://FHIR/./node_modules/core-js/modules/es.array.iterator.js","webpack://FHIR/./node_modules/core-js/modules/es.array.join.js","webpack://FHIR/./node_modules/core-js/modules/es.array.map.js","webpack://FHIR/./node_modules/core-js/modules/es.array.slice.js","webpack://FHIR/./node_modules/core-js/modules/es.array.sort.js","webpack://FHIR/./node_modules/core-js/modules/es.array.splice.js","webpack://FHIR/./node_modules/core-js/modules/es.array.unscopables.flat.js","webpack://FHIR/./node_modules/core-js/modules/es.function.name.js","webpack://FHIR/./node_modules/core-js/modules/es.global-this.js","webpack://FHIR/./node_modules/core-js/modules/es.json.stringify.js","webpack://FHIR/./node_modules/core-js/modules/es.number.constructor.js","webpack://FHIR/./node_modules/core-js/modules/es.object.assign.js","webpack://FHIR/./node_modules/core-js/modules/es.object.get-own-property-descriptor.js","webpack://FHIR/./node_modules/core-js/modules/es.object.get-own-property-descriptors.js","webpack://FHIR/./node_modules/core-js/modules/es.object.get-own-property-symbols.js","webpack://FHIR/./node_modules/core-js/modules/es.object.keys.js","webpack://FHIR/./node_modules/core-js/modules/es.object.to-string.js","webpack://FHIR/./node_modules/core-js/modules/es.promise.all.js","webpack://FHIR/./node_modules/core-js/modules/es.promise.catch.js","webpack://FHIR/./node_modules/core-js/modules/es.promise.constructor.js","webpack://FHIR/./node_modules/core-js/modules/es.promise.finally.js","webpack://FHIR/./node_modules/core-js/modules/es.promise.js","webpack://FHIR/./node_modules/core-js/modules/es.promise.race.js","webpack://FHIR/./node_modules/core-js/modules/es.promise.reject.js","webpack://FHIR/./node_modules/core-js/modules/es.promise.resolve.js","webpack://FHIR/./node_modules/core-js/modules/es.reflect.construct.js","webpack://FHIR/./node_modules/core-js/modules/es.regexp.constructor.js","webpack://FHIR/./node_modules/core-js/modules/es.regexp.exec.js","webpack://FHIR/./node_modules/core-js/modules/es.regexp.to-string.js","webpack://FHIR/./node_modules/core-js/modules/es.string.includes.js","webpack://FHIR/./node_modules/core-js/modules/es.string.iterator.js","webpack://FHIR/./node_modules/core-js/modules/es.string.link.js","webpack://FHIR/./node_modules/core-js/modules/es.string.match.js","webpack://FHIR/./node_modules/core-js/modules/es.string.replace.js","webpack://FHIR/./node_modules/core-js/modules/es.string.search.js","webpack://FHIR/./node_modules/core-js/modules/es.string.split.js","webpack://FHIR/./node_modules/core-js/modules/es.string.trim.js","webpack://FHIR/./node_modules/core-js/modules/es.symbol.constructor.js","webpack://FHIR/./node_modules/core-js/modules/es.symbol.for.js","webpack://FHIR/./node_modules/core-js/modules/es.symbol.js","webpack://FHIR/./node_modules/core-js/modules/es.symbol.key-for.js","webpack://FHIR/./node_modules/core-js/modules/es.typed-array.copy-within.js","webpack://FHIR/./node_modules/core-js/modules/es.typed-array.every.js","webpack://FHIR/./node_modules/core-js/modules/es.typed-array.fill.js","webpack://FHIR/./node_modules/core-js/modules/es.typed-array.filter.js","webpack://FHIR/./node_modules/core-js/modules/es.typed-array.find-index.js","webpack://FHIR/./node_modules/core-js/modules/es.typed-array.find.js","webpack://FHIR/./node_modules/core-js/modules/es.typed-array.for-each.js","webpack://FHIR/./node_modules/core-js/modules/es.typed-array.includes.js","webpack://FHIR/./node_modules/core-js/modules/es.typed-array.index-of.js","webpack://FHIR/./node_modules/core-js/modules/es.typed-array.iterator.js","webpack://FHIR/./node_modules/core-js/modules/es.typed-array.join.js","webpack://FHIR/./node_modules/core-js/modules/es.typed-array.last-index-of.js","webpack://FHIR/./node_modules/core-js/modules/es.typed-array.map.js","webpack://FHIR/./node_modules/core-js/modules/es.typed-array.reduce-right.js","webpack://FHIR/./node_modules/core-js/modules/es.typed-array.reduce.js","webpack://FHIR/./node_modules/core-js/modules/es.typed-array.reverse.js","webpack://FHIR/./node_modules/core-js/modules/es.typed-array.set.js","webpack://FHIR/./node_modules/core-js/modules/es.typed-array.slice.js","webpack://FHIR/./node_modules/core-js/modules/es.typed-array.some.js","webpack://FHIR/./node_modules/core-js/modules/es.typed-array.sort.js","webpack://FHIR/./node_modules/core-js/modules/es.typed-array.subarray.js","webpack://FHIR/./node_modules/core-js/modules/es.typed-array.to-locale-string.js","webpack://FHIR/./node_modules/core-js/modules/es.typed-array.to-string.js","webpack://FHIR/./node_modules/core-js/modules/es.typed-array.uint8-array.js","webpack://FHIR/./node_modules/core-js/modules/esnext.global-this.js","webpack://FHIR/./node_modules/core-js/modules/web.dom-collections.for-each.js","webpack://FHIR/./node_modules/core-js/modules/web.dom-collections.iterator.js","webpack://FHIR/./node_modules/core-js/modules/web.url-search-params.constructor.js","webpack://FHIR/./node_modules/core-js/modules/web.url-search-params.js","webpack://FHIR/./node_modules/core-js/modules/web.url.constructor.js","webpack://FHIR/./node_modules/core-js/modules/web.url.js","webpack://FHIR/./node_modules/cross-fetch/dist/browser-ponyfill.js","webpack://FHIR/./node_modules/js-base64/base64.js","webpack://FHIR/./node_modules/ms/index.js","webpack://FHIR/./node_modules/@babel/runtime/helpers/arrayLikeToArray.js","webpack://FHIR/./node_modules/@babel/runtime/helpers/arrayWithoutHoles.js","webpack://FHIR/./node_modules/@babel/runtime/helpers/assertThisInitialized.js","webpack://FHIR/./node_modules/@babel/runtime/helpers/asyncToGenerator.js","webpack://FHIR/./node_modules/@babel/runtime/helpers/classCallCheck.js","webpack://FHIR/./node_modules/@babel/runtime/helpers/construct.js","webpack://FHIR/./node_modules/@babel/runtime/helpers/createClass.js","webpack://FHIR/./node_modules/@babel/runtime/helpers/defineProperty.js","webpack://FHIR/./node_modules/@babel/runtime/helpers/getPrototypeOf.js","webpack://FHIR/./node_modules/@babel/runtime/helpers/inherits.js","webpack://FHIR/./node_modules/@babel/runtime/helpers/interopRequireDefault.js","webpack://FHIR/./node_modules/@babel/runtime/helpers/isNativeFunction.js","webpack://FHIR/./node_modules/@babel/runtime/helpers/isNativeReflectConstruct.js","webpack://FHIR/./node_modules/@babel/runtime/helpers/iterableToArray.js","webpack://FHIR/./node_modules/@babel/runtime/helpers/nonIterableSpread.js","webpack://FHIR/./node_modules/@babel/runtime/helpers/objectWithoutProperties.js","webpack://FHIR/./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js","webpack://FHIR/./node_modules/@babel/runtime/helpers/possibleConstructorReturn.js","webpack://FHIR/./node_modules/@babel/runtime/helpers/regeneratorRuntime.js","webpack://FHIR/./node_modules/@babel/runtime/helpers/setPrototypeOf.js","webpack://FHIR/./node_modules/@babel/runtime/helpers/toConsumableArray.js","webpack://FHIR/./node_modules/@babel/runtime/helpers/typeof.js","webpack://FHIR/./node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js","webpack://FHIR/./node_modules/@babel/runtime/helpers/wrapNativeSuper.js","webpack://FHIR/./node_modules/@babel/runtime/regenerator/index.js","webpack://FHIR/./node_modules/isomorphic-webcrypto/src/browser.mjs","webpack://FHIR/./node_modules/isomorphic-webcrypto/src/webcrypto-shim.mjs","webpack://FHIR/webpack/bootstrap","webpack://FHIR/webpack/runtime/global","webpack://FHIR/webpack/before-startup","webpack://FHIR/webpack/startup","webpack://FHIR/webpack/after-startup"],"sourcesContent":["(function (factory) {\n typeof define === 'function' && define.amd ? define(factory) :\n factory();\n}((function () { 'use strict';\n\n function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n }\n\n function _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n\n function _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n }\n\n function _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n if (superClass) _setPrototypeOf(subClass, superClass);\n }\n\n function _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n }\n\n function _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n\n return _setPrototypeOf(o, p);\n }\n\n function _isNativeReflectConstruct() {\n if (typeof Reflect === \"undefined\" || !Reflect.construct) return false;\n if (Reflect.construct.sham) return false;\n if (typeof Proxy === \"function\") return true;\n\n try {\n Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {}));\n return true;\n } catch (e) {\n return false;\n }\n }\n\n function _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return self;\n }\n\n function _possibleConstructorReturn(self, call) {\n if (call && (typeof call === \"object\" || typeof call === \"function\")) {\n return call;\n }\n\n return _assertThisInitialized(self);\n }\n\n function _createSuper(Derived) {\n var hasNativeReflectConstruct = _isNativeReflectConstruct();\n\n return function _createSuperInternal() {\n var Super = _getPrototypeOf(Derived),\n result;\n\n if (hasNativeReflectConstruct) {\n var NewTarget = _getPrototypeOf(this).constructor;\n\n result = Reflect.construct(Super, arguments, NewTarget);\n } else {\n result = Super.apply(this, arguments);\n }\n\n return _possibleConstructorReturn(this, result);\n };\n }\n\n function _superPropBase(object, property) {\n while (!Object.prototype.hasOwnProperty.call(object, property)) {\n object = _getPrototypeOf(object);\n if (object === null) break;\n }\n\n return object;\n }\n\n function _get(target, property, receiver) {\n if (typeof Reflect !== \"undefined\" && Reflect.get) {\n _get = Reflect.get;\n } else {\n _get = function _get(target, property, receiver) {\n var base = _superPropBase(target, property);\n\n if (!base) return;\n var desc = Object.getOwnPropertyDescriptor(base, property);\n\n if (desc.get) {\n return desc.get.call(receiver);\n }\n\n return desc.value;\n };\n }\n\n return _get(target, property, receiver || target);\n }\n\n var Emitter = /*#__PURE__*/function () {\n function Emitter() {\n _classCallCheck(this, Emitter);\n\n Object.defineProperty(this, 'listeners', {\n value: {},\n writable: true,\n configurable: true\n });\n }\n\n _createClass(Emitter, [{\n key: \"addEventListener\",\n value: function addEventListener(type, callback, options) {\n if (!(type in this.listeners)) {\n this.listeners[type] = [];\n }\n\n this.listeners[type].push({\n callback: callback,\n options: options\n });\n }\n }, {\n key: \"removeEventListener\",\n value: function removeEventListener(type, callback) {\n if (!(type in this.listeners)) {\n return;\n }\n\n var stack = this.listeners[type];\n\n for (var i = 0, l = stack.length; i < l; i++) {\n if (stack[i].callback === callback) {\n stack.splice(i, 1);\n return;\n }\n }\n }\n }, {\n key: \"dispatchEvent\",\n value: function dispatchEvent(event) {\n if (!(event.type in this.listeners)) {\n return;\n }\n\n var stack = this.listeners[event.type];\n var stackToCall = stack.slice();\n\n for (var i = 0, l = stackToCall.length; i < l; i++) {\n var listener = stackToCall[i];\n\n try {\n listener.callback.call(this, event);\n } catch (e) {\n Promise.resolve().then(function () {\n throw e;\n });\n }\n\n if (listener.options && listener.options.once) {\n this.removeEventListener(event.type, listener.callback);\n }\n }\n\n return !event.defaultPrevented;\n }\n }]);\n\n return Emitter;\n }();\n\n var AbortSignal = /*#__PURE__*/function (_Emitter) {\n _inherits(AbortSignal, _Emitter);\n\n var _super = _createSuper(AbortSignal);\n\n function AbortSignal() {\n var _this;\n\n _classCallCheck(this, AbortSignal);\n\n _this = _super.call(this); // Some versions of babel does not transpile super() correctly for IE <= 10, if the parent\n // constructor has failed to run, then \"this.listeners\" will still be undefined and then we call\n // the parent constructor directly instead as a workaround. For general details, see babel bug:\n // https://github.com/babel/babel/issues/3041\n // This hack was added as a fix for the issue described here:\n // https://github.com/Financial-Times/polyfill-library/pull/59#issuecomment-477558042\n\n if (!_this.listeners) {\n Emitter.call(_assertThisInitialized(_this));\n } // Compared to assignment, Object.defineProperty makes properties non-enumerable by default and\n // we want Object.keys(new AbortController().signal) to be [] for compat with the native impl\n\n\n Object.defineProperty(_assertThisInitialized(_this), 'aborted', {\n value: false,\n writable: true,\n configurable: true\n });\n Object.defineProperty(_assertThisInitialized(_this), 'onabort', {\n value: null,\n writable: true,\n configurable: true\n });\n return _this;\n }\n\n _createClass(AbortSignal, [{\n key: \"toString\",\n value: function toString() {\n return '[object AbortSignal]';\n }\n }, {\n key: \"dispatchEvent\",\n value: function dispatchEvent(event) {\n if (event.type === 'abort') {\n this.aborted = true;\n\n if (typeof this.onabort === 'function') {\n this.onabort.call(this, event);\n }\n }\n\n _get(_getPrototypeOf(AbortSignal.prototype), \"dispatchEvent\", this).call(this, event);\n }\n }]);\n\n return AbortSignal;\n }(Emitter);\n var AbortController = /*#__PURE__*/function () {\n function AbortController() {\n _classCallCheck(this, AbortController);\n\n // Compared to assignment, Object.defineProperty makes properties non-enumerable by default and\n // we want Object.keys(new AbortController()) to be [] for compat with the native impl\n Object.defineProperty(this, 'signal', {\n value: new AbortSignal(),\n writable: true,\n configurable: true\n });\n }\n\n _createClass(AbortController, [{\n key: \"abort\",\n value: function abort() {\n var event;\n\n try {\n event = new Event('abort');\n } catch (e) {\n if (typeof document !== 'undefined') {\n if (!document.createEvent) {\n // For Internet Explorer 8:\n event = document.createEventObject();\n event.type = 'abort';\n } else {\n // For Internet Explorer 11:\n event = document.createEvent('Event');\n event.initEvent('abort', false, false);\n }\n } else {\n // Fallback where document isn't available:\n event = {\n type: 'abort',\n bubbles: false,\n cancelable: false\n };\n }\n }\n\n this.signal.dispatchEvent(event);\n }\n }, {\n key: \"toString\",\n value: function toString() {\n return '[object AbortController]';\n }\n }]);\n\n return AbortController;\n }();\n\n if (typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n // These are necessary to make sure that we get correct output for:\n // Object.prototype.toString.call(new AbortController())\n AbortController.prototype[Symbol.toStringTag] = 'AbortController';\n AbortSignal.prototype[Symbol.toStringTag] = 'AbortSignal';\n }\n\n function polyfillNeeded(self) {\n if (self.__FORCE_INSTALL_ABORTCONTROLLER_POLYFILL) {\n console.log('__FORCE_INSTALL_ABORTCONTROLLER_POLYFILL=true is set, will force install polyfill');\n return true;\n } // Note that the \"unfetch\" minimal fetch polyfill defines fetch() without\n // defining window.Request, and this polyfill need to work on top of unfetch\n // so the below feature detection needs the !self.AbortController part.\n // The Request.prototype check is also needed because Safari versions 11.1.2\n // up to and including 12.1.x has a window.AbortController present but still\n // does NOT correctly implement abortable fetch:\n // https://bugs.webkit.org/show_bug.cgi?id=174980#c2\n\n\n return typeof self.Request === 'function' && !self.Request.prototype.hasOwnProperty('signal') || !self.AbortController;\n }\n\n (function (self) {\n\n if (!polyfillNeeded(self)) {\n return;\n }\n\n self.AbortController = AbortController;\n self.AbortSignal = AbortSignal;\n })(typeof self !== 'undefined' ? self : global);\n\n})));\n","/* eslint-env browser */\n\n/**\n * This is the web browser implementation of `debug()`.\n */\n\nexports.formatArgs = formatArgs;\nexports.save = save;\nexports.load = load;\nexports.useColors = useColors;\nexports.storage = localstorage();\nexports.destroy = (() => {\n\tlet warned = false;\n\n\treturn () => {\n\t\tif (!warned) {\n\t\t\twarned = true;\n\t\t\tconsole.warn('Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.');\n\t\t}\n\t};\n})();\n\n/**\n * Colors.\n */\n\nexports.colors = [\n\t'#0000CC',\n\t'#0000FF',\n\t'#0033CC',\n\t'#0033FF',\n\t'#0066CC',\n\t'#0066FF',\n\t'#0099CC',\n\t'#0099FF',\n\t'#00CC00',\n\t'#00CC33',\n\t'#00CC66',\n\t'#00CC99',\n\t'#00CCCC',\n\t'#00CCFF',\n\t'#3300CC',\n\t'#3300FF',\n\t'#3333CC',\n\t'#3333FF',\n\t'#3366CC',\n\t'#3366FF',\n\t'#3399CC',\n\t'#3399FF',\n\t'#33CC00',\n\t'#33CC33',\n\t'#33CC66',\n\t'#33CC99',\n\t'#33CCCC',\n\t'#33CCFF',\n\t'#6600CC',\n\t'#6600FF',\n\t'#6633CC',\n\t'#6633FF',\n\t'#66CC00',\n\t'#66CC33',\n\t'#9900CC',\n\t'#9900FF',\n\t'#9933CC',\n\t'#9933FF',\n\t'#99CC00',\n\t'#99CC33',\n\t'#CC0000',\n\t'#CC0033',\n\t'#CC0066',\n\t'#CC0099',\n\t'#CC00CC',\n\t'#CC00FF',\n\t'#CC3300',\n\t'#CC3333',\n\t'#CC3366',\n\t'#CC3399',\n\t'#CC33CC',\n\t'#CC33FF',\n\t'#CC6600',\n\t'#CC6633',\n\t'#CC9900',\n\t'#CC9933',\n\t'#CCCC00',\n\t'#CCCC33',\n\t'#FF0000',\n\t'#FF0033',\n\t'#FF0066',\n\t'#FF0099',\n\t'#FF00CC',\n\t'#FF00FF',\n\t'#FF3300',\n\t'#FF3333',\n\t'#FF3366',\n\t'#FF3399',\n\t'#FF33CC',\n\t'#FF33FF',\n\t'#FF6600',\n\t'#FF6633',\n\t'#FF9900',\n\t'#FF9933',\n\t'#FFCC00',\n\t'#FFCC33'\n];\n\n/**\n * Currently only WebKit-based Web Inspectors, Firefox >= v31,\n * and the Firebug extension (any Firefox version) are known\n * to support \"%c\" CSS customizations.\n *\n * TODO: add a `localStorage` variable to explicitly enable/disable colors\n */\n\n// eslint-disable-next-line complexity\nfunction useColors() {\n\t// NB: In an Electron preload script, document will be defined but not fully\n\t// initialized. Since we know we're in Chrome, we'll just detect this case\n\t// explicitly\n\tif (typeof window !== 'undefined' && window.process && (window.process.type === 'renderer' || window.process.__nwjs)) {\n\t\treturn true;\n\t}\n\n\t// Internet Explorer and Edge do not support colors.\n\tif (typeof navigator !== 'undefined' && navigator.userAgent && navigator.userAgent.toLowerCase().match(/(edge|trident)\\/(\\d+)/)) {\n\t\treturn false;\n\t}\n\n\t// Is webkit? http://stackoverflow.com/a/16459606/376773\n\t// document is undefined in react-native: https://github.com/facebook/react-native/pull/1632\n\treturn (typeof document !== 'undefined' && document.documentElement && document.documentElement.style && document.documentElement.style.WebkitAppearance) ||\n\t\t// Is firebug? http://stackoverflow.com/a/398120/376773\n\t\t(typeof window !== 'undefined' && window.console && (window.console.firebug || (window.console.exception && window.console.table))) ||\n\t\t// Is firefox >= v31?\n\t\t// https://developer.mozilla.org/en-US/docs/Tools/Web_Console#Styling_messages\n\t\t(typeof navigator !== 'undefined' && navigator.userAgent && navigator.userAgent.toLowerCase().match(/firefox\\/(\\d+)/) && parseInt(RegExp.$1, 10) >= 31) ||\n\t\t// Double check webkit in userAgent just in case we are in a worker\n\t\t(typeof navigator !== 'undefined' && navigator.userAgent && navigator.userAgent.toLowerCase().match(/applewebkit\\/(\\d+)/));\n}\n\n/**\n * Colorize log arguments if enabled.\n *\n * @api public\n */\n\nfunction formatArgs(args) {\n\targs[0] = (this.useColors ? '%c' : '') +\n\t\tthis.namespace +\n\t\t(this.useColors ? ' %c' : ' ') +\n\t\targs[0] +\n\t\t(this.useColors ? '%c ' : ' ') +\n\t\t'+' + module.exports.humanize(this.diff);\n\n\tif (!this.useColors) {\n\t\treturn;\n\t}\n\n\tconst c = 'color: ' + this.color;\n\targs.splice(1, 0, c, 'color: inherit');\n\n\t// The final \"%c\" is somewhat tricky, because there could be other\n\t// arguments passed either before or after the %c, so we need to\n\t// figure out the correct index to insert the CSS into\n\tlet index = 0;\n\tlet lastC = 0;\n\targs[0].replace(/%[a-zA-Z%]/g, match => {\n\t\tif (match === '%%') {\n\t\t\treturn;\n\t\t}\n\t\tindex++;\n\t\tif (match === '%c') {\n\t\t\t// We only are interested in the *last* %c\n\t\t\t// (the user may have provided their own)\n\t\t\tlastC = index;\n\t\t}\n\t});\n\n\targs.splice(lastC, 0, c);\n}\n\n/**\n * Invokes `console.debug()` when available.\n * No-op when `console.debug` is not a \"function\".\n * If `console.debug` is not available, falls back\n * to `console.log`.\n *\n * @api public\n */\nexports.log = console.debug || console.log || (() => {});\n\n/**\n * Save `namespaces`.\n *\n * @param {String} namespaces\n * @api private\n */\nfunction save(namespaces) {\n\ttry {\n\t\tif (namespaces) {\n\t\t\texports.storage.setItem('debug', namespaces);\n\t\t} else {\n\t\t\texports.storage.removeItem('debug');\n\t\t}\n\t} catch (error) {\n\t\t// Swallow\n\t\t// XXX (@Qix-) should we be logging these?\n\t}\n}\n\n/**\n * Load `namespaces`.\n *\n * @return {String} returns the previously persisted debug modes\n * @api private\n */\nfunction load() {\n\tlet r;\n\ttry {\n\t\tr = exports.storage.getItem('debug');\n\t} catch (error) {\n\t\t// Swallow\n\t\t// XXX (@Qix-) should we be logging these?\n\t}\n\n\t// If debug isn't set in LS, and we're in Electron, try to load $DEBUG\n\tif (!r && typeof process !== 'undefined' && 'env' in process) {\n\t\tr = process.env.DEBUG;\n\t}\n\n\treturn r;\n}\n\n/**\n * Localstorage attempts to return the localstorage.\n *\n * This is necessary because safari throws\n * when a user disables cookies/localstorage\n * and you attempt to access it.\n *\n * @return {LocalStorage}\n * @api private\n */\n\nfunction localstorage() {\n\ttry {\n\t\t// TVMLKit (Apple TV JS Runtime) does not have a window object, just localStorage in the global context\n\t\t// The Browser also has localStorage in the global context.\n\t\treturn localStorage;\n\t} catch (error) {\n\t\t// Swallow\n\t\t// XXX (@Qix-) should we be logging these?\n\t}\n}\n\nmodule.exports = require('./common')(exports);\n\nconst {formatters} = module.exports;\n\n/**\n * Map %j to `JSON.stringify()`, since no Web Inspectors do that by default.\n */\n\nformatters.j = function (v) {\n\ttry {\n\t\treturn JSON.stringify(v);\n\t} catch (error) {\n\t\treturn '[UnexpectedJSONParseError]: ' + error.message;\n\t}\n};\n","\n/**\n * This is the common logic for both the Node.js and web browser\n * implementations of `debug()`.\n */\n\nfunction setup(env) {\n\tcreateDebug.debug = createDebug;\n\tcreateDebug.default = createDebug;\n\tcreateDebug.coerce = coerce;\n\tcreateDebug.disable = disable;\n\tcreateDebug.enable = enable;\n\tcreateDebug.enabled = enabled;\n\tcreateDebug.humanize = require('ms');\n\tcreateDebug.destroy = destroy;\n\n\tObject.keys(env).forEach(key => {\n\t\tcreateDebug[key] = env[key];\n\t});\n\n\t/**\n\t* The currently active debug mode names, and names to skip.\n\t*/\n\n\tcreateDebug.names = [];\n\tcreateDebug.skips = [];\n\n\t/**\n\t* Map of special \"%n\" handling functions, for the debug \"format\" argument.\n\t*\n\t* Valid key names are a single, lower or upper-case letter, i.e. \"n\" and \"N\".\n\t*/\n\tcreateDebug.formatters = {};\n\n\t/**\n\t* Selects a color for a debug namespace\n\t* @param {String} namespace The namespace string for the debug instance to be colored\n\t* @return {Number|String} An ANSI color code for the given namespace\n\t* @api private\n\t*/\n\tfunction selectColor(namespace) {\n\t\tlet hash = 0;\n\n\t\tfor (let i = 0; i < namespace.length; i++) {\n\t\t\thash = ((hash << 5) - hash) + namespace.charCodeAt(i);\n\t\t\thash |= 0; // Convert to 32bit integer\n\t\t}\n\n\t\treturn createDebug.colors[Math.abs(hash) % createDebug.colors.length];\n\t}\n\tcreateDebug.selectColor = selectColor;\n\n\t/**\n\t* Create a debugger with the given `namespace`.\n\t*\n\t* @param {String} namespace\n\t* @return {Function}\n\t* @api public\n\t*/\n\tfunction createDebug(namespace) {\n\t\tlet prevTime;\n\t\tlet enableOverride = null;\n\t\tlet namespacesCache;\n\t\tlet enabledCache;\n\n\t\tfunction debug(...args) {\n\t\t\t// Disabled?\n\t\t\tif (!debug.enabled) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst self = debug;\n\n\t\t\t// Set `diff` timestamp\n\t\t\tconst curr = Number(new Date());\n\t\t\tconst ms = curr - (prevTime || curr);\n\t\t\tself.diff = ms;\n\t\t\tself.prev = prevTime;\n\t\t\tself.curr = curr;\n\t\t\tprevTime = curr;\n\n\t\t\targs[0] = createDebug.coerce(args[0]);\n\n\t\t\tif (typeof args[0] !== 'string') {\n\t\t\t\t// Anything else let's inspect with %O\n\t\t\t\targs.unshift('%O');\n\t\t\t}\n\n\t\t\t// Apply any `formatters` transformations\n\t\t\tlet index = 0;\n\t\t\targs[0] = args[0].replace(/%([a-zA-Z%])/g, (match, format) => {\n\t\t\t\t// If we encounter an escaped % then don't increase the array index\n\t\t\t\tif (match === '%%') {\n\t\t\t\t\treturn '%';\n\t\t\t\t}\n\t\t\t\tindex++;\n\t\t\t\tconst formatter = createDebug.formatters[format];\n\t\t\t\tif (typeof formatter === 'function') {\n\t\t\t\t\tconst val = args[index];\n\t\t\t\t\tmatch = formatter.call(self, val);\n\n\t\t\t\t\t// Now we need to remove `args[index]` since it's inlined in the `format`\n\t\t\t\t\targs.splice(index, 1);\n\t\t\t\t\tindex--;\n\t\t\t\t}\n\t\t\t\treturn match;\n\t\t\t});\n\n\t\t\t// Apply env-specific formatting (colors, etc.)\n\t\t\tcreateDebug.formatArgs.call(self, args);\n\n\t\t\tconst logFn = self.log || createDebug.log;\n\t\t\tlogFn.apply(self, args);\n\t\t}\n\n\t\tdebug.namespace = namespace;\n\t\tdebug.useColors = createDebug.useColors();\n\t\tdebug.color = createDebug.selectColor(namespace);\n\t\tdebug.extend = extend;\n\t\tdebug.destroy = createDebug.destroy; // XXX Temporary. Will be removed in the next major release.\n\n\t\tObject.defineProperty(debug, 'enabled', {\n\t\t\tenumerable: true,\n\t\t\tconfigurable: false,\n\t\t\tget: () => {\n\t\t\t\tif (enableOverride !== null) {\n\t\t\t\t\treturn enableOverride;\n\t\t\t\t}\n\t\t\t\tif (namespacesCache !== createDebug.namespaces) {\n\t\t\t\t\tnamespacesCache = createDebug.namespaces;\n\t\t\t\t\tenabledCache = createDebug.enabled(namespace);\n\t\t\t\t}\n\n\t\t\t\treturn enabledCache;\n\t\t\t},\n\t\t\tset: v => {\n\t\t\t\tenableOverride = v;\n\t\t\t}\n\t\t});\n\n\t\t// Env-specific initialization logic for debug instances\n\t\tif (typeof createDebug.init === 'function') {\n\t\t\tcreateDebug.init(debug);\n\t\t}\n\n\t\treturn debug;\n\t}\n\n\tfunction extend(namespace, delimiter) {\n\t\tconst newDebug = createDebug(this.namespace + (typeof delimiter === 'undefined' ? ':' : delimiter) + namespace);\n\t\tnewDebug.log = this.log;\n\t\treturn newDebug;\n\t}\n\n\t/**\n\t* Enables a debug mode by namespaces. This can include modes\n\t* separated by a colon and wildcards.\n\t*\n\t* @param {String} namespaces\n\t* @api public\n\t*/\n\tfunction enable(namespaces) {\n\t\tcreateDebug.save(namespaces);\n\t\tcreateDebug.namespaces = namespaces;\n\n\t\tcreateDebug.names = [];\n\t\tcreateDebug.skips = [];\n\n\t\tlet i;\n\t\tconst split = (typeof namespaces === 'string' ? namespaces : '').split(/[\\s,]+/);\n\t\tconst len = split.length;\n\n\t\tfor (i = 0; i < len; i++) {\n\t\t\tif (!split[i]) {\n\t\t\t\t// ignore empty strings\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\tnamespaces = split[i].replace(/\\*/g, '.*?');\n\n\t\t\tif (namespaces[0] === '-') {\n\t\t\t\tcreateDebug.skips.push(new RegExp('^' + namespaces.slice(1) + '$'));\n\t\t\t} else {\n\t\t\t\tcreateDebug.names.push(new RegExp('^' + namespaces + '$'));\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t* Disable debug output.\n\t*\n\t* @return {String} namespaces\n\t* @api public\n\t*/\n\tfunction disable() {\n\t\tconst namespaces = [\n\t\t\t...createDebug.names.map(toNamespace),\n\t\t\t...createDebug.skips.map(toNamespace).map(namespace => '-' + namespace)\n\t\t].join(',');\n\t\tcreateDebug.enable('');\n\t\treturn namespaces;\n\t}\n\n\t/**\n\t* Returns true if the given mode name is enabled, false otherwise.\n\t*\n\t* @param {String} name\n\t* @return {Boolean}\n\t* @api public\n\t*/\n\tfunction enabled(name) {\n\t\tif (name[name.length - 1] === '*') {\n\t\t\treturn true;\n\t\t}\n\n\t\tlet i;\n\t\tlet len;\n\n\t\tfor (i = 0, len = createDebug.skips.length; i < len; i++) {\n\t\t\tif (createDebug.skips[i].test(name)) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\n\t\tfor (i = 0, len = createDebug.names.length; i < len; i++) {\n\t\t\tif (createDebug.names[i].test(name)) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\n\t\treturn false;\n\t}\n\n\t/**\n\t* Convert regexp to namespace\n\t*\n\t* @param {RegExp} regxep\n\t* @return {String} namespace\n\t* @api private\n\t*/\n\tfunction toNamespace(regexp) {\n\t\treturn regexp.toString()\n\t\t\t.substring(2, regexp.toString().length - 2)\n\t\t\t.replace(/\\.\\*\\?$/, '*');\n\t}\n\n\t/**\n\t* Coerce `val`.\n\t*\n\t* @param {Mixed} val\n\t* @return {Mixed}\n\t* @api private\n\t*/\n\tfunction coerce(val) {\n\t\tif (val instanceof Error) {\n\t\t\treturn val.stack || val.message;\n\t\t}\n\t\treturn val;\n\t}\n\n\t/**\n\t* XXX DO NOT USE. This is a temporary stub function.\n\t* XXX It WILL be removed in the next major release.\n\t*/\n\tfunction destroy() {\n\t\tconsole.warn('Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.');\n\t}\n\n\tcreateDebug.enable(createDebug.load());\n\n\treturn createDebug;\n}\n\nmodule.exports = setup;\n","import {\n absolute,\n debug as _debug,\n getPath,\n setPath,\n jwtDecode,\n makeArray,\n request,\n byCode,\n byCodes,\n units,\n getPatientParam,\n fetchConformanceStatement,\n getAccessTokenExpiration,\n assertJsonPatch,\n assert\n} from \"./lib\";\n\nimport str from \"./strings\";\nimport { SMART_KEY, patientCompartment, fhirVersions } from \"./settings\";\nimport HttpError from \"./HttpError\";\nimport BrowserAdapter from \"./adapters/BrowserAdapter\";\nimport { fhirclient } from \"./types\";\n\n// $lab:coverage:off$\n// @ts-ignore\nconst { Response } = typeof FHIRCLIENT_PURE !== \"undefined\" ? window : require(\"cross-fetch\");\n// $lab:coverage:on$\n\nconst debug = _debug.extend(\"client\");\n\n/**\n * Adds patient context to requestOptions object to be used with [[Client.request]]\n * @param requestOptions Can be a string URL (relative to the serviceUrl), or an\n * object which will be passed to fetch()\n * @param client Current FHIR client object containing patient context\n * @return requestOptions object contextualized to current patient\n */\nasync function contextualize(\n requestOptions: string | URL | fhirclient.RequestOptions,\n client: Client\n): Promise\n{\n const base = absolute(\"/\", client.state.serverUrl);\n\n async function contextualURL(_url: URL) {\n const resourceType = _url.pathname.split(\"/\").pop();\n assert(resourceType, `Invalid url \"${_url}\"`);\n assert(patientCompartment.indexOf(resourceType) > -1, `Cannot filter \"${resourceType}\" resources by patient`);\n const conformance = await fetchConformanceStatement(client.state.serverUrl);\n const searchParam = getPatientParam(conformance, resourceType);\n _url.searchParams.set(searchParam, client.patient.id as string);\n return _url.href;\n }\n\n if (typeof requestOptions == \"string\" || requestOptions instanceof URL) {\n return { url: await contextualURL(new URL(requestOptions + \"\", base)) };\n }\n\n requestOptions.url = await contextualURL(new URL(requestOptions.url + \"\", base));\n return requestOptions;\n}\n\n/**\n * Gets single reference by id. Caches the result.\n * @param refId\n * @param cache A map to store the resolved refs\n * @param client The client instance\n * @param [signal] The `AbortSignal` if any\n * @returns The resolved reference\n * @private\n */\nfunction getRef(\n refId: string,\n cache: Record,\n client: Client,\n signal?: AbortSignal\n): Promise {\n if (!cache[refId]) {\n\n // Note that we set cache[refId] immediately! When the promise is\n // settled it will be updated. This is to avoid a ref being fetched\n // twice because some of these requests are executed in parallel.\n cache[refId] = client.request({\n url: refId,\n signal\n }).then(res => {\n cache[refId] = res;\n return res;\n }, (error: Error) => {\n delete cache[refId];\n throw error;\n });\n }\n\n return Promise.resolve(cache[refId]);\n}\n\n/**\n * Resolves a reference in the given resource.\n * @param obj FHIR Resource\n */\nfunction resolveRef(\n obj: fhirclient.FHIR.Resource,\n path: string,\n graph: boolean,\n cache: fhirclient.JsonObject,\n client: Client,\n signal?: AbortSignal\n) {\n const node = getPath(obj, path);\n if (node) {\n const isArray = Array.isArray(node);\n return Promise.all(makeArray(node).filter(Boolean).map((item, i) => {\n const ref = item.reference;\n if (ref) {\n return getRef(ref, cache, client, signal).then(sub => {\n if (graph) {\n if (isArray) {\n if (path.indexOf(\"..\") > -1) {\n setPath(obj, `${path.replace(\"..\", `.${i}.`)}`, sub); \n } else {\n setPath(obj, `${path}.${i}`, sub);\n }\n } else {\n setPath(obj, path, sub);\n }\n }\n }).catch((ex) => {\n /* ignore missing references */\n if (ex.status !== 404) {\n throw ex;\n }\n });\n }\n }));\n }\n}\n\n/**\n * Given a resource and a list of ref paths - resolves them all\n * @param obj FHIR Resource\n * @param fhirOptions The fhir options of the initiating request call\n * @param cache A map to store fetched refs\n * @param client The client instance\n * @private\n */\nfunction resolveRefs(\n obj: fhirclient.FHIR.Resource,\n fhirOptions: fhirclient.FhirOptions,\n cache: fhirclient.JsonObject,\n client: Client,\n signal?: AbortSignal\n) {\n\n // 1. Sanitize paths, remove any invalid ones\n let paths = makeArray(fhirOptions.resolveReferences)\n .filter(Boolean) // No false, 0, null, undefined or \"\"\n .map(path => String(path).trim())\n .filter(Boolean); // No space-only strings\n\n // 2. Remove duplicates\n paths = paths.filter((p, i) => {\n const index = paths.indexOf(p, i + 1);\n if (index > -1) {\n debug(\"Duplicated reference path \\\"%s\\\"\", p);\n return false;\n }\n return true;\n });\n\n // 3. Early exit if no valid paths are found\n if (!paths.length) {\n return Promise.resolve();\n }\n\n // 4. Group the paths by depth so that child refs are looked up\n // after their parents!\n const groups: Record = {};\n paths.forEach(path => {\n const len = path.split(\".\").length;\n if (!groups[len]) {\n groups[len] = [];\n }\n groups[len].push(path);\n });\n\n // 5. Execute groups sequentially! Paths within same group are\n // fetched in parallel!\n let task: Promise = Promise.resolve();\n Object.keys(groups).sort().forEach(len => {\n const group = groups[len];\n task = task.then(() => Promise.all(group.map((path: string) => {\n return resolveRef(obj, path, !!fhirOptions.graph, cache, client, signal);\n })));\n });\n return task;\n}\n\n/**\n * This is a FHIR client that is returned to you from the `ready()` call of the\n * **SMART API**. You can also create it yourself if needed:\n *\n * ```js\n * // BROWSER\n * const client = FHIR.client(\"https://r4.smarthealthit.org\");\n *\n * // SERVER\n * const client = smart(req, res).client(\"https://r4.smarthealthit.org\");\n * ```\n */\nexport default class Client\n{\n /**\n * The state of the client instance is an object with various properties.\n * It contains some details about how the client has been authorized and\n * determines the behavior of the client instance. This state is persisted\n * in `SessionStorage` in browsers or in request session on the servers.\n */\n readonly state: fhirclient.ClientState;\n\n /**\n * The adapter to use to connect to the current environment. Currently we have:\n * - BrowserAdapter - for browsers\n * - NodeAdapter - for Express or vanilla NodeJS servers\n * - HapiAdapter - for HAPI NodeJS servers\n */\n readonly environment: fhirclient.Adapter;\n\n /**\n * A SMART app is typically associated with a patient. This is a namespace\n * for the patient-related functionality of the client.\n */\n readonly patient: {\n\n /**\n * The ID of the current patient or `null` if there is no current patient\n */\n id: string | null\n\n /**\n * A method to fetch the current patient resource from the FHIR server.\n * If there is no patient context, it will reject with an error.\n * @param {fhirclient.FetchOptions} [requestOptions] Any options to pass to the `fetch` call.\n * @category Request\n */\n read: fhirclient.RequestFunction\n \n /**\n * This is similar to [[request]] but it makes requests in the\n * context of the current patient. For example, instead of doing\n * ```js\n * client.request(\"Observation?patient=\" + client.patient.id)\n * ```\n * you can do\n * ```js\n * client.patient.request(\"Observation\")\n * ```\n * The return type depends on the arguments. Typically it will be the\n * response payload JSON object. Can also be a string or the `Response`\n * object itself if we have received a non-json result, which allows us\n * to handle even binary responses. Can also be a [[CombinedFetchResult]]\n * object if the `requestOptions.includeResponse`s has been set to true.\n * @category Request\n */\n request: (\n requestOptions: string|URL|fhirclient.RequestOptions,\n fhirOptions?: fhirclient.FhirOptions\n ) => Promise\n\n /**\n * This is the FhirJS Patient API. It will ONLY exist if the `Client`\n * instance is \"connected\" to FhirJS.\n */\n api?: Record\n };\n\n /**\n * The client may be associated with a specific encounter, if the scopes\n * permit that and if the back-end server supports that. This is a namespace\n * for encounter-related functionality.\n */\n readonly encounter: {\n\n /**\n * The ID of the current encounter or `null` if there is no current\n * encounter\n */\n id: string | null\n\n /**\n * A method to fetch the current encounter resource from the FHIR server.\n * If there is no encounter context, it will reject with an error.\n * @param [requestOptions] Any options to pass to the `fetch` call.\n * @category Request\n */\n read: fhirclient.RequestFunction\n };\n\n /**\n * The client may be associated with a specific user, if the scopes\n * permit that. This is a namespace for user-related functionality.\n */\n readonly user: {\n\n /**\n * The ID of the current user or `null` if there is no current user\n */\n id: string | null\n\n /**\n * A method to fetch the current user resource from the FHIR server.\n * If there is no user context, it will reject with an error.\n * @param [requestOptions] Any options to pass to the `fetch` call.\n * @category Request\n */\n read: fhirclient.RequestFunction<\n fhirclient.FHIR.Patient |\n fhirclient.FHIR.Practitioner |\n fhirclient.FHIR.RelatedPerson\n >\n\n /**\n * Returns the profile of the logged_in user (if any), or null if the\n * user is not available. This is a string having the shape\n * `{user type}/{user id}`. For example `Practitioner/abc` or\n * `Patient/xyz`.\n * @alias client.getFhirUser()\n */\n fhirUser: string | null\n\n /**\n * Returns the type of the logged-in user or null. The result can be\n * `Practitioner`, `Patient` or `RelatedPerson`.\n * @alias client.getUserType()\n */\n resourceType: string | null\n };\n\n /**\n * The [FhirJS](https://github.com/FHIR/fhir.js/blob/master/README.md) API.\n * **NOTE:** This will only be available if `fhir.js` is used. Otherwise it\n * will be `undefined`.\n */\n api: Record | undefined;\n\n /**\n * Refers to the refresh task while it is being performed.\n * @see [[refresh]]\n */\n private _refreshTask: Promise | null;\n\n /**\n * Validates the parameters, creates an instance and tries to connect it to\n * FhirJS, if one is available globally.\n */\n constructor(environment: fhirclient.Adapter, state: fhirclient.ClientState | string)\n {\n const _state = typeof state == \"string\" ? { serverUrl: state } : state;\n\n // Valid serverUrl is required!\n assert(\n _state.serverUrl && _state.serverUrl.match(/https?:\\/\\/.+/),\n \"A \\\"serverUrl\\\" option is required and must begin with \\\"http(s)\\\"\"\n );\n\n this.state = _state;\n this.environment = environment;\n this._refreshTask = null;\n\n const client = this;\n\n // patient api ---------------------------------------------------------\n this.patient = {\n get id() { return client.getPatientId(); },\n read: (requestOptions) => {\n const id = this.patient.id;\n return id ?\n this.request({ ...requestOptions, url: `Patient/${id}` }) :\n Promise.reject(new Error(\"Patient is not available\"));\n },\n request: (requestOptions, fhirOptions = {}) => {\n if (this.patient.id) {\n return (async () => {\n const options = await contextualize(requestOptions, this);\n return this.request(options, fhirOptions);\n })();\n } else {\n return Promise.reject(new Error(\"Patient is not available\"));\n }\n }\n };\n\n // encounter api -------------------------------------------------------\n this.encounter = {\n get id() { return client.getEncounterId(); },\n read: requestOptions => {\n const id = this.encounter.id;\n return id ?\n this.request({ ...requestOptions, url: `Encounter/${id}` }) :\n Promise.reject(new Error(\"Encounter is not available\"));\n }\n };\n\n // user api ------------------------------------------------------------\n this.user = {\n get fhirUser() { return client.getFhirUser(); },\n get id() { return client.getUserId(); },\n get resourceType() { return client.getUserType(); },\n read: requestOptions => {\n const fhirUser = this.user.fhirUser;\n return fhirUser ?\n this.request({ ...requestOptions, url: fhirUser }) :\n Promise.reject(new Error(\"User is not available\"));\n }\n };\n\n // fhir.js api (attached automatically in browser)\n // ---------------------------------------------------------------------\n this.connect((environment as BrowserAdapter).fhir);\n }\n\n /**\n * This method is used to make the \"link\" between the `fhirclient` and the\n * `fhir.js`, if one is available.\n * **Note:** This is called by the constructor. If fhir.js is available in\n * the global scope as `fhir`, it will automatically be linked to any [[Client]]\n * instance. You should only use this method to connect to `fhir.js` which\n * is not global.\n */\n connect(fhirJs?: (options: Record) => Record): Client\n {\n if (typeof fhirJs == \"function\") {\n const options: Record = {\n baseUrl: this.state.serverUrl.replace(/\\/$/, \"\")\n };\n\n const accessToken = this.getState(\"tokenResponse.access_token\");\n if (accessToken) {\n options.auth = { token: accessToken };\n }\n else {\n const { username, password } = this.state;\n if (username && password) {\n options.auth = {\n user: username,\n pass: password\n };\n }\n }\n this.api = fhirJs(options);\n\n const patientId = this.getState(\"tokenResponse.patient\");\n if (patientId) {\n this.patient.api = fhirJs({\n ...options,\n patient: patientId\n });\n }\n }\n return this;\n }\n\n /**\n * Returns the ID of the selected patient or null. You should have requested\n * \"launch/patient\" scope. Otherwise this will return null.\n */\n getPatientId(): string | null\n {\n const tokenResponse = this.state.tokenResponse;\n if (tokenResponse) {\n // We have been authorized against this server but we don't know\n // the patient. This should be a scope issue.\n if (!tokenResponse.patient) {\n if (!(this.state.scope || \"\").match(/\\blaunch(\\/patient)?\\b/)) {\n debug(str.noScopeForId, \"patient\", \"patient\");\n }\n else {\n // The server should have returned the patient!\n debug(\"The ID of the selected patient is not available. Please check if your server supports that.\");\n }\n return null;\n }\n return tokenResponse.patient;\n }\n\n if (this.state.authorizeUri) {\n debug(str.noIfNoAuth, \"the ID of the selected patient\");\n }\n else {\n debug(str.noFreeContext, \"selected patient\");\n }\n return null;\n }\n\n /**\n * Returns the ID of the selected encounter or null. You should have\n * requested \"launch/encounter\" scope. Otherwise this will return null.\n * Note that not all servers support the \"launch/encounter\" scope so this\n * will be null if they don't.\n */\n getEncounterId(): string | null\n {\n const tokenResponse = this.state.tokenResponse;\n if (tokenResponse) {\n // We have been authorized against this server but we don't know\n // the encounter. This should be a scope issue.\n if (!tokenResponse.encounter) {\n if (!(this.state.scope || \"\").match(/\\blaunch(\\/encounter)?\\b/)) {\n debug(str.noScopeForId, \"encounter\", \"encounter\");\n }\n else {\n // The server should have returned the encounter!\n debug(\"The ID of the selected encounter is not available. Please check if your server supports that, and that the selected patient has any recorded encounters.\");\n }\n return null;\n }\n return tokenResponse.encounter;\n }\n\n if (this.state.authorizeUri) {\n debug(str.noIfNoAuth, \"the ID of the selected encounter\");\n }\n else {\n debug(str.noFreeContext, \"selected encounter\");\n }\n return null;\n }\n\n /**\n * Returns the (decoded) id_token if any. You need to request \"openid\" and\n * \"profile\" scopes if you need to receive an id_token (if you need to know\n * who the logged-in user is).\n */\n getIdToken(): fhirclient.IDToken | null\n {\n const tokenResponse = this.state.tokenResponse;\n if (tokenResponse) {\n const idToken = tokenResponse.id_token;\n const scope = this.state.scope || \"\";\n\n // We have been authorized against this server but we don't have\n // the id_token. This should be a scope issue.\n if (!idToken) {\n const hasOpenid = scope.match(/\\bopenid\\b/);\n const hasProfile = scope.match(/\\bprofile\\b/);\n const hasFhirUser = scope.match(/\\bfhirUser\\b/);\n if (!hasOpenid || !(hasFhirUser || hasProfile)) {\n debug(\n \"You are trying to get the id_token but you are not \" +\n \"using the right scopes. Please add 'openid' and \" +\n \"'fhirUser' or 'profile' to the scopes you are \" +\n \"requesting.\"\n );\n }\n else {\n // The server should have returned the id_token!\n debug(\"The id_token is not available. Please check if your server supports that.\");\n }\n return null;\n }\n return jwtDecode(idToken, this.environment) as fhirclient.IDToken;\n }\n if (this.state.authorizeUri) {\n debug(str.noIfNoAuth, \"the id_token\");\n }\n else {\n debug(str.noFreeContext, \"id_token\");\n }\n return null;\n }\n\n /**\n * Returns the profile of the logged_in user (if any). This is a string\n * having the following shape `\"{user type}/{user id}\"`. For example:\n * `\"Practitioner/abc\"` or `\"Patient/xyz\"`.\n */\n getFhirUser(): string | null\n {\n const idToken = this.getIdToken();\n if (idToken) {\n // Epic may return a full url\n // @see https://github.com/smart-on-fhir/client-js/issues/105\n if (idToken.fhirUser) {\n return idToken.fhirUser.split(\"/\").slice(-2).join(\"/\");\n }\n return idToken.profile\n }\n return null;\n }\n\n /**\n * Returns the user ID or null.\n */\n getUserId(): string | null\n {\n const profile = this.getFhirUser();\n if (profile) {\n return profile.split(\"/\")[1];\n }\n return null;\n }\n\n /**\n * Returns the type of the logged-in user or null. The result can be\n * \"Practitioner\", \"Patient\" or \"RelatedPerson\".\n */\n getUserType(): string | null\n {\n const profile = this.getFhirUser();\n if (profile) {\n return profile.split(\"/\")[0];\n }\n return null;\n }\n\n /**\n * Builds and returns the value of the `Authorization` header that can be\n * sent to the FHIR server\n */\n getAuthorizationHeader(): string | null\n {\n const accessToken = this.getState(\"tokenResponse.access_token\");\n if (accessToken) {\n return \"Bearer \" + accessToken;\n }\n const { username, password } = this.state;\n if (username && password) {\n return \"Basic \" + this.environment.btoa(username + \":\" + password);\n }\n return null;\n }\n\n /**\n * Used internally to clear the state of the instance and the state in the\n * associated storage.\n */\n private async _clearState() {\n const storage = this.environment.getStorage();\n const key = await storage.get(SMART_KEY);\n if (key) {\n await storage.unset(key);\n }\n await storage.unset(SMART_KEY);\n this.state.tokenResponse = {};\n }\n\n /**\n * Creates a new resource in a server-assigned location\n * @see http://hl7.org/fhir/http.html#create\n * @param resource A FHIR resource to be created\n * @param [requestOptions] Any options to be passed to the fetch call.\n * Note that `method` and `body` will be ignored.\n * @category Request\n */\n create(\n resource: fhirclient.FHIR.Resource,\n requestOptions?: O\n ): Promise : R>\n {\n return this.request({\n ...requestOptions,\n url: `${resource.resourceType}`,\n method: \"POST\",\n body: JSON.stringify(resource),\n headers: {\n // TODO: Do we need to alternate with \"application/json+fhir\"?\n \"content-type\": \"application/json\",\n ...(requestOptions || {}).headers\n }\n });\n }\n\n /**\n * Creates a new current version for an existing resource or creates an\n * initial version if no resource already exists for the given id.\n * @see http://hl7.org/fhir/http.html#update\n * @param resource A FHIR resource to be updated\n * @param requestOptions Any options to be passed to the fetch call.\n * Note that `method` and `body` will be ignored.\n * @category Request\n */\n update(\n resource: fhirclient.FHIR.Resource,\n requestOptions?: O\n ): Promise : R>\n {\n return this.request({\n ...requestOptions,\n url: `${resource.resourceType}/${resource.id}`,\n method: \"PUT\",\n body: JSON.stringify(resource),\n headers: {\n // TODO: Do we need to alternate with \"application/json+fhir\"?\n \"content-type\": \"application/json\",\n ...(requestOptions || {}).headers\n }\n });\n }\n\n /**\n * Removes an existing resource.\n * @see http://hl7.org/fhir/http.html#delete\n * @param url Relative URI of the FHIR resource to be deleted\n * (format: `resourceType/id`)\n * @param requestOptions Any options (except `method` which will be fixed\n * to `DELETE`) to be passed to the fetch call.\n * @category Request\n */\n delete(url: string, requestOptions: fhirclient.FetchOptions = {}): Promise\n {\n return this.request({\n ...requestOptions,\n url,\n method: \"DELETE\"\n });\n }\n\n /**\n * Makes a JSON Patch to the given resource\n * @see http://hl7.org/fhir/http.html#patch\n * @param url Relative URI of the FHIR resource to be patched\n * (format: `resourceType/id`)\n * @param patch A JSON Patch array to send to the server, For details\n * see https://datatracker.ietf.org/doc/html/rfc6902\n * @param requestOptions Any options to be passed to the fetch call,\n * except for `method`, `url` and `body` which cannot be overridden.\n * @since 2.4.0\n * @category Request\n * @typeParam ResolveType This method would typically resolve with the\n * patched resource or reject with an OperationOutcome. However, this may\n * depend on the server implementation or even on the request headers.\n * For that reason, if the default resolve type (which is\n * [[fhirclient.FHIR.Resource]]) does not work for you, you can pass\n * in your own resolve type parameter.\n */\n async patch(url: string, patch: fhirclient.JsonPatch, requestOptions: fhirclient.FetchOptions = {}): Promise\n {\n assertJsonPatch(patch);\n return this.request({\n ...requestOptions,\n url,\n method: \"PATCH\",\n body: JSON.stringify(patch),\n headers: {\n \"prefer\": \"return=presentation\",\n \"content-type\": \"application/json-patch+json; charset=UTF-8\",\n ...requestOptions.headers,\n }\n });\n }\n\n /**\n * @param requestOptions Can be a string URL (relative to the serviceUrl),\n * or an object which will be passed to fetch()\n * @param fhirOptions Additional options to control the behavior\n * @param _resolvedRefs DO NOT USE! Used internally.\n * @category Request\n */\n async request(\n requestOptions: string|URL|fhirclient.RequestOptions,\n fhirOptions: fhirclient.FhirOptions = {},\n _resolvedRefs: fhirclient.JsonObject = {}\n ): Promise\n {\n const debugRequest = _debug.extend(\"client:request\");\n assert(requestOptions, \"request requires an url or request options as argument\");\n\n // url -----------------------------------------------------------------\n let url: string;\n if (typeof requestOptions == \"string\" || requestOptions instanceof URL) {\n url = String(requestOptions);\n requestOptions = {} as fhirclient.RequestOptions;\n }\n else {\n url = String(requestOptions.url);\n }\n\n url = absolute(url, this.state.serverUrl);\n\n const options = {\n graph: fhirOptions.graph !== false,\n flat : !!fhirOptions.flat,\n pageLimit: fhirOptions.pageLimit ?? 1,\n resolveReferences: (fhirOptions.resolveReferences || []) as string[],\n useRefreshToken: fhirOptions.useRefreshToken !== false,\n onPage: typeof fhirOptions.onPage == \"function\" ?\n fhirOptions.onPage as (\n data: fhirclient.JsonObject | fhirclient.JsonObject[],\n references?: fhirclient.JsonObject | undefined) => any :\n undefined\n };\n\n const signal = (requestOptions as RequestInit).signal || undefined;\n\n // Refresh the access token if needed\n const job = options.useRefreshToken ?\n this.refreshIfNeeded({ signal }).then(() => requestOptions as fhirclient.RequestOptions) :\n Promise.resolve(requestOptions as fhirclient.RequestOptions);\n\n let response: Response | undefined;\n\n return job\n\n // Add the Authorization header now, after the access token might\n // have been updated\n .then(requestOptions => {\n const authHeader = this.getAuthorizationHeader();\n if (authHeader) {\n requestOptions.headers = {\n ...requestOptions.headers,\n authorization: authHeader\n };\n }\n return requestOptions;\n })\n \n // Make the request\n .then(requestOptions => {\n debugRequest(\n \"%s, options: %O, fhirOptions: %O\",\n url,\n requestOptions,\n options\n );\n return request(url, requestOptions).then(result => {\n if (requestOptions.includeResponse) {\n response = (result as fhirclient.CombinedFetchResult).response;\n return (result as fhirclient.CombinedFetchResult).body;\n }\n return result;\n });\n })\n\n // Handle 401 ------------------------------------------------------\n .catch(async (error: HttpError) => {\n if (error.status == 401) {\n\n // !accessToken -> not authorized -> No session. Need to launch.\n if (!this.getState(\"tokenResponse.access_token\")) {\n error.message += \"\\nThis app cannot be accessed directly. Please launch it as SMART app!\";\n throw error;\n }\n\n // auto-refresh not enabled and Session expired.\n // Need to re-launch. Clear state to start over!\n if (!options.useRefreshToken) {\n debugRequest(\"Your session has expired and the useRefreshToken option is set to false. Please re-launch the app.\");\n await this._clearState();\n error.message += \"\\n\" + str.expired;\n throw error;\n }\n\n // In rare cases we may have a valid access token and a refresh\n // token and the request might still fail with 401 just because\n // the access token has just been revoked.\n\n // otherwise -> auto-refresh failed. Session expired.\n // Need to re-launch. Clear state to start over!\n debugRequest(\"Auto-refresh failed! Please re-launch the app.\");\n await this._clearState();\n error.message += \"\\n\" + str.expired;\n throw error;\n }\n throw error;\n })\n\n // Handle 403 ------------------------------------------------------\n .catch((error: HttpError) => {\n if (error.status == 403) {\n debugRequest(\"Permission denied! Please make sure that you have requested the proper scopes.\");\n }\n throw error;\n })\n\n .then((data: any) => {\n\n // At this point we don't know what `data` actually is!\n\n // We might gen an empty or falsy result. If so return it as is\n if (!data)\n return data;\n \n // Handle raw responses\n if (typeof data == \"string\" || data instanceof Response)\n return data;\n\n // Resolve References ------------------------------------------\n return (async (_data: fhirclient.FHIR.Resource) => {\n\n if (_data.resourceType == \"Bundle\") {\n await Promise.all(((_data as fhirclient.FHIR.Bundle).entry || []).map(item => resolveRefs(\n item.resource,\n options,\n _resolvedRefs,\n this,\n signal\n )));\n }\n else {\n await resolveRefs(\n _data,\n options,\n _resolvedRefs,\n this,\n signal\n );\n }\n\n return _data;\n })(data)\n\n // Pagination ----------------------------------------------\n .then(async _data => {\n if (_data && _data.resourceType == \"Bundle\") {\n const links = (_data.link || []) as fhirclient.FHIR.BundleLink[];\n\n if (options.flat) {\n _data = (_data.entry || []).map(\n (entry: fhirclient.FHIR.BundleEntry) => entry.resource\n );\n }\n\n if (options.onPage) {\n await options.onPage(_data, { ..._resolvedRefs });\n }\n\n if (--options.pageLimit) {\n const next = links.find(l => l.relation == \"next\");\n _data = makeArray(_data);\n if (next && next.url) {\n const nextPage = await this.request(\n {\n url: next.url,\n\n // Aborting the main request (even after it is complete)\n // must propagate to any child requests and abort them!\n // To do so, just pass the same AbortSignal if one is\n // provided.\n signal\n },\n options,\n _resolvedRefs\n );\n\n if (options.onPage) {\n return null;\n }\n\n if (options.resolveReferences.length) {\n Object.assign(_resolvedRefs, nextPage.references);\n return _data.concat(makeArray(nextPage.data || nextPage));\n }\n return _data.concat(makeArray(nextPage));\n }\n }\n }\n return _data;\n })\n\n // Finalize ------------------------------------------------\n .then(_data => {\n if (options.graph) {\n _resolvedRefs = {};\n }\n else if (!options.onPage && options.resolveReferences.length) {\n return {\n data: _data,\n references: _resolvedRefs\n };\n }\n return _data;\n })\n .then(_data => {\n if ((requestOptions as fhirclient.FetchOptions).includeResponse) {\n return {\n body: _data,\n response\n }\n }\n return _data;\n });\n });\n }\n\n /**\n * Checks if access token and refresh token are present. If they are, and if\n * the access token is expired or is about to expire in the next 10 seconds,\n * calls `this.refresh()` to obtain new access token.\n * @param requestOptions Any options to pass to the fetch call. Most of them\n * will be overridden, bit it might still be useful for passing additional\n * request options or an abort signal.\n * @category Request\n */\n refreshIfNeeded(requestOptions: RequestInit = {}): Promise\n {\n const accessToken = this.getState(\"tokenResponse.access_token\");\n const refreshToken = this.getState(\"tokenResponse.refresh_token\");\n const expiresAt = this.state.expiresAt || 0;\n\n if (accessToken && refreshToken && expiresAt - 10 < Date.now() / 1000) {\n return this.refresh(requestOptions);\n }\n\n return Promise.resolve(this.state);\n }\n\n /**\n * Use the refresh token to obtain new access token. If the refresh token is\n * expired (or this fails for any other reason) it will be deleted from the\n * state, so that we don't enter into loops trying to re-authorize.\n *\n * This method is typically called internally from [[request]] if\n * certain request fails with 401.\n *\n * @param requestOptions Any options to pass to the fetch call. Most of them\n * will be overridden, bit it might still be useful for passing additional\n * request options or an abort signal.\n * @category Request\n */\n refresh(requestOptions: RequestInit = {}): Promise\n {\n const debugRefresh = _debug.extend(\"client:refresh\");\n debugRefresh(\"Attempting to refresh with refresh_token...\");\n\n const refreshToken = this.state?.tokenResponse?.refresh_token;\n assert(refreshToken, \"Unable to refresh. No refresh_token found.\");\n\n const tokenUri = this.state.tokenUri;\n assert(tokenUri, \"Unable to refresh. No tokenUri found.\");\n\n const scopes = this.getState(\"tokenResponse.scope\") || \"\";\n const hasOfflineAccess = scopes.search(/\\boffline_access\\b/) > -1;\n const hasOnlineAccess = scopes.search(/\\bonline_access\\b/) > -1;\n assert(hasOfflineAccess || hasOnlineAccess, \"Unable to refresh. No offline_access or online_access scope found.\");\n\n // This method is typically called internally from `request` if certain\n // request fails with 401. However, clients will often run multiple\n // requests in parallel which may result in multiple refresh calls.\n // To avoid that, we keep a reference to the current refresh task (if any).\n if (!this._refreshTask) {\n\n const refreshRequestOptions = {\n credentials: this.environment.options.refreshTokenWithCredentials || \"same-origin\",\n ...requestOptions,\n method : \"POST\",\n mode : \"cors\" as RequestMode,\n headers: {\n ...(requestOptions.headers || {}),\n \"content-type\": \"application/x-www-form-urlencoded\"\n },\n body: `grant_type=refresh_token&refresh_token=${encodeURIComponent(refreshToken)}`\n };\n\n // custom authorization header can be passed on manual calls\n if (!(\"authorization\" in refreshRequestOptions.headers)) {\n const { clientSecret, clientId } = this.state;\n if (clientSecret) {\n // @ts-ignore\n refreshRequestOptions.headers.authorization = \"Basic \" + this.environment.btoa(\n clientId + \":\" + clientSecret\n );\n }\n }\n\n this._refreshTask = request(tokenUri, refreshRequestOptions)\n .then(data => {\n assert(data.access_token, \"No access token received\");\n debugRefresh(\"Received new access token response %O\", data);\n this.state.tokenResponse = { ...this.state.tokenResponse, ...data };\n this.state.expiresAt = getAccessTokenExpiration(data, this.environment);\n return this.state;\n })\n .catch((error: Error) => {\n if (this.state?.tokenResponse?.refresh_token) {\n debugRefresh(\"Deleting the expired or invalid refresh token.\");\n delete this.state.tokenResponse.refresh_token;\n }\n throw error;\n })\n .finally(() => {\n this._refreshTask = null;\n const key = this.state.key;\n if (key) {\n this.environment.getStorage().set(key, this.state);\n } else {\n debugRefresh(\"No 'key' found in Clint.state. Cannot persist the instance.\");\n }\n });\n }\n\n return this._refreshTask;\n }\n\n // utils -------------------------------------------------------------------\n\n /**\n * Groups the observations by code. Returns a map that will look like:\n * ```js\n * const map = client.byCodes(observations, \"code\");\n * // map = {\n * // \"55284-4\": [ observation1, observation2 ],\n * // \"6082-2\": [ observation3 ]\n * // }\n * ```\n * @param observations Array of observations\n * @param property The name of a CodeableConcept property to group by\n * @todo This should be deprecated and moved elsewhere. One should not have\n * to obtain an instance of [[Client]] just to use utility functions like this.\n * @deprecated\n * @category Utility\n */\n byCode(\n observations: fhirclient.FHIR.Observation | fhirclient.FHIR.Observation[],\n property: string\n ): fhirclient.ObservationMap\n {\n return byCode(observations, property);\n }\n\n /**\n * First groups the observations by code using `byCode`. Then returns a function\n * that accepts codes as arguments and will return a flat array of observations\n * having that codes. Example:\n * ```js\n * const filter = client.byCodes(observations, \"category\");\n * filter(\"laboratory\") // => [ observation1, observation2 ]\n * filter(\"vital-signs\") // => [ observation3 ]\n * filter(\"laboratory\", \"vital-signs\") // => [ observation1, observation2, observation3 ]\n * ```\n * @param observations Array of observations\n * @param property The name of a CodeableConcept property to group by\n * @todo This should be deprecated and moved elsewhere. One should not have\n * to obtain an instance of [[Client]] just to use utility functions like this.\n * @deprecated\n * @category Utility\n */\n byCodes(\n observations: fhirclient.FHIR.Observation | fhirclient.FHIR.Observation[],\n property: string\n ): (...codes: string[]) => any[]\n {\n return byCodes(observations, property);\n }\n\n /**\n * @category Utility\n */\n units = units;\n\n /**\n * Walks through an object (or array) and returns the value found at the\n * provided path. This function is very simple so it intentionally does not\n * support any argument polymorphism, meaning that the path can only be a\n * dot-separated string. If the path is invalid returns undefined.\n * @param obj The object (or Array) to walk through\n * @param path The path (eg. \"a.b.4.c\")\n * @returns {*} Whatever is found in the path or undefined\n * @todo This should be deprecated and moved elsewhere. One should not have\n * to obtain an instance of [[Client]] just to use utility functions like this.\n * @deprecated\n * @category Utility\n */\n getPath(obj: Record, path = \"\"): any {\n return getPath(obj, path);\n }\n\n /**\n * Returns a copy of the client state. Accepts a dot-separated path argument\n * (same as for `getPath`) to allow for selecting specific properties.\n * Examples:\n * ```js\n * client.getState(); // -> the entire state object\n * client.getState(\"serverUrl\"); // -> the URL we are connected to\n * client.getState(\"tokenResponse.patient\"); // -> The selected patient ID (if any)\n * ```\n * @param path The path (eg. \"a.b.4.c\")\n * @returns {*} Whatever is found in the path or undefined\n */\n getState(path = \"\") {\n return getPath({ ...this.state }, path);\n }\n\n /**\n * Returns a promise that will be resolved with the fhir version as defined\n * in the CapabilityStatement.\n */\n getFhirVersion(): Promise {\n return fetchConformanceStatement(this.state.serverUrl)\n .then((metadata) => metadata.fhirVersion);\n }\n\n /**\n * Returns a promise that will be resolved with the numeric fhir version\n * - 2 for DSTU2\n * - 3 for STU3\n * - 4 for R4\n * - 0 if the version is not known\n */\n getFhirRelease(): Promise {\n return this.getFhirVersion().then(v => (fhirVersions as any)[v] ?? 0);\n }\n}\n","import { fhirclient } from \"./types\";\n\n\nexport default class HttpError extends Error\n{\n /**\n * The HTTP status code for this error\n */\n statusCode: number;\n\n /**\n * The HTTP status code for this error.\n * Note that this is the same as `status`, i.e. the code is available\n * through any of these.\n */\n status: number;\n\n /**\n * The HTTP status text corresponding to this error\n */\n statusText: string;\n\n /**\n * Reference to the HTTP Response object\n */\n response: Response;\n\n constructor(response: Response) {\n super(`${response.status} ${response.statusText}\\nURL: ${response.url}`);\n this.name = \"HttpError\";\n this.response = response;\n this.statusCode = response.status;\n this.status = response.status;\n this.statusText = response.statusText;\n }\n\n async parse()\n {\n if (!this.response.bodyUsed) {\n try {\n const type = this.response.headers.get(\"content-type\") || \"text/plain\";\n if (type.match(/\\bjson\\b/i)) {\n let body = await this.response.json();\n if (body.error) {\n this.message += \"\\n\" + body.error;\n if (body.error_description) {\n this.message += \": \" + body.error_description;\n }\n }\n else {\n this.message += \"\\n\\n\" + JSON.stringify(body, null, 4);\n }\n }\n else if (type.match(/^text\\//i)) {\n let body = await this.response.text();\n if (body) {\n this.message += \"\\n\\n\" + body;\n }\n }\n } catch {\n // ignore\n }\n }\n\n return this;\n }\n\n toJSON() {\n return {\n name : this.name,\n statusCode: this.statusCode,\n status : this.status,\n statusText: this.statusText,\n message : this.message\n };\n }\n}\n","import { ready, authorize, init } from \"../smart\";\nimport Client from \"../Client\";\nimport BrowserStorage from \"../storage/BrowserStorage\";\nimport { fhirclient } from \"../types\";\nimport * as security from \"../security/browser\"\nimport { encodeURL, decode, fromUint8Array } from \"js-base64\"\n\n/**\n * Browser Adapter\n */\nexport default class BrowserAdapter implements fhirclient.Adapter\n{\n /**\n * Stores the URL instance associated with this adapter\n */\n private _url: URL | null = null;\n\n /**\n * Holds the Storage instance associated with this instance\n */\n private _storage: fhirclient.Storage | null = null;\n\n /**\n * Environment-specific options\n */\n options: fhirclient.BrowserFHIRSettings;\n\n security = security;\n\n /**\n * @param options Environment-specific options\n */\n constructor(options: fhirclient.BrowserFHIRSettings = {})\n {\n this.options = {\n // Replaces the browser's current URL\n // using window.history.replaceState API or by reloading.\n replaceBrowserHistory: true,\n\n // When set to true, this variable will fully utilize\n // HTML5 sessionStorage API.\n // This variable can be overridden to false by setting\n // FHIR.oauth2.settings.fullSessionStorageSupport = false.\n // When set to false, the sessionStorage will be keyed\n // by a state variable. This is to allow the embedded IE browser\n // instances instantiated on a single thread to continue to\n // function without having sessionStorage data shared\n // across the embedded IE instances.\n fullSessionStorageSupport: true,\n\n // Do we want to send cookies while making a request to the token\n // endpoint in order to obtain new access token using existing\n // refresh token. In rare cases the auth server might require the\n // client to send cookies along with those requests. In this case\n // developers will have to change this before initializing the app\n // like so:\n // `FHIR.oauth2.settings.refreshTokenWithCredentials = \"include\";`\n // or\n // `FHIR.oauth2.settings.refreshTokenWithCredentials = \"same-origin\";`\n // Can be one of:\n // \"include\" - always send cookies\n // \"same-origin\" - only send cookies if we are on the same domain (default)\n // \"omit\" - do not send cookies\n refreshTokenWithCredentials: \"same-origin\",\n\n ...options\n };\n }\n\n /**\n * Given a relative path, returns an absolute url using the instance base URL\n */\n relative(path: string): string\n {\n return new URL(path, this.getUrl().href).href;\n }\n\n /**\n * In browsers we need to be able to (dynamically) check if fhir.js is\n * included in the page. If it is, it should have created a \"fhir\" variable\n * in the global scope.\n */\n get fhir()\n {\n // @ts-ignore\n return typeof fhir === \"function\" ? fhir : null;\n }\n\n /**\n * Given the current environment, this method must return the current url\n * as URL instance\n */\n getUrl(): URL\n {\n if (!this._url) {\n this._url = new URL(location + \"\");\n }\n return this._url;\n }\n\n /**\n * Given the current environment, this method must redirect to the given\n * path\n */\n redirect(to: string): void\n {\n location.href = to;\n }\n\n /**\n * Returns a BrowserStorage object which is just a wrapper around\n * sessionStorage\n */\n getStorage(): BrowserStorage\n {\n if (!this._storage) {\n this._storage = new BrowserStorage();\n }\n return this._storage;\n }\n\n /**\n * Returns a reference to the AbortController constructor. In browsers,\n * AbortController will always be available as global (native or polyfilled)\n */\n getAbortController()\n {\n return AbortController;\n }\n\n /**\n * ASCII string to Base64\n */\n atob(str: string): string\n {\n return window.atob(str);\n }\n\n /**\n * Base64 to ASCII string\n */\n btoa(str: string): string\n {\n return window.btoa(str);\n }\n\n base64urlencode(input: string | Uint8Array)\n {\n if (typeof input == \"string\") {\n return encodeURL(input)\n }\n return fromUint8Array(input, true)\n }\n\n base64urldecode(input: string)\n {\n return decode(input)\n }\n\n /**\n * Creates and returns adapter-aware SMART api. Not that while the shape of\n * the returned object is well known, the arguments to this function are not.\n * Those who override this method are free to require any environment-specific\n * arguments. For example in node we will need a request, a response and\n * optionally a storage or storage factory function.\n */\n getSmartApi(): fhirclient.SMART\n {\n return {\n ready : (...args: any[]) => ready(this, ...args),\n authorize: options => authorize(this, options),\n init : options => init(this, options),\n client : (state: string | fhirclient.ClientState) => new Client(this, state),\n options : this.options,\n utils: {\n security\n }\n };\n }\n}\n","\n// Note: the following 2 imports appear as unused but they affect how tsc is\n// generating type definitions!\nimport { fhirclient } from \"../types\";\nimport Client from \"../Client\";\n\n// In Browsers we create an adapter, get the SMART api from it and build the\n// global FHIR object\nimport BrowserAdapter from \"../adapters/BrowserAdapter\";\n\nconst adapter = new BrowserAdapter();\nconst { ready, authorize, init, client, options, utils } = adapter.getSmartApi();\n\n// We have two kinds of browser builds - \"pure\" for new browsers and \"legacy\"\n// for old ones. In pure builds we assume that the browser supports everything\n// we need. In legacy mode, the library also acts as a polyfill. Babel will\n// automatically polyfill everything except \"fetch\", which we have to handle\n// manually.\n// @ts-ignore\nif (typeof FHIRCLIENT_PURE == \"undefined\") {\n const fetch = require(\"cross-fetch\");\n require(\"abortcontroller-polyfill/dist/abortcontroller-polyfill-only\");\n if (!window.fetch) {\n window.fetch = fetch.default;\n window.Headers = fetch.Headers;\n window.Request = fetch.Request;\n window.Response = fetch.Response;\n }\n}\n\n// $lab:coverage:off$\nconst FHIR = {\n AbortController: window.AbortController,\n client,\n utils,\n oauth2: {\n settings: options,\n ready,\n authorize,\n init\n }\n};\n\nexport = FHIR;\n// $lab:coverage:on$\n","/*\n * This file contains some shared functions. They are used by other modules, but\n * are defined here so that tests can import this library and test them.\n */\n\nimport HttpError from \"./HttpError\";\nimport { patientParams } from \"./settings\";\nimport { fhirclient } from \"./types\";\nconst debug = require(\"debug\");\n\n// $lab:coverage:off$\n// @ts-ignore\nconst { fetch } = typeof FHIRCLIENT_PURE !== \"undefined\" ? window : require(\"cross-fetch\");\n// $lab:coverage:on$\n\nconst _debug = debug(\"FHIR\");\nexport { _debug as debug };\n\n/**\n * The cache for the `getAndCache` function\n */\nconst cache: Record = {};\n\n/**\n * A namespace with functions for converting between different measurement units\n */\nexport const units = {\n cm({ code, value }: fhirclient.CodeValue) {\n ensureNumerical({ code, value });\n if (code == \"cm\" ) return value;\n if (code == \"m\" ) return value * 100;\n if (code == \"in\" ) return value * 2.54;\n if (code == \"[in_us]\") return value * 2.54;\n if (code == \"[in_i]\" ) return value * 2.54;\n if (code == \"ft\" ) return value * 30.48;\n if (code == \"[ft_us]\") return value * 30.48;\n throw new Error(\"Unrecognized length unit: \" + code);\n },\n kg({ code, value }: fhirclient.CodeValue){\n ensureNumerical({ code, value });\n if (code == \"kg\" ) return value;\n if (code == \"g\" ) return value / 1000;\n if (code.match(/lb/)) return value / 2.20462;\n if (code.match(/oz/)) return value / 35.274;\n throw new Error(\"Unrecognized weight unit: \" + code);\n },\n any(pq: fhirclient.CodeValue){\n ensureNumerical(pq);\n return pq.value;\n }\n};\n\n/**\n * Assertion function to guard arguments for `units` functions\n */\nfunction ensureNumerical({ value, code }: fhirclient.CodeValue) {\n if (typeof value !== \"number\") {\n throw new Error(\"Found a non-numerical unit: \" + value + \" \" + code);\n }\n}\n\n/**\n * Used in fetch Promise chains to reject if the \"ok\" property is not true\n */\nexport async function checkResponse(resp: Response): Promise {\n if (!resp.ok) {\n const error = new HttpError(resp);\n await error.parse();\n throw error;\n }\n return resp;\n}\n\n/**\n * Used in fetch Promise chains to return the JSON version of the response.\n * Note that `resp.json()` will throw on empty body so we use resp.text()\n * instead.\n */\nexport function responseToJSON(resp: Response): Promise {\n return resp.text().then(text => text.length ? JSON.parse(text) : \"\");\n}\n\nexport function loweCaseKeys | any[] | undefined>(obj: T): T {\n \n // Can be undefined to signal that this key should be removed\n if (!obj) {\n return obj as T\n }\n\n // Arrays are valid values in case of recursive calls\n if (Array.isArray(obj)) {\n return obj.map(v => v && typeof v === \"object\" ? loweCaseKeys(v) : v) as unknown as T;\n }\n\n // Plain object\n let out: Record = {};\n Object.keys(obj).forEach(key => {\n const lowerKey = key.toLowerCase()\n const v = (obj as Record)[key]\n out[lowerKey] = v && typeof v == \"object\" ? loweCaseKeys(v) : v;\n });\n return out as T;\n}\n\n/**\n * This is our built-in request function. It does a few things by default\n * (unless told otherwise):\n * - Makes CORS requests\n * - Sets accept header to \"application/json\"\n * - Handles errors\n * - If the response is json return the json object\n * - If the response is text return the result text\n * - Otherwise return the response object on which we call stuff like `.blob()`\n */\nexport function request(\n url: string | Request,\n requestOptions: fhirclient.FetchOptions = {}\n): Promise\n{\n const { includeResponse, ...options } = requestOptions;\n return fetch(url, {\n mode: \"cors\",\n ...options,\n headers: {\n accept: \"application/json\",\n ...loweCaseKeys(options.headers)\n }\n })\n .then(checkResponse)\n .then((res: Response) => {\n const type = res.headers.get(\"content-type\") + \"\";\n if (type.match(/\\bjson\\b/i)) {\n return responseToJSON(res).then(body => ({ res, body }));\n }\n if (type.match(/^text\\//i)) {\n return res.text().then(body => ({ res, body }));\n }\n return { res };\n })\n .then(({res, body}: {res:Response, body?:fhirclient.JsonObject|string}) => {\n\n // Some servers will reply after CREATE with json content type but with\n // empty body. In this case check if a location header is received and\n // fetch that to use it as the final result.\n if (!body && res.status == 201) {\n const location = res.headers.get(\"location\");\n if (location) {\n return request(location, { ...options, method: \"GET\", body: null, includeResponse });\n }\n }\n\n if (includeResponse) {\n return { body, response: res };\n }\n\n // For any non-text and non-json response return the Response object.\n // This to let users decide if they want to call text(), blob() or\n // something else on it\n if (body === undefined) {\n return res;\n }\n\n // Otherwise just return the parsed body (can also be \"\" or null)\n return body;\n });\n}\n\n/**\n * Makes a request using `fetch` and stores the result in internal memory cache.\n * The cache is cleared when the page is unloaded.\n * @param url The URL to request\n * @param requestOptions Request options\n * @param force If true, reload from source and update the cache, even if it has\n * already been cached.\n */\nexport function getAndCache(url: string, requestOptions?: RequestInit, force: boolean = process.env.NODE_ENV === \"test\"): Promise {\n if (force || !cache[url]) {\n cache[url] = request(url, requestOptions);\n return cache[url];\n }\n return Promise.resolve(cache[url]);\n}\n\n/**\n * Fetches the conformance statement from the given base URL.\n * Note that the result is cached in memory (until the page is reloaded in the\n * browser) because it might have to be re-used by the client\n * @param baseUrl The base URL of the FHIR server\n * @param [requestOptions] Any options passed to the fetch call\n */\nexport function fetchConformanceStatement(baseUrl = \"/\", requestOptions?: RequestInit): Promise\n{\n const url = String(baseUrl).replace(/\\/*$/, \"/\") + \"metadata\";\n return getAndCache(url, requestOptions).catch((ex: Error) => {\n throw new Error(\n `Failed to fetch the conformance statement from \"${url}\". ${ex}`\n );\n });\n}\n\n\n/**\n * Walks through an object (or array) and returns the value found at the\n * provided path. This function is very simple so it intentionally does not\n * support any argument polymorphism, meaning that the path can only be a\n * dot-separated string. If the path is invalid returns undefined.\n * @param obj The object (or Array) to walk through\n * @param path The path (eg. \"a.b.4.c\")\n * @returns {*} Whatever is found in the path or undefined\n */\nexport function getPath(obj: Record, path = \"\"): any {\n path = path.trim();\n if (!path) {\n return obj;\n }\n\n let segments = path.split(\".\");\n let result = obj;\n\n while (result && segments.length) {\n const key = segments.shift();\n if (!key && Array.isArray(result)) {\n return result.map(o => getPath(o, segments.join(\".\")));\n } else {\n result = result[key as string];\n }\n }\n\n return result;\n}\n\n/**\n * Like getPath, but if the node is found, its value is set to @value\n * @param obj The object (or Array) to walk through\n * @param path The path (eg. \"a.b.4.c\")\n * @param value The value to set\n * @param createEmpty If true, create missing intermediate objects or arrays\n * @returns The modified object\n */\nexport function setPath(obj: Record, path: string, value: any, createEmpty = false): Record {\n path.trim().split(\".\").reduce(\n (out, key, idx, arr) => {\n if (out && idx === arr.length - 1) {\n out[key] = value;\n }\n else {\n if (out && out[key] === undefined && createEmpty) {\n out[key] = arr[idx + 1].match(/^[0-9]+$/) ? [] : {};\n }\n return out ? out[key] : undefined;\n }\n },\n obj\n );\n return obj;\n}\n\n/**\n * If the argument is an array returns it as is. Otherwise puts it in an array\n * (`[arg]`) and returns the result\n * @param arg The element to test and possibly convert to array\n * @category Utility\n */\nexport function makeArray(arg: any): T[] {\n if (Array.isArray(arg)) {\n return arg;\n }\n return [arg];\n}\n\n/**\n * Given a path, converts it to absolute url based on the `baseUrl`. If baseUrl\n * is not provided, the result would be a rooted path (one that starts with `/`).\n * @param path The path to convert\n * @param baseUrl The base URL\n */\nexport function absolute(path: string, baseUrl?: string): string\n{\n if (path.match(/^http/)) return path;\n if (path.match(/^urn/)) return path;\n return String(baseUrl || \"\").replace(/\\/+$/, \"\") + \"/\" + path.replace(/^\\/+/, \"\");\n}\n\n/**\n * Generates random strings. By default this returns random 8 characters long\n * alphanumeric strings.\n * @param strLength The length of the output string. Defaults to 8.\n * @param charSet A string containing all the possible characters.\n * Defaults to all the upper and lower-case letters plus digits.\n * @category Utility\n */\nexport function randomString(\n strLength = 8,\n charSet = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789\"\n): string\n{\n const result = [];\n const len = charSet.length;\n while (strLength--) {\n result.push(charSet.charAt(Math.floor(Math.random() * len)));\n }\n return result.join(\"\");\n}\n\n/**\n * Decodes a JWT token and returns it's body.\n * @param token The token to read\n * @param env An `Adapter` or any other object that has an `atob` method\n * @category Utility\n */\nexport function jwtDecode(token: string, env: fhirclient.Adapter): Record | null\n{\n const payload = token.split(\".\")[1];\n return payload ? JSON.parse(env.atob(payload)) : null;\n}\n\n/**\n * Add a supplied number of seconds to the supplied Date, returning\n * an integer number of seconds since the epoch\n * @param secondsAhead How far ahead, in seconds (defaults to 120 seconds)\n * @param from Initial time (defaults to current time)\n */\nexport function getTimeInFuture(secondsAhead: number = 120, from?: Date | number): number {\n return Math.floor(+(from || new Date()) / 1000 + secondsAhead) \n}\n\n/**\n * Given a token response, computes and returns the expiresAt timestamp.\n * Note that this should only be used immediately after an access token is\n * received, otherwise the computed timestamp will be incorrect.\n * @param tokenResponse \n * @param env \n */\nexport function getAccessTokenExpiration(tokenResponse: fhirclient.TokenResponse, env: fhirclient.Adapter): number\n{\n const now = Math.floor(Date.now() / 1000);\n\n // Option 1 - using the expires_in property of the token response\n if (tokenResponse.expires_in) {\n return now + tokenResponse.expires_in;\n }\n\n // Option 2 - using the exp property of JWT tokens (must not assume JWT!)\n if (tokenResponse.access_token) {\n let tokenBody = jwtDecode(tokenResponse.access_token, env);\n if (tokenBody && tokenBody.exp) {\n return tokenBody.exp;\n }\n }\n\n // Option 3 - if none of the above worked set this to 5 minutes after now\n return now + 300;\n}\n\n/**\n * Groups the observations by code. Returns a map that will look like:\n * ```js\n * const map = client.byCodes(observations, \"code\");\n * // map = {\n * // \"55284-4\": [ observation1, observation2 ],\n * // \"6082-2\": [ observation3 ]\n * // }\n * ```\n * @param observations Array of observations\n * @param property The name of a CodeableConcept property to group by\n */\nexport function byCode(\n observations: fhirclient.FHIR.Observation | fhirclient.FHIR.Observation[],\n property: string\n): fhirclient.ObservationMap\n{\n const ret: fhirclient.ObservationMap = {};\n\n function handleCodeableConcept(concept: fhirclient.FHIR.CodeableConcept, observation: fhirclient.FHIR.Observation) {\n if (concept && Array.isArray(concept.coding)) {\n concept.coding.forEach(({ code }) => {\n if (code) {\n ret[code] = ret[code] || [] as fhirclient.FHIR.Observation[];\n ret[code].push(observation);\n }\n });\n }\n }\n\n makeArray(observations).forEach(o => {\n if (o.resourceType === \"Observation\" && o[property]) {\n if (Array.isArray(o[property])) {\n o[property].forEach((concept: fhirclient.FHIR.CodeableConcept) => handleCodeableConcept(concept, o));\n } else {\n handleCodeableConcept(o[property], o);\n }\n }\n });\n\n return ret;\n}\n\n/**\n * First groups the observations by code using `byCode`. Then returns a function\n * that accepts codes as arguments and will return a flat array of observations\n * having that codes. Example:\n * ```js\n * const filter = client.byCodes(observations, \"category\");\n * filter(\"laboratory\") // => [ observation1, observation2 ]\n * filter(\"vital-signs\") // => [ observation3 ]\n * filter(\"laboratory\", \"vital-signs\") // => [ observation1, observation2, observation3 ]\n * ```\n * @param observations Array of observations\n * @param property The name of a CodeableConcept property to group by\n */\nexport function byCodes(\n observations: fhirclient.FHIR.Observation | fhirclient.FHIR.Observation[],\n property: string\n): (...codes: string[]) => any[]\n{\n const bank = byCode(observations, property);\n return (...codes) => codes\n .filter(code => (code + \"\") in bank)\n .reduce(\n (prev, code) => prev.concat(bank[code + \"\"]),\n [] as fhirclient.FHIR.Observation[]\n );\n}\n\n/**\n * Given a conformance statement and a resource type, returns the name of the\n * URL parameter that can be used to scope the resource type by patient ID.\n */\nexport function getPatientParam(conformance: fhirclient.FHIR.CapabilityStatement, resourceType: string): string\n{\n // Find what resources are supported by this server\n const resources = getPath(conformance, \"rest.0.resource\") || [];\n\n // Check if this resource is supported\n const meta = resources.find((r: any) => r.type === resourceType);\n if (!meta) {\n throw new Error(`Resource \"${resourceType}\" is not supported by this FHIR server`);\n }\n\n // Check if any search parameters are available for this resource\n if (!Array.isArray(meta.searchParam)) {\n throw new Error(`No search parameters supported for \"${resourceType}\" on this FHIR server`);\n }\n\n // This is a rare case but could happen in generic workflows\n if (resourceType == \"Patient\" && meta.searchParam.find((x: any) => x.name == \"_id\")) {\n return \"_id\";\n }\n\n // Now find the first possible parameter name\n const out = patientParams.find(p => meta.searchParam.find((x: any) => x.name == p));\n\n // If there is no match\n if (!out) {\n throw new Error(\"I don't know what param to use for \" + resourceType);\n }\n\n return out;\n}\n\n/**\n * Resolves a reference to target window. It may also open new window or tab if\n * the `target = \"popup\"` or `target = \"_blank\"`.\n * @param target\n * @param width Only used when `target = \"popup\"`\n * @param height Only used when `target = \"popup\"`\n */\nexport async function getTargetWindow(target: fhirclient.WindowTarget, width: number = 800, height: number = 720): Promise\n{\n // The target can be a function that returns the target. This can be\n // used to open a layer pop-up with an iframe and then return a reference\n // to that iframe (or its name)\n if (typeof target == \"function\") {\n target = await target();\n }\n\n // The target can be a window reference\n if (target && typeof target == \"object\") {\n return target;\n }\n\n // At this point target must be a string\n if (typeof target != \"string\") {\n _debug(\"Invalid target type '%s'. Failing back to '_self'.\", typeof target);\n return self;\n }\n\n // Current window\n if (target == \"_self\") {\n return self;\n }\n\n // The parent frame\n if (target == \"_parent\") {\n return parent;\n }\n\n // The top window\n if (target == \"_top\") {\n return top || self;\n }\n\n // New tab or window\n if (target == \"_blank\") {\n let error, targetWindow: Window | null = null;\n try {\n targetWindow = window.open(\"\", \"SMARTAuthPopup\");\n if (!targetWindow) {\n throw new Error(\"Perhaps window.open was blocked\");\n }\n } catch (e) {\n error = e;\n }\n\n if (!targetWindow) {\n _debug(\"Cannot open window. Failing back to '_self'. %s\", error);\n return self;\n } else {\n return targetWindow;\n }\n }\n\n // Popup window\n if (target == \"popup\") {\n let error, targetWindow: Window | null = null;\n // if (!targetWindow || targetWindow.closed) {\n try {\n targetWindow = window.open(\"\", \"SMARTAuthPopup\", [\n \"height=\" + height,\n \"width=\" + width,\n \"menubar=0\",\n \"resizable=1\",\n \"status=0\",\n \"top=\" + (screen.height - height) / 2,\n \"left=\" + (screen.width - width) / 2\n ].join(\",\"));\n if (!targetWindow) {\n throw new Error(\"Perhaps the popup window was blocked\");\n }\n } catch (e) {\n error = e;\n }\n\n if (!targetWindow) {\n _debug(\"Cannot open window. Failing back to '_self'. %s\", error);\n return self;\n } else {\n return targetWindow;\n }\n }\n\n // Frame or window by name\n const winOrFrame: Window = frames[target as any];\n if (winOrFrame) {\n return winOrFrame;\n }\n\n _debug(\"Unknown target '%s'. Failing back to '_self'.\", target);\n return self;\n}\n\nexport function assert(condition: any, message: string): asserts condition {\n if (!(condition)) {\n throw new Error(message)\n }\n}\n\nexport function assertJsonPatch(patch: fhirclient.JsonPatch): asserts patch {\n assert(Array.isArray(patch), \"The JSON patch must be an array\")\n assert(patch.length > 0, \"The JSON patch array should not be empty\")\n patch.forEach((operation: fhirclient.JsonPatchOperation) => {\n assert(\n [\"add\", \"replace\", \"test\", \"move\", \"copy\", \"remove\"].indexOf(operation.op) > -1,\n 'Each patch operation must have an \"op\" property which must be one of: \"add\", \"replace\", \"test\", \"move\", \"copy\", \"remove\"'\n )\n assert(operation.path && typeof operation.path, `Invalid \"${operation.op}\" operation. Missing \"path\" property`)\n \n if (operation.op == \"add\" || operation.op == \"replace\" || operation.op == \"test\") {\n assert(\"value\" in operation, `Invalid \"${operation.op}\" operation. Missing \"value\" property`)\n assert(Object.keys(operation).length == 3, `Invalid \"${operation.op}\" operation. Contains unknown properties`)\n }\n\n else if (operation.op == \"move\" || operation.op == \"copy\") {\n assert(typeof operation.from == \"string\", `Invalid \"${operation.op}\" operation. Requires a string \"from\" property`)\n assert(Object.keys(operation).length == 3, `Invalid \"${operation.op}\" operation. Contains unknown properties`)\n }\n\n else {\n assert(Object.keys(operation).length == 2, `Invalid \"${operation.op}\" operation. Contains unknown properties`)\n }\n })\n}\n","import { encodeURL, fromUint8Array } from \"js-base64\"\nimport { fhirclient } from \"../types\"\n\nconst crypto: Crypto = typeof globalThis === \"object\" && globalThis.crypto ?\n globalThis.crypto :\n require(\"isomorphic-webcrypto\").default;\n\nconst subtle: SubtleCrypto = crypto.subtle\n\ninterface PkcePair {\n codeChallenge: string\n codeVerifier: string\n}\n\nconst ALGS = {\n ES384: {\n name: \"ECDSA\",\n namedCurve: \"P-384\"\n } as EcKeyGenParams,\n RS384: {\n name: \"RSASSA-PKCS1-v1_5\",\n modulusLength: 4096,\n publicExponent: new Uint8Array([1, 0, 1]),\n hash: {\n name: 'SHA-384'\n }\n } as RsaHashedKeyGenParams\n};\n\nexport function randomBytes(count: number): Uint8Array {\n return crypto.getRandomValues(new Uint8Array(count));\n}\n\nexport async function digestSha256(payload: string): Promise {\n const prepared = new TextEncoder().encode(payload);\n const hash = await subtle.digest('SHA-256', prepared);\n return new Uint8Array(hash);\n}\n\nexport const generatePKCEChallenge = async (entropy = 96): Promise => {\n const inputBytes = randomBytes(entropy)\n const codeVerifier = fromUint8Array(inputBytes, true)\n const codeChallenge = fromUint8Array(await digestSha256(codeVerifier), true)\n return { codeChallenge, codeVerifier }\n}\n\nexport async function importJWK(jwk: fhirclient.JWK): Promise {\n // alg is optional in JWK but we need it here!\n if (!jwk.alg) {\n throw new Error('The \"alg\" property of the JWK must be set to \"ES384\" or \"RS384\"')\n }\n\n // Use of the \"key_ops\" member is OPTIONAL, unless the application requires its presence.\n // https://www.rfc-editor.org/rfc/rfc7517.html#section-4.3\n // \n // In our case the app will only import private keys so we can assume \"sign\"\n if (!Array.isArray(jwk.key_ops)) {\n jwk.key_ops = [\"sign\"]\n }\n\n // In this case the JWK has a \"key_ops\" array and \"sign\" is not listed\n if (!jwk.key_ops.includes(\"sign\")) {\n throw new Error('The \"key_ops\" property of the JWK does not contain \"sign\"')\n }\n\n try {\n return await subtle.importKey(\n \"jwk\",\n jwk,\n ALGS[jwk.alg],\n jwk.ext === true,\n jwk.key_ops// || ['sign']\n )\n } catch (e) {\n throw new Error(`The ${jwk.alg} is not supported by this browser: ${e}`)\n }\n}\n\nexport async function signCompactJws(alg: keyof typeof ALGS, privateKey: CryptoKey, header: any, payload: any): Promise {\n\n const jwtHeader = JSON.stringify({ ...header, alg });\n const jwtPayload = JSON.stringify(payload);\n const jwtAuthenticatedContent = `${encodeURL(jwtHeader)}.${encodeURL(jwtPayload)}`;\n\n const signature = await subtle.sign(\n { ...privateKey.algorithm, hash: 'SHA-384' },\n privateKey,\n new TextEncoder().encode(jwtAuthenticatedContent)\n );\n\n return `${jwtAuthenticatedContent}.${fromUint8Array(new Uint8Array(signature), true)}`\n}\n","/**\n * Combined list of FHIR resource types accepting patient parameter in FHIR R2-R4\n */\nexport const patientCompartment = [\n \"Account\",\n \"AdverseEvent\",\n \"AllergyIntolerance\",\n \"Appointment\",\n \"AppointmentResponse\",\n \"AuditEvent\",\n \"Basic\",\n \"BodySite\",\n \"BodyStructure\",\n \"CarePlan\",\n \"CareTeam\",\n \"ChargeItem\",\n \"Claim\",\n \"ClaimResponse\",\n \"ClinicalImpression\",\n \"Communication\",\n \"CommunicationRequest\",\n \"Composition\",\n \"Condition\",\n \"Consent\",\n \"Coverage\",\n \"CoverageEligibilityRequest\",\n \"CoverageEligibilityResponse\",\n \"DetectedIssue\",\n \"DeviceRequest\",\n \"DeviceUseRequest\",\n \"DeviceUseStatement\",\n \"DiagnosticOrder\",\n \"DiagnosticReport\",\n \"DocumentManifest\",\n \"DocumentReference\",\n \"EligibilityRequest\",\n \"Encounter\",\n \"EnrollmentRequest\",\n \"EpisodeOfCare\",\n \"ExplanationOfBenefit\",\n \"FamilyMemberHistory\",\n \"Flag\",\n \"Goal\",\n \"Group\",\n \"ImagingManifest\",\n \"ImagingObjectSelection\",\n \"ImagingStudy\",\n \"Immunization\",\n \"ImmunizationEvaluation\",\n \"ImmunizationRecommendation\",\n \"Invoice\",\n \"List\",\n \"MeasureReport\",\n \"Media\",\n \"MedicationAdministration\",\n \"MedicationDispense\",\n \"MedicationOrder\",\n \"MedicationRequest\",\n \"MedicationStatement\",\n \"MolecularSequence\",\n \"NutritionOrder\",\n \"Observation\",\n \"Order\",\n \"Patient\",\n \"Person\",\n \"Procedure\",\n \"ProcedureRequest\",\n \"Provenance\",\n \"QuestionnaireResponse\",\n \"ReferralRequest\",\n \"RelatedPerson\",\n \"RequestGroup\",\n \"ResearchSubject\",\n \"RiskAssessment\",\n \"Schedule\",\n \"ServiceRequest\",\n \"Specimen\",\n \"SupplyDelivery\",\n \"SupplyRequest\",\n \"VisionPrescription\"\n];\n\n/**\n * Map of FHIR releases and their abstract version as number\n */\nexport const fhirVersions = {\n \"0.4.0\": 2,\n \"0.5.0\": 2,\n \"1.0.0\": 2,\n \"1.0.1\": 2,\n \"1.0.2\": 2,\n \"1.1.0\": 3,\n \"1.4.0\": 3,\n \"1.6.0\": 3,\n \"1.8.0\": 3,\n \"3.0.0\": 3,\n \"3.0.1\": 3,\n \"3.3.0\": 4,\n \"3.5.0\": 4,\n \"4.0.0\": 4,\n \"4.0.1\": 4\n};\n\n/**\n * Combined (FHIR R2-R4) list of search parameters that can be used to scope\n * a request by patient ID.\n */\nexport const patientParams = [\n \"patient\",\n \"subject\",\n \"requester\",\n \"member\",\n \"actor\",\n \"beneficiary\"\n];\n\n/**\n * The name of the sessionStorage entry that contains the current key\n */\nexport const SMART_KEY = \"SMART_KEY\";\n","/* global window */\nimport {\n debug as _debug,\n request,\n getPath,\n getTimeInFuture,\n randomString,\n getAndCache,\n fetchConformanceStatement,\n getAccessTokenExpiration,\n getTargetWindow,\n assert\n} from \"./lib\";\nimport Client from \"./Client\";\nimport { SMART_KEY } from \"./settings\";\nimport { fhirclient } from \"./types\";\n\nconst debug = _debug.extend(\"oauth2\");\n\nexport { SMART_KEY as KEY };\n\nfunction isBrowser() {\n return typeof window === \"object\";\n}\n\n/**\n * Fetches the well-known json file from the given base URL.\n * Note that the result is cached in memory (until the page is reloaded in the\n * browser) because it might have to be re-used by the client\n * @param baseUrl The base URL of the FHIR server\n */\nexport function fetchWellKnownJson(baseUrl = \"/\", requestOptions?: RequestInit): Promise\n{\n const url = String(baseUrl).replace(/\\/*$/, \"/\") + \".well-known/smart-configuration\";\n return getAndCache(url, requestOptions).catch((ex: Error) => {\n throw new Error(`Failed to fetch the well-known json \"${url}\". ${ex.message}`);\n });\n}\n\n/**\n * Fetch a \"WellKnownJson\" and extract the SMART endpoints from it\n */\nfunction getSecurityExtensionsFromWellKnownJson(baseUrl = \"/\", requestOptions?: RequestInit): Promise\n{\n return fetchWellKnownJson(baseUrl, requestOptions).then(meta => {\n if (!meta.authorization_endpoint || !meta.token_endpoint) {\n throw new Error(\"Invalid wellKnownJson\");\n }\n return {\n registrationUri : meta.registration_endpoint || \"\",\n authorizeUri : meta.authorization_endpoint,\n tokenUri : meta.token_endpoint,\n codeChallengeMethods: meta.code_challenge_methods_supported || []\n };\n });\n}\n\n/**\n * Fetch a `CapabilityStatement` and extract the SMART endpoints from it\n */\nfunction getSecurityExtensionsFromConformanceStatement(baseUrl = \"/\", requestOptions?: RequestInit): Promise\n{\n return fetchConformanceStatement(baseUrl, requestOptions).then(meta => {\n const nsUri = \"http://fhir-registry.smarthealthit.org/StructureDefinition/oauth-uris\";\n const extensions = ((getPath(meta || {}, \"rest.0.security.extension\") || []) as Array>)\n .filter(e => e.url === nsUri)\n .map(o => o.extension)[0];\n\n const out:fhirclient.OAuthSecurityExtensions = {\n registrationUri : \"\",\n authorizeUri : \"\",\n tokenUri : \"\",\n codeChallengeMethods: [],\n };\n\n if (extensions) {\n extensions.forEach(ext => {\n if (ext.url === \"register\") {\n out.registrationUri = ext.valueUri;\n }\n if (ext.url === \"authorize\") {\n out.authorizeUri = ext.valueUri;\n }\n if (ext.url === \"token\") {\n out.tokenUri = ext.valueUri;\n }\n });\n }\n\n return out;\n });\n}\n\n\n/**\n * Given a FHIR server, returns an object with it's Oauth security endpoints\n * that we are interested in. This will try to find the info in both the\n * `CapabilityStatement` and the `.well-known/smart-configuration`. Whatever\n * Arrives first will be used and the other request will be aborted.\n * @param [baseUrl = \"/\"] Fhir server base URL\n */\nexport function getSecurityExtensions(baseUrl = \"/\"): Promise\n{\n return getSecurityExtensionsFromWellKnownJson(baseUrl)\n .catch(() => getSecurityExtensionsFromConformanceStatement(baseUrl));\n}\n\n/**\n * Starts the SMART Launch Sequence.\n * > **IMPORTANT**:\n * `authorize()` will end up redirecting you to the authorization server.\n * This means that you should not add anything to the returned promise chain.\n * Any code written directly after the authorize() call might not be executed\n * due to that redirect!\n * @param env\n * @param [params]\n */\nexport async function authorize(\n env: fhirclient.Adapter,\n params: fhirclient.AuthorizeParams | fhirclient.AuthorizeParams[] = {}\n): Promise\n{\n const url = env.getUrl();\n\n // Multiple config for EHR launches ---------------------------------------\n if (Array.isArray(params)) {\n const urlISS = url.searchParams.get(\"iss\") || url.searchParams.get(\"fhirServiceUrl\");\n if (!urlISS) {\n throw new Error(\n 'Passing in an \"iss\" url parameter is required if authorize ' +\n 'uses multiple configurations'\n );\n }\n // pick the right config\n const cfg = params.find(x => {\n if (x.issMatch) {\n if (typeof x.issMatch === \"function\") {\n return !!x.issMatch(urlISS);\n }\n if (typeof x.issMatch === \"string\") {\n return x.issMatch === urlISS;\n }\n if (x.issMatch instanceof RegExp) {\n return x.issMatch.test(urlISS);\n }\n }\n return false;\n });\n assert(cfg, `No configuration found matching the current \"iss\" parameter \"${urlISS}\"`);\n return await authorize(env, cfg);\n }\n // ------------------------------------------------------------------------\n\n // Obtain input\n const {\n redirect_uri,\n clientSecret,\n fakeTokenResponse,\n patientId,\n encounterId,\n client_id,\n target,\n width,\n height,\n pkceMode,\n clientPublicKeySetUrl\n } = params;\n\n let {\n iss,\n launch,\n fhirServiceUrl,\n redirectUri,\n noRedirect,\n scope = \"\",\n clientId,\n completeInTarget,\n clientPrivateJwk\n } = params;\n\n const storage = env.getStorage();\n\n // For these three an url param takes precedence over inline option\n iss = url.searchParams.get(\"iss\") || iss;\n fhirServiceUrl = url.searchParams.get(\"fhirServiceUrl\") || fhirServiceUrl;\n launch = url.searchParams.get(\"launch\") || launch;\n\n if (!clientId) {\n clientId = client_id;\n }\n\n if (!redirectUri) {\n redirectUri = redirect_uri;\n }\n\n if (!redirectUri) {\n redirectUri = env.relative(\".\");\n } else if (!redirectUri.match(/^https?\\:\\/\\//)) {\n redirectUri = env.relative(redirectUri);\n }\n\n const serverUrl = String(iss || fhirServiceUrl || \"\");\n\n // Validate input\n if (!serverUrl) {\n throw new Error(\n \"No server url found. It must be specified as `iss` or as \" +\n \"`fhirServiceUrl` parameter\"\n );\n }\n\n if (iss) {\n debug(\"Making %s launch...\", launch ? \"EHR\" : \"standalone\");\n }\n\n // append launch scope if needed\n if (launch && !scope.match(/launch/)) {\n scope += \" launch\";\n }\n\n if (isBrowser()) {\n const inFrame = isInFrame();\n const inPopUp = isInPopUp();\n\n if ((inFrame || inPopUp) && completeInTarget !== true && completeInTarget !== false) {\n \n // completeInTarget will default to true if authorize is called from\n // within an iframe. This is to avoid issues when the entire app\n // happens to be rendered in an iframe (including in some EHRs),\n // even though that was not how the app developer's intention.\n completeInTarget = inFrame;\n\n // In this case we can't always make the best decision so ask devs\n // to be explicit in their configuration.\n console.warn(\n 'Your app is being authorized from within an iframe or popup ' +\n 'window. Please be explicit and provide a \"completeInTarget\" ' +\n 'option. Use \"true\" to complete the authorization in the ' +\n 'same window, or \"false\" to try to complete it in the parent ' +\n 'or the opener window. See http://docs.smarthealthit.org/client-js/api.html'\n );\n }\n }\n\n // If `authorize` is called, make sure we clear any previous state (in case\n // this is a re-authorize)\n const oldKey = await storage.get(SMART_KEY);\n await storage.unset(oldKey);\n\n // create initial state\n const stateKey = randomString(16);\n const state: fhirclient.ClientState = {\n clientId,\n scope,\n redirectUri,\n serverUrl,\n clientSecret,\n clientPrivateJwk,\n tokenResponse: {},\n key: stateKey,\n completeInTarget,\n clientPublicKeySetUrl\n };\n\n const fullSessionStorageSupport = isBrowser() ?\n getPath(env, \"options.fullSessionStorageSupport\") :\n true;\n\n if (fullSessionStorageSupport) {\n await storage.set(SMART_KEY, stateKey);\n }\n\n // fakeTokenResponse to override stuff (useful in development)\n if (fakeTokenResponse) {\n Object.assign(state.tokenResponse!, fakeTokenResponse);\n }\n\n // Fixed patientId (useful in development)\n if (patientId) {\n Object.assign(state.tokenResponse!, { patient: patientId });\n }\n\n // Fixed encounterId (useful in development)\n if (encounterId) {\n Object.assign(state.tokenResponse!, { encounter: encounterId });\n }\n\n let redirectUrl = redirectUri + \"?state=\" + encodeURIComponent(stateKey);\n\n // bypass oauth if fhirServiceUrl is used (but iss takes precedence)\n if (fhirServiceUrl && !iss) {\n debug(\"Making fake launch...\");\n await storage.set(stateKey, state);\n if (noRedirect) {\n return redirectUrl;\n }\n return await env.redirect(redirectUrl);\n }\n\n // Get oauth endpoints and add them to the state\n const extensions = await getSecurityExtensions(serverUrl);\n Object.assign(state, extensions);\n await storage.set(stateKey, state);\n\n // If this happens to be an open server and there is no authorizeUri\n if (!state.authorizeUri) {\n if (noRedirect) {\n return redirectUrl;\n }\n return await env.redirect(redirectUrl);\n }\n\n // build the redirect uri\n const redirectParams = [\n \"response_type=code\",\n \"client_id=\" + encodeURIComponent(clientId || \"\"),\n \"scope=\" + encodeURIComponent(scope),\n \"redirect_uri=\" + encodeURIComponent(redirectUri),\n \"aud=\" + encodeURIComponent(serverUrl),\n \"state=\" + encodeURIComponent(stateKey)\n ];\n\n // also pass this in case of EHR launch\n if (launch) {\n redirectParams.push(\"launch=\" + encodeURIComponent(launch));\n }\n\n if (shouldIncludeChallenge(extensions.codeChallengeMethods.includes('S256'), pkceMode)) {\n let codes = await env.security.generatePKCEChallenge()\n Object.assign(state, codes);\n await storage.set(stateKey, state);\n redirectParams.push(\"code_challenge=\" + state.codeChallenge);// note that the challenge is ALREADY encoded properly\n redirectParams.push(\"code_challenge_method=S256\");\n }\n \n redirectUrl = state.authorizeUri + \"?\" + redirectParams.join(\"&\");\n\n if (noRedirect) {\n return redirectUrl;\n }\n\n if (target && isBrowser()) {\n let win: Window;\n\n win = await getTargetWindow(target, width, height);\n\n if (win !== self) {\n try {\n // Also remove any old state from the target window and then\n // transfer the current state there\n win.sessionStorage.removeItem(oldKey);\n win.sessionStorage.setItem(stateKey, JSON.stringify(state));\n } catch (ex) {\n _debug(`Failed to modify window.sessionStorage. Perhaps it is from different origin?. Failing back to \"_self\". %s`, ex);\n win = self;\n }\n }\n\n if (win !== self) {\n try {\n win.location.href = redirectUrl;\n self.addEventListener(\"message\", onMessage);\n } catch (ex) {\n _debug(`Failed to modify window.location. Perhaps it is from different origin?. Failing back to \"_self\". %s`, ex);\n self.location.href = redirectUrl;\n }\n } else {\n self.location.href = redirectUrl;\n }\n\n return;\n }\n else {\n return await env.redirect(redirectUrl);\n }\n}\n\nfunction shouldIncludeChallenge(S256supported: boolean, pkceMode?: string) {\n if (pkceMode === \"disabled\") {\n return false;\n }\n if (pkceMode === \"unsafeV1\") {\n return true;\n }\n if (pkceMode === \"required\") {\n if (!S256supported) {\n throw new Error(\"Required PKCE code challenge method (`S256`) was not found.\");\n }\n return true;\n }\n return S256supported;\n}\n\n/**\n * Checks if called within a frame. Only works in browsers!\n * If the current window has a `parent` or `top` properties that refer to\n * another window, returns true. If trying to access `top` or `parent` throws an\n * error, returns true. Otherwise returns `false`.\n */\nexport function isInFrame() {\n try {\n return self !== top && parent !== self;\n } catch (e) {\n return true;\n }\n}\n\n/**\n * Checks if called within another window (popup or tab). Only works in browsers!\n * To consider itself called in a new window, this function verifies that:\n * 1. `self === top` (not in frame)\n * 2. `!!opener && opener !== self` The window has an opener\n * 3. `!!window.name` The window has a `name` set\n */\nexport function isInPopUp() {\n try {\n return self === top &&\n !!opener &&\n opener !== self &&\n !!window.name;\n } catch (e) {\n return false;\n }\n}\n\n/**\n * Another window can send a \"completeAuth\" message to this one, making it to\n * navigate to e.data.url\n * @param e The message event\n */\nexport function onMessage(e: MessageEvent) {\n if (e.data.type == \"completeAuth\" && e.origin === new URL(self.location.href).origin) {\n window.removeEventListener(\"message\", onMessage);\n window.location.href = e.data.url;\n }\n}\n\n/**\n * The ready function should only be called on the page that represents\n * the redirectUri. We typically land there after a redirect from the\n * authorization server, but this code will also be executed upon subsequent\n * navigation or page refresh.\n */\nexport async function ready(env: fhirclient.Adapter, options: fhirclient.ReadyOptions = {}): Promise\n{\n const url = env.getUrl();\n const Storage = env.getStorage();\n const params = url.searchParams;\n\n let key = params.get(\"state\");\n const code = params.get(\"code\");\n const authError = params.get(\"error\");\n const authErrorDescription = params.get(\"error_description\");\n\n if (!key) {\n key = await Storage.get(SMART_KEY);\n }\n\n // Start by checking the url for `error` and `error_description` parameters.\n // This happens when the auth server rejects our authorization attempt. In\n // this case it has no other way to tell us what the error was, other than\n // appending these parameters to the redirect url.\n // From client's point of view, this is not very reliable (because we can't\n // know how we have landed on this page - was it a redirect or was it loaded\n // manually). However, if `ready()` is being called, we can assume\n // that the url comes from the auth server (otherwise the app won't work\n // anyway).\n if (authError || authErrorDescription) {\n throw new Error([\n authError,\n authErrorDescription\n ].filter(Boolean).join(\": \"));\n }\n\n debug(\"key: %s, code: %s\", key, code);\n\n // key might be coming from the page url so it might be empty or missing\n assert(key, \"No 'state' parameter found. Please (re)launch the app.\");\n\n // Check if we have a previous state\n let state = (await Storage.get(key)) as fhirclient.ClientState;\n\n const fullSessionStorageSupport = isBrowser() ?\n getPath(env, \"options.fullSessionStorageSupport\") :\n true;\n\n // If we are in a popup window or an iframe and the authorization is\n // complete, send the location back to our opener and exit.\n if (isBrowser() && state && !state.completeInTarget) {\n\n const inFrame = isInFrame();\n const inPopUp = isInPopUp();\n\n // we are about to return to the opener/parent where completeAuth will\n // be called again. In rare cases the opener or parent might also be\n // a frame or popup. Then inFrame or inPopUp will be true but we still\n // have to stop going up the chain. To guard against that weird form of\n // recursion we pass one additional parameter to the url which we later\n // remove.\n if ((inFrame || inPopUp) && !url.searchParams.get(\"complete\")) {\n url.searchParams.set(\"complete\", \"1\");\n const { href, origin } = url;\n if (inFrame) {\n parent.postMessage({ type: \"completeAuth\", url: href }, origin);\n }\n if (inPopUp) {\n opener.postMessage({ type: \"completeAuth\", url: href }, origin);\n window.close();\n }\n\n return new Promise(() => { /* leave it pending!!! */ });\n }\n }\n\n url.searchParams.delete(\"complete\");\n\n // Do we have to remove the `code` and `state` params from the URL?\n const hasState = params.has(\"state\");\n\n if (isBrowser() && getPath(env, \"options.replaceBrowserHistory\") && (code || hasState)) {\n // `code` is the flag that tell us to request an access token.\n // We have to remove it, otherwise the page will authorize on\n // every load!\n if (code) {\n params.delete(\"code\");\n debug(\"Removed code parameter from the url.\");\n }\n\n // If we have `fullSessionStorageSupport` it means we no longer\n // need the `state` key. It will be stored to a well know\n // location - sessionStorage[SMART_KEY]. However, no\n // fullSessionStorageSupport means that this \"well know location\"\n // might be shared between windows and tabs. In this case we\n // MUST keep the `state` url parameter.\n if (hasState && fullSessionStorageSupport) {\n params.delete(\"state\");\n debug(\"Removed state parameter from the url.\");\n }\n\n // If the browser does not support the replaceState method for the\n // History Web API, the \"code\" parameter cannot be removed. As a\n // consequence, the page will (re)authorize on every load. The\n // workaround is to reload the page to new location without those\n // parameters. If that is not acceptable replaceBrowserHistory\n // should be set to false.\n if (window.history.replaceState) {\n window.history.replaceState({}, \"\", url.href);\n }\n }\n\n // If the state does not exist, it means the page has been loaded directly.\n assert(state, \"No state found! Please (re)launch the app.\");\n\n // Assume the client has already completed a token exchange when\n // there is no code (but we have a state) or access token is found in state\n const authorized = !code || state.tokenResponse?.access_token;\n\n // If we are authorized already, then this is just a reload.\n // Otherwise, we have to complete the code flow\n if (!authorized && state.tokenUri) {\n\n assert(code, \"'code' url parameter is required\");\n\n debug(\"Preparing to exchange the code for access token...\");\n const requestOptions = await buildTokenRequest(env, {\n code,\n state,\n clientPublicKeySetUrl: options.clientPublicKeySetUrl,\n privateKey: options.privateKey || state.clientPrivateJwk\n });\n debug(\"Token request options: %O\", requestOptions);\n\n // The EHR authorization server SHALL return a JSON structure that\n // includes an access token or a message indicating that the\n // authorization request has been denied.\n const tokenResponse = await request(state.tokenUri, requestOptions);\n debug(\"Token response: %O\", tokenResponse);\n assert(tokenResponse.access_token, \"Failed to obtain access token.\");\n\n // Now we need to determine when is this authorization going to expire\n state.expiresAt = getAccessTokenExpiration(tokenResponse, env);\n\n // save the tokenResponse so that we don't have to re-authorize on\n // every page reload\n state = { ...state, tokenResponse };\n await Storage.set(key, state);\n debug(\"Authorization successful!\");\n }\n else {\n debug(state.tokenResponse?.access_token ?\n \"Already authorized\" :\n \"No authorization needed\"\n );\n }\n\n if (fullSessionStorageSupport) {\n await Storage.set(SMART_KEY, key);\n }\n\n const client = new Client(env, state);\n debug(\"Created client instance: %O\", client);\n return client;\n}\n\n/**\n * Builds the token request options. Does not make the request, just\n * creates it's configuration and returns it in a Promise.\n */\nexport async function buildTokenRequest(\n env: fhirclient.Adapter,\n {\n code,\n state,\n clientPublicKeySetUrl,\n privateKey\n }: {\n /**\n * The `code` URL parameter received from the auth redirect\n */\n code: string,\n \n /**\n * The app state\n */\n state: fhirclient.ClientState\n\n /**\n * If provided overrides the `clientPublicKeySetUrl` from the authorize\n * options (if any). Used for `jku` token header in case of asymmetric auth.\n */\n clientPublicKeySetUrl?: string\n\n /**\n * Can be a private JWK, or an object with alg, kid and key properties,\n * where `key` is an un-extractable private CryptoKey object.\n */\n privateKey?: fhirclient.JWK | {\n key: CryptoKey\n alg: \"RS384\" | \"ES384\"\n kid: string\n }\n }\n): Promise\n{\n const { redirectUri, clientSecret, tokenUri, clientId, codeVerifier } = state;\n\n assert(redirectUri, \"Missing state.redirectUri\");\n assert(tokenUri, \"Missing state.tokenUri\");\n assert(clientId, \"Missing state.clientId\");\n\n const requestOptions: Record = {\n method: \"POST\",\n headers: { \"content-type\": \"application/x-www-form-urlencoded\" },\n body: `code=${code}&grant_type=authorization_code&redirect_uri=${\n encodeURIComponent(redirectUri)}`\n };\n\n // For public apps, authentication is not possible (and thus not required),\n // since a client with no secret cannot prove its identity when it issues a\n // call. (The end-to-end system can still be secure because the client comes\n // from a known, https protected endpoint specified and enforced by the\n // redirect uri.) For confidential apps, an Authorization header using HTTP\n // Basic authentication is required, where the username is the app’s\n // client_id and the password is the app’s client_secret (see example).\n if (clientSecret) {\n requestOptions.headers.authorization = \"Basic \" + env.btoa(\n clientId + \":\" + clientSecret\n );\n debug(\n \"Using state.clientSecret to construct the authorization header: %s\",\n requestOptions.headers.authorization\n );\n }\n \n // Asymmetric auth\n else if (privateKey) {\n\n const pk = \"key\" in privateKey ?\n privateKey.key as CryptoKey:\n await env.security.importJWK(privateKey as fhirclient.JWK)\n\n const jwtHeaders = {\n typ: \"JWT\",\n kid: privateKey.kid,\n jku: clientPublicKeySetUrl || state.clientPublicKeySetUrl\n };\n\n const jwtClaims = {\n iss: clientId,\n sub: clientId,\n aud: tokenUri,\n jti: env.base64urlencode(env.security.randomBytes(32)),\n exp: getTimeInFuture(120) // two minutes in the future\n };\n \n const clientAssertion = await env.security.signCompactJws(privateKey.alg, pk, jwtHeaders, jwtClaims);\n requestOptions.body += `&client_assertion_type=${encodeURIComponent(\"urn:ietf:params:oauth:client-assertion-type:jwt-bearer\")}`;\n requestOptions.body += `&client_assertion=${encodeURIComponent(clientAssertion)}`;\n debug(\"Using state.clientPrivateJwk to add a client_assertion to the POST body\")\n }\n \n // Public client\n else {\n debug(\"Public client detected; adding state.clientId to the POST body\");\n requestOptions.body += `&client_id=${encodeURIComponent(clientId)}`;\n }\n\n if (codeVerifier) {\n debug(\"Found state.codeVerifier, adding to the POST body\")\n // Note that the codeVerifier is ALREADY encoded properly \n requestOptions.body += \"&code_verifier=\" + codeVerifier;\n }\n \n return requestOptions as RequestInit;\n}\n\n/**\n * This function can be used when you want to handle everything in one page\n * (no launch endpoint needed). You can think of it as if it does:\n * ```js\n * authorize(options).then(ready)\n * ```\n *\n * **Be careful with init()!** There are some details you need to be aware of:\n *\n * 1. It will only work if your launch_uri is the same as your redirect_uri.\n * While this should be valid, we can’t promise that every EHR will allow you\n * to register client with such settings.\n * 2. Internally, `init()` will be called twice. First it will redirect to the\n * EHR, then the EHR will redirect back to the page where init() will be\n * called again to complete the authorization. This is generally fine,\n * because the returned promise will only be resolved once, after the second\n * execution, but please also consider the following:\n * - You should wrap all your app’s code in a function that is only executed\n * after `init()` resolves!\n * - Since the page will be loaded twice, you must be careful if your code\n * has global side effects that can persist between page reloads\n * (for example writing to localStorage).\n * 3. For standalone launch, only use init in combination with offline_access\n * scope. Once the access_token expires, if you don’t have a refresh_token\n * there is no way to re-authorize properly. We detect that and delete the\n * expired access token, but it still means that the user will have to\n * refresh the page twice to re-authorize.\n * @param env The adapter\n * @param authorizeOptions The authorize options\n */\nexport async function init(\n env: fhirclient.Adapter,\n authorizeOptions: fhirclient.AuthorizeParams,\n readyOptions?: fhirclient.ReadyOptions\n): Promise\n{\n const url = env.getUrl();\n const code = url.searchParams.get(\"code\");\n const state = url.searchParams.get(\"state\");\n\n // if `code` and `state` params are present we need to complete the auth flow\n if (code && state) {\n return ready(env, readyOptions);\n }\n\n // Check for existing client state. If state is found, it means a client\n // instance have already been created in this session and we should try to\n // \"revive\" it.\n const storage = env.getStorage();\n const key = state || await storage.get(SMART_KEY);\n const cached = await storage.get(key);\n if (cached) {\n return new Client(env, cached);\n }\n\n // Otherwise try to launch\n return authorize(env, authorizeOptions).then(() => {\n // `init` promises a Client but that cannot happen in this case. The\n // browser will be redirected (unload the page and be redirected back\n // to it later and the same init function will be called again). On\n // success, authorize will resolve with the redirect url but we don't\n // want to return that from this promise chain because it is not a\n // Client instance. At the same time, if authorize fails, we do want to\n // pass the error to those waiting for a client instance.\n return new Promise(() => { /* leave it pending!!! */ });\n });\n}\n","export default class Storage\n{\n /**\n * Gets the value at `key`. Returns a promise that will be resolved\n * with that value (or undefined for missing keys).\n */\n async get(key: string): Promise\n {\n const value = sessionStorage[key];\n if (value) {\n return JSON.parse(value);\n }\n return null;\n }\n\n /**\n * Sets the `value` on `key` and returns a promise that will be resolved\n * with the value that was set.\n */\n async set(key: string, value: any): Promise\n {\n sessionStorage[key] = JSON.stringify(value);\n return value;\n }\n\n /**\n * Deletes the value at `key`. Returns a promise that will be resolved\n * with true if the key was deleted or with false if it was not (eg. if\n * did not exist).\n */\n async unset(key: string): Promise\n {\n if (key in sessionStorage) {\n delete sessionStorage[key];\n return true;\n }\n return false;\n }\n\n}\n","// This map contains reusable debug messages (only those used in multiple places)\nexport default {\n expired : \"Session expired! Please re-launch the app\",\n noScopeForId : \"Trying to get the ID of the selected %s. Please add 'launch' or 'launch/%s' to the requested scopes and try again.\",\n noIfNoAuth : \"You are trying to get %s but the app is not authorized yet.\",\n noFreeContext: \"Please don't use open fhir servers if you need to access launch context items like the %S.\"\n};\n","var 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 $TypeError(tryToString(argument) + ' is not a function');\n};\n","var isConstructor = require('../internals/is-constructor');\nvar tryToString = require('../internals/try-to-string');\n\nvar $TypeError = TypeError;\n\n// `Assert: IsConstructor(argument) is true`\nmodule.exports = function (argument) {\n if (isConstructor(argument)) return argument;\n throw $TypeError(tryToString(argument) + ' is not a constructor');\n};\n","var isCallable = require('../internals/is-callable');\n\nvar $String = String;\nvar $TypeError = TypeError;\n\nmodule.exports = function (argument) {\n if (typeof argument == 'object' || isCallable(argument)) return argument;\n throw $TypeError(\"Can't set \" + $String(argument) + ' as a prototype');\n};\n","var wellKnownSymbol = require('../internals/well-known-symbol');\nvar create = require('../internals/object-create');\nvar defineProperty = require('../internals/object-define-property').f;\n\nvar UNSCOPABLES = wellKnownSymbol('unscopables');\nvar ArrayPrototype = Array.prototype;\n\n// Array.prototype[@@unscopables]\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\nif (ArrayPrototype[UNSCOPABLES] == undefined) {\n defineProperty(ArrayPrototype, UNSCOPABLES, {\n configurable: true,\n value: create(null)\n });\n}\n\n// add a key to Array.prototype[@@unscopables]\nmodule.exports = function (key) {\n ArrayPrototype[UNSCOPABLES][key] = true;\n};\n","'use strict';\nvar charAt = require('../internals/string-multibyte').charAt;\n\n// `AdvanceStringIndex` abstract operation\n// https://tc39.es/ecma262/#sec-advancestringindex\nmodule.exports = function (S, index, unicode) {\n return index + (unicode ? charAt(S, index).length : 1);\n};\n","var 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 $TypeError('Incorrect invocation');\n};\n","var 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 $TypeError($String(argument) + ' is not an object');\n};\n","// eslint-disable-next-line es-x/no-typed-arrays -- safe\nmodule.exports = typeof ArrayBuffer != 'undefined' && typeof DataView != 'undefined';\n","'use strict';\nvar NATIVE_ARRAY_BUFFER = require('../internals/array-buffer-native');\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 defineProperty = require('../internals/object-define-property').f;\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 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 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 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 defineProperty(TypedArrayPrototype, TO_STRING_TAG, { get: function () {\n return isObject(this) ? this[TYPED_ARRAY_TAG] : undefined;\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 global = require('../internals/global');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar NATIVE_ARRAY_BUFFER = require('../internals/array-buffer-native');\nvar FunctionName = require('../internals/function-name');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar defineBuiltIns = require('../internals/define-built-ins');\nvar fails = require('../internals/fails');\nvar anInstance = require('../internals/an-instance');\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\nvar toLength = require('../internals/to-length');\nvar toIndex = require('../internals/to-index');\nvar IEEE754 = require('../internals/ieee754');\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\nvar getOwnPropertyNames = require('../internals/object-get-own-property-names').f;\nvar defineProperty = require('../internals/object-define-property').f;\nvar arrayFill = require('../internals/array-fill');\nvar arraySlice = require('../internals/array-slice-simple');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar PROPER_FUNCTION_NAME = FunctionName.PROPER;\nvar CONFIGURABLE_FUNCTION_NAME = FunctionName.CONFIGURABLE;\nvar getInternalState = InternalStateModule.get;\nvar setInternalState = InternalStateModule.set;\nvar ARRAY_BUFFER = 'ArrayBuffer';\nvar DATA_VIEW = 'DataView';\nvar PROTOTYPE = 'prototype';\nvar WRONG_LENGTH = 'Wrong length';\nvar WRONG_INDEX = 'Wrong index';\nvar NativeArrayBuffer = global[ARRAY_BUFFER];\nvar $ArrayBuffer = NativeArrayBuffer;\nvar ArrayBufferPrototype = $ArrayBuffer && $ArrayBuffer[PROTOTYPE];\nvar $DataView = global[DATA_VIEW];\nvar DataViewPrototype = $DataView && $DataView[PROTOTYPE];\nvar ObjectPrototype = Object.prototype;\nvar Array = global.Array;\nvar RangeError = global.RangeError;\nvar fill = uncurryThis(arrayFill);\nvar reverse = uncurryThis([].reverse);\n\nvar packIEEE754 = IEEE754.pack;\nvar unpackIEEE754 = IEEE754.unpack;\n\nvar packInt8 = function (number) {\n return [number & 0xFF];\n};\n\nvar packInt16 = function (number) {\n return [number & 0xFF, number >> 8 & 0xFF];\n};\n\nvar packInt32 = function (number) {\n return [number & 0xFF, number >> 8 & 0xFF, number >> 16 & 0xFF, number >> 24 & 0xFF];\n};\n\nvar unpackInt32 = function (buffer) {\n return buffer[3] << 24 | buffer[2] << 16 | buffer[1] << 8 | buffer[0];\n};\n\nvar packFloat32 = function (number) {\n return packIEEE754(number, 23, 4);\n};\n\nvar packFloat64 = function (number) {\n return packIEEE754(number, 52, 8);\n};\n\nvar addGetter = function (Constructor, key) {\n defineProperty(Constructor[PROTOTYPE], key, { get: function () { return getInternalState(this)[key]; } });\n};\n\nvar get = function (view, count, index, isLittleEndian) {\n var intIndex = toIndex(index);\n var store = getInternalState(view);\n if (intIndex + count > store.byteLength) throw RangeError(WRONG_INDEX);\n var bytes = getInternalState(store.buffer).bytes;\n var start = intIndex + store.byteOffset;\n var pack = arraySlice(bytes, start, start + count);\n return isLittleEndian ? pack : reverse(pack);\n};\n\nvar set = function (view, count, index, conversion, value, isLittleEndian) {\n var intIndex = toIndex(index);\n var store = getInternalState(view);\n if (intIndex + count > store.byteLength) throw RangeError(WRONG_INDEX);\n var bytes = getInternalState(store.buffer).bytes;\n var start = intIndex + store.byteOffset;\n var pack = conversion(+value);\n for (var i = 0; i < count; i++) bytes[start + i] = pack[isLittleEndian ? i : count - i - 1];\n};\n\nif (!NATIVE_ARRAY_BUFFER) {\n $ArrayBuffer = function ArrayBuffer(length) {\n anInstance(this, ArrayBufferPrototype);\n var byteLength = toIndex(length);\n setInternalState(this, {\n bytes: fill(Array(byteLength), 0),\n byteLength: byteLength\n });\n if (!DESCRIPTORS) this.byteLength = byteLength;\n };\n\n ArrayBufferPrototype = $ArrayBuffer[PROTOTYPE];\n\n $DataView = function DataView(buffer, byteOffset, byteLength) {\n anInstance(this, DataViewPrototype);\n anInstance(buffer, ArrayBufferPrototype);\n var bufferLength = getInternalState(buffer).byteLength;\n var offset = toIntegerOrInfinity(byteOffset);\n if (offset < 0 || offset > bufferLength) throw RangeError('Wrong offset');\n byteLength = byteLength === undefined ? bufferLength - offset : toLength(byteLength);\n if (offset + byteLength > bufferLength) throw RangeError(WRONG_LENGTH);\n setInternalState(this, {\n buffer: buffer,\n byteLength: byteLength,\n byteOffset: offset\n });\n if (!DESCRIPTORS) {\n this.buffer = buffer;\n this.byteLength = byteLength;\n this.byteOffset = offset;\n }\n };\n\n DataViewPrototype = $DataView[PROTOTYPE];\n\n if (DESCRIPTORS) {\n addGetter($ArrayBuffer, 'byteLength');\n addGetter($DataView, 'buffer');\n addGetter($DataView, 'byteLength');\n addGetter($DataView, 'byteOffset');\n }\n\n defineBuiltIns(DataViewPrototype, {\n getInt8: function getInt8(byteOffset) {\n return get(this, 1, byteOffset)[0] << 24 >> 24;\n },\n getUint8: function getUint8(byteOffset) {\n return get(this, 1, byteOffset)[0];\n },\n getInt16: function getInt16(byteOffset /* , littleEndian */) {\n var bytes = get(this, 2, byteOffset, arguments.length > 1 ? arguments[1] : undefined);\n return (bytes[1] << 8 | bytes[0]) << 16 >> 16;\n },\n getUint16: function getUint16(byteOffset /* , littleEndian */) {\n var bytes = get(this, 2, byteOffset, arguments.length > 1 ? arguments[1] : undefined);\n return bytes[1] << 8 | bytes[0];\n },\n getInt32: function getInt32(byteOffset /* , littleEndian */) {\n return unpackInt32(get(this, 4, byteOffset, arguments.length > 1 ? arguments[1] : undefined));\n },\n getUint32: function getUint32(byteOffset /* , littleEndian */) {\n return unpackInt32(get(this, 4, byteOffset, arguments.length > 1 ? arguments[1] : undefined)) >>> 0;\n },\n getFloat32: function getFloat32(byteOffset /* , littleEndian */) {\n return unpackIEEE754(get(this, 4, byteOffset, arguments.length > 1 ? arguments[1] : undefined), 23);\n },\n getFloat64: function getFloat64(byteOffset /* , littleEndian */) {\n return unpackIEEE754(get(this, 8, byteOffset, arguments.length > 1 ? arguments[1] : undefined), 52);\n },\n setInt8: function setInt8(byteOffset, value) {\n set(this, 1, byteOffset, packInt8, value);\n },\n setUint8: function setUint8(byteOffset, value) {\n set(this, 1, byteOffset, packInt8, value);\n },\n setInt16: function setInt16(byteOffset, value /* , littleEndian */) {\n set(this, 2, byteOffset, packInt16, value, arguments.length > 2 ? arguments[2] : undefined);\n },\n setUint16: function setUint16(byteOffset, value /* , littleEndian */) {\n set(this, 2, byteOffset, packInt16, value, arguments.length > 2 ? arguments[2] : undefined);\n },\n setInt32: function setInt32(byteOffset, value /* , littleEndian */) {\n set(this, 4, byteOffset, packInt32, value, arguments.length > 2 ? arguments[2] : undefined);\n },\n setUint32: function setUint32(byteOffset, value /* , littleEndian */) {\n set(this, 4, byteOffset, packInt32, value, arguments.length > 2 ? arguments[2] : undefined);\n },\n setFloat32: function setFloat32(byteOffset, value /* , littleEndian */) {\n set(this, 4, byteOffset, packFloat32, value, arguments.length > 2 ? arguments[2] : undefined);\n },\n setFloat64: function setFloat64(byteOffset, value /* , littleEndian */) {\n set(this, 8, byteOffset, packFloat64, value, arguments.length > 2 ? arguments[2] : undefined);\n }\n });\n} else {\n var INCORRECT_ARRAY_BUFFER_NAME = PROPER_FUNCTION_NAME && NativeArrayBuffer.name !== ARRAY_BUFFER;\n /* eslint-disable no-new -- required for testing */\n if (!fails(function () {\n NativeArrayBuffer(1);\n }) || !fails(function () {\n new NativeArrayBuffer(-1);\n }) || fails(function () {\n new NativeArrayBuffer();\n new NativeArrayBuffer(1.5);\n new NativeArrayBuffer(NaN);\n return INCORRECT_ARRAY_BUFFER_NAME && !CONFIGURABLE_FUNCTION_NAME;\n })) {\n /* eslint-enable no-new -- required for testing */\n $ArrayBuffer = function ArrayBuffer(length) {\n anInstance(this, ArrayBufferPrototype);\n return new NativeArrayBuffer(toIndex(length));\n };\n\n $ArrayBuffer[PROTOTYPE] = ArrayBufferPrototype;\n\n for (var keys = getOwnPropertyNames(NativeArrayBuffer), j = 0, key; keys.length > j;) {\n if (!((key = keys[j++]) in $ArrayBuffer)) {\n createNonEnumerableProperty($ArrayBuffer, key, NativeArrayBuffer[key]);\n }\n }\n\n ArrayBufferPrototype.constructor = $ArrayBuffer;\n } else if (INCORRECT_ARRAY_BUFFER_NAME && CONFIGURABLE_FUNCTION_NAME) {\n createNonEnumerableProperty(NativeArrayBuffer, 'name', ARRAY_BUFFER);\n }\n\n // WebKit bug - the same parent prototype for typed arrays and data view\n if (setPrototypeOf && getPrototypeOf(DataViewPrototype) !== ObjectPrototype) {\n setPrototypeOf(DataViewPrototype, ObjectPrototype);\n }\n\n // iOS Safari 7.x bug\n var testView = new $DataView(new $ArrayBuffer(2));\n var $setInt8 = uncurryThis(DataViewPrototype.setInt8);\n testView.setInt8(0, 2147483648);\n testView.setInt8(1, 2147483649);\n if (testView.getInt8(0) || !testView.getInt8(1)) defineBuiltIns(DataViewPrototype, {\n setInt8: function setInt8(byteOffset, value) {\n $setInt8(this, byteOffset, value << 24 >> 24);\n },\n setUint8: function setUint8(byteOffset, value) {\n $setInt8(this, byteOffset, value << 24 >> 24);\n }\n }, { unsafe: true });\n}\n\nsetToStringTag($ArrayBuffer, ARRAY_BUFFER);\nsetToStringTag($DataView, DATA_VIEW);\n\nmodule.exports = {\n ArrayBuffer: $ArrayBuffer,\n DataView: $DataView\n};\n","'use strict';\nvar toObject = require('../internals/to-object');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar deletePropertyOrThrow = require('../internals/delete-property-or-throw');\n\nvar min = Math.min;\n\n// `Array.prototype.copyWithin` method implementation\n// https://tc39.es/ecma262/#sec-array.prototype.copywithin\n// eslint-disable-next-line es-x/no-array-prototype-copywithin -- safe\nmodule.exports = [].copyWithin || function copyWithin(target /* = 0 */, start /* = 0, end = @length */) {\n var O = toObject(this);\n var len = lengthOfArrayLike(O);\n var to = toAbsoluteIndex(target, len);\n var from = toAbsoluteIndex(start, len);\n var end = arguments.length > 2 ? arguments[2] : undefined;\n var count = min((end === undefined ? len : toAbsoluteIndex(end, len)) - from, len - to);\n var inc = 1;\n if (from < to && to < from + count) {\n inc = -1;\n from += count - 1;\n to += count - 1;\n }\n while (count-- > 0) {\n if (from in O) O[to] = O[from];\n else deletePropertyOrThrow(O, to);\n to += inc;\n from += inc;\n } return O;\n};\n","'use strict';\nvar toObject = require('../internals/to-object');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\n\n// `Array.prototype.fill` method implementation\n// https://tc39.es/ecma262/#sec-array.prototype.fill\nmodule.exports = function fill(value /* , start = 0, end = @length */) {\n var O = toObject(this);\n var length = lengthOfArrayLike(O);\n var argumentsLength = arguments.length;\n var index = toAbsoluteIndex(argumentsLength > 1 ? arguments[1] : undefined, length);\n var end = argumentsLength > 2 ? arguments[2] : undefined;\n var endPos = end === undefined ? length : toAbsoluteIndex(end, length);\n while (endPos > index) O[index++] = value;\n return O;\n};\n","'use strict';\nvar $forEach = require('../internals/array-iteration').forEach;\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\n\nvar STRICT_METHOD = arrayMethodIsStrict('forEach');\n\n// `Array.prototype.forEach` method implementation\n// https://tc39.es/ecma262/#sec-array.prototype.foreach\nmodule.exports = !STRICT_METHOD ? function forEach(callbackfn /* , thisArg */) {\n return $forEach(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n// eslint-disable-next-line es-x/no-array-prototype-foreach -- safe\n} : [].forEach;\n","var lengthOfArrayLike = require('../internals/length-of-array-like');\n\nmodule.exports = function (Constructor, list) {\n var index = 0;\n var 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 bind = require('../internals/function-bind-context');\nvar call = require('../internals/function-call');\nvar toObject = require('../internals/to-object');\nvar callWithSafeIterationClosing = require('../internals/call-with-safe-iteration-closing');\nvar isArrayIteratorMethod = require('../internals/is-array-iterator-method');\nvar isConstructor = require('../internals/is-constructor');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar createProperty = require('../internals/create-property');\nvar getIterator = require('../internals/get-iterator');\nvar getIteratorMethod = require('../internals/get-iterator-method');\n\nvar $Array = Array;\n\n// `Array.from` method implementation\n// https://tc39.es/ecma262/#sec-array.from\nmodule.exports = function from(arrayLike /* , mapfn = undefined, thisArg = undefined */) {\n var O = toObject(arrayLike);\n var IS_CONSTRUCTOR = isConstructor(this);\n var argumentsLength = arguments.length;\n var mapfn = argumentsLength > 1 ? arguments[1] : undefined;\n var mapping = mapfn !== undefined;\n if (mapping) mapfn = bind(mapfn, argumentsLength > 2 ? arguments[2] : undefined);\n var iteratorMethod = getIteratorMethod(O);\n var index = 0;\n var length, result, step, iterator, next, value;\n // if the target is not iterable or it's an array with the default iterator - use a simple case\n if (iteratorMethod && !(this === $Array && isArrayIteratorMethod(iteratorMethod))) {\n iterator = getIterator(O, iteratorMethod);\n next = iterator.next;\n result = IS_CONSTRUCTOR ? new this() : [];\n for (;!(step = call(next, iterator)).done; index++) {\n value = mapping ? callWithSafeIterationClosing(iterator, mapfn, [step.value, index], true) : step.value;\n createProperty(result, index, value);\n }\n } else {\n length = lengthOfArrayLike(O);\n result = IS_CONSTRUCTOR ? new this(length) : $Array(length);\n for (;length > index; index++) {\n value = mapping ? mapfn(O[index], index) : O[index];\n createProperty(result, index, value);\n }\n }\n result.length = index;\n return result;\n};\n","var 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 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","var bind = require('../internals/function-bind-context');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar IndexedObject = require('../internals/indexed-object');\nvar toObject = require('../internals/to-object');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar arraySpeciesCreate = require('../internals/array-species-create');\n\nvar push = uncurryThis([].push);\n\n// `Array.prototype.{ forEach, map, filter, some, every, find, findIndex, filterReject }` methods implementation\nvar createMethod = function (TYPE) {\n var IS_MAP = TYPE == 1;\n var IS_FILTER = TYPE == 2;\n var IS_SOME = TYPE == 3;\n var IS_EVERY = TYPE == 4;\n var IS_FIND_INDEX = TYPE == 6;\n var IS_FILTER_REJECT = TYPE == 7;\n var NO_HOLES = TYPE == 5 || IS_FIND_INDEX;\n return function ($this, callbackfn, that, specificCreate) {\n var O = toObject($this);\n var self = IndexedObject(O);\n var boundFunction = bind(callbackfn, that);\n var length = lengthOfArrayLike(self);\n var index = 0;\n var create = specificCreate || arraySpeciesCreate;\n var target = IS_MAP ? create($this, length) : IS_FILTER || IS_FILTER_REJECT ? create($this, 0) : undefined;\n var value, result;\n for (;length > index; index++) if (NO_HOLES || index in self) {\n value = self[index];\n result = boundFunction(value, index, O);\n if (TYPE) {\n if (IS_MAP) target[index] = result; // map\n else if (result) switch (TYPE) {\n case 3: return true; // some\n case 5: return value; // find\n case 6: return index; // findIndex\n case 2: push(target, value); // filter\n } else switch (TYPE) {\n case 4: return false; // every\n case 7: push(target, value); // filterReject\n }\n }\n }\n return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : target;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.forEach` method\n // https://tc39.es/ecma262/#sec-array.prototype.foreach\n forEach: createMethod(0),\n // `Array.prototype.map` method\n // https://tc39.es/ecma262/#sec-array.prototype.map\n map: createMethod(1),\n // `Array.prototype.filter` method\n // https://tc39.es/ecma262/#sec-array.prototype.filter\n filter: createMethod(2),\n // `Array.prototype.some` method\n // https://tc39.es/ecma262/#sec-array.prototype.some\n some: createMethod(3),\n // `Array.prototype.every` method\n // https://tc39.es/ecma262/#sec-array.prototype.every\n every: createMethod(4),\n // `Array.prototype.find` method\n // https://tc39.es/ecma262/#sec-array.prototype.find\n find: createMethod(5),\n // `Array.prototype.findIndex` method\n // https://tc39.es/ecma262/#sec-array.prototype.findIndex\n findIndex: createMethod(6),\n // `Array.prototype.filterReject` method\n // https://github.com/tc39/proposal-array-filtering\n filterReject: createMethod(7)\n};\n","'use strict';\n/* eslint-disable es-x/no-array-prototype-lastindexof -- safe */\nvar apply = require('../internals/function-apply');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\n\nvar min = Math.min;\nvar $lastIndexOf = [].lastIndexOf;\nvar NEGATIVE_ZERO = !!$lastIndexOf && 1 / [1].lastIndexOf(1, -0) < 0;\nvar STRICT_METHOD = arrayMethodIsStrict('lastIndexOf');\nvar FORCED = NEGATIVE_ZERO || !STRICT_METHOD;\n\n// `Array.prototype.lastIndexOf` method implementation\n// https://tc39.es/ecma262/#sec-array.prototype.lastindexof\nmodule.exports = FORCED ? function lastIndexOf(searchElement /* , fromIndex = @[*-1] */) {\n // convert -0 to +0\n if (NEGATIVE_ZERO) return apply($lastIndexOf, this, arguments) || 0;\n var O = toIndexedObject(this);\n var length = lengthOfArrayLike(O);\n var index = length - 1;\n if (arguments.length > 1) index = min(index, toIntegerOrInfinity(arguments[1]));\n if (index < 0) index = length + index;\n for (;index >= 0; index--) if (index in O && O[index] === searchElement) return index || 0;\n return -1;\n} : $lastIndexOf;\n","var fails = require('../internals/fails');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar SPECIES = wellKnownSymbol('species');\n\nmodule.exports = function (METHOD_NAME) {\n // We can't use this feature detection in V8 since it causes\n // deoptimization and serious performance degradation\n // https://github.com/zloirock/core-js/issues/677\n return V8_VERSION >= 51 || !fails(function () {\n var array = [];\n var constructor = array.constructor = {};\n constructor[SPECIES] = function () {\n return { foo: 1 };\n };\n return array[METHOD_NAME](Boolean).foo !== 1;\n });\n};\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = function (METHOD_NAME, argument) {\n var method = [][METHOD_NAME];\n return !!method && fails(function () {\n // eslint-disable-next-line no-useless-call -- required for testing\n method.call(null, argument || function () { return 1; }, 1);\n });\n};\n","var aCallable = require('../internals/a-callable');\nvar toObject = require('../internals/to-object');\nvar IndexedObject = require('../internals/indexed-object');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\n\nvar $TypeError = TypeError;\n\n// `Array.prototype.{ reduce, reduceRight }` methods implementation\nvar createMethod = function (IS_RIGHT) {\n return function (that, callbackfn, argumentsLength, memo) {\n aCallable(callbackfn);\n var O = toObject(that);\n var self = IndexedObject(O);\n var length = lengthOfArrayLike(O);\n var index = IS_RIGHT ? length - 1 : 0;\n var i = IS_RIGHT ? -1 : 1;\n if (argumentsLength < 2) while (true) {\n if (index in self) {\n memo = self[index];\n index += i;\n break;\n }\n index += i;\n if (IS_RIGHT ? index < 0 : length <= index) {\n throw $TypeError('Reduce of empty array with no initial value');\n }\n }\n for (;IS_RIGHT ? index >= 0 : length > index; index += i) if (index in self) {\n memo = callbackfn(memo, self[index], index, O);\n }\n return memo;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.reduce` method\n // https://tc39.es/ecma262/#sec-array.prototype.reduce\n left: createMethod(false),\n // `Array.prototype.reduceRight` method\n // https://tc39.es/ecma262/#sec-array.prototype.reduceright\n right: createMethod(true)\n};\n","var toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar createProperty = require('../internals/create-property');\n\nvar $Array = Array;\nvar max = Math.max;\n\nmodule.exports = function (O, start, end) {\n var length = lengthOfArrayLike(O);\n var k = toAbsoluteIndex(start, length);\n var fin = toAbsoluteIndex(end === undefined ? length : end, length);\n var result = $Array(max(fin - k, 0));\n for (var n = 0; k < fin; k++, n++) createProperty(result, n, O[k]);\n result.length = n;\n return result;\n};\n","var uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = uncurryThis([].slice);\n","var arraySlice = require('../internals/array-slice-simple');\n\nvar floor = Math.floor;\n\nvar mergeSort = function (array, comparefn) {\n var length = array.length;\n var middle = floor(length / 2);\n return length < 8 ? insertionSort(array, comparefn) : merge(\n array,\n mergeSort(arraySlice(array, 0, middle), comparefn),\n mergeSort(arraySlice(array, middle), comparefn),\n comparefn\n );\n};\n\nvar insertionSort = function (array, comparefn) {\n var length = array.length;\n var i = 1;\n var element, j;\n\n while (i < length) {\n j = i;\n element = array[i];\n while (j && comparefn(array[j - 1], element) > 0) {\n array[j] = array[--j];\n }\n if (j !== i++) array[j] = element;\n } return array;\n};\n\nvar merge = function (array, left, right, comparefn) {\n var llength = left.length;\n var rlength = right.length;\n var lindex = 0;\n var rindex = 0;\n\n while (lindex < llength || rindex < rlength) {\n array[lindex + rindex] = (lindex < llength && rindex < rlength)\n ? comparefn(left[lindex], right[rindex]) <= 0 ? left[lindex++] : right[rindex++]\n : lindex < llength ? left[lindex++] : right[rindex++];\n } return array;\n};\n\nmodule.exports = mergeSort;\n","var isArray = require('../internals/is-array');\nvar isConstructor = require('../internals/is-constructor');\nvar isObject = require('../internals/is-object');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar SPECIES = wellKnownSymbol('species');\nvar $Array = Array;\n\n// a part of `ArraySpeciesCreate` abstract operation\n// https://tc39.es/ecma262/#sec-arrayspeciescreate\nmodule.exports = function (originalArray) {\n var C;\n if (isArray(originalArray)) {\n C = originalArray.constructor;\n // cross-realm fallback\n if (isConstructor(C) && (C === $Array || isArray(C.prototype))) C = undefined;\n else if (isObject(C)) {\n C = C[SPECIES];\n if (C === null) C = undefined;\n }\n } return C === undefined ? $Array : C;\n};\n","var arraySpeciesConstructor = require('../internals/array-species-constructor');\n\n// `ArraySpeciesCreate` abstract operation\n// https://tc39.es/ecma262/#sec-arrayspeciescreate\nmodule.exports = function (originalArray, length) {\n return new (arraySpeciesConstructor(originalArray))(length === 0 ? 0 : length);\n};\n","var anObject = require('../internals/an-object');\nvar iteratorClose = require('../internals/iterator-close');\n\n// call something on iterator step with safe closing on error\nmodule.exports = function (iterator, fn, value, ENTRIES) {\n try {\n return ENTRIES ? fn(anObject(value)[0], value[1]) : fn(value);\n } catch (error) {\n iteratorClose(iterator, 'throw', error);\n }\n};\n","var wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar SAFE_CLOSING = false;\n\ntry {\n var called = 0;\n var iteratorWithReturn = {\n next: function () {\n return { done: !!called++ };\n },\n 'return': function () {\n SAFE_CLOSING = true;\n }\n };\n iteratorWithReturn[ITERATOR] = function () {\n return this;\n };\n // eslint-disable-next-line es-x/no-array-from, no-throw-literal -- required for testing\n Array.from(iteratorWithReturn, function () { throw 2; });\n} catch (error) { /* empty */ }\n\nmodule.exports = function (exec, SKIP_CLOSING) {\n if (!SKIP_CLOSING && !SAFE_CLOSING) return false;\n var ITERATION_SUPPORT = false;\n try {\n var object = {};\n object[ITERATOR] = function () {\n return {\n next: function () {\n return { done: ITERATION_SUPPORT = true };\n }\n };\n };\n exec(object);\n } catch (error) { /* empty */ }\n return ITERATION_SUPPORT;\n};\n","var 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","var 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","var 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","var wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar MATCH = wellKnownSymbol('match');\n\nmodule.exports = function (METHOD_NAME) {\n var regexp = /./;\n try {\n '/./'[METHOD_NAME](regexp);\n } catch (error1) {\n try {\n regexp[MATCH] = false;\n return '/./'[METHOD_NAME](regexp);\n } catch (error2) { /* empty */ }\n } return false;\n};\n","var fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n function F() { /* empty */ }\n F.prototype.constructor = null;\n // eslint-disable-next-line es-x/no-object-getprototypeof -- required for testing\n return Object.getPrototypeOf(new F()) !== F.prototype;\n});\n","var uncurryThis = require('../internals/function-uncurry-this');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar toString = require('../internals/to-string');\n\nvar quot = /\"/g;\nvar replace = uncurryThis(''.replace);\n\n// `CreateHTML` abstract operation\n// https://tc39.es/ecma262/#sec-createhtml\nmodule.exports = function (string, tag, attribute, value) {\n var S = toString(requireObjectCoercible(string));\n var p1 = '<' + tag;\n if (attribute !== '') p1 += ' ' + attribute + '=\"' + replace(toString(value), quot, '"') + '\"';\n return p1 + '>' + S + '';\n};\n","'use strict';\nvar IteratorPrototype = require('../internals/iterators-core').IteratorPrototype;\nvar create = require('../internals/object-create');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar Iterators = require('../internals/iterators');\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (IteratorConstructor, NAME, next, ENUMERABLE_NEXT) {\n var TO_STRING_TAG = NAME + ' Iterator';\n IteratorConstructor.prototype = create(IteratorPrototype, { next: createPropertyDescriptor(+!ENUMERABLE_NEXT, next) });\n setToStringTag(IteratorConstructor, TO_STRING_TAG, false, true);\n Iterators[TO_STRING_TAG] = returnThis;\n return IteratorConstructor;\n};\n","var 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","module.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 toPropertyKey = require('../internals/to-property-key');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = function (object, key, value) {\n var propertyKey = toPropertyKey(key);\n if (propertyKey in object) definePropertyModule.f(object, propertyKey, createPropertyDescriptor(0, value));\n else object[propertyKey] = value;\n};\n","var 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","var 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","var defineBuiltIn = require('../internals/define-built-in');\n\nmodule.exports = function (target, src, options) {\n for (var key in src) defineBuiltIn(target, key, src[key], options);\n return target;\n};\n","var global = require('../internals/global');\n\n// eslint-disable-next-line es-x/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 $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar IS_PURE = require('../internals/is-pure');\nvar FunctionName = require('../internals/function-name');\nvar isCallable = require('../internals/is-callable');\nvar createIteratorConstructor = require('../internals/create-iterator-constructor');\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar Iterators = require('../internals/iterators');\nvar IteratorsCore = require('../internals/iterators-core');\n\nvar PROPER_FUNCTION_NAME = FunctionName.PROPER;\nvar CONFIGURABLE_FUNCTION_NAME = FunctionName.CONFIGURABLE;\nvar IteratorPrototype = IteratorsCore.IteratorPrototype;\nvar BUGGY_SAFARI_ITERATORS = IteratorsCore.BUGGY_SAFARI_ITERATORS;\nvar ITERATOR = wellKnownSymbol('iterator');\nvar KEYS = 'keys';\nvar VALUES = 'values';\nvar ENTRIES = 'entries';\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (Iterable, NAME, IteratorConstructor, next, DEFAULT, IS_SET, FORCED) {\n createIteratorConstructor(IteratorConstructor, NAME, next);\n\n var getIterationMethod = function (KIND) {\n if (KIND === DEFAULT && defaultIterator) return defaultIterator;\n if (!BUGGY_SAFARI_ITERATORS && KIND in IterablePrototype) return IterablePrototype[KIND];\n switch (KIND) {\n case KEYS: return function keys() { return new IteratorConstructor(this, KIND); };\n case VALUES: return function values() { return new IteratorConstructor(this, KIND); };\n case ENTRIES: return function entries() { return new IteratorConstructor(this, KIND); };\n } return function () { return new IteratorConstructor(this); };\n };\n\n var TO_STRING_TAG = NAME + ' Iterator';\n var INCORRECT_VALUES_NAME = false;\n var IterablePrototype = Iterable.prototype;\n var nativeIterator = IterablePrototype[ITERATOR]\n || IterablePrototype['@@iterator']\n || DEFAULT && IterablePrototype[DEFAULT];\n var defaultIterator = !BUGGY_SAFARI_ITERATORS && nativeIterator || getIterationMethod(DEFAULT);\n var anyNativeIterator = NAME == 'Array' ? IterablePrototype.entries || nativeIterator : nativeIterator;\n var CurrentIteratorPrototype, methods, KEY;\n\n // fix native\n if (anyNativeIterator) {\n CurrentIteratorPrototype = getPrototypeOf(anyNativeIterator.call(new Iterable()));\n if (CurrentIteratorPrototype !== Object.prototype && CurrentIteratorPrototype.next) {\n if (!IS_PURE && getPrototypeOf(CurrentIteratorPrototype) !== IteratorPrototype) {\n if (setPrototypeOf) {\n setPrototypeOf(CurrentIteratorPrototype, IteratorPrototype);\n } else if (!isCallable(CurrentIteratorPrototype[ITERATOR])) {\n defineBuiltIn(CurrentIteratorPrototype, ITERATOR, returnThis);\n }\n }\n // Set @@toStringTag to native iterators\n setToStringTag(CurrentIteratorPrototype, TO_STRING_TAG, true, true);\n if (IS_PURE) Iterators[TO_STRING_TAG] = returnThis;\n }\n }\n\n // fix Array.prototype.{ values, @@iterator }.name in V8 / FF\n if (PROPER_FUNCTION_NAME && DEFAULT == VALUES && nativeIterator && nativeIterator.name !== VALUES) {\n if (!IS_PURE && CONFIGURABLE_FUNCTION_NAME) {\n createNonEnumerableProperty(IterablePrototype, 'name', VALUES);\n } else {\n INCORRECT_VALUES_NAME = true;\n defaultIterator = function values() { return call(nativeIterator, this); };\n }\n }\n\n // export additional methods\n if (DEFAULT) {\n methods = {\n values: getIterationMethod(VALUES),\n keys: IS_SET ? defaultIterator : getIterationMethod(KEYS),\n entries: getIterationMethod(ENTRIES)\n };\n if (FORCED) for (KEY in methods) {\n if (BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME || !(KEY in IterablePrototype)) {\n defineBuiltIn(IterablePrototype, KEY, methods[KEY]);\n }\n } else $({ target: NAME, proto: true, forced: BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME }, methods);\n }\n\n // define iterator\n if ((!IS_PURE || FORCED) && IterablePrototype[ITERATOR] !== defaultIterator) {\n defineBuiltIn(IterablePrototype, ITERATOR, defaultIterator, { name: DEFAULT });\n }\n Iterators[NAME] = defaultIterator;\n\n return methods;\n};\n","var path = require('../internals/path');\nvar hasOwn = require('../internals/has-own-property');\nvar wrappedWellKnownSymbolModule = require('../internals/well-known-symbol-wrapped');\nvar defineProperty = require('../internals/object-define-property').f;\n\nmodule.exports = function (NAME) {\n var Symbol = path.Symbol || (path.Symbol = {});\n if (!hasOwn(Symbol, NAME)) defineProperty(Symbol, NAME, {\n value: wrappedWellKnownSymbolModule.f(NAME)\n });\n};\n","'use strict';\nvar tryToString = require('../internals/try-to-string');\n\nvar $TypeError = TypeError;\n\nmodule.exports = function (O, P) {\n if (!delete O[P]) throw $TypeError('Cannot delete property ' + tryToString(P) + ' of ' + tryToString(O));\n};\n","var fails = require('../internals/fails');\n\n// Detect IE8's incomplete defineProperty implementation\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es-x/no-object-defineproperty -- required for testing\n return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] != 7;\n});\n","var 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","var $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","// iterable DOM collections\n// flag - `iterable` interface - 'entries', 'keys', 'values', 'forEach' methods\nmodule.exports = {\n CSSRuleList: 0,\n CSSStyleDeclaration: 0,\n CSSValueList: 0,\n ClientRectList: 0,\n DOMRectList: 0,\n DOMStringList: 0,\n DOMTokenList: 1,\n DataTransferItemList: 0,\n FileList: 0,\n HTMLAllCollection: 0,\n HTMLCollection: 0,\n HTMLFormElement: 0,\n HTMLSelectElement: 0,\n MediaList: 0,\n MimeTypeArray: 0,\n NamedNodeMap: 0,\n NodeList: 1,\n PaintRequestList: 0,\n Plugin: 0,\n PluginArray: 0,\n SVGLengthList: 0,\n SVGNumberList: 0,\n SVGPathSegList: 0,\n SVGPointList: 0,\n SVGStringList: 0,\n SVGTransformList: 0,\n SourceBufferList: 0,\n StyleSheetList: 0,\n TextTrackCueList: 0,\n TextTrackList: 0,\n TouchList: 0\n};\n","// in old WebKit versions, `element.classList` is not an instance of global `DOMTokenList`\nvar documentCreateElement = require('../internals/document-create-element');\n\nvar classList = documentCreateElement('span').classList;\nvar DOMTokenListPrototype = classList && classList.constructor && classList.constructor.prototype;\n\nmodule.exports = DOMTokenListPrototype === Object.prototype ? undefined : DOMTokenListPrototype;\n","var userAgent = require('../internals/engine-user-agent');\n\nvar firefox = userAgent.match(/firefox\\/(\\d+)/i);\n\nmodule.exports = !!firefox && +firefox[1];\n","module.exports = typeof window == 'object' && typeof Deno != 'object';\n","var UA = require('../internals/engine-user-agent');\n\nmodule.exports = /MSIE|Trident/.test(UA);\n","var userAgent = require('../internals/engine-user-agent');\nvar global = require('../internals/global');\n\nmodule.exports = /ipad|iphone|ipod/i.test(userAgent) && global.Pebble !== undefined;\n","var userAgent = require('../internals/engine-user-agent');\n\nmodule.exports = /(?:ipad|iphone|ipod).*applewebkit/i.test(userAgent);\n","var classof = require('../internals/classof-raw');\nvar global = require('../internals/global');\n\nmodule.exports = classof(global.process) == 'process';\n","var userAgent = require('../internals/engine-user-agent');\n\nmodule.exports = /web0s(?!.*chrome)/i.test(userAgent);\n","var getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('navigator', 'userAgent') || '';\n","var 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","var userAgent = require('../internals/engine-user-agent');\n\nvar webkit = userAgent.match(/AppleWebKit\\/(\\d+)\\./);\n\nmodule.exports = !!webkit && +webkit[1];\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","var 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] || {}).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","module.exports = function (exec) {\n try {\n return !!exec();\n } catch (error) {\n return true;\n }\n};\n","'use strict';\n// TODO: Remove from `core-js@4` since it's moved to entry points\nrequire('../modules/es.regexp.exec');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar regexpExec = require('../internals/regexp-exec');\nvar fails = require('../internals/fails');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\n\nvar SPECIES = wellKnownSymbol('species');\nvar RegExpPrototype = RegExp.prototype;\n\nmodule.exports = function (KEY, exec, FORCED, SHAM) {\n var SYMBOL = wellKnownSymbol(KEY);\n\n var DELEGATES_TO_SYMBOL = !fails(function () {\n // String methods call symbol-named RegEp methods\n var O = {};\n O[SYMBOL] = function () { return 7; };\n return ''[KEY](O) != 7;\n });\n\n var DELEGATES_TO_EXEC = DELEGATES_TO_SYMBOL && !fails(function () {\n // Symbol-named RegExp methods call .exec\n var execCalled = false;\n var re = /a/;\n\n if (KEY === 'split') {\n // We can't use real regex here since it causes deoptimization\n // and serious performance degradation in V8\n // https://github.com/zloirock/core-js/issues/306\n re = {};\n // RegExp[@@split] doesn't call the regex's exec method, but first creates\n // a new one. We need to return the patched regex when creating the new one.\n re.constructor = {};\n re.constructor[SPECIES] = function () { return re; };\n re.flags = '';\n re[SYMBOL] = /./[SYMBOL];\n }\n\n re.exec = function () { execCalled = true; return null; };\n\n re[SYMBOL]('');\n return !execCalled;\n });\n\n if (\n !DELEGATES_TO_SYMBOL ||\n !DELEGATES_TO_EXEC ||\n FORCED\n ) {\n var uncurriedNativeRegExpMethod = uncurryThis(/./[SYMBOL]);\n var methods = exec(SYMBOL, ''[KEY], function (nativeMethod, regexp, str, arg2, forceStringMethod) {\n var uncurriedNativeMethod = uncurryThis(nativeMethod);\n var $exec = regexp.exec;\n if ($exec === regexpExec || $exec === RegExpPrototype.exec) {\n if (DELEGATES_TO_SYMBOL && !forceStringMethod) {\n // The native String method already delegates to @@method (this\n // polyfilled function), leasing to infinite recursion.\n // We avoid it by directly calling the native @@method method.\n return { done: true, value: uncurriedNativeRegExpMethod(regexp, str, arg2) };\n }\n return { done: true, value: uncurriedNativeMethod(str, regexp, arg2) };\n }\n return { done: false };\n });\n\n defineBuiltIn(String.prototype, KEY, methods[0]);\n defineBuiltIn(RegExpPrototype, SYMBOL, methods[1]);\n }\n\n if (SHAM) createNonEnumerableProperty(RegExpPrototype[SYMBOL], 'sham', true);\n};\n","'use strict';\nvar isArray = require('../internals/is-array');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar doesNotExceedSafeInteger = require('../internals/does-not-exceed-safe-integer');\nvar bind = require('../internals/function-bind-context');\n\n// `FlattenIntoArray` abstract operation\n// https://tc39.github.io/proposal-flatMap/#sec-FlattenIntoArray\nvar flattenIntoArray = function (target, original, source, sourceLen, start, depth, mapper, thisArg) {\n var targetIndex = start;\n var sourceIndex = 0;\n var mapFn = mapper ? bind(mapper, thisArg) : false;\n var element, elementLen;\n\n while (sourceIndex < sourceLen) {\n if (sourceIndex in source) {\n element = mapFn ? mapFn(source[sourceIndex], sourceIndex, original) : source[sourceIndex];\n\n if (depth > 0 && isArray(element)) {\n elementLen = lengthOfArrayLike(element);\n targetIndex = flattenIntoArray(target, original, element, elementLen, targetIndex, depth - 1) - 1;\n } else {\n doesNotExceedSafeInteger(targetIndex + 1);\n target[targetIndex] = element;\n }\n\n targetIndex++;\n }\n sourceIndex++;\n }\n return targetIndex;\n};\n\nmodule.exports = flattenIntoArray;\n","var NATIVE_BIND = require('../internals/function-bind-native');\n\nvar FunctionPrototype = Function.prototype;\nvar apply = FunctionPrototype.apply;\nvar call = FunctionPrototype.call;\n\n// eslint-disable-next-line es-x/no-reflect -- safe\nmodule.exports = typeof Reflect == 'object' && Reflect.apply || (NATIVE_BIND ? call.bind(apply) : function () {\n return call.apply(apply, arguments);\n});\n","var uncurryThis = require('../internals/function-uncurry-this');\nvar aCallable = require('../internals/a-callable');\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar bind = uncurryThis(uncurryThis.bind);\n\n// optional / simple context binding\nmodule.exports = function (fn, that) {\n aCallable(fn);\n return that === undefined ? fn : NATIVE_BIND ? bind(fn, that) : function (/* ...args */) {\n return fn.apply(that, arguments);\n };\n};\n","var fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es-x/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 uncurryThis = require('../internals/function-uncurry-this');\nvar aCallable = require('../internals/a-callable');\nvar isObject = require('../internals/is-object');\nvar hasOwn = require('../internals/has-own-property');\nvar arraySlice = require('../internals/array-slice');\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar $Function = Function;\nvar concat = uncurryThis([].concat);\nvar join = uncurryThis([].join);\nvar factories = {};\n\nvar construct = function (C, argsLength, args) {\n if (!hasOwn(factories, argsLength)) {\n for (var list = [], i = 0; i < argsLength; i++) list[i] = 'a[' + i + ']';\n factories[argsLength] = $Function('C,a', 'return new C(' + join(list, ',') + ')');\n } return factories[argsLength](C, args);\n};\n\n// `Function.prototype.bind` method implementation\n// https://tc39.es/ecma262/#sec-function.prototype.bind\nmodule.exports = NATIVE_BIND ? $Function.bind : function bind(that /* , ...args */) {\n var F = aCallable(this);\n var Prototype = F.prototype;\n var partArgs = arraySlice(arguments, 1);\n var boundFunction = function bound(/* args... */) {\n var args = concat(partArgs, arraySlice(arguments));\n return this instanceof boundFunction ? construct(F, args.length, args) : F.apply(that, args);\n };\n if (isObject(Prototype)) boundFunction.prototype = Prototype;\n return boundFunction;\n};\n","var 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","var DESCRIPTORS = require('../internals/descriptors');\nvar hasOwn = require('../internals/has-own-property');\n\nvar FunctionPrototype = Function.prototype;\n// eslint-disable-next-line es-x/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","var NATIVE_BIND = require('../internals/function-bind-native');\n\nvar FunctionPrototype = Function.prototype;\nvar bind = FunctionPrototype.bind;\nvar call = FunctionPrototype.call;\nvar uncurryThis = NATIVE_BIND && bind.bind(call, call);\n\nmodule.exports = NATIVE_BIND ? function (fn) {\n return fn && uncurryThis(fn);\n} : function (fn) {\n return fn && function () {\n return call.apply(fn, arguments);\n };\n};\n","var 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","var classof = require('../internals/classof');\nvar getMethod = require('../internals/get-method');\nvar Iterators = require('../internals/iterators');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\n\nmodule.exports = function (it) {\n if (it != undefined) return getMethod(it, ITERATOR)\n || getMethod(it, '@@iterator')\n || Iterators[classof(it)];\n};\n","var call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar anObject = require('../internals/an-object');\nvar tryToString = require('../internals/try-to-string');\nvar getIteratorMethod = require('../internals/get-iterator-method');\n\nvar $TypeError = TypeError;\n\nmodule.exports = function (argument, usingIterator) {\n var iteratorMethod = arguments.length < 2 ? getIteratorMethod(argument) : usingIterator;\n if (aCallable(iteratorMethod)) return anObject(call(iteratorMethod, argument));\n throw $TypeError(tryToString(argument) + ' is not iterable');\n};\n","var aCallable = require('../internals/a-callable');\n\n// `GetMethod` abstract operation\n// https://tc39.es/ecma262/#sec-getmethod\nmodule.exports = function (V, P) {\n var func = V[P];\n return func == null ? undefined : aCallable(func);\n};\n","var uncurryThis = require('../internals/function-uncurry-this');\nvar toObject = require('../internals/to-object');\n\nvar floor = Math.floor;\nvar charAt = uncurryThis(''.charAt);\nvar replace = uncurryThis(''.replace);\nvar stringSlice = uncurryThis(''.slice);\nvar SUBSTITUTION_SYMBOLS = /\\$([$&'`]|\\d{1,2}|<[^>]*>)/g;\nvar SUBSTITUTION_SYMBOLS_NO_NAMED = /\\$([$&'`]|\\d{1,2})/g;\n\n// `GetSubstitution` abstract operation\n// https://tc39.es/ecma262/#sec-getsubstitution\nmodule.exports = function (matched, str, position, captures, namedCaptures, replacement) {\n var tailPos = position + matched.length;\n var m = captures.length;\n var symbols = SUBSTITUTION_SYMBOLS_NO_NAMED;\n if (namedCaptures !== undefined) {\n namedCaptures = toObject(namedCaptures);\n symbols = SUBSTITUTION_SYMBOLS;\n }\n return replace(replacement, symbols, function (match, ch) {\n var capture;\n switch (charAt(ch, 0)) {\n case '$': return '$';\n case '&': return matched;\n case '`': return stringSlice(str, 0, position);\n case \"'\": return stringSlice(str, tailPos);\n case '<':\n capture = namedCaptures[stringSlice(ch, 1, -1)];\n break;\n default: // \\d\\d?\n var n = +ch;\n if (n === 0) return match;\n if (n > m) {\n var f = floor(n / 10);\n if (f === 0) return match;\n if (f <= m) return captures[f - 1] === undefined ? charAt(ch, 1) : captures[f - 1] + charAt(ch, 1);\n return match;\n }\n capture = captures[n - 1];\n }\n return capture === undefined ? '' : capture;\n });\n};\n","var 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-x/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 // eslint-disable-next-line no-new-func -- fallback\n (function () { return this; })() || Function('return this')();\n","var 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-x/no-object-hasown -- safe\nmodule.exports = Object.hasOwn || function hasOwn(it, key) {\n return hasOwnProperty(toObject(it), key);\n};\n","module.exports = {};\n","var global = require('../internals/global');\n\nmodule.exports = function (a, b) {\n var console = global.console;\n if (console && console.error) {\n arguments.length == 1 ? console.error(a) : console.error(a, b);\n }\n};\n","var getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('document', 'documentElement');\n","var 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-x/no-object-defineproperty -- required for testing\n return Object.defineProperty(createElement('div'), 'a', {\n get: function () { return 7; }\n }).a != 7;\n});\n","// IEEE754 conversions based on https://github.com/feross/ieee754\nvar $Array = Array;\nvar abs = Math.abs;\nvar pow = Math.pow;\nvar floor = Math.floor;\nvar log = Math.log;\nvar LN2 = Math.LN2;\n\nvar pack = function (number, mantissaLength, bytes) {\n var buffer = $Array(bytes);\n var exponentLength = bytes * 8 - mantissaLength - 1;\n var eMax = (1 << exponentLength) - 1;\n var eBias = eMax >> 1;\n var rt = mantissaLength === 23 ? pow(2, -24) - pow(2, -77) : 0;\n var sign = number < 0 || number === 0 && 1 / number < 0 ? 1 : 0;\n var index = 0;\n var exponent, mantissa, c;\n number = abs(number);\n // eslint-disable-next-line no-self-compare -- NaN check\n if (number != number || number === Infinity) {\n // eslint-disable-next-line no-self-compare -- NaN check\n mantissa = number != number ? 1 : 0;\n exponent = eMax;\n } else {\n exponent = floor(log(number) / LN2);\n c = pow(2, -exponent);\n if (number * c < 1) {\n exponent--;\n c *= 2;\n }\n if (exponent + eBias >= 1) {\n number += rt / c;\n } else {\n number += rt * pow(2, 1 - eBias);\n }\n if (number * c >= 2) {\n exponent++;\n c /= 2;\n }\n if (exponent + eBias >= eMax) {\n mantissa = 0;\n exponent = eMax;\n } else if (exponent + eBias >= 1) {\n mantissa = (number * c - 1) * pow(2, mantissaLength);\n exponent = exponent + eBias;\n } else {\n mantissa = number * pow(2, eBias - 1) * pow(2, mantissaLength);\n exponent = 0;\n }\n }\n while (mantissaLength >= 8) {\n buffer[index++] = mantissa & 255;\n mantissa /= 256;\n mantissaLength -= 8;\n }\n exponent = exponent << mantissaLength | mantissa;\n exponentLength += mantissaLength;\n while (exponentLength > 0) {\n buffer[index++] = exponent & 255;\n exponent /= 256;\n exponentLength -= 8;\n }\n buffer[--index] |= sign * 128;\n return buffer;\n};\n\nvar unpack = function (buffer, mantissaLength) {\n var bytes = buffer.length;\n var exponentLength = bytes * 8 - mantissaLength - 1;\n var eMax = (1 << exponentLength) - 1;\n var eBias = eMax >> 1;\n var nBits = exponentLength - 7;\n var index = bytes - 1;\n var sign = buffer[index--];\n var exponent = sign & 127;\n var mantissa;\n sign >>= 7;\n while (nBits > 0) {\n exponent = exponent * 256 + buffer[index--];\n nBits -= 8;\n }\n mantissa = exponent & (1 << -nBits) - 1;\n exponent >>= -nBits;\n nBits += mantissaLength;\n while (nBits > 0) {\n mantissa = mantissa * 256 + buffer[index--];\n nBits -= 8;\n }\n if (exponent === 0) {\n exponent = 1 - eBias;\n } else if (exponent === eMax) {\n return mantissa ? NaN : sign ? -Infinity : Infinity;\n } else {\n mantissa = mantissa + pow(2, mantissaLength);\n exponent = exponent - eBias;\n } return (sign ? -1 : 1) * mantissa * pow(2, exponent - mantissaLength);\n};\n\nmodule.exports = {\n pack: pack,\n unpack: unpack\n};\n","var 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","var 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","var 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","var NATIVE_WEAK_MAP = require('../internals/native-weak-map');\nvar global = require('../internals/global');\nvar uncurryThis = require('../internals/function-uncurry-this');\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 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 var wmget = uncurryThis(store.get);\n var wmhas = uncurryThis(store.has);\n var wmset = uncurryThis(store.set);\n set = function (it, metadata) {\n if (wmhas(store, it)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n wmset(store, it, metadata);\n return metadata;\n };\n get = function (it) {\n return wmget(store, it) || {};\n };\n has = function (it) {\n return wmhas(store, 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","var wellKnownSymbol = require('../internals/well-known-symbol');\nvar Iterators = require('../internals/iterators');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar ArrayPrototype = Array.prototype;\n\n// check on default Array iterator\nmodule.exports = function (it) {\n return it !== undefined && (Iterators.Array === it || ArrayPrototype[ITERATOR] === it);\n};\n","var classof = require('../internals/classof-raw');\n\n// `IsArray` abstract operation\n// https://tc39.es/ecma262/#sec-isarray\n// eslint-disable-next-line es-x/no-array-isarray -- safe\nmodule.exports = Array.isArray || function isArray(argument) {\n return classof(argument) == 'Array';\n};\n","// `IsCallable` abstract operation\n// https://tc39.es/ecma262/#sec-iscallable\nmodule.exports = function (argument) {\n return typeof argument == 'function';\n};\n","var uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar classof = require('../internals/classof');\nvar getBuiltIn = require('../internals/get-built-in');\nvar inspectSource = require('../internals/inspect-source');\n\nvar noop = function () { /* empty */ };\nvar empty = [];\nvar construct = getBuiltIn('Reflect', 'construct');\nvar constructorRegExp = /^\\s*(?:class|function)\\b/;\nvar exec = uncurryThis(constructorRegExp.exec);\nvar INCORRECT_TO_STRING = !constructorRegExp.exec(noop);\n\nvar isConstructorModern = function isConstructor(argument) {\n if (!isCallable(argument)) return false;\n try {\n construct(noop, empty, argument);\n return true;\n } catch (error) {\n return false;\n }\n};\n\nvar isConstructorLegacy = function isConstructor(argument) {\n if (!isCallable(argument)) return false;\n switch (classof(argument)) {\n case 'AsyncFunction':\n case 'GeneratorFunction':\n case 'AsyncGeneratorFunction': return false;\n }\n try {\n // we can't check .prototype since constructors produced by .bind haven't it\n // `Function#toString` throws on some built-it function in some legacy engines\n // (for example, `DOMQuad` and similar in FF41-)\n return INCORRECT_TO_STRING || !!exec(constructorRegExp, inspectSource(argument));\n } catch (error) {\n return true;\n }\n};\n\nisConstructorLegacy.sham = true;\n\n// `IsConstructor` abstract operation\n// https://tc39.es/ecma262/#sec-isconstructor\nmodule.exports = !construct || fails(function () {\n var called;\n return isConstructorModern(isConstructorModern.call)\n || !isConstructorModern(Object)\n || !isConstructorModern(function () { called = true; })\n || called;\n}) ? isConstructorLegacy : isConstructorModern;\n","var 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","var isObject = require('../internals/is-object');\n\nvar floor = Math.floor;\n\n// `IsIntegralNumber` abstract operation\n// https://tc39.es/ecma262/#sec-isintegralnumber\n// eslint-disable-next-line es-x/no-number-isinteger -- safe\nmodule.exports = Number.isInteger || function isInteger(it) {\n return !isObject(it) && isFinite(it) && floor(it) === it;\n};\n","var isCallable = require('../internals/is-callable');\n\nmodule.exports = function (it) {\n return typeof it == 'object' ? it !== null : isCallable(it);\n};\n","module.exports = false;\n","var isObject = require('../internals/is-object');\nvar classof = require('../internals/classof-raw');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar MATCH = wellKnownSymbol('match');\n\n// `IsRegExp` abstract operation\n// https://tc39.es/ecma262/#sec-isregexp\nmodule.exports = function (it) {\n var isRegExp;\n return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : classof(it) == 'RegExp');\n};\n","var 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","var bind = require('../internals/function-bind-context');\nvar call = require('../internals/function-call');\nvar anObject = require('../internals/an-object');\nvar tryToString = require('../internals/try-to-string');\nvar isArrayIteratorMethod = require('../internals/is-array-iterator-method');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar getIterator = require('../internals/get-iterator');\nvar getIteratorMethod = require('../internals/get-iterator-method');\nvar iteratorClose = require('../internals/iterator-close');\n\nvar $TypeError = TypeError;\n\nvar Result = function (stopped, result) {\n this.stopped = stopped;\n this.result = result;\n};\n\nvar ResultPrototype = Result.prototype;\n\nmodule.exports = function (iterable, unboundFunction, options) {\n var that = options && options.that;\n var AS_ENTRIES = !!(options && options.AS_ENTRIES);\n var IS_RECORD = !!(options && options.IS_RECORD);\n var IS_ITERATOR = !!(options && options.IS_ITERATOR);\n var INTERRUPTED = !!(options && options.INTERRUPTED);\n var fn = bind(unboundFunction, that);\n var iterator, iterFn, index, length, result, next, step;\n\n var stop = function (condition) {\n if (iterator) iteratorClose(iterator, 'normal', condition);\n return new Result(true, condition);\n };\n\n var callFn = function (value) {\n if (AS_ENTRIES) {\n anObject(value);\n return INTERRUPTED ? fn(value[0], value[1], stop) : fn(value[0], value[1]);\n } return INTERRUPTED ? fn(value, stop) : fn(value);\n };\n\n if (IS_RECORD) {\n iterator = iterable.iterator;\n } else if (IS_ITERATOR) {\n iterator = iterable;\n } else {\n iterFn = getIteratorMethod(iterable);\n if (!iterFn) throw $TypeError(tryToString(iterable) + ' is not iterable');\n // optimisation for array iterators\n if (isArrayIteratorMethod(iterFn)) {\n for (index = 0, length = lengthOfArrayLike(iterable); length > index; index++) {\n result = callFn(iterable[index]);\n if (result && isPrototypeOf(ResultPrototype, result)) return result;\n } return new Result(false);\n }\n iterator = getIterator(iterable, iterFn);\n }\n\n next = IS_RECORD ? iterable.next : iterator.next;\n while (!(step = call(next, iterator)).done) {\n try {\n result = callFn(step.value);\n } catch (error) {\n iteratorClose(iterator, 'throw', error);\n }\n if (typeof result == 'object' && result && isPrototypeOf(ResultPrototype, result)) return result;\n } return new Result(false);\n};\n","var call = require('../internals/function-call');\nvar anObject = require('../internals/an-object');\nvar getMethod = require('../internals/get-method');\n\nmodule.exports = function (iterator, kind, value) {\n var innerResult, innerError;\n anObject(iterator);\n try {\n innerResult = getMethod(iterator, 'return');\n if (!innerResult) {\n if (kind === 'throw') throw value;\n return value;\n }\n innerResult = call(innerResult, iterator);\n } catch (error) {\n innerError = true;\n innerResult = error;\n }\n if (kind === 'throw') throw value;\n if (innerError) throw innerResult;\n anObject(innerResult);\n return value;\n};\n","'use strict';\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar create = require('../internals/object-create');\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_PURE = require('../internals/is-pure');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar BUGGY_SAFARI_ITERATORS = false;\n\n// `%IteratorPrototype%` object\n// https://tc39.es/ecma262/#sec-%iteratorprototype%-object\nvar IteratorPrototype, PrototypeOfArrayIteratorPrototype, arrayIterator;\n\n/* eslint-disable es-x/no-array-prototype-keys -- safe */\nif ([].keys) {\n arrayIterator = [].keys();\n // Safari 8 has buggy iterators w/o `next`\n if (!('next' in arrayIterator)) BUGGY_SAFARI_ITERATORS = true;\n else {\n PrototypeOfArrayIteratorPrototype = getPrototypeOf(getPrototypeOf(arrayIterator));\n if (PrototypeOfArrayIteratorPrototype !== Object.prototype) IteratorPrototype = PrototypeOfArrayIteratorPrototype;\n }\n}\n\nvar NEW_ITERATOR_PROTOTYPE = IteratorPrototype == undefined || fails(function () {\n var test = {};\n // FF44- legacy iterators case\n return IteratorPrototype[ITERATOR].call(test) !== test;\n});\n\nif (NEW_ITERATOR_PROTOTYPE) IteratorPrototype = {};\nelse if (IS_PURE) IteratorPrototype = create(IteratorPrototype);\n\n// `%IteratorPrototype%[@@iterator]()` method\n// https://tc39.es/ecma262/#sec-%iteratorprototype%-@@iterator\nif (!isCallable(IteratorPrototype[ITERATOR])) {\n defineBuiltIn(IteratorPrototype, ITERATOR, function () {\n return this;\n });\n}\n\nmodule.exports = {\n IteratorPrototype: IteratorPrototype,\n BUGGY_SAFARI_ITERATORS: BUGGY_SAFARI_ITERATORS\n};\n","module.exports = {};\n","var 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","var 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;\n// eslint-disable-next-line es-x/no-object-defineproperty -- safe\nvar defineProperty = Object.defineProperty;\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 (String(name).slice(0, 7) === 'Symbol(') {\n name = '[' + String(name).replace(/^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 = TEMPLATE.join(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","var 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-x/no-math-trunc -- safe\nmodule.exports = Math.trunc || function trunc(x) {\n var n = +x;\n return (n > 0 ? floor : ceil)(n);\n};\n","var global = require('../internals/global');\nvar bind = require('../internals/function-bind-context');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar macrotask = require('../internals/task').set;\nvar IS_IOS = require('../internals/engine-is-ios');\nvar IS_IOS_PEBBLE = require('../internals/engine-is-ios-pebble');\nvar IS_WEBOS_WEBKIT = require('../internals/engine-is-webos-webkit');\nvar IS_NODE = require('../internals/engine-is-node');\n\nvar MutationObserver = global.MutationObserver || global.WebKitMutationObserver;\nvar document = global.document;\nvar process = global.process;\nvar Promise = global.Promise;\n// Node.js 11 shows ExperimentalWarning on getting `queueMicrotask`\nvar queueMicrotaskDescriptor = getOwnPropertyDescriptor(global, 'queueMicrotask');\nvar queueMicrotask = queueMicrotaskDescriptor && queueMicrotaskDescriptor.value;\n\nvar flush, head, last, notify, toggle, node, promise, then;\n\n// modern engines have queueMicrotask method\nif (!queueMicrotask) {\n flush = function () {\n var parent, fn;\n if (IS_NODE && (parent = process.domain)) parent.exit();\n while (head) {\n fn = head.fn;\n head = head.next;\n try {\n fn();\n } catch (error) {\n if (head) notify();\n else last = undefined;\n throw error;\n }\n } last = undefined;\n if (parent) parent.enter();\n };\n\n // browsers with MutationObserver, except iOS - https://github.com/zloirock/core-js/issues/339\n // also except WebOS Webkit https://github.com/zloirock/core-js/issues/898\n if (!IS_IOS && !IS_NODE && !IS_WEBOS_WEBKIT && MutationObserver && document) {\n toggle = true;\n node = document.createTextNode('');\n new MutationObserver(flush).observe(node, { characterData: true });\n notify = function () {\n node.data = toggle = !toggle;\n };\n // environments with maybe non-completely correct, but existent Promise\n } else if (!IS_IOS_PEBBLE && Promise && Promise.resolve) {\n // Promise.resolve without an argument throws an error in LG WebOS 2\n promise = Promise.resolve(undefined);\n // workaround of WebKit ~ iOS Safari 10.1 bug\n promise.constructor = Promise;\n then = bind(promise.then, promise);\n notify = function () {\n then(flush);\n };\n // Node.js without promises\n } else if (IS_NODE) {\n notify = function () {\n process.nextTick(flush);\n };\n // for other environments - macrotask based on:\n // - setImmediate\n // - MessageChannel\n // - window.postMessage\n // - onreadystatechange\n // - setTimeout\n } else {\n // strange IE + webpack dev server bug - use .bind(global)\n macrotask = bind(macrotask, global);\n notify = function () {\n macrotask(flush);\n };\n }\n}\n\nmodule.exports = queueMicrotask || function (fn) {\n var task = { fn: fn, next: undefined };\n if (last) last.next = task;\n if (!head) {\n head = task;\n notify();\n } last = task;\n};\n","var NATIVE_SYMBOL = require('../internals/native-symbol');\n\n/* eslint-disable es-x/no-symbol -- safe */\nmodule.exports = NATIVE_SYMBOL && !!Symbol['for'] && !!Symbol.keyFor;\n","/* eslint-disable es-x/no-symbol -- required for testing */\nvar V8_VERSION = require('../internals/engine-v8-version');\nvar fails = require('../internals/fails');\n\n// eslint-disable-next-line es-x/no-object-getownpropertysymbols -- required for testing\nmodule.exports = !!Object.getOwnPropertySymbols && !fails(function () {\n var symbol = Symbol();\n // Chrome 38 Symbol has incorrect toString conversion\n // `get-own-property-symbols` polyfill symbols converted to object are not Symbol instances\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","var fails = require('../internals/fails');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_PURE = require('../internals/is-pure');\n\nvar ITERATOR = wellKnownSymbol('iterator');\n\nmodule.exports = !fails(function () {\n // eslint-disable-next-line unicorn/relative-url-style -- required for testing\n var url = new URL('b?a=1&b=2&c=3', 'http://a');\n var searchParams = url.searchParams;\n var result = '';\n url.pathname = 'c%20d';\n searchParams.forEach(function (value, key) {\n searchParams['delete']('b');\n result += key + value;\n });\n return (IS_PURE && !url.toJSON)\n || !searchParams.sort\n || url.href !== 'http://a/c%20d?a=1&c=3'\n || searchParams.get('c') !== '3'\n || String(new URLSearchParams('?a=1')) !== 'a=1'\n || !searchParams[ITERATOR]\n // throws in Edge\n || new URL('https://a@b').username !== 'a'\n || new URLSearchParams(new URLSearchParams('a=b')).get('a') !== 'b'\n // not punycoded in Edge\n || new URL('http://тест').host !== 'xn--e1aybc'\n // not escaped in Chrome 62-\n || new URL('http://a#б').hash !== '#%D0%B1'\n // fails in Chrome 66-\n || result !== 'a1c3'\n // throws in Safari\n || new URL('http://x', undefined).host !== 'x';\n});\n","var global = require('../internals/global');\nvar isCallable = require('../internals/is-callable');\nvar inspectSource = require('../internals/inspect-source');\n\nvar WeakMap = global.WeakMap;\n\nmodule.exports = isCallable(WeakMap) && /native code/.test(inspectSource(WeakMap));\n","'use strict';\nvar aCallable = require('../internals/a-callable');\n\nvar PromiseCapability = function (C) {\n var resolve, reject;\n this.promise = new C(function ($$resolve, $$reject) {\n if (resolve !== undefined || reject !== undefined) throw TypeError('Bad Promise constructor');\n resolve = $$resolve;\n reject = $$reject;\n });\n this.resolve = aCallable(resolve);\n this.reject = aCallable(reject);\n};\n\n// `NewPromiseCapability` abstract operation\n// https://tc39.es/ecma262/#sec-newpromisecapability\nmodule.exports.f = function (C) {\n return new PromiseCapability(C);\n};\n","var isRegExp = require('../internals/is-regexp');\n\nvar $TypeError = TypeError;\n\nmodule.exports = function (it) {\n if (isRegExp(it)) {\n throw $TypeError(\"The method doesn't accept regular expressions\");\n } return it;\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar call = require('../internals/function-call');\nvar fails = require('../internals/fails');\nvar objectKeys = require('../internals/object-keys');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar toObject = require('../internals/to-object');\nvar IndexedObject = require('../internals/indexed-object');\n\n// eslint-disable-next-line es-x/no-object-assign -- safe\nvar $assign = Object.assign;\n// eslint-disable-next-line es-x/no-object-defineproperty -- required for testing\nvar defineProperty = Object.defineProperty;\nvar concat = uncurryThis([].concat);\n\n// `Object.assign` method\n// https://tc39.es/ecma262/#sec-object.assign\nmodule.exports = !$assign || fails(function () {\n // should have correct order of operations (Edge bug)\n if (DESCRIPTORS && $assign({ b: 1 }, $assign(defineProperty({}, 'a', {\n enumerable: true,\n get: function () {\n defineProperty(this, 'b', {\n value: 3,\n enumerable: false\n });\n }\n }), { b: 2 })).b !== 1) return true;\n // should work with symbols and should have deterministic property order (V8 bug)\n var A = {};\n var B = {};\n // eslint-disable-next-line es-x/no-symbol -- safe\n var symbol = Symbol();\n var alphabet = 'abcdefghijklmnopqrst';\n A[symbol] = 7;\n alphabet.split('').forEach(function (chr) { B[chr] = chr; });\n return $assign({}, A)[symbol] != 7 || objectKeys($assign({}, B)).join('') != alphabet;\n}) ? function assign(target, source) { // eslint-disable-line no-unused-vars -- required for `.length`\n var T = toObject(target);\n var argumentsLength = arguments.length;\n var index = 1;\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n var propertyIsEnumerable = propertyIsEnumerableModule.f;\n while (argumentsLength > index) {\n var S = IndexedObject(arguments[index++]);\n var keys = getOwnPropertySymbols ? concat(objectKeys(S), getOwnPropertySymbols(S)) : objectKeys(S);\n var length = keys.length;\n var j = 0;\n var key;\n while (length > j) {\n key = keys[j++];\n if (!DESCRIPTORS || call(propertyIsEnumerable, S, key)) T[key] = S[key];\n }\n } return T;\n} : $assign;\n","/* global ActiveXObject -- old IE, WSH */\nvar anObject = require('../internals/an-object');\nvar definePropertiesModule = require('../internals/object-define-properties');\nvar enumBugKeys = require('../internals/enum-bug-keys');\nvar hiddenKeys = require('../internals/hidden-keys');\nvar html = require('../internals/html');\nvar documentCreateElement = require('../internals/document-create-element');\nvar sharedKey = require('../internals/shared-key');\n\nvar GT = '>';\nvar LT = '<';\nvar PROTOTYPE = 'prototype';\nvar SCRIPT = 'script';\nvar IE_PROTO = sharedKey('IE_PROTO');\n\nvar EmptyConstructor = function () { /* empty */ };\n\nvar scriptTag = function (content) {\n return LT + SCRIPT + GT + content + LT + '/' + SCRIPT + GT;\n};\n\n// Create object with fake `null` prototype: use ActiveX Object with cleared prototype\nvar NullProtoObjectViaActiveX = function (activeXDocument) {\n activeXDocument.write(scriptTag(''));\n activeXDocument.close();\n var temp = activeXDocument.parentWindow.Object;\n activeXDocument = null; // avoid memory leak\n return temp;\n};\n\n// Create object with fake `null` prototype: use iframe Object with cleared prototype\nvar NullProtoObjectViaIFrame = function () {\n // Thrash, waste and sodomy: IE GC bug\n var iframe = documentCreateElement('iframe');\n var JS = 'java' + SCRIPT + ':';\n var iframeDocument;\n iframe.style.display = 'none';\n html.appendChild(iframe);\n // https://github.com/zloirock/core-js/issues/475\n iframe.src = String(JS);\n iframeDocument = iframe.contentWindow.document;\n iframeDocument.open();\n iframeDocument.write(scriptTag('document.F=Object'));\n iframeDocument.close();\n return iframeDocument.F;\n};\n\n// Check for document.domain and active x support\n// No need to use active x approach when document.domain is not set\n// see https://github.com/es-shims/es5-shim/issues/150\n// variation of https://github.com/kitcambridge/es5-shim/commit/4f738ac066346\n// avoid IE GC bug\nvar activeXDocument;\nvar NullProtoObject = function () {\n try {\n activeXDocument = new ActiveXObject('htmlfile');\n } catch (error) { /* ignore */ }\n NullProtoObject = typeof document != 'undefined'\n ? document.domain && activeXDocument\n ? NullProtoObjectViaActiveX(activeXDocument) // old IE\n : NullProtoObjectViaIFrame()\n : NullProtoObjectViaActiveX(activeXDocument); // WSH\n var length = enumBugKeys.length;\n while (length--) delete NullProtoObject[PROTOTYPE][enumBugKeys[length]];\n return NullProtoObject();\n};\n\nhiddenKeys[IE_PROTO] = true;\n\n// `Object.create` method\n// https://tc39.es/ecma262/#sec-object.create\n// eslint-disable-next-line es-x/no-object-create -- safe\nmodule.exports = Object.create || function create(O, Properties) {\n var result;\n if (O !== null) {\n EmptyConstructor[PROTOTYPE] = anObject(O);\n result = new EmptyConstructor();\n EmptyConstructor[PROTOTYPE] = null;\n // add \"__proto__\" for Object.getPrototypeOf polyfill\n result[IE_PROTO] = O;\n } else result = NullProtoObject();\n return Properties === undefined ? result : definePropertiesModule.f(result, Properties);\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar V8_PROTOTYPE_DEFINE_BUG = require('../internals/v8-prototype-define-bug');\nvar definePropertyModule = require('../internals/object-define-property');\nvar anObject = require('../internals/an-object');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar objectKeys = require('../internals/object-keys');\n\n// `Object.defineProperties` method\n// https://tc39.es/ecma262/#sec-object.defineproperties\n// eslint-disable-next-line es-x/no-object-defineproperties -- safe\nexports.f = DESCRIPTORS && !V8_PROTOTYPE_DEFINE_BUG ? Object.defineProperties : function defineProperties(O, Properties) {\n anObject(O);\n var props = toIndexedObject(Properties);\n var keys = objectKeys(Properties);\n var length = keys.length;\n var index = 0;\n var key;\n while (length > index) definePropertyModule.f(O, key = keys[index++], props[key]);\n return O;\n};\n","var 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-x/no-object-defineproperty -- safe\nvar $defineProperty = Object.defineProperty;\n// eslint-disable-next-line es-x/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 $TypeError('Accessors not supported');\n if ('value' in Attributes) O[P] = Attributes.value;\n return O;\n};\n","var 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-x/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","/* eslint-disable es-x/no-object-getownpropertynames -- safe */\nvar classof = require('../internals/classof-raw');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar $getOwnPropertyNames = require('../internals/object-get-own-property-names').f;\nvar arraySlice = require('../internals/array-slice-simple');\n\nvar windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames\n ? Object.getOwnPropertyNames(window) : [];\n\nvar getWindowNames = function (it) {\n try {\n return $getOwnPropertyNames(it);\n } catch (error) {\n return arraySlice(windowNames);\n }\n};\n\n// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window\nmodule.exports.f = function getOwnPropertyNames(it) {\n return windowNames && classof(it) == 'Window'\n ? getWindowNames(it)\n : $getOwnPropertyNames(toIndexedObject(it));\n};\n","var 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-x/no-object-getownpropertynames -- safe\nexports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {\n return internalObjectKeys(O, hiddenKeys);\n};\n","// eslint-disable-next-line es-x/no-object-getownpropertysymbols -- safe\nexports.f = Object.getOwnPropertySymbols;\n","var 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-x/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","var uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = uncurryThis({}.isPrototypeOf);\n","var 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","var internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\n// `Object.keys` method\n// https://tc39.es/ecma262/#sec-object.keys\n// eslint-disable-next-line es-x/no-object-keys -- safe\nmodule.exports = Object.keys || function keys(O) {\n return internalObjectKeys(O, enumBugKeys);\n};\n","'use strict';\nvar $propertyIsEnumerable = {}.propertyIsEnumerable;\n// eslint-disable-next-line es-x/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","/* eslint-disable no-proto -- safe */\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar anObject = require('../internals/an-object');\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-x/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 // eslint-disable-next-line es-x/no-object-getownpropertydescriptor -- safe\n setter = uncurryThis(Object.getOwnPropertyDescriptor(Object.prototype, '__proto__').set);\n setter(test, []);\n CORRECT_SETTER = test instanceof Array;\n } catch (error) { /* empty */ }\n return function setPrototypeOf(O, proto) {\n anObject(O);\n aPossiblePrototype(proto);\n if (CORRECT_SETTER) setter(O, proto);\n else O.__proto__ = proto;\n return O;\n };\n}() : undefined);\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar classof = require('../internals/classof');\n\n// `Object.prototype.toString` method implementation\n// https://tc39.es/ecma262/#sec-object.prototype.tostring\nmodule.exports = TO_STRING_TAG_SUPPORT ? {}.toString : function toString() {\n return '[object ' + classof(this) + ']';\n};\n","var 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 $TypeError(\"Can't convert object to primitive value\");\n};\n","var 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","var global = require('../internals/global');\n\nmodule.exports = global;\n","module.exports = function (exec) {\n try {\n return { error: false, value: exec() };\n } catch (error) {\n return { error: true, value: error };\n }\n};\n","var global = require('../internals/global');\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar isCallable = require('../internals/is-callable');\nvar isForced = require('../internals/is-forced');\nvar inspectSource = require('../internals/inspect-source');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_BROWSER = require('../internals/engine-is-browser');\nvar IS_PURE = require('../internals/is-pure');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;\nvar SPECIES = wellKnownSymbol('species');\nvar SUBCLASSING = false;\nvar NATIVE_PROMISE_REJECTION_EVENT = isCallable(global.PromiseRejectionEvent);\n\nvar FORCED_PROMISE_CONSTRUCTOR = isForced('Promise', function () {\n var PROMISE_CONSTRUCTOR_SOURCE = inspectSource(NativePromiseConstructor);\n var GLOBAL_CORE_JS_PROMISE = PROMISE_CONSTRUCTOR_SOURCE !== String(NativePromiseConstructor);\n // V8 6.6 (Node 10 and Chrome 66) have a bug with resolving custom thenables\n // https://bugs.chromium.org/p/chromium/issues/detail?id=830565\n // We can't detect it synchronously, so just check versions\n if (!GLOBAL_CORE_JS_PROMISE && V8_VERSION === 66) return true;\n // We need Promise#{ catch, finally } in the pure version for preventing prototype pollution\n if (IS_PURE && !(NativePromisePrototype['catch'] && NativePromisePrototype['finally'])) return true;\n // We can't use @@species feature detection in V8 since it causes\n // deoptimization and performance degradation\n // https://github.com/zloirock/core-js/issues/679\n if (V8_VERSION >= 51 && /native code/.test(PROMISE_CONSTRUCTOR_SOURCE)) return false;\n // Detect correctness of subclassing with @@species support\n var promise = new NativePromiseConstructor(function (resolve) { resolve(1); });\n var FakePromise = function (exec) {\n exec(function () { /* empty */ }, function () { /* empty */ });\n };\n var constructor = promise.constructor = {};\n constructor[SPECIES] = FakePromise;\n SUBCLASSING = promise.then(function () { /* empty */ }) instanceof FakePromise;\n if (!SUBCLASSING) return true;\n // Unhandled rejections tracking support, NodeJS Promise without it fails @@species test\n return !GLOBAL_CORE_JS_PROMISE && IS_BROWSER && !NATIVE_PROMISE_REJECTION_EVENT;\n});\n\nmodule.exports = {\n CONSTRUCTOR: FORCED_PROMISE_CONSTRUCTOR,\n REJECTION_EVENT: NATIVE_PROMISE_REJECTION_EVENT,\n SUBCLASSING: SUBCLASSING\n};\n","var global = require('../internals/global');\n\nmodule.exports = global.Promise;\n","var anObject = require('../internals/an-object');\nvar isObject = require('../internals/is-object');\nvar newPromiseCapability = require('../internals/new-promise-capability');\n\nmodule.exports = function (C, x) {\n anObject(C);\n if (isObject(x) && x.constructor === C) return x;\n var promiseCapability = newPromiseCapability.f(C);\n var resolve = promiseCapability.resolve;\n resolve(x);\n return promiseCapability.promise;\n};\n","var NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\n\nmodule.exports = FORCED_PROMISE_CONSTRUCTOR || !checkCorrectnessOfIteration(function (iterable) {\n NativePromiseConstructor.all(iterable).then(undefined, function () { /* empty */ });\n});\n","var defineProperty = require('../internals/object-define-property').f;\n\nmodule.exports = function (Target, Source, key) {\n key in Target || defineProperty(Target, key, {\n configurable: true,\n get: function () { return Source[key]; },\n set: function (it) { Source[key] = it; }\n });\n};\n","var Queue = function () {\n this.head = null;\n this.tail = null;\n};\n\nQueue.prototype = {\n add: function (item) {\n var entry = { item: item, next: null };\n if (this.head) this.tail.next = entry;\n else this.head = entry;\n this.tail = entry;\n },\n get: function () {\n var entry = this.head;\n if (entry) {\n this.head = entry.next;\n if (this.tail === entry) this.tail = null;\n return entry.item;\n }\n }\n};\n\nmodule.exports = Queue;\n","var call = require('../internals/function-call');\nvar anObject = require('../internals/an-object');\nvar isCallable = require('../internals/is-callable');\nvar classof = require('../internals/classof-raw');\nvar regexpExec = require('../internals/regexp-exec');\n\nvar $TypeError = TypeError;\n\n// `RegExpExec` abstract operation\n// https://tc39.es/ecma262/#sec-regexpexec\nmodule.exports = function (R, S) {\n var exec = R.exec;\n if (isCallable(exec)) {\n var result = call(exec, R, S);\n if (result !== null) anObject(result);\n return result;\n }\n if (classof(R) === 'RegExp') return call(regexpExec, R, S);\n throw $TypeError('RegExp#exec called on incompatible receiver');\n};\n","'use strict';\n/* eslint-disable regexp/no-empty-capturing-group, regexp/no-empty-group, regexp/no-lazy-ends -- testing */\n/* eslint-disable regexp/no-useless-quantifier -- testing */\nvar call = require('../internals/function-call');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar toString = require('../internals/to-string');\nvar regexpFlags = require('../internals/regexp-flags');\nvar stickyHelpers = require('../internals/regexp-sticky-helpers');\nvar shared = require('../internals/shared');\nvar create = require('../internals/object-create');\nvar getInternalState = require('../internals/internal-state').get;\nvar UNSUPPORTED_DOT_ALL = require('../internals/regexp-unsupported-dot-all');\nvar UNSUPPORTED_NCG = require('../internals/regexp-unsupported-ncg');\n\nvar nativeReplace = shared('native-string-replace', String.prototype.replace);\nvar nativeExec = RegExp.prototype.exec;\nvar patchedExec = nativeExec;\nvar charAt = uncurryThis(''.charAt);\nvar indexOf = uncurryThis(''.indexOf);\nvar replace = uncurryThis(''.replace);\nvar stringSlice = uncurryThis(''.slice);\n\nvar UPDATES_LAST_INDEX_WRONG = (function () {\n var re1 = /a/;\n var re2 = /b*/g;\n call(nativeExec, re1, 'a');\n call(nativeExec, re2, 'a');\n return re1.lastIndex !== 0 || re2.lastIndex !== 0;\n})();\n\nvar UNSUPPORTED_Y = stickyHelpers.BROKEN_CARET;\n\n// nonparticipating capturing group, copied from es5-shim's String#split patch.\nvar NPCG_INCLUDED = /()??/.exec('')[1] !== undefined;\n\nvar PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED || UNSUPPORTED_Y || UNSUPPORTED_DOT_ALL || UNSUPPORTED_NCG;\n\nif (PATCH) {\n patchedExec = function exec(string) {\n var re = this;\n var state = getInternalState(re);\n var str = toString(string);\n var raw = state.raw;\n var result, reCopy, lastIndex, match, i, object, group;\n\n if (raw) {\n raw.lastIndex = re.lastIndex;\n result = call(patchedExec, raw, str);\n re.lastIndex = raw.lastIndex;\n return result;\n }\n\n var groups = state.groups;\n var sticky = UNSUPPORTED_Y && re.sticky;\n var flags = call(regexpFlags, re);\n var source = re.source;\n var charsAdded = 0;\n var strCopy = str;\n\n if (sticky) {\n flags = replace(flags, 'y', '');\n if (indexOf(flags, 'g') === -1) {\n flags += 'g';\n }\n\n strCopy = stringSlice(str, re.lastIndex);\n // Support anchored sticky behavior.\n if (re.lastIndex > 0 && (!re.multiline || re.multiline && charAt(str, re.lastIndex - 1) !== '\\n')) {\n source = '(?: ' + source + ')';\n strCopy = ' ' + strCopy;\n charsAdded++;\n }\n // ^(? + rx + ) is needed, in combination with some str slicing, to\n // simulate the 'y' flag.\n reCopy = new RegExp('^(?:' + source + ')', flags);\n }\n\n if (NPCG_INCLUDED) {\n reCopy = new RegExp('^' + source + '$(?!\\\\s)', flags);\n }\n if (UPDATES_LAST_INDEX_WRONG) lastIndex = re.lastIndex;\n\n match = call(nativeExec, sticky ? reCopy : re, strCopy);\n\n if (sticky) {\n if (match) {\n match.input = stringSlice(match.input, charsAdded);\n match[0] = stringSlice(match[0], charsAdded);\n match.index = re.lastIndex;\n re.lastIndex += match[0].length;\n } else re.lastIndex = 0;\n } else if (UPDATES_LAST_INDEX_WRONG && match) {\n re.lastIndex = re.global ? match.index + match[0].length : lastIndex;\n }\n if (NPCG_INCLUDED && match && match.length > 1) {\n // Fix browsers whose `exec` methods don't consistently return `undefined`\n // for NPCG, like IE8. NOTE: This doesn't work for /(.?)?/\n call(nativeReplace, match[0], reCopy, function () {\n for (i = 1; i < arguments.length - 2; i++) {\n if (arguments[i] === undefined) match[i] = undefined;\n }\n });\n }\n\n if (match && groups) {\n match.groups = object = create(null);\n for (i = 0; i < groups.length; i++) {\n group = groups[i];\n object[group[0]] = match[group[1]];\n }\n }\n\n return match;\n };\n}\n\nmodule.exports = patchedExec;\n","'use strict';\nvar anObject = require('../internals/an-object');\n\n// `RegExp.prototype.flags` getter implementation\n// https://tc39.es/ecma262/#sec-get-regexp.prototype.flags\nmodule.exports = function () {\n var that = anObject(this);\n var result = '';\n if (that.hasIndices) result += 'd';\n if (that.global) result += 'g';\n if (that.ignoreCase) result += 'i';\n if (that.multiline) result += 'm';\n if (that.dotAll) result += 's';\n if (that.unicode) result += 'u';\n if (that.unicodeSets) result += 'v';\n if (that.sticky) result += 'y';\n return result;\n};\n","var call = require('../internals/function-call');\nvar hasOwn = require('../internals/has-own-property');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar regExpFlags = require('../internals/regexp-flags');\n\nvar RegExpPrototype = RegExp.prototype;\n\nmodule.exports = function (R) {\n var flags = R.flags;\n return flags === undefined && !('flags' in RegExpPrototype) && !hasOwn(R, 'flags') && isPrototypeOf(RegExpPrototype, R)\n ? call(regExpFlags, R) : flags;\n};\n","var fails = require('../internals/fails');\nvar global = require('../internals/global');\n\n// babel-minify and Closure Compiler transpiles RegExp('a', 'y') -> /a/y and it causes SyntaxError\nvar $RegExp = global.RegExp;\n\nvar UNSUPPORTED_Y = fails(function () {\n var re = $RegExp('a', 'y');\n re.lastIndex = 2;\n return re.exec('abcd') != null;\n});\n\n// UC Browser bug\n// https://github.com/zloirock/core-js/issues/1008\nvar MISSED_STICKY = UNSUPPORTED_Y || fails(function () {\n return !$RegExp('a', 'y').sticky;\n});\n\nvar BROKEN_CARET = UNSUPPORTED_Y || fails(function () {\n // https://bugzilla.mozilla.org/show_bug.cgi?id=773687\n var re = $RegExp('^r', 'gy');\n re.lastIndex = 2;\n return re.exec('str') != null;\n});\n\nmodule.exports = {\n BROKEN_CARET: BROKEN_CARET,\n MISSED_STICKY: MISSED_STICKY,\n UNSUPPORTED_Y: UNSUPPORTED_Y\n};\n","var fails = require('../internals/fails');\nvar global = require('../internals/global');\n\n// babel-minify and Closure Compiler transpiles RegExp('.', 's') -> /./s and it causes SyntaxError\nvar $RegExp = global.RegExp;\n\nmodule.exports = fails(function () {\n var re = $RegExp('.', 's');\n return !(re.dotAll && re.exec('\\n') && re.flags === 's');\n});\n","var fails = require('../internals/fails');\nvar global = require('../internals/global');\n\n// babel-minify and Closure Compiler transpiles RegExp('(?b)', 'g') -> /(?b)/g and it causes SyntaxError\nvar $RegExp = global.RegExp;\n\nmodule.exports = fails(function () {\n var re = $RegExp('(?b)', 'g');\n return re.exec('b').groups.a !== 'b' ||\n 'b'.replace(re, '$c') !== 'bc';\n});\n","var $TypeError = TypeError;\n\n// `RequireObjectCoercible` abstract operation\n// https://tc39.es/ecma262/#sec-requireobjectcoercible\nmodule.exports = function (it) {\n if (it == undefined) throw $TypeError(\"Can't call method on \" + it);\n return it;\n};\n","// `SameValue` abstract operation\n// https://tc39.es/ecma262/#sec-samevalue\n// eslint-disable-next-line es-x/no-object-is -- safe\nmodule.exports = Object.is || function is(x, y) {\n // eslint-disable-next-line no-self-compare -- NaN check\n return x === y ? x !== 0 || 1 / x === 1 / y : x != x && y != y;\n};\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar definePropertyModule = require('../internals/object-define-property');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar DESCRIPTORS = require('../internals/descriptors');\n\nvar SPECIES = wellKnownSymbol('species');\n\nmodule.exports = function (CONSTRUCTOR_NAME) {\n var Constructor = getBuiltIn(CONSTRUCTOR_NAME);\n var defineProperty = definePropertyModule.f;\n\n if (DESCRIPTORS && Constructor && !Constructor[SPECIES]) {\n defineProperty(Constructor, SPECIES, {\n configurable: true,\n get: function () { return this; }\n });\n }\n};\n","var defineProperty = require('../internals/object-define-property').f;\nvar hasOwn = require('../internals/has-own-property');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\n\nmodule.exports = function (target, TAG, STATIC) {\n if (target && !STATIC) target = target.prototype;\n if (target && !hasOwn(target, TO_STRING_TAG)) {\n defineProperty(target, TO_STRING_TAG, { configurable: true, value: TAG });\n }\n};\n","var 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","var global = require('../internals/global');\nvar defineGlobalProperty = require('../internals/define-global-property');\n\nvar SHARED = '__core-js_shared__';\nvar store = global[SHARED] || defineGlobalProperty(SHARED, {});\n\nmodule.exports = store;\n","var IS_PURE = require('../internals/is-pure');\nvar store = require('../internals/shared-store');\n\n(module.exports = function (key, value) {\n return store[key] || (store[key] = value !== undefined ? value : {});\n})('versions', []).push({\n version: '3.23.4',\n mode: IS_PURE ? 'pure' : 'global',\n copyright: '© 2014-2022 Denis Pushkarev (zloirock.ru)',\n license: 'https://github.com/zloirock/core-js/blob/v3.23.4/LICENSE',\n source: 'https://github.com/zloirock/core-js'\n});\n","var anObject = require('../internals/an-object');\nvar aConstructor = require('../internals/a-constructor');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar SPECIES = wellKnownSymbol('species');\n\n// `SpeciesConstructor` abstract operation\n// https://tc39.es/ecma262/#sec-speciesconstructor\nmodule.exports = function (O, defaultConstructor) {\n var C = anObject(O).constructor;\n var S;\n return C === undefined || (S = anObject(C)[SPECIES]) == undefined ? defaultConstructor : aConstructor(S);\n};\n","var fails = require('../internals/fails');\n\n// check the existence of a method, lowercase\n// of a tag and escaping quotes in arguments\nmodule.exports = function (METHOD_NAME) {\n return fails(function () {\n var test = ''[METHOD_NAME]('\"');\n return test !== test.toLowerCase() || test.split('\"').length > 3;\n });\n};\n","var uncurryThis = require('../internals/function-uncurry-this');\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\nvar toString = require('../internals/to-string');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nvar charAt = uncurryThis(''.charAt);\nvar charCodeAt = uncurryThis(''.charCodeAt);\nvar stringSlice = uncurryThis(''.slice);\n\nvar createMethod = function (CONVERT_TO_STRING) {\n return function ($this, pos) {\n var S = toString(requireObjectCoercible($this));\n var position = toIntegerOrInfinity(pos);\n var size = S.length;\n var first, second;\n if (position < 0 || position >= size) return CONVERT_TO_STRING ? '' : undefined;\n first = charCodeAt(S, position);\n return first < 0xD800 || first > 0xDBFF || position + 1 === size\n || (second = charCodeAt(S, position + 1)) < 0xDC00 || second > 0xDFFF\n ? CONVERT_TO_STRING\n ? charAt(S, position)\n : first\n : CONVERT_TO_STRING\n ? stringSlice(S, position, position + 2)\n : (first - 0xD800 << 10) + (second - 0xDC00) + 0x10000;\n };\n};\n\nmodule.exports = {\n // `String.prototype.codePointAt` method\n // https://tc39.es/ecma262/#sec-string.prototype.codepointat\n codeAt: createMethod(false),\n // `String.prototype.at` method\n // https://github.com/mathiasbynens/String.prototype.at\n charAt: createMethod(true)\n};\n","'use strict';\n// based on https://github.com/bestiejs/punycode.js/blob/master/punycode.js\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nvar maxInt = 2147483647; // aka. 0x7FFFFFFF or 2^31-1\nvar base = 36;\nvar tMin = 1;\nvar tMax = 26;\nvar skew = 38;\nvar damp = 700;\nvar initialBias = 72;\nvar initialN = 128; // 0x80\nvar delimiter = '-'; // '\\x2D'\nvar regexNonASCII = /[^\\0-\\u007E]/; // non-ASCII chars\nvar regexSeparators = /[.\\u3002\\uFF0E\\uFF61]/g; // RFC 3490 separators\nvar OVERFLOW_ERROR = 'Overflow: input needs wider integers to process';\nvar baseMinusTMin = base - tMin;\n\nvar $RangeError = RangeError;\nvar exec = uncurryThis(regexSeparators.exec);\nvar floor = Math.floor;\nvar fromCharCode = String.fromCharCode;\nvar charCodeAt = uncurryThis(''.charCodeAt);\nvar join = uncurryThis([].join);\nvar push = uncurryThis([].push);\nvar replace = uncurryThis(''.replace);\nvar split = uncurryThis(''.split);\nvar toLowerCase = uncurryThis(''.toLowerCase);\n\n/**\n * Creates an array containing the numeric code points of each Unicode\n * character in the string. While JavaScript uses UCS-2 internally,\n * this function will convert a pair of surrogate halves (each of which\n * UCS-2 exposes as separate characters) into a single code point,\n * matching UTF-16.\n */\nvar ucs2decode = function (string) {\n var output = [];\n var counter = 0;\n var length = string.length;\n while (counter < length) {\n var value = charCodeAt(string, counter++);\n if (value >= 0xD800 && value <= 0xDBFF && counter < length) {\n // It's a high surrogate, and there is a next character.\n var extra = charCodeAt(string, counter++);\n if ((extra & 0xFC00) == 0xDC00) { // Low surrogate.\n push(output, ((value & 0x3FF) << 10) + (extra & 0x3FF) + 0x10000);\n } else {\n // It's an unmatched surrogate; only append this code unit, in case the\n // next code unit is the high surrogate of a surrogate pair.\n push(output, value);\n counter--;\n }\n } else {\n push(output, value);\n }\n }\n return output;\n};\n\n/**\n * Converts a digit/integer into a basic code point.\n */\nvar digitToBasic = function (digit) {\n // 0..25 map to ASCII a..z or A..Z\n // 26..35 map to ASCII 0..9\n return digit + 22 + 75 * (digit < 26);\n};\n\n/**\n * Bias adaptation function as per section 3.4 of RFC 3492.\n * https://tools.ietf.org/html/rfc3492#section-3.4\n */\nvar adapt = function (delta, numPoints, firstTime) {\n var k = 0;\n delta = firstTime ? floor(delta / damp) : delta >> 1;\n delta += floor(delta / numPoints);\n while (delta > baseMinusTMin * tMax >> 1) {\n delta = floor(delta / baseMinusTMin);\n k += base;\n }\n return floor(k + (baseMinusTMin + 1) * delta / (delta + skew));\n};\n\n/**\n * Converts a string of Unicode symbols (e.g. a domain name label) to a\n * Punycode string of ASCII-only symbols.\n */\nvar encode = function (input) {\n var output = [];\n\n // Convert the input in UCS-2 to an array of Unicode code points.\n input = ucs2decode(input);\n\n // Cache the length.\n var inputLength = input.length;\n\n // Initialize the state.\n var n = initialN;\n var delta = 0;\n var bias = initialBias;\n var i, currentValue;\n\n // Handle the basic code points.\n for (i = 0; i < input.length; i++) {\n currentValue = input[i];\n if (currentValue < 0x80) {\n push(output, fromCharCode(currentValue));\n }\n }\n\n var basicLength = output.length; // number of basic code points.\n var handledCPCount = basicLength; // number of code points that have been handled;\n\n // Finish the basic string with a delimiter unless it's empty.\n if (basicLength) {\n push(output, delimiter);\n }\n\n // Main encoding loop:\n while (handledCPCount < inputLength) {\n // All non-basic code points < n have been handled already. Find the next larger one:\n var m = maxInt;\n for (i = 0; i < input.length; i++) {\n currentValue = input[i];\n if (currentValue >= n && currentValue < m) {\n m = currentValue;\n }\n }\n\n // Increase `delta` enough to advance the decoder's state to , but guard against overflow.\n var handledCPCountPlusOne = handledCPCount + 1;\n if (m - n > floor((maxInt - delta) / handledCPCountPlusOne)) {\n throw $RangeError(OVERFLOW_ERROR);\n }\n\n delta += (m - n) * handledCPCountPlusOne;\n n = m;\n\n for (i = 0; i < input.length; i++) {\n currentValue = input[i];\n if (currentValue < n && ++delta > maxInt) {\n throw $RangeError(OVERFLOW_ERROR);\n }\n if (currentValue == n) {\n // Represent delta as a generalized variable-length integer.\n var q = delta;\n var k = base;\n while (true) {\n var t = k <= bias ? tMin : (k >= bias + tMax ? tMax : k - bias);\n if (q < t) break;\n var qMinusT = q - t;\n var baseMinusT = base - t;\n push(output, fromCharCode(digitToBasic(t + qMinusT % baseMinusT)));\n q = floor(qMinusT / baseMinusT);\n k += base;\n }\n\n push(output, fromCharCode(digitToBasic(q)));\n bias = adapt(delta, handledCPCountPlusOne, handledCPCount == basicLength);\n delta = 0;\n handledCPCount++;\n }\n }\n\n delta++;\n n++;\n }\n return join(output, '');\n};\n\nmodule.exports = function (input) {\n var encoded = [];\n var labels = split(replace(toLowerCase(input), regexSeparators, '\\u002E'), '.');\n var i, label;\n for (i = 0; i < labels.length; i++) {\n label = labels[i];\n push(encoded, exec(regexNonASCII, label) ? 'xn--' + encode(label) : label);\n }\n return join(encoded, '.');\n};\n","var PROPER_FUNCTION_NAME = require('../internals/function-name').PROPER;\nvar fails = require('../internals/fails');\nvar whitespaces = require('../internals/whitespaces');\n\nvar non = '\\u200B\\u0085\\u180E';\n\n// check that a method works with the correct list\n// of whitespaces and has a correct name\nmodule.exports = function (METHOD_NAME) {\n return fails(function () {\n return !!whitespaces[METHOD_NAME]()\n || non[METHOD_NAME]() !== non\n || (PROPER_FUNCTION_NAME && whitespaces[METHOD_NAME].name !== METHOD_NAME);\n });\n};\n","var uncurryThis = require('../internals/function-uncurry-this');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar toString = require('../internals/to-string');\nvar whitespaces = require('../internals/whitespaces');\n\nvar replace = uncurryThis(''.replace);\nvar whitespace = '[' + whitespaces + ']';\nvar ltrim = RegExp('^' + whitespace + whitespace + '*');\nvar rtrim = RegExp(whitespace + whitespace + '*$');\n\n// `String.prototype.{ trim, trimStart, trimEnd, trimLeft, trimRight }` methods implementation\nvar createMethod = function (TYPE) {\n return function ($this) {\n var string = toString(requireObjectCoercible($this));\n if (TYPE & 1) string = replace(string, ltrim, '');\n if (TYPE & 2) string = replace(string, rtrim, '');\n return string;\n };\n};\n\nmodule.exports = {\n // `String.prototype.{ trimLeft, trimStart }` methods\n // https://tc39.es/ecma262/#sec-string.prototype.trimstart\n start: createMethod(1),\n // `String.prototype.{ trimRight, trimEnd }` methods\n // https://tc39.es/ecma262/#sec-string.prototype.trimend\n end: createMethod(2),\n // `String.prototype.trim` method\n // https://tc39.es/ecma262/#sec-string.prototype.trim\n trim: createMethod(3)\n};\n","var call = require('../internals/function-call');\nvar getBuiltIn = require('../internals/get-built-in');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar defineBuiltIn = require('../internals/define-built-in');\n\nmodule.exports = function () {\n var Symbol = getBuiltIn('Symbol');\n var SymbolPrototype = Symbol && Symbol.prototype;\n var valueOf = SymbolPrototype && SymbolPrototype.valueOf;\n var TO_PRIMITIVE = wellKnownSymbol('toPrimitive');\n\n if (SymbolPrototype && !SymbolPrototype[TO_PRIMITIVE]) {\n // `Symbol.prototype[@@toPrimitive]` method\n // https://tc39.es/ecma262/#sec-symbol.prototype-@@toprimitive\n // eslint-disable-next-line no-unused-vars -- required for .length\n defineBuiltIn(SymbolPrototype, TO_PRIMITIVE, function (hint) {\n return call(valueOf, this);\n }, { arity: 1 });\n }\n};\n","var global = require('../internals/global');\nvar apply = require('../internals/function-apply');\nvar bind = require('../internals/function-bind-context');\nvar isCallable = require('../internals/is-callable');\nvar hasOwn = require('../internals/has-own-property');\nvar fails = require('../internals/fails');\nvar html = require('../internals/html');\nvar arraySlice = require('../internals/array-slice');\nvar createElement = require('../internals/document-create-element');\nvar validateArgumentsLength = require('../internals/validate-arguments-length');\nvar IS_IOS = require('../internals/engine-is-ios');\nvar IS_NODE = require('../internals/engine-is-node');\n\nvar set = global.setImmediate;\nvar clear = global.clearImmediate;\nvar process = global.process;\nvar Dispatch = global.Dispatch;\nvar Function = global.Function;\nvar MessageChannel = global.MessageChannel;\nvar String = global.String;\nvar counter = 0;\nvar queue = {};\nvar ONREADYSTATECHANGE = 'onreadystatechange';\nvar location, defer, channel, port;\n\ntry {\n // Deno throws a ReferenceError on `location` access without `--location` flag\n location = global.location;\n} catch (error) { /* empty */ }\n\nvar run = function (id) {\n if (hasOwn(queue, id)) {\n var fn = queue[id];\n delete queue[id];\n fn();\n }\n};\n\nvar runner = function (id) {\n return function () {\n run(id);\n };\n};\n\nvar listener = function (event) {\n run(event.data);\n};\n\nvar post = function (id) {\n // old engines have not location.origin\n global.postMessage(String(id), location.protocol + '//' + location.host);\n};\n\n// Node.js 0.9+ & IE10+ has setImmediate, otherwise:\nif (!set || !clear) {\n set = function setImmediate(handler) {\n validateArgumentsLength(arguments.length, 1);\n var fn = isCallable(handler) ? handler : Function(handler);\n var args = arraySlice(arguments, 1);\n queue[++counter] = function () {\n apply(fn, undefined, args);\n };\n defer(counter);\n return counter;\n };\n clear = function clearImmediate(id) {\n delete queue[id];\n };\n // Node.js 0.8-\n if (IS_NODE) {\n defer = function (id) {\n process.nextTick(runner(id));\n };\n // Sphere (JS game engine) Dispatch API\n } else if (Dispatch && Dispatch.now) {\n defer = function (id) {\n Dispatch.now(runner(id));\n };\n // Browsers with MessageChannel, includes WebWorkers\n // except iOS - https://github.com/zloirock/core-js/issues/624\n } else if (MessageChannel && !IS_IOS) {\n channel = new MessageChannel();\n port = channel.port2;\n channel.port1.onmessage = listener;\n defer = bind(port.postMessage, port);\n // Browsers with postMessage, skip WebWorkers\n // IE8 has postMessage, but it's sync & typeof its postMessage is 'object'\n } else if (\n global.addEventListener &&\n isCallable(global.postMessage) &&\n !global.importScripts &&\n location && location.protocol !== 'file:' &&\n !fails(post)\n ) {\n defer = post;\n global.addEventListener('message', listener, false);\n // IE8-\n } else if (ONREADYSTATECHANGE in createElement('script')) {\n defer = function (id) {\n html.appendChild(createElement('script'))[ONREADYSTATECHANGE] = function () {\n html.removeChild(this);\n run(id);\n };\n };\n // Rest old browsers\n } else {\n defer = function (id) {\n setTimeout(runner(id), 0);\n };\n }\n}\n\nmodule.exports = {\n set: set,\n clear: clear\n};\n","var uncurryThis = require('../internals/function-uncurry-this');\n\n// `thisNumberValue` abstract operation\n// https://tc39.es/ecma262/#sec-thisnumbervalue\nmodule.exports = uncurryThis(1.0.valueOf);\n","var 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","var 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 $TypeError(\"Can't convert number to bigint\");\n // eslint-disable-next-line es-x/no-bigint -- safe\n return BigInt(prim);\n};\n","var 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 $RangeError('Wrong length or index');\n return length;\n};\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","var 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","var 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 return argument > 0 ? min(toIntegerOrInfinity(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991\n};\n","var 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","var toPositiveInteger = require('../internals/to-positive-integer');\n\nvar $RangeError = RangeError;\n\nmodule.exports = function (it, BYTES) {\n var offset = toPositiveInteger(it);\n if (offset % BYTES) throw $RangeError('Wrong offset');\n return offset;\n};\n","var toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\n\nvar $RangeError = RangeError;\n\nmodule.exports = function (it) {\n var result = toIntegerOrInfinity(it);\n if (result < 0) throw $RangeError(\"The argument can't be less than 0\");\n return result;\n};\n","var 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 $TypeError(\"Can't convert object to primitive value\");\n }\n if (pref === undefined) pref = 'number';\n return ordinaryToPrimitive(input, pref);\n};\n","var 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","var 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","var classof = require('../internals/classof');\n\nvar $String = String;\n\nmodule.exports = function (argument) {\n if (classof(argument) === 'Symbol') throw TypeError('Cannot convert a Symbol value to a string');\n return $String(argument);\n};\n","var $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 $ = require('../internals/export');\nvar global = require('../internals/global');\nvar call = require('../internals/function-call');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar TYPED_ARRAYS_CONSTRUCTORS_REQUIRES_WRAPPERS = require('../internals/typed-array-constructors-require-wrappers');\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\nvar ArrayBufferModule = require('../internals/array-buffer');\nvar anInstance = require('../internals/an-instance');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar isIntegralNumber = require('../internals/is-integral-number');\nvar toLength = require('../internals/to-length');\nvar toIndex = require('../internals/to-index');\nvar toOffset = require('../internals/to-offset');\nvar toPropertyKey = require('../internals/to-property-key');\nvar hasOwn = require('../internals/has-own-property');\nvar classof = require('../internals/classof');\nvar isObject = require('../internals/is-object');\nvar isSymbol = require('../internals/is-symbol');\nvar create = require('../internals/object-create');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\nvar getOwnPropertyNames = require('../internals/object-get-own-property-names').f;\nvar typedArrayFrom = require('../internals/typed-array-from');\nvar forEach = require('../internals/array-iteration').forEach;\nvar setSpecies = require('../internals/set-species');\nvar definePropertyModule = require('../internals/object-define-property');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar InternalStateModule = require('../internals/internal-state');\nvar inheritIfRequired = require('../internals/inherit-if-required');\n\nvar getInternalState = InternalStateModule.get;\nvar setInternalState = InternalStateModule.set;\nvar enforceInternalState = InternalStateModule.enforce;\nvar nativeDefineProperty = definePropertyModule.f;\nvar nativeGetOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;\nvar round = Math.round;\nvar RangeError = global.RangeError;\nvar ArrayBuffer = ArrayBufferModule.ArrayBuffer;\nvar ArrayBufferPrototype = ArrayBuffer.prototype;\nvar DataView = ArrayBufferModule.DataView;\nvar NATIVE_ARRAY_BUFFER_VIEWS = ArrayBufferViewCore.NATIVE_ARRAY_BUFFER_VIEWS;\nvar TYPED_ARRAY_TAG = ArrayBufferViewCore.TYPED_ARRAY_TAG;\nvar TypedArray = ArrayBufferViewCore.TypedArray;\nvar TypedArrayPrototype = ArrayBufferViewCore.TypedArrayPrototype;\nvar aTypedArrayConstructor = ArrayBufferViewCore.aTypedArrayConstructor;\nvar isTypedArray = ArrayBufferViewCore.isTypedArray;\nvar BYTES_PER_ELEMENT = 'BYTES_PER_ELEMENT';\nvar WRONG_LENGTH = 'Wrong length';\n\nvar fromList = function (C, list) {\n aTypedArrayConstructor(C);\n var index = 0;\n var length = list.length;\n var result = new C(length);\n while (length > index) result[index] = list[index++];\n return result;\n};\n\nvar addGetter = function (it, key) {\n nativeDefineProperty(it, key, { get: function () {\n return getInternalState(this)[key];\n } });\n};\n\nvar isArrayBuffer = function (it) {\n var klass;\n return isPrototypeOf(ArrayBufferPrototype, it) || (klass = classof(it)) == 'ArrayBuffer' || klass == 'SharedArrayBuffer';\n};\n\nvar isTypedArrayIndex = function (target, key) {\n return isTypedArray(target)\n && !isSymbol(key)\n && key in target\n && isIntegralNumber(+key)\n && key >= 0;\n};\n\nvar wrappedGetOwnPropertyDescriptor = function getOwnPropertyDescriptor(target, key) {\n key = toPropertyKey(key);\n return isTypedArrayIndex(target, key)\n ? createPropertyDescriptor(2, target[key])\n : nativeGetOwnPropertyDescriptor(target, key);\n};\n\nvar wrappedDefineProperty = function defineProperty(target, key, descriptor) {\n key = toPropertyKey(key);\n if (isTypedArrayIndex(target, key)\n && isObject(descriptor)\n && hasOwn(descriptor, 'value')\n && !hasOwn(descriptor, 'get')\n && !hasOwn(descriptor, 'set')\n // TODO: add validation descriptor w/o calling accessors\n && !descriptor.configurable\n && (!hasOwn(descriptor, 'writable') || descriptor.writable)\n && (!hasOwn(descriptor, 'enumerable') || descriptor.enumerable)\n ) {\n target[key] = descriptor.value;\n return target;\n } return nativeDefineProperty(target, key, descriptor);\n};\n\nif (DESCRIPTORS) {\n if (!NATIVE_ARRAY_BUFFER_VIEWS) {\n getOwnPropertyDescriptorModule.f = wrappedGetOwnPropertyDescriptor;\n definePropertyModule.f = wrappedDefineProperty;\n addGetter(TypedArrayPrototype, 'buffer');\n addGetter(TypedArrayPrototype, 'byteOffset');\n addGetter(TypedArrayPrototype, 'byteLength');\n addGetter(TypedArrayPrototype, 'length');\n }\n\n $({ target: 'Object', stat: true, forced: !NATIVE_ARRAY_BUFFER_VIEWS }, {\n getOwnPropertyDescriptor: wrappedGetOwnPropertyDescriptor,\n defineProperty: wrappedDefineProperty\n });\n\n module.exports = function (TYPE, wrapper, CLAMPED) {\n var BYTES = TYPE.match(/\\d+$/)[0] / 8;\n var CONSTRUCTOR_NAME = TYPE + (CLAMPED ? 'Clamped' : '') + 'Array';\n var GETTER = 'get' + TYPE;\n var SETTER = 'set' + TYPE;\n var NativeTypedArrayConstructor = global[CONSTRUCTOR_NAME];\n var TypedArrayConstructor = NativeTypedArrayConstructor;\n var TypedArrayConstructorPrototype = TypedArrayConstructor && TypedArrayConstructor.prototype;\n var exported = {};\n\n var getter = function (that, index) {\n var data = getInternalState(that);\n return data.view[GETTER](index * BYTES + data.byteOffset, true);\n };\n\n var setter = function (that, index, value) {\n var data = getInternalState(that);\n if (CLAMPED) value = (value = round(value)) < 0 ? 0 : value > 0xFF ? 0xFF : value & 0xFF;\n data.view[SETTER](index * BYTES + data.byteOffset, value, true);\n };\n\n var addElement = function (that, index) {\n nativeDefineProperty(that, index, {\n get: function () {\n return getter(this, index);\n },\n set: function (value) {\n return setter(this, index, value);\n },\n enumerable: true\n });\n };\n\n if (!NATIVE_ARRAY_BUFFER_VIEWS) {\n TypedArrayConstructor = wrapper(function (that, data, offset, $length) {\n anInstance(that, TypedArrayConstructorPrototype);\n var index = 0;\n var byteOffset = 0;\n var buffer, byteLength, length;\n if (!isObject(data)) {\n length = toIndex(data);\n byteLength = length * BYTES;\n buffer = new ArrayBuffer(byteLength);\n } else if (isArrayBuffer(data)) {\n buffer = data;\n byteOffset = toOffset(offset, BYTES);\n var $len = data.byteLength;\n if ($length === undefined) {\n if ($len % BYTES) throw RangeError(WRONG_LENGTH);\n byteLength = $len - byteOffset;\n if (byteLength < 0) throw RangeError(WRONG_LENGTH);\n } else {\n byteLength = toLength($length) * BYTES;\n if (byteLength + byteOffset > $len) throw RangeError(WRONG_LENGTH);\n }\n length = byteLength / BYTES;\n } else if (isTypedArray(data)) {\n return fromList(TypedArrayConstructor, data);\n } else {\n return call(typedArrayFrom, TypedArrayConstructor, data);\n }\n setInternalState(that, {\n buffer: buffer,\n byteOffset: byteOffset,\n byteLength: byteLength,\n length: length,\n view: new DataView(buffer)\n });\n while (index < length) addElement(that, index++);\n });\n\n if (setPrototypeOf) setPrototypeOf(TypedArrayConstructor, TypedArray);\n TypedArrayConstructorPrototype = TypedArrayConstructor.prototype = create(TypedArrayPrototype);\n } else if (TYPED_ARRAYS_CONSTRUCTORS_REQUIRES_WRAPPERS) {\n TypedArrayConstructor = wrapper(function (dummy, data, typedArrayOffset, $length) {\n anInstance(dummy, TypedArrayConstructorPrototype);\n return inheritIfRequired(function () {\n if (!isObject(data)) return new NativeTypedArrayConstructor(toIndex(data));\n if (isArrayBuffer(data)) return $length !== undefined\n ? new NativeTypedArrayConstructor(data, toOffset(typedArrayOffset, BYTES), $length)\n : typedArrayOffset !== undefined\n ? new NativeTypedArrayConstructor(data, toOffset(typedArrayOffset, BYTES))\n : new NativeTypedArrayConstructor(data);\n if (isTypedArray(data)) return fromList(TypedArrayConstructor, data);\n return call(typedArrayFrom, TypedArrayConstructor, data);\n }(), dummy, TypedArrayConstructor);\n });\n\n if (setPrototypeOf) setPrototypeOf(TypedArrayConstructor, TypedArray);\n forEach(getOwnPropertyNames(NativeTypedArrayConstructor), function (key) {\n if (!(key in TypedArrayConstructor)) {\n createNonEnumerableProperty(TypedArrayConstructor, key, NativeTypedArrayConstructor[key]);\n }\n });\n TypedArrayConstructor.prototype = TypedArrayConstructorPrototype;\n }\n\n if (TypedArrayConstructorPrototype.constructor !== TypedArrayConstructor) {\n createNonEnumerableProperty(TypedArrayConstructorPrototype, 'constructor', TypedArrayConstructor);\n }\n\n enforceInternalState(TypedArrayConstructorPrototype).TypedArrayConstructor = TypedArrayConstructor;\n\n if (TYPED_ARRAY_TAG) {\n createNonEnumerableProperty(TypedArrayConstructorPrototype, TYPED_ARRAY_TAG, CONSTRUCTOR_NAME);\n }\n\n var FORCED = TypedArrayConstructor != NativeTypedArrayConstructor;\n\n exported[CONSTRUCTOR_NAME] = TypedArrayConstructor;\n\n $({ global: true, constructor: true, forced: FORCED, sham: !NATIVE_ARRAY_BUFFER_VIEWS }, exported);\n\n if (!(BYTES_PER_ELEMENT in TypedArrayConstructor)) {\n createNonEnumerableProperty(TypedArrayConstructor, BYTES_PER_ELEMENT, BYTES);\n }\n\n if (!(BYTES_PER_ELEMENT in TypedArrayConstructorPrototype)) {\n createNonEnumerableProperty(TypedArrayConstructorPrototype, BYTES_PER_ELEMENT, BYTES);\n }\n\n setSpecies(CONSTRUCTOR_NAME);\n };\n} else module.exports = function () { /* empty */ };\n","/* eslint-disable no-new -- required for testing */\nvar global = require('../internals/global');\nvar fails = require('../internals/fails');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\nvar NATIVE_ARRAY_BUFFER_VIEWS = require('../internals/array-buffer-view-core').NATIVE_ARRAY_BUFFER_VIEWS;\n\nvar ArrayBuffer = global.ArrayBuffer;\nvar Int8Array = global.Int8Array;\n\nmodule.exports = !NATIVE_ARRAY_BUFFER_VIEWS || !fails(function () {\n Int8Array(1);\n}) || !fails(function () {\n new Int8Array(-1);\n}) || !checkCorrectnessOfIteration(function (iterable) {\n new Int8Array();\n new Int8Array(null);\n new Int8Array(1.5);\n new Int8Array(iterable);\n}, true) || fails(function () {\n // Safari (11+) bug - a reason why even Safari 13 should load a typed array polyfill\n return new Int8Array(new ArrayBuffer(2), 1, undefined).length !== 1;\n});\n","var arrayFromConstructorAndList = require('../internals/array-from-constructor-and-list');\nvar typedArraySpeciesConstructor = require('../internals/typed-array-species-constructor');\n\nmodule.exports = function (instance, list) {\n return arrayFromConstructorAndList(typedArraySpeciesConstructor(instance), list);\n};\n","var bind = require('../internals/function-bind-context');\nvar call = require('../internals/function-call');\nvar aConstructor = require('../internals/a-constructor');\nvar toObject = require('../internals/to-object');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar getIterator = require('../internals/get-iterator');\nvar getIteratorMethod = require('../internals/get-iterator-method');\nvar isArrayIteratorMethod = require('../internals/is-array-iterator-method');\nvar aTypedArrayConstructor = require('../internals/array-buffer-view-core').aTypedArrayConstructor;\n\nmodule.exports = function from(source /* , mapfn, thisArg */) {\n var C = aConstructor(this);\n var O = toObject(source);\n var argumentsLength = arguments.length;\n var mapfn = argumentsLength > 1 ? arguments[1] : undefined;\n var mapping = mapfn !== undefined;\n var iteratorMethod = getIteratorMethod(O);\n var i, length, result, step, iterator, next;\n if (iteratorMethod && !isArrayIteratorMethod(iteratorMethod)) {\n iterator = getIterator(O, iteratorMethod);\n next = iterator.next;\n O = [];\n while (!(step = call(next, iterator)).done) {\n O.push(step.value);\n }\n }\n if (mapping && argumentsLength > 2) {\n mapfn = bind(mapfn, arguments[2]);\n }\n length = lengthOfArrayLike(O);\n result = new (aTypedArrayConstructor(C))(length);\n for (i = 0; length > i; i++) {\n result[i] = mapping ? mapfn(O[i], i) : O[i];\n }\n return result;\n};\n","var ArrayBufferViewCore = require('../internals/array-buffer-view-core');\nvar speciesConstructor = require('../internals/species-constructor');\n\nvar aTypedArrayConstructor = ArrayBufferViewCore.aTypedArrayConstructor;\nvar getTypedArrayConstructor = ArrayBufferViewCore.getTypedArrayConstructor;\n\n// a part of `TypedArraySpeciesCreate` abstract operation\n// https://tc39.es/ecma262/#typedarray-species-create\nmodule.exports = function (originalArray) {\n return aTypedArrayConstructor(speciesConstructor(originalArray, getTypedArrayConstructor(originalArray)));\n};\n","var 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","/* eslint-disable es-x/no-symbol -- required for testing */\nvar NATIVE_SYMBOL = require('../internals/native-symbol');\n\nmodule.exports = NATIVE_SYMBOL\n && !Symbol.sham\n && typeof Symbol.iterator == 'symbol';\n","var 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-x/no-object-defineproperty -- required for testing\n return Object.defineProperty(function () { /* empty */ }, 'prototype', {\n value: 42,\n writable: false\n }).prototype != 42;\n});\n","var $TypeError = TypeError;\n\nmodule.exports = function (passed, required) {\n if (passed < required) throw $TypeError('Not enough arguments');\n return passed;\n};\n","var wellKnownSymbol = require('../internals/well-known-symbol');\n\nexports.f = wellKnownSymbol;\n","var 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/native-symbol');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar WellKnownSymbolsStore = shared('wks');\nvar Symbol = global.Symbol;\nvar symbolFor = Symbol && Symbol['for'];\nvar createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol : Symbol && Symbol.withoutSetter || uid;\n\nmodule.exports = function (name) {\n if (!hasOwn(WellKnownSymbolsStore, name) || !(NATIVE_SYMBOL || typeof WellKnownSymbolsStore[name] == 'string')) {\n var description = 'Symbol.' + name;\n if (NATIVE_SYMBOL && hasOwn(Symbol, name)) {\n WellKnownSymbolsStore[name] = Symbol[name];\n } else if (USE_SYMBOL_AS_UID && symbolFor) {\n WellKnownSymbolsStore[name] = symbolFor(description);\n } else {\n WellKnownSymbolsStore[name] = createWellKnownSymbol(description);\n }\n } return WellKnownSymbolsStore[name];\n};\n","// a string of all valid unicode whitespaces\nmodule.exports = '\\u0009\\u000A\\u000B\\u000C\\u000D\\u0020\\u00A0\\u1680\\u2000\\u2001\\u2002' +\n '\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200A\\u202F\\u205F\\u3000\\u2028\\u2029\\uFEFF';\n","'use strict';\nvar $ = require('../internals/export');\nvar fails = require('../internals/fails');\nvar isArray = require('../internals/is-array');\nvar isObject = require('../internals/is-object');\nvar toObject = require('../internals/to-object');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar doesNotExceedSafeInteger = require('../internals/does-not-exceed-safe-integer');\nvar createProperty = require('../internals/create-property');\nvar arraySpeciesCreate = require('../internals/array-species-create');\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar IS_CONCAT_SPREADABLE = wellKnownSymbol('isConcatSpreadable');\n\n// We can't use this feature detection in V8 since it causes\n// deoptimization and serious performance degradation\n// https://github.com/zloirock/core-js/issues/679\nvar IS_CONCAT_SPREADABLE_SUPPORT = V8_VERSION >= 51 || !fails(function () {\n var array = [];\n array[IS_CONCAT_SPREADABLE] = false;\n return array.concat()[0] !== array;\n});\n\nvar SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('concat');\n\nvar isConcatSpreadable = function (O) {\n if (!isObject(O)) return false;\n var spreadable = O[IS_CONCAT_SPREADABLE];\n return spreadable !== undefined ? !!spreadable : isArray(O);\n};\n\nvar FORCED = !IS_CONCAT_SPREADABLE_SUPPORT || !SPECIES_SUPPORT;\n\n// `Array.prototype.concat` method\n// https://tc39.es/ecma262/#sec-array.prototype.concat\n// with adding support of @@isConcatSpreadable and @@species\n$({ target: 'Array', proto: true, arity: 1, forced: FORCED }, {\n // eslint-disable-next-line no-unused-vars -- required for `.length`\n concat: function concat(arg) {\n var O = toObject(this);\n var A = arraySpeciesCreate(O, 0);\n var n = 0;\n var i, k, length, len, E;\n for (i = -1, length = arguments.length; i < length; i++) {\n E = i === -1 ? O : arguments[i];\n if (isConcatSpreadable(E)) {\n len = lengthOfArrayLike(E);\n doesNotExceedSafeInteger(n + len);\n for (k = 0; k < len; k++, n++) if (k in E) createProperty(A, n, E[k]);\n } else {\n doesNotExceedSafeInteger(n + 1);\n createProperty(A, n++, E);\n }\n }\n A.length = n;\n return A;\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar $filter = require('../internals/array-iteration').filter;\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('filter');\n\n// `Array.prototype.filter` method\n// https://tc39.es/ecma262/#sec-array.prototype.filter\n// with adding support of @@species\n$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT }, {\n filter: function filter(callbackfn /* , thisArg */) {\n return $filter(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar $find = require('../internals/array-iteration').find;\nvar addToUnscopables = require('../internals/add-to-unscopables');\n\nvar FIND = 'find';\nvar SKIPS_HOLES = true;\n\n// Shouldn't skip holes\nif (FIND in []) Array(1)[FIND](function () { SKIPS_HOLES = false; });\n\n// `Array.prototype.find` method\n// https://tc39.es/ecma262/#sec-array.prototype.find\n$({ target: 'Array', proto: true, forced: SKIPS_HOLES }, {\n find: function find(callbackfn /* , that = undefined */) {\n return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables(FIND);\n","'use strict';\nvar $ = require('../internals/export');\nvar flattenIntoArray = require('../internals/flatten-into-array');\nvar toObject = require('../internals/to-object');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\nvar arraySpeciesCreate = require('../internals/array-species-create');\n\n// `Array.prototype.flat` method\n// https://tc39.es/ecma262/#sec-array.prototype.flat\n$({ target: 'Array', proto: true }, {\n flat: function flat(/* depthArg = 1 */) {\n var depthArg = arguments.length ? arguments[0] : undefined;\n var O = toObject(this);\n var sourceLen = lengthOfArrayLike(O);\n var A = arraySpeciesCreate(O, 0);\n A.length = flattenIntoArray(A, O, O, sourceLen, 0, depthArg === undefined ? 1 : toIntegerOrInfinity(depthArg));\n return A;\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar $includes = require('../internals/array-includes').includes;\nvar fails = require('../internals/fails');\nvar addToUnscopables = require('../internals/add-to-unscopables');\n\n// FF99+ bug\nvar BROKEN_ON_SPARSE = fails(function () {\n return !Array(1).includes();\n});\n\n// `Array.prototype.includes` method\n// https://tc39.es/ecma262/#sec-array.prototype.includes\n$({ target: 'Array', proto: true, forced: BROKEN_ON_SPARSE }, {\n includes: function includes(el /* , fromIndex = 0 */) {\n return $includes(this, el, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables('includes');\n","'use strict';\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar addToUnscopables = require('../internals/add-to-unscopables');\nvar Iterators = require('../internals/iterators');\nvar InternalStateModule = require('../internals/internal-state');\nvar defineProperty = require('../internals/object-define-property').f;\nvar defineIterator = require('../internals/define-iterator');\nvar IS_PURE = require('../internals/is-pure');\nvar DESCRIPTORS = require('../internals/descriptors');\n\nvar ARRAY_ITERATOR = 'Array Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(ARRAY_ITERATOR);\n\n// `Array.prototype.entries` method\n// https://tc39.es/ecma262/#sec-array.prototype.entries\n// `Array.prototype.keys` method\n// https://tc39.es/ecma262/#sec-array.prototype.keys\n// `Array.prototype.values` method\n// https://tc39.es/ecma262/#sec-array.prototype.values\n// `Array.prototype[@@iterator]` method\n// https://tc39.es/ecma262/#sec-array.prototype-@@iterator\n// `CreateArrayIterator` internal method\n// https://tc39.es/ecma262/#sec-createarrayiterator\nmodule.exports = defineIterator(Array, 'Array', function (iterated, kind) {\n setInternalState(this, {\n type: ARRAY_ITERATOR,\n target: toIndexedObject(iterated), // target\n index: 0, // next index\n kind: kind // kind\n });\n// `%ArrayIteratorPrototype%.next` method\n// https://tc39.es/ecma262/#sec-%arrayiteratorprototype%.next\n}, function () {\n var state = getInternalState(this);\n var target = state.target;\n var kind = state.kind;\n var index = state.index++;\n if (!target || index >= target.length) {\n state.target = undefined;\n return { value: undefined, done: true };\n }\n if (kind == 'keys') return { value: index, done: false };\n if (kind == 'values') return { value: target[index], done: false };\n return { value: [index, target[index]], done: false };\n}, 'values');\n\n// argumentsList[@@iterator] is %ArrayProto_values%\n// https://tc39.es/ecma262/#sec-createunmappedargumentsobject\n// https://tc39.es/ecma262/#sec-createmappedargumentsobject\nvar values = Iterators.Arguments = Iterators.Array;\n\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables('keys');\naddToUnscopables('values');\naddToUnscopables('entries');\n\n// V8 ~ Chrome 45- bug\nif (!IS_PURE && DESCRIPTORS && values.name !== 'values') try {\n defineProperty(values, 'name', { value: 'values' });\n} catch (error) { /* empty */ }\n","'use strict';\nvar $ = require('../internals/export');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar IndexedObject = require('../internals/indexed-object');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\n\nvar un$Join = uncurryThis([].join);\n\nvar ES3_STRINGS = IndexedObject != Object;\nvar STRICT_METHOD = arrayMethodIsStrict('join', ',');\n\n// `Array.prototype.join` method\n// https://tc39.es/ecma262/#sec-array.prototype.join\n$({ target: 'Array', proto: true, forced: ES3_STRINGS || !STRICT_METHOD }, {\n join: function join(separator) {\n return un$Join(toIndexedObject(this), separator === undefined ? ',' : separator);\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar $map = require('../internals/array-iteration').map;\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('map');\n\n// `Array.prototype.map` method\n// https://tc39.es/ecma262/#sec-array.prototype.map\n// with adding support of @@species\n$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT }, {\n map: function map(callbackfn /* , thisArg */) {\n return $map(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar isArray = require('../internals/is-array');\nvar isConstructor = require('../internals/is-constructor');\nvar isObject = require('../internals/is-object');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar createProperty = require('../internals/create-property');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\nvar un$Slice = require('../internals/array-slice');\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('slice');\n\nvar SPECIES = wellKnownSymbol('species');\nvar $Array = Array;\nvar max = Math.max;\n\n// `Array.prototype.slice` method\n// https://tc39.es/ecma262/#sec-array.prototype.slice\n// fallback for not array-like ES3 strings and DOM objects\n$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT }, {\n slice: function slice(start, end) {\n var O = toIndexedObject(this);\n var length = lengthOfArrayLike(O);\n var k = toAbsoluteIndex(start, length);\n var fin = toAbsoluteIndex(end === undefined ? length : end, length);\n // inline `ArraySpeciesCreate` for usage native `Array#slice` where it's possible\n var Constructor, result, n;\n if (isArray(O)) {\n Constructor = O.constructor;\n // cross-realm fallback\n if (isConstructor(Constructor) && (Constructor === $Array || isArray(Constructor.prototype))) {\n Constructor = undefined;\n } else if (isObject(Constructor)) {\n Constructor = Constructor[SPECIES];\n if (Constructor === null) Constructor = undefined;\n }\n if (Constructor === $Array || Constructor === undefined) {\n return un$Slice(O, k, fin);\n }\n }\n result = new (Constructor === undefined ? $Array : Constructor)(max(fin - k, 0));\n for (n = 0; k < fin; k++, n++) if (k in O) createProperty(result, n, O[k]);\n result.length = n;\n return result;\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar aCallable = require('../internals/a-callable');\nvar toObject = require('../internals/to-object');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar deletePropertyOrThrow = require('../internals/delete-property-or-throw');\nvar toString = require('../internals/to-string');\nvar fails = require('../internals/fails');\nvar internalSort = require('../internals/array-sort');\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\nvar FF = require('../internals/engine-ff-version');\nvar IE_OR_EDGE = require('../internals/engine-is-ie-or-edge');\nvar V8 = require('../internals/engine-v8-version');\nvar WEBKIT = require('../internals/engine-webkit-version');\n\nvar test = [];\nvar un$Sort = uncurryThis(test.sort);\nvar push = uncurryThis(test.push);\n\n// IE8-\nvar FAILS_ON_UNDEFINED = fails(function () {\n test.sort(undefined);\n});\n// V8 bug\nvar FAILS_ON_NULL = fails(function () {\n test.sort(null);\n});\n// Old WebKit\nvar STRICT_METHOD = arrayMethodIsStrict('sort');\n\nvar STABLE_SORT = !fails(function () {\n // feature detection can be too slow, so check engines versions\n if (V8) return V8 < 70;\n if (FF && FF > 3) return;\n if (IE_OR_EDGE) return true;\n if (WEBKIT) return WEBKIT < 603;\n\n var result = '';\n var code, chr, value, index;\n\n // generate an array with more 512 elements (Chakra and old V8 fails only in this case)\n for (code = 65; code < 76; code++) {\n chr = String.fromCharCode(code);\n\n switch (code) {\n case 66: case 69: case 70: case 72: value = 3; break;\n case 68: case 71: value = 4; break;\n default: value = 2;\n }\n\n for (index = 0; index < 47; index++) {\n test.push({ k: chr + index, v: value });\n }\n }\n\n test.sort(function (a, b) { return b.v - a.v; });\n\n for (index = 0; index < test.length; index++) {\n chr = test[index].k.charAt(0);\n if (result.charAt(result.length - 1) !== chr) result += chr;\n }\n\n return result !== 'DGBEFHACIJK';\n});\n\nvar FORCED = FAILS_ON_UNDEFINED || !FAILS_ON_NULL || !STRICT_METHOD || !STABLE_SORT;\n\nvar getSortCompare = function (comparefn) {\n return function (x, y) {\n if (y === undefined) return -1;\n if (x === undefined) return 1;\n if (comparefn !== undefined) return +comparefn(x, y) || 0;\n return toString(x) > toString(y) ? 1 : -1;\n };\n};\n\n// `Array.prototype.sort` method\n// https://tc39.es/ecma262/#sec-array.prototype.sort\n$({ target: 'Array', proto: true, forced: FORCED }, {\n sort: function sort(comparefn) {\n if (comparefn !== undefined) aCallable(comparefn);\n\n var array = toObject(this);\n\n if (STABLE_SORT) return comparefn === undefined ? un$Sort(array) : un$Sort(array, comparefn);\n\n var items = [];\n var arrayLength = lengthOfArrayLike(array);\n var itemsLength, index;\n\n for (index = 0; index < arrayLength; index++) {\n if (index in array) push(items, array[index]);\n }\n\n internalSort(items, getSortCompare(comparefn));\n\n itemsLength = items.length;\n index = 0;\n\n while (index < itemsLength) array[index] = items[index++];\n while (index < arrayLength) deletePropertyOrThrow(array, index++);\n\n return array;\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar toObject = require('../internals/to-object');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar doesNotExceedSafeInteger = require('../internals/does-not-exceed-safe-integer');\nvar arraySpeciesCreate = require('../internals/array-species-create');\nvar createProperty = require('../internals/create-property');\nvar deletePropertyOrThrow = require('../internals/delete-property-or-throw');\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('splice');\n\nvar max = Math.max;\nvar min = Math.min;\n\n// `Array.prototype.splice` method\n// https://tc39.es/ecma262/#sec-array.prototype.splice\n// with adding support of @@species\n$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT }, {\n splice: function splice(start, deleteCount /* , ...items */) {\n var O = toObject(this);\n var len = lengthOfArrayLike(O);\n var actualStart = toAbsoluteIndex(start, len);\n var argumentsLength = arguments.length;\n var insertCount, actualDeleteCount, A, k, from, to;\n if (argumentsLength === 0) {\n insertCount = actualDeleteCount = 0;\n } else if (argumentsLength === 1) {\n insertCount = 0;\n actualDeleteCount = len - actualStart;\n } else {\n insertCount = argumentsLength - 2;\n actualDeleteCount = min(max(toIntegerOrInfinity(deleteCount), 0), len - actualStart);\n }\n doesNotExceedSafeInteger(len + insertCount - actualDeleteCount);\n A = arraySpeciesCreate(O, actualDeleteCount);\n for (k = 0; k < actualDeleteCount; k++) {\n from = actualStart + k;\n if (from in O) createProperty(A, k, O[from]);\n }\n A.length = actualDeleteCount;\n if (insertCount < actualDeleteCount) {\n for (k = actualStart; k < len - actualDeleteCount; k++) {\n from = k + actualDeleteCount;\n to = k + insertCount;\n if (from in O) O[to] = O[from];\n else deletePropertyOrThrow(O, to);\n }\n for (k = len; k > len - actualDeleteCount + insertCount; k--) deletePropertyOrThrow(O, k - 1);\n } else if (insertCount > actualDeleteCount) {\n for (k = len - actualDeleteCount; k > actualStart; k--) {\n from = k + actualDeleteCount - 1;\n to = k + insertCount - 1;\n if (from in O) O[to] = O[from];\n else deletePropertyOrThrow(O, to);\n }\n }\n for (k = 0; k < insertCount; k++) {\n O[k + actualStart] = arguments[k + 2];\n }\n O.length = len - actualDeleteCount + insertCount;\n return A;\n }\n});\n","// this method was added to unscopables after implementation\n// in popular engines, so it's moved to a separate module\nvar addToUnscopables = require('../internals/add-to-unscopables');\n\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables('flat');\n","var DESCRIPTORS = require('../internals/descriptors');\nvar FUNCTION_NAME_EXISTS = require('../internals/function-name').EXISTS;\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar defineProperty = require('../internals/object-define-property').f;\n\nvar FunctionPrototype = Function.prototype;\nvar functionToString = uncurryThis(FunctionPrototype.toString);\nvar nameRE = /function\\b(?:\\s|\\/\\*[\\S\\s]*?\\*\\/|\\/\\/[^\\n\\r]*[\\n\\r]+)*([^\\s(/]*)/;\nvar regExpExec = uncurryThis(nameRE.exec);\nvar NAME = 'name';\n\n// Function instances `.name` property\n// https://tc39.es/ecma262/#sec-function-instances-name\nif (DESCRIPTORS && !FUNCTION_NAME_EXISTS) {\n defineProperty(FunctionPrototype, NAME, {\n configurable: true,\n get: function () {\n try {\n return regExpExec(nameRE, functionToString(this))[1];\n } catch (error) {\n return '';\n }\n }\n });\n}\n","var $ = require('../internals/export');\nvar global = require('../internals/global');\n\n// `globalThis` object\n// https://tc39.es/ecma262/#sec-globalthis\n$({ global: true }, {\n globalThis: global\n});\n","var $ = require('../internals/export');\nvar getBuiltIn = require('../internals/get-built-in');\nvar apply = require('../internals/function-apply');\nvar call = require('../internals/function-call');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar isArray = require('../internals/is-array');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar isSymbol = require('../internals/is-symbol');\nvar arraySlice = require('../internals/array-slice');\nvar NATIVE_SYMBOL = require('../internals/native-symbol');\n\nvar $stringify = getBuiltIn('JSON', 'stringify');\nvar exec = uncurryThis(/./.exec);\nvar charAt = uncurryThis(''.charAt);\nvar charCodeAt = uncurryThis(''.charCodeAt);\nvar replace = uncurryThis(''.replace);\nvar numberToString = uncurryThis(1.0.toString);\n\nvar tester = /[\\uD800-\\uDFFF]/g;\nvar low = /^[\\uD800-\\uDBFF]$/;\nvar hi = /^[\\uDC00-\\uDFFF]$/;\n\nvar WRONG_SYMBOLS_CONVERSION = !NATIVE_SYMBOL || fails(function () {\n var symbol = getBuiltIn('Symbol')();\n // MS Edge converts symbol values to JSON as {}\n return $stringify([symbol]) != '[null]'\n // WebKit converts symbol values to JSON as null\n || $stringify({ a: symbol }) != '{}'\n // V8 throws on boxed symbols\n || $stringify(Object(symbol)) != '{}';\n});\n\n// https://github.com/tc39/proposal-well-formed-stringify\nvar ILL_FORMED_UNICODE = fails(function () {\n return $stringify('\\uDF06\\uD834') !== '\"\\\\udf06\\\\ud834\"'\n || $stringify('\\uDEAD') !== '\"\\\\udead\"';\n});\n\nvar stringifyWithSymbolsFix = function (it, replacer) {\n var args = arraySlice(arguments);\n var $replacer = replacer;\n if (!isObject(replacer) && it === undefined || isSymbol(it)) return; // IE8 returns string on undefined\n if (!isArray(replacer)) replacer = function (key, value) {\n if (isCallable($replacer)) value = call($replacer, this, key, value);\n if (!isSymbol(value)) return value;\n };\n args[1] = replacer;\n return apply($stringify, null, args);\n};\n\nvar fixIllFormed = function (match, offset, string) {\n var prev = charAt(string, offset - 1);\n var next = charAt(string, offset + 1);\n if ((exec(low, match) && !exec(hi, next)) || (exec(hi, match) && !exec(low, prev))) {\n return '\\\\u' + numberToString(charCodeAt(match, 0), 16);\n } return match;\n};\n\nif ($stringify) {\n // `JSON.stringify` method\n // https://tc39.es/ecma262/#sec-json.stringify\n $({ target: 'JSON', stat: true, arity: 3, forced: WRONG_SYMBOLS_CONVERSION || ILL_FORMED_UNICODE }, {\n // eslint-disable-next-line no-unused-vars -- required for `.length`\n stringify: function stringify(it, replacer, space) {\n var args = arraySlice(arguments);\n var result = apply(WRONG_SYMBOLS_CONVERSION ? stringifyWithSymbolsFix : $stringify, null, args);\n return ILL_FORMED_UNICODE && typeof result == 'string' ? replace(result, tester, fixIllFormed) : result;\n }\n });\n}\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar global = require('../internals/global');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar isForced = require('../internals/is-forced');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar hasOwn = require('../internals/has-own-property');\nvar inheritIfRequired = require('../internals/inherit-if-required');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar isSymbol = require('../internals/is-symbol');\nvar toPrimitive = require('../internals/to-primitive');\nvar fails = require('../internals/fails');\nvar getOwnPropertyNames = require('../internals/object-get-own-property-names').f;\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar defineProperty = require('../internals/object-define-property').f;\nvar thisNumberValue = require('../internals/this-number-value');\nvar trim = require('../internals/string-trim').trim;\n\nvar NUMBER = 'Number';\nvar NativeNumber = global[NUMBER];\nvar NumberPrototype = NativeNumber.prototype;\nvar TypeError = global.TypeError;\nvar arraySlice = uncurryThis(''.slice);\nvar charCodeAt = uncurryThis(''.charCodeAt);\n\n// `ToNumeric` abstract operation\n// https://tc39.es/ecma262/#sec-tonumeric\nvar toNumeric = function (value) {\n var primValue = toPrimitive(value, 'number');\n return typeof primValue == 'bigint' ? primValue : toNumber(primValue);\n};\n\n// `ToNumber` abstract operation\n// https://tc39.es/ecma262/#sec-tonumber\nvar toNumber = function (argument) {\n var it = toPrimitive(argument, 'number');\n var first, third, radix, maxCode, digits, length, index, code;\n if (isSymbol(it)) throw TypeError('Cannot convert a Symbol value to a number');\n if (typeof it == 'string' && it.length > 2) {\n it = trim(it);\n first = charCodeAt(it, 0);\n if (first === 43 || first === 45) {\n third = charCodeAt(it, 2);\n if (third === 88 || third === 120) return NaN; // Number('+0x1') should be NaN, old V8 fix\n } else if (first === 48) {\n switch (charCodeAt(it, 1)) {\n case 66: case 98: radix = 2; maxCode = 49; break; // fast equal of /^0b[01]+$/i\n case 79: case 111: radix = 8; maxCode = 55; break; // fast equal of /^0o[0-7]+$/i\n default: return +it;\n }\n digits = arraySlice(it, 2);\n length = digits.length;\n for (index = 0; index < length; index++) {\n code = charCodeAt(digits, index);\n // parseInt parses a string to a first unavailable symbol\n // but ToNumber should return NaN if a string contains unavailable symbols\n if (code < 48 || code > maxCode) return NaN;\n } return parseInt(digits, radix);\n }\n } return +it;\n};\n\n// `Number` constructor\n// https://tc39.es/ecma262/#sec-number-constructor\nif (isForced(NUMBER, !NativeNumber(' 0o1') || !NativeNumber('0b1') || NativeNumber('+0x1'))) {\n var NumberWrapper = function Number(value) {\n var n = arguments.length < 1 ? 0 : NativeNumber(toNumeric(value));\n var dummy = this;\n // check on 1..constructor(foo) case\n return isPrototypeOf(NumberPrototype, dummy) && fails(function () { thisNumberValue(dummy); })\n ? inheritIfRequired(Object(n), dummy, NumberWrapper) : n;\n };\n for (var keys = DESCRIPTORS ? getOwnPropertyNames(NativeNumber) : (\n // ES3:\n 'MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,' +\n // ES2015 (in case, if modules with ES2015 Number statics required before):\n 'EPSILON,MAX_SAFE_INTEGER,MIN_SAFE_INTEGER,isFinite,isInteger,isNaN,isSafeInteger,parseFloat,parseInt,' +\n // ESNext\n 'fromString,range'\n ).split(','), j = 0, key; keys.length > j; j++) {\n if (hasOwn(NativeNumber, key = keys[j]) && !hasOwn(NumberWrapper, key)) {\n defineProperty(NumberWrapper, key, getOwnPropertyDescriptor(NativeNumber, key));\n }\n }\n NumberWrapper.prototype = NumberPrototype;\n NumberPrototype.constructor = NumberWrapper;\n defineBuiltIn(global, NUMBER, NumberWrapper, { constructor: true });\n}\n","var $ = require('../internals/export');\nvar assign = require('../internals/object-assign');\n\n// `Object.assign` method\n// https://tc39.es/ecma262/#sec-object.assign\n// eslint-disable-next-line es-x/no-object-assign -- required for testing\n$({ target: 'Object', stat: true, arity: 2, forced: Object.assign !== assign }, {\n assign: assign\n});\n","var $ = require('../internals/export');\nvar fails = require('../internals/fails');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar nativeGetOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar DESCRIPTORS = require('../internals/descriptors');\n\nvar FAILS_ON_PRIMITIVES = fails(function () { nativeGetOwnPropertyDescriptor(1); });\nvar FORCED = !DESCRIPTORS || FAILS_ON_PRIMITIVES;\n\n// `Object.getOwnPropertyDescriptor` method\n// https://tc39.es/ecma262/#sec-object.getownpropertydescriptor\n$({ target: 'Object', stat: true, forced: FORCED, sham: !DESCRIPTORS }, {\n getOwnPropertyDescriptor: function getOwnPropertyDescriptor(it, key) {\n return nativeGetOwnPropertyDescriptor(toIndexedObject(it), key);\n }\n});\n","var $ = require('../internals/export');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar ownKeys = require('../internals/own-keys');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar createProperty = require('../internals/create-property');\n\n// `Object.getOwnPropertyDescriptors` method\n// https://tc39.es/ecma262/#sec-object.getownpropertydescriptors\n$({ target: 'Object', stat: true, sham: !DESCRIPTORS }, {\n getOwnPropertyDescriptors: function getOwnPropertyDescriptors(object) {\n var O = toIndexedObject(object);\n var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;\n var keys = ownKeys(O);\n var result = {};\n var index = 0;\n var key, descriptor;\n while (keys.length > index) {\n descriptor = getOwnPropertyDescriptor(O, key = keys[index++]);\n if (descriptor !== undefined) createProperty(result, key, descriptor);\n }\n return result;\n }\n});\n","var $ = require('../internals/export');\nvar NATIVE_SYMBOL = require('../internals/native-symbol');\nvar fails = require('../internals/fails');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar toObject = require('../internals/to-object');\n\n// V8 ~ Chrome 38 and 39 `Object.getOwnPropertySymbols` fails on primitives\n// https://bugs.chromium.org/p/v8/issues/detail?id=3443\nvar FORCED = !NATIVE_SYMBOL || fails(function () { getOwnPropertySymbolsModule.f(1); });\n\n// `Object.getOwnPropertySymbols` method\n// https://tc39.es/ecma262/#sec-object.getownpropertysymbols\n$({ target: 'Object', stat: true, forced: FORCED }, {\n getOwnPropertySymbols: function getOwnPropertySymbols(it) {\n var $getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n return $getOwnPropertySymbols ? $getOwnPropertySymbols(toObject(it)) : [];\n }\n});\n","var $ = require('../internals/export');\nvar toObject = require('../internals/to-object');\nvar nativeKeys = require('../internals/object-keys');\nvar fails = require('../internals/fails');\n\nvar FAILS_ON_PRIMITIVES = fails(function () { nativeKeys(1); });\n\n// `Object.keys` method\n// https://tc39.es/ecma262/#sec-object.keys\n$({ target: 'Object', stat: true, forced: FAILS_ON_PRIMITIVES }, {\n keys: function keys(it) {\n return nativeKeys(toObject(it));\n }\n});\n","var TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar toString = require('../internals/object-to-string');\n\n// `Object.prototype.toString` method\n// https://tc39.es/ecma262/#sec-object.prototype.tostring\nif (!TO_STRING_TAG_SUPPORT) {\n defineBuiltIn(Object.prototype, 'toString', toString, { unsafe: true });\n}\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar perform = require('../internals/perform');\nvar iterate = require('../internals/iterate');\nvar PROMISE_STATICS_INCORRECT_ITERATION = require('../internals/promise-statics-incorrect-iteration');\n\n// `Promise.all` method\n// https://tc39.es/ecma262/#sec-promise.all\n$({ target: 'Promise', stat: true, forced: PROMISE_STATICS_INCORRECT_ITERATION }, {\n all: function all(iterable) {\n var C = this;\n var capability = newPromiseCapabilityModule.f(C);\n var resolve = capability.resolve;\n var reject = capability.reject;\n var result = perform(function () {\n var $promiseResolve = aCallable(C.resolve);\n var values = [];\n var counter = 0;\n var remaining = 1;\n iterate(iterable, function (promise) {\n var index = counter++;\n var alreadyCalled = false;\n remaining++;\n call($promiseResolve, C, promise).then(function (value) {\n if (alreadyCalled) return;\n alreadyCalled = true;\n values[index] = value;\n --remaining || resolve(values);\n }, reject);\n });\n --remaining || resolve(values);\n });\n if (result.error) reject(result.value);\n return capability.promise;\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar IS_PURE = require('../internals/is-pure');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar getBuiltIn = require('../internals/get-built-in');\nvar isCallable = require('../internals/is-callable');\nvar defineBuiltIn = require('../internals/define-built-in');\n\nvar NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;\n\n// `Promise.prototype.catch` method\n// https://tc39.es/ecma262/#sec-promise.prototype.catch\n$({ target: 'Promise', proto: true, forced: FORCED_PROMISE_CONSTRUCTOR, real: true }, {\n 'catch': function (onRejected) {\n return this.then(undefined, onRejected);\n }\n});\n\n// makes sure that native promise-based APIs `Promise#catch` properly works with patched `Promise#then`\nif (!IS_PURE && isCallable(NativePromiseConstructor)) {\n var method = getBuiltIn('Promise').prototype['catch'];\n if (NativePromisePrototype['catch'] !== method) {\n defineBuiltIn(NativePromisePrototype, 'catch', method, { unsafe: true });\n }\n}\n","'use strict';\nvar $ = require('../internals/export');\nvar IS_PURE = require('../internals/is-pure');\nvar IS_NODE = require('../internals/engine-is-node');\nvar global = require('../internals/global');\nvar call = require('../internals/function-call');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar setSpecies = require('../internals/set-species');\nvar aCallable = require('../internals/a-callable');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar anInstance = require('../internals/an-instance');\nvar speciesConstructor = require('../internals/species-constructor');\nvar task = require('../internals/task').set;\nvar microtask = require('../internals/microtask');\nvar hostReportErrors = require('../internals/host-report-errors');\nvar perform = require('../internals/perform');\nvar Queue = require('../internals/queue');\nvar InternalStateModule = require('../internals/internal-state');\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar PromiseConstructorDetection = require('../internals/promise-constructor-detection');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\n\nvar PROMISE = 'Promise';\nvar FORCED_PROMISE_CONSTRUCTOR = PromiseConstructorDetection.CONSTRUCTOR;\nvar NATIVE_PROMISE_REJECTION_EVENT = PromiseConstructorDetection.REJECTION_EVENT;\nvar NATIVE_PROMISE_SUBCLASSING = PromiseConstructorDetection.SUBCLASSING;\nvar getInternalPromiseState = InternalStateModule.getterFor(PROMISE);\nvar setInternalState = InternalStateModule.set;\nvar NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;\nvar PromiseConstructor = NativePromiseConstructor;\nvar PromisePrototype = NativePromisePrototype;\nvar TypeError = global.TypeError;\nvar document = global.document;\nvar process = global.process;\nvar newPromiseCapability = newPromiseCapabilityModule.f;\nvar newGenericPromiseCapability = newPromiseCapability;\n\nvar DISPATCH_EVENT = !!(document && document.createEvent && global.dispatchEvent);\nvar UNHANDLED_REJECTION = 'unhandledrejection';\nvar REJECTION_HANDLED = 'rejectionhandled';\nvar PENDING = 0;\nvar FULFILLED = 1;\nvar REJECTED = 2;\nvar HANDLED = 1;\nvar UNHANDLED = 2;\n\nvar Internal, OwnPromiseCapability, PromiseWrapper, nativeThen;\n\n// helpers\nvar isThenable = function (it) {\n var then;\n return isObject(it) && isCallable(then = it.then) ? then : false;\n};\n\nvar callReaction = function (reaction, state) {\n var value = state.value;\n var ok = state.state == FULFILLED;\n var handler = ok ? reaction.ok : reaction.fail;\n var resolve = reaction.resolve;\n var reject = reaction.reject;\n var domain = reaction.domain;\n var result, then, exited;\n try {\n if (handler) {\n if (!ok) {\n if (state.rejection === UNHANDLED) onHandleUnhandled(state);\n state.rejection = HANDLED;\n }\n if (handler === true) result = value;\n else {\n if (domain) domain.enter();\n result = handler(value); // can throw\n if (domain) {\n domain.exit();\n exited = true;\n }\n }\n if (result === reaction.promise) {\n reject(TypeError('Promise-chain cycle'));\n } else if (then = isThenable(result)) {\n call(then, result, resolve, reject);\n } else resolve(result);\n } else reject(value);\n } catch (error) {\n if (domain && !exited) domain.exit();\n reject(error);\n }\n};\n\nvar notify = function (state, isReject) {\n if (state.notified) return;\n state.notified = true;\n microtask(function () {\n var reactions = state.reactions;\n var reaction;\n while (reaction = reactions.get()) {\n callReaction(reaction, state);\n }\n state.notified = false;\n if (isReject && !state.rejection) onUnhandled(state);\n });\n};\n\nvar dispatchEvent = function (name, promise, reason) {\n var event, handler;\n if (DISPATCH_EVENT) {\n event = document.createEvent('Event');\n event.promise = promise;\n event.reason = reason;\n event.initEvent(name, false, true);\n global.dispatchEvent(event);\n } else event = { promise: promise, reason: reason };\n if (!NATIVE_PROMISE_REJECTION_EVENT && (handler = global['on' + name])) handler(event);\n else if (name === UNHANDLED_REJECTION) hostReportErrors('Unhandled promise rejection', reason);\n};\n\nvar onUnhandled = function (state) {\n call(task, global, function () {\n var promise = state.facade;\n var value = state.value;\n var IS_UNHANDLED = isUnhandled(state);\n var result;\n if (IS_UNHANDLED) {\n result = perform(function () {\n if (IS_NODE) {\n process.emit('unhandledRejection', value, promise);\n } else dispatchEvent(UNHANDLED_REJECTION, promise, value);\n });\n // Browsers should not trigger `rejectionHandled` event if it was handled here, NodeJS - should\n state.rejection = IS_NODE || isUnhandled(state) ? UNHANDLED : HANDLED;\n if (result.error) throw result.value;\n }\n });\n};\n\nvar isUnhandled = function (state) {\n return state.rejection !== HANDLED && !state.parent;\n};\n\nvar onHandleUnhandled = function (state) {\n call(task, global, function () {\n var promise = state.facade;\n if (IS_NODE) {\n process.emit('rejectionHandled', promise);\n } else dispatchEvent(REJECTION_HANDLED, promise, state.value);\n });\n};\n\nvar bind = function (fn, state, unwrap) {\n return function (value) {\n fn(state, value, unwrap);\n };\n};\n\nvar internalReject = function (state, value, unwrap) {\n if (state.done) return;\n state.done = true;\n if (unwrap) state = unwrap;\n state.value = value;\n state.state = REJECTED;\n notify(state, true);\n};\n\nvar internalResolve = function (state, value, unwrap) {\n if (state.done) return;\n state.done = true;\n if (unwrap) state = unwrap;\n try {\n if (state.facade === value) throw TypeError(\"Promise can't be resolved itself\");\n var then = isThenable(value);\n if (then) {\n microtask(function () {\n var wrapper = { done: false };\n try {\n call(then, value,\n bind(internalResolve, wrapper, state),\n bind(internalReject, wrapper, state)\n );\n } catch (error) {\n internalReject(wrapper, error, state);\n }\n });\n } else {\n state.value = value;\n state.state = FULFILLED;\n notify(state, false);\n }\n } catch (error) {\n internalReject({ done: false }, error, state);\n }\n};\n\n// constructor polyfill\nif (FORCED_PROMISE_CONSTRUCTOR) {\n // 25.4.3.1 Promise(executor)\n PromiseConstructor = function Promise(executor) {\n anInstance(this, PromisePrototype);\n aCallable(executor);\n call(Internal, this);\n var state = getInternalPromiseState(this);\n try {\n executor(bind(internalResolve, state), bind(internalReject, state));\n } catch (error) {\n internalReject(state, error);\n }\n };\n\n PromisePrototype = PromiseConstructor.prototype;\n\n // eslint-disable-next-line no-unused-vars -- required for `.length`\n Internal = function Promise(executor) {\n setInternalState(this, {\n type: PROMISE,\n done: false,\n notified: false,\n parent: false,\n reactions: new Queue(),\n rejection: false,\n state: PENDING,\n value: undefined\n });\n };\n\n // `Promise.prototype.then` method\n // https://tc39.es/ecma262/#sec-promise.prototype.then\n Internal.prototype = defineBuiltIn(PromisePrototype, 'then', function then(onFulfilled, onRejected) {\n var state = getInternalPromiseState(this);\n var reaction = newPromiseCapability(speciesConstructor(this, PromiseConstructor));\n state.parent = true;\n reaction.ok = isCallable(onFulfilled) ? onFulfilled : true;\n reaction.fail = isCallable(onRejected) && onRejected;\n reaction.domain = IS_NODE ? process.domain : undefined;\n if (state.state == PENDING) state.reactions.add(reaction);\n else microtask(function () {\n callReaction(reaction, state);\n });\n return reaction.promise;\n });\n\n OwnPromiseCapability = function () {\n var promise = new Internal();\n var state = getInternalPromiseState(promise);\n this.promise = promise;\n this.resolve = bind(internalResolve, state);\n this.reject = bind(internalReject, state);\n };\n\n newPromiseCapabilityModule.f = newPromiseCapability = function (C) {\n return C === PromiseConstructor || C === PromiseWrapper\n ? new OwnPromiseCapability(C)\n : newGenericPromiseCapability(C);\n };\n\n if (!IS_PURE && isCallable(NativePromiseConstructor) && NativePromisePrototype !== Object.prototype) {\n nativeThen = NativePromisePrototype.then;\n\n if (!NATIVE_PROMISE_SUBCLASSING) {\n // make `Promise#then` return a polyfilled `Promise` for native promise-based APIs\n defineBuiltIn(NativePromisePrototype, 'then', function then(onFulfilled, onRejected) {\n var that = this;\n return new PromiseConstructor(function (resolve, reject) {\n call(nativeThen, that, resolve, reject);\n }).then(onFulfilled, onRejected);\n // https://github.com/zloirock/core-js/issues/640\n }, { unsafe: true });\n }\n\n // make `.constructor === Promise` work for native promise-based APIs\n try {\n delete NativePromisePrototype.constructor;\n } catch (error) { /* empty */ }\n\n // make `instanceof Promise` work for native promise-based APIs\n if (setPrototypeOf) {\n setPrototypeOf(NativePromisePrototype, PromisePrototype);\n }\n }\n}\n\n$({ global: true, constructor: true, wrap: true, forced: FORCED_PROMISE_CONSTRUCTOR }, {\n Promise: PromiseConstructor\n});\n\nsetToStringTag(PromiseConstructor, PROMISE, false, true);\nsetSpecies(PROMISE);\n","'use strict';\nvar $ = require('../internals/export');\nvar IS_PURE = require('../internals/is-pure');\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar fails = require('../internals/fails');\nvar getBuiltIn = require('../internals/get-built-in');\nvar isCallable = require('../internals/is-callable');\nvar speciesConstructor = require('../internals/species-constructor');\nvar promiseResolve = require('../internals/promise-resolve');\nvar defineBuiltIn = require('../internals/define-built-in');\n\nvar NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;\n\n// Safari bug https://bugs.webkit.org/show_bug.cgi?id=200829\nvar NON_GENERIC = !!NativePromiseConstructor && fails(function () {\n // eslint-disable-next-line unicorn/no-thenable -- required for testing\n NativePromisePrototype['finally'].call({ then: function () { /* empty */ } }, function () { /* empty */ });\n});\n\n// `Promise.prototype.finally` method\n// https://tc39.es/ecma262/#sec-promise.prototype.finally\n$({ target: 'Promise', proto: true, real: true, forced: NON_GENERIC }, {\n 'finally': function (onFinally) {\n var C = speciesConstructor(this, getBuiltIn('Promise'));\n var isFunction = isCallable(onFinally);\n return this.then(\n isFunction ? function (x) {\n return promiseResolve(C, onFinally()).then(function () { return x; });\n } : onFinally,\n isFunction ? function (e) {\n return promiseResolve(C, onFinally()).then(function () { throw e; });\n } : onFinally\n );\n }\n});\n\n// makes sure that native promise-based APIs `Promise#finally` properly works with patched `Promise#then`\nif (!IS_PURE && isCallable(NativePromiseConstructor)) {\n var method = getBuiltIn('Promise').prototype['finally'];\n if (NativePromisePrototype['finally'] !== method) {\n defineBuiltIn(NativePromisePrototype, 'finally', method, { unsafe: true });\n }\n}\n","// TODO: Remove this module from `core-js@4` since it's split to modules listed below\nrequire('../modules/es.promise.constructor');\nrequire('../modules/es.promise.all');\nrequire('../modules/es.promise.catch');\nrequire('../modules/es.promise.race');\nrequire('../modules/es.promise.reject');\nrequire('../modules/es.promise.resolve');\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar perform = require('../internals/perform');\nvar iterate = require('../internals/iterate');\nvar PROMISE_STATICS_INCORRECT_ITERATION = require('../internals/promise-statics-incorrect-iteration');\n\n// `Promise.race` method\n// https://tc39.es/ecma262/#sec-promise.race\n$({ target: 'Promise', stat: true, forced: PROMISE_STATICS_INCORRECT_ITERATION }, {\n race: function race(iterable) {\n var C = this;\n var capability = newPromiseCapabilityModule.f(C);\n var reject = capability.reject;\n var result = perform(function () {\n var $promiseResolve = aCallable(C.resolve);\n iterate(iterable, function (promise) {\n call($promiseResolve, C, promise).then(capability.resolve, reject);\n });\n });\n if (result.error) reject(result.value);\n return capability.promise;\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\n\n// `Promise.reject` method\n// https://tc39.es/ecma262/#sec-promise.reject\n$({ target: 'Promise', stat: true, forced: FORCED_PROMISE_CONSTRUCTOR }, {\n reject: function reject(r) {\n var capability = newPromiseCapabilityModule.f(this);\n call(capability.reject, undefined, r);\n return capability.promise;\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar getBuiltIn = require('../internals/get-built-in');\nvar IS_PURE = require('../internals/is-pure');\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\nvar promiseResolve = require('../internals/promise-resolve');\n\nvar PromiseConstructorWrapper = getBuiltIn('Promise');\nvar CHECK_WRAPPER = IS_PURE && !FORCED_PROMISE_CONSTRUCTOR;\n\n// `Promise.resolve` method\n// https://tc39.es/ecma262/#sec-promise.resolve\n$({ target: 'Promise', stat: true, forced: IS_PURE || FORCED_PROMISE_CONSTRUCTOR }, {\n resolve: function resolve(x) {\n return promiseResolve(CHECK_WRAPPER && this === PromiseConstructorWrapper ? NativePromiseConstructor : this, x);\n }\n});\n","var $ = require('../internals/export');\nvar getBuiltIn = require('../internals/get-built-in');\nvar apply = require('../internals/function-apply');\nvar bind = require('../internals/function-bind');\nvar aConstructor = require('../internals/a-constructor');\nvar anObject = require('../internals/an-object');\nvar isObject = require('../internals/is-object');\nvar create = require('../internals/object-create');\nvar fails = require('../internals/fails');\n\nvar nativeConstruct = getBuiltIn('Reflect', 'construct');\nvar ObjectPrototype = Object.prototype;\nvar push = [].push;\n\n// `Reflect.construct` method\n// https://tc39.es/ecma262/#sec-reflect.construct\n// MS Edge supports only 2 arguments and argumentsList argument is optional\n// FF Nightly sets third argument as `new.target`, but does not create `this` from it\nvar NEW_TARGET_BUG = fails(function () {\n function F() { /* empty */ }\n return !(nativeConstruct(function () { /* empty */ }, [], F) instanceof F);\n});\n\nvar ARGS_BUG = !fails(function () {\n nativeConstruct(function () { /* empty */ });\n});\n\nvar FORCED = NEW_TARGET_BUG || ARGS_BUG;\n\n$({ target: 'Reflect', stat: true, forced: FORCED, sham: FORCED }, {\n construct: function construct(Target, args /* , newTarget */) {\n aConstructor(Target);\n anObject(args);\n var newTarget = arguments.length < 3 ? Target : aConstructor(arguments[2]);\n if (ARGS_BUG && !NEW_TARGET_BUG) return nativeConstruct(Target, args, newTarget);\n if (Target == newTarget) {\n // w/o altered newTarget, optimization for 0-4 arguments\n switch (args.length) {\n case 0: return new Target();\n case 1: return new Target(args[0]);\n case 2: return new Target(args[0], args[1]);\n case 3: return new Target(args[0], args[1], args[2]);\n case 4: return new Target(args[0], args[1], args[2], args[3]);\n }\n // w/o altered newTarget, lot of arguments case\n var $args = [null];\n apply(push, $args, args);\n return new (apply(bind, Target, $args))();\n }\n // with altered newTarget, not support built-in constructors\n var proto = newTarget.prototype;\n var instance = create(isObject(proto) ? proto : ObjectPrototype);\n var result = apply(Target, instance, args);\n return isObject(result) ? result : instance;\n }\n});\n","var DESCRIPTORS = require('../internals/descriptors');\nvar global = require('../internals/global');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar isForced = require('../internals/is-forced');\nvar inheritIfRequired = require('../internals/inherit-if-required');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar getOwnPropertyNames = require('../internals/object-get-own-property-names').f;\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar isRegExp = require('../internals/is-regexp');\nvar toString = require('../internals/to-string');\nvar getRegExpFlags = require('../internals/regexp-get-flags');\nvar stickyHelpers = require('../internals/regexp-sticky-helpers');\nvar proxyAccessor = require('../internals/proxy-accessor');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar fails = require('../internals/fails');\nvar hasOwn = require('../internals/has-own-property');\nvar enforceInternalState = require('../internals/internal-state').enforce;\nvar setSpecies = require('../internals/set-species');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar UNSUPPORTED_DOT_ALL = require('../internals/regexp-unsupported-dot-all');\nvar UNSUPPORTED_NCG = require('../internals/regexp-unsupported-ncg');\n\nvar MATCH = wellKnownSymbol('match');\nvar NativeRegExp = global.RegExp;\nvar RegExpPrototype = NativeRegExp.prototype;\nvar SyntaxError = global.SyntaxError;\nvar exec = uncurryThis(RegExpPrototype.exec);\nvar charAt = uncurryThis(''.charAt);\nvar replace = uncurryThis(''.replace);\nvar stringIndexOf = uncurryThis(''.indexOf);\nvar stringSlice = uncurryThis(''.slice);\n// TODO: Use only proper RegExpIdentifierName\nvar IS_NCG = /^\\?<[^\\s\\d!#%&*+<=>@^][^\\s!#%&*+<=>@^]*>/;\nvar re1 = /a/g;\nvar re2 = /a/g;\n\n// \"new\" should create a new object, old webkit bug\nvar CORRECT_NEW = new NativeRegExp(re1) !== re1;\n\nvar MISSED_STICKY = stickyHelpers.MISSED_STICKY;\nvar UNSUPPORTED_Y = stickyHelpers.UNSUPPORTED_Y;\n\nvar BASE_FORCED = DESCRIPTORS &&\n (!CORRECT_NEW || MISSED_STICKY || UNSUPPORTED_DOT_ALL || UNSUPPORTED_NCG || fails(function () {\n re2[MATCH] = false;\n // RegExp constructor can alter flags and IsRegExp works correct with @@match\n return NativeRegExp(re1) != re1 || NativeRegExp(re2) == re2 || NativeRegExp(re1, 'i') != '/a/i';\n }));\n\nvar handleDotAll = function (string) {\n var length = string.length;\n var index = 0;\n var result = '';\n var brackets = false;\n var chr;\n for (; index <= length; index++) {\n chr = charAt(string, index);\n if (chr === '\\\\') {\n result += chr + charAt(string, ++index);\n continue;\n }\n if (!brackets && chr === '.') {\n result += '[\\\\s\\\\S]';\n } else {\n if (chr === '[') {\n brackets = true;\n } else if (chr === ']') {\n brackets = false;\n } result += chr;\n }\n } return result;\n};\n\nvar handleNCG = function (string) {\n var length = string.length;\n var index = 0;\n var result = '';\n var named = [];\n var names = {};\n var brackets = false;\n var ncg = false;\n var groupid = 0;\n var groupname = '';\n var chr;\n for (; index <= length; index++) {\n chr = charAt(string, index);\n if (chr === '\\\\') {\n chr = chr + charAt(string, ++index);\n } else if (chr === ']') {\n brackets = false;\n } else if (!brackets) switch (true) {\n case chr === '[':\n brackets = true;\n break;\n case chr === '(':\n if (exec(IS_NCG, stringSlice(string, index + 1))) {\n index += 2;\n ncg = true;\n }\n result += chr;\n groupid++;\n continue;\n case chr === '>' && ncg:\n if (groupname === '' || hasOwn(names, groupname)) {\n throw new SyntaxError('Invalid capture group name');\n }\n names[groupname] = true;\n named[named.length] = [groupname, groupid];\n ncg = false;\n groupname = '';\n continue;\n }\n if (ncg) groupname += chr;\n else result += chr;\n } return [result, named];\n};\n\n// `RegExp` constructor\n// https://tc39.es/ecma262/#sec-regexp-constructor\nif (isForced('RegExp', BASE_FORCED)) {\n var RegExpWrapper = function RegExp(pattern, flags) {\n var thisIsRegExp = isPrototypeOf(RegExpPrototype, this);\n var patternIsRegExp = isRegExp(pattern);\n var flagsAreUndefined = flags === undefined;\n var groups = [];\n var rawPattern = pattern;\n var rawFlags, dotAll, sticky, handled, result, state;\n\n if (!thisIsRegExp && patternIsRegExp && flagsAreUndefined && pattern.constructor === RegExpWrapper) {\n return pattern;\n }\n\n if (patternIsRegExp || isPrototypeOf(RegExpPrototype, pattern)) {\n pattern = pattern.source;\n if (flagsAreUndefined) flags = getRegExpFlags(rawPattern);\n }\n\n pattern = pattern === undefined ? '' : toString(pattern);\n flags = flags === undefined ? '' : toString(flags);\n rawPattern = pattern;\n\n if (UNSUPPORTED_DOT_ALL && 'dotAll' in re1) {\n dotAll = !!flags && stringIndexOf(flags, 's') > -1;\n if (dotAll) flags = replace(flags, /s/g, '');\n }\n\n rawFlags = flags;\n\n if (MISSED_STICKY && 'sticky' in re1) {\n sticky = !!flags && stringIndexOf(flags, 'y') > -1;\n if (sticky && UNSUPPORTED_Y) flags = replace(flags, /y/g, '');\n }\n\n if (UNSUPPORTED_NCG) {\n handled = handleNCG(pattern);\n pattern = handled[0];\n groups = handled[1];\n }\n\n result = inheritIfRequired(NativeRegExp(pattern, flags), thisIsRegExp ? this : RegExpPrototype, RegExpWrapper);\n\n if (dotAll || sticky || groups.length) {\n state = enforceInternalState(result);\n if (dotAll) {\n state.dotAll = true;\n state.raw = RegExpWrapper(handleDotAll(pattern), rawFlags);\n }\n if (sticky) state.sticky = true;\n if (groups.length) state.groups = groups;\n }\n\n if (pattern !== rawPattern) try {\n // fails in old engines, but we have no alternatives for unsupported regex syntax\n createNonEnumerableProperty(result, 'source', rawPattern === '' ? '(?:)' : rawPattern);\n } catch (error) { /* empty */ }\n\n return result;\n };\n\n for (var keys = getOwnPropertyNames(NativeRegExp), index = 0; keys.length > index;) {\n proxyAccessor(RegExpWrapper, NativeRegExp, keys[index++]);\n }\n\n RegExpPrototype.constructor = RegExpWrapper;\n RegExpWrapper.prototype = RegExpPrototype;\n defineBuiltIn(global, 'RegExp', RegExpWrapper, { constructor: true });\n}\n\n// https://tc39.es/ecma262/#sec-get-regexp-@@species\nsetSpecies('RegExp');\n","'use strict';\nvar $ = require('../internals/export');\nvar exec = require('../internals/regexp-exec');\n\n// `RegExp.prototype.exec` method\n// https://tc39.es/ecma262/#sec-regexp.prototype.exec\n$({ target: 'RegExp', proto: true, forced: /./.exec !== exec }, {\n exec: exec\n});\n","'use strict';\nvar PROPER_FUNCTION_NAME = require('../internals/function-name').PROPER;\nvar defineBuiltIn = require('../internals/define-built-in');\nvar anObject = require('../internals/an-object');\nvar $toString = require('../internals/to-string');\nvar fails = require('../internals/fails');\nvar getRegExpFlags = require('../internals/regexp-get-flags');\n\nvar TO_STRING = 'toString';\nvar RegExpPrototype = RegExp.prototype;\nvar n$ToString = RegExpPrototype[TO_STRING];\n\nvar NOT_GENERIC = fails(function () { return n$ToString.call({ source: 'a', flags: 'b' }) != '/a/b'; });\n// FF44- RegExp#toString has a wrong name\nvar INCORRECT_NAME = PROPER_FUNCTION_NAME && n$ToString.name != TO_STRING;\n\n// `RegExp.prototype.toString` method\n// https://tc39.es/ecma262/#sec-regexp.prototype.tostring\nif (NOT_GENERIC || INCORRECT_NAME) {\n defineBuiltIn(RegExp.prototype, TO_STRING, function toString() {\n var R = anObject(this);\n var pattern = $toString(R.source);\n var flags = $toString(getRegExpFlags(R));\n return '/' + pattern + '/' + flags;\n }, { unsafe: true });\n}\n","'use strict';\nvar $ = require('../internals/export');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar notARegExp = require('../internals/not-a-regexp');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar toString = require('../internals/to-string');\nvar correctIsRegExpLogic = require('../internals/correct-is-regexp-logic');\n\nvar stringIndexOf = uncurryThis(''.indexOf);\n\n// `String.prototype.includes` method\n// https://tc39.es/ecma262/#sec-string.prototype.includes\n$({ target: 'String', proto: true, forced: !correctIsRegExpLogic('includes') }, {\n includes: function includes(searchString /* , position = 0 */) {\n return !!~stringIndexOf(\n toString(requireObjectCoercible(this)),\n toString(notARegExp(searchString)),\n arguments.length > 1 ? arguments[1] : undefined\n );\n }\n});\n","'use strict';\nvar charAt = require('../internals/string-multibyte').charAt;\nvar toString = require('../internals/to-string');\nvar InternalStateModule = require('../internals/internal-state');\nvar defineIterator = require('../internals/define-iterator');\n\nvar STRING_ITERATOR = 'String Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(STRING_ITERATOR);\n\n// `String.prototype[@@iterator]` method\n// https://tc39.es/ecma262/#sec-string.prototype-@@iterator\ndefineIterator(String, 'String', function (iterated) {\n setInternalState(this, {\n type: STRING_ITERATOR,\n string: toString(iterated),\n index: 0\n });\n// `%StringIteratorPrototype%.next` method\n// https://tc39.es/ecma262/#sec-%stringiteratorprototype%.next\n}, function next() {\n var state = getInternalState(this);\n var string = state.string;\n var index = state.index;\n var point;\n if (index >= string.length) return { value: undefined, done: true };\n point = charAt(string, index);\n state.index += point.length;\n return { value: point, done: false };\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar createHTML = require('../internals/create-html');\nvar forcedStringHTMLMethod = require('../internals/string-html-forced');\n\n// `String.prototype.link` method\n// https://tc39.es/ecma262/#sec-string.prototype.link\n$({ target: 'String', proto: true, forced: forcedStringHTMLMethod('link') }, {\n link: function link(url) {\n return createHTML(this, 'a', 'href', url);\n }\n});\n","'use strict';\nvar call = require('../internals/function-call');\nvar fixRegExpWellKnownSymbolLogic = require('../internals/fix-regexp-well-known-symbol-logic');\nvar anObject = require('../internals/an-object');\nvar toLength = require('../internals/to-length');\nvar toString = require('../internals/to-string');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar getMethod = require('../internals/get-method');\nvar advanceStringIndex = require('../internals/advance-string-index');\nvar regExpExec = require('../internals/regexp-exec-abstract');\n\n// @@match logic\nfixRegExpWellKnownSymbolLogic('match', function (MATCH, nativeMatch, maybeCallNative) {\n return [\n // `String.prototype.match` method\n // https://tc39.es/ecma262/#sec-string.prototype.match\n function match(regexp) {\n var O = requireObjectCoercible(this);\n var matcher = regexp == undefined ? undefined : getMethod(regexp, MATCH);\n return matcher ? call(matcher, regexp, O) : new RegExp(regexp)[MATCH](toString(O));\n },\n // `RegExp.prototype[@@match]` method\n // https://tc39.es/ecma262/#sec-regexp.prototype-@@match\n function (string) {\n var rx = anObject(this);\n var S = toString(string);\n var res = maybeCallNative(nativeMatch, rx, S);\n\n if (res.done) return res.value;\n\n if (!rx.global) return regExpExec(rx, S);\n\n var fullUnicode = rx.unicode;\n rx.lastIndex = 0;\n var A = [];\n var n = 0;\n var result;\n while ((result = regExpExec(rx, S)) !== null) {\n var matchStr = toString(result[0]);\n A[n] = matchStr;\n if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);\n n++;\n }\n return n === 0 ? null : A;\n }\n ];\n});\n","'use strict';\nvar apply = require('../internals/function-apply');\nvar call = require('../internals/function-call');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fixRegExpWellKnownSymbolLogic = require('../internals/fix-regexp-well-known-symbol-logic');\nvar fails = require('../internals/fails');\nvar anObject = require('../internals/an-object');\nvar isCallable = require('../internals/is-callable');\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\nvar toLength = require('../internals/to-length');\nvar toString = require('../internals/to-string');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar advanceStringIndex = require('../internals/advance-string-index');\nvar getMethod = require('../internals/get-method');\nvar getSubstitution = require('../internals/get-substitution');\nvar regExpExec = require('../internals/regexp-exec-abstract');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar REPLACE = wellKnownSymbol('replace');\nvar max = Math.max;\nvar min = Math.min;\nvar concat = uncurryThis([].concat);\nvar push = uncurryThis([].push);\nvar stringIndexOf = uncurryThis(''.indexOf);\nvar stringSlice = uncurryThis(''.slice);\n\nvar maybeToString = function (it) {\n return it === undefined ? it : String(it);\n};\n\n// IE <= 11 replaces $0 with the whole match, as if it was $&\n// https://stackoverflow.com/questions/6024666/getting-ie-to-replace-a-regex-with-the-literal-string-0\nvar REPLACE_KEEPS_$0 = (function () {\n // eslint-disable-next-line regexp/prefer-escape-replacement-dollar-char -- required for testing\n return 'a'.replace(/./, '$0') === '$0';\n})();\n\n// Safari <= 13.0.3(?) substitutes nth capture where n>m with an empty string\nvar REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE = (function () {\n if (/./[REPLACE]) {\n return /./[REPLACE]('a', '$0') === '';\n }\n return false;\n})();\n\nvar REPLACE_SUPPORTS_NAMED_GROUPS = !fails(function () {\n var re = /./;\n re.exec = function () {\n var result = [];\n result.groups = { a: '7' };\n return result;\n };\n // eslint-disable-next-line regexp/no-useless-dollar-replacements -- false positive\n return ''.replace(re, '$') !== '7';\n});\n\n// @@replace logic\nfixRegExpWellKnownSymbolLogic('replace', function (_, nativeReplace, maybeCallNative) {\n var UNSAFE_SUBSTITUTE = REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE ? '$' : '$0';\n\n return [\n // `String.prototype.replace` method\n // https://tc39.es/ecma262/#sec-string.prototype.replace\n function replace(searchValue, replaceValue) {\n var O = requireObjectCoercible(this);\n var replacer = searchValue == undefined ? undefined : getMethod(searchValue, REPLACE);\n return replacer\n ? call(replacer, searchValue, O, replaceValue)\n : call(nativeReplace, toString(O), searchValue, replaceValue);\n },\n // `RegExp.prototype[@@replace]` method\n // https://tc39.es/ecma262/#sec-regexp.prototype-@@replace\n function (string, replaceValue) {\n var rx = anObject(this);\n var S = toString(string);\n\n if (\n typeof replaceValue == 'string' &&\n stringIndexOf(replaceValue, UNSAFE_SUBSTITUTE) === -1 &&\n stringIndexOf(replaceValue, '$<') === -1\n ) {\n var res = maybeCallNative(nativeReplace, rx, S, replaceValue);\n if (res.done) return res.value;\n }\n\n var functionalReplace = isCallable(replaceValue);\n if (!functionalReplace) replaceValue = toString(replaceValue);\n\n var global = rx.global;\n if (global) {\n var fullUnicode = rx.unicode;\n rx.lastIndex = 0;\n }\n var results = [];\n while (true) {\n var result = regExpExec(rx, S);\n if (result === null) break;\n\n push(results, result);\n if (!global) break;\n\n var matchStr = toString(result[0]);\n if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);\n }\n\n var accumulatedResult = '';\n var nextSourcePosition = 0;\n for (var i = 0; i < results.length; i++) {\n result = results[i];\n\n var matched = toString(result[0]);\n var position = max(min(toIntegerOrInfinity(result.index), S.length), 0);\n var captures = [];\n // NOTE: This is equivalent to\n // captures = result.slice(1).map(maybeToString)\n // but for some reason `nativeSlice.call(result, 1, result.length)` (called in\n // the slice polyfill when slicing native arrays) \"doesn't work\" in safari 9 and\n // causes a crash (https://pastebin.com/N21QzeQA) when trying to debug it.\n for (var j = 1; j < result.length; j++) push(captures, maybeToString(result[j]));\n var namedCaptures = result.groups;\n if (functionalReplace) {\n var replacerArgs = concat([matched], captures, position, S);\n if (namedCaptures !== undefined) push(replacerArgs, namedCaptures);\n var replacement = toString(apply(replaceValue, undefined, replacerArgs));\n } else {\n replacement = getSubstitution(matched, S, position, captures, namedCaptures, replaceValue);\n }\n if (position >= nextSourcePosition) {\n accumulatedResult += stringSlice(S, nextSourcePosition, position) + replacement;\n nextSourcePosition = position + matched.length;\n }\n }\n return accumulatedResult + stringSlice(S, nextSourcePosition);\n }\n ];\n}, !REPLACE_SUPPORTS_NAMED_GROUPS || !REPLACE_KEEPS_$0 || REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE);\n","'use strict';\nvar call = require('../internals/function-call');\nvar fixRegExpWellKnownSymbolLogic = require('../internals/fix-regexp-well-known-symbol-logic');\nvar anObject = require('../internals/an-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar sameValue = require('../internals/same-value');\nvar toString = require('../internals/to-string');\nvar getMethod = require('../internals/get-method');\nvar regExpExec = require('../internals/regexp-exec-abstract');\n\n// @@search logic\nfixRegExpWellKnownSymbolLogic('search', function (SEARCH, nativeSearch, maybeCallNative) {\n return [\n // `String.prototype.search` method\n // https://tc39.es/ecma262/#sec-string.prototype.search\n function search(regexp) {\n var O = requireObjectCoercible(this);\n var searcher = regexp == undefined ? undefined : getMethod(regexp, SEARCH);\n return searcher ? call(searcher, regexp, O) : new RegExp(regexp)[SEARCH](toString(O));\n },\n // `RegExp.prototype[@@search]` method\n // https://tc39.es/ecma262/#sec-regexp.prototype-@@search\n function (string) {\n var rx = anObject(this);\n var S = toString(string);\n var res = maybeCallNative(nativeSearch, rx, S);\n\n if (res.done) return res.value;\n\n var previousLastIndex = rx.lastIndex;\n if (!sameValue(previousLastIndex, 0)) rx.lastIndex = 0;\n var result = regExpExec(rx, S);\n if (!sameValue(rx.lastIndex, previousLastIndex)) rx.lastIndex = previousLastIndex;\n return result === null ? -1 : result.index;\n }\n ];\n});\n","'use strict';\nvar apply = require('../internals/function-apply');\nvar call = require('../internals/function-call');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fixRegExpWellKnownSymbolLogic = require('../internals/fix-regexp-well-known-symbol-logic');\nvar isRegExp = require('../internals/is-regexp');\nvar anObject = require('../internals/an-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar speciesConstructor = require('../internals/species-constructor');\nvar advanceStringIndex = require('../internals/advance-string-index');\nvar toLength = require('../internals/to-length');\nvar toString = require('../internals/to-string');\nvar getMethod = require('../internals/get-method');\nvar arraySlice = require('../internals/array-slice-simple');\nvar callRegExpExec = require('../internals/regexp-exec-abstract');\nvar regexpExec = require('../internals/regexp-exec');\nvar stickyHelpers = require('../internals/regexp-sticky-helpers');\nvar fails = require('../internals/fails');\n\nvar UNSUPPORTED_Y = stickyHelpers.UNSUPPORTED_Y;\nvar MAX_UINT32 = 0xFFFFFFFF;\nvar min = Math.min;\nvar $push = [].push;\nvar exec = uncurryThis(/./.exec);\nvar push = uncurryThis($push);\nvar stringSlice = uncurryThis(''.slice);\n\n// Chrome 51 has a buggy \"split\" implementation when RegExp#exec !== nativeExec\n// Weex JS has frozen built-in prototypes, so use try / catch wrapper\nvar SPLIT_WORKS_WITH_OVERWRITTEN_EXEC = !fails(function () {\n // eslint-disable-next-line regexp/no-empty-group -- required for testing\n var re = /(?:)/;\n var originalExec = re.exec;\n re.exec = function () { return originalExec.apply(this, arguments); };\n var result = 'ab'.split(re);\n return result.length !== 2 || result[0] !== 'a' || result[1] !== 'b';\n});\n\n// @@split logic\nfixRegExpWellKnownSymbolLogic('split', function (SPLIT, nativeSplit, maybeCallNative) {\n var internalSplit;\n if (\n 'abbc'.split(/(b)*/)[1] == 'c' ||\n // eslint-disable-next-line regexp/no-empty-group -- required for testing\n 'test'.split(/(?:)/, -1).length != 4 ||\n 'ab'.split(/(?:ab)*/).length != 2 ||\n '.'.split(/(.?)(.?)/).length != 4 ||\n // eslint-disable-next-line regexp/no-empty-capturing-group, regexp/no-empty-group -- required for testing\n '.'.split(/()()/).length > 1 ||\n ''.split(/.?/).length\n ) {\n // based on es5-shim implementation, need to rework it\n internalSplit = function (separator, limit) {\n var string = toString(requireObjectCoercible(this));\n var lim = limit === undefined ? MAX_UINT32 : limit >>> 0;\n if (lim === 0) return [];\n if (separator === undefined) return [string];\n // If `separator` is not a regex, use native split\n if (!isRegExp(separator)) {\n return call(nativeSplit, string, separator, lim);\n }\n var output = [];\n var flags = (separator.ignoreCase ? 'i' : '') +\n (separator.multiline ? 'm' : '') +\n (separator.unicode ? 'u' : '') +\n (separator.sticky ? 'y' : '');\n var lastLastIndex = 0;\n // Make `global` and avoid `lastIndex` issues by working with a copy\n var separatorCopy = new RegExp(separator.source, flags + 'g');\n var match, lastIndex, lastLength;\n while (match = call(regexpExec, separatorCopy, string)) {\n lastIndex = separatorCopy.lastIndex;\n if (lastIndex > lastLastIndex) {\n push(output, stringSlice(string, lastLastIndex, match.index));\n if (match.length > 1 && match.index < string.length) apply($push, output, arraySlice(match, 1));\n lastLength = match[0].length;\n lastLastIndex = lastIndex;\n if (output.length >= lim) break;\n }\n if (separatorCopy.lastIndex === match.index) separatorCopy.lastIndex++; // Avoid an infinite loop\n }\n if (lastLastIndex === string.length) {\n if (lastLength || !exec(separatorCopy, '')) push(output, '');\n } else push(output, stringSlice(string, lastLastIndex));\n return output.length > lim ? arraySlice(output, 0, lim) : output;\n };\n // Chakra, V8\n } else if ('0'.split(undefined, 0).length) {\n internalSplit = function (separator, limit) {\n return separator === undefined && limit === 0 ? [] : call(nativeSplit, this, separator, limit);\n };\n } else internalSplit = nativeSplit;\n\n return [\n // `String.prototype.split` method\n // https://tc39.es/ecma262/#sec-string.prototype.split\n function split(separator, limit) {\n var O = requireObjectCoercible(this);\n var splitter = separator == undefined ? undefined : getMethod(separator, SPLIT);\n return splitter\n ? call(splitter, separator, O, limit)\n : call(internalSplit, toString(O), separator, limit);\n },\n // `RegExp.prototype[@@split]` method\n // https://tc39.es/ecma262/#sec-regexp.prototype-@@split\n //\n // NOTE: This cannot be properly polyfilled in engines that don't support\n // the 'y' flag.\n function (string, limit) {\n var rx = anObject(this);\n var S = toString(string);\n var res = maybeCallNative(internalSplit, rx, S, limit, internalSplit !== nativeSplit);\n\n if (res.done) return res.value;\n\n var C = speciesConstructor(rx, RegExp);\n\n var unicodeMatching = rx.unicode;\n var flags = (rx.ignoreCase ? 'i' : '') +\n (rx.multiline ? 'm' : '') +\n (rx.unicode ? 'u' : '') +\n (UNSUPPORTED_Y ? 'g' : 'y');\n\n // ^(? + rx + ) is needed, in combination with some S slicing, to\n // simulate the 'y' flag.\n var splitter = new C(UNSUPPORTED_Y ? '^(?:' + rx.source + ')' : rx, flags);\n var lim = limit === undefined ? MAX_UINT32 : limit >>> 0;\n if (lim === 0) return [];\n if (S.length === 0) return callRegExpExec(splitter, S) === null ? [S] : [];\n var p = 0;\n var q = 0;\n var A = [];\n while (q < S.length) {\n splitter.lastIndex = UNSUPPORTED_Y ? 0 : q;\n var z = callRegExpExec(splitter, UNSUPPORTED_Y ? stringSlice(S, q) : S);\n var e;\n if (\n z === null ||\n (e = min(toLength(splitter.lastIndex + (UNSUPPORTED_Y ? q : 0)), S.length)) === p\n ) {\n q = advanceStringIndex(S, q, unicodeMatching);\n } else {\n push(A, stringSlice(S, p, q));\n if (A.length === lim) return A;\n for (var i = 1; i <= z.length - 1; i++) {\n push(A, z[i]);\n if (A.length === lim) return A;\n }\n q = p = e;\n }\n }\n push(A, stringSlice(S, p));\n return A;\n }\n ];\n}, !SPLIT_WORKS_WITH_OVERWRITTEN_EXEC, UNSUPPORTED_Y);\n","'use strict';\nvar $ = require('../internals/export');\nvar $trim = require('../internals/string-trim').trim;\nvar forcedStringTrimMethod = require('../internals/string-trim-forced');\n\n// `String.prototype.trim` method\n// https://tc39.es/ecma262/#sec-string.prototype.trim\n$({ target: 'String', proto: true, forced: forcedStringTrimMethod('trim') }, {\n trim: function trim() {\n return $trim(this);\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar global = require('../internals/global');\nvar call = require('../internals/function-call');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar IS_PURE = require('../internals/is-pure');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar NATIVE_SYMBOL = require('../internals/native-symbol');\nvar fails = require('../internals/fails');\nvar hasOwn = require('../internals/has-own-property');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar anObject = require('../internals/an-object');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toPropertyKey = require('../internals/to-property-key');\nvar $toString = require('../internals/to-string');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar nativeObjectCreate = require('../internals/object-create');\nvar objectKeys = require('../internals/object-keys');\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertyNamesExternal = require('../internals/object-get-own-property-names-external');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar definePropertyModule = require('../internals/object-define-property');\nvar definePropertiesModule = require('../internals/object-define-properties');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar shared = require('../internals/shared');\nvar sharedKey = require('../internals/shared-key');\nvar hiddenKeys = require('../internals/hidden-keys');\nvar uid = require('../internals/uid');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar wrappedWellKnownSymbolModule = require('../internals/well-known-symbol-wrapped');\nvar defineWellKnownSymbol = require('../internals/define-well-known-symbol');\nvar defineSymbolToPrimitive = require('../internals/symbol-define-to-primitive');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar InternalStateModule = require('../internals/internal-state');\nvar $forEach = require('../internals/array-iteration').forEach;\n\nvar HIDDEN = sharedKey('hidden');\nvar SYMBOL = 'Symbol';\nvar PROTOTYPE = 'prototype';\n\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(SYMBOL);\n\nvar ObjectPrototype = Object[PROTOTYPE];\nvar $Symbol = global.Symbol;\nvar SymbolPrototype = $Symbol && $Symbol[PROTOTYPE];\nvar TypeError = global.TypeError;\nvar QObject = global.QObject;\nvar nativeGetOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;\nvar nativeDefineProperty = definePropertyModule.f;\nvar nativeGetOwnPropertyNames = getOwnPropertyNamesExternal.f;\nvar nativePropertyIsEnumerable = propertyIsEnumerableModule.f;\nvar push = uncurryThis([].push);\n\nvar AllSymbols = shared('symbols');\nvar ObjectPrototypeSymbols = shared('op-symbols');\nvar WellKnownSymbolsStore = shared('wks');\n\n// Don't use setters in Qt Script, https://github.com/zloirock/core-js/issues/173\nvar USE_SETTER = !QObject || !QObject[PROTOTYPE] || !QObject[PROTOTYPE].findChild;\n\n// fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687\nvar setSymbolDescriptor = DESCRIPTORS && fails(function () {\n return nativeObjectCreate(nativeDefineProperty({}, 'a', {\n get: function () { return nativeDefineProperty(this, 'a', { value: 7 }).a; }\n })).a != 7;\n}) ? function (O, P, Attributes) {\n var ObjectPrototypeDescriptor = nativeGetOwnPropertyDescriptor(ObjectPrototype, P);\n if (ObjectPrototypeDescriptor) delete ObjectPrototype[P];\n nativeDefineProperty(O, P, Attributes);\n if (ObjectPrototypeDescriptor && O !== ObjectPrototype) {\n nativeDefineProperty(ObjectPrototype, P, ObjectPrototypeDescriptor);\n }\n} : nativeDefineProperty;\n\nvar wrap = function (tag, description) {\n var symbol = AllSymbols[tag] = nativeObjectCreate(SymbolPrototype);\n setInternalState(symbol, {\n type: SYMBOL,\n tag: tag,\n description: description\n });\n if (!DESCRIPTORS) symbol.description = description;\n return symbol;\n};\n\nvar $defineProperty = function defineProperty(O, P, Attributes) {\n if (O === ObjectPrototype) $defineProperty(ObjectPrototypeSymbols, P, Attributes);\n anObject(O);\n var key = toPropertyKey(P);\n anObject(Attributes);\n if (hasOwn(AllSymbols, key)) {\n if (!Attributes.enumerable) {\n if (!hasOwn(O, HIDDEN)) nativeDefineProperty(O, HIDDEN, createPropertyDescriptor(1, {}));\n O[HIDDEN][key] = true;\n } else {\n if (hasOwn(O, HIDDEN) && O[HIDDEN][key]) O[HIDDEN][key] = false;\n Attributes = nativeObjectCreate(Attributes, { enumerable: createPropertyDescriptor(0, false) });\n } return setSymbolDescriptor(O, key, Attributes);\n } return nativeDefineProperty(O, key, Attributes);\n};\n\nvar $defineProperties = function defineProperties(O, Properties) {\n anObject(O);\n var properties = toIndexedObject(Properties);\n var keys = objectKeys(properties).concat($getOwnPropertySymbols(properties));\n $forEach(keys, function (key) {\n if (!DESCRIPTORS || call($propertyIsEnumerable, properties, key)) $defineProperty(O, key, properties[key]);\n });\n return O;\n};\n\nvar $create = function create(O, Properties) {\n return Properties === undefined ? nativeObjectCreate(O) : $defineProperties(nativeObjectCreate(O), Properties);\n};\n\nvar $propertyIsEnumerable = function propertyIsEnumerable(V) {\n var P = toPropertyKey(V);\n var enumerable = call(nativePropertyIsEnumerable, this, P);\n if (this === ObjectPrototype && hasOwn(AllSymbols, P) && !hasOwn(ObjectPrototypeSymbols, P)) return false;\n return enumerable || !hasOwn(this, P) || !hasOwn(AllSymbols, P) || hasOwn(this, HIDDEN) && this[HIDDEN][P]\n ? enumerable : true;\n};\n\nvar $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(O, P) {\n var it = toIndexedObject(O);\n var key = toPropertyKey(P);\n if (it === ObjectPrototype && hasOwn(AllSymbols, key) && !hasOwn(ObjectPrototypeSymbols, key)) return;\n var descriptor = nativeGetOwnPropertyDescriptor(it, key);\n if (descriptor && hasOwn(AllSymbols, key) && !(hasOwn(it, HIDDEN) && it[HIDDEN][key])) {\n descriptor.enumerable = true;\n }\n return descriptor;\n};\n\nvar $getOwnPropertyNames = function getOwnPropertyNames(O) {\n var names = nativeGetOwnPropertyNames(toIndexedObject(O));\n var result = [];\n $forEach(names, function (key) {\n if (!hasOwn(AllSymbols, key) && !hasOwn(hiddenKeys, key)) push(result, key);\n });\n return result;\n};\n\nvar $getOwnPropertySymbols = function (O) {\n var IS_OBJECT_PROTOTYPE = O === ObjectPrototype;\n var names = nativeGetOwnPropertyNames(IS_OBJECT_PROTOTYPE ? ObjectPrototypeSymbols : toIndexedObject(O));\n var result = [];\n $forEach(names, function (key) {\n if (hasOwn(AllSymbols, key) && (!IS_OBJECT_PROTOTYPE || hasOwn(ObjectPrototype, key))) {\n push(result, AllSymbols[key]);\n }\n });\n return result;\n};\n\n// `Symbol` constructor\n// https://tc39.es/ecma262/#sec-symbol-constructor\nif (!NATIVE_SYMBOL) {\n $Symbol = function Symbol() {\n if (isPrototypeOf(SymbolPrototype, this)) throw TypeError('Symbol is not a constructor');\n var description = !arguments.length || arguments[0] === undefined ? undefined : $toString(arguments[0]);\n var tag = uid(description);\n var setter = function (value) {\n if (this === ObjectPrototype) call(setter, ObjectPrototypeSymbols, value);\n if (hasOwn(this, HIDDEN) && hasOwn(this[HIDDEN], tag)) this[HIDDEN][tag] = false;\n setSymbolDescriptor(this, tag, createPropertyDescriptor(1, value));\n };\n if (DESCRIPTORS && USE_SETTER) setSymbolDescriptor(ObjectPrototype, tag, { configurable: true, set: setter });\n return wrap(tag, description);\n };\n\n SymbolPrototype = $Symbol[PROTOTYPE];\n\n defineBuiltIn(SymbolPrototype, 'toString', function toString() {\n return getInternalState(this).tag;\n });\n\n defineBuiltIn($Symbol, 'withoutSetter', function (description) {\n return wrap(uid(description), description);\n });\n\n propertyIsEnumerableModule.f = $propertyIsEnumerable;\n definePropertyModule.f = $defineProperty;\n definePropertiesModule.f = $defineProperties;\n getOwnPropertyDescriptorModule.f = $getOwnPropertyDescriptor;\n getOwnPropertyNamesModule.f = getOwnPropertyNamesExternal.f = $getOwnPropertyNames;\n getOwnPropertySymbolsModule.f = $getOwnPropertySymbols;\n\n wrappedWellKnownSymbolModule.f = function (name) {\n return wrap(wellKnownSymbol(name), name);\n };\n\n if (DESCRIPTORS) {\n // https://github.com/tc39/proposal-Symbol-description\n nativeDefineProperty(SymbolPrototype, 'description', {\n configurable: true,\n get: function description() {\n return getInternalState(this).description;\n }\n });\n if (!IS_PURE) {\n defineBuiltIn(ObjectPrototype, 'propertyIsEnumerable', $propertyIsEnumerable, { unsafe: true });\n }\n }\n}\n\n$({ global: true, constructor: true, wrap: true, forced: !NATIVE_SYMBOL, sham: !NATIVE_SYMBOL }, {\n Symbol: $Symbol\n});\n\n$forEach(objectKeys(WellKnownSymbolsStore), function (name) {\n defineWellKnownSymbol(name);\n});\n\n$({ target: SYMBOL, stat: true, forced: !NATIVE_SYMBOL }, {\n useSetter: function () { USE_SETTER = true; },\n useSimple: function () { USE_SETTER = false; }\n});\n\n$({ target: 'Object', stat: true, forced: !NATIVE_SYMBOL, sham: !DESCRIPTORS }, {\n // `Object.create` method\n // https://tc39.es/ecma262/#sec-object.create\n create: $create,\n // `Object.defineProperty` method\n // https://tc39.es/ecma262/#sec-object.defineproperty\n defineProperty: $defineProperty,\n // `Object.defineProperties` method\n // https://tc39.es/ecma262/#sec-object.defineproperties\n defineProperties: $defineProperties,\n // `Object.getOwnPropertyDescriptor` method\n // https://tc39.es/ecma262/#sec-object.getownpropertydescriptors\n getOwnPropertyDescriptor: $getOwnPropertyDescriptor\n});\n\n$({ target: 'Object', stat: true, forced: !NATIVE_SYMBOL }, {\n // `Object.getOwnPropertyNames` method\n // https://tc39.es/ecma262/#sec-object.getownpropertynames\n getOwnPropertyNames: $getOwnPropertyNames\n});\n\n// `Symbol.prototype[@@toPrimitive]` method\n// https://tc39.es/ecma262/#sec-symbol.prototype-@@toprimitive\ndefineSymbolToPrimitive();\n\n// `Symbol.prototype[@@toStringTag]` property\n// https://tc39.es/ecma262/#sec-symbol.prototype-@@tostringtag\nsetToStringTag($Symbol, SYMBOL);\n\nhiddenKeys[HIDDEN] = true;\n","var $ = require('../internals/export');\nvar getBuiltIn = require('../internals/get-built-in');\nvar hasOwn = require('../internals/has-own-property');\nvar toString = require('../internals/to-string');\nvar shared = require('../internals/shared');\nvar NATIVE_SYMBOL_REGISTRY = require('../internals/native-symbol-registry');\n\nvar StringToSymbolRegistry = shared('string-to-symbol-registry');\nvar SymbolToStringRegistry = shared('symbol-to-string-registry');\n\n// `Symbol.for` method\n// https://tc39.es/ecma262/#sec-symbol.for\n$({ target: 'Symbol', stat: true, forced: !NATIVE_SYMBOL_REGISTRY }, {\n 'for': function (key) {\n var string = toString(key);\n if (hasOwn(StringToSymbolRegistry, string)) return StringToSymbolRegistry[string];\n var symbol = getBuiltIn('Symbol')(string);\n StringToSymbolRegistry[string] = symbol;\n SymbolToStringRegistry[symbol] = string;\n return symbol;\n }\n});\n","// TODO: Remove this module from `core-js@4` since it's split to modules listed below\nrequire('../modules/es.symbol.constructor');\nrequire('../modules/es.symbol.for');\nrequire('../modules/es.symbol.key-for');\nrequire('../modules/es.json.stringify');\nrequire('../modules/es.object.get-own-property-symbols');\n","var $ = require('../internals/export');\nvar hasOwn = require('../internals/has-own-property');\nvar isSymbol = require('../internals/is-symbol');\nvar tryToString = require('../internals/try-to-string');\nvar shared = require('../internals/shared');\nvar NATIVE_SYMBOL_REGISTRY = require('../internals/native-symbol-registry');\n\nvar SymbolToStringRegistry = shared('symbol-to-string-registry');\n\n// `Symbol.keyFor` method\n// https://tc39.es/ecma262/#sec-symbol.keyfor\n$({ target: 'Symbol', stat: true, forced: !NATIVE_SYMBOL_REGISTRY }, {\n keyFor: function keyFor(sym) {\n if (!isSymbol(sym)) throw TypeError(tryToString(sym) + ' is not a symbol');\n if (hasOwn(SymbolToStringRegistry, sym)) return SymbolToStringRegistry[sym];\n }\n});\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\nvar $ArrayCopyWithin = require('../internals/array-copy-within');\n\nvar u$ArrayCopyWithin = uncurryThis($ArrayCopyWithin);\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\n\n// `%TypedArray%.prototype.copyWithin` method\n// https://tc39.es/ecma262/#sec-%typedarray%.prototype.copywithin\nexportTypedArrayMethod('copyWithin', function copyWithin(target, start /* , end */) {\n return u$ArrayCopyWithin(aTypedArray(this), target, start, arguments.length > 2 ? arguments[2] : undefined);\n});\n","'use strict';\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\nvar $every = require('../internals/array-iteration').every;\n\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\n\n// `%TypedArray%.prototype.every` method\n// https://tc39.es/ecma262/#sec-%typedarray%.prototype.every\nexportTypedArrayMethod('every', function every(callbackfn /* , thisArg */) {\n return $every(aTypedArray(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n});\n","'use strict';\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\nvar $fill = require('../internals/array-fill');\nvar toBigInt = require('../internals/to-big-int');\nvar classof = require('../internals/classof');\nvar call = require('../internals/function-call');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\n\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\nvar slice = uncurryThis(''.slice);\n\n// V8 ~ Chrome < 59, Safari < 14.1, FF < 55, Edge <=18\nvar CONVERSION_BUG = fails(function () {\n var count = 0;\n // eslint-disable-next-line es-x/no-typed-arrays -- safe\n new Int8Array(2).fill({ valueOf: function () { return count++; } });\n return count !== 1;\n});\n\n// `%TypedArray%.prototype.fill` method\n// https://tc39.es/ecma262/#sec-%typedarray%.prototype.fill\nexportTypedArrayMethod('fill', function fill(value /* , start, end */) {\n var length = arguments.length;\n aTypedArray(this);\n var actualValue = slice(classof(this), 0, 3) === 'Big' ? toBigInt(value) : +value;\n return call($fill, this, actualValue, length > 1 ? arguments[1] : undefined, length > 2 ? arguments[2] : undefined);\n}, CONVERSION_BUG);\n","'use strict';\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\nvar $filter = require('../internals/array-iteration').filter;\nvar fromSpeciesAndList = require('../internals/typed-array-from-species-and-list');\n\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\n\n// `%TypedArray%.prototype.filter` method\n// https://tc39.es/ecma262/#sec-%typedarray%.prototype.filter\nexportTypedArrayMethod('filter', function filter(callbackfn /* , thisArg */) {\n var list = $filter(aTypedArray(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n return fromSpeciesAndList(this, list);\n});\n","'use strict';\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\nvar $findIndex = require('../internals/array-iteration').findIndex;\n\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\n\n// `%TypedArray%.prototype.findIndex` method\n// https://tc39.es/ecma262/#sec-%typedarray%.prototype.findindex\nexportTypedArrayMethod('findIndex', function findIndex(predicate /* , thisArg */) {\n return $findIndex(aTypedArray(this), predicate, arguments.length > 1 ? arguments[1] : undefined);\n});\n","'use strict';\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\nvar $find = require('../internals/array-iteration').find;\n\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\n\n// `%TypedArray%.prototype.find` method\n// https://tc39.es/ecma262/#sec-%typedarray%.prototype.find\nexportTypedArrayMethod('find', function find(predicate /* , thisArg */) {\n return $find(aTypedArray(this), predicate, arguments.length > 1 ? arguments[1] : undefined);\n});\n","'use strict';\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\nvar $forEach = require('../internals/array-iteration').forEach;\n\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\n\n// `%TypedArray%.prototype.forEach` method\n// https://tc39.es/ecma262/#sec-%typedarray%.prototype.foreach\nexportTypedArrayMethod('forEach', function forEach(callbackfn /* , thisArg */) {\n $forEach(aTypedArray(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n});\n","'use strict';\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\nvar $includes = require('../internals/array-includes').includes;\n\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\n\n// `%TypedArray%.prototype.includes` method\n// https://tc39.es/ecma262/#sec-%typedarray%.prototype.includes\nexportTypedArrayMethod('includes', function includes(searchElement /* , fromIndex */) {\n return $includes(aTypedArray(this), searchElement, arguments.length > 1 ? arguments[1] : undefined);\n});\n","'use strict';\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\nvar $indexOf = require('../internals/array-includes').indexOf;\n\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\n\n// `%TypedArray%.prototype.indexOf` method\n// https://tc39.es/ecma262/#sec-%typedarray%.prototype.indexof\nexportTypedArrayMethod('indexOf', function indexOf(searchElement /* , fromIndex */) {\n return $indexOf(aTypedArray(this), searchElement, arguments.length > 1 ? arguments[1] : undefined);\n});\n","'use strict';\nvar global = require('../internals/global');\nvar fails = require('../internals/fails');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\nvar ArrayIterators = require('../modules/es.array.iterator');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar Uint8Array = global.Uint8Array;\nvar arrayValues = uncurryThis(ArrayIterators.values);\nvar arrayKeys = uncurryThis(ArrayIterators.keys);\nvar arrayEntries = uncurryThis(ArrayIterators.entries);\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\nvar TypedArrayPrototype = Uint8Array && Uint8Array.prototype;\n\nvar GENERIC = !fails(function () {\n TypedArrayPrototype[ITERATOR].call([1]);\n});\n\nvar ITERATOR_IS_VALUES = !!TypedArrayPrototype\n && TypedArrayPrototype.values\n && TypedArrayPrototype[ITERATOR] === TypedArrayPrototype.values\n && TypedArrayPrototype.values.name === 'values';\n\nvar typedArrayValues = function values() {\n return arrayValues(aTypedArray(this));\n};\n\n// `%TypedArray%.prototype.entries` method\n// https://tc39.es/ecma262/#sec-%typedarray%.prototype.entries\nexportTypedArrayMethod('entries', function entries() {\n return arrayEntries(aTypedArray(this));\n}, GENERIC);\n// `%TypedArray%.prototype.keys` method\n// https://tc39.es/ecma262/#sec-%typedarray%.prototype.keys\nexportTypedArrayMethod('keys', function keys() {\n return arrayKeys(aTypedArray(this));\n}, GENERIC);\n// `%TypedArray%.prototype.values` method\n// https://tc39.es/ecma262/#sec-%typedarray%.prototype.values\nexportTypedArrayMethod('values', typedArrayValues, GENERIC || !ITERATOR_IS_VALUES, { name: 'values' });\n// `%TypedArray%.prototype[@@iterator]` method\n// https://tc39.es/ecma262/#sec-%typedarray%.prototype-@@iterator\nexportTypedArrayMethod(ITERATOR, typedArrayValues, GENERIC || !ITERATOR_IS_VALUES, { name: 'values' });\n","'use strict';\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\nvar $join = uncurryThis([].join);\n\n// `%TypedArray%.prototype.join` method\n// https://tc39.es/ecma262/#sec-%typedarray%.prototype.join\nexportTypedArrayMethod('join', function join(separator) {\n return $join(aTypedArray(this), separator);\n});\n","'use strict';\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\nvar apply = require('../internals/function-apply');\nvar $lastIndexOf = require('../internals/array-last-index-of');\n\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\n\n// `%TypedArray%.prototype.lastIndexOf` method\n// https://tc39.es/ecma262/#sec-%typedarray%.prototype.lastindexof\nexportTypedArrayMethod('lastIndexOf', function lastIndexOf(searchElement /* , fromIndex */) {\n var length = arguments.length;\n return apply($lastIndexOf, aTypedArray(this), length > 1 ? [searchElement, arguments[1]] : [searchElement]);\n});\n","'use strict';\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\nvar $map = require('../internals/array-iteration').map;\nvar typedArraySpeciesConstructor = require('../internals/typed-array-species-constructor');\n\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\n\n// `%TypedArray%.prototype.map` method\n// https://tc39.es/ecma262/#sec-%typedarray%.prototype.map\nexportTypedArrayMethod('map', function map(mapfn /* , thisArg */) {\n return $map(aTypedArray(this), mapfn, arguments.length > 1 ? arguments[1] : undefined, function (O, length) {\n return new (typedArraySpeciesConstructor(O))(length);\n });\n});\n","'use strict';\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\nvar $reduceRight = require('../internals/array-reduce').right;\n\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\n\n// `%TypedArray%.prototype.reduceRight` method\n// https://tc39.es/ecma262/#sec-%typedarray%.prototype.reduceright\nexportTypedArrayMethod('reduceRight', function reduceRight(callbackfn /* , initialValue */) {\n var length = arguments.length;\n return $reduceRight(aTypedArray(this), callbackfn, length, length > 1 ? arguments[1] : undefined);\n});\n","'use strict';\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\nvar $reduce = require('../internals/array-reduce').left;\n\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\n\n// `%TypedArray%.prototype.reduce` method\n// https://tc39.es/ecma262/#sec-%typedarray%.prototype.reduce\nexportTypedArrayMethod('reduce', function reduce(callbackfn /* , initialValue */) {\n var length = arguments.length;\n return $reduce(aTypedArray(this), callbackfn, length, length > 1 ? arguments[1] : undefined);\n});\n","'use strict';\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\n\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\nvar floor = Math.floor;\n\n// `%TypedArray%.prototype.reverse` method\n// https://tc39.es/ecma262/#sec-%typedarray%.prototype.reverse\nexportTypedArrayMethod('reverse', function reverse() {\n var that = this;\n var length = aTypedArray(that).length;\n var middle = floor(length / 2);\n var index = 0;\n var value;\n while (index < middle) {\n value = that[index];\n that[index++] = that[--length];\n that[length] = value;\n } return that;\n});\n","'use strict';\nvar global = require('../internals/global');\nvar call = require('../internals/function-call');\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar toOffset = require('../internals/to-offset');\nvar toIndexedObject = require('../internals/to-object');\nvar fails = require('../internals/fails');\n\nvar RangeError = global.RangeError;\nvar Int8Array = global.Int8Array;\nvar Int8ArrayPrototype = Int8Array && Int8Array.prototype;\nvar $set = Int8ArrayPrototype && Int8ArrayPrototype.set;\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\n\nvar WORKS_WITH_OBJECTS_AND_GEERIC_ON_TYPED_ARRAYS = !fails(function () {\n // eslint-disable-next-line es-x/no-typed-arrays -- required for testing\n var array = new Uint8ClampedArray(2);\n call($set, array, { length: 1, 0: 3 }, 1);\n return array[1] !== 3;\n});\n\n// https://bugs.chromium.org/p/v8/issues/detail?id=11294 and other\nvar TO_OBJECT_BUG = WORKS_WITH_OBJECTS_AND_GEERIC_ON_TYPED_ARRAYS && ArrayBufferViewCore.NATIVE_ARRAY_BUFFER_VIEWS && fails(function () {\n var array = new Int8Array(2);\n array.set(1);\n array.set('2', 1);\n return array[0] !== 0 || array[1] !== 2;\n});\n\n// `%TypedArray%.prototype.set` method\n// https://tc39.es/ecma262/#sec-%typedarray%.prototype.set\nexportTypedArrayMethod('set', function set(arrayLike /* , offset */) {\n aTypedArray(this);\n var offset = toOffset(arguments.length > 1 ? arguments[1] : undefined, 1);\n var src = toIndexedObject(arrayLike);\n if (WORKS_WITH_OBJECTS_AND_GEERIC_ON_TYPED_ARRAYS) return call($set, this, src, offset);\n var length = this.length;\n var len = lengthOfArrayLike(src);\n var index = 0;\n if (len + offset > length) throw RangeError('Wrong length');\n while (index < len) this[offset + index] = src[index++];\n}, !WORKS_WITH_OBJECTS_AND_GEERIC_ON_TYPED_ARRAYS || TO_OBJECT_BUG);\n","'use strict';\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\nvar typedArraySpeciesConstructor = require('../internals/typed-array-species-constructor');\nvar fails = require('../internals/fails');\nvar arraySlice = require('../internals/array-slice');\n\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\n\nvar FORCED = fails(function () {\n // eslint-disable-next-line es-x/no-typed-arrays -- required for testing\n new Int8Array(1).slice();\n});\n\n// `%TypedArray%.prototype.slice` method\n// https://tc39.es/ecma262/#sec-%typedarray%.prototype.slice\nexportTypedArrayMethod('slice', function slice(start, end) {\n var list = arraySlice(aTypedArray(this), start, end);\n var C = typedArraySpeciesConstructor(this);\n var index = 0;\n var length = list.length;\n var result = new C(length);\n while (length > index) result[index] = list[index++];\n return result;\n}, FORCED);\n","'use strict';\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\nvar $some = require('../internals/array-iteration').some;\n\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\n\n// `%TypedArray%.prototype.some` method\n// https://tc39.es/ecma262/#sec-%typedarray%.prototype.some\nexportTypedArrayMethod('some', function some(callbackfn /* , thisArg */) {\n return $some(aTypedArray(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n});\n","'use strict';\nvar global = require('../internals/global');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar aCallable = require('../internals/a-callable');\nvar internalSort = require('../internals/array-sort');\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\nvar FF = require('../internals/engine-ff-version');\nvar IE_OR_EDGE = require('../internals/engine-is-ie-or-edge');\nvar V8 = require('../internals/engine-v8-version');\nvar WEBKIT = require('../internals/engine-webkit-version');\n\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\nvar Uint16Array = global.Uint16Array;\nvar un$Sort = Uint16Array && uncurryThis(Uint16Array.prototype.sort);\n\n// WebKit\nvar ACCEPT_INCORRECT_ARGUMENTS = !!un$Sort && !(fails(function () {\n un$Sort(new Uint16Array(2), null);\n}) && fails(function () {\n un$Sort(new Uint16Array(2), {});\n}));\n\nvar STABLE_SORT = !!un$Sort && !fails(function () {\n // feature detection can be too slow, so check engines versions\n if (V8) return V8 < 74;\n if (FF) return FF < 67;\n if (IE_OR_EDGE) return true;\n if (WEBKIT) return WEBKIT < 602;\n\n var array = new Uint16Array(516);\n var expected = Array(516);\n var index, mod;\n\n for (index = 0; index < 516; index++) {\n mod = index % 4;\n array[index] = 515 - index;\n expected[index] = index - 2 * mod + 3;\n }\n\n un$Sort(array, function (a, b) {\n return (a / 4 | 0) - (b / 4 | 0);\n });\n\n for (index = 0; index < 516; index++) {\n if (array[index] !== expected[index]) return true;\n }\n});\n\nvar getSortCompare = function (comparefn) {\n return function (x, y) {\n if (comparefn !== undefined) return +comparefn(x, y) || 0;\n // eslint-disable-next-line no-self-compare -- NaN check\n if (y !== y) return -1;\n // eslint-disable-next-line no-self-compare -- NaN check\n if (x !== x) return 1;\n if (x === 0 && y === 0) return 1 / x > 0 && 1 / y < 0 ? 1 : -1;\n return x > y;\n };\n};\n\n// `%TypedArray%.prototype.sort` method\n// https://tc39.es/ecma262/#sec-%typedarray%.prototype.sort\nexportTypedArrayMethod('sort', function sort(comparefn) {\n if (comparefn !== undefined) aCallable(comparefn);\n if (STABLE_SORT) return un$Sort(this, comparefn);\n\n return internalSort(aTypedArray(this), getSortCompare(comparefn));\n}, !STABLE_SORT || ACCEPT_INCORRECT_ARGUMENTS);\n","'use strict';\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\nvar toLength = require('../internals/to-length');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar typedArraySpeciesConstructor = require('../internals/typed-array-species-constructor');\n\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\n\n// `%TypedArray%.prototype.subarray` method\n// https://tc39.es/ecma262/#sec-%typedarray%.prototype.subarray\nexportTypedArrayMethod('subarray', function subarray(begin, end) {\n var O = aTypedArray(this);\n var length = O.length;\n var beginIndex = toAbsoluteIndex(begin, length);\n var C = typedArraySpeciesConstructor(O);\n return new C(\n O.buffer,\n O.byteOffset + beginIndex * O.BYTES_PER_ELEMENT,\n toLength((end === undefined ? length : toAbsoluteIndex(end, length)) - beginIndex)\n );\n});\n","'use strict';\nvar global = require('../internals/global');\nvar apply = require('../internals/function-apply');\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\nvar fails = require('../internals/fails');\nvar arraySlice = require('../internals/array-slice');\n\nvar Int8Array = global.Int8Array;\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\nvar $toLocaleString = [].toLocaleString;\n\n// iOS Safari 6.x fails here\nvar TO_LOCALE_STRING_BUG = !!Int8Array && fails(function () {\n $toLocaleString.call(new Int8Array(1));\n});\n\nvar FORCED = fails(function () {\n return [1, 2].toLocaleString() != new Int8Array([1, 2]).toLocaleString();\n}) || !fails(function () {\n Int8Array.prototype.toLocaleString.call([1, 2]);\n});\n\n// `%TypedArray%.prototype.toLocaleString` method\n// https://tc39.es/ecma262/#sec-%typedarray%.prototype.tolocalestring\nexportTypedArrayMethod('toLocaleString', function toLocaleString() {\n return apply(\n $toLocaleString,\n TO_LOCALE_STRING_BUG ? arraySlice(aTypedArray(this)) : aTypedArray(this),\n arraySlice(arguments)\n );\n}, FORCED);\n","'use strict';\nvar exportTypedArrayMethod = require('../internals/array-buffer-view-core').exportTypedArrayMethod;\nvar fails = require('../internals/fails');\nvar global = require('../internals/global');\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nvar Uint8Array = global.Uint8Array;\nvar Uint8ArrayPrototype = Uint8Array && Uint8Array.prototype || {};\nvar arrayToString = [].toString;\nvar join = uncurryThis([].join);\n\nif (fails(function () { arrayToString.call({}); })) {\n arrayToString = function toString() {\n return join(this);\n };\n}\n\nvar IS_NOT_ARRAY_METHOD = Uint8ArrayPrototype.toString != arrayToString;\n\n// `%TypedArray%.prototype.toString` method\n// https://tc39.es/ecma262/#sec-%typedarray%.prototype.tostring\nexportTypedArrayMethod('toString', arrayToString, IS_NOT_ARRAY_METHOD);\n","var createTypedArrayConstructor = require('../internals/typed-array-constructor');\n\n// `Uint8Array` constructor\n// https://tc39.es/ecma262/#sec-typedarray-objects\ncreateTypedArrayConstructor('Uint8', function (init) {\n return function Uint8Array(data, byteOffset, length) {\n return init(this, data, byteOffset, length);\n };\n});\n","// TODO: Remove from `core-js@4`\nrequire('../modules/es.global-this');\n","var global = require('../internals/global');\nvar DOMIterables = require('../internals/dom-iterables');\nvar DOMTokenListPrototype = require('../internals/dom-token-list-prototype');\nvar forEach = require('../internals/array-for-each');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\n\nvar handlePrototype = function (CollectionPrototype) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype && CollectionPrototype.forEach !== forEach) try {\n createNonEnumerableProperty(CollectionPrototype, 'forEach', forEach);\n } catch (error) {\n CollectionPrototype.forEach = forEach;\n }\n};\n\nfor (var COLLECTION_NAME in DOMIterables) {\n if (DOMIterables[COLLECTION_NAME]) {\n handlePrototype(global[COLLECTION_NAME] && global[COLLECTION_NAME].prototype);\n }\n}\n\nhandlePrototype(DOMTokenListPrototype);\n","var global = require('../internals/global');\nvar DOMIterables = require('../internals/dom-iterables');\nvar DOMTokenListPrototype = require('../internals/dom-token-list-prototype');\nvar ArrayIteratorMethods = require('../modules/es.array.iterator');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar ArrayValues = ArrayIteratorMethods.values;\n\nvar handlePrototype = function (CollectionPrototype, COLLECTION_NAME) {\n if (CollectionPrototype) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype[ITERATOR] !== ArrayValues) try {\n createNonEnumerableProperty(CollectionPrototype, ITERATOR, ArrayValues);\n } catch (error) {\n CollectionPrototype[ITERATOR] = ArrayValues;\n }\n if (!CollectionPrototype[TO_STRING_TAG]) {\n createNonEnumerableProperty(CollectionPrototype, TO_STRING_TAG, COLLECTION_NAME);\n }\n if (DOMIterables[COLLECTION_NAME]) for (var METHOD_NAME in ArrayIteratorMethods) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype[METHOD_NAME] !== ArrayIteratorMethods[METHOD_NAME]) try {\n createNonEnumerableProperty(CollectionPrototype, METHOD_NAME, ArrayIteratorMethods[METHOD_NAME]);\n } catch (error) {\n CollectionPrototype[METHOD_NAME] = ArrayIteratorMethods[METHOD_NAME];\n }\n }\n }\n};\n\nfor (var COLLECTION_NAME in DOMIterables) {\n handlePrototype(global[COLLECTION_NAME] && global[COLLECTION_NAME].prototype, COLLECTION_NAME);\n}\n\nhandlePrototype(DOMTokenListPrototype, 'DOMTokenList');\n","'use strict';\n// TODO: in core-js@4, move /modules/ dependencies to public entries for better optimization by tools like `preset-env`\nrequire('../modules/es.array.iterator');\nvar $ = require('../internals/export');\nvar global = require('../internals/global');\nvar call = require('../internals/function-call');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar USE_NATIVE_URL = require('../internals/native-url');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar defineBuiltIns = require('../internals/define-built-ins');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar createIteratorConstructor = require('../internals/create-iterator-constructor');\nvar InternalStateModule = require('../internals/internal-state');\nvar anInstance = require('../internals/an-instance');\nvar isCallable = require('../internals/is-callable');\nvar hasOwn = require('../internals/has-own-property');\nvar bind = require('../internals/function-bind-context');\nvar classof = require('../internals/classof');\nvar anObject = require('../internals/an-object');\nvar isObject = require('../internals/is-object');\nvar $toString = require('../internals/to-string');\nvar create = require('../internals/object-create');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar getIterator = require('../internals/get-iterator');\nvar getIteratorMethod = require('../internals/get-iterator-method');\nvar validateArgumentsLength = require('../internals/validate-arguments-length');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar arraySort = require('../internals/array-sort');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar URL_SEARCH_PARAMS = 'URLSearchParams';\nvar URL_SEARCH_PARAMS_ITERATOR = URL_SEARCH_PARAMS + 'Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalParamsState = InternalStateModule.getterFor(URL_SEARCH_PARAMS);\nvar getInternalIteratorState = InternalStateModule.getterFor(URL_SEARCH_PARAMS_ITERATOR);\n// eslint-disable-next-line es-x/no-object-getownpropertydescriptor -- safe\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// Avoid NodeJS experimental warning\nvar safeGetBuiltIn = function (name) {\n if (!DESCRIPTORS) return global[name];\n var descriptor = getOwnPropertyDescriptor(global, name);\n return descriptor && descriptor.value;\n};\n\nvar nativeFetch = safeGetBuiltIn('fetch');\nvar NativeRequest = safeGetBuiltIn('Request');\nvar Headers = safeGetBuiltIn('Headers');\nvar RequestPrototype = NativeRequest && NativeRequest.prototype;\nvar HeadersPrototype = Headers && Headers.prototype;\nvar RegExp = global.RegExp;\nvar TypeError = global.TypeError;\nvar decodeURIComponent = global.decodeURIComponent;\nvar encodeURIComponent = global.encodeURIComponent;\nvar charAt = uncurryThis(''.charAt);\nvar join = uncurryThis([].join);\nvar push = uncurryThis([].push);\nvar replace = uncurryThis(''.replace);\nvar shift = uncurryThis([].shift);\nvar splice = uncurryThis([].splice);\nvar split = uncurryThis(''.split);\nvar stringSlice = uncurryThis(''.slice);\n\nvar plus = /\\+/g;\nvar sequences = Array(4);\n\nvar percentSequence = function (bytes) {\n return sequences[bytes - 1] || (sequences[bytes - 1] = RegExp('((?:%[\\\\da-f]{2}){' + bytes + '})', 'gi'));\n};\n\nvar percentDecode = function (sequence) {\n try {\n return decodeURIComponent(sequence);\n } catch (error) {\n return sequence;\n }\n};\n\nvar deserialize = function (it) {\n var result = replace(it, plus, ' ');\n var bytes = 4;\n try {\n return decodeURIComponent(result);\n } catch (error) {\n while (bytes) {\n result = replace(result, percentSequence(bytes--), percentDecode);\n }\n return result;\n }\n};\n\nvar find = /[!'()~]|%20/g;\n\nvar replacements = {\n '!': '%21',\n \"'\": '%27',\n '(': '%28',\n ')': '%29',\n '~': '%7E',\n '%20': '+'\n};\n\nvar replacer = function (match) {\n return replacements[match];\n};\n\nvar serialize = function (it) {\n return replace(encodeURIComponent(it), find, replacer);\n};\n\nvar URLSearchParamsIterator = createIteratorConstructor(function Iterator(params, kind) {\n setInternalState(this, {\n type: URL_SEARCH_PARAMS_ITERATOR,\n iterator: getIterator(getInternalParamsState(params).entries),\n kind: kind\n });\n}, 'Iterator', function next() {\n var state = getInternalIteratorState(this);\n var kind = state.kind;\n var step = state.iterator.next();\n var entry = step.value;\n if (!step.done) {\n step.value = kind === 'keys' ? entry.key : kind === 'values' ? entry.value : [entry.key, entry.value];\n } return step;\n}, true);\n\nvar URLSearchParamsState = function (init) {\n this.entries = [];\n this.url = null;\n\n if (init !== undefined) {\n if (isObject(init)) this.parseObject(init);\n else this.parseQuery(typeof init == 'string' ? charAt(init, 0) === '?' ? stringSlice(init, 1) : init : $toString(init));\n }\n};\n\nURLSearchParamsState.prototype = {\n type: URL_SEARCH_PARAMS,\n bindURL: function (url) {\n this.url = url;\n this.update();\n },\n parseObject: function (object) {\n var iteratorMethod = getIteratorMethod(object);\n var iterator, next, step, entryIterator, entryNext, first, second;\n\n if (iteratorMethod) {\n iterator = getIterator(object, iteratorMethod);\n next = iterator.next;\n while (!(step = call(next, iterator)).done) {\n entryIterator = getIterator(anObject(step.value));\n entryNext = entryIterator.next;\n if (\n (first = call(entryNext, entryIterator)).done ||\n (second = call(entryNext, entryIterator)).done ||\n !call(entryNext, entryIterator).done\n ) throw TypeError('Expected sequence with length 2');\n push(this.entries, { key: $toString(first.value), value: $toString(second.value) });\n }\n } else for (var key in object) if (hasOwn(object, key)) {\n push(this.entries, { key: key, value: $toString(object[key]) });\n }\n },\n parseQuery: function (query) {\n if (query) {\n var attributes = split(query, '&');\n var index = 0;\n var attribute, entry;\n while (index < attributes.length) {\n attribute = attributes[index++];\n if (attribute.length) {\n entry = split(attribute, '=');\n push(this.entries, {\n key: deserialize(shift(entry)),\n value: deserialize(join(entry, '='))\n });\n }\n }\n }\n },\n serialize: function () {\n var entries = this.entries;\n var result = [];\n var index = 0;\n var entry;\n while (index < entries.length) {\n entry = entries[index++];\n push(result, serialize(entry.key) + '=' + serialize(entry.value));\n } return join(result, '&');\n },\n update: function () {\n this.entries.length = 0;\n this.parseQuery(this.url.query);\n },\n updateURL: function () {\n if (this.url) this.url.update();\n }\n};\n\n// `URLSearchParams` constructor\n// https://url.spec.whatwg.org/#interface-urlsearchparams\nvar URLSearchParamsConstructor = function URLSearchParams(/* init */) {\n anInstance(this, URLSearchParamsPrototype);\n var init = arguments.length > 0 ? arguments[0] : undefined;\n setInternalState(this, new URLSearchParamsState(init));\n};\n\nvar URLSearchParamsPrototype = URLSearchParamsConstructor.prototype;\n\ndefineBuiltIns(URLSearchParamsPrototype, {\n // `URLSearchParams.prototype.append` method\n // https://url.spec.whatwg.org/#dom-urlsearchparams-append\n append: function append(name, value) {\n validateArgumentsLength(arguments.length, 2);\n var state = getInternalParamsState(this);\n push(state.entries, { key: $toString(name), value: $toString(value) });\n state.updateURL();\n },\n // `URLSearchParams.prototype.delete` method\n // https://url.spec.whatwg.org/#dom-urlsearchparams-delete\n 'delete': function (name) {\n validateArgumentsLength(arguments.length, 1);\n var state = getInternalParamsState(this);\n var entries = state.entries;\n var key = $toString(name);\n var index = 0;\n while (index < entries.length) {\n if (entries[index].key === key) splice(entries, index, 1);\n else index++;\n }\n state.updateURL();\n },\n // `URLSearchParams.prototype.get` method\n // https://url.spec.whatwg.org/#dom-urlsearchparams-get\n get: function get(name) {\n validateArgumentsLength(arguments.length, 1);\n var entries = getInternalParamsState(this).entries;\n var key = $toString(name);\n var index = 0;\n for (; index < entries.length; index++) {\n if (entries[index].key === key) return entries[index].value;\n }\n return null;\n },\n // `URLSearchParams.prototype.getAll` method\n // https://url.spec.whatwg.org/#dom-urlsearchparams-getall\n getAll: function getAll(name) {\n validateArgumentsLength(arguments.length, 1);\n var entries = getInternalParamsState(this).entries;\n var key = $toString(name);\n var result = [];\n var index = 0;\n for (; index < entries.length; index++) {\n if (entries[index].key === key) push(result, entries[index].value);\n }\n return result;\n },\n // `URLSearchParams.prototype.has` method\n // https://url.spec.whatwg.org/#dom-urlsearchparams-has\n has: function has(name) {\n validateArgumentsLength(arguments.length, 1);\n var entries = getInternalParamsState(this).entries;\n var key = $toString(name);\n var index = 0;\n while (index < entries.length) {\n if (entries[index++].key === key) return true;\n }\n return false;\n },\n // `URLSearchParams.prototype.set` method\n // https://url.spec.whatwg.org/#dom-urlsearchparams-set\n set: function set(name, value) {\n validateArgumentsLength(arguments.length, 1);\n var state = getInternalParamsState(this);\n var entries = state.entries;\n var found = false;\n var key = $toString(name);\n var val = $toString(value);\n var index = 0;\n var entry;\n for (; index < entries.length; index++) {\n entry = entries[index];\n if (entry.key === key) {\n if (found) splice(entries, index--, 1);\n else {\n found = true;\n entry.value = val;\n }\n }\n }\n if (!found) push(entries, { key: key, value: val });\n state.updateURL();\n },\n // `URLSearchParams.prototype.sort` method\n // https://url.spec.whatwg.org/#dom-urlsearchparams-sort\n sort: function sort() {\n var state = getInternalParamsState(this);\n arraySort(state.entries, function (a, b) {\n return a.key > b.key ? 1 : -1;\n });\n state.updateURL();\n },\n // `URLSearchParams.prototype.forEach` method\n forEach: function forEach(callback /* , thisArg */) {\n var entries = getInternalParamsState(this).entries;\n var boundFunction = bind(callback, arguments.length > 1 ? arguments[1] : undefined);\n var index = 0;\n var entry;\n while (index < entries.length) {\n entry = entries[index++];\n boundFunction(entry.value, entry.key, this);\n }\n },\n // `URLSearchParams.prototype.keys` method\n keys: function keys() {\n return new URLSearchParamsIterator(this, 'keys');\n },\n // `URLSearchParams.prototype.values` method\n values: function values() {\n return new URLSearchParamsIterator(this, 'values');\n },\n // `URLSearchParams.prototype.entries` method\n entries: function entries() {\n return new URLSearchParamsIterator(this, 'entries');\n }\n}, { enumerable: true });\n\n// `URLSearchParams.prototype[@@iterator]` method\ndefineBuiltIn(URLSearchParamsPrototype, ITERATOR, URLSearchParamsPrototype.entries, { name: 'entries' });\n\n// `URLSearchParams.prototype.toString` method\n// https://url.spec.whatwg.org/#urlsearchparams-stringification-behavior\ndefineBuiltIn(URLSearchParamsPrototype, 'toString', function toString() {\n return getInternalParamsState(this).serialize();\n}, { enumerable: true });\n\nsetToStringTag(URLSearchParamsConstructor, URL_SEARCH_PARAMS);\n\n$({ global: true, constructor: true, forced: !USE_NATIVE_URL }, {\n URLSearchParams: URLSearchParamsConstructor\n});\n\n// Wrap `fetch` and `Request` for correct work with polyfilled `URLSearchParams`\nif (!USE_NATIVE_URL && isCallable(Headers)) {\n var headersHas = uncurryThis(HeadersPrototype.has);\n var headersSet = uncurryThis(HeadersPrototype.set);\n\n var wrapRequestOptions = function (init) {\n if (isObject(init)) {\n var body = init.body;\n var headers;\n if (classof(body) === URL_SEARCH_PARAMS) {\n headers = init.headers ? new Headers(init.headers) : new Headers();\n if (!headersHas(headers, 'content-type')) {\n headersSet(headers, 'content-type', 'application/x-www-form-urlencoded;charset=UTF-8');\n }\n return create(init, {\n body: createPropertyDescriptor(0, $toString(body)),\n headers: createPropertyDescriptor(0, headers)\n });\n }\n } return init;\n };\n\n if (isCallable(nativeFetch)) {\n $({ global: true, enumerable: true, dontCallGetSet: true, forced: true }, {\n fetch: function fetch(input /* , init */) {\n return nativeFetch(input, arguments.length > 1 ? wrapRequestOptions(arguments[1]) : {});\n }\n });\n }\n\n if (isCallable(NativeRequest)) {\n var RequestConstructor = function Request(input /* , init */) {\n anInstance(this, RequestPrototype);\n return new NativeRequest(input, arguments.length > 1 ? wrapRequestOptions(arguments[1]) : {});\n };\n\n RequestPrototype.constructor = RequestConstructor;\n RequestConstructor.prototype = RequestPrototype;\n\n $({ global: true, constructor: true, dontCallGetSet: true, forced: true }, {\n Request: RequestConstructor\n });\n }\n}\n\nmodule.exports = {\n URLSearchParams: URLSearchParamsConstructor,\n getState: getInternalParamsState\n};\n","// TODO: Remove this module from `core-js@4` since it's replaced to module below\nrequire('../modules/web.url-search-params.constructor');\n","'use strict';\n// TODO: in core-js@4, move /modules/ dependencies to public entries for better optimization by tools like `preset-env`\nrequire('../modules/es.string.iterator');\nvar $ = require('../internals/export');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar USE_NATIVE_URL = require('../internals/native-url');\nvar global = require('../internals/global');\nvar bind = require('../internals/function-bind-context');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar defineBuiltInAccessor = require('../internals/define-built-in-accessor');\nvar anInstance = require('../internals/an-instance');\nvar hasOwn = require('../internals/has-own-property');\nvar assign = require('../internals/object-assign');\nvar arrayFrom = require('../internals/array-from');\nvar arraySlice = require('../internals/array-slice-simple');\nvar codeAt = require('../internals/string-multibyte').codeAt;\nvar toASCII = require('../internals/string-punycode-to-ascii');\nvar $toString = require('../internals/to-string');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar validateArgumentsLength = require('../internals/validate-arguments-length');\nvar URLSearchParamsModule = require('../modules/web.url-search-params.constructor');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar setInternalState = InternalStateModule.set;\nvar getInternalURLState = InternalStateModule.getterFor('URL');\nvar URLSearchParams = URLSearchParamsModule.URLSearchParams;\nvar getInternalSearchParamsState = URLSearchParamsModule.getState;\n\nvar NativeURL = global.URL;\nvar TypeError = global.TypeError;\nvar parseInt = global.parseInt;\nvar floor = Math.floor;\nvar pow = Math.pow;\nvar charAt = uncurryThis(''.charAt);\nvar exec = uncurryThis(/./.exec);\nvar join = uncurryThis([].join);\nvar numberToString = uncurryThis(1.0.toString);\nvar pop = uncurryThis([].pop);\nvar push = uncurryThis([].push);\nvar replace = uncurryThis(''.replace);\nvar shift = uncurryThis([].shift);\nvar split = uncurryThis(''.split);\nvar stringSlice = uncurryThis(''.slice);\nvar toLowerCase = uncurryThis(''.toLowerCase);\nvar unshift = uncurryThis([].unshift);\n\nvar INVALID_AUTHORITY = 'Invalid authority';\nvar INVALID_SCHEME = 'Invalid scheme';\nvar INVALID_HOST = 'Invalid host';\nvar INVALID_PORT = 'Invalid port';\n\nvar ALPHA = /[a-z]/i;\n// eslint-disable-next-line regexp/no-obscure-range -- safe\nvar ALPHANUMERIC = /[\\d+-.a-z]/i;\nvar DIGIT = /\\d/;\nvar HEX_START = /^0x/i;\nvar OCT = /^[0-7]+$/;\nvar DEC = /^\\d+$/;\nvar HEX = /^[\\da-f]+$/i;\n/* eslint-disable regexp/no-control-character -- safe */\nvar FORBIDDEN_HOST_CODE_POINT = /[\\0\\t\\n\\r #%/:<>?@[\\\\\\]^|]/;\nvar FORBIDDEN_HOST_CODE_POINT_EXCLUDING_PERCENT = /[\\0\\t\\n\\r #/:<>?@[\\\\\\]^|]/;\nvar LEADING_AND_TRAILING_C0_CONTROL_OR_SPACE = /^[\\u0000-\\u0020]+|[\\u0000-\\u0020]+$/g;\nvar TAB_AND_NEW_LINE = /[\\t\\n\\r]/g;\n/* eslint-enable regexp/no-control-character -- safe */\nvar EOF;\n\n// https://url.spec.whatwg.org/#ipv4-number-parser\nvar parseIPv4 = function (input) {\n var parts = split(input, '.');\n var partsLength, numbers, index, part, radix, number, ipv4;\n if (parts.length && parts[parts.length - 1] == '') {\n parts.length--;\n }\n partsLength = parts.length;\n if (partsLength > 4) return input;\n numbers = [];\n for (index = 0; index < partsLength; index++) {\n part = parts[index];\n if (part == '') return input;\n radix = 10;\n if (part.length > 1 && charAt(part, 0) == '0') {\n radix = exec(HEX_START, part) ? 16 : 8;\n part = stringSlice(part, radix == 8 ? 1 : 2);\n }\n if (part === '') {\n number = 0;\n } else {\n if (!exec(radix == 10 ? DEC : radix == 8 ? OCT : HEX, part)) return input;\n number = parseInt(part, radix);\n }\n push(numbers, number);\n }\n for (index = 0; index < partsLength; index++) {\n number = numbers[index];\n if (index == partsLength - 1) {\n if (number >= pow(256, 5 - partsLength)) return null;\n } else if (number > 255) return null;\n }\n ipv4 = pop(numbers);\n for (index = 0; index < numbers.length; index++) {\n ipv4 += numbers[index] * pow(256, 3 - index);\n }\n return ipv4;\n};\n\n// https://url.spec.whatwg.org/#concept-ipv6-parser\n// eslint-disable-next-line max-statements -- TODO\nvar parseIPv6 = function (input) {\n var address = [0, 0, 0, 0, 0, 0, 0, 0];\n var pieceIndex = 0;\n var compress = null;\n var pointer = 0;\n var value, length, numbersSeen, ipv4Piece, number, swaps, swap;\n\n var chr = function () {\n return charAt(input, pointer);\n };\n\n if (chr() == ':') {\n if (charAt(input, 1) != ':') return;\n pointer += 2;\n pieceIndex++;\n compress = pieceIndex;\n }\n while (chr()) {\n if (pieceIndex == 8) return;\n if (chr() == ':') {\n if (compress !== null) return;\n pointer++;\n pieceIndex++;\n compress = pieceIndex;\n continue;\n }\n value = length = 0;\n while (length < 4 && exec(HEX, chr())) {\n value = value * 16 + parseInt(chr(), 16);\n pointer++;\n length++;\n }\n if (chr() == '.') {\n if (length == 0) return;\n pointer -= length;\n if (pieceIndex > 6) return;\n numbersSeen = 0;\n while (chr()) {\n ipv4Piece = null;\n if (numbersSeen > 0) {\n if (chr() == '.' && numbersSeen < 4) pointer++;\n else return;\n }\n if (!exec(DIGIT, chr())) return;\n while (exec(DIGIT, chr())) {\n number = parseInt(chr(), 10);\n if (ipv4Piece === null) ipv4Piece = number;\n else if (ipv4Piece == 0) return;\n else ipv4Piece = ipv4Piece * 10 + number;\n if (ipv4Piece > 255) return;\n pointer++;\n }\n address[pieceIndex] = address[pieceIndex] * 256 + ipv4Piece;\n numbersSeen++;\n if (numbersSeen == 2 || numbersSeen == 4) pieceIndex++;\n }\n if (numbersSeen != 4) return;\n break;\n } else if (chr() == ':') {\n pointer++;\n if (!chr()) return;\n } else if (chr()) return;\n address[pieceIndex++] = value;\n }\n if (compress !== null) {\n swaps = pieceIndex - compress;\n pieceIndex = 7;\n while (pieceIndex != 0 && swaps > 0) {\n swap = address[pieceIndex];\n address[pieceIndex--] = address[compress + swaps - 1];\n address[compress + --swaps] = swap;\n }\n } else if (pieceIndex != 8) return;\n return address;\n};\n\nvar findLongestZeroSequence = function (ipv6) {\n var maxIndex = null;\n var maxLength = 1;\n var currStart = null;\n var currLength = 0;\n var index = 0;\n for (; index < 8; index++) {\n if (ipv6[index] !== 0) {\n if (currLength > maxLength) {\n maxIndex = currStart;\n maxLength = currLength;\n }\n currStart = null;\n currLength = 0;\n } else {\n if (currStart === null) currStart = index;\n ++currLength;\n }\n }\n if (currLength > maxLength) {\n maxIndex = currStart;\n maxLength = currLength;\n }\n return maxIndex;\n};\n\n// https://url.spec.whatwg.org/#host-serializing\nvar serializeHost = function (host) {\n var result, index, compress, ignore0;\n // ipv4\n if (typeof host == 'number') {\n result = [];\n for (index = 0; index < 4; index++) {\n unshift(result, host % 256);\n host = floor(host / 256);\n } return join(result, '.');\n // ipv6\n } else if (typeof host == 'object') {\n result = '';\n compress = findLongestZeroSequence(host);\n for (index = 0; index < 8; index++) {\n if (ignore0 && host[index] === 0) continue;\n if (ignore0) ignore0 = false;\n if (compress === index) {\n result += index ? ':' : '::';\n ignore0 = true;\n } else {\n result += numberToString(host[index], 16);\n if (index < 7) result += ':';\n }\n }\n return '[' + result + ']';\n } return host;\n};\n\nvar C0ControlPercentEncodeSet = {};\nvar fragmentPercentEncodeSet = assign({}, C0ControlPercentEncodeSet, {\n ' ': 1, '\"': 1, '<': 1, '>': 1, '`': 1\n});\nvar pathPercentEncodeSet = assign({}, fragmentPercentEncodeSet, {\n '#': 1, '?': 1, '{': 1, '}': 1\n});\nvar userinfoPercentEncodeSet = assign({}, pathPercentEncodeSet, {\n '/': 1, ':': 1, ';': 1, '=': 1, '@': 1, '[': 1, '\\\\': 1, ']': 1, '^': 1, '|': 1\n});\n\nvar percentEncode = function (chr, set) {\n var code = codeAt(chr, 0);\n return code > 0x20 && code < 0x7F && !hasOwn(set, chr) ? chr : encodeURIComponent(chr);\n};\n\n// https://url.spec.whatwg.org/#special-scheme\nvar specialSchemes = {\n ftp: 21,\n file: null,\n http: 80,\n https: 443,\n ws: 80,\n wss: 443\n};\n\n// https://url.spec.whatwg.org/#windows-drive-letter\nvar isWindowsDriveLetter = function (string, normalized) {\n var second;\n return string.length == 2 && exec(ALPHA, charAt(string, 0))\n && ((second = charAt(string, 1)) == ':' || (!normalized && second == '|'));\n};\n\n// https://url.spec.whatwg.org/#start-with-a-windows-drive-letter\nvar startsWithWindowsDriveLetter = function (string) {\n var third;\n return string.length > 1 && isWindowsDriveLetter(stringSlice(string, 0, 2)) && (\n string.length == 2 ||\n ((third = charAt(string, 2)) === '/' || third === '\\\\' || third === '?' || third === '#')\n );\n};\n\n// https://url.spec.whatwg.org/#single-dot-path-segment\nvar isSingleDot = function (segment) {\n return segment === '.' || toLowerCase(segment) === '%2e';\n};\n\n// https://url.spec.whatwg.org/#double-dot-path-segment\nvar isDoubleDot = function (segment) {\n segment = toLowerCase(segment);\n return segment === '..' || segment === '%2e.' || segment === '.%2e' || segment === '%2e%2e';\n};\n\n// States:\nvar SCHEME_START = {};\nvar SCHEME = {};\nvar NO_SCHEME = {};\nvar SPECIAL_RELATIVE_OR_AUTHORITY = {};\nvar PATH_OR_AUTHORITY = {};\nvar RELATIVE = {};\nvar RELATIVE_SLASH = {};\nvar SPECIAL_AUTHORITY_SLASHES = {};\nvar SPECIAL_AUTHORITY_IGNORE_SLASHES = {};\nvar AUTHORITY = {};\nvar HOST = {};\nvar HOSTNAME = {};\nvar PORT = {};\nvar FILE = {};\nvar FILE_SLASH = {};\nvar FILE_HOST = {};\nvar PATH_START = {};\nvar PATH = {};\nvar CANNOT_BE_A_BASE_URL_PATH = {};\nvar QUERY = {};\nvar FRAGMENT = {};\n\nvar URLState = function (url, isBase, base) {\n var urlString = $toString(url);\n var baseState, failure, searchParams;\n if (isBase) {\n failure = this.parse(urlString);\n if (failure) throw TypeError(failure);\n this.searchParams = null;\n } else {\n if (base !== undefined) baseState = new URLState(base, true);\n failure = this.parse(urlString, null, baseState);\n if (failure) throw TypeError(failure);\n searchParams = getInternalSearchParamsState(new URLSearchParams());\n searchParams.bindURL(this);\n this.searchParams = searchParams;\n }\n};\n\nURLState.prototype = {\n type: 'URL',\n // https://url.spec.whatwg.org/#url-parsing\n // eslint-disable-next-line max-statements -- TODO\n parse: function (input, stateOverride, base) {\n var url = this;\n var state = stateOverride || SCHEME_START;\n var pointer = 0;\n var buffer = '';\n var seenAt = false;\n var seenBracket = false;\n var seenPasswordToken = false;\n var codePoints, chr, bufferCodePoints, failure;\n\n input = $toString(input);\n\n if (!stateOverride) {\n url.scheme = '';\n url.username = '';\n url.password = '';\n url.host = null;\n url.port = null;\n url.path = [];\n url.query = null;\n url.fragment = null;\n url.cannotBeABaseURL = false;\n input = replace(input, LEADING_AND_TRAILING_C0_CONTROL_OR_SPACE, '');\n }\n\n input = replace(input, TAB_AND_NEW_LINE, '');\n\n codePoints = arrayFrom(input);\n\n while (pointer <= codePoints.length) {\n chr = codePoints[pointer];\n switch (state) {\n case SCHEME_START:\n if (chr && exec(ALPHA, chr)) {\n buffer += toLowerCase(chr);\n state = SCHEME;\n } else if (!stateOverride) {\n state = NO_SCHEME;\n continue;\n } else return INVALID_SCHEME;\n break;\n\n case SCHEME:\n if (chr && (exec(ALPHANUMERIC, chr) || chr == '+' || chr == '-' || chr == '.')) {\n buffer += toLowerCase(chr);\n } else if (chr == ':') {\n if (stateOverride && (\n (url.isSpecial() != hasOwn(specialSchemes, buffer)) ||\n (buffer == 'file' && (url.includesCredentials() || url.port !== null)) ||\n (url.scheme == 'file' && !url.host)\n )) return;\n url.scheme = buffer;\n if (stateOverride) {\n if (url.isSpecial() && specialSchemes[url.scheme] == url.port) url.port = null;\n return;\n }\n buffer = '';\n if (url.scheme == 'file') {\n state = FILE;\n } else if (url.isSpecial() && base && base.scheme == url.scheme) {\n state = SPECIAL_RELATIVE_OR_AUTHORITY;\n } else if (url.isSpecial()) {\n state = SPECIAL_AUTHORITY_SLASHES;\n } else if (codePoints[pointer + 1] == '/') {\n state = PATH_OR_AUTHORITY;\n pointer++;\n } else {\n url.cannotBeABaseURL = true;\n push(url.path, '');\n state = CANNOT_BE_A_BASE_URL_PATH;\n }\n } else if (!stateOverride) {\n buffer = '';\n state = NO_SCHEME;\n pointer = 0;\n continue;\n } else return INVALID_SCHEME;\n break;\n\n case NO_SCHEME:\n if (!base || (base.cannotBeABaseURL && chr != '#')) return INVALID_SCHEME;\n if (base.cannotBeABaseURL && chr == '#') {\n url.scheme = base.scheme;\n url.path = arraySlice(base.path);\n url.query = base.query;\n url.fragment = '';\n url.cannotBeABaseURL = true;\n state = FRAGMENT;\n break;\n }\n state = base.scheme == 'file' ? FILE : RELATIVE;\n continue;\n\n case SPECIAL_RELATIVE_OR_AUTHORITY:\n if (chr == '/' && codePoints[pointer + 1] == '/') {\n state = SPECIAL_AUTHORITY_IGNORE_SLASHES;\n pointer++;\n } else {\n state = RELATIVE;\n continue;\n } break;\n\n case PATH_OR_AUTHORITY:\n if (chr == '/') {\n state = AUTHORITY;\n break;\n } else {\n state = PATH;\n continue;\n }\n\n case RELATIVE:\n url.scheme = base.scheme;\n if (chr == EOF) {\n url.username = base.username;\n url.password = base.password;\n url.host = base.host;\n url.port = base.port;\n url.path = arraySlice(base.path);\n url.query = base.query;\n } else if (chr == '/' || (chr == '\\\\' && url.isSpecial())) {\n state = RELATIVE_SLASH;\n } else if (chr == '?') {\n url.username = base.username;\n url.password = base.password;\n url.host = base.host;\n url.port = base.port;\n url.path = arraySlice(base.path);\n url.query = '';\n state = QUERY;\n } else if (chr == '#') {\n url.username = base.username;\n url.password = base.password;\n url.host = base.host;\n url.port = base.port;\n url.path = arraySlice(base.path);\n url.query = base.query;\n url.fragment = '';\n state = FRAGMENT;\n } else {\n url.username = base.username;\n url.password = base.password;\n url.host = base.host;\n url.port = base.port;\n url.path = arraySlice(base.path);\n url.path.length--;\n state = PATH;\n continue;\n } break;\n\n case RELATIVE_SLASH:\n if (url.isSpecial() && (chr == '/' || chr == '\\\\')) {\n state = SPECIAL_AUTHORITY_IGNORE_SLASHES;\n } else if (chr == '/') {\n state = AUTHORITY;\n } else {\n url.username = base.username;\n url.password = base.password;\n url.host = base.host;\n url.port = base.port;\n state = PATH;\n continue;\n } break;\n\n case SPECIAL_AUTHORITY_SLASHES:\n state = SPECIAL_AUTHORITY_IGNORE_SLASHES;\n if (chr != '/' || charAt(buffer, pointer + 1) != '/') continue;\n pointer++;\n break;\n\n case SPECIAL_AUTHORITY_IGNORE_SLASHES:\n if (chr != '/' && chr != '\\\\') {\n state = AUTHORITY;\n continue;\n } break;\n\n case AUTHORITY:\n if (chr == '@') {\n if (seenAt) buffer = '%40' + buffer;\n seenAt = true;\n bufferCodePoints = arrayFrom(buffer);\n for (var i = 0; i < bufferCodePoints.length; i++) {\n var codePoint = bufferCodePoints[i];\n if (codePoint == ':' && !seenPasswordToken) {\n seenPasswordToken = true;\n continue;\n }\n var encodedCodePoints = percentEncode(codePoint, userinfoPercentEncodeSet);\n if (seenPasswordToken) url.password += encodedCodePoints;\n else url.username += encodedCodePoints;\n }\n buffer = '';\n } else if (\n chr == EOF || chr == '/' || chr == '?' || chr == '#' ||\n (chr == '\\\\' && url.isSpecial())\n ) {\n if (seenAt && buffer == '') return INVALID_AUTHORITY;\n pointer -= arrayFrom(buffer).length + 1;\n buffer = '';\n state = HOST;\n } else buffer += chr;\n break;\n\n case HOST:\n case HOSTNAME:\n if (stateOverride && url.scheme == 'file') {\n state = FILE_HOST;\n continue;\n } else if (chr == ':' && !seenBracket) {\n if (buffer == '') return INVALID_HOST;\n failure = url.parseHost(buffer);\n if (failure) return failure;\n buffer = '';\n state = PORT;\n if (stateOverride == HOSTNAME) return;\n } else if (\n chr == EOF || chr == '/' || chr == '?' || chr == '#' ||\n (chr == '\\\\' && url.isSpecial())\n ) {\n if (url.isSpecial() && buffer == '') return INVALID_HOST;\n if (stateOverride && buffer == '' && (url.includesCredentials() || url.port !== null)) return;\n failure = url.parseHost(buffer);\n if (failure) return failure;\n buffer = '';\n state = PATH_START;\n if (stateOverride) return;\n continue;\n } else {\n if (chr == '[') seenBracket = true;\n else if (chr == ']') seenBracket = false;\n buffer += chr;\n } break;\n\n case PORT:\n if (exec(DIGIT, chr)) {\n buffer += chr;\n } else if (\n chr == EOF || chr == '/' || chr == '?' || chr == '#' ||\n (chr == '\\\\' && url.isSpecial()) ||\n stateOverride\n ) {\n if (buffer != '') {\n var port = parseInt(buffer, 10);\n if (port > 0xFFFF) return INVALID_PORT;\n url.port = (url.isSpecial() && port === specialSchemes[url.scheme]) ? null : port;\n buffer = '';\n }\n if (stateOverride) return;\n state = PATH_START;\n continue;\n } else return INVALID_PORT;\n break;\n\n case FILE:\n url.scheme = 'file';\n if (chr == '/' || chr == '\\\\') state = FILE_SLASH;\n else if (base && base.scheme == 'file') {\n if (chr == EOF) {\n url.host = base.host;\n url.path = arraySlice(base.path);\n url.query = base.query;\n } else if (chr == '?') {\n url.host = base.host;\n url.path = arraySlice(base.path);\n url.query = '';\n state = QUERY;\n } else if (chr == '#') {\n url.host = base.host;\n url.path = arraySlice(base.path);\n url.query = base.query;\n url.fragment = '';\n state = FRAGMENT;\n } else {\n if (!startsWithWindowsDriveLetter(join(arraySlice(codePoints, pointer), ''))) {\n url.host = base.host;\n url.path = arraySlice(base.path);\n url.shortenPath();\n }\n state = PATH;\n continue;\n }\n } else {\n state = PATH;\n continue;\n } break;\n\n case FILE_SLASH:\n if (chr == '/' || chr == '\\\\') {\n state = FILE_HOST;\n break;\n }\n if (base && base.scheme == 'file' && !startsWithWindowsDriveLetter(join(arraySlice(codePoints, pointer), ''))) {\n if (isWindowsDriveLetter(base.path[0], true)) push(url.path, base.path[0]);\n else url.host = base.host;\n }\n state = PATH;\n continue;\n\n case FILE_HOST:\n if (chr == EOF || chr == '/' || chr == '\\\\' || chr == '?' || chr == '#') {\n if (!stateOverride && isWindowsDriveLetter(buffer)) {\n state = PATH;\n } else if (buffer == '') {\n url.host = '';\n if (stateOverride) return;\n state = PATH_START;\n } else {\n failure = url.parseHost(buffer);\n if (failure) return failure;\n if (url.host == 'localhost') url.host = '';\n if (stateOverride) return;\n buffer = '';\n state = PATH_START;\n } continue;\n } else buffer += chr;\n break;\n\n case PATH_START:\n if (url.isSpecial()) {\n state = PATH;\n if (chr != '/' && chr != '\\\\') continue;\n } else if (!stateOverride && chr == '?') {\n url.query = '';\n state = QUERY;\n } else if (!stateOverride && chr == '#') {\n url.fragment = '';\n state = FRAGMENT;\n } else if (chr != EOF) {\n state = PATH;\n if (chr != '/') continue;\n } break;\n\n case PATH:\n if (\n chr == EOF || chr == '/' ||\n (chr == '\\\\' && url.isSpecial()) ||\n (!stateOverride && (chr == '?' || chr == '#'))\n ) {\n if (isDoubleDot(buffer)) {\n url.shortenPath();\n if (chr != '/' && !(chr == '\\\\' && url.isSpecial())) {\n push(url.path, '');\n }\n } else if (isSingleDot(buffer)) {\n if (chr != '/' && !(chr == '\\\\' && url.isSpecial())) {\n push(url.path, '');\n }\n } else {\n if (url.scheme == 'file' && !url.path.length && isWindowsDriveLetter(buffer)) {\n if (url.host) url.host = '';\n buffer = charAt(buffer, 0) + ':'; // normalize windows drive letter\n }\n push(url.path, buffer);\n }\n buffer = '';\n if (url.scheme == 'file' && (chr == EOF || chr == '?' || chr == '#')) {\n while (url.path.length > 1 && url.path[0] === '') {\n shift(url.path);\n }\n }\n if (chr == '?') {\n url.query = '';\n state = QUERY;\n } else if (chr == '#') {\n url.fragment = '';\n state = FRAGMENT;\n }\n } else {\n buffer += percentEncode(chr, pathPercentEncodeSet);\n } break;\n\n case CANNOT_BE_A_BASE_URL_PATH:\n if (chr == '?') {\n url.query = '';\n state = QUERY;\n } else if (chr == '#') {\n url.fragment = '';\n state = FRAGMENT;\n } else if (chr != EOF) {\n url.path[0] += percentEncode(chr, C0ControlPercentEncodeSet);\n } break;\n\n case QUERY:\n if (!stateOverride && chr == '#') {\n url.fragment = '';\n state = FRAGMENT;\n } else if (chr != EOF) {\n if (chr == \"'\" && url.isSpecial()) url.query += '%27';\n else if (chr == '#') url.query += '%23';\n else url.query += percentEncode(chr, C0ControlPercentEncodeSet);\n } break;\n\n case FRAGMENT:\n if (chr != EOF) url.fragment += percentEncode(chr, fragmentPercentEncodeSet);\n break;\n }\n\n pointer++;\n }\n },\n // https://url.spec.whatwg.org/#host-parsing\n parseHost: function (input) {\n var result, codePoints, index;\n if (charAt(input, 0) == '[') {\n if (charAt(input, input.length - 1) != ']') return INVALID_HOST;\n result = parseIPv6(stringSlice(input, 1, -1));\n if (!result) return INVALID_HOST;\n this.host = result;\n // opaque host\n } else if (!this.isSpecial()) {\n if (exec(FORBIDDEN_HOST_CODE_POINT_EXCLUDING_PERCENT, input)) return INVALID_HOST;\n result = '';\n codePoints = arrayFrom(input);\n for (index = 0; index < codePoints.length; index++) {\n result += percentEncode(codePoints[index], C0ControlPercentEncodeSet);\n }\n this.host = result;\n } else {\n input = toASCII(input);\n if (exec(FORBIDDEN_HOST_CODE_POINT, input)) return INVALID_HOST;\n result = parseIPv4(input);\n if (result === null) return INVALID_HOST;\n this.host = result;\n }\n },\n // https://url.spec.whatwg.org/#cannot-have-a-username-password-port\n cannotHaveUsernamePasswordPort: function () {\n return !this.host || this.cannotBeABaseURL || this.scheme == 'file';\n },\n // https://url.spec.whatwg.org/#include-credentials\n includesCredentials: function () {\n return this.username != '' || this.password != '';\n },\n // https://url.spec.whatwg.org/#is-special\n isSpecial: function () {\n return hasOwn(specialSchemes, this.scheme);\n },\n // https://url.spec.whatwg.org/#shorten-a-urls-path\n shortenPath: function () {\n var path = this.path;\n var pathSize = path.length;\n if (pathSize && (this.scheme != 'file' || pathSize != 1 || !isWindowsDriveLetter(path[0], true))) {\n path.length--;\n }\n },\n // https://url.spec.whatwg.org/#concept-url-serializer\n serialize: function () {\n var url = this;\n var scheme = url.scheme;\n var username = url.username;\n var password = url.password;\n var host = url.host;\n var port = url.port;\n var path = url.path;\n var query = url.query;\n var fragment = url.fragment;\n var output = scheme + ':';\n if (host !== null) {\n output += '//';\n if (url.includesCredentials()) {\n output += username + (password ? ':' + password : '') + '@';\n }\n output += serializeHost(host);\n if (port !== null) output += ':' + port;\n } else if (scheme == 'file') output += '//';\n output += url.cannotBeABaseURL ? path[0] : path.length ? '/' + join(path, '/') : '';\n if (query !== null) output += '?' + query;\n if (fragment !== null) output += '#' + fragment;\n return output;\n },\n // https://url.spec.whatwg.org/#dom-url-href\n setHref: function (href) {\n var failure = this.parse(href);\n if (failure) throw TypeError(failure);\n this.searchParams.update();\n },\n // https://url.spec.whatwg.org/#dom-url-origin\n getOrigin: function () {\n var scheme = this.scheme;\n var port = this.port;\n if (scheme == 'blob') try {\n return new URLConstructor(scheme.path[0]).origin;\n } catch (error) {\n return 'null';\n }\n if (scheme == 'file' || !this.isSpecial()) return 'null';\n return scheme + '://' + serializeHost(this.host) + (port !== null ? ':' + port : '');\n },\n // https://url.spec.whatwg.org/#dom-url-protocol\n getProtocol: function () {\n return this.scheme + ':';\n },\n setProtocol: function (protocol) {\n this.parse($toString(protocol) + ':', SCHEME_START);\n },\n // https://url.spec.whatwg.org/#dom-url-username\n getUsername: function () {\n return this.username;\n },\n setUsername: function (username) {\n var codePoints = arrayFrom($toString(username));\n if (this.cannotHaveUsernamePasswordPort()) return;\n this.username = '';\n for (var i = 0; i < codePoints.length; i++) {\n this.username += percentEncode(codePoints[i], userinfoPercentEncodeSet);\n }\n },\n // https://url.spec.whatwg.org/#dom-url-password\n getPassword: function () {\n return this.password;\n },\n setPassword: function (password) {\n var codePoints = arrayFrom($toString(password));\n if (this.cannotHaveUsernamePasswordPort()) return;\n this.password = '';\n for (var i = 0; i < codePoints.length; i++) {\n this.password += percentEncode(codePoints[i], userinfoPercentEncodeSet);\n }\n },\n // https://url.spec.whatwg.org/#dom-url-host\n getHost: function () {\n var host = this.host;\n var port = this.port;\n return host === null ? ''\n : port === null ? serializeHost(host)\n : serializeHost(host) + ':' + port;\n },\n setHost: function (host) {\n if (this.cannotBeABaseURL) return;\n this.parse(host, HOST);\n },\n // https://url.spec.whatwg.org/#dom-url-hostname\n getHostname: function () {\n var host = this.host;\n return host === null ? '' : serializeHost(host);\n },\n setHostname: function (hostname) {\n if (this.cannotBeABaseURL) return;\n this.parse(hostname, HOSTNAME);\n },\n // https://url.spec.whatwg.org/#dom-url-port\n getPort: function () {\n var port = this.port;\n return port === null ? '' : $toString(port);\n },\n setPort: function (port) {\n if (this.cannotHaveUsernamePasswordPort()) return;\n port = $toString(port);\n if (port == '') this.port = null;\n else this.parse(port, PORT);\n },\n // https://url.spec.whatwg.org/#dom-url-pathname\n getPathname: function () {\n var path = this.path;\n return this.cannotBeABaseURL ? path[0] : path.length ? '/' + join(path, '/') : '';\n },\n setPathname: function (pathname) {\n if (this.cannotBeABaseURL) return;\n this.path = [];\n this.parse(pathname, PATH_START);\n },\n // https://url.spec.whatwg.org/#dom-url-search\n getSearch: function () {\n var query = this.query;\n return query ? '?' + query : '';\n },\n setSearch: function (search) {\n search = $toString(search);\n if (search == '') {\n this.query = null;\n } else {\n if ('?' == charAt(search, 0)) search = stringSlice(search, 1);\n this.query = '';\n this.parse(search, QUERY);\n }\n this.searchParams.update();\n },\n // https://url.spec.whatwg.org/#dom-url-searchparams\n getSearchParams: function () {\n return this.searchParams.facade;\n },\n // https://url.spec.whatwg.org/#dom-url-hash\n getHash: function () {\n var fragment = this.fragment;\n return fragment ? '#' + fragment : '';\n },\n setHash: function (hash) {\n hash = $toString(hash);\n if (hash == '') {\n this.fragment = null;\n return;\n }\n if ('#' == charAt(hash, 0)) hash = stringSlice(hash, 1);\n this.fragment = '';\n this.parse(hash, FRAGMENT);\n },\n update: function () {\n this.query = this.searchParams.serialize() || null;\n }\n};\n\n// `URL` constructor\n// https://url.spec.whatwg.org/#url-class\nvar URLConstructor = function URL(url /* , base */) {\n var that = anInstance(this, URLPrototype);\n var base = validateArgumentsLength(arguments.length, 1) > 1 ? arguments[1] : undefined;\n var state = setInternalState(that, new URLState(url, false, base));\n if (!DESCRIPTORS) {\n that.href = state.serialize();\n that.origin = state.getOrigin();\n that.protocol = state.getProtocol();\n that.username = state.getUsername();\n that.password = state.getPassword();\n that.host = state.getHost();\n that.hostname = state.getHostname();\n that.port = state.getPort();\n that.pathname = state.getPathname();\n that.search = state.getSearch();\n that.searchParams = state.getSearchParams();\n that.hash = state.getHash();\n }\n};\n\nvar URLPrototype = URLConstructor.prototype;\n\nvar accessorDescriptor = function (getter, setter) {\n return {\n get: function () {\n return getInternalURLState(this)[getter]();\n },\n set: setter && function (value) {\n return getInternalURLState(this)[setter](value);\n },\n configurable: true,\n enumerable: true\n };\n};\n\nif (DESCRIPTORS) {\n // `URL.prototype.href` accessors pair\n // https://url.spec.whatwg.org/#dom-url-href\n defineBuiltInAccessor(URLPrototype, 'href', accessorDescriptor('serialize', 'setHref'));\n // `URL.prototype.origin` getter\n // https://url.spec.whatwg.org/#dom-url-origin\n defineBuiltInAccessor(URLPrototype, 'origin', accessorDescriptor('getOrigin'));\n // `URL.prototype.protocol` accessors pair\n // https://url.spec.whatwg.org/#dom-url-protocol\n defineBuiltInAccessor(URLPrototype, 'protocol', accessorDescriptor('getProtocol', 'setProtocol'));\n // `URL.prototype.username` accessors pair\n // https://url.spec.whatwg.org/#dom-url-username\n defineBuiltInAccessor(URLPrototype, 'username', accessorDescriptor('getUsername', 'setUsername'));\n // `URL.prototype.password` accessors pair\n // https://url.spec.whatwg.org/#dom-url-password\n defineBuiltInAccessor(URLPrototype, 'password', accessorDescriptor('getPassword', 'setPassword'));\n // `URL.prototype.host` accessors pair\n // https://url.spec.whatwg.org/#dom-url-host\n defineBuiltInAccessor(URLPrototype, 'host', accessorDescriptor('getHost', 'setHost'));\n // `URL.prototype.hostname` accessors pair\n // https://url.spec.whatwg.org/#dom-url-hostname\n defineBuiltInAccessor(URLPrototype, 'hostname', accessorDescriptor('getHostname', 'setHostname'));\n // `URL.prototype.port` accessors pair\n // https://url.spec.whatwg.org/#dom-url-port\n defineBuiltInAccessor(URLPrototype, 'port', accessorDescriptor('getPort', 'setPort'));\n // `URL.prototype.pathname` accessors pair\n // https://url.spec.whatwg.org/#dom-url-pathname\n defineBuiltInAccessor(URLPrototype, 'pathname', accessorDescriptor('getPathname', 'setPathname'));\n // `URL.prototype.search` accessors pair\n // https://url.spec.whatwg.org/#dom-url-search\n defineBuiltInAccessor(URLPrototype, 'search', accessorDescriptor('getSearch', 'setSearch'));\n // `URL.prototype.searchParams` getter\n // https://url.spec.whatwg.org/#dom-url-searchparams\n defineBuiltInAccessor(URLPrototype, 'searchParams', accessorDescriptor('getSearchParams'));\n // `URL.prototype.hash` accessors pair\n // https://url.spec.whatwg.org/#dom-url-hash\n defineBuiltInAccessor(URLPrototype, 'hash', accessorDescriptor('getHash', 'setHash'));\n}\n\n// `URL.prototype.toJSON` method\n// https://url.spec.whatwg.org/#dom-url-tojson\ndefineBuiltIn(URLPrototype, 'toJSON', function toJSON() {\n return getInternalURLState(this).serialize();\n}, { enumerable: true });\n\n// `URL.prototype.toString` method\n// https://url.spec.whatwg.org/#URL-stringification-behavior\ndefineBuiltIn(URLPrototype, 'toString', function toString() {\n return getInternalURLState(this).serialize();\n}, { enumerable: true });\n\nif (NativeURL) {\n var nativeCreateObjectURL = NativeURL.createObjectURL;\n var nativeRevokeObjectURL = NativeURL.revokeObjectURL;\n // `URL.createObjectURL` method\n // https://developer.mozilla.org/en-US/docs/Web/API/URL/createObjectURL\n if (nativeCreateObjectURL) defineBuiltIn(URLConstructor, 'createObjectURL', bind(nativeCreateObjectURL, NativeURL));\n // `URL.revokeObjectURL` method\n // https://developer.mozilla.org/en-US/docs/Web/API/URL/revokeObjectURL\n if (nativeRevokeObjectURL) defineBuiltIn(URLConstructor, 'revokeObjectURL', bind(nativeRevokeObjectURL, NativeURL));\n}\n\nsetToStringTag(URLConstructor, 'URL');\n\n$({ global: true, constructor: true, forced: !USE_NATIVE_URL, sham: !DESCRIPTORS }, {\n URL: URLConstructor\n});\n","// TODO: Remove this module from `core-js@4` since it's replaced to module below\nrequire('../modules/web.url.constructor');\n","var global = typeof self !== 'undefined' ? self : this;\nvar __self__ = (function () {\nfunction F() {\nthis.fetch = false;\nthis.DOMException = global.DOMException\n}\nF.prototype = global;\nreturn new F();\n})();\n(function(self) {\n\nvar irrelevant = (function (exports) {\n\n var support = {\n searchParams: 'URLSearchParams' in self,\n iterable: 'Symbol' in self && 'iterator' in Symbol,\n blob:\n 'FileReader' in self &&\n 'Blob' in self &&\n (function() {\n try {\n new Blob();\n return true\n } catch (e) {\n return false\n }\n })(),\n formData: 'FormData' in self,\n arrayBuffer: 'ArrayBuffer' in self\n };\n\n function isDataView(obj) {\n return obj && DataView.prototype.isPrototypeOf(obj)\n }\n\n if (support.arrayBuffer) {\n var viewClasses = [\n '[object Int8Array]',\n '[object Uint8Array]',\n '[object Uint8ClampedArray]',\n '[object Int16Array]',\n '[object Uint16Array]',\n '[object Int32Array]',\n '[object Uint32Array]',\n '[object Float32Array]',\n '[object Float64Array]'\n ];\n\n var isArrayBufferView =\n ArrayBuffer.isView ||\n function(obj) {\n return obj && viewClasses.indexOf(Object.prototype.toString.call(obj)) > -1\n };\n }\n\n function normalizeName(name) {\n if (typeof name !== 'string') {\n name = String(name);\n }\n if (/[^a-z0-9\\-#$%&'*+.^_`|~]/i.test(name)) {\n throw new TypeError('Invalid character in header field name')\n }\n return name.toLowerCase()\n }\n\n function normalizeValue(value) {\n if (typeof value !== 'string') {\n value = String(value);\n }\n return value\n }\n\n // Build a destructive iterator for the value list\n function iteratorFor(items) {\n var iterator = {\n next: function() {\n var value = items.shift();\n return {done: value === undefined, value: value}\n }\n };\n\n if (support.iterable) {\n iterator[Symbol.iterator] = function() {\n return iterator\n };\n }\n\n return iterator\n }\n\n function Headers(headers) {\n this.map = {};\n\n if (headers instanceof Headers) {\n headers.forEach(function(value, name) {\n this.append(name, value);\n }, this);\n } else if (Array.isArray(headers)) {\n headers.forEach(function(header) {\n this.append(header[0], header[1]);\n }, this);\n } else if (headers) {\n Object.getOwnPropertyNames(headers).forEach(function(name) {\n this.append(name, headers[name]);\n }, this);\n }\n }\n\n Headers.prototype.append = function(name, value) {\n name = normalizeName(name);\n value = normalizeValue(value);\n var oldValue = this.map[name];\n this.map[name] = oldValue ? oldValue + ', ' + value : value;\n };\n\n Headers.prototype['delete'] = function(name) {\n delete this.map[normalizeName(name)];\n };\n\n Headers.prototype.get = function(name) {\n name = normalizeName(name);\n return this.has(name) ? this.map[name] : null\n };\n\n Headers.prototype.has = function(name) {\n return this.map.hasOwnProperty(normalizeName(name))\n };\n\n Headers.prototype.set = function(name, value) {\n this.map[normalizeName(name)] = normalizeValue(value);\n };\n\n Headers.prototype.forEach = function(callback, thisArg) {\n for (var name in this.map) {\n if (this.map.hasOwnProperty(name)) {\n callback.call(thisArg, this.map[name], name, this);\n }\n }\n };\n\n Headers.prototype.keys = function() {\n var items = [];\n this.forEach(function(value, name) {\n items.push(name);\n });\n return iteratorFor(items)\n };\n\n Headers.prototype.values = function() {\n var items = [];\n this.forEach(function(value) {\n items.push(value);\n });\n return iteratorFor(items)\n };\n\n Headers.prototype.entries = function() {\n var items = [];\n this.forEach(function(value, name) {\n items.push([name, value]);\n });\n return iteratorFor(items)\n };\n\n if (support.iterable) {\n Headers.prototype[Symbol.iterator] = Headers.prototype.entries;\n }\n\n function consumed(body) {\n if (body.bodyUsed) {\n return Promise.reject(new TypeError('Already read'))\n }\n body.bodyUsed = true;\n }\n\n function fileReaderReady(reader) {\n return new Promise(function(resolve, reject) {\n reader.onload = function() {\n resolve(reader.result);\n };\n reader.onerror = function() {\n reject(reader.error);\n };\n })\n }\n\n function readBlobAsArrayBuffer(blob) {\n var reader = new FileReader();\n var promise = fileReaderReady(reader);\n reader.readAsArrayBuffer(blob);\n return promise\n }\n\n function readBlobAsText(blob) {\n var reader = new FileReader();\n var promise = fileReaderReady(reader);\n reader.readAsText(blob);\n return promise\n }\n\n function readArrayBufferAsText(buf) {\n var view = new Uint8Array(buf);\n var chars = new Array(view.length);\n\n for (var i = 0; i < view.length; i++) {\n chars[i] = String.fromCharCode(view[i]);\n }\n return chars.join('')\n }\n\n function bufferClone(buf) {\n if (buf.slice) {\n return buf.slice(0)\n } else {\n var view = new Uint8Array(buf.byteLength);\n view.set(new Uint8Array(buf));\n return view.buffer\n }\n }\n\n function Body() {\n this.bodyUsed = false;\n\n this._initBody = function(body) {\n this._bodyInit = body;\n if (!body) {\n this._bodyText = '';\n } else if (typeof body === 'string') {\n this._bodyText = body;\n } else if (support.blob && Blob.prototype.isPrototypeOf(body)) {\n this._bodyBlob = body;\n } else if (support.formData && FormData.prototype.isPrototypeOf(body)) {\n this._bodyFormData = body;\n } else if (support.searchParams && URLSearchParams.prototype.isPrototypeOf(body)) {\n this._bodyText = body.toString();\n } else if (support.arrayBuffer && support.blob && isDataView(body)) {\n this._bodyArrayBuffer = bufferClone(body.buffer);\n // IE 10-11 can't handle a DataView body.\n this._bodyInit = new Blob([this._bodyArrayBuffer]);\n } else if (support.arrayBuffer && (ArrayBuffer.prototype.isPrototypeOf(body) || isArrayBufferView(body))) {\n this._bodyArrayBuffer = bufferClone(body);\n } else {\n this._bodyText = body = Object.prototype.toString.call(body);\n }\n\n if (!this.headers.get('content-type')) {\n if (typeof body === 'string') {\n this.headers.set('content-type', 'text/plain;charset=UTF-8');\n } else if (this._bodyBlob && this._bodyBlob.type) {\n this.headers.set('content-type', this._bodyBlob.type);\n } else if (support.searchParams && URLSearchParams.prototype.isPrototypeOf(body)) {\n this.headers.set('content-type', 'application/x-www-form-urlencoded;charset=UTF-8');\n }\n }\n };\n\n if (support.blob) {\n this.blob = function() {\n var rejected = consumed(this);\n if (rejected) {\n return rejected\n }\n\n if (this._bodyBlob) {\n return Promise.resolve(this._bodyBlob)\n } else if (this._bodyArrayBuffer) {\n return Promise.resolve(new Blob([this._bodyArrayBuffer]))\n } else if (this._bodyFormData) {\n throw new Error('could not read FormData body as blob')\n } else {\n return Promise.resolve(new Blob([this._bodyText]))\n }\n };\n\n this.arrayBuffer = function() {\n if (this._bodyArrayBuffer) {\n return consumed(this) || Promise.resolve(this._bodyArrayBuffer)\n } else {\n return this.blob().then(readBlobAsArrayBuffer)\n }\n };\n }\n\n this.text = function() {\n var rejected = consumed(this);\n if (rejected) {\n return rejected\n }\n\n if (this._bodyBlob) {\n return readBlobAsText(this._bodyBlob)\n } else if (this._bodyArrayBuffer) {\n return Promise.resolve(readArrayBufferAsText(this._bodyArrayBuffer))\n } else if (this._bodyFormData) {\n throw new Error('could not read FormData body as text')\n } else {\n return Promise.resolve(this._bodyText)\n }\n };\n\n if (support.formData) {\n this.formData = function() {\n return this.text().then(decode)\n };\n }\n\n this.json = function() {\n return this.text().then(JSON.parse)\n };\n\n return this\n }\n\n // HTTP methods whose capitalization should be normalized\n var methods = ['DELETE', 'GET', 'HEAD', 'OPTIONS', 'POST', 'PUT'];\n\n function normalizeMethod(method) {\n var upcased = method.toUpperCase();\n return methods.indexOf(upcased) > -1 ? upcased : method\n }\n\n function Request(input, options) {\n options = options || {};\n var body = options.body;\n\n if (input instanceof Request) {\n if (input.bodyUsed) {\n throw new TypeError('Already read')\n }\n this.url = input.url;\n this.credentials = input.credentials;\n if (!options.headers) {\n this.headers = new Headers(input.headers);\n }\n this.method = input.method;\n this.mode = input.mode;\n this.signal = input.signal;\n if (!body && input._bodyInit != null) {\n body = input._bodyInit;\n input.bodyUsed = true;\n }\n } else {\n this.url = String(input);\n }\n\n this.credentials = options.credentials || this.credentials || 'same-origin';\n if (options.headers || !this.headers) {\n this.headers = new Headers(options.headers);\n }\n this.method = normalizeMethod(options.method || this.method || 'GET');\n this.mode = options.mode || this.mode || null;\n this.signal = options.signal || this.signal;\n this.referrer = null;\n\n if ((this.method === 'GET' || this.method === 'HEAD') && body) {\n throw new TypeError('Body not allowed for GET or HEAD requests')\n }\n this._initBody(body);\n }\n\n Request.prototype.clone = function() {\n return new Request(this, {body: this._bodyInit})\n };\n\n function decode(body) {\n var form = new FormData();\n body\n .trim()\n .split('&')\n .forEach(function(bytes) {\n if (bytes) {\n var split = bytes.split('=');\n var name = split.shift().replace(/\\+/g, ' ');\n var value = split.join('=').replace(/\\+/g, ' ');\n form.append(decodeURIComponent(name), decodeURIComponent(value));\n }\n });\n return form\n }\n\n function parseHeaders(rawHeaders) {\n var headers = new Headers();\n // Replace instances of \\r\\n and \\n followed by at least one space or horizontal tab with a space\n // https://tools.ietf.org/html/rfc7230#section-3.2\n var preProcessedHeaders = rawHeaders.replace(/\\r?\\n[\\t ]+/g, ' ');\n preProcessedHeaders.split(/\\r?\\n/).forEach(function(line) {\n var parts = line.split(':');\n var key = parts.shift().trim();\n if (key) {\n var value = parts.join(':').trim();\n headers.append(key, value);\n }\n });\n return headers\n }\n\n Body.call(Request.prototype);\n\n function Response(bodyInit, options) {\n if (!options) {\n options = {};\n }\n\n this.type = 'default';\n this.status = options.status === undefined ? 200 : options.status;\n this.ok = this.status >= 200 && this.status < 300;\n this.statusText = 'statusText' in options ? options.statusText : 'OK';\n this.headers = new Headers(options.headers);\n this.url = options.url || '';\n this._initBody(bodyInit);\n }\n\n Body.call(Response.prototype);\n\n Response.prototype.clone = function() {\n return new Response(this._bodyInit, {\n status: this.status,\n statusText: this.statusText,\n headers: new Headers(this.headers),\n url: this.url\n })\n };\n\n Response.error = function() {\n var response = new Response(null, {status: 0, statusText: ''});\n response.type = 'error';\n return response\n };\n\n var redirectStatuses = [301, 302, 303, 307, 308];\n\n Response.redirect = function(url, status) {\n if (redirectStatuses.indexOf(status) === -1) {\n throw new RangeError('Invalid status code')\n }\n\n return new Response(null, {status: status, headers: {location: url}})\n };\n\n exports.DOMException = self.DOMException;\n try {\n new exports.DOMException();\n } catch (err) {\n exports.DOMException = function(message, name) {\n this.message = message;\n this.name = name;\n var error = Error(message);\n this.stack = error.stack;\n };\n exports.DOMException.prototype = Object.create(Error.prototype);\n exports.DOMException.prototype.constructor = exports.DOMException;\n }\n\n function fetch(input, init) {\n return new Promise(function(resolve, reject) {\n var request = new Request(input, init);\n\n if (request.signal && request.signal.aborted) {\n return reject(new exports.DOMException('Aborted', 'AbortError'))\n }\n\n var xhr = new XMLHttpRequest();\n\n function abortXhr() {\n xhr.abort();\n }\n\n xhr.onload = function() {\n var options = {\n status: xhr.status,\n statusText: xhr.statusText,\n headers: parseHeaders(xhr.getAllResponseHeaders() || '')\n };\n options.url = 'responseURL' in xhr ? xhr.responseURL : options.headers.get('X-Request-URL');\n var body = 'response' in xhr ? xhr.response : xhr.responseText;\n resolve(new Response(body, options));\n };\n\n xhr.onerror = function() {\n reject(new TypeError('Network request failed'));\n };\n\n xhr.ontimeout = function() {\n reject(new TypeError('Network request failed'));\n };\n\n xhr.onabort = function() {\n reject(new exports.DOMException('Aborted', 'AbortError'));\n };\n\n xhr.open(request.method, request.url, true);\n\n if (request.credentials === 'include') {\n xhr.withCredentials = true;\n } else if (request.credentials === 'omit') {\n xhr.withCredentials = false;\n }\n\n if ('responseType' in xhr && support.blob) {\n xhr.responseType = 'blob';\n }\n\n request.headers.forEach(function(value, name) {\n xhr.setRequestHeader(name, value);\n });\n\n if (request.signal) {\n request.signal.addEventListener('abort', abortXhr);\n\n xhr.onreadystatechange = function() {\n // DONE (success or failure)\n if (xhr.readyState === 4) {\n request.signal.removeEventListener('abort', abortXhr);\n }\n };\n }\n\n xhr.send(typeof request._bodyInit === 'undefined' ? null : request._bodyInit);\n })\n }\n\n fetch.polyfill = true;\n\n if (!self.fetch) {\n self.fetch = fetch;\n self.Headers = Headers;\n self.Request = Request;\n self.Response = Response;\n }\n\n exports.Headers = Headers;\n exports.Request = Request;\n exports.Response = Response;\n exports.fetch = fetch;\n\n Object.defineProperty(exports, '__esModule', { value: true });\n\n return exports;\n\n})({});\n})(__self__);\n__self__.fetch.ponyfill = true;\n// Remove \"polyfill\" property added by whatwg-fetch\ndelete __self__.fetch.polyfill;\n// Choose between native implementation (global) or custom implementation (__self__)\n// var ctx = global.fetch ? global : __self__;\nvar ctx = __self__; // this line disable service worker support temporarily\nexports = ctx.fetch // To enable: import fetch from 'cross-fetch'\nexports.default = ctx.fetch // For TypeScript consumers without esModuleInterop.\nexports.fetch = ctx.fetch // To enable: import {fetch} from 'cross-fetch'\nexports.Headers = ctx.Headers\nexports.Request = ctx.Request\nexports.Response = ctx.Response\nmodule.exports = exports\n","//\n// THIS FILE IS AUTOMATICALLY GENERATED! DO NOT EDIT BY HAND!\n//\n;\n(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n ? module.exports = factory()\n : typeof define === 'function' && define.amd\n ? define(factory) :\n // cf. https://github.com/dankogai/js-base64/issues/119\n (function () {\n // existing version for noConflict()\n var _Base64 = global.Base64;\n var gBase64 = factory();\n gBase64.noConflict = function () {\n global.Base64 = _Base64;\n return gBase64;\n };\n if (global.Meteor) { // Meteor.js\n Base64 = gBase64;\n }\n global.Base64 = gBase64;\n })();\n}((typeof self !== 'undefined' ? self\n : typeof window !== 'undefined' ? window\n : typeof global !== 'undefined' ? global\n : this), function () {\n 'use strict';\n /**\n * base64.ts\n *\n * Licensed under the BSD 3-Clause License.\n * http://opensource.org/licenses/BSD-3-Clause\n *\n * References:\n * http://en.wikipedia.org/wiki/Base64\n *\n * @author Dan Kogai (https://github.com/dankogai)\n */\n var version = '3.7.2';\n /**\n * @deprecated use lowercase `version`.\n */\n var VERSION = version;\n var _hasatob = typeof atob === 'function';\n var _hasbtoa = typeof btoa === 'function';\n var _hasBuffer = typeof Buffer === 'function';\n var _TD = typeof TextDecoder === 'function' ? new TextDecoder() : undefined;\n var _TE = typeof TextEncoder === 'function' ? new TextEncoder() : undefined;\n var b64ch = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=';\n var b64chs = Array.prototype.slice.call(b64ch);\n var b64tab = (function (a) {\n var tab = {};\n a.forEach(function (c, i) { return tab[c] = i; });\n return tab;\n })(b64chs);\n var b64re = /^(?:[A-Za-z\\d+\\/]{4})*?(?:[A-Za-z\\d+\\/]{2}(?:==)?|[A-Za-z\\d+\\/]{3}=?)?$/;\n var _fromCC = String.fromCharCode.bind(String);\n var _U8Afrom = typeof Uint8Array.from === 'function'\n ? Uint8Array.from.bind(Uint8Array)\n : function (it, fn) {\n if (fn === void 0) { fn = function (x) { return x; }; }\n return new Uint8Array(Array.prototype.slice.call(it, 0).map(fn));\n };\n var _mkUriSafe = function (src) { return src\n .replace(/=/g, '').replace(/[+\\/]/g, function (m0) { return m0 == '+' ? '-' : '_'; }); };\n var _tidyB64 = function (s) { return s.replace(/[^A-Za-z0-9\\+\\/]/g, ''); };\n /**\n * polyfill version of `btoa`\n */\n var btoaPolyfill = function (bin) {\n // console.log('polyfilled');\n var u32, c0, c1, c2, asc = '';\n var pad = bin.length % 3;\n for (var i = 0; i < bin.length;) {\n if ((c0 = bin.charCodeAt(i++)) > 255 ||\n (c1 = bin.charCodeAt(i++)) > 255 ||\n (c2 = bin.charCodeAt(i++)) > 255)\n throw new TypeError('invalid character found');\n u32 = (c0 << 16) | (c1 << 8) | c2;\n asc += b64chs[u32 >> 18 & 63]\n + b64chs[u32 >> 12 & 63]\n + b64chs[u32 >> 6 & 63]\n + b64chs[u32 & 63];\n }\n return pad ? asc.slice(0, pad - 3) + \"===\".substring(pad) : asc;\n };\n /**\n * does what `window.btoa` of web browsers do.\n * @param {String} bin binary string\n * @returns {string} Base64-encoded string\n */\n var _btoa = _hasbtoa ? function (bin) { return btoa(bin); }\n : _hasBuffer ? function (bin) { return Buffer.from(bin, 'binary').toString('base64'); }\n : btoaPolyfill;\n var _fromUint8Array = _hasBuffer\n ? function (u8a) { return Buffer.from(u8a).toString('base64'); }\n : function (u8a) {\n // cf. https://stackoverflow.com/questions/12710001/how-to-convert-uint8-array-to-base64-encoded-string/12713326#12713326\n var maxargs = 0x1000;\n var strs = [];\n for (var i = 0, l = u8a.length; i < l; i += maxargs) {\n strs.push(_fromCC.apply(null, u8a.subarray(i, i + maxargs)));\n }\n return _btoa(strs.join(''));\n };\n /**\n * converts a Uint8Array to a Base64 string.\n * @param {boolean} [urlsafe] URL-and-filename-safe a la RFC4648 §5\n * @returns {string} Base64 string\n */\n var fromUint8Array = function (u8a, urlsafe) {\n if (urlsafe === void 0) { urlsafe = false; }\n return urlsafe ? _mkUriSafe(_fromUint8Array(u8a)) : _fromUint8Array(u8a);\n };\n // This trick is found broken https://github.com/dankogai/js-base64/issues/130\n // const utob = (src: string) => unescape(encodeURIComponent(src));\n // reverting good old fationed regexp\n var cb_utob = function (c) {\n if (c.length < 2) {\n var cc = c.charCodeAt(0);\n return cc < 0x80 ? c\n : cc < 0x800 ? (_fromCC(0xc0 | (cc >>> 6))\n + _fromCC(0x80 | (cc & 0x3f)))\n : (_fromCC(0xe0 | ((cc >>> 12) & 0x0f))\n + _fromCC(0x80 | ((cc >>> 6) & 0x3f))\n + _fromCC(0x80 | (cc & 0x3f)));\n }\n else {\n var cc = 0x10000\n + (c.charCodeAt(0) - 0xD800) * 0x400\n + (c.charCodeAt(1) - 0xDC00);\n return (_fromCC(0xf0 | ((cc >>> 18) & 0x07))\n + _fromCC(0x80 | ((cc >>> 12) & 0x3f))\n + _fromCC(0x80 | ((cc >>> 6) & 0x3f))\n + _fromCC(0x80 | (cc & 0x3f)));\n }\n };\n var re_utob = /[\\uD800-\\uDBFF][\\uDC00-\\uDFFFF]|[^\\x00-\\x7F]/g;\n /**\n * @deprecated should have been internal use only.\n * @param {string} src UTF-8 string\n * @returns {string} UTF-16 string\n */\n var utob = function (u) { return u.replace(re_utob, cb_utob); };\n //\n var _encode = _hasBuffer\n ? function (s) { return Buffer.from(s, 'utf8').toString('base64'); }\n : _TE\n ? function (s) { return _fromUint8Array(_TE.encode(s)); }\n : function (s) { return _btoa(utob(s)); };\n /**\n * converts a UTF-8-encoded string to a Base64 string.\n * @param {boolean} [urlsafe] if `true` make the result URL-safe\n * @returns {string} Base64 string\n */\n var encode = function (src, urlsafe) {\n if (urlsafe === void 0) { urlsafe = false; }\n return urlsafe\n ? _mkUriSafe(_encode(src))\n : _encode(src);\n };\n /**\n * converts a UTF-8-encoded string to URL-safe Base64 RFC4648 §5.\n * @returns {string} Base64 string\n */\n var encodeURI = function (src) { return encode(src, true); };\n // This trick is found broken https://github.com/dankogai/js-base64/issues/130\n // const btou = (src: string) => decodeURIComponent(escape(src));\n // reverting good old fationed regexp\n var re_btou = /[\\xC0-\\xDF][\\x80-\\xBF]|[\\xE0-\\xEF][\\x80-\\xBF]{2}|[\\xF0-\\xF7][\\x80-\\xBF]{3}/g;\n var cb_btou = function (cccc) {\n switch (cccc.length) {\n case 4:\n var cp = ((0x07 & cccc.charCodeAt(0)) << 18)\n | ((0x3f & cccc.charCodeAt(1)) << 12)\n | ((0x3f & cccc.charCodeAt(2)) << 6)\n | (0x3f & cccc.charCodeAt(3)), offset = cp - 0x10000;\n return (_fromCC((offset >>> 10) + 0xD800)\n + _fromCC((offset & 0x3FF) + 0xDC00));\n case 3:\n return _fromCC(((0x0f & cccc.charCodeAt(0)) << 12)\n | ((0x3f & cccc.charCodeAt(1)) << 6)\n | (0x3f & cccc.charCodeAt(2)));\n default:\n return _fromCC(((0x1f & cccc.charCodeAt(0)) << 6)\n | (0x3f & cccc.charCodeAt(1)));\n }\n };\n /**\n * @deprecated should have been internal use only.\n * @param {string} src UTF-16 string\n * @returns {string} UTF-8 string\n */\n var btou = function (b) { return b.replace(re_btou, cb_btou); };\n /**\n * polyfill version of `atob`\n */\n var atobPolyfill = function (asc) {\n // console.log('polyfilled');\n asc = asc.replace(/\\s+/g, '');\n if (!b64re.test(asc))\n throw new TypeError('malformed base64.');\n asc += '=='.slice(2 - (asc.length & 3));\n var u24, bin = '', r1, r2;\n for (var i = 0; i < asc.length;) {\n u24 = b64tab[asc.charAt(i++)] << 18\n | b64tab[asc.charAt(i++)] << 12\n | (r1 = b64tab[asc.charAt(i++)]) << 6\n | (r2 = b64tab[asc.charAt(i++)]);\n bin += r1 === 64 ? _fromCC(u24 >> 16 & 255)\n : r2 === 64 ? _fromCC(u24 >> 16 & 255, u24 >> 8 & 255)\n : _fromCC(u24 >> 16 & 255, u24 >> 8 & 255, u24 & 255);\n }\n return bin;\n };\n /**\n * does what `window.atob` of web browsers do.\n * @param {String} asc Base64-encoded string\n * @returns {string} binary string\n */\n var _atob = _hasatob ? function (asc) { return atob(_tidyB64(asc)); }\n : _hasBuffer ? function (asc) { return Buffer.from(asc, 'base64').toString('binary'); }\n : atobPolyfill;\n //\n var _toUint8Array = _hasBuffer\n ? function (a) { return _U8Afrom(Buffer.from(a, 'base64')); }\n : function (a) { return _U8Afrom(_atob(a), function (c) { return c.charCodeAt(0); }); };\n /**\n * converts a Base64 string to a Uint8Array.\n */\n var toUint8Array = function (a) { return _toUint8Array(_unURI(a)); };\n //\n var _decode = _hasBuffer\n ? function (a) { return Buffer.from(a, 'base64').toString('utf8'); }\n : _TD\n ? function (a) { return _TD.decode(_toUint8Array(a)); }\n : function (a) { return btou(_atob(a)); };\n var _unURI = function (a) { return _tidyB64(a.replace(/[-_]/g, function (m0) { return m0 == '-' ? '+' : '/'; })); };\n /**\n * converts a Base64 string to a UTF-8 string.\n * @param {String} src Base64 string. Both normal and URL-safe are supported\n * @returns {string} UTF-8 string\n */\n var decode = function (src) { return _decode(_unURI(src)); };\n /**\n * check if a value is a valid Base64 string\n * @param {String} src a value to check\n */\n var isValid = function (src) {\n if (typeof src !== 'string')\n return false;\n var s = src.replace(/\\s+/g, '').replace(/={0,2}$/, '');\n return !/[^\\s0-9a-zA-Z\\+/]/.test(s) || !/[^\\s0-9a-zA-Z\\-_]/.test(s);\n };\n //\n var _noEnum = function (v) {\n return {\n value: v, enumerable: false, writable: true, configurable: true\n };\n };\n /**\n * extend String.prototype with relevant methods\n */\n var extendString = function () {\n var _add = function (name, body) { return Object.defineProperty(String.prototype, name, _noEnum(body)); };\n _add('fromBase64', function () { return decode(this); });\n _add('toBase64', function (urlsafe) { return encode(this, urlsafe); });\n _add('toBase64URI', function () { return encode(this, true); });\n _add('toBase64URL', function () { return encode(this, true); });\n _add('toUint8Array', function () { return toUint8Array(this); });\n };\n /**\n * extend Uint8Array.prototype with relevant methods\n */\n var extendUint8Array = function () {\n var _add = function (name, body) { return Object.defineProperty(Uint8Array.prototype, name, _noEnum(body)); };\n _add('toBase64', function (urlsafe) { return fromUint8Array(this, urlsafe); });\n _add('toBase64URI', function () { return fromUint8Array(this, true); });\n _add('toBase64URL', function () { return fromUint8Array(this, true); });\n };\n /**\n * extend Builtin prototypes with relevant methods\n */\n var extendBuiltins = function () {\n extendString();\n extendUint8Array();\n };\n var gBase64 = {\n version: version,\n VERSION: VERSION,\n atob: _atob,\n atobPolyfill: atobPolyfill,\n btoa: _btoa,\n btoaPolyfill: btoaPolyfill,\n fromBase64: decode,\n toBase64: encode,\n encode: encode,\n encodeURI: encodeURI,\n encodeURL: encodeURI,\n utob: utob,\n btou: btou,\n decode: decode,\n isValid: isValid,\n fromUint8Array: fromUint8Array,\n toUint8Array: toUint8Array,\n extendString: extendString,\n extendUint8Array: extendUint8Array,\n extendBuiltins: extendBuiltins\n };\n //\n // export Base64 to the namespace\n //\n // ES5 is yet to have Object.assign() that may make transpilers unhappy.\n // gBase64.Base64 = Object.assign({}, gBase64);\n gBase64.Base64 = {};\n Object.keys(gBase64).forEach(function (k) { return gBase64.Base64[k] = gBase64[k]; });\n return gBase64;\n}));\n","/**\n * Helpers.\n */\n\nvar s = 1000;\nvar m = s * 60;\nvar h = m * 60;\nvar d = h * 24;\nvar w = d * 7;\nvar y = d * 365.25;\n\n/**\n * Parse or format the given `val`.\n *\n * Options:\n *\n * - `long` verbose formatting [false]\n *\n * @param {String|Number} val\n * @param {Object} [options]\n * @throws {Error} throw an error if val is not a non-empty string or a number\n * @return {String|Number}\n * @api public\n */\n\nmodule.exports = function(val, options) {\n options = options || {};\n var type = typeof val;\n if (type === 'string' && val.length > 0) {\n return parse(val);\n } else if (type === 'number' && isFinite(val)) {\n return options.long ? fmtLong(val) : fmtShort(val);\n }\n throw new Error(\n 'val is not a non-empty string or a valid number. val=' +\n JSON.stringify(val)\n );\n};\n\n/**\n * Parse the given `str` and return milliseconds.\n *\n * @param {String} str\n * @return {Number}\n * @api private\n */\n\nfunction parse(str) {\n str = String(str);\n if (str.length > 100) {\n return;\n }\n var match = /^(-?(?:\\d+)?\\.?\\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(\n str\n );\n if (!match) {\n return;\n }\n var n = parseFloat(match[1]);\n var type = (match[2] || 'ms').toLowerCase();\n switch (type) {\n case 'years':\n case 'year':\n case 'yrs':\n case 'yr':\n case 'y':\n return n * y;\n case 'weeks':\n case 'week':\n case 'w':\n return n * w;\n case 'days':\n case 'day':\n case 'd':\n return n * d;\n case 'hours':\n case 'hour':\n case 'hrs':\n case 'hr':\n case 'h':\n return n * h;\n case 'minutes':\n case 'minute':\n case 'mins':\n case 'min':\n case 'm':\n return n * m;\n case 'seconds':\n case 'second':\n case 'secs':\n case 'sec':\n case 's':\n return n * s;\n case 'milliseconds':\n case 'millisecond':\n case 'msecs':\n case 'msec':\n case 'ms':\n return n;\n default:\n return undefined;\n }\n}\n\n/**\n * Short format for `ms`.\n *\n * @param {Number} ms\n * @return {String}\n * @api private\n */\n\nfunction fmtShort(ms) {\n var msAbs = Math.abs(ms);\n if (msAbs >= d) {\n return Math.round(ms / d) + 'd';\n }\n if (msAbs >= h) {\n return Math.round(ms / h) + 'h';\n }\n if (msAbs >= m) {\n return Math.round(ms / m) + 'm';\n }\n if (msAbs >= s) {\n return Math.round(ms / s) + 's';\n }\n return ms + 'ms';\n}\n\n/**\n * Long format for `ms`.\n *\n * @param {Number} ms\n * @return {String}\n * @api private\n */\n\nfunction fmtLong(ms) {\n var msAbs = Math.abs(ms);\n if (msAbs >= d) {\n return plural(ms, msAbs, d, 'day');\n }\n if (msAbs >= h) {\n return plural(ms, msAbs, h, 'hour');\n }\n if (msAbs >= m) {\n return plural(ms, msAbs, m, 'minute');\n }\n if (msAbs >= s) {\n return plural(ms, msAbs, s, 'second');\n }\n return ms + ' ms';\n}\n\n/**\n * Pluralization helper.\n */\n\nfunction plural(ms, msAbs, n, name) {\n var isPlural = msAbs >= n * 1.5;\n return Math.round(ms / n) + ' ' + name + (isPlural ? 's' : '');\n}\n","function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n\n for (var i = 0, arr2 = new Array(len); i < len; i++) {\n arr2[i] = arr[i];\n }\n\n return arr2;\n}\n\nmodule.exports = _arrayLikeToArray, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var arrayLikeToArray = require(\"./arrayLikeToArray.js\");\n\nfunction _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return arrayLikeToArray(arr);\n}\n\nmodule.exports = _arrayWithoutHoles, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return self;\n}\n\nmodule.exports = _assertThisInitialized, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n}\n\nfunction _asyncToGenerator(fn) {\n return function () {\n var self = this,\n args = arguments;\n return new Promise(function (resolve, reject) {\n var gen = fn.apply(self, args);\n\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n\n _next(undefined);\n });\n };\n}\n\nmodule.exports = _asyncToGenerator, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\n\nmodule.exports = _classCallCheck, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var setPrototypeOf = require(\"./setPrototypeOf.js\");\n\nvar isNativeReflectConstruct = require(\"./isNativeReflectConstruct.js\");\n\nfunction _construct(Parent, args, Class) {\n if (isNativeReflectConstruct()) {\n module.exports = _construct = Reflect.construct.bind(), module.exports.__esModule = true, module.exports[\"default\"] = module.exports;\n } else {\n module.exports = _construct = function _construct(Parent, args, Class) {\n var a = [null];\n a.push.apply(a, args);\n var Constructor = Function.bind.apply(Parent, a);\n var instance = new Constructor();\n if (Class) setPrototypeOf(instance, Class.prototype);\n return instance;\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;\n }\n\n return _construct.apply(null, arguments);\n}\n\nmodule.exports = _construct, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\n\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n Object.defineProperty(Constructor, \"prototype\", {\n writable: false\n });\n return Constructor;\n}\n\nmodule.exports = _createClass, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nmodule.exports = _defineProperty, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _getPrototypeOf(o) {\n module.exports = _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;\n return _getPrototypeOf(o);\n}\n\nmodule.exports = _getPrototypeOf, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var setPrototypeOf = require(\"./setPrototypeOf.js\");\n\nfunction _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n Object.defineProperty(subClass, \"prototype\", {\n writable: false\n });\n if (superClass) setPrototypeOf(subClass, superClass);\n}\n\nmodule.exports = _inherits, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n \"default\": obj\n };\n}\n\nmodule.exports = _interopRequireDefault, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _isNativeFunction(fn) {\n return Function.toString.call(fn).indexOf(\"[native code]\") !== -1;\n}\n\nmodule.exports = _isNativeFunction, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _isNativeReflectConstruct() {\n if (typeof Reflect === \"undefined\" || !Reflect.construct) return false;\n if (Reflect.construct.sham) return false;\n if (typeof Proxy === \"function\") return true;\n\n try {\n Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {}));\n return true;\n } catch (e) {\n return false;\n }\n}\n\nmodule.exports = _isNativeReflectConstruct, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter);\n}\n\nmodule.exports = _iterableToArray, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\n\nmodule.exports = _nonIterableSpread, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var objectWithoutPropertiesLoose = require(\"./objectWithoutPropertiesLoose.js\");\n\nfunction _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n var target = objectWithoutPropertiesLoose(source, excluded);\n var key, i;\n\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n\n for (i = 0; i < sourceSymbolKeys.length; i++) {\n key = sourceSymbolKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;\n target[key] = source[key];\n }\n }\n\n return target;\n}\n\nmodule.exports = _objectWithoutProperties, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n\n return target;\n}\n\nmodule.exports = _objectWithoutPropertiesLoose, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var _typeof = require(\"./typeof.js\")[\"default\"];\n\nvar assertThisInitialized = require(\"./assertThisInitialized.js\");\n\nfunction _possibleConstructorReturn(self, call) {\n if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) {\n return call;\n } else if (call !== void 0) {\n throw new TypeError(\"Derived constructors may only return object or undefined\");\n }\n\n return assertThisInitialized(self);\n}\n\nmodule.exports = _possibleConstructorReturn, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var _typeof = require(\"./typeof.js\")[\"default\"];\n\nfunction _regeneratorRuntime() {\n \"use strict\";\n /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */\n\n module.exports = _regeneratorRuntime = function _regeneratorRuntime() {\n return exports;\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;\n var exports = {},\n Op = Object.prototype,\n hasOwn = Op.hasOwnProperty,\n $Symbol = \"function\" == typeof Symbol ? Symbol : {},\n iteratorSymbol = $Symbol.iterator || \"@@iterator\",\n asyncIteratorSymbol = $Symbol.asyncIterator || \"@@asyncIterator\",\n toStringTagSymbol = $Symbol.toStringTag || \"@@toStringTag\";\n\n function define(obj, key, value) {\n return Object.defineProperty(obj, key, {\n value: value,\n enumerable: !0,\n configurable: !0,\n writable: !0\n }), obj[key];\n }\n\n try {\n define({}, \"\");\n } catch (err) {\n define = function define(obj, key, value) {\n return obj[key] = value;\n };\n }\n\n function wrap(innerFn, outerFn, self, tryLocsList) {\n var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator,\n generator = Object.create(protoGenerator.prototype),\n context = new Context(tryLocsList || []);\n return generator._invoke = function (innerFn, self, context) {\n var state = \"suspendedStart\";\n return function (method, arg) {\n if (\"executing\" === state) throw new Error(\"Generator is already running\");\n\n if (\"completed\" === state) {\n if (\"throw\" === method) throw arg;\n return doneResult();\n }\n\n for (context.method = method, context.arg = arg;;) {\n var delegate = context.delegate;\n\n if (delegate) {\n var delegateResult = maybeInvokeDelegate(delegate, context);\n\n if (delegateResult) {\n if (delegateResult === ContinueSentinel) continue;\n return delegateResult;\n }\n }\n\n if (\"next\" === context.method) context.sent = context._sent = context.arg;else if (\"throw\" === context.method) {\n if (\"suspendedStart\" === state) throw state = \"completed\", context.arg;\n context.dispatchException(context.arg);\n } else \"return\" === context.method && context.abrupt(\"return\", context.arg);\n state = \"executing\";\n var record = tryCatch(innerFn, self, context);\n\n if (\"normal\" === record.type) {\n if (state = context.done ? \"completed\" : \"suspendedYield\", record.arg === ContinueSentinel) continue;\n return {\n value: record.arg,\n done: context.done\n };\n }\n\n \"throw\" === record.type && (state = \"completed\", context.method = \"throw\", context.arg = record.arg);\n }\n };\n }(innerFn, self, context), generator;\n }\n\n function tryCatch(fn, obj, arg) {\n try {\n return {\n type: \"normal\",\n arg: fn.call(obj, arg)\n };\n } catch (err) {\n return {\n type: \"throw\",\n arg: err\n };\n }\n }\n\n exports.wrap = wrap;\n var ContinueSentinel = {};\n\n function Generator() {}\n\n function GeneratorFunction() {}\n\n function GeneratorFunctionPrototype() {}\n\n var IteratorPrototype = {};\n define(IteratorPrototype, iteratorSymbol, function () {\n return this;\n });\n var getProto = Object.getPrototypeOf,\n NativeIteratorPrototype = getProto && getProto(getProto(values([])));\n NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype);\n var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype);\n\n function defineIteratorMethods(prototype) {\n [\"next\", \"throw\", \"return\"].forEach(function (method) {\n define(prototype, method, function (arg) {\n return this._invoke(method, arg);\n });\n });\n }\n\n function AsyncIterator(generator, PromiseImpl) {\n function invoke(method, arg, resolve, reject) {\n var record = tryCatch(generator[method], generator, arg);\n\n if (\"throw\" !== record.type) {\n var result = record.arg,\n value = result.value;\n return value && \"object\" == _typeof(value) && hasOwn.call(value, \"__await\") ? PromiseImpl.resolve(value.__await).then(function (value) {\n invoke(\"next\", value, resolve, reject);\n }, function (err) {\n invoke(\"throw\", err, resolve, reject);\n }) : PromiseImpl.resolve(value).then(function (unwrapped) {\n result.value = unwrapped, resolve(result);\n }, function (error) {\n return invoke(\"throw\", error, resolve, reject);\n });\n }\n\n reject(record.arg);\n }\n\n var previousPromise;\n\n this._invoke = function (method, arg) {\n function callInvokeWithMethodAndArg() {\n return new PromiseImpl(function (resolve, reject) {\n invoke(method, arg, resolve, reject);\n });\n }\n\n return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg();\n };\n }\n\n function maybeInvokeDelegate(delegate, context) {\n var method = delegate.iterator[context.method];\n\n if (undefined === method) {\n if (context.delegate = null, \"throw\" === context.method) {\n if (delegate.iterator[\"return\"] && (context.method = \"return\", context.arg = undefined, maybeInvokeDelegate(delegate, context), \"throw\" === context.method)) return ContinueSentinel;\n context.method = \"throw\", context.arg = new TypeError(\"The iterator does not provide a 'throw' method\");\n }\n\n return ContinueSentinel;\n }\n\n var record = tryCatch(method, delegate.iterator, context.arg);\n if (\"throw\" === record.type) return context.method = \"throw\", context.arg = record.arg, context.delegate = null, ContinueSentinel;\n var info = record.arg;\n return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, \"return\" !== context.method && (context.method = \"next\", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = \"throw\", context.arg = new TypeError(\"iterator result is not an object\"), context.delegate = null, ContinueSentinel);\n }\n\n function pushTryEntry(locs) {\n var entry = {\n tryLoc: locs[0]\n };\n 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry);\n }\n\n function resetTryEntry(entry) {\n var record = entry.completion || {};\n record.type = \"normal\", delete record.arg, entry.completion = record;\n }\n\n function Context(tryLocsList) {\n this.tryEntries = [{\n tryLoc: \"root\"\n }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0);\n }\n\n function values(iterable) {\n if (iterable) {\n var iteratorMethod = iterable[iteratorSymbol];\n if (iteratorMethod) return iteratorMethod.call(iterable);\n if (\"function\" == typeof iterable.next) return iterable;\n\n if (!isNaN(iterable.length)) {\n var i = -1,\n next = function next() {\n for (; ++i < iterable.length;) {\n if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next;\n }\n\n return next.value = undefined, next.done = !0, next;\n };\n\n return next.next = next;\n }\n }\n\n return {\n next: doneResult\n };\n }\n\n function doneResult() {\n return {\n value: undefined,\n done: !0\n };\n }\n\n return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, \"constructor\", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, \"constructor\", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, \"GeneratorFunction\"), exports.isGeneratorFunction = function (genFun) {\n var ctor = \"function\" == typeof genFun && genFun.constructor;\n return !!ctor && (ctor === GeneratorFunction || \"GeneratorFunction\" === (ctor.displayName || ctor.name));\n }, exports.mark = function (genFun) {\n return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, \"GeneratorFunction\")), genFun.prototype = Object.create(Gp), genFun;\n }, exports.awrap = function (arg) {\n return {\n __await: arg\n };\n }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () {\n return this;\n }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) {\n void 0 === PromiseImpl && (PromiseImpl = Promise);\n var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl);\n return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) {\n return result.done ? result.value : iter.next();\n });\n }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, \"Generator\"), define(Gp, iteratorSymbol, function () {\n return this;\n }), define(Gp, \"toString\", function () {\n return \"[object Generator]\";\n }), exports.keys = function (object) {\n var keys = [];\n\n for (var key in object) {\n keys.push(key);\n }\n\n return keys.reverse(), function next() {\n for (; keys.length;) {\n var key = keys.pop();\n if (key in object) return next.value = key, next.done = !1, next;\n }\n\n return next.done = !0, next;\n };\n }, exports.values = values, Context.prototype = {\n constructor: Context,\n reset: function reset(skipTempReset) {\n if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = \"next\", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) {\n \"t\" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined);\n }\n },\n stop: function stop() {\n this.done = !0;\n var rootRecord = this.tryEntries[0].completion;\n if (\"throw\" === rootRecord.type) throw rootRecord.arg;\n return this.rval;\n },\n dispatchException: function dispatchException(exception) {\n if (this.done) throw exception;\n var context = this;\n\n function handle(loc, caught) {\n return record.type = \"throw\", record.arg = exception, context.next = loc, caught && (context.method = \"next\", context.arg = undefined), !!caught;\n }\n\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i],\n record = entry.completion;\n if (\"root\" === entry.tryLoc) return handle(\"end\");\n\n if (entry.tryLoc <= this.prev) {\n var hasCatch = hasOwn.call(entry, \"catchLoc\"),\n hasFinally = hasOwn.call(entry, \"finallyLoc\");\n\n if (hasCatch && hasFinally) {\n if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0);\n if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc);\n } else if (hasCatch) {\n if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0);\n } else {\n if (!hasFinally) throw new Error(\"try statement without catch or finally\");\n if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc);\n }\n }\n }\n },\n abrupt: function abrupt(type, arg) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n\n if (entry.tryLoc <= this.prev && hasOwn.call(entry, \"finallyLoc\") && this.prev < entry.finallyLoc) {\n var finallyEntry = entry;\n break;\n }\n }\n\n finallyEntry && (\"break\" === type || \"continue\" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null);\n var record = finallyEntry ? finallyEntry.completion : {};\n return record.type = type, record.arg = arg, finallyEntry ? (this.method = \"next\", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record);\n },\n complete: function complete(record, afterLoc) {\n if (\"throw\" === record.type) throw record.arg;\n return \"break\" === record.type || \"continue\" === record.type ? this.next = record.arg : \"return\" === record.type ? (this.rval = this.arg = record.arg, this.method = \"return\", this.next = \"end\") : \"normal\" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel;\n },\n finish: function finish(finallyLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel;\n }\n },\n \"catch\": function _catch(tryLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n\n if (entry.tryLoc === tryLoc) {\n var record = entry.completion;\n\n if (\"throw\" === record.type) {\n var thrown = record.arg;\n resetTryEntry(entry);\n }\n\n return thrown;\n }\n }\n\n throw new Error(\"illegal catch attempt\");\n },\n delegateYield: function delegateYield(iterable, resultName, nextLoc) {\n return this.delegate = {\n iterator: values(iterable),\n resultName: resultName,\n nextLoc: nextLoc\n }, \"next\" === this.method && (this.arg = undefined), ContinueSentinel;\n }\n }, exports;\n}\n\nmodule.exports = _regeneratorRuntime, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _setPrototypeOf(o, p) {\n module.exports = _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;\n return _setPrototypeOf(o, p);\n}\n\nmodule.exports = _setPrototypeOf, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var arrayWithoutHoles = require(\"./arrayWithoutHoles.js\");\n\nvar iterableToArray = require(\"./iterableToArray.js\");\n\nvar unsupportedIterableToArray = require(\"./unsupportedIterableToArray.js\");\n\nvar nonIterableSpread = require(\"./nonIterableSpread.js\");\n\nfunction _toConsumableArray(arr) {\n return arrayWithoutHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableSpread();\n}\n\nmodule.exports = _toConsumableArray, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n return (module.exports = _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports), _typeof(obj);\n}\n\nmodule.exports = _typeof, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var arrayLikeToArray = require(\"./arrayLikeToArray.js\");\n\nfunction _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);\n}\n\nmodule.exports = _unsupportedIterableToArray, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var getPrototypeOf = require(\"./getPrototypeOf.js\");\n\nvar setPrototypeOf = require(\"./setPrototypeOf.js\");\n\nvar isNativeFunction = require(\"./isNativeFunction.js\");\n\nvar construct = require(\"./construct.js\");\n\nfunction _wrapNativeSuper(Class) {\n var _cache = typeof Map === \"function\" ? new Map() : undefined;\n\n module.exports = _wrapNativeSuper = function _wrapNativeSuper(Class) {\n if (Class === null || !isNativeFunction(Class)) return Class;\n\n if (typeof Class !== \"function\") {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n\n if (typeof _cache !== \"undefined\") {\n if (_cache.has(Class)) return _cache.get(Class);\n\n _cache.set(Class, Wrapper);\n }\n\n function Wrapper() {\n return construct(Class, arguments, getPrototypeOf(this).constructor);\n }\n\n Wrapper.prototype = Object.create(Class.prototype, {\n constructor: {\n value: Wrapper,\n enumerable: false,\n writable: true,\n configurable: true\n }\n });\n return setPrototypeOf(Wrapper, Class);\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;\n return _wrapNativeSuper(Class);\n}\n\nmodule.exports = _wrapNativeSuper, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","// TODO(Babel 8): Remove this file.\n\nvar runtime = require(\"../helpers/regeneratorRuntime\")();\nmodule.exports = runtime;\n\n// Copied from https://github.com/facebook/regenerator/blob/main/packages/runtime/runtime.js#L736=\ntry {\n regeneratorRuntime = runtime;\n} catch (accidentalStrictMode) {\n if (typeof globalThis === \"object\") {\n globalThis.regeneratorRuntime = runtime;\n } else {\n Function(\"r\", \"regeneratorRuntime = r\")(runtime);\n }\n}\n","import './webcrypto-shim.mjs'\nexport default window.crypto\n","/**\n * @file Web Cryptography API shim\n * @author Artem S Vybornov \n * @license MIT\n */\n(function (global, factory) {\n if (typeof define === 'function' && define.amd) {\n // AMD. Register as an anonymous module.\n define([], function () {\n return factory(global);\n });\n } else if (typeof module === 'object' && module.exports) {\n // CommonJS-like environments that support module.exports\n module.exports = factory(global);\n } else {\n factory(global);\n }\n}(typeof self !== 'undefined' ? self : this, function (global) {\n 'use strict';\n\n if ( typeof Promise !== 'function' )\n throw \"Promise support required\";\n\n var _crypto = global.crypto || global.msCrypto;\n if ( !_crypto ) return;\n\n var _subtle = _crypto.subtle || _crypto.webkitSubtle;\n if ( !_subtle ) return;\n\n var _Crypto = global.Crypto || _crypto.constructor || Object,\n _SubtleCrypto = global.SubtleCrypto || _subtle.constructor || Object,\n _CryptoKey = global.CryptoKey || global.Key || Object;\n\n var isEdge = global.navigator.userAgent.indexOf('Edge/') > -1;\n var isIE = !!global.msCrypto && !isEdge;\n var isWebkit = !_crypto.subtle && !!_crypto.webkitSubtle;\n if ( !isIE && !isWebkit ) return;\n\n function s2a ( s ) {\n return btoa(s).replace(/\\=+$/, '').replace(/\\+/g, '-').replace(/\\//g, '_');\n }\n\n function a2s ( s ) {\n s += '===', s = s.slice( 0, -s.length % 4 );\n return atob( s.replace(/-/g, '+').replace(/_/g, '/') );\n }\n\n function s2b ( s ) {\n var b = new Uint8Array(s.length);\n for ( var i = 0; i < s.length; i++ ) b[i] = s.charCodeAt(i);\n return b;\n }\n\n function b2s ( b ) {\n if ( b instanceof ArrayBuffer ) b = new Uint8Array(b);\n return String.fromCharCode.apply( String, b );\n }\n\n function alg ( a ) {\n var r = { 'name': (a.name || a || '').toUpperCase().replace('V','v') };\n switch ( r.name ) {\n case 'SHA-1':\n case 'SHA-256':\n case 'SHA-384':\n case 'SHA-512':\n break;\n case 'AES-CBC':\n case 'AES-GCM':\n case 'AES-KW':\n if ( a.length ) r['length'] = a.length;\n break;\n case 'HMAC':\n if ( a.hash ) r['hash'] = alg(a.hash);\n if ( a.length ) r['length'] = a.length;\n break;\n case 'RSAES-PKCS1-v1_5':\n if ( a.publicExponent ) r['publicExponent'] = new Uint8Array(a.publicExponent);\n if ( a.modulusLength ) r['modulusLength'] = a.modulusLength;\n break;\n case 'RSASSA-PKCS1-v1_5':\n case 'RSA-OAEP':\n if ( a.hash ) r['hash'] = alg(a.hash);\n if ( a.publicExponent ) r['publicExponent'] = new Uint8Array(a.publicExponent);\n if ( a.modulusLength ) r['modulusLength'] = a.modulusLength;\n break;\n default:\n throw new SyntaxError(\"Bad algorithm name\");\n }\n return r;\n };\n\n function jwkAlg ( a ) {\n return {\n 'HMAC': {\n 'SHA-1': 'HS1',\n 'SHA-256': 'HS256',\n 'SHA-384': 'HS384',\n 'SHA-512': 'HS512',\n },\n 'RSASSA-PKCS1-v1_5': {\n 'SHA-1': 'RS1',\n 'SHA-256': 'RS256',\n 'SHA-384': 'RS384',\n 'SHA-512': 'RS512',\n },\n 'RSAES-PKCS1-v1_5': {\n '': 'RSA1_5',\n },\n 'RSA-OAEP': {\n 'SHA-1': 'RSA-OAEP',\n 'SHA-256': 'RSA-OAEP-256',\n },\n 'AES-KW': {\n '128': 'A128KW',\n '192': 'A192KW',\n '256': 'A256KW',\n },\n 'AES-GCM': {\n '128': 'A128GCM',\n '192': 'A192GCM',\n '256': 'A256GCM',\n },\n 'AES-CBC': {\n '128': 'A128CBC',\n '192': 'A192CBC',\n '256': 'A256CBC',\n },\n }[a.name][ ( a.hash || {} ).name || a.length || '' ];\n }\n\n function b2jwk ( k ) {\n if ( k instanceof ArrayBuffer || k instanceof Uint8Array ) k = JSON.parse( decodeURIComponent( escape( b2s(k) ) ) );\n var jwk = { 'kty': k.kty, 'alg': k.alg, 'ext': k.ext || k.extractable };\n switch ( jwk.kty ) {\n case 'oct':\n jwk.k = k.k;\n case 'RSA':\n [ 'n', 'e', 'd', 'p', 'q', 'dp', 'dq', 'qi', 'oth' ].forEach( function ( x ) { if ( x in k ) jwk[x] = k[x] } );\n break;\n default:\n throw new TypeError(\"Unsupported key type\");\n }\n return jwk;\n }\n\n function jwk2b ( k ) {\n var jwk = b2jwk(k);\n if ( isIE ) jwk['extractable'] = jwk.ext, delete jwk.ext;\n return s2b( unescape( encodeURIComponent( JSON.stringify(jwk) ) ) ).buffer;\n }\n\n function pkcs2jwk ( k ) {\n var info = b2der(k), prv = false;\n if ( info.length > 2 ) prv = true, info.shift(); // remove version from PKCS#8 PrivateKeyInfo structure\n var jwk = { 'ext': true };\n switch ( info[0][0] ) {\n case '1.2.840.113549.1.1.1':\n var rsaComp = [ 'n', 'e', 'd', 'p', 'q', 'dp', 'dq', 'qi' ],\n rsaKey = b2der( info[1] );\n if ( prv ) rsaKey.shift(); // remove version from PKCS#1 RSAPrivateKey structure\n for ( var i = 0; i < rsaKey.length; i++ ) {\n if ( !rsaKey[i][0] ) rsaKey[i] = rsaKey[i].subarray(1);\n jwk[ rsaComp[i] ] = s2a( b2s( rsaKey[i] ) );\n }\n jwk['kty'] = 'RSA';\n break;\n default:\n throw new TypeError(\"Unsupported key type\");\n }\n return jwk;\n }\n\n function jwk2pkcs ( k ) {\n var key, info = [ [ '', null ] ], prv = false;\n switch ( k.kty ) {\n case 'RSA':\n var rsaComp = [ 'n', 'e', 'd', 'p', 'q', 'dp', 'dq', 'qi' ],\n rsaKey = [];\n for ( var i = 0; i < rsaComp.length; i++ ) {\n if ( !( rsaComp[i] in k ) ) break;\n var b = rsaKey[i] = s2b( a2s( k[ rsaComp[i] ] ) );\n if ( b[0] & 0x80 ) rsaKey[i] = new Uint8Array(b.length + 1), rsaKey[i].set( b, 1 );\n }\n if ( rsaKey.length > 2 ) prv = true, rsaKey.unshift( new Uint8Array([0]) ); // add version to PKCS#1 RSAPrivateKey structure\n info[0][0] = '1.2.840.113549.1.1.1';\n key = rsaKey;\n break;\n default:\n throw new TypeError(\"Unsupported key type\");\n }\n info.push( new Uint8Array( der2b(key) ).buffer );\n if ( !prv ) info[1] = { 'tag': 0x03, 'value': info[1] };\n else info.unshift( new Uint8Array([0]) ); // add version to PKCS#8 PrivateKeyInfo structure\n return new Uint8Array( der2b(info) ).buffer;\n }\n\n var oid2str = { 'KoZIhvcNAQEB': '1.2.840.113549.1.1.1' },\n str2oid = { '1.2.840.113549.1.1.1': 'KoZIhvcNAQEB' };\n\n function b2der ( buf, ctx ) {\n if ( buf instanceof ArrayBuffer ) buf = new Uint8Array(buf);\n if ( !ctx ) ctx = { pos: 0, end: buf.length };\n\n if ( ctx.end - ctx.pos < 2 || ctx.end > buf.length ) throw new RangeError(\"Malformed DER\");\n\n var tag = buf[ctx.pos++],\n len = buf[ctx.pos++];\n\n if ( len >= 0x80 ) {\n len &= 0x7f;\n if ( ctx.end - ctx.pos < len ) throw new RangeError(\"Malformed DER\");\n for ( var xlen = 0; len--; ) xlen <<= 8, xlen |= buf[ctx.pos++];\n len = xlen;\n }\n\n if ( ctx.end - ctx.pos < len ) throw new RangeError(\"Malformed DER\");\n\n var rv;\n\n switch ( tag ) {\n case 0x02: // Universal Primitive INTEGER\n rv = buf.subarray( ctx.pos, ctx.pos += len );\n break;\n case 0x03: // Universal Primitive BIT STRING\n if ( buf[ctx.pos++] ) throw new Error( \"Unsupported bit string\" );\n len--;\n case 0x04: // Universal Primitive OCTET STRING\n rv = new Uint8Array( buf.subarray( ctx.pos, ctx.pos += len ) ).buffer;\n break;\n case 0x05: // Universal Primitive NULL\n rv = null;\n break;\n case 0x06: // Universal Primitive OBJECT IDENTIFIER\n var oid = btoa( b2s( buf.subarray( ctx.pos, ctx.pos += len ) ) );\n if ( !( oid in oid2str ) ) throw new Error( \"Unsupported OBJECT ID \" + oid );\n rv = oid2str[oid];\n break;\n case 0x30: // Universal Constructed SEQUENCE\n rv = [];\n for ( var end = ctx.pos + len; ctx.pos < end; ) rv.push( b2der( buf, ctx ) );\n break;\n default:\n throw new Error( \"Unsupported DER tag 0x\" + tag.toString(16) );\n }\n\n return rv;\n }\n\n function der2b ( val, buf ) {\n if ( !buf ) buf = [];\n\n var tag = 0, len = 0,\n pos = buf.length + 2;\n\n buf.push( 0, 0 ); // placeholder\n\n if ( val instanceof Uint8Array ) { // Universal Primitive INTEGER\n tag = 0x02, len = val.length;\n for ( var i = 0; i < len; i++ ) buf.push( val[i] );\n }\n else if ( val instanceof ArrayBuffer ) { // Universal Primitive OCTET STRING\n tag = 0x04, len = val.byteLength, val = new Uint8Array(val);\n for ( var i = 0; i < len; i++ ) buf.push( val[i] );\n }\n else if ( val === null ) { // Universal Primitive NULL\n tag = 0x05, len = 0;\n }\n else if ( typeof val === 'string' && val in str2oid ) { // Universal Primitive OBJECT IDENTIFIER\n var oid = s2b( atob( str2oid[val] ) );\n tag = 0x06, len = oid.length;\n for ( var i = 0; i < len; i++ ) buf.push( oid[i] );\n }\n else if ( val instanceof Array ) { // Universal Constructed SEQUENCE\n for ( var i = 0; i < val.length; i++ ) der2b( val[i], buf );\n tag = 0x30, len = buf.length - pos;\n }\n else if ( typeof val === 'object' && val.tag === 0x03 && val.value instanceof ArrayBuffer ) { // Tag hint\n val = new Uint8Array(val.value), tag = 0x03, len = val.byteLength;\n buf.push(0); for ( var i = 0; i < len; i++ ) buf.push( val[i] );\n len++;\n }\n else {\n throw new Error( \"Unsupported DER value \" + val );\n }\n\n if ( len >= 0x80 ) {\n var xlen = len, len = 4;\n buf.splice( pos, 0, (xlen >> 24) & 0xff, (xlen >> 16) & 0xff, (xlen >> 8) & 0xff, xlen & 0xff );\n while ( len > 1 && !(xlen >> 24) ) xlen <<= 8, len--;\n if ( len < 4 ) buf.splice( pos, 4 - len );\n len |= 0x80;\n }\n\n buf.splice( pos - 2, 2, tag, len );\n\n return buf;\n }\n\n function CryptoKey ( key, alg, ext, use ) {\n Object.defineProperties( this, {\n _key: {\n value: key\n },\n type: {\n value: key.type,\n enumerable: true,\n },\n extractable: {\n value: (ext === undefined) ? key.extractable : ext,\n enumerable: true,\n },\n algorithm: {\n value: (alg === undefined) ? key.algorithm : alg,\n enumerable: true,\n },\n usages: {\n value: (use === undefined) ? key.usages : use,\n enumerable: true,\n },\n });\n }\n\n function isPubKeyUse ( u ) {\n return u === 'verify' || u === 'encrypt' || u === 'wrapKey';\n }\n\n function isPrvKeyUse ( u ) {\n return u === 'sign' || u === 'decrypt' || u === 'unwrapKey';\n }\n\n [ 'generateKey', 'importKey', 'unwrapKey' ]\n .forEach( function ( m ) {\n var _fn = _subtle[m];\n\n _subtle[m] = function ( a, b, c ) {\n var args = [].slice.call(arguments),\n ka, kx, ku;\n\n switch ( m ) {\n case 'generateKey':\n ka = alg(a), kx = b, ku = c;\n break;\n case 'importKey':\n ka = alg(c), kx = args[3], ku = args[4];\n if ( a === 'jwk' ) {\n b = b2jwk(b);\n if ( !b.alg ) b.alg = jwkAlg(ka);\n if ( !b.key_ops ) b.key_ops = ( b.kty !== 'oct' ) ? ( 'd' in b ) ? ku.filter(isPrvKeyUse) : ku.filter(isPubKeyUse) : ku.slice();\n args[1] = jwk2b(b);\n }\n break;\n case 'unwrapKey':\n ka = args[4], kx = args[5], ku = args[6];\n args[2] = c._key;\n break;\n }\n\n if ( m === 'generateKey' && ka.name === 'HMAC' && ka.hash ) {\n ka.length = ka.length || { 'SHA-1': 512, 'SHA-256': 512, 'SHA-384': 1024, 'SHA-512': 1024 }[ka.hash.name];\n return _subtle.importKey( 'raw', _crypto.getRandomValues( new Uint8Array( (ka.length+7)>>3 ) ), ka, kx, ku );\n }\n\n if ( isWebkit && m === 'generateKey' && ka.name === 'RSASSA-PKCS1-v1_5' && ( !ka.modulusLength || ka.modulusLength >= 2048 ) ) {\n a = alg(a), a.name = 'RSAES-PKCS1-v1_5', delete a.hash;\n return _subtle.generateKey( a, true, [ 'encrypt', 'decrypt' ] )\n .then( function ( k ) {\n return Promise.all([\n _subtle.exportKey( 'jwk', k.publicKey ),\n _subtle.exportKey( 'jwk', k.privateKey ),\n ]);\n })\n .then( function ( keys ) {\n keys[0].alg = keys[1].alg = jwkAlg(ka);\n keys[0].key_ops = ku.filter(isPubKeyUse), keys[1].key_ops = ku.filter(isPrvKeyUse);\n return Promise.all([\n _subtle.importKey( 'jwk', keys[0], ka, true, keys[0].key_ops ),\n _subtle.importKey( 'jwk', keys[1], ka, kx, keys[1].key_ops ),\n ]);\n })\n .then( function ( keys ) {\n return {\n publicKey: keys[0],\n privateKey: keys[1],\n };\n });\n }\n\n if ( ( isWebkit || ( isIE && ( ka.hash || {} ).name === 'SHA-1' ) )\n && m === 'importKey' && a === 'jwk' && ka.name === 'HMAC' && b.kty === 'oct' ) {\n return _subtle.importKey( 'raw', s2b( a2s(b.k) ), c, args[3], args[4] );\n }\n\n if ( isWebkit && m === 'importKey' && ( a === 'spki' || a === 'pkcs8' ) ) {\n return _subtle.importKey( 'jwk', pkcs2jwk(b), c, args[3], args[4] );\n }\n\n if ( isIE && m === 'unwrapKey' ) {\n return _subtle.decrypt( args[3], c, b )\n .then( function ( k ) {\n return _subtle.importKey( a, k, args[4], args[5], args[6] );\n });\n }\n\n var op;\n try {\n op = _fn.apply( _subtle, args );\n }\n catch ( e ) {\n return Promise.reject(e);\n }\n\n if ( isIE ) {\n op = new Promise( function ( res, rej ) {\n op.onabort =\n op.onerror = function ( e ) { rej(e) };\n op.oncomplete = function ( r ) { res(r.target.result) };\n });\n }\n\n op = op.then( function ( k ) {\n if ( ka.name === 'HMAC' ) {\n if ( !ka.length ) ka.length = 8 * k.algorithm.length;\n }\n if ( ka.name.search('RSA') == 0 ) {\n if ( !ka.modulusLength ) ka.modulusLength = (k.publicKey || k).algorithm.modulusLength;\n if ( !ka.publicExponent ) ka.publicExponent = (k.publicKey || k).algorithm.publicExponent;\n }\n if ( k.publicKey && k.privateKey ) {\n k = {\n publicKey: new CryptoKey( k.publicKey, ka, kx, ku.filter(isPubKeyUse) ),\n privateKey: new CryptoKey( k.privateKey, ka, kx, ku.filter(isPrvKeyUse) ),\n };\n }\n else {\n k = new CryptoKey( k, ka, kx, ku );\n }\n return k;\n });\n\n return op;\n }\n });\n\n [ 'exportKey', 'wrapKey' ]\n .forEach( function ( m ) {\n var _fn = _subtle[m];\n\n _subtle[m] = function ( a, b, c ) {\n var args = [].slice.call(arguments);\n\n switch ( m ) {\n case 'exportKey':\n args[1] = b._key;\n break;\n case 'wrapKey':\n args[1] = b._key, args[2] = c._key;\n break;\n }\n\n if ( ( isWebkit || ( isIE && ( b.algorithm.hash || {} ).name === 'SHA-1' ) )\n && m === 'exportKey' && a === 'jwk' && b.algorithm.name === 'HMAC' ) {\n args[0] = 'raw';\n }\n\n if ( isWebkit && m === 'exportKey' && ( a === 'spki' || a === 'pkcs8' ) ) {\n args[0] = 'jwk';\n }\n\n if ( isIE && m === 'wrapKey' ) {\n return _subtle.exportKey( a, b )\n .then( function ( k ) {\n if ( a === 'jwk' ) k = s2b( unescape( encodeURIComponent( JSON.stringify( b2jwk(k) ) ) ) );\n return _subtle.encrypt( args[3], c, k );\n });\n }\n\n var op;\n try {\n op = _fn.apply( _subtle, args );\n }\n catch ( e ) {\n return Promise.reject(e);\n }\n\n if ( isIE ) {\n op = new Promise( function ( res, rej ) {\n op.onabort =\n op.onerror = function ( e ) { rej(e) };\n op.oncomplete = function ( r ) { res(r.target.result) };\n });\n }\n\n if ( m === 'exportKey' && a === 'jwk' ) {\n op = op.then( function ( k ) {\n if ( ( isWebkit || ( isIE && ( b.algorithm.hash || {} ).name === 'SHA-1' ) )\n && b.algorithm.name === 'HMAC') {\n return { 'kty': 'oct', 'alg': jwkAlg(b.algorithm), 'key_ops': b.usages.slice(), 'ext': true, 'k': s2a( b2s(k) ) };\n }\n k = b2jwk(k);\n if ( !k.alg ) k['alg'] = jwkAlg(b.algorithm);\n if ( !k.key_ops ) k['key_ops'] = ( b.type === 'public' ) ? b.usages.filter(isPubKeyUse) : ( b.type === 'private' ) ? b.usages.filter(isPrvKeyUse) : b.usages.slice();\n return k;\n });\n }\n\n if ( isWebkit && m === 'exportKey' && ( a === 'spki' || a === 'pkcs8' ) ) {\n op = op.then( function ( k ) {\n k = jwk2pkcs( b2jwk(k) );\n return k;\n });\n }\n\n return op;\n }\n });\n\n [ 'encrypt', 'decrypt', 'sign', 'verify' ]\n .forEach( function ( m ) {\n var _fn = _subtle[m];\n\n _subtle[m] = function ( a, b, c, d ) {\n if ( isIE && ( !c.byteLength || ( d && !d.byteLength ) ) )\n throw new Error(\"Empy input is not allowed\");\n\n var args = [].slice.call(arguments),\n ka = alg(a);\n\n if ( isIE && m === 'decrypt' && ka.name === 'AES-GCM' ) {\n var tl = a.tagLength >> 3;\n args[2] = (c.buffer || c).slice( 0, c.byteLength - tl ),\n a.tag = (c.buffer || c).slice( c.byteLength - tl );\n }\n\n args[1] = b._key;\n\n var op;\n try {\n op = _fn.apply( _subtle, args );\n }\n catch ( e ) {\n return Promise.reject(e);\n }\n\n if ( isIE ) {\n op = new Promise( function ( res, rej ) {\n op.onabort =\n op.onerror = function ( e ) {\n rej(e);\n };\n\n op.oncomplete = function ( r ) {\n var r = r.target.result;\n\n if ( m === 'encrypt' && r instanceof AesGcmEncryptResult ) {\n var c = r.ciphertext, t = r.tag;\n r = new Uint8Array( c.byteLength + t.byteLength );\n r.set( new Uint8Array(c), 0 );\n r.set( new Uint8Array(t), c.byteLength );\n r = r.buffer;\n }\n\n res(r);\n };\n });\n }\n\n return op;\n }\n });\n\n if ( isIE ) {\n var _digest = _subtle.digest;\n\n _subtle['digest'] = function ( a, b ) {\n if ( !b.byteLength )\n throw new Error(\"Empy input is not allowed\");\n\n var op;\n try {\n op = _digest.call( _subtle, a, b );\n }\n catch ( e ) {\n return Promise.reject(e);\n }\n\n op = new Promise( function ( res, rej ) {\n op.onabort =\n op.onerror = function ( e ) { rej(e) };\n op.oncomplete = function ( r ) { res(r.target.result) };\n });\n\n return op;\n };\n\n global.crypto = Object.create( _crypto, {\n getRandomValues: { value: function ( a ) { return _crypto.getRandomValues(a) } },\n subtle: { value: _subtle },\n });\n\n global.CryptoKey = CryptoKey;\n }\n\n if ( isWebkit ) {\n _crypto.subtle = _subtle;\n\n global.Crypto = _Crypto;\n global.SubtleCrypto = _SubtleCrypto;\n global.CryptoKey = CryptoKey;\n }\n}));\n\n export default {} // section modified by isomorphic-webcrypto build \n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","","// startup\n// Load entry module and return exports\n// This entry module is referenced by other modules so it can't be inlined\nvar __webpack_exports__ = __webpack_require__(\"./src/entry/browser.ts\");\n",""],"names":["exports","formatArgs","save","load","useColors","storage","localstorage","destroy","warned","console","warn","colors","window","process","type","__nwjs","navigator","userAgent","toLowerCase","match","document","documentElement","style","WebkitAppearance","firebug","exception","table","parseInt","RegExp","$1","args","namespace","module","humanize","diff","c","color","splice","index","lastC","replace","log","debug","namespaces","setItem","removeItem","error","r","getItem","env","DEBUG","localStorage","require","formatters","j","v","JSON","stringify","message","setup","createDebug","default","coerce","disable","enable","enabled","Object","keys","forEach","key","names","skips","selectColor","hash","i","length","charCodeAt","Math","abs","prevTime","enableOverride","namespacesCache","enabledCache","self","curr","Number","Date","ms","prev","unshift","format","formatter","val","call","logFn","apply","extend","defineProperty","enumerable","configurable","get","set","init","delimiter","newDebug","split","len","push","slice","map","toNamespace","join","name","test","regexp","toString","substring","Error","stack","FHIRCLIENT_PURE","Response","lib_1","contextualize","requestOptions","client","contextualURL","_url","resourceType","pathname","pop","settings_1","indexOf","state","serverUrl","conformance","searchParam","searchParams","patient","id","href","base","URL","url","getRef","refId","cache","signal","request","then","res","Promise","resolve","resolveRef","obj","path","graph","node","isArray","Array","all","filter","Boolean","item","ref","reference","sub","catch","ex","status","resolveRefs","fhirOptions","paths","resolveReferences","String","trim","p","groups","task","sort","group","Client","environment","_state","_refreshTask","getPatientId","read","reject","options","encounter","getEncounterId","user","fhirUser","getFhirUser","getUserId","getUserType","connect","fhir","fhirJs","baseUrl","accessToken","getState","auth","token","username","password","pass","api","patientId","tokenResponse","scope","strings_1","noScopeForId","authorizeUri","noIfNoAuth","noFreeContext","idToken","id_token","hasOpenid","hasProfile","hasFhirUser","getIdToken","profile","btoa","getStorage","unset","resource","method","body","headers","patch","_resolvedRefs","debugRequest","flat","pageLimit","_a","useRefreshToken","onPage","undefined","job","refreshIfNeeded","authHeader","getAuthorizationHeader","authorization","includeResponse","response","result","_clearState","expired","data","_data","entry","links","link","next","find","l","relation","nextPage","assign","references","concat","refreshToken","expiresAt","now","refresh","debugRefresh","_b","refresh_token","tokenUri","scopes","hasOfflineAccess","search","hasOnlineAccess","refreshRequestOptions","credentials","refreshTokenWithCredentials","mode","encodeURIComponent","clientSecret","clientId","access_token","finally","observations","property","metadata","fhirVersion","getFhirVersion","HttpError","statusText","statusCode","bodyUsed","json","error_description","text","BrowserAdapter","security","replaceBrowserHistory","fullSessionStorageSupport","getUrl","location","to","_storage","BrowserStorage_1","AbortController","str","atob","input","ready","authorize","Client_1","utils","adapter","BrowserAdapter_1","getSmartApi","fetch","Headers","Request","FHIR","oauth2","settings","_debug","cm","code","value","ensureNumerical","kg","any","pq","checkResponse","resp","ok","HttpError_1","parse","responseToJSON","loweCaseKeys","out","lowerKey","accept","getAndCache","force","NODE_ENV","fetchConformanceStatement","getPath","segments","shift","o","setPath","createEmpty","reduce","idx","arr","makeArray","arg","absolute","randomString","strLength","charSet","charAt","floor","random","jwtDecode","payload","getTimeInFuture","secondsAhead","from","getAccessTokenExpiration","expires_in","tokenBody","exp","byCode","ret","handleCodeableConcept","concept","observation","coding","byCodes","bank","codes","getPatientParam","resources","meta","x","getTargetWindow","target","width","height","parent","top","targetWindow","open","screen","winOrFrame","frames","assert","condition","assertJsonPatch","operation","op","crypto","globalThis","subtle","ALGS","ES384","namedCurve","RS384","modulusLength","publicExponent","Uint8Array","randomBytes","count","getRandomValues","digestSha256","prepared","TextEncoder","encode","digest","generatePKCEChallenge","entropy","inputBytes","codeVerifier","codeChallenge","importJWK","jwk","alg","key_ops","includes","importKey","ext","signCompactJws","privateKey","header","jwtHeader","jwtPayload","jwtAuthenticatedContent","sign","algorithm","signature","isBrowser","fetchWellKnownJson","getSecurityExtensionsFromWellKnownJson","authorization_endpoint","token_endpoint","registrationUri","registration_endpoint","codeChallengeMethods","code_challenge_methods_supported","getSecurityExtensionsFromConformanceStatement","nsUri","extensions","e","extension","valueUri","getSecurityExtensions","params","urlISS","cfg","issMatch","redirect_uri","fakeTokenResponse","encounterId","client_id","pkceMode","clientPublicKeySetUrl","iss","launch","fhirServiceUrl","redirectUri","noRedirect","completeInTarget","clientPrivateJwk","relative","inFrame","isInFrame","inPopUp","isInPopUp","oldKey","stateKey","redirectUrl","redirect","redirectParams","shouldIncludeChallenge","win","sessionStorage","addEventListener","onMessage","S256supported","opener","origin","removeEventListener","Storage","authError","authErrorDescription","postMessage","close","delete","hasState","has","history","replaceState","authorized","buildTokenRequest","pk","jwtHeaders","typ","kid","jku","jwtClaims","aud","jti","base64urlencode","clientAssertion","authorizeOptions","readyOptions","cached"],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"fhir-client.js","mappings":";;;;;;;;;AAAA;AACA,EAAE,KAA0C,GAAG,oCAAO,OAAO;AAAA;AAAA;AAAA;AAAA,kGAAC;AAC9D,EAAE,CAAS;AACX,CAAC,gBAAgB;;AAEjB;AACA;AACA;AACA;AACA;;AAEA;AACA,oBAAoB,kBAAkB;AACtC;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,kFAAkF;AAClF;AACA,MAAM;AACN;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA,QAAQ;AACR;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,MAAM;AACN;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,iBAAiB;AACjB;AACA;AACA,OAAO;AACP;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,SAAS;AACT;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;;AAEA;;AAEA,0CAA0C,OAAO;AACjD;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA,gDAAgD,OAAO;AACvD;;AAEA;AACA;AACA,YAAY;AACZ;AACA;AACA,aAAa;AACb;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,KAAK;;AAEL;AACA,GAAG;;AAEH;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA,iCAAiC;AACjC;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,QAAQ;AACR;;;AAGA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,KAAK;;AAEL;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,KAAK;;AAEL;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;;;AAGA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,GAAG,uCAAuC,qBAAM;;AAEhD,CAAC;;;;;;;;;;;;;;;;;;;;AChWD;;AAEA;AACA;AACA;;AAEAA,kBAAkB,GAAGC,UAAU;AAC/BD,YAAY,GAAGE,IAAI;AACnBF,YAAY,GAAGG,IAAI;AACnBH,iBAAiB,GAAGI,SAAS;AAC7BJ,eAAe,GAAGM,YAAY,CAAC,CAAC;AAChCN,eAAe,GAAI,YAAM;EACxB,IAAIQ,MAAM,GAAG,KAAK;EAElB,OAAO,YAAM;IACZ,IAAI,CAACA,MAAM,EAAE;MACZA,MAAM,GAAG,IAAI;MACbC,OAAO,CAACC,IAAI,CAAC,uIAAuI,CAAC;IACtJ;EACD,CAAC;AACF,CAAC,CAAE,CAAC;;AAEJ;AACA;AACA;;AAEAV,cAAc,GAAG,CAChB,SAAS,EACT,SAAS,EACT,SAAS,EACT,SAAS,EACT,SAAS,EACT,SAAS,EACT,SAAS,EACT,SAAS,EACT,SAAS,EACT,SAAS,EACT,SAAS,EACT,SAAS,EACT,SAAS,EACT,SAAS,EACT,SAAS,EACT,SAAS,EACT,SAAS,EACT,SAAS,EACT,SAAS,E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;AAC7D,0BAA0B,mBAAO,CAAC,uFAA6B;;AAE/D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,gDAAgD,mBAAmB,uCAAuC;AAC1G;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB,WAAW;AAC7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,GAAG;AACH,EAAE;AACF;AACA;AACA;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;;AAEA,wEAAwE,gBAAgB;AACxF;AACA;AACA;AACA;;AAEA;AACA,IAAI;AACJ;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,GAAG,IAAI,cAAc;AACrB;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;;;;;;;;;;;ACtPa;AACb,eAAe,mBAAO,CAAC,6EAAwB;AAC/C,sBAAsB,mBAAO,CAAC,6FAAgC;AAC9D,wBAAwB,mBAAO,CAAC,mGAAmC;AACnE,4BAA4B,mBAAO,CAAC,2GAAuC;;AAE3E;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;;;;;;;;;;;;AC9Ba;AACb,eAAe,mBAAO,CAAC,6EAAwB;AAC/C,sBAAsB,mBAAO,CAAC,6FAAgC;AAC9D,wBAAwB,mBAAO,CAAC,mGAAmC;;AAEnE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;AChBa;AACb,eAAe,wHAA+C;AAC9D,0BAA0B,mBAAO,CAAC,uGAAqC;;AAEvE;;AAEA;AACA;AACA;AACA;AACA;AACA,EAAE;;;;;;;;;;;ACXF,wBAAwB,mBAAO,CAAC,mGAAmC;;AAEnE;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACRa;AACb,WAAW,mBAAO,CAAC,qGAAoC;AACvD,WAAW,mBAAO,CAAC,qFAA4B;AAC/C,eAAe,mBAAO,CAAC,6EAAwB;AAC/C,mCAAmC,mBAAO,CAAC,2HAA+C;AAC1F,4BAA4B,mBAAO,CAAC,2GAAuC;AAC3E,oBAAoB,mBAAO,CAAC,uFAA6B;AACzD,wBAAwB,mBAAO,CAAC,mGAAmC;AACnE,qBAAqB,mBAAO,CAAC,yFAA8B;AAC3D,kBAAkB,mBAAO,CAAC,mFAA2B;AACrD,wBAAwB,mBAAO,CAAC,iGAAkC;;AAElE;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU,qCAAqC;AAC/C;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA,UAAU,gBAAgB;AAC1B;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;AC7CA,sBAAsB,mBAAO,CAAC,6FAAgC;AAC9D,sBAAsB,mBAAO,CAAC,6FAAgC;AAC9D,wBAAwB,mBAAO,CAAC,mGAAmC;;AAEnE,sBAAsB,mBAAmB;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,WAAW,gBAAgB;AACjC;AACA,MAAM;AACN;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;AC/BA,WAAW,mBAAO,CAAC,qGAAoC;AACvD,kBAAkB,mBAAO,CAAC,qGAAoC;AAC9D,oBAAoB,mBAAO,CAAC,uFAA6B;AACzD,eAAe,mBAAO,CAAC,6EAAwB;AAC/C,wBAAwB,mBAAO,CAAC,mGAAmC;AACnE,yBAAyB,mBAAO,CAAC,mGAAmC;;AAEpE;;AAEA,sBAAsB,kEAAkE;AACxF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU,gBAAgB;AAC1B;AACA;AACA;AACA,4CAA4C;AAC5C;AACA,4CAA4C;AAC5C,4CAA4C;AAC5C,4CAA4C;AAC5C,4CAA4C;AAC5C,UAAU;AACV,4CAA4C;AAC5C,4CAA4C;AAC5C;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACxEa;AACb;AACA,YAAY,mBAAO,CAAC,uFAA6B;AACjD,sBAAsB,mBAAO,CAAC,6FAAgC;AAC9D,0BAA0B,mBAAO,CAAC,uGAAqC;AACvE,wBAAwB,mBAAO,CAAC,mGAAmC;AACnE,0BAA0B,mBAAO,CAAC,uGAAqC;;AAEvE;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,YAAY;AACpB;AACA,EAAE;;;;;;;;;;;AC1BF,YAAY,mBAAO,CAAC,qEAAoB;AACxC,sBAAsB,mBAAO,CAAC,6FAAgC;AAC9D,iBAAiB,mBAAO,CAAC,6FAAgC;;AAEzD;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf;AACA;AACA,GAAG;AACH;;;;;;;;;;;;AClBa;AACb,YAAY,mBAAO,CAAC,qEAAoB;;AAExC;AACA;AACA;AACA;AACA,gDAAgD,WAAW;AAC3D,GAAG;AACH;;;;;;;;;;;ACTA,gBAAgB,mBAAO,CAAC,+EAAyB;AACjD,eAAe,mBAAO,CAAC,6EAAwB;AAC/C,oBAAoB,mBAAO,CAAC,uFAA6B;AACzD,wBAAwB,mBAAO,CAAC,mGAAmC;;AAEnE;;AAEA,sBAAsB,qBAAqB;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU,wCAAwC;AAClD;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACzCA,sBAAsB,mBAAO,CAAC,6FAAgC;AAC9D,wBAAwB,mBAAO,CAAC,mGAAmC;AACnE,qBAAqB,mBAAO,CAAC,yFAA8B;;AAE3D;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,kBAAkB,SAAS;AAC3B;AACA;AACA;;;;;;;;;;;ACfA,kBAAkB,mBAAO,CAAC,qGAAoC;;AAE9D;;;;;;;;;;;ACFA,iBAAiB,mBAAO,CAAC,+FAAiC;;AAE1D;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,IAAI;AACJ;;AAEA;;;;;;;;;;;AC3CA,cAAc,mBAAO,CAAC,2EAAuB;AAC7C,oBAAoB,mBAAO,CAAC,uFAA6B;AACzD,eAAe,mBAAO,CAAC,6EAAwB;AAC/C,sBAAsB,mBAAO,CAAC,6FAAgC;;AAE9D;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;;;;;;;;;;;ACrBA,8BAA8B,mBAAO,CAAC,6GAAwC;;AAE9E;AACA;AACA;AACA;AACA;;;;;;;;;;;ACNA,eAAe,mBAAO,CAAC,6EAAwB;AAC/C,oBAAoB,mBAAO,CAAC,uFAA6B;;AAEzD;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;;;;;;;;;;;ACVA,sBAAsB,mBAAO,CAAC,6FAAgC;;AAE9D;AACA;;AAEA;AACA;AACA;AACA;AACA,eAAe;AACf,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+CAA+C,UAAU;AACzD,EAAE,gBAAgB;;AAElB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB;AACnB;AACA;AACA;AACA;AACA,IAAI,gBAAgB;AACpB;AACA;;;;;;;;;;;ACrCA,kBAAkB,mBAAO,CAAC,qGAAoC;;AAE9D,6BAA6B;AAC7B;;AAEA;AACA;AACA;;;;;;;;;;;ACPA,4BAA4B,mBAAO,CAAC,qGAAoC;AACxE,iBAAiB,mBAAO,CAAC,iFAA0B;AACnD,iBAAiB,mBAAO,CAAC,iFAA0B;AACnD,sBAAsB,mBAAO,CAAC,6FAAgC;;AAE9D;AACA;;AAEA;AACA,iDAAiD,mBAAmB;;AAEpE;AACA;AACA;AACA;AACA,IAAI,gBAAgB;AACpB;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;AC5BA,aAAa,mBAAO,CAAC,2FAA+B;AACpD,cAAc,mBAAO,CAAC,2EAAuB;AAC7C,qCAAqC,mBAAO,CAAC,+HAAiD;AAC9F,2BAA2B,mBAAO,CAAC,uGAAqC;;AAExE;AACA;AACA;AACA;AACA,kBAAkB,iBAAiB;AACnC;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACfA,sBAAsB,mBAAO,CAAC,6FAAgC;;AAE9D;;AAEA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA,MAAM,iBAAiB;AACvB,IAAI;AACJ;;;;;;;;;;;ACdA,YAAY,mBAAO,CAAC,qEAAoB;;AAExC;AACA,iBAAiB;AACjB;AACA;AACA;AACA,CAAC;;;;;;;;;;;ACPD,kBAAkB,mBAAO,CAAC,qGAAoC;AAC9D,6BAA6B,mBAAO,CAAC,2GAAuC;AAC5E,eAAe,mBAAO,CAAC,6EAAwB;;AAE/C;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,6FAA6F;AAC7F;AACA;;;;;;;;;;;;ACda;AACb,wBAAwB,gIAAwD;AAChF,aAAa,mBAAO,CAAC,qFAA4B;AACjD,+BAA+B,mBAAO,CAAC,+GAAyC;AAChF,qBAAqB,mBAAO,CAAC,6FAAgC;AAC7D,gBAAgB,mBAAO,CAAC,6EAAwB;;AAEhD,+BAA+B;;AAE/B;AACA;AACA,8DAA8D,yDAAyD;AACvH;AACA;AACA;AACA;;;;;;;;;;;ACfA,kBAAkB,mBAAO,CAAC,iFAA0B;AACpD,2BAA2B,mBAAO,CAAC,uGAAqC;AACxE,+BAA+B,mBAAO,CAAC,+GAAyC;;AAEhF;AACA;AACA,EAAE;AACF;AACA;AACA;;;;;;;;;;;ACTA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACPa;AACb,oBAAoB,mBAAO,CAAC,yFAA8B;AAC1D,2BAA2B,mBAAO,CAAC,uGAAqC;AACxE,+BAA+B,mBAAO,CAAC,+GAAyC;;AAEhF;AACA;AACA;AACA;AACA;;;;;;;;;;;ACTA,kBAAkB,mBAAO,CAAC,qFAA4B;AACtD,qBAAqB,mBAAO,CAAC,uGAAqC;;AAElE;AACA,0DAA0D,cAAc;AACxE,0DAA0D,cAAc;AACxE;AACA;;;;;;;;;;;ACPA,iBAAiB,mBAAO,CAAC,iFAA0B;AACnD,2BAA2B,mBAAO,CAAC,uGAAqC;AACxE,kBAAkB,mBAAO,CAAC,qFAA4B;AACtD,2BAA2B,mBAAO,CAAC,uGAAqC;;AAExE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA,MAAM,gBAAgB;AACtB;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL,IAAI;AACJ;;;;;;;;;;;AC1BA,oBAAoB,mBAAO,CAAC,yFAA8B;;AAE1D;AACA;AACA;AACA;;;;;;;;;;;ACLA,aAAa,mBAAO,CAAC,uEAAqB;;AAE1C;AACA;;AAEA;AACA;AACA,kCAAkC,kDAAkD;AACpF,IAAI;AACJ;AACA,IAAI;AACJ;;;;;;;;;;;;ACXa;AACb,QAAQ,mBAAO,CAAC,uEAAqB;AACrC,WAAW,mBAAO,CAAC,qFAA4B;AAC/C,cAAc,mBAAO,CAAC,yEAAsB;AAC5C,mBAAmB,mBAAO,CAAC,qFAA4B;AACvD,iBAAiB,mBAAO,CAAC,iFAA0B;AACnD,gCAAgC,mBAAO,CAAC,iHAA0C;AAClF,qBAAqB,mBAAO,CAAC,yGAAsC;AACnE,qBAAqB,mBAAO,CAAC,yGAAsC;AACnE,qBAAqB,mBAAO,CAAC,6FAAgC;AAC7D,kCAAkC,mBAAO,CAAC,uHAA6C;AACvF,oBAAoB,mBAAO,CAAC,yFAA8B;AAC1D,sBAAsB,mBAAO,CAAC,6FAAgC;AAC9D,gBAAgB,mBAAO,CAAC,6EAAwB;AAChD,oBAAoB,mBAAO,CAAC,uFAA6B;;AAEzD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,+BAA+B;;AAE/B;AACA;;AAEA;AACA;AACA;AACA;AACA,0CAA0C;AAC1C,8CAA8C;AAC9C,gDAAgD;AAChD,MAAM,qBAAqB;AAC3B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,2BAA2B,oBAAoB;AAC/C;AACA;AACA;AACA,MAAM;AACN;AACA,4CAA4C;AAC5C;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,SAAS,oFAAoF;AACnG;;AAEA;AACA;AACA,kEAAkE,eAAe;AACjF;AACA;;AAEA;AACA;;;;;;;;;;;AClGA,WAAW,mBAAO,CAAC,mEAAmB;AACtC,aAAa,mBAAO,CAAC,2FAA+B;AACpD,mCAAmC,mBAAO,CAAC,6GAAwC;AACnF,qBAAqB,gIAAgD;;AAErE;AACA,+CAA+C;AAC/C;AACA;AACA,GAAG;AACH;;;;;;;;;;;;ACVa;AACb,kBAAkB,mBAAO,CAAC,qFAA4B;;AAEtD;;AAEA;AACA;AACA;;;;;;;;;;;ACPA,YAAY,mBAAO,CAAC,qEAAoB;;AAExC;AACA;AACA;AACA,iCAAiC,OAAO,mBAAmB,aAAa;AACxE,CAAC;;;;;;;;;;;ACND,aAAa,mBAAO,CAAC,uEAAqB;AAC1C,eAAe,mBAAO,CAAC,6EAAwB;;AAE/C;AACA;AACA;;AAEA;AACA;AACA;;;;;;;;;;;ACTA;AACA,yCAAyC;;AAEzC;AACA;AACA;AACA;;;;;;;;;;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;AClCA;AACA,4BAA4B,mBAAO,CAAC,yGAAsC;;AAE1E;AACA;;AAEA;;;;;;;;;;;ACNA,gBAAgB,mBAAO,CAAC,6FAAgC;;AAExD;;AAEA;;;;;;;;;;;ACJA;;;;;;;;;;;ACAA,SAAS,mBAAO,CAAC,6FAAgC;;AAEjD;;;;;;;;;;;ACFA,gBAAgB,mBAAO,CAAC,6FAAgC;AACxD,aAAa,mBAAO,CAAC,uEAAqB;;AAE1C;;;;;;;;;;;ACHA,gBAAgB,mBAAO,CAAC,6FAAgC;;AAExD;;;;;;;;;;;ACFA,cAAc,mBAAO,CAAC,iFAA0B;AAChD,aAAa,mBAAO,CAAC,uEAAqB;;AAE1C;;;;;;;;;;;ACHA,gBAAgB,mBAAO,CAAC,6FAAgC;;AAExD;;;;;;;;;;;ACFA,iBAAiB,mBAAO,CAAC,mFAA2B;;AAEpD;;;;;;;;;;;ACFA,aAAa,mBAAO,CAAC,uEAAqB;AAC1C,gBAAgB,mBAAO,CAAC,6FAAgC;;AAExD;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;;;;;;;;;;AC1BA,gBAAgB,mBAAO,CAAC,6FAAgC;;AAExD;;AAEA;;;;;;;;;;;ACJA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACTA,aAAa,mBAAO,CAAC,uEAAqB;AAC1C,+BAA+B,wJAA4D;AAC3F,kCAAkC,mBAAO,CAAC,uHAA6C;AACvF,oBAAoB,mBAAO,CAAC,yFAA8B;AAC1D,2BAA2B,mBAAO,CAAC,uGAAqC;AACxE,gCAAgC,mBAAO,CAAC,iHAA0C;AAClF,eAAe,mBAAO,CAAC,6EAAwB;;AAE/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ,8DAA8D;AAC9D,IAAI;AACJ,kCAAkC;AAClC;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACrDA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;;;;;;;;;;;;ACNa;AACb;AACA,mBAAO,CAAC,mFAA2B;AACnC,kBAAkB,mBAAO,CAAC,qGAAoC;AAC9D,oBAAoB,mBAAO,CAAC,yFAA8B;AAC1D,iBAAiB,mBAAO,CAAC,iFAA0B;AACnD,YAAY,mBAAO,CAAC,qEAAoB;AACxC,sBAAsB,mBAAO,CAAC,6FAAgC;AAC9D,kCAAkC,mBAAO,CAAC,uHAA6C;;AAEvF;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,8BAA8B;AAC9B;AACA,GAAG;;AAEH;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8CAA8C;AAC9C;AACA;AACA;;AAEA,4BAA4B,mBAAmB;;AAE/C;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB;AACnB;AACA,iBAAiB;AACjB;AACA,eAAe;AACf,KAAK;;AAEL;AACA;AACA;;AAEA;AACA;;;;;;;;;;;;ACzEa;AACb,cAAc,mBAAO,CAAC,2EAAuB;AAC7C,wBAAwB,mBAAO,CAAC,mGAAmC;AACnE,+BAA+B,mBAAO,CAAC,mHAA2C;AAClF,WAAW,mBAAO,CAAC,qGAAoC;;AAEvD;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,QAAQ;AACR;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;;;;;;;;;;ACjCA,kBAAkB,mBAAO,CAAC,mGAAmC;;AAE7D;AACA;AACA;;AAEA;AACA;AACA;AACA,CAAC;;;;;;;;;;;ACTD,kBAAkB,mBAAO,CAAC,qGAAoC;AAC9D,gBAAgB,mBAAO,CAAC,+EAAyB;AACjD,kBAAkB,mBAAO,CAAC,mGAAmC;;AAE7D;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACZA,YAAY,mBAAO,CAAC,qEAAoB;;AAExC;AACA;AACA,4BAA4B,aAAa;AACzC;AACA;AACA,CAAC;;;;;;;;;;;;ACPY;AACb,kBAAkB,mBAAO,CAAC,qGAAoC;AAC9D,gBAAgB,mBAAO,CAAC,+EAAyB;AACjD,eAAe,mBAAO,CAAC,6EAAwB;AAC/C,aAAa,mBAAO,CAAC,2FAA+B;AACpD,iBAAiB,mBAAO,CAAC,iFAA0B;AACnD,kBAAkB,mBAAO,CAAC,mGAAmC;;AAE7D;AACA;AACA;AACA;;AAEA;AACA;AACA,+BAA+B,gBAAgB;AAC/C;AACA,IAAI;AACJ;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;AChCA,kBAAkB,mBAAO,CAAC,mGAAmC;;AAE7D;;AAEA;AACA;AACA;;;;;;;;;;;ACNA,kBAAkB,mBAAO,CAAC,iFAA0B;AACpD,aAAa,mBAAO,CAAC,2FAA+B;;AAEpD;AACA;AACA;;AAEA;AACA;AACA,+CAA+C,aAAa;AAC5D;;AAEA;AACA;AACA;AACA;AACA;;;;;;;;;;;AChBA,kBAAkB,mBAAO,CAAC,mGAAmC;;AAE7D;AACA;AACA;AACA;;AAEA;AACA;AACA,EAAE;AACF;AACA;AACA;AACA;;;;;;;;;;;ACbA,aAAa,mBAAO,CAAC,uEAAqB;AAC1C,iBAAiB,mBAAO,CAAC,iFAA0B;;AAEnD;AACA;AACA;;AAEA;AACA;AACA;;;;;;;;;;;ACTA,cAAc,mBAAO,CAAC,yEAAsB;AAC5C,gBAAgB,mBAAO,CAAC,+EAAyB;AACjD,gBAAgB,mBAAO,CAAC,6EAAwB;AAChD,sBAAsB,mBAAO,CAAC,6FAAgC;;AAE9D;;AAEA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACXA,WAAW,mBAAO,CAAC,qFAA4B;AAC/C,gBAAgB,mBAAO,CAAC,+EAAyB;AACjD,eAAe,mBAAO,CAAC,6EAAwB;AAC/C,kBAAkB,mBAAO,CAAC,qFAA4B;AACtD,wBAAwB,mBAAO,CAAC,iGAAkC;;AAElE;;AAEA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACZA,gBAAgB,mBAAO,CAAC,+EAAyB;;AAEjD;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACPA,kBAAkB,mBAAO,CAAC,qGAAoC;AAC9D,eAAe,mBAAO,CAAC,6EAAwB;;AAE/C;AACA;AACA;AACA;AACA,yCAAyC,IAAI;AAC7C,kDAAkD,IAAI;;AAEtD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;;;;;;;;;;AC3CA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,qBAAM,gBAAgB,qBAAM;AAC3C;AACA,iBAAiB,cAAc;;;;;;;;;;;ACb/B,kBAAkB,mBAAO,CAAC,qGAAoC;AAC9D,eAAe,mBAAO,CAAC,6EAAwB;;AAE/C,mCAAmC;;AAEnC;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACVA;;;;;;;;;;;ACAA,aAAa,mBAAO,CAAC,uEAAqB;;AAE1C;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACPA,iBAAiB,mBAAO,CAAC,mFAA2B;;AAEpD;;;;;;;;;;;ACFA,kBAAkB,mBAAO,CAAC,iFAA0B;AACpD,YAAY,mBAAO,CAAC,qEAAoB;AACxC,oBAAoB,mBAAO,CAAC,yGAAsC;;AAElE;AACA;AACA;AACA;AACA,uBAAuB;AACvB,GAAG;AACH,CAAC;;;;;;;;;;;ACVD;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA,IAAI;AACJ;AACA;AACA,IAAI;AACJ;;AAEA;AACA;AACA;AACA;;;;;;;;;;;ACrGA,kBAAkB,mBAAO,CAAC,qGAAoC;AAC9D,YAAY,mBAAO,CAAC,qEAAoB;AACxC,cAAc,mBAAO,CAAC,iFAA0B;;AAEhD;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA,EAAE;;;;;;;;;;;ACdF,iBAAiB,mBAAO,CAAC,iFAA0B;AACnD,eAAe,mBAAO,CAAC,6EAAwB;AAC/C,qBAAqB,mBAAO,CAAC,yGAAsC;;AAEnE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACjBA,kBAAkB,mBAAO,CAAC,qGAAoC;AAC9D,iBAAiB,mBAAO,CAAC,iFAA0B;AACnD,YAAY,mBAAO,CAAC,mFAA2B;;AAE/C;;AAEA;AACA;AACA;AACA;AA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AAgB;AACpB;AACA;AACA;AACA,IAAI;AACJ;;AAEA;AACA;AACA;AACA;AACA,CAAC;;;;;;;;;;;AChDD;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACTA,aAAa,mBAAO,CAAC,uEAAqB;AAC1C,WAAW,mBAAO,CAAC,qGAAoC;AACvD,+BAA+B,wJAA4D;AAC3F,gBAAgB,8FAAgC;AAChD,aAAa,mBAAO,CAAC,qFAA4B;AACjD,oBAAoB,mBAAO,CAAC,mGAAmC;AAC/D,sBAAsB,mBAAO,CAAC,uGAAqC;AACnE,cAAc,mBAAO,CAAC,uFAA6B;;AAEnD;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ;AACR;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,gDAAgD,qBAAqB;AACrE;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,eAAe;AACf;AACA;AACA;AACA;AACA,IAAI;AACJ;;;;;;;;;;;ACpFA,oBAAoB,mBAAO,CAAC,qFAA4B;;AAExD;AACA;;;;;;;;;;;ACHA;AACA,iBAAiB,mBAAO,CAAC,6FAAgC;AACzD,YAAY,mBAAO,CAAC,qEAAoB;;AAExC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;;;;;;;;;;ACZD,YAAY,mBAAO,CAAC,qEAAoB;AACxC,sBAAsB,mBAAO,CAAC,6FAAgC;AAC9D,cAAc,mBAAO,CAAC,yEAAsB;;AAE5C;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAA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B,mBAAO,CAAC,uGAAqC;;AAEnE;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ;AACR,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,0BAA0B;AAC9C;AACA;AACA,OAAO;AACP;;AAEA;AACA;AACA,kBAAkB,mBAAmB;AACrC;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;;;;;;;;;;;ACpHa;AACb,eAAe,mBAAO,CAAC,6EAAwB;;AAE/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACjBA,WAAW,mBAAO,CAAC,qFAA4B;AAC/C,aAAa,mBAAO,CAAC,2FAA+B;AACpD,oBAAoB,mBAAO,CAAC,uGAAqC;AACjE,kBAAkB,mBAAO,CAAC,mFAA2B;;AAErD;;AAEA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACXA,YAAY,mBAAO,CAAC,qEAAoB;AACxC,aAAa,mBAAO,CAAC,uEAAqB;;AAE1C;AACA;;AAEA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;;;;;;;;;;;AC7BA,YAAY,mBAAO,CAAC,qEAAoB;AACxC,aAAa,mBAAO,CAAC,uEAAqB;;AAE1C;AACA;;AAEA;AACA;AACA;AACA,CAAC;;;;;;;;;;;ACTD,YAAY,mBAAO,CAAC,qEAAoB;AACxC,aAAa,mBAAO,CAAC,uEAAqB;;AAE1C;AACA;;AAEA;AACA;AACA;AACA;AACA,CAAC;;;;;;;;;;;ACVD;;AAEA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACNa;AACb,iBAAiB,mBAAO,CAAC,mFAA2B;AACpD,2BAA2B,mBAAO,CAAC,uGAAqC;AACxE,sBAAsB,mBAAO,CAAC,6FAAgC;AAC9D,kBAAkB,mBAAO,CAAC,iFAA0B;;AAEpD;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,yBAAyB;AACzB,KAAK;AACL;AACA;;;;;;;;;;;AClBA,qBAAqB,gIAAgD;AACrE,aAAa,mBAAO,CAAC,2FAA+B;AACpD,sBAAsB,mBAAO,CAAC,6FAAgC;;AAE9D;;AAEA;AACA;AACA;AACA,4CAA4C,gCAAgC;AAC5E;AACA;;;;;;;;;;;ACXA,aAAa,mBAAO,CAAC,uEAAqB;AAC1C,UAAU,mBAAO,CAAC,iEAAkB;;AAEpC;;AAEA;AACA;AACA;;;;;;;;;;;ACPA,aAAa,mBAAO,CAAC,uEAAqB;AAC1C,2BAA2B,mBAAO,CAAC,uGAAqC;;AAExE;AACA,6DAA6D;;AAE7D;;;;;;;;;;;ACNA,cAAc,mBAAO,CAAC,yEAAsB;AAC5C,YAAY,mBAAO,CAAC,mFAA2B;;AAE/C;AACA,qEAAqE;AACrE,CAAC;AACD;AACA;AACA;AACA;AACA;AACA,CAAC;;;;;;;;;;;ACXD,eAAe,mBAAO,CAAC,6EAAwB;AAC/C,mBAAmB,mBAAO,CAAC,qFAA4B;AACvD,sBAAsB,mBAAO,CAAC,6FAAgC;;AAE9D;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACZA,YAAY,mBAAO,CAAC,qEAAoB;;AAExC;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;;;;;;;;;;ACTA,kBAAkB,mBAAO,CAAC,qGAAoC;AAC9D,0BAA0B,mBAAO,CAAC,uGAAqC;AACvE,eAAe,mBAAO,CAAC,6EAAwB;AAC/C,6BAA6B,mBAAO,CAAC,2GAAuC;;AAE5E;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACnCa;AACb;AACA,kBAAkB,mBAAO,CAAC,qGAAoC;;AAE9D,yBAAyB;AACzB;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB;AACpB,qBAAqB;AACrB,oCAAoC;AACpC,gDAAgD;AAChD;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC;AACxC;AACA,QAAQ;AACR,wCAAwC;AACxC;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,cAAc,kBAAkB;AAChC;AACA;AACA;AACA;AACA;;AAEA,mCAAmC;AACnC,oCAAoC;;AAEpC;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,gBAAgB,kBAAkB;AAClC;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA,gBAAgB,kBAAkB;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,cAAc,mBAAmB;AACjC;AACA;AACA;AACA;AACA;;;;;;;;;;;ACpLA,2BAA2B,mHAA4C;AACvE,YAAY,mBAAO,CAAC,qEAAoB;AACxC,kBAAkB,mBAAO,CAAC,iFAA0B;;AAE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c,wHAA+C;AAC7D,iBAAiB,mBAAO,CAAC,iFAA0B;AACnD,2BAA2B,mBAAO,CAAC,uGAAqC;AACxE,qCAAqC,mBAAO,CAAC,+HAAiD;AAC9F,0BAA0B,mBAAO,CAAC,uFAA6B;AAC/D,wBAAwB,mBAAO,CAAC,iGAAkC;;AAElE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,kCAAkC;AAClC;AACA,KAAK;AACL;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,MAAM,kEAAkE;AACxE;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA,OAAO;AACP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA;AACA;AACA;AACA,UAAU;AACV;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA,OAAO;;AAEP;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,OAAO;;AAEP;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;;AAEA,QAAQ,mFAAmF;;AAE3F;AACA;AAC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B;AAC/D,+BAA+B,mBAAO,CAAC,+GAAyC;AAChF,kCAAkC,mBAAO,CAAC,qHAA4C;AACtF,iCAAiC,mBAAO,CAAC,uGAAqC;;AAE9E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iCAAiC;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ;AACR;AACA,QAAQ;AACR,MAAM;AACN,IAAI;AACJ;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,eAAe;AACnB;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV,OAAO;AACP;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB;AACxB;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA,OAAO;AACP,MAAM;AACN;AACA;AACA;AACA;AACA,IAAI;AACJ,qBAAqB,aAAa;AAClC;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AA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A;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA,sBAAsB;AACtB;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,sBAAsB,oBAAoB;AAC1C;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,mBAAmB;AAC3C;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;;;;;;;;;;;ACvIY;AACb,WAAW,mBAAO,CAAC,qFAA4B;AAC/C,oCAAoC,mBAAO,CAAC,+HAAiD;AAC7F,eAAe,mBAAO,CAAC,6EAAwB;AAC/C,6BAA6B,mBAAO,CAAC,2GAAuC;AAC5E,gBAAgB,mBAAO,CAAC,+EAAyB;AACjD,eAAe,mBAAO,CAAC,6EAAwB;AAC/C,gBAAgB,mBAAO,CAAC,+EAAyB;AACjD,iBAAiB,mBAAO,CAAC,mGAAmC;;AAE5D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;;;;;;;;;;;ACpCY;AACb,YAAY,mBAAO,CAAC,uFAA6B;AACjD,WAAW,mBAAO,CAAC,qFAA4B;AAC/C,kBAAkB,mBAAO,CAAC,qGAAoC;AAC9D,oCAAoC,mBAAO,CAAC,+HAAiD;AAC7F,eAAe,mBAAO,CAAC,6EAAwB;AAC/C,eAAe,mBAAO,CAAC,6EAAwB;AAC/C,6BAA6B,mBAAO,CAAC,2GAAuC;AAC5E,yBAAyB,mBAAO,CAAC,iGAAkC;AACnE,yBAAyB,mBAAO,CAAC,mGAAmC;AACpE,eAAe,mBAAO,CAAC,6EAAwB;AAC/C,eAAe,mBAAO,CAAC,6EAAwB;AAC/C,gBAAgB,mBAAO,CAAC,+EAAyB;AACjD,iBAAiB,mBAAO,CAAC,+FAAiC;AAC1D,qBAAqB,mBAAO,CAAC,mGAAmC;AAChE,iBAAiB,mBAAO,CAAC,iFAA0B;AACnD,oBAAoB,mBAAO,CAAC,qGAAoC;AAChE,YAAY,mBAAO,CAAC,qEAAoB;;AAExC;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,0BAA0B;AAC1B;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gFAAgF;AAChF;AACA;AACA;AACA,QAAQ;AACR;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA,IAAI;;AAEJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA,0BAA0B,mBAAmB;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;;;;;;;;;;;AC3JY;AACb,QAAQ,mBAAO,CAAC,uEAAqB;AACrC,YAAY,6GAAwC;AACpD,6BAA6B,mBAAO,CAAC,+FAAiC;;AAEtE;AACA;AACA,IAAI,uEAAuE;AAC3E;AACA;AACA;AACA,CAAC;;;;;;;;;;;;ACXY;AACb,QAAQ,mBAAO,CAAC,uEAAqB;AACrC,aAAa,mBAAO,CAAC,uEAAqB;AAC1C,WAAW,mBAAO,CAAC,qFAA4B;AAC/C,kBAAkB,mBAAO,CAAC,qGAAoC;AAC9D,cAAc,mBAAO,CAAC,yEAAsB;AAC5C,kBAAkB,mBAAO,CAAC,iFAA0B;AACpD,oBAAoB,mBAAO,CAAC,qFAA4B;AACxD,YAAY,mBAAO,CAAC,qEAAoB;AACxC,aAAa,mBAAO,CAAC,2FAA+B;AACpD,oBAAoB,mBAAO,CAAC,uGAAqC;AACjE,eAAe,mBAAO,CAAC,6EAAwB;AAC/C,sBAAsB,mBAAO,CAAC,6FAAgC;AAC9D,oBAAoB,mBAAO,CAAC,yFAA8B;AAC1D,gBAAgB,mBAAO,CAAC,6EAAwB;AAChD,+BAA+B,mBAAO,CAAC,+GAAyC;AAChF,yBAAyB,mBAAO,CAAC,qFAA4B;AAC7D,iBAAiB,mBAAO,CAAC,iFAA0B;AACnD,gCAAgC,mBAAO,CAAC,qHAA4C;AACpF,kCAAkC,mBAAO,CAAC,uIAAqD;AAC/F,kCAAkC,mBAAO,CAAC,yHAA8C;AACxF,qCAAqC,mBAAO,CAAC,+HAAiD;AAC9F,2BAA2B,mBAAO,CAAC,uGAAqC;AACxE,6BAA6B,mBAAO,CAAC,2GAAuC;AAC5E,iCAAiC,mBAAO,CAAC,qHAA4C;AACrF,oBAAoB,mBAAO,CAAC,yFAA8B;AAC1D,aAAa,mBAAO,CAAC,uEAAqB;AAC1C,gBAAgB,mBAAO,CAAC,+EAAyB;AACjD,iBAAiB,mBAAO,CAAC,iFAA0B;AACnD,UAAU,mBAAO,CAAC,iEAAkB;AACpC,sBAAsB,mBAAO,CAAC,6FAAgC;AAC9D,mCAAmC,mBAAO,CAAC,6GAAwC;AACnF,4BAA4B,mBAAO,CAAC,2GAAuC;AAC3E,8BAA8B,mBAAO,CAAC,+GAAyC;AAC/E,qBAAqB,mBAAO,CAAC,6FAAgC;AAC7D,0BAA0B,mBAAO,CAAC,uFAA6B;AAC/D,eAAe,wHAA+C;;AAE9D;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,mDAAmD;AACnD,uBAAuB,yCAAyC,UAAU;AAC1E,GAAG;AACH,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA,EAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4FAA4F;AAC5F;AACA,MAAM;AACN;AACA,oDAAoD,gDAAgD;AACpG,MAAM;AACN,IAAI;AACJ;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+EAA+E,iCAAiC;AAChH;AACA;;AAEA;;AAEA;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA,sFAAsF,cAAc;AACpG;AACA;AACA;;AAEA,IAAI,2FAA2F;AAC/F;AACA,CAAC;;AAED;AACA;AACA,CAAC;;AAED,IAAI,oDAAoD;AACxD,2BAA2B,oBAAoB;AAC/C,2BAA2B;AAC3B,CAAC;;AAED,IAAI,0EAA0E;AAC9E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED,IAAI,sDAAsD;AAC1D;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;;;;;;;;;;AC3PA,QAAQ,mBAAO,CAAC,uEAAqB;AACrC,iBAAiB,mBAAO,CAAC,mFAA2B;AACpD,aAAa,mBAAO,CAAC,2FAA+B;AACpD,eAAe,mBAAO,CAAC,6EAAwB;AAC/C,aAAa,mBAAO,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AAC;;AAED;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B,6DAA6D;AAC1F;AACA,MAAM;AACN,2BAA2B,yCAAyC;AACpE;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN,GAAG;AACH;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,0BAA0B,+CAA+C;AACzE;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,wBAAwB;AACnC;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,wBAAwB;AACnC;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,wBAAwB;AACnC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,sBAAsB;AACtD;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,CAAC,IAAI,kBAAkB;;AAEvB;AACA,sFAAsF,iBAAiB;;AAEvG;AACA;AACA;AACA;AACA,CAAC,IAAI,kBAAkB;;AAEvB;;AAEA,IAAI,0DAA0D;AAC9D;AACA,CAAC;;AAED;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iFAAiF;AACjF;AACA;AACA;AACA;AACA,SAAS;AACT;AACA,MAAM;AACN;;AAEA;AACA,QAAQ,oEAAoE;AAC5E;AACA,8FAA8F;AAC9F;AACA,KAAK;AACL;;AAEA;AACA;AACA;AACA,kGAAkG;AAClG;;AAEA;AACA;;AAEA,QAAQ,qEAAqE;AAC7E;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;AACA;;;;;;;;;;;ACvYA;AACA,mBAAO,CAAC,yHAA8C;;;;;;;;;;;;ACDzC;AACb;AACA,mBAAO,CAAC,2FAA+B;AACvC,QAAQ,mBAAO,CAAC,uEAAqB;AACrC,kBAAkB,mBAAO,CAAC,iFAA0B;AACpD,qBAAqB,mBAAO,CAAC,+EAAyB;AACtD,aAAa,mBAAO,CAAC,uEAAqB;AAC1C,WAAW,mBAAO,CAAC,qGAAoC;AACvD,kBAAkB,mBAAO,CAAC,qGAAoC;AAC9D,oBAAoB,mBAAO,CAAC,yFAA8B;AAC1D,4BAA4B,mBAAO,CAAC,2GAAuC;AAC3E,iBAAiB,mBAAO,CAAC,iFAA0B;AACnD,aAAa,mBAAO,CAAC,2FAA+B;AACpD,aAAa,mBAAO,CAAC,qFAA4B;AACjD,gBAAgB,mBAAO,CAAC,+EAAyB;AACjD,iBAAiB,mBAAO,CAAC,+FAAiC;AAC1D,aAAa,yHAA+C;AAC5D,cAAc,mBAAO,CAAC,2GAAuC;AAC7D,gBAAgB,mBAAO,CAAC,6EAAwB;AAChD,qBAAqB,mBAAO,CAAC,6FAAgC;AAC7D,8BAA8B,mBAAO,CAAC,6GAAwC;AAC9E,4BAA4B,mBAAO,CAAC,yHAA8C;AAClF,0BAA0B,mBAAO,CAAC,uFAA6B;;AAE/D;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB,qBAAqB;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA,kBAAkB,qBAAqB;AACvC;AACA;AACA;AACA,MAAM;AACN;AACA;AACA,kBAAkB,wBAAwB;AAC1C;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS,WAAW;AACpB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,WAAW;AAC/B;AACA;AACA,MAAM;AACN;AACA,IAAI;AACJ;AACA;AACA,oBAAoB,WAAW;AAC/B;AACA;AACA;AACA;AACA;AACA,QAAQ;AACR;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;;AAEA;AACA,wCAAwC;AACxC;AACA,CAAC;AACD,oCAAoC;AACpC,oBAAoB,QAAQ;AAC5B,CAAC;AACD,wCAAwC;AACxC,oBAAoB;AACpB,CAAC;;AAED;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA;AACA,YAAY;AACZ;;AAEA;AACA;AACA;AACA,YAAY;AACZ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA;AACA;AACA;AACA,YAAY;AACZ;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA;AACA,YAAY;;AAEZ;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA,YAAY;AACZ;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY;;AAEZ;AACA;AACA;AACA,YAAY;AACZ;AACA,YAAY;AACZ;AACA;AACA;AACA;AACA;AACA;AACA,YAAY;;AAEZ;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,YAAY;;AAEZ;AACA;AACA;AACA;AACA;AACA,4BAA4B,6BAA6B;AACzD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY;AACZ;;AAEA;AACA;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA;AACA;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA;AACA;AACA,YAAY;;AAEZ;AACA;AACA;AACA,YAAY;AACZ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY;AACZ;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA;AACA,YAAY;;AAEZ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd,YAAY;AACZ;;AAEA;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA;AACA,YAAY;AACZ;AACA;AACA,YAAY;AACZ;AACA;AACA,YAAY;;AAEZ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA,cAAc;AACd;AACA;AACA,kDAAkD;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA,YAAY;AACZ;AACA,YAAY;;AAEZ;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA;AACA,YAAY;AACZ;AACA,YAAY;;AAEZ;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA;AACA;AACA,YAAY;;AAEZ;AACA;AACA;AACA;;AAEA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA,sBAAsB,2BAA2B;AACjD;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,oBAAoB,uBAAuB;AAC3C;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,oBAAoB,uBAAuB;AAC3C;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,CAAC,IAAI,kBAAkB;;AAEvB;AACA;AACA;AACA;AACA,CAAC,IAAI,kBAAkB;;AAEvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA,IAAI,8EAA8E;AAClF;AACA,CAAC;;;;;;;;;;;ACjhCD;AACA,mBAAO,CAAC,6FAAgC;;;;;;;;;;;ACDxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA,OAAO;AACP;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,gBAAgB;AAChB;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,OAAO;AACP,MAAM;AACN;AACA;AACA,OAAO;AACP,MAAM;AACN;AACA;AACA,OAAO;AACP;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,oBAAoB,iBAAiB;AACrC;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,QAAQ;AACR;AACA,QAAQ;AACR;AACA,QAAQ;AACR;AACA,QAAQ;AACR;AACA,QAAQ;AACR;AACA;AACA;AACA,QAAQ;AACR;AACA,QAAQ;AACR;AACA;;AAEA;AACA;AACA,uDAAuD;AACvD,UAAU;AACV;AACA,UAAU;AACV,8EAA8E;AAC9E;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,UAAU;AACV;AACA,UAAU;AACV;AACA,UAAU;AACV;AACA;AACA;;AAEA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,QAAQ;AACR;AACA,QAAQ;AACR;AACA,QAAQ;AACR;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,8BAA8B,qBAAqB;AACnD;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;;AAEA;AACA,uCAAuC,0BAA0B;AACjE;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA,+BAA+B,0BAA0B,eAAe;AACxE;;AAEA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,QAAQ;AACR;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,OAAO;;AAEP;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,KAAK;AACL;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA,iDAAiD,aAAa;;AAE9D;;AAEA,CAAC,IAAI;AACL,CAAC;AACD;AACA;AACA;AACA;AACA;AACA,oBAAoB;AACpB;AACA,kBAAe;AACf,aAAa,mCAAmC,OAAO;AACvD,eAAe;AACf,eAAe;AACf,gBAAgB;AAChB;;;;;;;;;;;ACziBA;AACA;AACA;AACA;AACA;AACA,IAAI,KAA4D;AAChE;AACA,UAAU,CAeM;AAChB,CAAC;AACD;AACA,iBAAiB,qBAAM,mBAAmB,qBAAM;AAChD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC,oBAAoB;AACxD;AACA,KAAK;AACL,mCAAmC,EAAE,oBAAoB,EAAE,sBAAsB,EAAE;AACnF;AACA;AACA;AACA;AACA,iCAAiC,oBAAoB;AACrD;AACA;AACA,sCAAsC;AACtC,6DAA6D,+BAA+B;AAC5F,kCAAkC;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,eAAe;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,QAAQ;AACvB,iBAAiB,QAAQ;AACzB;AACA,4CAA4C;AAC5C,wCAAwC;AACxC;AACA;AACA,2BAA2B;AAC3B;AACA;AACA;AACA;AACA,4CAA4C,OAAO;AACnD;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,SAAS;AACxB,iBAAiB,QAAQ;AACzB;AACA;AACA,kCAAkC;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,QAAQ;AACvB,iBAAiB,QAAQ;AACzB;AACA,8BAA8B;AAC9B;AACA;AACA,yBAAyB;AACzB;AACA,6BAA6B;AAC7B,6BAA6B;AAC7B;AACA;AACA,eAAe,SAAS;AACxB,iBAAiB,QAAQ;AACzB;AACA;AACA,kCAAkC;AAClC;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,QAAQ;AACzB;AACA,qCAAqC;AACrC;AACA;AACA;AACA,iEAAiE,EAAE,wBAAwB,EAAE;AAC7F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,QAAQ;AACvB,iBAAiB,QAAQ;AACzB;AACA,8BAA8B;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,eAAe;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,QAAQ;AACvB,iBAAiB,QAAQ;AACzB;AACA,4CAA4C;AAC5C,wCAAwC;AACxC;AACA;AACA;AACA,yBAAyB;AACzB,yBAAyB,yCAAyC,yBAAyB;AAC3F;AACA;AACA;AACA,sCAAsC;AACtC;AACA;AACA,yBAAyB;AACzB;AACA,6BAA6B;AAC7B,6BAA6B;AAC7B,gCAAgC,mDAAmD,+BAA+B;AAClH;AACA;AACA,eAAe,QAAQ;AACvB,iBAAiB,QAAQ;AACzB;AACA,kCAAkC;AAClC;AACA;AACA,eAAe,QAAQ;AACvB;AACA;AACA;AACA;AACA,mDAAmD,IAAI;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2CAA2C;AAC3C,yCAAyC,sBAAsB;AAC/D,8CAA8C,+BAA+B;AAC7E,0CAA0C,4BAA4B;AACtE,0CAA0C,4BAA4B;AACtE,2CAA2C,4BAA4B;AACvE;AACA;AACA;AACA;AACA;AACA,2CAA2C;AAC3C,8CAA8C,uCAAuC;AACrF,0CAA0C,oCAAoC;AAC9E,0CAA0C,oCAAoC;AAC9E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC;AACxC;AACA,gDAAgD,wCAAwC;AACxF;AACA,CAAC;;;;;;;;;;;AC9TD;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,eAAe;AAC1B,WAAW,QAAQ;AACnB,YAAY,OAAO;AACnB,YAAY;AACZ;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,WAAW,QAAQ;AACnB,YAAY;AACZ;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,WAAW,QAAQ;AACnB,YAAY;AACZ;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,WAAW,QAAQ;AACnB,YAAY;AACZ;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;;;;;;;;;;ACjKA;AACA;AACA,yCAAyC,SAAS;AAClD;AACA;AACA,oCAAoC,yBAAyB,SAAS,yBAAyB;;;;;;;;;;ACL/F,uBAAuB,mBAAO,CAAC,wFAAuB;AACtD;AACA;AACA;AACA,qCAAqC,yBAAyB,SAAS,yBAAyB;;;;;;;;;;ACJhG;AACA;AACA;AACA;AACA;AACA;AACA,yCAAyC,yBAAyB,SAAS,yBAAyB;;;;;;;;;;ACNpG;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,oCAAoC,yBAAyB,SAAS,yBAAyB;;;;;;;;;;AC9B/F;AACA;AACA;AACA;AACA;AACA,kCAAkC,yBAAyB,SAAS,yBAAyB;;;;;;;;;;ACL7F,qBAAqB,mBAAO,CAAC,oFAAqB;AAClD,+BAA+B,mBAAO,CAAC,wGAA+B;AACtE;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B,yBAAyB,SAAS,yBAAyB;;;;;;;;;;ACTxF,oBAAoB,mBAAO,CAAC,kFAAoB;AAChD;AACA,kBAAkB,kBAAkB;AACpC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,+BAA+B,yBAAyB,SAAS,yBAAyB;;;;;;;;;;AClB1F,oBAAoB,mBAAO,CAAC,kFAAoB;AAChD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL,IAAI;AACJ;AACA;AACA;AACA;AACA,kCAAkC,yBAAyB,SAAS,yBAAyB;;;;;;;;;;ACf7F;AACA;AACA;AACA,GAAG,EAAE,yBAAyB,SAAS,yBAAyB;AAChE;AACA;AACA,kCAAkC,yBAAyB,SAAS,yBAAyB;;;;;;;;;;ACN7F,qBAAqB,mBAAO,CAAC,oFAAqB;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA;AACA,4BAA4B,yBAAyB,SAAS,yBAAyB;;;;;;;;;;ACjBvF;AACA;AACA;AACA;AACA;AACA,yCAAyC,yBAAyB,SAAS,yBAAyB;;;;;;;;;;ACLpG;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA,oCAAoC,yBAAyB,SAAS,yBAAyB;;;;;;;;;;ACP/F;AACA;AACA,yFAAyF;AACzF,IAAI;AACJ;AACA;AACA,GAAG,EAAE,yBAAyB,SAAS,yBAAyB;AAChE;AACA,4CAA4C,yBAAyB,SAAS,yBAAyB;;;;;;;;;;ACRvG;AACA;AACA;AACA,mCAAmC,yBAAyB,SAAS,yBAAyB;;;;;;;;;;ACH9F;AACA;AACA;AACA,qCAAqC,yBAAyB,SAAS,yBAAyB;;;;;;;;;;ACHhG,mCAAmC,mBAAO,CAAC,gHAAmC;AAC9E;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,6BAA6B;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2CAA2C,yBAAyB,SAAS,yBAAyB;;;;;;;;;;AChBtG;AACA;AACA;AACA;AACA;AACA,cAAc,uBAAuB;AACrC;AACA;AACA;AACA;AACA;AACA;AACA,gDAAgD,yBAAyB,SAAS,yBAAyB;;;;;;;;;;ACZ3G,cAAc,sGAAiC;AAC/C,4BAA4B,mBAAO,CAAC,kGAA4B;AAChE;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA,6CAA6C,yBAAyB,SAAS,yBAAyB;;;;;;;;;;ACVxG,cAAc,sGAAiC;AAC/C;AACA,gBAAgB;AAChB;AACA;AACA,GAAG,EAAE,yBAAyB,SAAS,yBAAyB;AAChE;AACA,UAAU;AACV;AACA;AACA;AACA;AACA,KAAK;AACL,iDAAiD;AACjD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,aAAa;AACb,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA,SAAS;AACT;AACA,SAAS;AACT;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC;AACpC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0DAA0D;AAC1D;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,eAAe;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,KAAK;AACL,GAAG;AACH;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,aAAa,SAAS;AACtB;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA,+CAA+C,QAAQ;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA,YAAY;AACZ;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA,+CAA+C,QAAQ;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA,+CAA+C,QAAQ;AACvD;AACA;AACA;AACA,KAAK;AACL;AACA,+CAA+C,QAAQ;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA,GAAG;AACH;AACA,sCAAsC,yBAAyB,SAAS,yBAAyB;;;;;;;;;;AC/SjG;AACA;AACA;AACA;AACA,GAAG,EAAE,yBAAyB,SAAS,yBAAyB;AAChE;AACA;AACA,kCAAkC,yBAAyB,SAAS,yBAAyB;;;;;;;;;;ACP7F,wBAAwB,mBAAO,CAAC,0FAAwB;AACxD,sBAAsB,mBAAO,CAAC,sFAAsB;AACpD,iCAAiC,mBAAO,CAAC,4GAAiC;AAC1E,wBAAwB,mBAAO,CAAC,0FAAwB;AACxD;AACA;AACA;AACA,qCAAqC,yBAAyB,SAAS,yBAAyB;;;;;;;;;;ACPhG,cAAc,sGAAiC;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B,yBAAyB,SAAS,yBAAyB;;;;;;;;;;ACXzF,cAAc,sGAAiC;AAC/C,kBAAkB,mBAAO,CAAC,8EAAkB;AAC5C;AACA;AACA;AACA;AACA,gCAAgC,yBAAyB,SAAS,yBAAyB;;;;;;;;;;ACN3F;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA,GAAG,EAAE,yBAAyB,SAAS,yBAAyB;AAChE;AACA,0BAA0B,yBAAyB,SAAS,yBAAyB;;;;;;;;;;ACTrF,uBAAuB,mBAAO,CAAC,wFAAuB;AACtD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8CAA8C,yBAAyB,SAAS,yBAAyB;;;;;;;;;;ACTzG,qBAAqB,mBAAO,CAAC,oFAAqB;AAClD,qBAAqB,mBAAO,CAAC,oFAAqB;AAClD,uBAAuB,mBAAO,CAAC,wFAAuB;AACtD,gBAAgB,mBAAO,CAAC,0EAAgB;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA,GAAG,EAAE,yBAAyB,SAAS,yBAAyB;AAChE;AACA;AACA,mCAAmC,yBAAyB,SAAS,yBAAyB;;;;;;;;;;AC9B9F;;AAEA,cAAc,mBAAO,CAAC,kGAA+B;AACrD;;AAEA;AACA;AACA;AACA,EAAE;AACF;AACA;AACA,IAAI;AACJ;AACA;AACA;;;;;;;;;;;;;ACd6B;AAC7B,+DAAe,aAAa;;;;;;;;;;;;ACD5B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,MAAM;AACN;AACA;AACA,MAAM;AACN;AACA;AACA,CAAC,sCAAsC,SAAI;AAC3C;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,yBAAyB,cAAc;AACvC;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS,yBAAyB;AAClC;;AAEA;AACA;AACA,oBAAoB;AACpB;AACA;AACA;AACA;AACA,+FAA+F,8BAA8B;AAC7H;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,yDAAyD;AACzD,oBAAoB;AACpB;AACA;AACA;AACA;AACA,2CAA2C;AAC3C,iCAAiC,mBAAmB;AACpD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,iCAAiC,oBAAoB;AACrD;AACA;AACA;AACA;AACA,4FAA4F;AAC5F;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC;AAChC,kDAAkD;AAClD;AACA;;AAEA,oBAAoB,wCAAwC;AAC5D,oBAAoB;;AAEpB;AACA;AACA,4BAA4B;;AAE5B;;AAEA;AACA;;AAEA;AACA;AACA;AACA,gCAAgC,OAAO;AACvC;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+CAA+C,eAAe;AAC9D;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA,0BAA0B;;AAE1B,4CAA4C;AAC5C;AACA,6BAA6B,SAAS;AACtC;AACA,iDAAiD;AACjD;AACA,6BAA6B,SAAS;AACtC;AACA,mCAAmC;AACnC;AACA;AACA,gEAAgE;AAChE;AACA;AACA,6BAA6B,SAAS;AACtC;AACA,2CAA2C;AAC3C,6BAA6B,gBAAgB;AAC7C;AACA;AACA,sGAAsG;AACtG;AACA,yBAAyB,iBAAiB,SAAS;AACnD;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,+CAA+C,gEAAgE;AAC/G;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB;AACzB;AACA;AACA;AACA;AACA;AACA,yBAAyB;AACzB;;AAEA,6DAA6D;AAC7D;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,yBAAyB;AACzB;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,yDAAyD;AACzD,yDAAyD;AACzD,qBAAqB;AACrB;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;;AAEjB;AACA;AACA,SAAS;;AAET;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,sEAAsE;AACtE;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,yBAAyB;AACzB;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,yDAAyD;AACzD,yDAAyD;AACzD,qBAAqB;AACrB;;AAEA;AACA;AACA,8EAA8E;AAC9E;AACA,qCAAqC;AACrC;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;;AAEA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;;AAEA;AACA;AACA,SAAS;;AAET;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,qBAAqB;AACrB;;AAEA;AACA;AACA,SAAS;;AAET;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,iDAAiD;AACjD,iDAAiD;AACjD,aAAa;;AAEb;AACA;;AAEA;AACA,+BAA+B,wBAAwB,qCAAqC;AAC5F,+BAA+B,gBAAgB;AAC/C,SAAS;;AAET;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,CAAC;;AAED,CAAC,sEAAe,EAAE,GAAC;;;;;;;UCnmBnB;UACA;;UAEA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;;UAEA;UACA;;UAEA;UACA;UACA;;;;;WCtBA;WACA;WACA;WACA;WACA,GAAG;WACH;WACA;WACA,CAAC;;;;;UEPD;UACA;UACA;UACA","sources":["webpack://FHIR/./node_modules/abortcontroller-polyfill/dist/abortcontroller-polyfill-only.js","webpack://FHIR/./node_modules/debug/src/browser.js","webpack://FHIR/./node_modules/debug/src/common.js","webpack://FHIR/./src/Client.ts","webpack://FHIR/./src/HttpError.ts","webpack://FHIR/./src/adapters/BrowserAdapter.ts","webpack://FHIR/./src/entry/browser.ts","webpack://FHIR/./src/lib.ts","webpack://FHIR/./src/security/browser.ts","webpack://FHIR/./src/settings.ts","webpack://FHIR/./src/smart.ts","webpack://FHIR/./src/storage/BrowserStorage.ts","webpack://FHIR/./src/strings.ts","webpack://FHIR/./node_modules/core-js/internals/a-callable.js","webpack://FHIR/./node_modules/core-js/internals/a-constructor.js","webpack://FHIR/./node_modules/core-js/internals/a-possible-prototype.js","webpack://FHIR/./node_modules/core-js/internals/add-to-unscopables.js","webpack://FHIR/./node_modules/core-js/internals/advance-string-index.js","webpack://FHIR/./node_modules/core-js/internals/an-instance.js","webpack://FHIR/./node_modules/core-js/internals/an-object.js","webpack://FHIR/./node_modules/core-js/internals/array-buffer-native.js","webpack://FHIR/./node_modules/core-js/internals/array-buffer-view-core.js","webpack://FHIR/./node_modules/core-js/internals/array-buffer.js","webpack://FHIR/./node_modules/core-js/internals/array-copy-within.js","webpack://FHIR/./node_modules/core-js/internals/array-fill.js","webpack://FHIR/./node_modules/core-js/internals/array-for-each.js","webpack://FHIR/./node_modules/core-js/internals/array-from-constructor-and-list.js","webpack://FHIR/./node_modules/core-js/internals/array-from.js","webpack://FHIR/./node_modules/core-js/internals/array-includes.js","webpack://FHIR/./node_modules/core-js/internals/array-iteration.js","webpack://FHIR/./node_modules/core-js/internals/array-last-index-of.js","webpack://FHIR/./node_modules/core-js/internals/array-method-has-species-support.js","webpack://FHIR/./node_modules/core-js/internals/array-method-is-strict.js","webpack://FHIR/./node_modules/core-js/internals/array-reduce.js","webpack://FHIR/./node_modules/core-js/internals/array-slice-simple.js","webpack://FHIR/./node_modules/core-js/internals/array-slice.js","webpack://FHIR/./node_modules/core-js/internals/array-sort.js","webpack://FHIR/./node_modules/core-js/internals/array-species-constructor.js","webpack://FHIR/./node_modules/core-js/internals/array-species-create.js","webpack://FHIR/./node_modules/core-js/internals/call-with-safe-iteration-closing.js","webpack://FHIR/./node_modules/core-js/internals/check-correctness-of-iteration.js","webpack://FHIR/./node_modules/core-js/internals/classof-raw.js","webpack://FHIR/./node_modules/core-js/internals/classof.js","webpack://FHIR/./node_modules/core-js/internals/copy-constructor-properties.js","webpack://FHIR/./node_modules/core-js/internals/correct-is-regexp-logic.js","webpack://FHIR/./node_modules/core-js/internals/correct-prototype-getter.js","webpack://FHIR/./node_modules/core-js/internals/create-html.js","webpack://FHIR/./node_modules/core-js/internals/create-iterator-constructor.js","webpack://FHIR/./node_modules/core-js/internals/create-non-enumerable-property.js","webpack://FHIR/./node_modules/core-js/internals/create-property-descriptor.js","webpack://FHIR/./node_modules/core-js/internals/create-property.js","webpack://FHIR/./node_modules/core-js/internals/define-built-in-accessor.js","webpack://FHIR/./node_modules/core-js/internals/define-built-in.js","webpack://FHIR/./node_modules/core-js/internals/define-built-ins.js","webpack://FHIR/./node_modules/core-js/internals/define-global-property.js","webpack://FHIR/./node_modules/core-js/internals/define-iterator.js","webpack://FHIR/./node_modules/core-js/internals/define-well-known-symbol.js","webpack://FHIR/./node_modules/core-js/internals/delete-property-or-throw.js","webpack://FHIR/./node_modules/core-js/internals/descriptors.js","webpack://FHIR/./node_modules/core-js/internals/document-create-element.js","webpack://FHIR/./node_modules/core-js/internals/does-not-exceed-safe-integer.js","webpack://FHIR/./node_modules/core-js/internals/dom-iterables.js","webpack://FHIR/./node_modules/core-js/internals/dom-token-list-prototype.js","webpack://FHIR/./node_modules/core-js/internals/engine-ff-version.js","webpack://FHIR/./node_modules/core-js/internals/engine-is-browser.js","webpack://FHIR/./node_modules/core-js/internals/engine-is-ie-or-edge.js","webpack://FHIR/./node_modules/core-js/internals/engine-is-ios-pebble.js","webpack://FHIR/./node_modules/core-js/internals/engine-is-ios.js","webpack://FHIR/./node_modules/core-js/internals/engine-is-node.js","webpack://FHIR/./node_modules/core-js/internals/engine-is-webos-webkit.js","webpack://FHIR/./node_modules/core-js/internals/engine-user-agent.js","webpack://FHIR/./node_modules/core-js/internals/engine-v8-version.js","webpack://FHIR/./node_modules/core-js/internals/engine-webkit-version.js","webpack://FHIR/./node_modules/core-js/internals/enum-bug-keys.js","webpack://FHIR/./node_modules/core-js/internals/export.js","webpack://FHIR/./node_modules/core-js/internals/fails.js","webpack://FHIR/./node_modules/core-js/internals/fix-regexp-well-known-symbol-logic.js","webpack://FHIR/./node_modules/core-js/internals/flatten-into-array.js","webpack://FHIR/./node_modules/core-js/internals/function-apply.js","webpack://FHIR/./node_modules/core-js/internals/function-bind-context.js","webpack://FHIR/./node_modules/core-js/internals/function-bind-native.js","webpack://FHIR/./node_modules/core-js/internals/function-bind.js","webpack://FHIR/./node_modules/core-js/internals/function-call.js","webpack://FHIR/./node_modules/core-js/internals/function-name.js","webpack://FHIR/./node_modules/core-js/internals/function-uncurry-this.js","webpack://FHIR/./node_modules/core-js/internals/get-built-in.js","webpack://FHIR/./node_modules/core-js/internals/get-iterator-method.js","webpack://FHIR/./node_modules/core-js/internals/get-iterator.js","webpack://FHIR/./node_modules/core-js/internals/get-method.js","webpack://FHIR/./node_modules/core-js/internals/get-substitution.js","webpack://FHIR/./node_modules/core-js/internals/global.js","webpack://FHIR/./node_modules/core-js/internals/has-own-property.js","webpack://FHIR/./node_modules/core-js/internals/hidden-keys.js","webpack://FHIR/./node_modules/core-js/internals/host-report-errors.js","webpack://FHIR/./node_modules/core-js/internals/html.js","webpack://FHIR/./node_modules/core-js/internals/ie8-dom-define.js","webpack://FHIR/./node_modules/core-js/internals/ieee754.js","webpack://FHIR/./node_modules/core-js/internals/indexed-object.js","webpack://FHIR/./node_modules/core-js/internals/inherit-if-required.js","webpack://FHIR/./node_modules/core-js/internals/inspect-source.js","webpack://FHIR/./node_modules/core-js/internals/internal-state.js","webpack://FHIR/./node_modules/core-js/internals/is-array-iterator-method.js","webpack://FHIR/./node_modules/core-js/internals/is-array.js","webpack://FHIR/./node_modules/core-js/internals/is-callable.js","webpack://FHIR/./node_modules/core-js/internals/is-constructor.js","webpack://FHIR/./node_modules/core-js/internals/is-forced.js","webpack://FHIR/./node_modules/core-js/internals/is-integral-number.js","webpack://FHIR/./node_modules/core-js/internals/is-object.js","webpack://FHIR/./node_modules/core-js/internals/is-pure.js","webpack://FHIR/./node_modules/core-js/internals/is-regexp.js","webpack://FHIR/./node_modules/core-js/internals/is-symbol.js","webpack://FHIR/./node_modules/core-js/internals/iterate.js","webpack://FHIR/./node_modules/core-js/internals/iterator-close.js","webpack://FHIR/./node_modules/core-js/internals/iterators-core.js","webpack://FHIR/./node_modules/core-js/internals/iterators.js","webpack://FHIR/./node_modules/core-js/internals/length-of-array-like.js","webpack://FHIR/./node_modules/core-js/internals/make-built-in.js","webpack://FHIR/./node_modules/core-js/internals/math-trunc.js","webpack://FHIR/./node_modules/core-js/internals/microtask.js","webpack://FHIR/./node_modules/core-js/internals/native-symbol-registry.js","webpack://FHIR/./node_modules/core-js/internals/native-symbol.js","webpack://FHIR/./node_modules/core-js/internals/native-url.js","webpack://FHIR/./node_modules/core-js/internals/native-weak-map.js","webpack://FHIR/./node_modules/core-js/internals/new-promise-capability.js","webpack://FHIR/./node_modules/core-js/internals/not-a-regexp.js","webpack://FHIR/./node_modules/core-js/internals/object-assign.js","webpack://FHIR/./node_modules/core-js/internals/object-create.js","webpack://FHIR/./node_modules/core-js/internals/object-define-properties.js","webpack://FHIR/./node_modules/core-js/internals/object-define-property.js","webpack://FHIR/./node_modules/core-js/internals/object-get-own-property-descriptor.js","webpack://FHIR/./node_modules/core-js/internals/object-get-own-property-names-external.js","webpack://FHIR/./node_modules/core-js/internals/object-get-own-property-names.js","webpack://FHIR/./node_modules/core-js/internals/object-get-own-property-symbols.js","webpack://FHIR/./node_modules/core-js/internals/object-get-prototype-of.js","webpack://FHIR/./node_modules/core-js/internals/object-is-prototype-of.js","webpack://FHIR/./node_modules/core-js/internals/object-keys-internal.js","webpack://FHIR/./node_modules/core-js/internals/object-keys.js","webpack://FHIR/./node_modules/core-js/internals/object-property-is-enumerable.js","webpack://FHIR/./node_modules/core-js/internals/object-set-prototype-of.js","webpack://FHIR/./node_modules/core-js/internals/object-to-string.js","webpack://FHIR/./node_modules/core-js/internals/ordinary-to-primitive.js","webpack://FHIR/./node_modules/core-js/internals/own-keys.js","webpack://FHIR/./node_modules/core-js/internals/path.js","webpack://FHIR/./node_modules/core-js/internals/perform.js","webpack://FHIR/./node_modules/core-js/internals/promise-constructor-detection.js","webpack://FHIR/./node_modules/core-js/internals/promise-native-constructor.js","webpack://FHIR/./node_modules/core-js/internals/promise-resolve.js","webpack://FHIR/./node_modules/core-js/internals/promise-statics-incorrect-iteration.js","webpack://FHIR/./node_modules/core-js/internals/proxy-accessor.js","webpack://FHIR/./node_modules/core-js/internals/queue.js","webpack://FHIR/./node_modules/core-js/internals/regexp-exec-abstract.js","webpack://FHIR/./node_modules/core-js/internals/regexp-exec.js","webpack://FHIR/./node_modules/core-js/internals/regexp-flags.js","webpack://FHIR/./node_modules/core-js/internals/regexp-get-flags.js","webpack://FHIR/./node_modules/core-js/internals/regexp-sticky-helpers.js","webpack://FHIR/./node_modules/core-js/internals/regexp-unsupported-dot-all.js","webpack://FHIR/./node_modules/core-js/internals/regexp-unsupported-ncg.js","webpack://FHIR/./node_modules/core-js/internals/require-object-coercible.js","webpack://FHIR/./node_modules/core-js/internals/same-value.js","webpack://FHIR/./node_modules/core-js/internals/set-species.js","webpack://FHIR/./node_modules/core-js/internals/set-to-string-tag.js","webpack://FHIR/./node_modules/core-js/internals/shared-key.js","webpack://FHIR/./node_modules/core-js/internals/shared-store.js","webpack://FHIR/./node_modules/core-js/internals/shared.js","webpack://FHIR/./node_modules/core-js/internals/species-constructor.js","webpack://FHIR/./node_modules/core-js/internals/string-html-forced.js","webpack://FHIR/./node_modules/core-js/internals/string-multibyte.js","webpack://FHIR/./node_modules/core-js/internals/string-punycode-to-ascii.js","webpack://FHIR/./node_modules/core-js/internals/string-trim-forced.js","webpack://FHIR/./node_modules/core-js/internals/string-trim.js","webpack://FHIR/./node_modules/core-js/internals/symbol-define-to-primitive.js","webpack://FHIR/./node_modules/core-js/internals/task.js","webpack://FHIR/./node_modules/core-js/internals/this-number-value.js","webpack://FHIR/./node_modules/core-js/internals/to-absolute-index.js","webpack://FHIR/./node_modules/core-js/internals/to-big-int.js","webpack://FHIR/./node_modules/core-js/internals/to-index.js","webpack://FHIR/./node_modules/core-js/internals/to-indexed-object.js","webpack://FHIR/./node_modules/core-js/internals/to-integer-or-infinity.js","webpack://FHIR/./node_modules/core-js/internals/to-length.js","webpack://FHIR/./node_modules/core-js/internals/to-object.js","webpack://FHIR/./node_modules/core-js/internals/to-offset.js","webpack://FHIR/./node_modules/core-js/internals/to-positive-integer.js","webpack://FHIR/./node_modules/core-js/internals/to-primitive.js","webpack://FHIR/./node_modules/core-js/internals/to-property-key.js","webpack://FHIR/./node_modules/core-js/internals/to-string-tag-support.js","webpack://FHIR/./node_modules/core-js/internals/to-string.js","webpack://FHIR/./node_modules/core-js/internals/try-to-string.js","webpack://FHIR/./node_modules/core-js/internals/typed-array-constructor.js","webpack://FHIR/./node_modules/core-js/internals/typed-array-constructors-require-wrappers.js","webpack://FHIR/./node_modules/core-js/internals/typed-array-from-species-and-list.js","webpack://FHIR/./node_modules/core-js/internals/typed-array-from.js","webpack://FHIR/./node_modules/core-js/internals/typed-array-species-constructor.js","webpack://FHIR/./node_modules/core-js/internals/uid.js","webpack://FHIR/./node_modules/core-js/internals/use-symbol-as-uid.js","webpack://FHIR/./node_modules/core-js/internals/v8-prototype-define-bug.js","webpack://FHIR/./node_modules/core-js/internals/validate-arguments-length.js","webpack://FHIR/./node_modules/core-js/internals/well-known-symbol-wrapped.js","webpack://FHIR/./node_modules/core-js/internals/well-known-symbol.js","webpack://FHIR/./node_modules/core-js/internals/whitespaces.js","webpack://FHIR/./node_modules/core-js/modules/es.array.concat.js","webpack://FHIR/./node_modules/core-js/modules/es.array.filter.js","webpack://FHIR/./node_modules/core-js/modules/es.array.find.js","webpack://FHIR/./node_modules/core-js/modules/es.array.flat.js","webpack://FHIR/./node_modules/core-js/modules/es.array.includes.js","webpack://FHIR/./node_modules/core-js/modules/es.array.iterator.js","webpack://FHIR/./node_modules/core-js/modules/es.array.join.js","webpack://FHIR/./node_modules/core-js/modules/es.array.map.js","webpack://FHIR/./node_modules/core-js/modules/es.array.slice.js","webpack://FHIR/./node_modules/core-js/modules/es.array.sort.js","webpack://FHIR/./node_modules/core-js/modules/es.array.splice.js","webpack://FHIR/./node_modules/core-js/modules/es.array.unscopables.flat.js","webpack://FHIR/./node_modules/core-js/modules/es.function.name.js","webpack://FHIR/./node_modules/core-js/modules/es.global-this.js","webpack://FHIR/./node_modules/core-js/modules/es.json.stringify.js","webpack://FHIR/./node_modules/core-js/modules/es.number.constructor.js","webpack://FHIR/./node_modules/core-js/modules/es.object.assign.js","webpack://FHIR/./node_modules/core-js/modules/es.object.get-own-property-descriptor.js","webpack://FHIR/./node_modules/core-js/modules/es.object.get-own-property-descriptors.js","webpack://FHIR/./node_modules/core-js/modules/es.object.get-own-property-symbols.js","webpack://FHIR/./node_modules/core-js/modules/es.object.keys.js","webpack://FHIR/./node_modules/core-js/modules/es.object.to-string.js","webpack://FHIR/./node_modules/core-js/modules/es.promise.all.js","webpack://FHIR/./node_modules/core-js/modules/es.promise.catch.js","webpack://FHIR/./node_modules/core-js/modules/es.promise.constructor.js","webpack://FHIR/./node_modules/core-js/modules/es.promise.finally.js","webpack://FHIR/./node_modules/core-js/modules/es.promise.js","webpack://FHIR/./node_modules/core-js/modules/es.promise.race.js","webpack://FHIR/./node_modules/core-js/modules/es.promise.reject.js","webpack://FHIR/./node_modules/core-js/modules/es.promise.resolve.js","webpack://FHIR/./node_modules/core-js/modules/es.reflect.construct.js","webpack://FHIR/./node_modules/core-js/modules/es.regexp.constructor.js","webpack://FHIR/./node_modules/core-js/modules/es.regexp.exec.js","webpack://FHIR/./node_modules/core-js/modules/es.regexp.to-string.js","webpack://FHIR/./node_modules/core-js/modules/es.string.includes.js","webpack://FHIR/./node_modules/core-js/modules/es.string.iterator.js","webpack://FHIR/./node_modules/core-js/modules/es.string.link.js","webpack://FHIR/./node_modules/core-js/modules/es.string.match.js","webpack://FHIR/./node_modules/core-js/modules/es.string.replace.js","webpack://FHIR/./node_modules/core-js/modules/es.string.search.js","webpack://FHIR/./node_modules/core-js/modules/es.string.split.js","webpack://FHIR/./node_modules/core-js/modules/es.string.trim.js","webpack://FHIR/./node_modules/core-js/modules/es.symbol.constructor.js","webpack://FHIR/./node_modules/core-js/modules/es.symbol.for.js","webpack://FHIR/./node_modules/core-js/modules/es.symbol.js","webpack://FHIR/./node_modules/core-js/modules/es.symbol.key-for.js","webpack://FHIR/./node_modules/core-js/modules/es.typed-array.copy-within.js","webpack://FHIR/./node_modules/core-js/modules/es.typed-array.every.js","webpack://FHIR/./node_modules/core-js/modules/es.typed-array.fill.js","webpack://FHIR/./node_modules/core-js/modules/es.typed-array.filter.js","webpack://FHIR/./node_modules/core-js/modules/es.typed-array.find-index.js","webpack://FHIR/./node_modules/core-js/modules/es.typed-array.find.js","webpack://FHIR/./node_modules/core-js/modules/es.typed-array.for-each.js","webpack://FHIR/./node_modules/core-js/modules/es.typed-array.includes.js","webpack://FHIR/./node_modules/core-js/modules/es.typed-array.index-of.js","webpack://FHIR/./node_modules/core-js/modules/es.typed-array.iterator.js","webpack://FHIR/./node_modules/core-js/modules/es.typed-array.join.js","webpack://FHIR/./node_modules/core-js/modules/es.typed-array.last-index-of.js","webpack://FHIR/./node_modules/core-js/modules/es.typed-array.map.js","webpack://FHIR/./node_modules/core-js/modules/es.typed-array.reduce-right.js","webpack://FHIR/./node_modules/core-js/modules/es.typed-array.reduce.js","webpack://FHIR/./node_modules/core-js/modules/es.typed-array.reverse.js","webpack://FHIR/./node_modules/core-js/modules/es.typed-array.set.js","webpack://FHIR/./node_modules/core-js/modules/es.typed-array.slice.js","webpack://FHIR/./node_modules/core-js/modules/es.typed-array.some.js","webpack://FHIR/./node_modules/core-js/modules/es.typed-array.sort.js","webpack://FHIR/./node_modules/core-js/modules/es.typed-array.subarray.js","webpack://FHIR/./node_modules/core-js/modules/es.typed-array.to-locale-string.js","webpack://FHIR/./node_modules/core-js/modules/es.typed-array.to-string.js","webpack://FHIR/./node_modules/core-js/modules/es.typed-array.uint8-array.js","webpack://FHIR/./node_modules/core-js/modules/esnext.global-this.js","webpack://FHIR/./node_modules/core-js/modules/web.dom-collections.for-each.js","webpack://FHIR/./node_modules/core-js/modules/web.dom-collections.iterator.js","webpack://FHIR/./node_modules/core-js/modules/web.url-search-params.constructor.js","webpack://FHIR/./node_modules/core-js/modules/web.url-search-params.js","webpack://FHIR/./node_modules/core-js/modules/web.url.constructor.js","webpack://FHIR/./node_modules/core-js/modules/web.url.js","webpack://FHIR/./node_modules/cross-fetch/dist/browser-ponyfill.js","webpack://FHIR/./node_modules/js-base64/base64.js","webpack://FHIR/./node_modules/ms/index.js","webpack://FHIR/./node_modules/@babel/runtime/helpers/arrayLikeToArray.js","webpack://FHIR/./node_modules/@babel/runtime/helpers/arrayWithoutHoles.js","webpack://FHIR/./node_modules/@babel/runtime/helpers/assertThisInitialized.js","webpack://FHIR/./node_modules/@babel/runtime/helpers/asyncToGenerator.js","webpack://FHIR/./node_modules/@babel/runtime/helpers/classCallCheck.js","webpack://FHIR/./node_modules/@babel/runtime/helpers/construct.js","webpack://FHIR/./node_modules/@babel/runtime/helpers/createClass.js","webpack://FHIR/./node_modules/@babel/runtime/helpers/defineProperty.js","webpack://FHIR/./node_modules/@babel/runtime/helpers/getPrototypeOf.js","webpack://FHIR/./node_modules/@babel/runtime/helpers/inherits.js","webpack://FHIR/./node_modules/@babel/runtime/helpers/interopRequireDefault.js","webpack://FHIR/./node_modules/@babel/runtime/helpers/isNativeFunction.js","webpack://FHIR/./node_modules/@babel/runtime/helpers/isNativeReflectConstruct.js","webpack://FHIR/./node_modules/@babel/runtime/helpers/iterableToArray.js","webpack://FHIR/./node_modules/@babel/runtime/helpers/nonIterableSpread.js","webpack://FHIR/./node_modules/@babel/runtime/helpers/objectWithoutProperties.js","webpack://FHIR/./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js","webpack://FHIR/./node_modules/@babel/runtime/helpers/possibleConstructorReturn.js","webpack://FHIR/./node_modules/@babel/runtime/helpers/regeneratorRuntime.js","webpack://FHIR/./node_modules/@babel/runtime/helpers/setPrototypeOf.js","webpack://FHIR/./node_modules/@babel/runtime/helpers/toConsumableArray.js","webpack://FHIR/./node_modules/@babel/runtime/helpers/toPrimitive.js","webpack://FHIR/./node_modules/@babel/runtime/helpers/toPropertyKey.js","webpack://FHIR/./node_modules/@babel/runtime/helpers/typeof.js","webpack://FHIR/./node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js","webpack://FHIR/./node_modules/@babel/runtime/helpers/wrapNativeSuper.js","webpack://FHIR/./node_modules/@babel/runtime/regenerator/index.js","webpack://FHIR/./node_modules/isomorphic-webcrypto/src/browser.mjs","webpack://FHIR/./node_modules/isomorphic-webcrypto/src/webcrypto-shim.mjs","webpack://FHIR/webpack/bootstrap","webpack://FHIR/webpack/runtime/global","webpack://FHIR/webpack/before-startup","webpack://FHIR/webpack/startup","webpack://FHIR/webpack/after-startup"],"sourcesContent":["(function (factory) {\n typeof define === 'function' && define.amd ? define(factory) :\n factory();\n}((function () { 'use strict';\n\n function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n }\n\n function _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n\n function _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n }\n\n function _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n if (superClass) _setPrototypeOf(subClass, superClass);\n }\n\n function _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n }\n\n function _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n\n return _setPrototypeOf(o, p);\n }\n\n function _isNativeReflectConstruct() {\n if (typeof Reflect === \"undefined\" || !Reflect.construct) return false;\n if (Reflect.construct.sham) return false;\n if (typeof Proxy === \"function\") return true;\n\n try {\n Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {}));\n return true;\n } catch (e) {\n return false;\n }\n }\n\n function _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return self;\n }\n\n function _possibleConstructorReturn(self, call) {\n if (call && (typeof call === \"object\" || typeof call === \"function\")) {\n return call;\n }\n\n return _assertThisInitialized(self);\n }\n\n function _createSuper(Derived) {\n var hasNativeReflectConstruct = _isNativeReflectConstruct();\n\n return function _createSuperInternal() {\n var Super = _getPrototypeOf(Derived),\n result;\n\n if (hasNativeReflectConstruct) {\n var NewTarget = _getPrototypeOf(this).constructor;\n\n result = Reflect.construct(Super, arguments, NewTarget);\n } else {\n result = Super.apply(this, arguments);\n }\n\n return _possibleConstructorReturn(this, result);\n };\n }\n\n function _superPropBase(object, property) {\n while (!Object.prototype.hasOwnProperty.call(object, property)) {\n object = _getPrototypeOf(object);\n if (object === null) break;\n }\n\n return object;\n }\n\n function _get(target, property, receiver) {\n if (typeof Reflect !== \"undefined\" && Reflect.get) {\n _get = Reflect.get;\n } else {\n _get = function _get(target, property, receiver) {\n var base = _superPropBase(target, property);\n\n if (!base) return;\n var desc = Object.getOwnPropertyDescriptor(base, property);\n\n if (desc.get) {\n return desc.get.call(receiver);\n }\n\n return desc.value;\n };\n }\n\n return _get(target, property, receiver || target);\n }\n\n var Emitter = /*#__PURE__*/function () {\n function Emitter() {\n _classCallCheck(this, Emitter);\n\n Object.defineProperty(this, 'listeners', {\n value: {},\n writable: true,\n configurable: true\n });\n }\n\n _createClass(Emitter, [{\n key: \"addEventListener\",\n value: function addEventListener(type, callback, options) {\n if (!(type in this.listeners)) {\n this.listeners[type] = [];\n }\n\n this.listeners[type].push({\n callback: callback,\n options: options\n });\n }\n }, {\n key: \"removeEventListener\",\n value: function removeEventListener(type, callback) {\n if (!(type in this.listeners)) {\n return;\n }\n\n var stack = this.listeners[type];\n\n for (var i = 0, l = stack.length; i < l; i++) {\n if (stack[i].callback === callback) {\n stack.splice(i, 1);\n return;\n }\n }\n }\n }, {\n key: \"dispatchEvent\",\n value: function dispatchEvent(event) {\n if (!(event.type in this.listeners)) {\n return;\n }\n\n var stack = this.listeners[event.type];\n var stackToCall = stack.slice();\n\n for (var i = 0, l = stackToCall.length; i < l; i++) {\n var listener = stackToCall[i];\n\n try {\n listener.callback.call(this, event);\n } catch (e) {\n Promise.resolve().then(function () {\n throw e;\n });\n }\n\n if (listener.options && listener.options.once) {\n this.removeEventListener(event.type, listener.callback);\n }\n }\n\n return !event.defaultPrevented;\n }\n }]);\n\n return Emitter;\n }();\n\n var AbortSignal = /*#__PURE__*/function (_Emitter) {\n _inherits(AbortSignal, _Emitter);\n\n var _super = _createSuper(AbortSignal);\n\n function AbortSignal() {\n var _this;\n\n _classCallCheck(this, AbortSignal);\n\n _this = _super.call(this); // Some versions of babel does not transpile super() correctly for IE <= 10, if the parent\n // constructor has failed to run, then \"this.listeners\" will still be undefined and then we call\n // the parent constructor directly instead as a workaround. For general details, see babel bug:\n // https://github.com/babel/babel/issues/3041\n // This hack was added as a fix for the issue described here:\n // https://github.com/Financial-Times/polyfill-library/pull/59#issuecomment-477558042\n\n if (!_this.listeners) {\n Emitter.call(_assertThisInitialized(_this));\n } // Compared to assignment, Object.defineProperty makes properties non-enumerable by default and\n // we want Object.keys(new AbortController().signal) to be [] for compat with the native impl\n\n\n Object.defineProperty(_assertThisInitialized(_this), 'aborted', {\n value: false,\n writable: true,\n configurable: true\n });\n Object.defineProperty(_assertThisInitialized(_this), 'onabort', {\n value: null,\n writable: true,\n configurable: true\n });\n return _this;\n }\n\n _createClass(AbortSignal, [{\n key: \"toString\",\n value: function toString() {\n return '[object AbortSignal]';\n }\n }, {\n key: \"dispatchEvent\",\n value: function dispatchEvent(event) {\n if (event.type === 'abort') {\n this.aborted = true;\n\n if (typeof this.onabort === 'function') {\n this.onabort.call(this, event);\n }\n }\n\n _get(_getPrototypeOf(AbortSignal.prototype), \"dispatchEvent\", this).call(this, event);\n }\n }]);\n\n return AbortSignal;\n }(Emitter);\n var AbortController = /*#__PURE__*/function () {\n function AbortController() {\n _classCallCheck(this, AbortController);\n\n // Compared to assignment, Object.defineProperty makes properties non-enumerable by default and\n // we want Object.keys(new AbortController()) to be [] for compat with the native impl\n Object.defineProperty(this, 'signal', {\n value: new AbortSignal(),\n writable: true,\n configurable: true\n });\n }\n\n _createClass(AbortController, [{\n key: \"abort\",\n value: function abort() {\n var event;\n\n try {\n event = new Event('abort');\n } catch (e) {\n if (typeof document !== 'undefined') {\n if (!document.createEvent) {\n // For Internet Explorer 8:\n event = document.createEventObject();\n event.type = 'abort';\n } else {\n // For Internet Explorer 11:\n event = document.createEvent('Event');\n event.initEvent('abort', false, false);\n }\n } else {\n // Fallback where document isn't available:\n event = {\n type: 'abort',\n bubbles: false,\n cancelable: false\n };\n }\n }\n\n this.signal.dispatchEvent(event);\n }\n }, {\n key: \"toString\",\n value: function toString() {\n return '[object AbortController]';\n }\n }]);\n\n return AbortController;\n }();\n\n if (typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n // These are necessary to make sure that we get correct output for:\n // Object.prototype.toString.call(new AbortController())\n AbortController.prototype[Symbol.toStringTag] = 'AbortController';\n AbortSignal.prototype[Symbol.toStringTag] = 'AbortSignal';\n }\n\n function polyfillNeeded(self) {\n if (self.__FORCE_INSTALL_ABORTCONTROLLER_POLYFILL) {\n console.log('__FORCE_INSTALL_ABORTCONTROLLER_POLYFILL=true is set, will force install polyfill');\n return true;\n } // Note that the \"unfetch\" minimal fetch polyfill defines fetch() without\n // defining window.Request, and this polyfill need to work on top of unfetch\n // so the below feature detection needs the !self.AbortController part.\n // The Request.prototype check is also needed because Safari versions 11.1.2\n // up to and including 12.1.x has a window.AbortController present but still\n // does NOT correctly implement abortable fetch:\n // https://bugs.webkit.org/show_bug.cgi?id=174980#c2\n\n\n return typeof self.Request === 'function' && !self.Request.prototype.hasOwnProperty('signal') || !self.AbortController;\n }\n\n (function (self) {\n\n if (!polyfillNeeded(self)) {\n return;\n }\n\n self.AbortController = AbortController;\n self.AbortSignal = AbortSignal;\n })(typeof self !== 'undefined' ? self : global);\n\n})));\n","/* eslint-env browser */\n\n/**\n * This is the web browser implementation of `debug()`.\n */\n\nexports.formatArgs = formatArgs;\nexports.save = save;\nexports.load = load;\nexports.useColors = useColors;\nexports.storage = localstorage();\nexports.destroy = (() => {\n\tlet warned = false;\n\n\treturn () => {\n\t\tif (!warned) {\n\t\t\twarned = true;\n\t\t\tconsole.warn('Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.');\n\t\t}\n\t};\n})();\n\n/**\n * Colors.\n */\n\nexports.colors = [\n\t'#0000CC',\n\t'#0000FF',\n\t'#0033CC',\n\t'#0033FF',\n\t'#0066CC',\n\t'#0066FF',\n\t'#0099CC',\n\t'#0099FF',\n\t'#00CC00',\n\t'#00CC33',\n\t'#00CC66',\n\t'#00CC99',\n\t'#00CCCC',\n\t'#00CCFF',\n\t'#3300CC',\n\t'#3300FF',\n\t'#3333CC',\n\t'#3333FF',\n\t'#3366CC',\n\t'#3366FF',\n\t'#3399CC',\n\t'#3399FF',\n\t'#33CC00',\n\t'#33CC33',\n\t'#33CC66',\n\t'#33CC99',\n\t'#33CCCC',\n\t'#33CCFF',\n\t'#6600CC',\n\t'#6600FF',\n\t'#6633CC',\n\t'#6633FF',\n\t'#66CC00',\n\t'#66CC33',\n\t'#9900CC',\n\t'#9900FF',\n\t'#9933CC',\n\t'#9933FF',\n\t'#99CC00',\n\t'#99CC33',\n\t'#CC0000',\n\t'#CC0033',\n\t'#CC0066',\n\t'#CC0099',\n\t'#CC00CC',\n\t'#CC00FF',\n\t'#CC3300',\n\t'#CC3333',\n\t'#CC3366',\n\t'#CC3399',\n\t'#CC33CC',\n\t'#CC33FF',\n\t'#CC6600',\n\t'#CC6633',\n\t'#CC9900',\n\t'#CC9933',\n\t'#CCCC00',\n\t'#CCCC33',\n\t'#FF0000',\n\t'#FF0033',\n\t'#FF0066',\n\t'#FF0099',\n\t'#FF00CC',\n\t'#FF00FF',\n\t'#FF3300',\n\t'#FF3333',\n\t'#FF3366',\n\t'#FF3399',\n\t'#FF33CC',\n\t'#FF33FF',\n\t'#FF6600',\n\t'#FF6633',\n\t'#FF9900',\n\t'#FF9933',\n\t'#FFCC00',\n\t'#FFCC33'\n];\n\n/**\n * Currently only WebKit-based Web Inspectors, Firefox >= v31,\n * and the Firebug extension (any Firefox version) are known\n * to support \"%c\" CSS customizations.\n *\n * TODO: add a `localStorage` variable to explicitly enable/disable colors\n */\n\n// eslint-disable-next-line complexity\nfunction useColors() {\n\t// NB: In an Electron preload script, document will be defined but not fully\n\t// initialized. Since we know we're in Chrome, we'll just detect this case\n\t// explicitly\n\tif (typeof window !== 'undefined' && window.process && (window.process.type === 'renderer' || window.process.__nwjs)) {\n\t\treturn true;\n\t}\n\n\t// Internet Explorer and Edge do not support colors.\n\tif (typeof navigator !== 'undefined' && navigator.userAgent && navigator.userAgent.toLowerCase().match(/(edge|trident)\\/(\\d+)/)) {\n\t\treturn false;\n\t}\n\n\t// Is webkit? http://stackoverflow.com/a/16459606/376773\n\t// document is undefined in react-native: https://github.com/facebook/react-native/pull/1632\n\treturn (typeof document !== 'undefined' && document.documentElement && document.documentElement.style && document.documentElement.style.WebkitAppearance) ||\n\t\t// Is firebug? http://stackoverflow.com/a/398120/376773\n\t\t(typeof window !== 'undefined' && window.console && (window.console.firebug || (window.console.exception && window.console.table))) ||\n\t\t// Is firefox >= v31?\n\t\t// https://developer.mozilla.org/en-US/docs/Tools/Web_Console#Styling_messages\n\t\t(typeof navigator !== 'undefined' && navigator.userAgent && navigator.userAgent.toLowerCase().match(/firefox\\/(\\d+)/) && parseInt(RegExp.$1, 10) >= 31) ||\n\t\t// Double check webkit in userAgent just in case we are in a worker\n\t\t(typeof navigator !== 'undefined' && navigator.userAgent && navigator.userAgent.toLowerCase().match(/applewebkit\\/(\\d+)/));\n}\n\n/**\n * Colorize log arguments if enabled.\n *\n * @api public\n */\n\nfunction formatArgs(args) {\n\targs[0] = (this.useColors ? '%c' : '') +\n\t\tthis.namespace +\n\t\t(this.useColors ? ' %c' : ' ') +\n\t\targs[0] +\n\t\t(this.useColors ? '%c ' : ' ') +\n\t\t'+' + module.exports.humanize(this.diff);\n\n\tif (!this.useColors) {\n\t\treturn;\n\t}\n\n\tconst c = 'color: ' + this.color;\n\targs.splice(1, 0, c, 'color: inherit');\n\n\t// The final \"%c\" is somewhat tricky, because there could be other\n\t// arguments passed either before or after the %c, so we need to\n\t// figure out the correct index to insert the CSS into\n\tlet index = 0;\n\tlet lastC = 0;\n\targs[0].replace(/%[a-zA-Z%]/g, match => {\n\t\tif (match === '%%') {\n\t\t\treturn;\n\t\t}\n\t\tindex++;\n\t\tif (match === '%c') {\n\t\t\t// We only are interested in the *last* %c\n\t\t\t// (the user may have provided their own)\n\t\t\tlastC = index;\n\t\t}\n\t});\n\n\targs.splice(lastC, 0, c);\n}\n\n/**\n * Invokes `console.debug()` when available.\n * No-op when `console.debug` is not a \"function\".\n * If `console.debug` is not available, falls back\n * to `console.log`.\n *\n * @api public\n */\nexports.log = console.debug || console.log || (() => {});\n\n/**\n * Save `namespaces`.\n *\n * @param {String} namespaces\n * @api private\n */\nfunction save(namespaces) {\n\ttry {\n\t\tif (namespaces) {\n\t\t\texports.storage.setItem('debug', namespaces);\n\t\t} else {\n\t\t\texports.storage.removeItem('debug');\n\t\t}\n\t} catch (error) {\n\t\t// Swallow\n\t\t// XXX (@Qix-) should we be logging these?\n\t}\n}\n\n/**\n * Load `namespaces`.\n *\n * @return {String} returns the previously persisted debug modes\n * @api private\n */\nfunction load() {\n\tlet r;\n\ttry {\n\t\tr = exports.storage.getItem('debug');\n\t} catch (error) {\n\t\t// Swallow\n\t\t// XXX (@Qix-) should we be logging these?\n\t}\n\n\t// If debug isn't set in LS, and we're in Electron, try to load $DEBUG\n\tif (!r && typeof process !== 'undefined' && 'env' in process) {\n\t\tr = process.env.DEBUG;\n\t}\n\n\treturn r;\n}\n\n/**\n * Localstorage attempts to return the localstorage.\n *\n * This is necessary because safari throws\n * when a user disables cookies/localstorage\n * and you attempt to access it.\n *\n * @return {LocalStorage}\n * @api private\n */\n\nfunction localstorage() {\n\ttry {\n\t\t// TVMLKit (Apple TV JS Runtime) does not have a window object, just localStorage in the global context\n\t\t// The Browser also has localStorage in the global context.\n\t\treturn localStorage;\n\t} catch (error) {\n\t\t// Swallow\n\t\t// XXX (@Qix-) should we be logging these?\n\t}\n}\n\nmodule.exports = require('./common')(exports);\n\nconst {formatters} = module.exports;\n\n/**\n * Map %j to `JSON.stringify()`, since no Web Inspectors do that by default.\n */\n\nformatters.j = function (v) {\n\ttry {\n\t\treturn JSON.stringify(v);\n\t} catch (error) {\n\t\treturn '[UnexpectedJSONParseError]: ' + error.message;\n\t}\n};\n","\n/**\n * This is the common logic for both the Node.js and web browser\n * implementations of `debug()`.\n */\n\nfunction setup(env) {\n\tcreateDebug.debug = createDebug;\n\tcreateDebug.default = createDebug;\n\tcreateDebug.coerce = coerce;\n\tcreateDebug.disable = disable;\n\tcreateDebug.enable = enable;\n\tcreateDebug.enabled = enabled;\n\tcreateDebug.humanize = require('ms');\n\tcreateDebug.destroy = destroy;\n\n\tObject.keys(env).forEach(key => {\n\t\tcreateDebug[key] = env[key];\n\t});\n\n\t/**\n\t* The currently active debug mode names, and names to skip.\n\t*/\n\n\tcreateDebug.names = [];\n\tcreateDebug.skips = [];\n\n\t/**\n\t* Map of special \"%n\" handling functions, for the debug \"format\" argument.\n\t*\n\t* Valid key names are a single, lower or upper-case letter, i.e. \"n\" and \"N\".\n\t*/\n\tcreateDebug.formatters = {};\n\n\t/**\n\t* Selects a color for a debug namespace\n\t* @param {String} namespace The namespace string for the debug instance to be colored\n\t* @return {Number|String} An ANSI color code for the given namespace\n\t* @api private\n\t*/\n\tfunction selectColor(namespace) {\n\t\tlet hash = 0;\n\n\t\tfor (let i = 0; i < namespace.length; i++) {\n\t\t\thash = ((hash << 5) - hash) + namespace.charCodeAt(i);\n\t\t\thash |= 0; // Convert to 32bit integer\n\t\t}\n\n\t\treturn createDebug.colors[Math.abs(hash) % createDebug.colors.length];\n\t}\n\tcreateDebug.selectColor = selectColor;\n\n\t/**\n\t* Create a debugger with the given `namespace`.\n\t*\n\t* @param {String} namespace\n\t* @return {Function}\n\t* @api public\n\t*/\n\tfunction createDebug(namespace) {\n\t\tlet prevTime;\n\t\tlet enableOverride = null;\n\t\tlet namespacesCache;\n\t\tlet enabledCache;\n\n\t\tfunction debug(...args) {\n\t\t\t// Disabled?\n\t\t\tif (!debug.enabled) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst self = debug;\n\n\t\t\t// Set `diff` timestamp\n\t\t\tconst curr = Number(new Date());\n\t\t\tconst ms = curr - (prevTime || curr);\n\t\t\tself.diff = ms;\n\t\t\tself.prev = prevTime;\n\t\t\tself.curr = curr;\n\t\t\tprevTime = curr;\n\n\t\t\targs[0] = createDebug.coerce(args[0]);\n\n\t\t\tif (typeof args[0] !== 'string') {\n\t\t\t\t// Anything else let's inspect with %O\n\t\t\t\targs.unshift('%O');\n\t\t\t}\n\n\t\t\t// Apply any `formatters` transformations\n\t\t\tlet index = 0;\n\t\t\targs[0] = args[0].replace(/%([a-zA-Z%])/g, (match, format) => {\n\t\t\t\t// If we encounter an escaped % then don't increase the array index\n\t\t\t\tif (match === '%%') {\n\t\t\t\t\treturn '%';\n\t\t\t\t}\n\t\t\t\tindex++;\n\t\t\t\tconst formatter = createDebug.formatters[format];\n\t\t\t\tif (typeof formatter === 'function') {\n\t\t\t\t\tconst val = args[index];\n\t\t\t\t\tmatch = formatter.call(self, val);\n\n\t\t\t\t\t// Now we need to remove `args[index]` since it's inlined in the `format`\n\t\t\t\t\targs.splice(index, 1);\n\t\t\t\t\tindex--;\n\t\t\t\t}\n\t\t\t\treturn match;\n\t\t\t});\n\n\t\t\t// Apply env-specific formatting (colors, etc.)\n\t\t\tcreateDebug.formatArgs.call(self, args);\n\n\t\t\tconst logFn = self.log || createDebug.log;\n\t\t\tlogFn.apply(self, args);\n\t\t}\n\n\t\tdebug.namespace = namespace;\n\t\tdebug.useColors = createDebug.useColors();\n\t\tdebug.color = createDebug.selectColor(namespace);\n\t\tdebug.extend = extend;\n\t\tdebug.destroy = createDebug.destroy; // XXX Temporary. Will be removed in the next major release.\n\n\t\tObject.defineProperty(debug, 'enabled', {\n\t\t\tenumerable: true,\n\t\t\tconfigurable: false,\n\t\t\tget: () => {\n\t\t\t\tif (enableOverride !== null) {\n\t\t\t\t\treturn enableOverride;\n\t\t\t\t}\n\t\t\t\tif (namespacesCache !== createDebug.namespaces) {\n\t\t\t\t\tnamespacesCache = createDebug.namespaces;\n\t\t\t\t\tenabledCache = createDebug.enabled(namespace);\n\t\t\t\t}\n\n\t\t\t\treturn enabledCache;\n\t\t\t},\n\t\t\tset: v => {\n\t\t\t\tenableOverride = v;\n\t\t\t}\n\t\t});\n\n\t\t// Env-specific initialization logic for debug instances\n\t\tif (typeof createDebug.init === 'function') {\n\t\t\tcreateDebug.init(debug);\n\t\t}\n\n\t\treturn debug;\n\t}\n\n\tfunction extend(namespace, delimiter) {\n\t\tconst newDebug = createDebug(this.namespace + (typeof delimiter === 'undefined' ? ':' : delimiter) + namespace);\n\t\tnewDebug.log = this.log;\n\t\treturn newDebug;\n\t}\n\n\t/**\n\t* Enables a debug mode by namespaces. This can include modes\n\t* separated by a colon and wildcards.\n\t*\n\t* @param {String} namespaces\n\t* @api public\n\t*/\n\tfunction enable(namespaces) {\n\t\tcreateDebug.save(namespaces);\n\t\tcreateDebug.namespaces = namespaces;\n\n\t\tcreateDebug.names = [];\n\t\tcreateDebug.skips = [];\n\n\t\tlet i;\n\t\tconst split = (typeof namespaces === 'string' ? namespaces : '').split(/[\\s,]+/);\n\t\tconst len = split.length;\n\n\t\tfor (i = 0; i < len; i++) {\n\t\t\tif (!split[i]) {\n\t\t\t\t// ignore empty strings\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\tnamespaces = split[i].replace(/\\*/g, '.*?');\n\n\t\t\tif (namespaces[0] === '-') {\n\t\t\t\tcreateDebug.skips.push(new RegExp('^' + namespaces.slice(1) + '$'));\n\t\t\t} else {\n\t\t\t\tcreateDebug.names.push(new RegExp('^' + namespaces + '$'));\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t* Disable debug output.\n\t*\n\t* @return {String} namespaces\n\t* @api public\n\t*/\n\tfunction disable() {\n\t\tconst namespaces = [\n\t\t\t...createDebug.names.map(toNamespace),\n\t\t\t...createDebug.skips.map(toNamespace).map(namespace => '-' + namespace)\n\t\t].join(',');\n\t\tcreateDebug.enable('');\n\t\treturn namespaces;\n\t}\n\n\t/**\n\t* Returns true if the given mode name is enabled, false otherwise.\n\t*\n\t* @param {String} name\n\t* @return {Boolean}\n\t* @api public\n\t*/\n\tfunction enabled(name) {\n\t\tif (name[name.length - 1] === '*') {\n\t\t\treturn true;\n\t\t}\n\n\t\tlet i;\n\t\tlet len;\n\n\t\tfor (i = 0, len = createDebug.skips.length; i < len; i++) {\n\t\t\tif (createDebug.skips[i].test(name)) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\n\t\tfor (i = 0, len = createDebug.names.length; i < len; i++) {\n\t\t\tif (createDebug.names[i].test(name)) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\n\t\treturn false;\n\t}\n\n\t/**\n\t* Convert regexp to namespace\n\t*\n\t* @param {RegExp} regxep\n\t* @return {String} namespace\n\t* @api private\n\t*/\n\tfunction toNamespace(regexp) {\n\t\treturn regexp.toString()\n\t\t\t.substring(2, regexp.toString().length - 2)\n\t\t\t.replace(/\\.\\*\\?$/, '*');\n\t}\n\n\t/**\n\t* Coerce `val`.\n\t*\n\t* @param {Mixed} val\n\t* @return {Mixed}\n\t* @api private\n\t*/\n\tfunction coerce(val) {\n\t\tif (val instanceof Error) {\n\t\t\treturn val.stack || val.message;\n\t\t}\n\t\treturn val;\n\t}\n\n\t/**\n\t* XXX DO NOT USE. This is a temporary stub function.\n\t* XXX It WILL be removed in the next major release.\n\t*/\n\tfunction destroy() {\n\t\tconsole.warn('Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.');\n\t}\n\n\tcreateDebug.enable(createDebug.load());\n\n\treturn createDebug;\n}\n\nmodule.exports = setup;\n","import {\n absolute,\n debug as _debug,\n getPath,\n setPath,\n jwtDecode,\n makeArray,\n request,\n byCode,\n byCodes,\n units,\n getPatientParam,\n fetchConformanceStatement,\n getAccessTokenExpiration,\n assertJsonPatch,\n assert\n} from \"./lib\";\n\nimport str from \"./strings\";\nimport { SMART_KEY, patientCompartment, fhirVersions } from \"./settings\";\nimport HttpError from \"./HttpError\";\nimport BrowserAdapter from \"./adapters/BrowserAdapter\";\nimport { fhirclient } from \"./types\";\n\n// $lab:coverage:off$\n// @ts-ignore\nconst { Response } = typeof FHIRCLIENT_PURE !== \"undefined\" ? window : require(\"cross-fetch\");\n// $lab:coverage:on$\n\nconst debug = _debug.extend(\"client\");\n\n/**\n * Adds patient context to requestOptions object to be used with [[Client.request]]\n * @param requestOptions Can be a string URL (relative to the serviceUrl), or an\n * object which will be passed to fetch()\n * @param client Current FHIR client object containing patient context\n * @return requestOptions object contextualized to current patient\n */\nasync function contextualize(\n requestOptions: string | URL | fhirclient.RequestOptions,\n client: Client\n): Promise\n{\n const base = absolute(\"/\", client.state.serverUrl);\n\n async function contextualURL(_url: URL) {\n const resourceType = _url.pathname.split(\"/\").pop();\n assert(resourceType, `Invalid url \"${_url}\"`);\n assert(patientCompartment.indexOf(resourceType) > -1, `Cannot filter \"${resourceType}\" resources by patient`);\n const conformance = await fetchConformanceStatement(client.state.serverUrl);\n const searchParam = getPatientParam(conformance, resourceType);\n _url.searchParams.set(searchParam, client.patient.id as string);\n return _url.href;\n }\n\n if (typeof requestOptions == \"string\" || requestOptions instanceof URL) {\n return { url: await contextualURL(new URL(requestOptions + \"\", base)) };\n }\n\n requestOptions.url = await contextualURL(new URL(requestOptions.url + \"\", base));\n return requestOptions;\n}\n\n/**\n * Gets single reference by id. Caches the result.\n * @param refId\n * @param cache A map to store the resolved refs\n * @param client The client instance\n * @param [signal] The `AbortSignal` if any\n * @returns The resolved reference\n * @private\n */\nfunction getRef(\n refId: string,\n cache: Record,\n client: Client,\n signal?: AbortSignal\n): Promise {\n if (!cache[refId]) {\n\n // Note that we set cache[refId] immediately! When the promise is\n // settled it will be updated. This is to avoid a ref being fetched\n // twice because some of these requests are executed in parallel.\n cache[refId] = client.request({\n url: refId,\n signal\n }).then(res => {\n cache[refId] = res;\n return res;\n }, (error: Error) => {\n delete cache[refId];\n throw error;\n });\n }\n\n return Promise.resolve(cache[refId]);\n}\n\n/**\n * Resolves a reference in the given resource.\n * @param obj FHIR Resource\n */\nfunction resolveRef(\n obj: fhirclient.FHIR.Resource,\n path: string,\n graph: boolean,\n cache: fhirclient.JsonObject,\n client: Client,\n signal?: AbortSignal\n) {\n const node = getPath(obj, path);\n if (node) {\n const isArray = Array.isArray(node);\n return Promise.all(makeArray(node).filter(Boolean).map((item, i) => {\n const ref = item.reference;\n if (ref) {\n return getRef(ref, cache, client, signal).then(sub => {\n if (graph) {\n if (isArray) {\n if (path.indexOf(\"..\") > -1) {\n setPath(obj, `${path.replace(\"..\", `.${i}.`)}`, sub); \n } else {\n setPath(obj, `${path}.${i}`, sub);\n }\n } else {\n setPath(obj, path, sub);\n }\n }\n }).catch((ex) => {\n /* ignore missing references */\n if (ex.status !== 404) {\n throw ex;\n }\n });\n }\n }));\n }\n}\n\n/**\n * Given a resource and a list of ref paths - resolves them all\n * @param obj FHIR Resource\n * @param fhirOptions The fhir options of the initiating request call\n * @param cache A map to store fetched refs\n * @param client The client instance\n * @private\n */\nfunction resolveRefs(\n obj: fhirclient.FHIR.Resource,\n fhirOptions: fhirclient.FhirOptions,\n cache: fhirclient.JsonObject,\n client: Client,\n signal?: AbortSignal\n) {\n\n // 1. Sanitize paths, remove any invalid ones\n let paths = makeArray(fhirOptions.resolveReferences)\n .filter(Boolean) // No false, 0, null, undefined or \"\"\n .map(path => String(path).trim())\n .filter(Boolean); // No space-only strings\n\n // 2. Remove duplicates\n paths = paths.filter((p, i) => {\n const index = paths.indexOf(p, i + 1);\n if (index > -1) {\n debug(\"Duplicated reference path \\\"%s\\\"\", p);\n return false;\n }\n return true;\n });\n\n // 3. Early exit if no valid paths are found\n if (!paths.length) {\n return Promise.resolve();\n }\n\n // 4. Group the paths by depth so that child refs are looked up\n // after their parents!\n const groups: Record = {};\n paths.forEach(path => {\n const len = path.split(\".\").length;\n if (!groups[len]) {\n groups[len] = [];\n }\n groups[len].push(path);\n });\n\n // 5. Execute groups sequentially! Paths within same group are\n // fetched in parallel!\n let task: Promise = Promise.resolve();\n Object.keys(groups).sort().forEach(len => {\n const group = groups[len];\n task = task.then(() => Promise.all(group.map((path: string) => {\n return resolveRef(obj, path, !!fhirOptions.graph, cache, client, signal);\n })));\n });\n return task;\n}\n\n/**\n * This is a FHIR client that is returned to you from the `ready()` call of the\n * **SMART API**. You can also create it yourself if needed:\n *\n * ```js\n * // BROWSER\n * const client = FHIR.client(\"https://r4.smarthealthit.org\");\n *\n * // SERVER\n * const client = smart(req, res).client(\"https://r4.smarthealthit.org\");\n * ```\n */\nexport default class Client\n{\n /**\n * The state of the client instance is an object with various properties.\n * It contains some details about how the client has been authorized and\n * determines the behavior of the client instance. This state is persisted\n * in `SessionStorage` in browsers or in request session on the servers.\n */\n readonly state: fhirclient.ClientState;\n\n /**\n * The adapter to use to connect to the current environment. Currently we have:\n * - BrowserAdapter - for browsers\n * - NodeAdapter - for Express or vanilla NodeJS servers\n * - HapiAdapter - for HAPI NodeJS servers\n */\n readonly environment: fhirclient.Adapter;\n\n /**\n * A SMART app is typically associated with a patient. This is a namespace\n * for the patient-related functionality of the client.\n */\n readonly patient: {\n\n /**\n * The ID of the current patient or `null` if there is no current patient\n */\n id: string | null\n\n /**\n * A method to fetch the current patient resource from the FHIR server.\n * If there is no patient context, it will reject with an error.\n * @param {fhirclient.FetchOptions} [requestOptions] Any options to pass to the `fetch` call.\n * @category Request\n */\n read: fhirclient.RequestFunction\n \n /**\n * This is similar to [[request]] but it makes requests in the\n * context of the current patient. For example, instead of doing\n * ```js\n * client.request(\"Observation?patient=\" + client.patient.id)\n * ```\n * you can do\n * ```js\n * client.patient.request(\"Observation\")\n * ```\n * The return type depends on the arguments. Typically it will be the\n * response payload JSON object. Can also be a string or the `Response`\n * object itself if we have received a non-json result, which allows us\n * to handle even binary responses. Can also be a [[CombinedFetchResult]]\n * object if the `requestOptions.includeResponse`s has been set to true.\n * @category Request\n */\n request: (\n requestOptions: string|URL|fhirclient.RequestOptions,\n fhirOptions?: fhirclient.FhirOptions\n ) => Promise\n\n /**\n * This is the FhirJS Patient API. It will ONLY exist if the `Client`\n * instance is \"connected\" to FhirJS.\n */\n api?: Record\n };\n\n /**\n * The client may be associated with a specific encounter, if the scopes\n * permit that and if the back-end server supports that. This is a namespace\n * for encounter-related functionality.\n */\n readonly encounter: {\n\n /**\n * The ID of the current encounter or `null` if there is no current\n * encounter\n */\n id: string | null\n\n /**\n * A method to fetch the current encounter resource from the FHIR server.\n * If there is no encounter context, it will reject with an error.\n * @param [requestOptions] Any options to pass to the `fetch` call.\n * @category Request\n */\n read: fhirclient.RequestFunction\n };\n\n /**\n * The client may be associated with a specific user, if the scopes\n * permit that. This is a namespace for user-related functionality.\n */\n readonly user: {\n\n /**\n * The ID of the current user or `null` if there is no current user\n */\n id: string | null\n\n /**\n * A method to fetch the current user resource from the FHIR server.\n * If there is no user context, it will reject with an error.\n * @param [requestOptions] Any options to pass to the `fetch` call.\n * @category Request\n */\n read: fhirclient.RequestFunction<\n fhirclient.FHIR.Patient |\n fhirclient.FHIR.Practitioner |\n fhirclient.FHIR.RelatedPerson\n >\n\n /**\n * Returns the profile of the logged_in user (if any), or null if the\n * user is not available. This is a string having the shape\n * `{user type}/{user id}`. For example `Practitioner/abc` or\n * `Patient/xyz`.\n * @alias client.getFhirUser()\n */\n fhirUser: string | null\n\n /**\n * Returns the type of the logged-in user or null. The result can be\n * `Practitioner`, `Patient` or `RelatedPerson`.\n * @alias client.getUserType()\n */\n resourceType: string | null\n };\n\n /**\n * The [FhirJS](https://github.com/FHIR/fhir.js/blob/master/README.md) API.\n * **NOTE:** This will only be available if `fhir.js` is used. Otherwise it\n * will be `undefined`.\n */\n api: Record | undefined;\n\n /**\n * Refers to the refresh task while it is being performed.\n * @see [[refresh]]\n */\n private _refreshTask: Promise | null;\n\n /**\n * Validates the parameters, creates an instance and tries to connect it to\n * FhirJS, if one is available globally.\n */\n constructor(environment: fhirclient.Adapter, state: fhirclient.ClientState | string)\n {\n const _state = typeof state == \"string\" ? { serverUrl: state } : state;\n\n // Valid serverUrl is required!\n assert(\n _state.serverUrl && _state.serverUrl.match(/https?:\\/\\/.+/),\n \"A \\\"serverUrl\\\" option is required and must begin with \\\"http(s)\\\"\"\n );\n\n this.state = _state;\n this.environment = environment;\n this._refreshTask = null;\n\n const client = this;\n\n // patient api ---------------------------------------------------------\n this.patient = {\n get id() { return client.getPatientId(); },\n read: (requestOptions) => {\n const id = this.patient.id;\n return id ?\n this.request({ ...requestOptions, url: `Patient/${id}` }) :\n Promise.reject(new Error(\"Patient is not available\"));\n },\n request: (requestOptions, fhirOptions = {}) => {\n if (this.patient.id) {\n return (async () => {\n const options = await contextualize(requestOptions, this);\n return this.request(options, fhirOptions);\n })();\n } else {\n return Promise.reject(new Error(\"Patient is not available\"));\n }\n }\n };\n\n // encounter api -------------------------------------------------------\n this.encounter = {\n get id() { return client.getEncounterId(); },\n read: requestOptions => {\n const id = this.encounter.id;\n return id ?\n this.request({ ...requestOptions, url: `Encounter/${id}` }) :\n Promise.reject(new Error(\"Encounter is not available\"));\n }\n };\n\n // user api ------------------------------------------------------------\n this.user = {\n get fhirUser() { return client.getFhirUser(); },\n get id() { return client.getUserId(); },\n get resourceType() { return client.getUserType(); },\n read: requestOptions => {\n const fhirUser = this.user.fhirUser;\n return fhirUser ?\n this.request({ ...requestOptions, url: fhirUser }) :\n Promise.reject(new Error(\"User is not available\"));\n }\n };\n\n // fhir.js api (attached automatically in browser)\n // ---------------------------------------------------------------------\n this.connect((environment as BrowserAdapter).fhir);\n }\n\n /**\n * This method is used to make the \"link\" between the `fhirclient` and the\n * `fhir.js`, if one is available.\n * **Note:** This is called by the constructor. If fhir.js is available in\n * the global scope as `fhir`, it will automatically be linked to any [[Client]]\n * instance. You should only use this method to connect to `fhir.js` which\n * is not global.\n */\n connect(fhirJs?: (options: Record) => Record): Client\n {\n if (typeof fhirJs == \"function\") {\n const options: Record = {\n baseUrl: this.state.serverUrl.replace(/\\/$/, \"\")\n };\n\n const accessToken = this.getState(\"tokenResponse.access_token\");\n if (accessToken) {\n options.auth = { token: accessToken };\n }\n else {\n const { username, password } = this.state;\n if (username && password) {\n options.auth = {\n user: username,\n pass: password\n };\n }\n }\n this.api = fhirJs(options);\n\n const patientId = this.getState(\"tokenResponse.patient\");\n if (patientId) {\n this.patient.api = fhirJs({\n ...options,\n patient: patientId\n });\n }\n }\n return this;\n }\n\n /**\n * Returns the ID of the selected patient or null. You should have requested\n * \"launch/patient\" scope. Otherwise this will return null.\n */\n getPatientId(): string | null\n {\n const tokenResponse = this.state.tokenResponse;\n if (tokenResponse) {\n // We have been authorized against this server but we don't know\n // the patient. This should be a scope issue.\n if (!tokenResponse.patient) {\n if (!(this.state.scope || \"\").match(/\\blaunch(\\/patient)?\\b/)) {\n debug(str.noScopeForId, \"patient\", \"patient\");\n }\n else {\n // The server should have returned the patient!\n debug(\"The ID of the selected patient is not available. Please check if your server supports that.\");\n }\n return null;\n }\n return tokenResponse.patient;\n }\n\n if (this.state.authorizeUri) {\n debug(str.noIfNoAuth, \"the ID of the selected patient\");\n }\n else {\n debug(str.noFreeContext, \"selected patient\");\n }\n return null;\n }\n\n /**\n * Returns the ID of the selected encounter or null. You should have\n * requested \"launch/encounter\" scope. Otherwise this will return null.\n * Note that not all servers support the \"launch/encounter\" scope so this\n * will be null if they don't.\n */\n getEncounterId(): string | null\n {\n const tokenResponse = this.state.tokenResponse;\n if (tokenResponse) {\n // We have been authorized against this server but we don't know\n // the encounter. This should be a scope issue.\n if (!tokenResponse.encounter) {\n if (!(this.state.scope || \"\").match(/\\blaunch(\\/encounter)?\\b/)) {\n debug(str.noScopeForId, \"encounter\", \"encounter\");\n }\n else {\n // The server should have returned the encounter!\n debug(\"The ID of the selected encounter is not available. Please check if your server supports that, and that the selected patient has any recorded encounters.\");\n }\n return null;\n }\n return tokenResponse.encounter;\n }\n\n if (this.state.authorizeUri) {\n debug(str.noIfNoAuth, \"the ID of the selected encounter\");\n }\n else {\n debug(str.noFreeContext, \"selected encounter\");\n }\n return null;\n }\n\n /**\n * Returns the (decoded) id_token if any. You need to request \"openid\" and\n * \"profile\" scopes if you need to receive an id_token (if you need to know\n * who the logged-in user is).\n */\n getIdToken(): fhirclient.IDToken | null\n {\n const tokenResponse = this.state.tokenResponse;\n if (tokenResponse) {\n const idToken = tokenResponse.id_token;\n const scope = this.state.scope || \"\";\n\n // We have been authorized against this server but we don't have\n // the id_token. This should be a scope issue.\n if (!idToken) {\n const hasOpenid = scope.match(/\\bopenid\\b/);\n const hasProfile = scope.match(/\\bprofile\\b/);\n const hasFhirUser = scope.match(/\\bfhirUser\\b/);\n if (!hasOpenid || !(hasFhirUser || hasProfile)) {\n debug(\n \"You are trying to get the id_token but you are not \" +\n \"using the right scopes. Please add 'openid' and \" +\n \"'fhirUser' or 'profile' to the scopes you are \" +\n \"requesting.\"\n );\n }\n else {\n // The server should have returned the id_token!\n debug(\"The id_token is not available. Please check if your server supports that.\");\n }\n return null;\n }\n return jwtDecode(idToken, this.environment) as fhirclient.IDToken;\n }\n if (this.state.authorizeUri) {\n debug(str.noIfNoAuth, \"the id_token\");\n }\n else {\n debug(str.noFreeContext, \"id_token\");\n }\n return null;\n }\n\n /**\n * Returns the profile of the logged_in user (if any). This is a string\n * having the following shape `\"{user type}/{user id}\"`. For example:\n * `\"Practitioner/abc\"` or `\"Patient/xyz\"`.\n */\n getFhirUser(): string | null\n {\n const idToken = this.getIdToken();\n if (idToken) {\n // Epic may return a full url\n // @see https://github.com/smart-on-fhir/client-js/issues/105\n if (idToken.fhirUser) {\n return idToken.fhirUser.split(\"/\").slice(-2).join(\"/\");\n }\n return idToken.profile\n }\n return null;\n }\n\n /**\n * Returns the user ID or null.\n */\n getUserId(): string | null\n {\n const profile = this.getFhirUser();\n if (profile) {\n return profile.split(\"/\")[1];\n }\n return null;\n }\n\n /**\n * Returns the type of the logged-in user or null. The result can be\n * \"Practitioner\", \"Patient\" or \"RelatedPerson\".\n */\n getUserType(): string | null\n {\n const profile = this.getFhirUser();\n if (profile) {\n return profile.split(\"/\")[0];\n }\n return null;\n }\n\n /**\n * Builds and returns the value of the `Authorization` header that can be\n * sent to the FHIR server\n */\n getAuthorizationHeader(): string | null\n {\n const accessToken = this.getState(\"tokenResponse.access_token\");\n if (accessToken) {\n return \"Bearer \" + accessToken;\n }\n const { username, password } = this.state;\n if (username && password) {\n return \"Basic \" + this.environment.btoa(username + \":\" + password);\n }\n return null;\n }\n\n /**\n * Used internally to clear the state of the instance and the state in the\n * associated storage.\n */\n private async _clearState() {\n const storage = this.environment.getStorage();\n const key = await storage.get(SMART_KEY);\n if (key) {\n await storage.unset(key);\n }\n await storage.unset(SMART_KEY);\n this.state.tokenResponse = {};\n }\n\n /**\n * Creates a new resource in a server-assigned location\n * @see http://hl7.org/fhir/http.html#create\n * @param resource A FHIR resource to be created\n * @param [requestOptions] Any options to be passed to the fetch call.\n * Note that `method` and `body` will be ignored.\n * @category Request\n */\n create(\n resource: fhirclient.FHIR.Resource,\n requestOptions?: O\n ): Promise : R>\n {\n return this.request({\n ...requestOptions,\n url: `${resource.resourceType}`,\n method: \"POST\",\n body: JSON.stringify(resource),\n headers: {\n // TODO: Do we need to alternate with \"application/json+fhir\"?\n \"content-type\": \"application/json\",\n ...(requestOptions || {}).headers\n }\n });\n }\n\n /**\n * Creates a new current version for an existing resource or creates an\n * initial version if no resource already exists for the given id.\n * @see http://hl7.org/fhir/http.html#update\n * @param resource A FHIR resource to be updated\n * @param requestOptions Any options to be passed to the fetch call.\n * Note that `method` and `body` will be ignored.\n * @category Request\n */\n update(\n resource: fhirclient.FHIR.Resource,\n requestOptions?: O\n ): Promise : R>\n {\n return this.request({\n ...requestOptions,\n url: `${resource.resourceType}/${resource.id}`,\n method: \"PUT\",\n body: JSON.stringify(resource),\n headers: {\n // TODO: Do we need to alternate with \"application/json+fhir\"?\n \"content-type\": \"application/json\",\n ...(requestOptions || {}).headers\n }\n });\n }\n\n /**\n * Removes an existing resource.\n * @see http://hl7.org/fhir/http.html#delete\n * @param url Relative URI of the FHIR resource to be deleted\n * (format: `resourceType/id`)\n * @param requestOptions Any options (except `method` which will be fixed\n * to `DELETE`) to be passed to the fetch call.\n * @category Request\n */\n delete(url: string, requestOptions: fhirclient.FetchOptions = {}): Promise\n {\n return this.request({\n ...requestOptions,\n url,\n method: \"DELETE\"\n });\n }\n\n /**\n * Makes a JSON Patch to the given resource\n * @see http://hl7.org/fhir/http.html#patch\n * @param url Relative URI of the FHIR resource to be patched\n * (format: `resourceType/id`)\n * @param patch A JSON Patch array to send to the server, For details\n * see https://datatracker.ietf.org/doc/html/rfc6902\n * @param requestOptions Any options to be passed to the fetch call,\n * except for `method`, `url` and `body` which cannot be overridden.\n * @since 2.4.0\n * @category Request\n * @typeParam ResolveType This method would typically resolve with the\n * patched resource or reject with an OperationOutcome. However, this may\n * depend on the server implementation or even on the request headers.\n * For that reason, if the default resolve type (which is\n * [[fhirclient.FHIR.Resource]]) does not work for you, you can pass\n * in your own resolve type parameter.\n */\n async patch(url: string, patch: fhirclient.JsonPatch, requestOptions: fhirclient.FetchOptions = {}): Promise\n {\n assertJsonPatch(patch);\n return this.request({\n ...requestOptions,\n url,\n method: \"PATCH\",\n body: JSON.stringify(patch),\n headers: {\n \"prefer\": \"return=presentation\",\n \"content-type\": \"application/json-patch+json; charset=UTF-8\",\n ...requestOptions.headers,\n }\n });\n }\n\n /**\n * @param requestOptions Can be a string URL (relative to the serviceUrl),\n * or an object which will be passed to fetch()\n * @param fhirOptions Additional options to control the behavior\n * @param _resolvedRefs DO NOT USE! Used internally.\n * @category Request\n */\n async request(\n requestOptions: string|URL|fhirclient.RequestOptions,\n fhirOptions: fhirclient.FhirOptions = {},\n _resolvedRefs: fhirclient.JsonObject = {}\n ): Promise\n {\n const debugRequest = _debug.extend(\"client:request\");\n assert(requestOptions, \"request requires an url or request options as argument\");\n\n // url -----------------------------------------------------------------\n let url: string;\n if (typeof requestOptions == \"string\" || requestOptions instanceof URL) {\n url = String(requestOptions);\n requestOptions = {} as fhirclient.RequestOptions;\n }\n else {\n url = String(requestOptions.url);\n }\n\n url = absolute(url, this.state.serverUrl);\n\n const options = {\n graph: fhirOptions.graph !== false,\n flat : !!fhirOptions.flat,\n pageLimit: fhirOptions.pageLimit ?? 1,\n resolveReferences: (fhirOptions.resolveReferences || []) as string[],\n useRefreshToken: fhirOptions.useRefreshToken !== false,\n onPage: typeof fhirOptions.onPage == \"function\" ?\n fhirOptions.onPage as (\n data: fhirclient.JsonObject | fhirclient.JsonObject[],\n references?: fhirclient.JsonObject | undefined) => any :\n undefined\n };\n\n const signal = (requestOptions as RequestInit).signal || undefined;\n\n // Refresh the access token if needed\n const job = options.useRefreshToken ?\n this.refreshIfNeeded({ signal }).then(() => requestOptions as fhirclient.RequestOptions) :\n Promise.resolve(requestOptions as fhirclient.RequestOptions);\n\n let response: Response | undefined;\n\n return job\n\n // Add the Authorization header now, after the access token might\n // have been updated\n .then(requestOptions => {\n const authHeader = this.getAuthorizationHeader();\n if (authHeader) {\n requestOptions.headers = {\n ...requestOptions.headers,\n authorization: authHeader\n };\n }\n return requestOptions;\n })\n \n // Make the request\n .then(requestOptions => {\n debugRequest(\n \"%s, options: %O, fhirOptions: %O\",\n url,\n requestOptions,\n options\n );\n return request(url, requestOptions).then(result => {\n if (requestOptions.includeResponse) {\n response = (result as fhirclient.CombinedFetchResult).response;\n return (result as fhirclient.CombinedFetchResult).body;\n }\n return result;\n });\n })\n\n // Handle 401 ------------------------------------------------------\n .catch(async (error: HttpError) => {\n if (error.status == 401) {\n\n // !accessToken -> not authorized -> No session. Need to launch.\n if (!this.getState(\"tokenResponse.access_token\")) {\n error.message += \"\\nThis app cannot be accessed directly. Please launch it as SMART app!\";\n throw error;\n }\n\n // auto-refresh not enabled and Session expired.\n // Need to re-launch. Clear state to start over!\n if (!options.useRefreshToken) {\n debugRequest(\"Your session has expired and the useRefreshToken option is set to false. Please re-launch the app.\");\n await this._clearState();\n error.message += \"\\n\" + str.expired;\n throw error;\n }\n\n // In rare cases we may have a valid access token and a refresh\n // token and the request might still fail with 401 just because\n // the access token has just been revoked.\n\n // otherwise -> auto-refresh failed. Session expired.\n // Need to re-launch. Clear state to start over!\n debugRequest(\"Auto-refresh failed! Please re-launch the app.\");\n await this._clearState();\n error.message += \"\\n\" + str.expired;\n throw error;\n }\n throw error;\n })\n\n // Handle 403 ------------------------------------------------------\n .catch((error: HttpError) => {\n if (error.status == 403) {\n debugRequest(\"Permission denied! Please make sure that you have requested the proper scopes.\");\n }\n throw error;\n })\n\n .then((data: any) => {\n\n // At this point we don't know what `data` actually is!\n\n // We might gen an empty or falsy result. If so return it as is\n if (!data)\n return data;\n \n // Handle raw responses\n if (typeof data == \"string\" || data instanceof Response)\n return data;\n\n // Resolve References ------------------------------------------\n return (async (_data: fhirclient.FHIR.Resource) => {\n\n if (_data.resourceType == \"Bundle\") {\n await Promise.all(((_data as fhirclient.FHIR.Bundle).entry || []).map(item => resolveRefs(\n item.resource,\n options,\n _resolvedRefs,\n this,\n signal\n )));\n }\n else {\n await resolveRefs(\n _data,\n options,\n _resolvedRefs,\n this,\n signal\n );\n }\n\n return _data;\n })(data)\n\n // Pagination ----------------------------------------------\n .then(async _data => {\n if (_data && _data.resourceType == \"Bundle\") {\n const links = (_data.link || []) as fhirclient.FHIR.BundleLink[];\n\n if (options.flat) {\n _data = (_data.entry || []).map(\n (entry: fhirclient.FHIR.BundleEntry) => entry.resource\n );\n }\n\n if (options.onPage) {\n await options.onPage(_data, { ..._resolvedRefs });\n }\n\n if (--options.pageLimit) {\n const next = links.find(l => l.relation == \"next\");\n _data = makeArray(_data);\n if (next && next.url) {\n const nextPage = await this.request(\n {\n url: next.url,\n\n // Aborting the main request (even after it is complete)\n // must propagate to any child requests and abort them!\n // To do so, just pass the same AbortSignal if one is\n // provided.\n signal\n },\n options,\n _resolvedRefs\n );\n\n if (options.onPage) {\n return null;\n }\n\n if (options.resolveReferences.length) {\n Object.assign(_resolvedRefs, nextPage.references);\n return _data.concat(makeArray(nextPage.data || nextPage));\n }\n return _data.concat(makeArray(nextPage));\n }\n }\n }\n return _data;\n })\n\n // Finalize ------------------------------------------------\n .then(_data => {\n if (options.graph) {\n _resolvedRefs = {};\n }\n else if (!options.onPage && options.resolveReferences.length) {\n return {\n data: _data,\n references: _resolvedRefs\n };\n }\n return _data;\n })\n .then(_data => {\n if ((requestOptions as fhirclient.FetchOptions).includeResponse) {\n return {\n body: _data,\n response\n }\n }\n return _data;\n });\n });\n }\n\n /**\n * Checks if access token and refresh token are present. If they are, and if\n * the access token is expired or is about to expire in the next 10 seconds,\n * calls `this.refresh()` to obtain new access token.\n * @param requestOptions Any options to pass to the fetch call. Most of them\n * will be overridden, bit it might still be useful for passing additional\n * request options or an abort signal.\n * @category Request\n */\n refreshIfNeeded(requestOptions: RequestInit = {}): Promise\n {\n const accessToken = this.getState(\"tokenResponse.access_token\");\n const refreshToken = this.getState(\"tokenResponse.refresh_token\");\n const expiresAt = this.state.expiresAt || 0;\n\n if (accessToken && refreshToken && expiresAt - 10 < Date.now() / 1000) {\n return this.refresh(requestOptions);\n }\n\n return Promise.resolve(this.state);\n }\n\n /**\n * Use the refresh token to obtain new access token. If the refresh token is\n * expired (or this fails for any other reason) it will be deleted from the\n * state, so that we don't enter into loops trying to re-authorize.\n *\n * This method is typically called internally from [[request]] if\n * certain request fails with 401.\n *\n * @param requestOptions Any options to pass to the fetch call. Most of them\n * will be overridden, bit it might still be useful for passing additional\n * request options or an abort signal.\n * @category Request\n */\n refresh(requestOptions: RequestInit = {}): Promise\n {\n const debugRefresh = _debug.extend(\"client:refresh\");\n debugRefresh(\"Attempting to refresh with refresh_token...\");\n\n const refreshToken = this.state?.tokenResponse?.refresh_token;\n assert(refreshToken, \"Unable to refresh. No refresh_token found.\");\n\n const tokenUri = this.state.tokenUri;\n assert(tokenUri, \"Unable to refresh. No tokenUri found.\");\n\n const scopes = this.getState(\"tokenResponse.scope\") || \"\";\n const hasOfflineAccess = scopes.search(/\\boffline_access\\b/) > -1;\n const hasOnlineAccess = scopes.search(/\\bonline_access\\b/) > -1;\n assert(hasOfflineAccess || hasOnlineAccess, \"Unable to refresh. No offline_access or online_access scope found.\");\n\n // This method is typically called internally from `request` if certain\n // request fails with 401. However, clients will often run multiple\n // requests in parallel which may result in multiple refresh calls.\n // To avoid that, we keep a reference to the current refresh task (if any).\n if (!this._refreshTask) {\n\n const refreshRequestOptions = {\n credentials: this.environment.options.refreshTokenWithCredentials || \"same-origin\",\n ...requestOptions,\n method : \"POST\",\n mode : \"cors\" as RequestMode,\n headers: {\n ...(requestOptions.headers || {}),\n \"content-type\": \"application/x-www-form-urlencoded\"\n },\n body: `grant_type=refresh_token&refresh_token=${encodeURIComponent(refreshToken)}`\n };\n\n // custom authorization header can be passed on manual calls\n if (!(\"authorization\" in refreshRequestOptions.headers)) {\n const { clientSecret, clientId } = this.state;\n if (clientSecret) {\n // @ts-ignore\n refreshRequestOptions.headers.authorization = \"Basic \" + this.environment.btoa(\n clientId + \":\" + clientSecret\n );\n }\n }\n\n this._refreshTask = request(tokenUri, refreshRequestOptions)\n .then(data => {\n assert(data.access_token, \"No access token received\");\n debugRefresh(\"Received new access token response %O\", data);\n this.state.tokenResponse = { ...this.state.tokenResponse, ...data };\n this.state.expiresAt = getAccessTokenExpiration(data, this.environment);\n return this.state;\n })\n .catch((error: Error) => {\n if (this.state?.tokenResponse?.refresh_token) {\n debugRefresh(\"Deleting the expired or invalid refresh token.\");\n delete this.state.tokenResponse.refresh_token;\n }\n throw error;\n })\n .finally(() => {\n this._refreshTask = null;\n const key = this.state.key;\n if (key) {\n this.environment.getStorage().set(key, this.state);\n } else {\n debugRefresh(\"No 'key' found in Clint.state. Cannot persist the instance.\");\n }\n });\n }\n\n return this._refreshTask;\n }\n\n // utils -------------------------------------------------------------------\n\n /**\n * Groups the observations by code. Returns a map that will look like:\n * ```js\n * const map = client.byCodes(observations, \"code\");\n * // map = {\n * // \"55284-4\": [ observation1, observation2 ],\n * // \"6082-2\": [ observation3 ]\n * // }\n * ```\n * @param observations Array of observations\n * @param property The name of a CodeableConcept property to group by\n * @todo This should be deprecated and moved elsewhere. One should not have\n * to obtain an instance of [[Client]] just to use utility functions like this.\n * @deprecated\n * @category Utility\n */\n byCode(\n observations: fhirclient.FHIR.Observation | fhirclient.FHIR.Observation[],\n property: string\n ): fhirclient.ObservationMap\n {\n return byCode(observations, property);\n }\n\n /**\n * First groups the observations by code using `byCode`. Then returns a function\n * that accepts codes as arguments and will return a flat array of observations\n * having that codes. Example:\n * ```js\n * const filter = client.byCodes(observations, \"category\");\n * filter(\"laboratory\") // => [ observation1, observation2 ]\n * filter(\"vital-signs\") // => [ observation3 ]\n * filter(\"laboratory\", \"vital-signs\") // => [ observation1, observation2, observation3 ]\n * ```\n * @param observations Array of observations\n * @param property The name of a CodeableConcept property to group by\n * @todo This should be deprecated and moved elsewhere. One should not have\n * to obtain an instance of [[Client]] just to use utility functions like this.\n * @deprecated\n * @category Utility\n */\n byCodes(\n observations: fhirclient.FHIR.Observation | fhirclient.FHIR.Observation[],\n property: string\n ): (...codes: string[]) => any[]\n {\n return byCodes(observations, property);\n }\n\n /**\n * @category Utility\n */\n units = units;\n\n /**\n * Walks through an object (or array) and returns the value found at the\n * provided path. This function is very simple so it intentionally does not\n * support any argument polymorphism, meaning that the path can only be a\n * dot-separated string. If the path is invalid returns undefined.\n * @param obj The object (or Array) to walk through\n * @param path The path (eg. \"a.b.4.c\")\n * @returns {*} Whatever is found in the path or undefined\n * @todo This should be deprecated and moved elsewhere. One should not have\n * to obtain an instance of [[Client]] just to use utility functions like this.\n * @deprecated\n * @category Utility\n */\n getPath(obj: Record, path = \"\"): any {\n return getPath(obj, path);\n }\n\n /**\n * Returns a copy of the client state. Accepts a dot-separated path argument\n * (same as for `getPath`) to allow for selecting specific properties.\n * Examples:\n * ```js\n * client.getState(); // -> the entire state object\n * client.getState(\"serverUrl\"); // -> the URL we are connected to\n * client.getState(\"tokenResponse.patient\"); // -> The selected patient ID (if any)\n * ```\n * @param path The path (eg. \"a.b.4.c\")\n * @returns {*} Whatever is found in the path or undefined\n */\n getState(path = \"\") {\n return getPath({ ...this.state }, path);\n }\n\n /**\n * Returns a promise that will be resolved with the fhir version as defined\n * in the CapabilityStatement.\n */\n getFhirVersion(): Promise {\n return fetchConformanceStatement(this.state.serverUrl)\n .then((metadata) => metadata.fhirVersion);\n }\n\n /**\n * Returns a promise that will be resolved with the numeric fhir version\n * - 2 for DSTU2\n * - 3 for STU3\n * - 4 for R4\n * - 0 if the version is not known\n */\n getFhirRelease(): Promise {\n return this.getFhirVersion().then(v => (fhirVersions as any)[v] ?? 0);\n }\n}\n","import { fhirclient } from \"./types\";\n\n\nexport default class HttpError extends Error\n{\n /**\n * The HTTP status code for this error\n */\n statusCode: number;\n\n /**\n * The HTTP status code for this error.\n * Note that this is the same as `status`, i.e. the code is available\n * through any of these.\n */\n status: number;\n\n /**\n * The HTTP status text corresponding to this error\n */\n statusText: string;\n\n /**\n * Reference to the HTTP Response object\n */\n response: Response;\n\n constructor(response: Response) {\n super(`${response.status} ${response.statusText}\\nURL: ${response.url}`);\n this.name = \"HttpError\";\n this.response = response;\n this.statusCode = response.status;\n this.status = response.status;\n this.statusText = response.statusText;\n }\n\n async parse()\n {\n if (!this.response.bodyUsed) {\n try {\n const type = this.response.headers.get(\"content-type\") || \"text/plain\";\n if (type.match(/\\bjson\\b/i)) {\n let body = await this.response.json();\n if (body.error) {\n this.message += \"\\n\" + body.error;\n if (body.error_description) {\n this.message += \": \" + body.error_description;\n }\n }\n else {\n this.message += \"\\n\\n\" + JSON.stringify(body, null, 4);\n }\n }\n else if (type.match(/^text\\//i)) {\n let body = await this.response.text();\n if (body) {\n this.message += \"\\n\\n\" + body;\n }\n }\n } catch {\n // ignore\n }\n }\n\n return this;\n }\n\n toJSON() {\n return {\n name : this.name,\n statusCode: this.statusCode,\n status : this.status,\n statusText: this.statusText,\n message : this.message\n };\n }\n}\n","import { ready, authorize, init } from \"../smart\";\nimport Client from \"../Client\";\nimport BrowserStorage from \"../storage/BrowserStorage\";\nimport { fhirclient } from \"../types\";\nimport * as security from \"../security/browser\"\nimport { encodeURL, decode, fromUint8Array } from \"js-base64\"\n\n/**\n * Browser Adapter\n */\nexport default class BrowserAdapter implements fhirclient.Adapter\n{\n /**\n * Stores the URL instance associated with this adapter\n */\n private _url: URL | null = null;\n\n /**\n * Holds the Storage instance associated with this instance\n */\n private _storage: fhirclient.Storage | null = null;\n\n /**\n * Environment-specific options\n */\n options: fhirclient.BrowserFHIRSettings;\n\n security = security;\n\n /**\n * @param options Environment-specific options\n */\n constructor(options: fhirclient.BrowserFHIRSettings = {})\n {\n this.options = {\n // Replaces the browser's current URL\n // using window.history.replaceState API or by reloading.\n replaceBrowserHistory: true,\n\n // When set to true, this variable will fully utilize\n // HTML5 sessionStorage API.\n // This variable can be overridden to false by setting\n // FHIR.oauth2.settings.fullSessionStorageSupport = false.\n // When set to false, the sessionStorage will be keyed\n // by a state variable. This is to allow the embedded IE browser\n // instances instantiated on a single thread to continue to\n // function without having sessionStorage data shared\n // across the embedded IE instances.\n fullSessionStorageSupport: true,\n\n // Do we want to send cookies while making a request to the token\n // endpoint in order to obtain new access token using existing\n // refresh token. In rare cases the auth server might require the\n // client to send cookies along with those requests. In this case\n // developers will have to change this before initializing the app\n // like so:\n // `FHIR.oauth2.settings.refreshTokenWithCredentials = \"include\";`\n // or\n // `FHIR.oauth2.settings.refreshTokenWithCredentials = \"same-origin\";`\n // Can be one of:\n // \"include\" - always send cookies\n // \"same-origin\" - only send cookies if we are on the same domain (default)\n // \"omit\" - do not send cookies\n refreshTokenWithCredentials: \"same-origin\",\n\n ...options\n };\n }\n\n /**\n * Given a relative path, returns an absolute url using the instance base URL\n */\n relative(path: string): string\n {\n return new URL(path, this.getUrl().href).href;\n }\n\n /**\n * In browsers we need to be able to (dynamically) check if fhir.js is\n * included in the page. If it is, it should have created a \"fhir\" variable\n * in the global scope.\n */\n get fhir()\n {\n // @ts-ignore\n return typeof fhir === \"function\" ? fhir : null;\n }\n\n /**\n * Given the current environment, this method must return the current url\n * as URL instance\n */\n getUrl(): URL\n {\n if (!this._url) {\n this._url = new URL(location + \"\");\n }\n return this._url;\n }\n\n /**\n * Given the current environment, this method must redirect to the given\n * path\n */\n redirect(to: string): void\n {\n location.href = to;\n }\n\n /**\n * Returns a BrowserStorage object which is just a wrapper around\n * sessionStorage\n */\n getStorage(): BrowserStorage\n {\n if (!this._storage) {\n this._storage = new BrowserStorage();\n }\n return this._storage;\n }\n\n /**\n * Returns a reference to the AbortController constructor. In browsers,\n * AbortController will always be available as global (native or polyfilled)\n */\n getAbortController()\n {\n return AbortController;\n }\n\n /**\n * ASCII string to Base64\n */\n atob(str: string): string\n {\n return window.atob(str);\n }\n\n /**\n * Base64 to ASCII string\n */\n btoa(str: string): string\n {\n return window.btoa(str);\n }\n\n base64urlencode(input: string | Uint8Array)\n {\n if (typeof input == \"string\") {\n return encodeURL(input)\n }\n return fromUint8Array(input, true)\n }\n\n base64urldecode(input: string)\n {\n return decode(input)\n }\n\n /**\n * Creates and returns adapter-aware SMART api. Not that while the shape of\n * the returned object is well known, the arguments to this function are not.\n * Those who override this method are free to require any environment-specific\n * arguments. For example in node we will need a request, a response and\n * optionally a storage or storage factory function.\n */\n getSmartApi(): fhirclient.SMART\n {\n return {\n ready : (...args: any[]) => ready(this, ...args),\n authorize: options => authorize(this, options),\n init : options => init(this, options),\n client : (state: string | fhirclient.ClientState) => new Client(this, state),\n options : this.options,\n utils: {\n security\n }\n };\n }\n}\n","\n// Note: the following 2 imports appear as unused but they affect how tsc is\n// generating type definitions!\nimport { fhirclient } from \"../types\";\nimport Client from \"../Client\";\n\n// In Browsers we create an adapter, get the SMART api from it and build the\n// global FHIR object\nimport BrowserAdapter from \"../adapters/BrowserAdapter\";\n\nconst adapter = new BrowserAdapter();\nconst { ready, authorize, init, client, options, utils } = adapter.getSmartApi();\n\n// We have two kinds of browser builds - \"pure\" for new browsers and \"legacy\"\n// for old ones. In pure builds we assume that the browser supports everything\n// we need. In legacy mode, the library also acts as a polyfill. Babel will\n// automatically polyfill everything except \"fetch\", which we have to handle\n// manually.\n// @ts-ignore\nif (typeof FHIRCLIENT_PURE == \"undefined\") {\n const fetch = require(\"cross-fetch\");\n require(\"abortcontroller-polyfill/dist/abortcontroller-polyfill-only\");\n if (!window.fetch) {\n window.fetch = fetch.default;\n window.Headers = fetch.Headers;\n window.Request = fetch.Request;\n window.Response = fetch.Response;\n }\n}\n\n// $lab:coverage:off$\nconst FHIR = {\n AbortController: window.AbortController,\n client,\n utils,\n oauth2: {\n settings: options,\n ready,\n authorize,\n init\n }\n};\n\nexport = FHIR;\n// $lab:coverage:on$\n","/*\n * This file contains some shared functions. They are used by other modules, but\n * are defined here so that tests can import this library and test them.\n */\n\nimport HttpError from \"./HttpError\";\nimport { patientParams } from \"./settings\";\nimport { fhirclient } from \"./types\";\nconst debug = require(\"debug\");\n\n// $lab:coverage:off$\n// @ts-ignore\nconst { fetch } = typeof FHIRCLIENT_PURE !== \"undefined\" ? window : require(\"cross-fetch\");\n// $lab:coverage:on$\n\nconst _debug = debug(\"FHIR\");\nexport { _debug as debug };\n\n/**\n * The cache for the `getAndCache` function\n */\nconst cache: Record = {};\n\n/**\n * A namespace with functions for converting between different measurement units\n */\nexport const units = {\n cm({ code, value }: fhirclient.CodeValue) {\n ensureNumerical({ code, value });\n if (code == \"cm\" ) return value;\n if (code == \"m\" ) return value * 100;\n if (code == \"in\" ) return value * 2.54;\n if (code == \"[in_us]\") return value * 2.54;\n if (code == \"[in_i]\" ) return value * 2.54;\n if (code == \"ft\" ) return value * 30.48;\n if (code == \"[ft_us]\") return value * 30.48;\n throw new Error(\"Unrecognized length unit: \" + code);\n },\n kg({ code, value }: fhirclient.CodeValue){\n ensureNumerical({ code, value });\n if (code == \"kg\" ) return value;\n if (code == \"g\" ) return value / 1000;\n if (code.match(/lb/)) return value / 2.20462;\n if (code.match(/oz/)) return value / 35.274;\n throw new Error(\"Unrecognized weight unit: \" + code);\n },\n any(pq: fhirclient.CodeValue){\n ensureNumerical(pq);\n return pq.value;\n }\n};\n\n/**\n * Assertion function to guard arguments for `units` functions\n */\nfunction ensureNumerical({ value, code }: fhirclient.CodeValue) {\n if (typeof value !== \"number\") {\n throw new Error(\"Found a non-numerical unit: \" + value + \" \" + code);\n }\n}\n\n/**\n * Used in fetch Promise chains to reject if the \"ok\" property is not true\n */\nexport async function checkResponse(resp: Response): Promise {\n if (!resp.ok) {\n const error = new HttpError(resp);\n await error.parse();\n throw error;\n }\n return resp;\n}\n\n/**\n * Used in fetch Promise chains to return the JSON version of the response.\n * Note that `resp.json()` will throw on empty body so we use resp.text()\n * instead.\n */\nexport function responseToJSON(resp: Response): Promise {\n return resp.text().then(text => text.length ? JSON.parse(text) : \"\");\n}\n\nexport function loweCaseKeys | any[] | undefined>(obj: T): T {\n \n // Can be undefined to signal that this key should be removed\n if (!obj) {\n return obj as T\n }\n\n // Arrays are valid values in case of recursive calls\n if (Array.isArray(obj)) {\n return obj.map(v => v && typeof v === \"object\" ? loweCaseKeys(v) : v) as unknown as T;\n }\n\n // Plain object\n let out: Record = {};\n Object.keys(obj).forEach(key => {\n const lowerKey = key.toLowerCase()\n const v = (obj as Record)[key]\n out[lowerKey] = v && typeof v == \"object\" ? loweCaseKeys(v) : v;\n });\n return out as T;\n}\n\n/**\n * This is our built-in request function. It does a few things by default\n * (unless told otherwise):\n * - Makes CORS requests\n * - Sets accept header to \"application/json\"\n * - Handles errors\n * - If the response is json return the json object\n * - If the response is text return the result text\n * - Otherwise return the response object on which we call stuff like `.blob()`\n */\nexport function request(\n url: string | Request,\n requestOptions: fhirclient.FetchOptions = {}\n): Promise\n{\n const { includeResponse, ...options } = requestOptions;\n return fetch(url, {\n mode: \"cors\",\n ...options,\n headers: {\n accept: \"application/json\",\n ...loweCaseKeys(options.headers)\n }\n })\n .then(checkResponse)\n .then((res: Response) => {\n const type = res.headers.get(\"content-type\") + \"\";\n if (type.match(/\\bjson\\b/i)) {\n return responseToJSON(res).then(body => ({ res, body }));\n }\n if (type.match(/^text\\//i)) {\n return res.text().then(body => ({ res, body }));\n }\n return { res };\n })\n .then(({res, body}: {res:Response, body?:fhirclient.JsonObject|string}) => {\n\n // Some servers will reply after CREATE with json content type but with\n // empty body. In this case check if a location header is received and\n // fetch that to use it as the final result.\n if (!body && res.status == 201) {\n const location = res.headers.get(\"location\");\n if (location) {\n return request(location, { ...options, method: \"GET\", body: null, includeResponse });\n }\n }\n\n if (includeResponse) {\n return { body, response: res };\n }\n\n // For any non-text and non-json response return the Response object.\n // This to let users decide if they want to call text(), blob() or\n // something else on it\n if (body === undefined) {\n return res;\n }\n\n // Otherwise just return the parsed body (can also be \"\" or null)\n return body;\n });\n}\n\n/**\n * Makes a request using `fetch` and stores the result in internal memory cache.\n * The cache is cleared when the page is unloaded.\n * @param url The URL to request\n * @param requestOptions Request options\n * @param force If true, reload from source and update the cache, even if it has\n * already been cached.\n */\nexport function getAndCache(url: string, requestOptions?: RequestInit, force: boolean = process.env.NODE_ENV === \"test\"): Promise {\n if (force || !cache[url]) {\n cache[url] = request(url, requestOptions);\n return cache[url];\n }\n return Promise.resolve(cache[url]);\n}\n\n/**\n * Fetches the conformance statement from the given base URL.\n * Note that the result is cached in memory (until the page is reloaded in the\n * browser) because it might have to be re-used by the client\n * @param baseUrl The base URL of the FHIR server\n * @param [requestOptions] Any options passed to the fetch call\n */\nexport function fetchConformanceStatement(baseUrl = \"/\", requestOptions?: RequestInit): Promise\n{\n const url = String(baseUrl).replace(/\\/*$/, \"/\") + \"metadata\";\n return getAndCache(url, requestOptions).catch((ex: Error) => {\n throw new Error(\n `Failed to fetch the conformance statement from \"${url}\". ${ex}`\n );\n });\n}\n\n\n/**\n * Walks through an object (or array) and returns the value found at the\n * provided path. This function is very simple so it intentionally does not\n * support any argument polymorphism, meaning that the path can only be a\n * dot-separated string. If the path is invalid returns undefined.\n * @param obj The object (or Array) to walk through\n * @param path The path (eg. \"a.b.4.c\")\n * @returns {*} Whatever is found in the path or undefined\n */\nexport function getPath(obj: Record, path = \"\"): any {\n path = path.trim();\n if (!path) {\n return obj;\n }\n\n let segments = path.split(\".\");\n let result = obj;\n\n while (result && segments.length) {\n const key = segments.shift();\n if (!key && Array.isArray(result)) {\n return result.map(o => getPath(o, segments.join(\".\")));\n } else {\n result = result[key as string];\n }\n }\n\n return result;\n}\n\n/**\n * Like getPath, but if the node is found, its value is set to @value\n * @param obj The object (or Array) to walk through\n * @param path The path (eg. \"a.b.4.c\")\n * @param value The value to set\n * @param createEmpty If true, create missing intermediate objects or arrays\n * @returns The modified object\n */\nexport function setPath(obj: Record, path: string, value: any, createEmpty = false): Record {\n path.trim().split(\".\").reduce(\n (out, key, idx, arr) => {\n if (out && idx === arr.length - 1) {\n out[key] = value;\n }\n else {\n if (out && out[key] === undefined && createEmpty) {\n out[key] = arr[idx + 1].match(/^[0-9]+$/) ? [] : {};\n }\n return out ? out[key] : undefined;\n }\n },\n obj\n );\n return obj;\n}\n\n/**\n * If the argument is an array returns it as is. Otherwise puts it in an array\n * (`[arg]`) and returns the result\n * @param arg The element to test and possibly convert to array\n * @category Utility\n */\nexport function makeArray(arg: any): T[] {\n if (Array.isArray(arg)) {\n return arg;\n }\n return [arg];\n}\n\n/**\n * Given a path, converts it to absolute url based on the `baseUrl`. If baseUrl\n * is not provided, the result would be a rooted path (one that starts with `/`).\n * @param path The path to convert\n * @param baseUrl The base URL\n */\nexport function absolute(path: string, baseUrl?: string): string\n{\n if (path.match(/^http/)) return path;\n if (path.match(/^urn/)) return path;\n return String(baseUrl || \"\").replace(/\\/+$/, \"\") + \"/\" + path.replace(/^\\/+/, \"\");\n}\n\n/**\n * Generates random strings. By default this returns random 8 characters long\n * alphanumeric strings.\n * @param strLength The length of the output string. Defaults to 8.\n * @param charSet A string containing all the possible characters.\n * Defaults to all the upper and lower-case letters plus digits.\n * @category Utility\n */\nexport function randomString(\n strLength = 8,\n charSet = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789\"\n): string\n{\n const result = [];\n const len = charSet.length;\n while (strLength--) {\n result.push(charSet.charAt(Math.floor(Math.random() * len)));\n }\n return result.join(\"\");\n}\n\n/**\n * Decodes a JWT token and returns it's body.\n * @param token The token to read\n * @param env An `Adapter` or any other object that has an `atob` method\n * @category Utility\n */\nexport function jwtDecode(token: string, env: fhirclient.Adapter): Record | null\n{\n const payload = token.split(\".\")[1];\n return payload ? JSON.parse(env.atob(payload)) : null;\n}\n\n/**\n * Add a supplied number of seconds to the supplied Date, returning\n * an integer number of seconds since the epoch\n * @param secondsAhead How far ahead, in seconds (defaults to 120 seconds)\n * @param from Initial time (defaults to current time)\n */\nexport function getTimeInFuture(secondsAhead: number = 120, from?: Date | number): number {\n return Math.floor(+(from || new Date()) / 1000 + secondsAhead) \n}\n\n/**\n * Given a token response, computes and returns the expiresAt timestamp.\n * Note that this should only be used immediately after an access token is\n * received, otherwise the computed timestamp will be incorrect.\n * @param tokenResponse \n * @param env \n */\nexport function getAccessTokenExpiration(tokenResponse: fhirclient.TokenResponse, env: fhirclient.Adapter): number\n{\n const now = Math.floor(Date.now() / 1000);\n\n // Option 1 - using the expires_in property of the token response\n if (tokenResponse.expires_in) {\n return now + tokenResponse.expires_in;\n }\n\n // Option 2 - using the exp property of JWT tokens (must not assume JWT!)\n if (tokenResponse.access_token) {\n let tokenBody = jwtDecode(tokenResponse.access_token, env);\n if (tokenBody && tokenBody.exp) {\n return tokenBody.exp;\n }\n }\n\n // Option 3 - if none of the above worked set this to 5 minutes after now\n return now + 300;\n}\n\n/**\n * Groups the observations by code. Returns a map that will look like:\n * ```js\n * const map = client.byCodes(observations, \"code\");\n * // map = {\n * // \"55284-4\": [ observation1, observation2 ],\n * // \"6082-2\": [ observation3 ]\n * // }\n * ```\n * @param observations Array of observations\n * @param property The name of a CodeableConcept property to group by\n */\nexport function byCode(\n observations: fhirclient.FHIR.Observation | fhirclient.FHIR.Observation[],\n property: string\n): fhirclient.ObservationMap\n{\n const ret: fhirclient.ObservationMap = {};\n\n function handleCodeableConcept(concept: fhirclient.FHIR.CodeableConcept, observation: fhirclient.FHIR.Observation) {\n if (concept && Array.isArray(concept.coding)) {\n concept.coding.forEach(({ code }) => {\n if (code) {\n ret[code] = ret[code] || [] as fhirclient.FHIR.Observation[];\n ret[code].push(observation);\n }\n });\n }\n }\n\n makeArray(observations).forEach(o => {\n if (o.resourceType === \"Observation\" && o[property]) {\n if (Array.isArray(o[property])) {\n o[property].forEach((concept: fhirclient.FHIR.CodeableConcept) => handleCodeableConcept(concept, o));\n } else {\n handleCodeableConcept(o[property], o);\n }\n }\n });\n\n return ret;\n}\n\n/**\n * First groups the observations by code using `byCode`. Then returns a function\n * that accepts codes as arguments and will return a flat array of observations\n * having that codes. Example:\n * ```js\n * const filter = client.byCodes(observations, \"category\");\n * filter(\"laboratory\") // => [ observation1, observation2 ]\n * filter(\"vital-signs\") // => [ observation3 ]\n * filter(\"laboratory\", \"vital-signs\") // => [ observation1, observation2, observation3 ]\n * ```\n * @param observations Array of observations\n * @param property The name of a CodeableConcept property to group by\n */\nexport function byCodes(\n observations: fhirclient.FHIR.Observation | fhirclient.FHIR.Observation[],\n property: string\n): (...codes: string[]) => any[]\n{\n const bank = byCode(observations, property);\n return (...codes) => codes\n .filter(code => (code + \"\") in bank)\n .reduce(\n (prev, code) => prev.concat(bank[code + \"\"]),\n [] as fhirclient.FHIR.Observation[]\n );\n}\n\n/**\n * Given a conformance statement and a resource type, returns the name of the\n * URL parameter that can be used to scope the resource type by patient ID.\n */\nexport function getPatientParam(conformance: fhirclient.FHIR.CapabilityStatement, resourceType: string): string\n{\n // Find what resources are supported by this server\n const resources = getPath(conformance, \"rest.0.resource\") || [];\n\n // Check if this resource is supported\n const meta = resources.find((r: any) => r.type === resourceType);\n if (!meta) {\n throw new Error(`Resource \"${resourceType}\" is not supported by this FHIR server`);\n }\n\n // Check if any search parameters are available for this resource\n if (!Array.isArray(meta.searchParam)) {\n throw new Error(`No search parameters supported for \"${resourceType}\" on this FHIR server`);\n }\n\n // This is a rare case but could happen in generic workflows\n if (resourceType == \"Patient\" && meta.searchParam.find((x: any) => x.name == \"_id\")) {\n return \"_id\";\n }\n\n // Now find the first possible parameter name\n const out = patientParams.find(p => meta.searchParam.find((x: any) => x.name == p));\n\n // If there is no match\n if (!out) {\n throw new Error(\"I don't know what param to use for \" + resourceType);\n }\n\n return out;\n}\n\n/**\n * Resolves a reference to target window. It may also open new window or tab if\n * the `target = \"popup\"` or `target = \"_blank\"`.\n * @param target\n * @param width Only used when `target = \"popup\"`\n * @param height Only used when `target = \"popup\"`\n */\nexport async function getTargetWindow(target: fhirclient.WindowTarget, width: number = 800, height: number = 720): Promise\n{\n // The target can be a function that returns the target. This can be\n // used to open a layer pop-up with an iframe and then return a reference\n // to that iframe (or its name)\n if (typeof target == \"function\") {\n target = await target();\n }\n\n // The target can be a window reference\n if (target && typeof target == \"object\") {\n return target;\n }\n\n // At this point target must be a string\n if (typeof target != \"string\") {\n _debug(\"Invalid target type '%s'. Failing back to '_self'.\", typeof target);\n return self;\n }\n\n // Current window\n if (target == \"_self\") {\n return self;\n }\n\n // The parent frame\n if (target == \"_parent\") {\n return parent;\n }\n\n // The top window\n if (target == \"_top\") {\n return top || self;\n }\n\n // New tab or window\n if (target == \"_blank\") {\n let error, targetWindow: Window | null = null;\n try {\n targetWindow = window.open(\"\", \"SMARTAuthPopup\");\n if (!targetWindow) {\n throw new Error(\"Perhaps window.open was blocked\");\n }\n } catch (e) {\n error = e;\n }\n\n if (!targetWindow) {\n _debug(\"Cannot open window. Failing back to '_self'. %s\", error);\n return self;\n } else {\n return targetWindow;\n }\n }\n\n // Popup window\n if (target == \"popup\") {\n let error, targetWindow: Window | null = null;\n // if (!targetWindow || targetWindow.closed) {\n try {\n targetWindow = window.open(\"\", \"SMARTAuthPopup\", [\n \"height=\" + height,\n \"width=\" + width,\n \"menubar=0\",\n \"resizable=1\",\n \"status=0\",\n \"top=\" + (screen.height - height) / 2,\n \"left=\" + (screen.width - width) / 2\n ].join(\",\"));\n if (!targetWindow) {\n throw new Error(\"Perhaps the popup window was blocked\");\n }\n } catch (e) {\n error = e;\n }\n\n if (!targetWindow) {\n _debug(\"Cannot open window. Failing back to '_self'. %s\", error);\n return self;\n } else {\n return targetWindow;\n }\n }\n\n // Frame or window by name\n const winOrFrame: Window = frames[target as any];\n if (winOrFrame) {\n return winOrFrame;\n }\n\n _debug(\"Unknown target '%s'. Failing back to '_self'.\", target);\n return self;\n}\n\nexport function assert(condition: any, message: string): asserts condition {\n if (!(condition)) {\n throw new Error(message)\n }\n}\n\nexport function assertJsonPatch(patch: fhirclient.JsonPatch): asserts patch {\n assert(Array.isArray(patch), \"The JSON patch must be an array\")\n assert(patch.length > 0, \"The JSON patch array should not be empty\")\n patch.forEach((operation: fhirclient.JsonPatchOperation) => {\n assert(\n [\"add\", \"replace\", \"test\", \"move\", \"copy\", \"remove\"].indexOf(operation.op) > -1,\n 'Each patch operation must have an \"op\" property which must be one of: \"add\", \"replace\", \"test\", \"move\", \"copy\", \"remove\"'\n )\n assert(operation.path && typeof operation.path, `Invalid \"${operation.op}\" operation. Missing \"path\" property`)\n \n if (operation.op == \"add\" || operation.op == \"replace\" || operation.op == \"test\") {\n assert(\"value\" in operation, `Invalid \"${operation.op}\" operation. Missing \"value\" property`)\n assert(Object.keys(operation).length == 3, `Invalid \"${operation.op}\" operation. Contains unknown properties`)\n }\n\n else if (operation.op == \"move\" || operation.op == \"copy\") {\n assert(typeof operation.from == \"string\", `Invalid \"${operation.op}\" operation. Requires a string \"from\" property`)\n assert(Object.keys(operation).length == 3, `Invalid \"${operation.op}\" operation. Contains unknown properties`)\n }\n\n else {\n assert(Object.keys(operation).length == 2, `Invalid \"${operation.op}\" operation. Contains unknown properties`)\n }\n })\n}\n","import { encodeURL, fromUint8Array } from \"js-base64\"\nimport { fhirclient } from \"../types\"\n\nconst crypto: Crypto = typeof globalThis === \"object\" && globalThis.crypto ?\n globalThis.crypto :\n require(\"isomorphic-webcrypto\").default;\n\nconst subtle: SubtleCrypto = crypto.subtle\n\ninterface PkcePair {\n codeChallenge: string\n codeVerifier: string\n}\n\nconst ALGS = {\n ES384: {\n name: \"ECDSA\",\n namedCurve: \"P-384\"\n } as EcKeyGenParams,\n RS384: {\n name: \"RSASSA-PKCS1-v1_5\",\n modulusLength: 4096,\n publicExponent: new Uint8Array([1, 0, 1]),\n hash: {\n name: 'SHA-384'\n }\n } as RsaHashedKeyGenParams\n};\n\nexport function randomBytes(count: number): Uint8Array {\n return crypto.getRandomValues(new Uint8Array(count));\n}\n\nexport async function digestSha256(payload: string): Promise {\n const prepared = new TextEncoder().encode(payload);\n const hash = await subtle.digest('SHA-256', prepared);\n return new Uint8Array(hash);\n}\n\nexport const generatePKCEChallenge = async (entropy = 96): Promise => {\n const inputBytes = randomBytes(entropy)\n const codeVerifier = fromUint8Array(inputBytes, true)\n const codeChallenge = fromUint8Array(await digestSha256(codeVerifier), true)\n return { codeChallenge, codeVerifier }\n}\n\nexport async function importJWK(jwk: fhirclient.JWK): Promise {\n // alg is optional in JWK but we need it here!\n if (!jwk.alg) {\n throw new Error('The \"alg\" property of the JWK must be set to \"ES384\" or \"RS384\"')\n }\n\n // Use of the \"key_ops\" member is OPTIONAL, unless the application requires its presence.\n // https://www.rfc-editor.org/rfc/rfc7517.html#section-4.3\n // \n // In our case the app will only import private keys so we can assume \"sign\"\n if (!Array.isArray(jwk.key_ops)) {\n jwk.key_ops = [\"sign\"]\n }\n\n // In this case the JWK has a \"key_ops\" array and \"sign\" is not listed\n if (!jwk.key_ops.includes(\"sign\")) {\n throw new Error('The \"key_ops\" property of the JWK does not contain \"sign\"')\n }\n\n try {\n return await subtle.importKey(\n \"jwk\",\n jwk,\n ALGS[jwk.alg],\n jwk.ext === true,\n jwk.key_ops// || ['sign']\n )\n } catch (e) {\n throw new Error(`The ${jwk.alg} is not supported by this browser: ${e}`)\n }\n}\n\nexport async function signCompactJws(alg: keyof typeof ALGS, privateKey: CryptoKey, header: any, payload: any): Promise {\n\n const jwtHeader = JSON.stringify({ ...header, alg });\n const jwtPayload = JSON.stringify(payload);\n const jwtAuthenticatedContent = `${encodeURL(jwtHeader)}.${encodeURL(jwtPayload)}`;\n\n const signature = await subtle.sign(\n { ...privateKey.algorithm, hash: 'SHA-384' },\n privateKey,\n new TextEncoder().encode(jwtAuthenticatedContent)\n );\n\n return `${jwtAuthenticatedContent}.${fromUint8Array(new Uint8Array(signature), true)}`\n}\n","/**\n * Combined list of FHIR resource types accepting patient parameter in FHIR R2-R4\n */\nexport const patientCompartment = [\n \"Account\",\n \"AdverseEvent\",\n \"AllergyIntolerance\",\n \"Appointment\",\n \"AppointmentResponse\",\n \"AuditEvent\",\n \"Basic\",\n \"BodySite\",\n \"BodyStructure\",\n \"CarePlan\",\n \"CareTeam\",\n \"ChargeItem\",\n \"Claim\",\n \"ClaimResponse\",\n \"ClinicalImpression\",\n \"Communication\",\n \"CommunicationRequest\",\n \"Composition\",\n \"Condition\",\n \"Consent\",\n \"Coverage\",\n \"CoverageEligibilityRequest\",\n \"CoverageEligibilityResponse\",\n \"DetectedIssue\",\n \"DeviceRequest\",\n \"DeviceUseRequest\",\n \"DeviceUseStatement\",\n \"DiagnosticOrder\",\n \"DiagnosticReport\",\n \"DocumentManifest\",\n \"DocumentReference\",\n \"EligibilityRequest\",\n \"Encounter\",\n \"EnrollmentRequest\",\n \"EpisodeOfCare\",\n \"ExplanationOfBenefit\",\n \"FamilyMemberHistory\",\n \"Flag\",\n \"Goal\",\n \"Group\",\n \"ImagingManifest\",\n \"ImagingObjectSelection\",\n \"ImagingStudy\",\n \"Immunization\",\n \"ImmunizationEvaluation\",\n \"ImmunizationRecommendation\",\n \"Invoice\",\n \"List\",\n \"MeasureReport\",\n \"Media\",\n \"MedicationAdministration\",\n \"MedicationDispense\",\n \"MedicationOrder\",\n \"MedicationRequest\",\n \"MedicationStatement\",\n \"MolecularSequence\",\n \"NutritionOrder\",\n \"Observation\",\n \"Order\",\n \"Patient\",\n \"Person\",\n \"Procedure\",\n \"ProcedureRequest\",\n \"Provenance\",\n \"QuestionnaireResponse\",\n \"ReferralRequest\",\n \"RelatedPerson\",\n \"RequestGroup\",\n \"ResearchSubject\",\n \"RiskAssessment\",\n \"Schedule\",\n \"ServiceRequest\",\n \"Specimen\",\n \"SupplyDelivery\",\n \"SupplyRequest\",\n \"VisionPrescription\"\n];\n\n/**\n * Map of FHIR releases and their abstract version as number\n */\nexport const fhirVersions = {\n \"0.4.0\": 2,\n \"0.5.0\": 2,\n \"1.0.0\": 2,\n \"1.0.1\": 2,\n \"1.0.2\": 2,\n \"1.1.0\": 3,\n \"1.4.0\": 3,\n \"1.6.0\": 3,\n \"1.8.0\": 3,\n \"3.0.0\": 3,\n \"3.0.1\": 3,\n \"3.3.0\": 4,\n \"3.5.0\": 4,\n \"4.0.0\": 4,\n \"4.0.1\": 4\n};\n\n/**\n * Combined (FHIR R2-R4) list of search parameters that can be used to scope\n * a request by patient ID.\n */\nexport const patientParams = [\n \"patient\",\n \"subject\",\n \"requester\",\n \"member\",\n \"actor\",\n \"beneficiary\"\n];\n\n/**\n * The name of the sessionStorage entry that contains the current key\n */\nexport const SMART_KEY = \"SMART_KEY\";\n","/* global window */\nimport {\n debug as _debug,\n request,\n getPath,\n getTimeInFuture,\n randomString,\n getAndCache,\n fetchConformanceStatement,\n getAccessTokenExpiration,\n getTargetWindow,\n assert\n} from \"./lib\";\nimport Client from \"./Client\";\nimport { SMART_KEY } from \"./settings\";\nimport { fhirclient } from \"./types\";\n\nconst debug = _debug.extend(\"oauth2\");\n\nexport { SMART_KEY as KEY };\n\nfunction isBrowser() {\n return typeof window === \"object\";\n}\n\n/**\n * Fetches the well-known json file from the given base URL.\n * Note that the result is cached in memory (until the page is reloaded in the\n * browser) because it might have to be re-used by the client\n * @param baseUrl The base URL of the FHIR server\n */\nexport function fetchWellKnownJson(baseUrl = \"/\", requestOptions?: RequestInit): Promise\n{\n const url = String(baseUrl).replace(/\\/*$/, \"/\") + \".well-known/smart-configuration\";\n return getAndCache(url, requestOptions).catch((ex: Error) => {\n throw new Error(`Failed to fetch the well-known json \"${url}\". ${ex.message}`);\n });\n}\n\n/**\n * Fetch a \"WellKnownJson\" and extract the SMART endpoints from it\n */\nfunction getSecurityExtensionsFromWellKnownJson(baseUrl = \"/\", requestOptions?: RequestInit): Promise\n{\n return fetchWellKnownJson(baseUrl, requestOptions).then(meta => {\n if (!meta.authorization_endpoint || !meta.token_endpoint) {\n throw new Error(\"Invalid wellKnownJson\");\n }\n return {\n registrationUri : meta.registration_endpoint || \"\",\n authorizeUri : meta.authorization_endpoint,\n tokenUri : meta.token_endpoint,\n codeChallengeMethods: meta.code_challenge_methods_supported || []\n };\n });\n}\n\n/**\n * Fetch a `CapabilityStatement` and extract the SMART endpoints from it\n */\nfunction getSecurityExtensionsFromConformanceStatement(baseUrl = \"/\", requestOptions?: RequestInit): Promise\n{\n return fetchConformanceStatement(baseUrl, requestOptions).then(meta => {\n const nsUri = \"http://fhir-registry.smarthealthit.org/StructureDefinition/oauth-uris\";\n const extensions = ((getPath(meta || {}, \"rest.0.security.extension\") || []) as Array>)\n .filter(e => e.url === nsUri)\n .map(o => o.extension)[0];\n\n const out:fhirclient.OAuthSecurityExtensions = {\n registrationUri : \"\",\n authorizeUri : \"\",\n tokenUri : \"\",\n codeChallengeMethods: [],\n };\n\n if (extensions) {\n extensions.forEach(ext => {\n if (ext.url === \"register\") {\n out.registrationUri = ext.valueUri;\n }\n if (ext.url === \"authorize\") {\n out.authorizeUri = ext.valueUri;\n }\n if (ext.url === \"token\") {\n out.tokenUri = ext.valueUri;\n }\n });\n }\n\n return out;\n });\n}\n\n\n/**\n * Given a FHIR server, returns an object with it's Oauth security endpoints\n * that we are interested in. This will try to find the info in both the\n * `CapabilityStatement` and the `.well-known/smart-configuration`. Whatever\n * Arrives first will be used and the other request will be aborted.\n * @param [baseUrl = \"/\"] Fhir server base URL\n */\nexport function getSecurityExtensions(baseUrl = \"/\"): Promise\n{\n return getSecurityExtensionsFromWellKnownJson(baseUrl)\n .catch(() => getSecurityExtensionsFromConformanceStatement(baseUrl));\n}\n\n/**\n * Starts the SMART Launch Sequence.\n * > **IMPORTANT**:\n * `authorize()` will end up redirecting you to the authorization server.\n * This means that you should not add anything to the returned promise chain.\n * Any code written directly after the authorize() call might not be executed\n * due to that redirect!\n * @param env\n * @param [params]\n */\nexport async function authorize(\n env: fhirclient.Adapter,\n params: fhirclient.AuthorizeParams | fhirclient.AuthorizeParams[] = {}\n): Promise\n{\n const url = env.getUrl();\n\n // Multiple config for EHR launches ---------------------------------------\n if (Array.isArray(params)) {\n const urlISS = url.searchParams.get(\"iss\") || url.searchParams.get(\"fhirServiceUrl\");\n if (!urlISS) {\n throw new Error(\n 'Passing in an \"iss\" url parameter is required if authorize ' +\n 'uses multiple configurations'\n );\n }\n // pick the right config\n const cfg = params.find(x => {\n if (x.issMatch) {\n if (typeof x.issMatch === \"function\") {\n return !!x.issMatch(urlISS);\n }\n if (typeof x.issMatch === \"string\") {\n return x.issMatch === urlISS;\n }\n if (x.issMatch instanceof RegExp) {\n return x.issMatch.test(urlISS);\n }\n }\n return false;\n });\n assert(cfg, `No configuration found matching the current \"iss\" parameter \"${urlISS}\"`);\n return await authorize(env, cfg);\n }\n // ------------------------------------------------------------------------\n\n // Obtain input\n const {\n clientSecret,\n fakeTokenResponse,\n encounterId,\n target,\n width,\n height,\n pkceMode,\n clientPublicKeySetUrl,\n // Two deprecated values to use as fall-back values later\n redirect_uri,\n client_id,\n } = params;\n \n let {\n iss,\n launch,\n patientId,\n fhirServiceUrl,\n redirectUri,\n noRedirect,\n scope = \"\",\n clientId,\n completeInTarget,\n clientPrivateJwk\n } = params;\n\n const storage = env.getStorage();\n\n // For these, a url param takes precedence over inline option\n iss = url.searchParams.get(\"iss\") || iss;\n fhirServiceUrl = url.searchParams.get(\"fhirServiceUrl\") || fhirServiceUrl;\n launch = url.searchParams.get(\"launch\") || launch;\n patientId = url.searchParams.get(\"patientId\") || patientId;\n clientId = url.searchParams.get(\"clientId\") || clientId;\n\n // If there's still no clientId or redirectUri, check deprecated params \n if (!clientId) {\n clientId = client_id;\n }\n if (!redirectUri) {\n redirectUri = redirect_uri;\n }\n\n if (!redirectUri) {\n redirectUri = env.relative(\".\");\n } else if (!redirectUri.match(/^https?\\:\\/\\//)) {\n redirectUri = env.relative(redirectUri);\n }\n\n const serverUrl = String(iss || fhirServiceUrl || \"\");\n\n // Validate input\n if (!serverUrl) {\n throw new Error(\n \"No server url found. It must be specified as `iss` or as \" +\n \"`fhirServiceUrl` parameter\"\n );\n }\n\n if (iss) {\n debug(\"Making %s launch...\", launch ? \"EHR\" : \"standalone\");\n }\n\n // append launch scope if needed\n if (launch && !scope.match(/launch/)) {\n scope += \" launch\";\n }\n\n if (isBrowser()) {\n const inFrame = isInFrame();\n const inPopUp = isInPopUp();\n\n if ((inFrame || inPopUp) && completeInTarget !== true && completeInTarget !== false) {\n \n // completeInTarget will default to true if authorize is called from\n // within an iframe. This is to avoid issues when the entire app\n // happens to be rendered in an iframe (including in some EHRs),\n // even though that was not how the app developer's intention.\n completeInTarget = inFrame;\n\n // In this case we can't always make the best decision so ask devs\n // to be explicit in their configuration.\n console.warn(\n 'Your app is being authorized from within an iframe or popup ' +\n 'window. Please be explicit and provide a \"completeInTarget\" ' +\n 'option. Use \"true\" to complete the authorization in the ' +\n 'same window, or \"false\" to try to complete it in the parent ' +\n 'or the opener window. See http://docs.smarthealthit.org/client-js/api.html'\n );\n }\n }\n\n // If `authorize` is called, make sure we clear any previous state (in case\n // this is a re-authorize)\n const oldKey = await storage.get(SMART_KEY);\n await storage.unset(oldKey);\n\n // create initial state\n const stateKey = randomString(16);\n const state: fhirclient.ClientState = {\n clientId,\n scope,\n redirectUri,\n serverUrl,\n clientSecret,\n clientPrivateJwk,\n tokenResponse: {},\n key: stateKey,\n completeInTarget,\n clientPublicKeySetUrl\n };\n\n const fullSessionStorageSupport = isBrowser() ?\n getPath(env, \"options.fullSessionStorageSupport\") :\n true;\n\n if (fullSessionStorageSupport) {\n await storage.set(SMART_KEY, stateKey);\n }\n\n // fakeTokenResponse to override stuff (useful in development)\n if (fakeTokenResponse) {\n Object.assign(state.tokenResponse!, fakeTokenResponse);\n }\n\n // Fixed patientId (useful in development)\n if (patientId) {\n Object.assign(state.tokenResponse!, { patient: patientId });\n }\n\n // Fixed encounterId (useful in development)\n if (encounterId) {\n Object.assign(state.tokenResponse!, { encounter: encounterId });\n }\n\n let redirectUrl = redirectUri + \"?state=\" + encodeURIComponent(stateKey);\n\n // bypass oauth if fhirServiceUrl is used (but iss takes precedence)\n if (fhirServiceUrl && !iss) {\n debug(\"Making fake launch...\");\n await storage.set(stateKey, state);\n if (noRedirect) {\n return redirectUrl;\n }\n return await env.redirect(redirectUrl);\n }\n\n // Get oauth endpoints and add them to the state\n const extensions = await getSecurityExtensions(serverUrl);\n Object.assign(state, extensions);\n await storage.set(stateKey, state);\n\n // If this happens to be an open server and there is no authorizeUri\n if (!state.authorizeUri) {\n if (noRedirect) {\n return redirectUrl;\n }\n return await env.redirect(redirectUrl);\n }\n\n // build the redirect uri\n const redirectParams = [\n \"response_type=code\",\n \"client_id=\" + encodeURIComponent(clientId || \"\"),\n \"scope=\" + encodeURIComponent(scope),\n \"redirect_uri=\" + encodeURIComponent(redirectUri),\n \"aud=\" + encodeURIComponent(serverUrl),\n \"state=\" + encodeURIComponent(stateKey)\n ];\n\n // also pass this in case of EHR launch\n if (launch) {\n redirectParams.push(\"launch=\" + encodeURIComponent(launch));\n }\n\n if (shouldIncludeChallenge(extensions.codeChallengeMethods.includes('S256'), pkceMode)) {\n let codes = await env.security.generatePKCEChallenge()\n Object.assign(state, codes);\n await storage.set(stateKey, state);\n redirectParams.push(\"code_challenge=\" + state.codeChallenge);// note that the challenge is ALREADY encoded properly\n redirectParams.push(\"code_challenge_method=S256\");\n }\n \n redirectUrl = state.authorizeUri + \"?\" + redirectParams.join(\"&\");\n\n if (noRedirect) {\n return redirectUrl;\n }\n\n if (target && isBrowser()) {\n let win: Window;\n\n win = await getTargetWindow(target, width, height);\n\n if (win !== self) {\n try {\n // Also remove any old state from the target window and then\n // transfer the current state there\n win.sessionStorage.removeItem(oldKey);\n win.sessionStorage.setItem(stateKey, JSON.stringify(state));\n } catch (ex) {\n _debug(`Failed to modify window.sessionStorage. Perhaps it is from different origin?. Failing back to \"_self\". %s`, ex);\n win = self;\n }\n }\n\n if (win !== self) {\n try {\n win.location.href = redirectUrl;\n self.addEventListener(\"message\", onMessage);\n } catch (ex) {\n _debug(`Failed to modify window.location. Perhaps it is from different origin?. Failing back to \"_self\". %s`, ex);\n self.location.href = redirectUrl;\n }\n } else {\n self.location.href = redirectUrl;\n }\n\n return;\n }\n else {\n return await env.redirect(redirectUrl);\n }\n}\n\nfunction shouldIncludeChallenge(S256supported: boolean, pkceMode?: string) {\n if (pkceMode === \"disabled\") {\n return false;\n }\n if (pkceMode === \"unsafeV1\") {\n return true;\n }\n if (pkceMode === \"required\") {\n if (!S256supported) {\n throw new Error(\"Required PKCE code challenge method (`S256`) was not found.\");\n }\n return true;\n }\n return S256supported;\n}\n\n/**\n * Checks if called within a frame. Only works in browsers!\n * If the current window has a `parent` or `top` properties that refer to\n * another window, returns true. If trying to access `top` or `parent` throws an\n * error, returns true. Otherwise returns `false`.\n */\nexport function isInFrame() {\n try {\n return self !== top && parent !== self;\n } catch (e) {\n return true;\n }\n}\n\n/**\n * Checks if called within another window (popup or tab). Only works in browsers!\n * To consider itself called in a new window, this function verifies that:\n * 1. `self === top` (not in frame)\n * 2. `!!opener && opener !== self` The window has an opener\n * 3. `!!window.name` The window has a `name` set\n */\nexport function isInPopUp() {\n try {\n return self === top &&\n !!opener &&\n opener !== self &&\n !!window.name;\n } catch (e) {\n return false;\n }\n}\n\n/**\n * Another window can send a \"completeAuth\" message to this one, making it to\n * navigate to e.data.url\n * @param e The message event\n */\nexport function onMessage(e: MessageEvent) {\n if (e.data.type == \"completeAuth\" && e.origin === new URL(self.location.href).origin) {\n window.removeEventListener(\"message\", onMessage);\n window.location.href = e.data.url;\n }\n}\n\n/**\n * The ready function should only be called on the page that represents\n * the redirectUri. We typically land there after a redirect from the\n * authorization server, but this code will also be executed upon subsequent\n * navigation or page refresh.\n */\nexport async function ready(env: fhirclient.Adapter, options: fhirclient.ReadyOptions = {}): Promise\n{\n const url = env.getUrl();\n const Storage = env.getStorage();\n const params = url.searchParams;\n\n let key = params.get(\"state\");\n const code = params.get(\"code\");\n const authError = params.get(\"error\");\n const authErrorDescription = params.get(\"error_description\");\n\n if (!key) {\n key = await Storage.get(SMART_KEY);\n }\n\n // Start by checking the url for `error` and `error_description` parameters.\n // This happens when the auth server rejects our authorization attempt. In\n // this case it has no other way to tell us what the error was, other than\n // appending these parameters to the redirect url.\n // From client's point of view, this is not very reliable (because we can't\n // know how we have landed on this page - was it a redirect or was it loaded\n // manually). However, if `ready()` is being called, we can assume\n // that the url comes from the auth server (otherwise the app won't work\n // anyway).\n if (authError || authErrorDescription) {\n throw new Error([\n authError,\n authErrorDescription\n ].filter(Boolean).join(\": \"));\n }\n\n debug(\"key: %s, code: %s\", key, code);\n\n // key might be coming from the page url so it might be empty or missing\n assert(key, \"No 'state' parameter found. Please (re)launch the app.\");\n\n // Check if we have a previous state\n let state = (await Storage.get(key)) as fhirclient.ClientState;\n\n const fullSessionStorageSupport = isBrowser() ?\n getPath(env, \"options.fullSessionStorageSupport\") :\n true;\n\n // If we are in a popup window or an iframe and the authorization is\n // complete, send the location back to our opener and exit.\n if (isBrowser() && state && !state.completeInTarget) {\n\n const inFrame = isInFrame();\n const inPopUp = isInPopUp();\n\n // we are about to return to the opener/parent where completeAuth will\n // be called again. In rare cases the opener or parent might also be\n // a frame or popup. Then inFrame or inPopUp will be true but we still\n // have to stop going up the chain. To guard against that weird form of\n // recursion we pass one additional parameter to the url which we later\n // remove.\n if ((inFrame || inPopUp) && !url.searchParams.get(\"complete\")) {\n url.searchParams.set(\"complete\", \"1\");\n const { href, origin } = url;\n if (inFrame) {\n parent.postMessage({ type: \"completeAuth\", url: href }, origin);\n }\n if (inPopUp) {\n opener.postMessage({ type: \"completeAuth\", url: href }, origin);\n window.close();\n }\n\n return new Promise(() => { /* leave it pending!!! */ });\n }\n }\n\n url.searchParams.delete(\"complete\");\n\n // Do we have to remove the `code` and `state` params from the URL?\n const hasState = params.has(\"state\");\n\n if (isBrowser() && getPath(env, \"options.replaceBrowserHistory\") && (code || hasState)) {\n // `code` is the flag that tell us to request an access token.\n // We have to remove it, otherwise the page will authorize on\n // every load!\n if (code) {\n params.delete(\"code\");\n debug(\"Removed code parameter from the url.\");\n }\n\n // If we have `fullSessionStorageSupport` it means we no longer\n // need the `state` key. It will be stored to a well know\n // location - sessionStorage[SMART_KEY]. However, no\n // fullSessionStorageSupport means that this \"well know location\"\n // might be shared between windows and tabs. In this case we\n // MUST keep the `state` url parameter.\n if (hasState && fullSessionStorageSupport) {\n params.delete(\"state\");\n debug(\"Removed state parameter from the url.\");\n }\n\n // If the browser does not support the replaceState method for the\n // History Web API, the \"code\" parameter cannot be removed. As a\n // consequence, the page will (re)authorize on every load. The\n // workaround is to reload the page to new location without those\n // parameters. If that is not acceptable replaceBrowserHistory\n // should be set to false.\n if (window.history.replaceState) {\n window.history.replaceState({}, \"\", url.href);\n }\n }\n\n // If the state does not exist, it means the page has been loaded directly.\n assert(state, \"No state found! Please (re)launch the app.\");\n\n // Assume the client has already completed a token exchange when\n // there is no code (but we have a state) or access token is found in state\n const authorized = !code || state.tokenResponse?.access_token;\n\n // If we are authorized already, then this is just a reload.\n // Otherwise, we have to complete the code flow\n if (!authorized && state.tokenUri) {\n\n assert(code, \"'code' url parameter is required\");\n\n debug(\"Preparing to exchange the code for access token...\");\n const requestOptions = await buildTokenRequest(env, {\n code,\n state,\n clientPublicKeySetUrl: options.clientPublicKeySetUrl,\n privateKey: options.privateKey || state.clientPrivateJwk\n });\n debug(\"Token request options: %O\", requestOptions);\n\n // The EHR authorization server SHALL return a JSON structure that\n // includes an access token or a message indicating that the\n // authorization request has been denied.\n const tokenResponse = await request(state.tokenUri, requestOptions);\n debug(\"Token response: %O\", tokenResponse);\n assert(tokenResponse.access_token, \"Failed to obtain access token.\");\n\n // Now we need to determine when is this authorization going to expire\n state.expiresAt = getAccessTokenExpiration(tokenResponse, env);\n\n // save the tokenResponse so that we don't have to re-authorize on\n // every page reload\n state = { ...state, tokenResponse };\n await Storage.set(key, state);\n debug(\"Authorization successful!\");\n }\n else {\n debug(state.tokenResponse?.access_token ?\n \"Already authorized\" :\n \"No authorization needed\"\n );\n }\n\n if (fullSessionStorageSupport) {\n await Storage.set(SMART_KEY, key);\n }\n\n const client = new Client(env, state);\n debug(\"Created client instance: %O\", client);\n return client;\n}\n\n/**\n * Builds the token request options. Does not make the request, just\n * creates it's configuration and returns it in a Promise.\n */\nexport async function buildTokenRequest(\n env: fhirclient.Adapter,\n {\n code,\n state,\n clientPublicKeySetUrl,\n privateKey\n }: {\n /**\n * The `code` URL parameter received from the auth redirect\n */\n code: string,\n \n /**\n * The app state\n */\n state: fhirclient.ClientState\n\n /**\n * If provided overrides the `clientPublicKeySetUrl` from the authorize\n * options (if any). Used for `jku` token header in case of asymmetric auth.\n */\n clientPublicKeySetUrl?: string\n\n /**\n * Can be a private JWK, or an object with alg, kid and key properties,\n * where `key` is an un-extractable private CryptoKey object.\n */\n privateKey?: fhirclient.JWK | {\n key: CryptoKey\n alg: \"RS384\" | \"ES384\"\n kid: string\n }\n }\n): Promise\n{\n const { redirectUri, clientSecret, tokenUri, clientId, codeVerifier } = state;\n\n assert(redirectUri, \"Missing state.redirectUri\");\n assert(tokenUri, \"Missing state.tokenUri\");\n assert(clientId, \"Missing state.clientId\");\n\n const requestOptions: Record = {\n method: \"POST\",\n headers: { \"content-type\": \"application/x-www-form-urlencoded\" },\n body: `code=${code}&grant_type=authorization_code&redirect_uri=${\n encodeURIComponent(redirectUri)}`\n };\n\n // For public apps, authentication is not possible (and thus not required),\n // since a client with no secret cannot prove its identity when it issues a\n // call. (The end-to-end system can still be secure because the client comes\n // from a known, https protected endpoint specified and enforced by the\n // redirect uri.) For confidential apps, an Authorization header using HTTP\n // Basic authentication is required, where the username is the app’s\n // client_id and the password is the app’s client_secret (see example).\n if (clientSecret) {\n requestOptions.headers.authorization = \"Basic \" + env.btoa(\n clientId + \":\" + clientSecret\n );\n debug(\n \"Using state.clientSecret to construct the authorization header: %s\",\n requestOptions.headers.authorization\n );\n }\n \n // Asymmetric auth\n else if (privateKey) {\n\n const pk = \"key\" in privateKey ?\n privateKey.key as CryptoKey:\n await env.security.importJWK(privateKey as fhirclient.JWK)\n\n const jwtHeaders = {\n typ: \"JWT\",\n kid: privateKey.kid,\n jku: clientPublicKeySetUrl || state.clientPublicKeySetUrl\n };\n\n const jwtClaims = {\n iss: clientId,\n sub: clientId,\n aud: tokenUri,\n jti: env.base64urlencode(env.security.randomBytes(32)),\n exp: getTimeInFuture(120) // two minutes in the future\n };\n \n const clientAssertion = await env.security.signCompactJws(privateKey.alg, pk, jwtHeaders, jwtClaims);\n requestOptions.body += `&client_assertion_type=${encodeURIComponent(\"urn:ietf:params:oauth:client-assertion-type:jwt-bearer\")}`;\n requestOptions.body += `&client_assertion=${encodeURIComponent(clientAssertion)}`;\n debug(\"Using state.clientPrivateJwk to add a client_assertion to the POST body\")\n }\n \n // Public client\n else {\n debug(\"Public client detected; adding state.clientId to the POST body\");\n requestOptions.body += `&client_id=${encodeURIComponent(clientId)}`;\n }\n\n if (codeVerifier) {\n debug(\"Found state.codeVerifier, adding to the POST body\")\n // Note that the codeVerifier is ALREADY encoded properly \n requestOptions.body += \"&code_verifier=\" + codeVerifier;\n }\n \n return requestOptions as RequestInit;\n}\n\n/**\n * This function can be used when you want to handle everything in one page\n * (no launch endpoint needed). You can think of it as if it does:\n * ```js\n * authorize(options).then(ready)\n * ```\n *\n * **Be careful with init()!** There are some details you need to be aware of:\n *\n * 1. It will only work if your launch_uri is the same as your redirect_uri.\n * While this should be valid, we can’t promise that every EHR will allow you\n * to register client with such settings.\n * 2. Internally, `init()` will be called twice. First it will redirect to the\n * EHR, then the EHR will redirect back to the page where init() will be\n * called again to complete the authorization. This is generally fine,\n * because the returned promise will only be resolved once, after the second\n * execution, but please also consider the following:\n * - You should wrap all your app’s code in a function that is only executed\n * after `init()` resolves!\n * - Since the page will be loaded twice, you must be careful if your code\n * has global side effects that can persist between page reloads\n * (for example writing to localStorage).\n * 3. For standalone launch, only use init in combination with offline_access\n * scope. Once the access_token expires, if you don’t have a refresh_token\n * there is no way to re-authorize properly. We detect that and delete the\n * expired access token, but it still means that the user will have to\n * refresh the page twice to re-authorize.\n * @param env The adapter\n * @param authorizeOptions The authorize options\n */\nexport async function init(\n env: fhirclient.Adapter,\n authorizeOptions: fhirclient.AuthorizeParams,\n readyOptions?: fhirclient.ReadyOptions\n): Promise\n{\n const url = env.getUrl();\n const code = url.searchParams.get(\"code\");\n const state = url.searchParams.get(\"state\");\n\n // if `code` and `state` params are present we need to complete the auth flow\n if (code && state) {\n return ready(env, readyOptions);\n }\n\n // Check for existing client state. If state is found, it means a client\n // instance have already been created in this session and we should try to\n // \"revive\" it.\n const storage = env.getStorage();\n const key = state || await storage.get(SMART_KEY);\n const cached = await storage.get(key);\n if (cached) {\n return new Client(env, cached);\n }\n\n // Otherwise try to launch\n return authorize(env, authorizeOptions).then(() => {\n // `init` promises a Client but that cannot happen in this case. The\n // browser will be redirected (unload the page and be redirected back\n // to it later and the same init function will be called again). On\n // success, authorize will resolve with the redirect url but we don't\n // want to return that from this promise chain because it is not a\n // Client instance. At the same time, if authorize fails, we do want to\n // pass the error to those waiting for a client instance.\n return new Promise(() => { /* leave it pending!!! */ });\n });\n}\n","export default class Storage\n{\n /**\n * Gets the value at `key`. Returns a promise that will be resolved\n * with that value (or undefined for missing keys).\n */\n async get(key: string): Promise\n {\n const value = sessionStorage[key];\n if (value) {\n return JSON.parse(value);\n }\n return null;\n }\n\n /**\n * Sets the `value` on `key` and returns a promise that will be resolved\n * with the value that was set.\n */\n async set(key: string, value: any): Promise\n {\n sessionStorage[key] = JSON.stringify(value);\n return value;\n }\n\n /**\n * Deletes the value at `key`. Returns a promise that will be resolved\n * with true if the key was deleted or with false if it was not (eg. if\n * did not exist).\n */\n async unset(key: string): Promise\n {\n if (key in sessionStorage) {\n delete sessionStorage[key];\n return true;\n }\n return false;\n }\n\n}\n","// This map contains reusable debug messages (only those used in multiple places)\nexport default {\n expired : \"Session expired! Please re-launch the app\",\n noScopeForId : \"Trying to get the ID of the selected %s. Please add 'launch' or 'launch/%s' to the requested scopes and try again.\",\n noIfNoAuth : \"You are trying to get %s but the app is not authorized yet.\",\n noFreeContext: \"Please don't use open fhir servers if you need to access launch context items like the %S.\"\n};\n","var 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 $TypeError(tryToString(argument) + ' is not a function');\n};\n","var isConstructor = require('../internals/is-constructor');\nvar tryToString = require('../internals/try-to-string');\n\nvar $TypeError = TypeError;\n\n// `Assert: IsConstructor(argument) is true`\nmodule.exports = function (argument) {\n if (isConstructor(argument)) return argument;\n throw $TypeError(tryToString(argument) + ' is not a constructor');\n};\n","var isCallable = require('../internals/is-callable');\n\nvar $String = String;\nvar $TypeError = TypeError;\n\nmodule.exports = function (argument) {\n if (typeof argument == 'object' || isCallable(argument)) return argument;\n throw $TypeError(\"Can't set \" + $String(argument) + ' as a prototype');\n};\n","var wellKnownSymbol = require('../internals/well-known-symbol');\nvar create = require('../internals/object-create');\nvar defineProperty = require('../internals/object-define-property').f;\n\nvar UNSCOPABLES = wellKnownSymbol('unscopables');\nvar ArrayPrototype = Array.prototype;\n\n// Array.prototype[@@unscopables]\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\nif (ArrayPrototype[UNSCOPABLES] == undefined) {\n defineProperty(ArrayPrototype, UNSCOPABLES, {\n configurable: true,\n value: create(null)\n });\n}\n\n// add a key to Array.prototype[@@unscopables]\nmodule.exports = function (key) {\n ArrayPrototype[UNSCOPABLES][key] = true;\n};\n","'use strict';\nvar charAt = require('../internals/string-multibyte').charAt;\n\n// `AdvanceStringIndex` abstract operation\n// https://tc39.es/ecma262/#sec-advancestringindex\nmodule.exports = function (S, index, unicode) {\n return index + (unicode ? charAt(S, index).length : 1);\n};\n","var 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 $TypeError('Incorrect invocation');\n};\n","var 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 $TypeError($String(argument) + ' is not an object');\n};\n","// eslint-disable-next-line es-x/no-typed-arrays -- safe\nmodule.exports = typeof ArrayBuffer != 'undefined' && typeof DataView != 'undefined';\n","'use strict';\nvar NATIVE_ARRAY_BUFFER = require('../internals/array-buffer-native');\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 defineProperty = require('../internals/object-define-property').f;\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 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 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 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 defineProperty(TypedArrayPrototype, TO_STRING_TAG, { get: function () {\n return isObject(this) ? this[TYPED_ARRAY_TAG] : undefined;\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 global = require('../internals/global');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar NATIVE_ARRAY_BUFFER = require('../internals/array-buffer-native');\nvar FunctionName = require('../internals/function-name');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar defineBuiltIns = require('../internals/define-built-ins');\nvar fails = require('../internals/fails');\nvar anInstance = require('../internals/an-instance');\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\nvar toLength = require('../internals/to-length');\nvar toIndex = require('../internals/to-index');\nvar IEEE754 = require('../internals/ieee754');\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\nvar getOwnPropertyNames = require('../internals/object-get-own-property-names').f;\nvar defineProperty = require('../internals/object-define-property').f;\nvar arrayFill = require('../internals/array-fill');\nvar arraySlice = require('../internals/array-slice-simple');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar PROPER_FUNCTION_NAME = FunctionName.PROPER;\nvar CONFIGURABLE_FUNCTION_NAME = FunctionName.CONFIGURABLE;\nvar getInternalState = InternalStateModule.get;\nvar setInternalState = InternalStateModule.set;\nvar ARRAY_BUFFER = 'ArrayBuffer';\nvar DATA_VIEW = 'DataView';\nvar PROTOTYPE = 'prototype';\nvar WRONG_LENGTH = 'Wrong length';\nvar WRONG_INDEX = 'Wrong index';\nvar NativeArrayBuffer = global[ARRAY_BUFFER];\nvar $ArrayBuffer = NativeArrayBuffer;\nvar ArrayBufferPrototype = $ArrayBuffer && $ArrayBuffer[PROTOTYPE];\nvar $DataView = global[DATA_VIEW];\nvar DataViewPrototype = $DataView && $DataView[PROTOTYPE];\nvar ObjectPrototype = Object.prototype;\nvar Array = global.Array;\nvar RangeError = global.RangeError;\nvar fill = uncurryThis(arrayFill);\nvar reverse = uncurryThis([].reverse);\n\nvar packIEEE754 = IEEE754.pack;\nvar unpackIEEE754 = IEEE754.unpack;\n\nvar packInt8 = function (number) {\n return [number & 0xFF];\n};\n\nvar packInt16 = function (number) {\n return [number & 0xFF, number >> 8 & 0xFF];\n};\n\nvar packInt32 = function (number) {\n return [number & 0xFF, number >> 8 & 0xFF, number >> 16 & 0xFF, number >> 24 & 0xFF];\n};\n\nvar unpackInt32 = function (buffer) {\n return buffer[3] << 24 | buffer[2] << 16 | buffer[1] << 8 | buffer[0];\n};\n\nvar packFloat32 = function (number) {\n return packIEEE754(number, 23, 4);\n};\n\nvar packFloat64 = function (number) {\n return packIEEE754(number, 52, 8);\n};\n\nvar addGetter = function (Constructor, key) {\n defineProperty(Constructor[PROTOTYPE], key, { get: function () { return getInternalState(this)[key]; } });\n};\n\nvar get = function (view, count, index, isLittleEndian) {\n var intIndex = toIndex(index);\n var store = getInternalState(view);\n if (intIndex + count > store.byteLength) throw RangeError(WRONG_INDEX);\n var bytes = getInternalState(store.buffer).bytes;\n var start = intIndex + store.byteOffset;\n var pack = arraySlice(bytes, start, start + count);\n return isLittleEndian ? pack : reverse(pack);\n};\n\nvar set = function (view, count, index, conversion, value, isLittleEndian) {\n var intIndex = toIndex(index);\n var store = getInternalState(view);\n if (intIndex + count > store.byteLength) throw RangeError(WRONG_INDEX);\n var bytes = getInternalState(store.buffer).bytes;\n var start = intIndex + store.byteOffset;\n var pack = conversion(+value);\n for (var i = 0; i < count; i++) bytes[start + i] = pack[isLittleEndian ? i : count - i - 1];\n};\n\nif (!NATIVE_ARRAY_BUFFER) {\n $ArrayBuffer = function ArrayBuffer(length) {\n anInstance(this, ArrayBufferPrototype);\n var byteLength = toIndex(length);\n setInternalState(this, {\n bytes: fill(Array(byteLength), 0),\n byteLength: byteLength\n });\n if (!DESCRIPTORS) this.byteLength = byteLength;\n };\n\n ArrayBufferPrototype = $ArrayBuffer[PROTOTYPE];\n\n $DataView = function DataView(buffer, byteOffset, byteLength) {\n anInstance(this, DataViewPrototype);\n anInstance(buffer, ArrayBufferPrototype);\n var bufferLength = getInternalState(buffer).byteLength;\n var offset = toIntegerOrInfinity(byteOffset);\n if (offset < 0 || offset > bufferLength) throw RangeError('Wrong offset');\n byteLength = byteLength === undefined ? bufferLength - offset : toLength(byteLength);\n if (offset + byteLength > bufferLength) throw RangeError(WRONG_LENGTH);\n setInternalState(this, {\n buffer: buffer,\n byteLength: byteLength,\n byteOffset: offset\n });\n if (!DESCRIPTORS) {\n this.buffer = buffer;\n this.byteLength = byteLength;\n this.byteOffset = offset;\n }\n };\n\n DataViewPrototype = $DataView[PROTOTYPE];\n\n if (DESCRIPTORS) {\n addGetter($ArrayBuffer, 'byteLength');\n addGetter($DataView, 'buffer');\n addGetter($DataView, 'byteLength');\n addGetter($DataView, 'byteOffset');\n }\n\n defineBuiltIns(DataViewPrototype, {\n getInt8: function getInt8(byteOffset) {\n return get(this, 1, byteOffset)[0] << 24 >> 24;\n },\n getUint8: function getUint8(byteOffset) {\n return get(this, 1, byteOffset)[0];\n },\n getInt16: function getInt16(byteOffset /* , littleEndian */) {\n var bytes = get(this, 2, byteOffset, arguments.length > 1 ? arguments[1] : undefined);\n return (bytes[1] << 8 | bytes[0]) << 16 >> 16;\n },\n getUint16: function getUint16(byteOffset /* , littleEndian */) {\n var bytes = get(this, 2, byteOffset, arguments.length > 1 ? arguments[1] : undefined);\n return bytes[1] << 8 | bytes[0];\n },\n getInt32: function getInt32(byteOffset /* , littleEndian */) {\n return unpackInt32(get(this, 4, byteOffset, arguments.length > 1 ? arguments[1] : undefined));\n },\n getUint32: function getUint32(byteOffset /* , littleEndian */) {\n return unpackInt32(get(this, 4, byteOffset, arguments.length > 1 ? arguments[1] : undefined)) >>> 0;\n },\n getFloat32: function getFloat32(byteOffset /* , littleEndian */) {\n return unpackIEEE754(get(this, 4, byteOffset, arguments.length > 1 ? arguments[1] : undefined), 23);\n },\n getFloat64: function getFloat64(byteOffset /* , littleEndian */) {\n return unpackIEEE754(get(this, 8, byteOffset, arguments.length > 1 ? arguments[1] : undefined), 52);\n },\n setInt8: function setInt8(byteOffset, value) {\n set(this, 1, byteOffset, packInt8, value);\n },\n setUint8: function setUint8(byteOffset, value) {\n set(this, 1, byteOffset, packInt8, value);\n },\n setInt16: function setInt16(byteOffset, value /* , littleEndian */) {\n set(this, 2, byteOffset, packInt16, value, arguments.length > 2 ? arguments[2] : undefined);\n },\n setUint16: function setUint16(byteOffset, value /* , littleEndian */) {\n set(this, 2, byteOffset, packInt16, value, arguments.length > 2 ? arguments[2] : undefined);\n },\n setInt32: function setInt32(byteOffset, value /* , littleEndian */) {\n set(this, 4, byteOffset, packInt32, value, arguments.length > 2 ? arguments[2] : undefined);\n },\n setUint32: function setUint32(byteOffset, value /* , littleEndian */) {\n set(this, 4, byteOffset, packInt32, value, arguments.length > 2 ? arguments[2] : undefined);\n },\n setFloat32: function setFloat32(byteOffset, value /* , littleEndian */) {\n set(this, 4, byteOffset, packFloat32, value, arguments.length > 2 ? arguments[2] : undefined);\n },\n setFloat64: function setFloat64(byteOffset, value /* , littleEndian */) {\n set(this, 8, byteOffset, packFloat64, value, arguments.length > 2 ? arguments[2] : undefined);\n }\n });\n} else {\n var INCORRECT_ARRAY_BUFFER_NAME = PROPER_FUNCTION_NAME && NativeArrayBuffer.name !== ARRAY_BUFFER;\n /* eslint-disable no-new -- required for testing */\n if (!fails(function () {\n NativeArrayBuffer(1);\n }) || !fails(function () {\n new NativeArrayBuffer(-1);\n }) || fails(function () {\n new NativeArrayBuffer();\n new NativeArrayBuffer(1.5);\n new NativeArrayBuffer(NaN);\n return INCORRECT_ARRAY_BUFFER_NAME && !CONFIGURABLE_FUNCTION_NAME;\n })) {\n /* eslint-enable no-new -- required for testing */\n $ArrayBuffer = function ArrayBuffer(length) {\n anInstance(this, ArrayBufferPrototype);\n return new NativeArrayBuffer(toIndex(length));\n };\n\n $ArrayBuffer[PROTOTYPE] = ArrayBufferPrototype;\n\n for (var keys = getOwnPropertyNames(NativeArrayBuffer), j = 0, key; keys.length > j;) {\n if (!((key = keys[j++]) in $ArrayBuffer)) {\n createNonEnumerableProperty($ArrayBuffer, key, NativeArrayBuffer[key]);\n }\n }\n\n ArrayBufferPrototype.constructor = $ArrayBuffer;\n } else if (INCORRECT_ARRAY_BUFFER_NAME && CONFIGURABLE_FUNCTION_NAME) {\n createNonEnumerableProperty(NativeArrayBuffer, 'name', ARRAY_BUFFER);\n }\n\n // WebKit bug - the same parent prototype for typed arrays and data view\n if (setPrototypeOf && getPrototypeOf(DataViewPrototype) !== ObjectPrototype) {\n setPrototypeOf(DataViewPrototype, ObjectPrototype);\n }\n\n // iOS Safari 7.x bug\n var testView = new $DataView(new $ArrayBuffer(2));\n var $setInt8 = uncurryThis(DataViewPrototype.setInt8);\n testView.setInt8(0, 2147483648);\n testView.setInt8(1, 2147483649);\n if (testView.getInt8(0) || !testView.getInt8(1)) defineBuiltIns(DataViewPrototype, {\n setInt8: function setInt8(byteOffset, value) {\n $setInt8(this, byteOffset, value << 24 >> 24);\n },\n setUint8: function setUint8(byteOffset, value) {\n $setInt8(this, byteOffset, value << 24 >> 24);\n }\n }, { unsafe: true });\n}\n\nsetToStringTag($ArrayBuffer, ARRAY_BUFFER);\nsetToStringTag($DataView, DATA_VIEW);\n\nmodule.exports = {\n ArrayBuffer: $ArrayBuffer,\n DataView: $DataView\n};\n","'use strict';\nvar toObject = require('../internals/to-object');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar deletePropertyOrThrow = require('../internals/delete-property-or-throw');\n\nvar min = Math.min;\n\n// `Array.prototype.copyWithin` method implementation\n// https://tc39.es/ecma262/#sec-array.prototype.copywithin\n// eslint-disable-next-line es-x/no-array-prototype-copywithin -- safe\nmodule.exports = [].copyWithin || function copyWithin(target /* = 0 */, start /* = 0, end = @length */) {\n var O = toObject(this);\n var len = lengthOfArrayLike(O);\n var to = toAbsoluteIndex(target, len);\n var from = toAbsoluteIndex(start, len);\n var end = arguments.length > 2 ? arguments[2] : undefined;\n var count = min((end === undefined ? len : toAbsoluteIndex(end, len)) - from, len - to);\n var inc = 1;\n if (from < to && to < from + count) {\n inc = -1;\n from += count - 1;\n to += count - 1;\n }\n while (count-- > 0) {\n if (from in O) O[to] = O[from];\n else deletePropertyOrThrow(O, to);\n to += inc;\n from += inc;\n } return O;\n};\n","'use strict';\nvar toObject = require('../internals/to-object');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\n\n// `Array.prototype.fill` method implementation\n// https://tc39.es/ecma262/#sec-array.prototype.fill\nmodule.exports = function fill(value /* , start = 0, end = @length */) {\n var O = toObject(this);\n var length = lengthOfArrayLike(O);\n var argumentsLength = arguments.length;\n var index = toAbsoluteIndex(argumentsLength > 1 ? arguments[1] : undefined, length);\n var end = argumentsLength > 2 ? arguments[2] : undefined;\n var endPos = end === undefined ? length : toAbsoluteIndex(end, length);\n while (endPos > index) O[index++] = value;\n return O;\n};\n","'use strict';\nvar $forEach = require('../internals/array-iteration').forEach;\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\n\nvar STRICT_METHOD = arrayMethodIsStrict('forEach');\n\n// `Array.prototype.forEach` method implementation\n// https://tc39.es/ecma262/#sec-array.prototype.foreach\nmodule.exports = !STRICT_METHOD ? function forEach(callbackfn /* , thisArg */) {\n return $forEach(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n// eslint-disable-next-line es-x/no-array-prototype-foreach -- safe\n} : [].forEach;\n","var lengthOfArrayLike = require('../internals/length-of-array-like');\n\nmodule.exports = function (Constructor, list) {\n var index = 0;\n var 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 bind = require('../internals/function-bind-context');\nvar call = require('../internals/function-call');\nvar toObject = require('../internals/to-object');\nvar callWithSafeIterationClosing = require('../internals/call-with-safe-iteration-closing');\nvar isArrayIteratorMethod = require('../internals/is-array-iterator-method');\nvar isConstructor = require('../internals/is-constructor');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar createProperty = require('../internals/create-property');\nvar getIterator = require('../internals/get-iterator');\nvar getIteratorMethod = require('../internals/get-iterator-method');\n\nvar $Array = Array;\n\n// `Array.from` method implementation\n// https://tc39.es/ecma262/#sec-array.from\nmodule.exports = function from(arrayLike /* , mapfn = undefined, thisArg = undefined */) {\n var O = toObject(arrayLike);\n var IS_CONSTRUCTOR = isConstructor(this);\n var argumentsLength = arguments.length;\n var mapfn = argumentsLength > 1 ? arguments[1] : undefined;\n var mapping = mapfn !== undefined;\n if (mapping) mapfn = bind(mapfn, argumentsLength > 2 ? arguments[2] : undefined);\n var iteratorMethod = getIteratorMethod(O);\n var index = 0;\n var length, result, step, iterator, next, value;\n // if the target is not iterable or it's an array with the default iterator - use a simple case\n if (iteratorMethod && !(this === $Array && isArrayIteratorMethod(iteratorMethod))) {\n iterator = getIterator(O, iteratorMethod);\n next = iterator.next;\n result = IS_CONSTRUCTOR ? new this() : [];\n for (;!(step = call(next, iterator)).done; index++) {\n value = mapping ? callWithSafeIterationClosing(iterator, mapfn, [step.value, index], true) : step.value;\n createProperty(result, index, value);\n }\n } else {\n length = lengthOfArrayLike(O);\n result = IS_CONSTRUCTOR ? new this(length) : $Array(length);\n for (;length > index; index++) {\n value = mapping ? mapfn(O[index], index) : O[index];\n createProperty(result, index, value);\n }\n }\n result.length = index;\n return result;\n};\n","var 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 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","var bind = require('../internals/function-bind-context');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar IndexedObject = require('../internals/indexed-object');\nvar toObject = require('../internals/to-object');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar arraySpeciesCreate = require('../internals/array-species-create');\n\nvar push = uncurryThis([].push);\n\n// `Array.prototype.{ forEach, map, filter, some, every, find, findIndex, filterReject }` methods implementation\nvar createMethod = function (TYPE) {\n var IS_MAP = TYPE == 1;\n var IS_FILTER = TYPE == 2;\n var IS_SOME = TYPE == 3;\n var IS_EVERY = TYPE == 4;\n var IS_FIND_INDEX = TYPE == 6;\n var IS_FILTER_REJECT = TYPE == 7;\n var NO_HOLES = TYPE == 5 || IS_FIND_INDEX;\n return function ($this, callbackfn, that, specificCreate) {\n var O = toObject($this);\n var self = IndexedObject(O);\n var boundFunction = bind(callbackfn, that);\n var length = lengthOfArrayLike(self);\n var index = 0;\n var create = specificCreate || arraySpeciesCreate;\n var target = IS_MAP ? create($this, length) : IS_FILTER || IS_FILTER_REJECT ? create($this, 0) : undefined;\n var value, result;\n for (;length > index; index++) if (NO_HOLES || index in self) {\n value = self[index];\n result = boundFunction(value, index, O);\n if (TYPE) {\n if (IS_MAP) target[index] = result; // map\n else if (result) switch (TYPE) {\n case 3: return true; // some\n case 5: return value; // find\n case 6: return index; // findIndex\n case 2: push(target, value); // filter\n } else switch (TYPE) {\n case 4: return false; // every\n case 7: push(target, value); // filterReject\n }\n }\n }\n return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : target;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.forEach` method\n // https://tc39.es/ecma262/#sec-array.prototype.foreach\n forEach: createMethod(0),\n // `Array.prototype.map` method\n // https://tc39.es/ecma262/#sec-array.prototype.map\n map: createMethod(1),\n // `Array.prototype.filter` method\n // https://tc39.es/ecma262/#sec-array.prototype.filter\n filter: createMethod(2),\n // `Array.prototype.some` method\n // https://tc39.es/ecma262/#sec-array.prototype.some\n some: createMethod(3),\n // `Array.prototype.every` method\n // https://tc39.es/ecma262/#sec-array.prototype.every\n every: createMethod(4),\n // `Array.prototype.find` method\n // https://tc39.es/ecma262/#sec-array.prototype.find\n find: createMethod(5),\n // `Array.prototype.findIndex` method\n // https://tc39.es/ecma262/#sec-array.prototype.findIndex\n findIndex: createMethod(6),\n // `Array.prototype.filterReject` method\n // https://github.com/tc39/proposal-array-filtering\n filterReject: createMethod(7)\n};\n","'use strict';\n/* eslint-disable es-x/no-array-prototype-lastindexof -- safe */\nvar apply = require('../internals/function-apply');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\n\nvar min = Math.min;\nvar $lastIndexOf = [].lastIndexOf;\nvar NEGATIVE_ZERO = !!$lastIndexOf && 1 / [1].lastIndexOf(1, -0) < 0;\nvar STRICT_METHOD = arrayMethodIsStrict('lastIndexOf');\nvar FORCED = NEGATIVE_ZERO || !STRICT_METHOD;\n\n// `Array.prototype.lastIndexOf` method implementation\n// https://tc39.es/ecma262/#sec-array.prototype.lastindexof\nmodule.exports = FORCED ? function lastIndexOf(searchElement /* , fromIndex = @[*-1] */) {\n // convert -0 to +0\n if (NEGATIVE_ZERO) return apply($lastIndexOf, this, arguments) || 0;\n var O = toIndexedObject(this);\n var length = lengthOfArrayLike(O);\n var index = length - 1;\n if (arguments.length > 1) index = min(index, toIntegerOrInfinity(arguments[1]));\n if (index < 0) index = length + index;\n for (;index >= 0; index--) if (index in O && O[index] === searchElement) return index || 0;\n return -1;\n} : $lastIndexOf;\n","var fails = require('../internals/fails');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar SPECIES = wellKnownSymbol('species');\n\nmodule.exports = function (METHOD_NAME) {\n // We can't use this feature detection in V8 since it causes\n // deoptimization and serious performance degradation\n // https://github.com/zloirock/core-js/issues/677\n return V8_VERSION >= 51 || !fails(function () {\n var array = [];\n var constructor = array.constructor = {};\n constructor[SPECIES] = function () {\n return { foo: 1 };\n };\n return array[METHOD_NAME](Boolean).foo !== 1;\n });\n};\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = function (METHOD_NAME, argument) {\n var method = [][METHOD_NAME];\n return !!method && fails(function () {\n // eslint-disable-next-line no-useless-call -- required for testing\n method.call(null, argument || function () { return 1; }, 1);\n });\n};\n","var aCallable = require('../internals/a-callable');\nvar toObject = require('../internals/to-object');\nvar IndexedObject = require('../internals/indexed-object');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\n\nvar $TypeError = TypeError;\n\n// `Array.prototype.{ reduce, reduceRight }` methods implementation\nvar createMethod = function (IS_RIGHT) {\n return function (that, callbackfn, argumentsLength, memo) {\n aCallable(callbackfn);\n var O = toObject(that);\n var self = IndexedObject(O);\n var length = lengthOfArrayLike(O);\n var index = IS_RIGHT ? length - 1 : 0;\n var i = IS_RIGHT ? -1 : 1;\n if (argumentsLength < 2) while (true) {\n if (index in self) {\n memo = self[index];\n index += i;\n break;\n }\n index += i;\n if (IS_RIGHT ? index < 0 : length <= index) {\n throw $TypeError('Reduce of empty array with no initial value');\n }\n }\n for (;IS_RIGHT ? index >= 0 : length > index; index += i) if (index in self) {\n memo = callbackfn(memo, self[index], index, O);\n }\n return memo;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.reduce` method\n // https://tc39.es/ecma262/#sec-array.prototype.reduce\n left: createMethod(false),\n // `Array.prototype.reduceRight` method\n // https://tc39.es/ecma262/#sec-array.prototype.reduceright\n right: createMethod(true)\n};\n","var toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar createProperty = require('../internals/create-property');\n\nvar $Array = Array;\nvar max = Math.max;\n\nmodule.exports = function (O, start, end) {\n var length = lengthOfArrayLike(O);\n var k = toAbsoluteIndex(start, length);\n var fin = toAbsoluteIndex(end === undefined ? length : end, length);\n var result = $Array(max(fin - k, 0));\n for (var n = 0; k < fin; k++, n++) createProperty(result, n, O[k]);\n result.length = n;\n return result;\n};\n","var uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = uncurryThis([].slice);\n","var arraySlice = require('../internals/array-slice-simple');\n\nvar floor = Math.floor;\n\nvar mergeSort = function (array, comparefn) {\n var length = array.length;\n var middle = floor(length / 2);\n return length < 8 ? insertionSort(array, comparefn) : merge(\n array,\n mergeSort(arraySlice(array, 0, middle), comparefn),\n mergeSort(arraySlice(array, middle), comparefn),\n comparefn\n );\n};\n\nvar insertionSort = function (array, comparefn) {\n var length = array.length;\n var i = 1;\n var element, j;\n\n while (i < length) {\n j = i;\n element = array[i];\n while (j && comparefn(array[j - 1], element) > 0) {\n array[j] = array[--j];\n }\n if (j !== i++) array[j] = element;\n } return array;\n};\n\nvar merge = function (array, left, right, comparefn) {\n var llength = left.length;\n var rlength = right.length;\n var lindex = 0;\n var rindex = 0;\n\n while (lindex < llength || rindex < rlength) {\n array[lindex + rindex] = (lindex < llength && rindex < rlength)\n ? comparefn(left[lindex], right[rindex]) <= 0 ? left[lindex++] : right[rindex++]\n : lindex < llength ? left[lindex++] : right[rindex++];\n } return array;\n};\n\nmodule.exports = mergeSort;\n","var isArray = require('../internals/is-array');\nvar isConstructor = require('../internals/is-constructor');\nvar isObject = require('../internals/is-object');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar SPECIES = wellKnownSymbol('species');\nvar $Array = Array;\n\n// a part of `ArraySpeciesCreate` abstract operation\n// https://tc39.es/ecma262/#sec-arrayspeciescreate\nmodule.exports = function (originalArray) {\n var C;\n if (isArray(originalArray)) {\n C = originalArray.constructor;\n // cross-realm fallback\n if (isConstructor(C) && (C === $Array || isArray(C.prototype))) C = undefined;\n else if (isObject(C)) {\n C = C[SPECIES];\n if (C === null) C = undefined;\n }\n } return C === undefined ? $Array : C;\n};\n","var arraySpeciesConstructor = require('../internals/array-species-constructor');\n\n// `ArraySpeciesCreate` abstract operation\n// https://tc39.es/ecma262/#sec-arrayspeciescreate\nmodule.exports = function (originalArray, length) {\n return new (arraySpeciesConstructor(originalArray))(length === 0 ? 0 : length);\n};\n","var anObject = require('../internals/an-object');\nvar iteratorClose = require('../internals/iterator-close');\n\n// call something on iterator step with safe closing on error\nmodule.exports = function (iterator, fn, value, ENTRIES) {\n try {\n return ENTRIES ? fn(anObject(value)[0], value[1]) : fn(value);\n } catch (error) {\n iteratorClose(iterator, 'throw', error);\n }\n};\n","var wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar SAFE_CLOSING = false;\n\ntry {\n var called = 0;\n var iteratorWithReturn = {\n next: function () {\n return { done: !!called++ };\n },\n 'return': function () {\n SAFE_CLOSING = true;\n }\n };\n iteratorWithReturn[ITERATOR] = function () {\n return this;\n };\n // eslint-disable-next-line es-x/no-array-from, no-throw-literal -- required for testing\n Array.from(iteratorWithReturn, function () { throw 2; });\n} catch (error) { /* empty */ }\n\nmodule.exports = function (exec, SKIP_CLOSING) {\n if (!SKIP_CLOSING && !SAFE_CLOSING) return false;\n var ITERATION_SUPPORT = false;\n try {\n var object = {};\n object[ITERATOR] = function () {\n return {\n next: function () {\n return { done: ITERATION_SUPPORT = true };\n }\n };\n };\n exec(object);\n } catch (error) { /* empty */ }\n return ITERATION_SUPPORT;\n};\n","var 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","var 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","var 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","var wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar MATCH = wellKnownSymbol('match');\n\nmodule.exports = function (METHOD_NAME) {\n var regexp = /./;\n try {\n '/./'[METHOD_NAME](regexp);\n } catch (error1) {\n try {\n regexp[MATCH] = false;\n return '/./'[METHOD_NAME](regexp);\n } catch (error2) { /* empty */ }\n } return false;\n};\n","var fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n function F() { /* empty */ }\n F.prototype.constructor = null;\n // eslint-disable-next-line es-x/no-object-getprototypeof -- required for testing\n return Object.getPrototypeOf(new F()) !== F.prototype;\n});\n","var uncurryThis = require('../internals/function-uncurry-this');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar toString = require('../internals/to-string');\n\nvar quot = /\"/g;\nvar replace = uncurryThis(''.replace);\n\n// `CreateHTML` abstract operation\n// https://tc39.es/ecma262/#sec-createhtml\nmodule.exports = function (string, tag, attribute, value) {\n var S = toString(requireObjectCoercible(string));\n var p1 = '<' + tag;\n if (attribute !== '') p1 += ' ' + attribute + '=\"' + replace(toString(value), quot, '"') + '\"';\n return p1 + '>' + S + '';\n};\n","'use strict';\nvar IteratorPrototype = require('../internals/iterators-core').IteratorPrototype;\nvar create = require('../internals/object-create');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar Iterators = require('../internals/iterators');\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (IteratorConstructor, NAME, next, ENUMERABLE_NEXT) {\n var TO_STRING_TAG = NAME + ' Iterator';\n IteratorConstructor.prototype = create(IteratorPrototype, { next: createPropertyDescriptor(+!ENUMERABLE_NEXT, next) });\n setToStringTag(IteratorConstructor, TO_STRING_TAG, false, true);\n Iterators[TO_STRING_TAG] = returnThis;\n return IteratorConstructor;\n};\n","var 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","module.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 toPropertyKey = require('../internals/to-property-key');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = function (object, key, value) {\n var propertyKey = toPropertyKey(key);\n if (propertyKey in object) definePropertyModule.f(object, propertyKey, createPropertyDescriptor(0, value));\n else object[propertyKey] = value;\n};\n","var 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","var 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","var defineBuiltIn = require('../internals/define-built-in');\n\nmodule.exports = function (target, src, options) {\n for (var key in src) defineBuiltIn(target, key, src[key], options);\n return target;\n};\n","var global = require('../internals/global');\n\n// eslint-disable-next-line es-x/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 $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar IS_PURE = require('../internals/is-pure');\nvar FunctionName = require('../internals/function-name');\nvar isCallable = require('../internals/is-callable');\nvar createIteratorConstructor = require('../internals/create-iterator-constructor');\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar Iterators = require('../internals/iterators');\nvar IteratorsCore = require('../internals/iterators-core');\n\nvar PROPER_FUNCTION_NAME = FunctionName.PROPER;\nvar CONFIGURABLE_FUNCTION_NAME = FunctionName.CONFIGURABLE;\nvar IteratorPrototype = IteratorsCore.IteratorPrototype;\nvar BUGGY_SAFARI_ITERATORS = IteratorsCore.BUGGY_SAFARI_ITERATORS;\nvar ITERATOR = wellKnownSymbol('iterator');\nvar KEYS = 'keys';\nvar VALUES = 'values';\nvar ENTRIES = 'entries';\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (Iterable, NAME, IteratorConstructor, next, DEFAULT, IS_SET, FORCED) {\n createIteratorConstructor(IteratorConstructor, NAME, next);\n\n var getIterationMethod = function (KIND) {\n if (KIND === DEFAULT && defaultIterator) return defaultIterator;\n if (!BUGGY_SAFARI_ITERATORS && KIND in IterablePrototype) return IterablePrototype[KIND];\n switch (KIND) {\n case KEYS: return function keys() { return new IteratorConstructor(this, KIND); };\n case VALUES: return function values() { return new IteratorConstructor(this, KIND); };\n case ENTRIES: return function entries() { return new IteratorConstructor(this, KIND); };\n } return function () { return new IteratorConstructor(this); };\n };\n\n var TO_STRING_TAG = NAME + ' Iterator';\n var INCORRECT_VALUES_NAME = false;\n var IterablePrototype = Iterable.prototype;\n var nativeIterator = IterablePrototype[ITERATOR]\n || IterablePrototype['@@iterator']\n || DEFAULT && IterablePrototype[DEFAULT];\n var defaultIterator = !BUGGY_SAFARI_ITERATORS && nativeIterator || getIterationMethod(DEFAULT);\n var anyNativeIterator = NAME == 'Array' ? IterablePrototype.entries || nativeIterator : nativeIterator;\n var CurrentIteratorPrototype, methods, KEY;\n\n // fix native\n if (anyNativeIterator) {\n CurrentIteratorPrototype = getPrototypeOf(anyNativeIterator.call(new Iterable()));\n if (CurrentIteratorPrototype !== Object.prototype && CurrentIteratorPrototype.next) {\n if (!IS_PURE && getPrototypeOf(CurrentIteratorPrototype) !== IteratorPrototype) {\n if (setPrototypeOf) {\n setPrototypeOf(CurrentIteratorPrototype, IteratorPrototype);\n } else if (!isCallable(CurrentIteratorPrototype[ITERATOR])) {\n defineBuiltIn(CurrentIteratorPrototype, ITERATOR, returnThis);\n }\n }\n // Set @@toStringTag to native iterators\n setToStringTag(CurrentIteratorPrototype, TO_STRING_TAG, true, true);\n if (IS_PURE) Iterators[TO_STRING_TAG] = returnThis;\n }\n }\n\n // fix Array.prototype.{ values, @@iterator }.name in V8 / FF\n if (PROPER_FUNCTION_NAME && DEFAULT == VALUES && nativeIterator && nativeIterator.name !== VALUES) {\n if (!IS_PURE && CONFIGURABLE_FUNCTION_NAME) {\n createNonEnumerableProperty(IterablePrototype, 'name', VALUES);\n } else {\n INCORRECT_VALUES_NAME = true;\n defaultIterator = function values() { return call(nativeIterator, this); };\n }\n }\n\n // export additional methods\n if (DEFAULT) {\n methods = {\n values: getIterationMethod(VALUES),\n keys: IS_SET ? defaultIterator : getIterationMethod(KEYS),\n entries: getIterationMethod(ENTRIES)\n };\n if (FORCED) for (KEY in methods) {\n if (BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME || !(KEY in IterablePrototype)) {\n defineBuiltIn(IterablePrototype, KEY, methods[KEY]);\n }\n } else $({ target: NAME, proto: true, forced: BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME }, methods);\n }\n\n // define iterator\n if ((!IS_PURE || FORCED) && IterablePrototype[ITERATOR] !== defaultIterator) {\n defineBuiltIn(IterablePrototype, ITERATOR, defaultIterator, { name: DEFAULT });\n }\n Iterators[NAME] = defaultIterator;\n\n return methods;\n};\n","var path = require('../internals/path');\nvar hasOwn = require('../internals/has-own-property');\nvar wrappedWellKnownSymbolModule = require('../internals/well-known-symbol-wrapped');\nvar defineProperty = require('../internals/object-define-property').f;\n\nmodule.exports = function (NAME) {\n var Symbol = path.Symbol || (path.Symbol = {});\n if (!hasOwn(Symbol, NAME)) defineProperty(Symbol, NAME, {\n value: wrappedWellKnownSymbolModule.f(NAME)\n });\n};\n","'use strict';\nvar tryToString = require('../internals/try-to-string');\n\nvar $TypeError = TypeError;\n\nmodule.exports = function (O, P) {\n if (!delete O[P]) throw $TypeError('Cannot delete property ' + tryToString(P) + ' of ' + tryToString(O));\n};\n","var fails = require('../internals/fails');\n\n// Detect IE8's incomplete defineProperty implementation\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es-x/no-object-defineproperty -- required for testing\n return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] != 7;\n});\n","var 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","var $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","// iterable DOM collections\n// flag - `iterable` interface - 'entries', 'keys', 'values', 'forEach' methods\nmodule.exports = {\n CSSRuleList: 0,\n CSSStyleDeclaration: 0,\n CSSValueList: 0,\n ClientRectList: 0,\n DOMRectList: 0,\n DOMStringList: 0,\n DOMTokenList: 1,\n DataTransferItemList: 0,\n FileList: 0,\n HTMLAllCollection: 0,\n HTMLCollection: 0,\n HTMLFormElement: 0,\n HTMLSelectElement: 0,\n MediaList: 0,\n MimeTypeArray: 0,\n NamedNodeMap: 0,\n NodeList: 1,\n PaintRequestList: 0,\n Plugin: 0,\n PluginArray: 0,\n SVGLengthList: 0,\n SVGNumberList: 0,\n SVGPathSegList: 0,\n SVGPointList: 0,\n SVGStringList: 0,\n SVGTransformList: 0,\n SourceBufferList: 0,\n StyleSheetList: 0,\n TextTrackCueList: 0,\n TextTrackList: 0,\n TouchList: 0\n};\n","// in old WebKit versions, `element.classList` is not an instance of global `DOMTokenList`\nvar documentCreateElement = require('../internals/document-create-element');\n\nvar classList = documentCreateElement('span').classList;\nvar DOMTokenListPrototype = classList && classList.constructor && classList.constructor.prototype;\n\nmodule.exports = DOMTokenListPrototype === Object.prototype ? undefined : DOMTokenListPrototype;\n","var userAgent = require('../internals/engine-user-agent');\n\nvar firefox = userAgent.match(/firefox\\/(\\d+)/i);\n\nmodule.exports = !!firefox && +firefox[1];\n","module.exports = typeof window == 'object' && typeof Deno != 'object';\n","var UA = require('../internals/engine-user-agent');\n\nmodule.exports = /MSIE|Trident/.test(UA);\n","var userAgent = require('../internals/engine-user-agent');\nvar global = require('../internals/global');\n\nmodule.exports = /ipad|iphone|ipod/i.test(userAgent) && global.Pebble !== undefined;\n","var userAgent = require('../internals/engine-user-agent');\n\nmodule.exports = /(?:ipad|iphone|ipod).*applewebkit/i.test(userAgent);\n","var classof = require('../internals/classof-raw');\nvar global = require('../internals/global');\n\nmodule.exports = classof(global.process) == 'process';\n","var userAgent = require('../internals/engine-user-agent');\n\nmodule.exports = /web0s(?!.*chrome)/i.test(userAgent);\n","var getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('navigator', 'userAgent') || '';\n","var 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","var userAgent = require('../internals/engine-user-agent');\n\nvar webkit = userAgent.match(/AppleWebKit\\/(\\d+)\\./);\n\nmodule.exports = !!webkit && +webkit[1];\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","var 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] || {}).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","module.exports = function (exec) {\n try {\n return !!exec();\n } catch (error) {\n return true;\n }\n};\n","'use strict';\n// TODO: Remove from `core-js@4` since it's moved to entry points\nrequire('../modules/es.regexp.exec');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar regexpExec = require('../internals/regexp-exec');\nvar fails = require('../internals/fails');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\n\nvar SPECIES = wellKnownSymbol('species');\nvar RegExpPrototype = RegExp.prototype;\n\nmodule.exports = function (KEY, exec, FORCED, SHAM) {\n var SYMBOL = wellKnownSymbol(KEY);\n\n var DELEGATES_TO_SYMBOL = !fails(function () {\n // String methods call symbol-named RegEp methods\n var O = {};\n O[SYMBOL] = function () { return 7; };\n return ''[KEY](O) != 7;\n });\n\n var DELEGATES_TO_EXEC = DELEGATES_TO_SYMBOL && !fails(function () {\n // Symbol-named RegExp methods call .exec\n var execCalled = false;\n var re = /a/;\n\n if (KEY === 'split') {\n // We can't use real regex here since it causes deoptimization\n // and serious performance degradation in V8\n // https://github.com/zloirock/core-js/issues/306\n re = {};\n // RegExp[@@split] doesn't call the regex's exec method, but first creates\n // a new one. We need to return the patched regex when creating the new one.\n re.constructor = {};\n re.constructor[SPECIES] = function () { return re; };\n re.flags = '';\n re[SYMBOL] = /./[SYMBOL];\n }\n\n re.exec = function () { execCalled = true; return null; };\n\n re[SYMBOL]('');\n return !execCalled;\n });\n\n if (\n !DELEGATES_TO_SYMBOL ||\n !DELEGATES_TO_EXEC ||\n FORCED\n ) {\n var uncurriedNativeRegExpMethod = uncurryThis(/./[SYMBOL]);\n var methods = exec(SYMBOL, ''[KEY], function (nativeMethod, regexp, str, arg2, forceStringMethod) {\n var uncurriedNativeMethod = uncurryThis(nativeMethod);\n var $exec = regexp.exec;\n if ($exec === regexpExec || $exec === RegExpPrototype.exec) {\n if (DELEGATES_TO_SYMBOL && !forceStringMethod) {\n // The native String method already delegates to @@method (this\n // polyfilled function), leasing to infinite recursion.\n // We avoid it by directly calling the native @@method method.\n return { done: true, value: uncurriedNativeRegExpMethod(regexp, str, arg2) };\n }\n return { done: true, value: uncurriedNativeMethod(str, regexp, arg2) };\n }\n return { done: false };\n });\n\n defineBuiltIn(String.prototype, KEY, methods[0]);\n defineBuiltIn(RegExpPrototype, SYMBOL, methods[1]);\n }\n\n if (SHAM) createNonEnumerableProperty(RegExpPrototype[SYMBOL], 'sham', true);\n};\n","'use strict';\nvar isArray = require('../internals/is-array');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar doesNotExceedSafeInteger = require('../internals/does-not-exceed-safe-integer');\nvar bind = require('../internals/function-bind-context');\n\n// `FlattenIntoArray` abstract operation\n// https://tc39.github.io/proposal-flatMap/#sec-FlattenIntoArray\nvar flattenIntoArray = function (target, original, source, sourceLen, start, depth, mapper, thisArg) {\n var targetIndex = start;\n var sourceIndex = 0;\n var mapFn = mapper ? bind(mapper, thisArg) : false;\n var element, elementLen;\n\n while (sourceIndex < sourceLen) {\n if (sourceIndex in source) {\n element = mapFn ? mapFn(source[sourceIndex], sourceIndex, original) : source[sourceIndex];\n\n if (depth > 0 && isArray(element)) {\n elementLen = lengthOfArrayLike(element);\n targetIndex = flattenIntoArray(target, original, element, elementLen, targetIndex, depth - 1) - 1;\n } else {\n doesNotExceedSafeInteger(targetIndex + 1);\n target[targetIndex] = element;\n }\n\n targetIndex++;\n }\n sourceIndex++;\n }\n return targetIndex;\n};\n\nmodule.exports = flattenIntoArray;\n","var NATIVE_BIND = require('../internals/function-bind-native');\n\nvar FunctionPrototype = Function.prototype;\nvar apply = FunctionPrototype.apply;\nvar call = FunctionPrototype.call;\n\n// eslint-disable-next-line es-x/no-reflect -- safe\nmodule.exports = typeof Reflect == 'object' && Reflect.apply || (NATIVE_BIND ? call.bind(apply) : function () {\n return call.apply(apply, arguments);\n});\n","var uncurryThis = require('../internals/function-uncurry-this');\nvar aCallable = require('../internals/a-callable');\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar bind = uncurryThis(uncurryThis.bind);\n\n// optional / simple context binding\nmodule.exports = function (fn, that) {\n aCallable(fn);\n return that === undefined ? fn : NATIVE_BIND ? bind(fn, that) : function (/* ...args */) {\n return fn.apply(that, arguments);\n };\n};\n","var fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es-x/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 uncurryThis = require('../internals/function-uncurry-this');\nvar aCallable = require('../internals/a-callable');\nvar isObject = require('../internals/is-object');\nvar hasOwn = require('../internals/has-own-property');\nvar arraySlice = require('../internals/array-slice');\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar $Function = Function;\nvar concat = uncurryThis([].concat);\nvar join = uncurryThis([].join);\nvar factories = {};\n\nvar construct = function (C, argsLength, args) {\n if (!hasOwn(factories, argsLength)) {\n for (var list = [], i = 0; i < argsLength; i++) list[i] = 'a[' + i + ']';\n factories[argsLength] = $Function('C,a', 'return new C(' + join(list, ',') + ')');\n } return factories[argsLength](C, args);\n};\n\n// `Function.prototype.bind` method implementation\n// https://tc39.es/ecma262/#sec-function.prototype.bind\nmodule.exports = NATIVE_BIND ? $Function.bind : function bind(that /* , ...args */) {\n var F = aCallable(this);\n var Prototype = F.prototype;\n var partArgs = arraySlice(arguments, 1);\n var boundFunction = function bound(/* args... */) {\n var args = concat(partArgs, arraySlice(arguments));\n return this instanceof boundFunction ? construct(F, args.length, args) : F.apply(that, args);\n };\n if (isObject(Prototype)) boundFunction.prototype = Prototype;\n return boundFunction;\n};\n","var 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","var DESCRIPTORS = require('../internals/descriptors');\nvar hasOwn = require('../internals/has-own-property');\n\nvar FunctionPrototype = Function.prototype;\n// eslint-disable-next-line es-x/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","var NATIVE_BIND = require('../internals/function-bind-native');\n\nvar FunctionPrototype = Function.prototype;\nvar bind = FunctionPrototype.bind;\nvar call = FunctionPrototype.call;\nvar uncurryThis = NATIVE_BIND && bind.bind(call, call);\n\nmodule.exports = NATIVE_BIND ? function (fn) {\n return fn && uncurryThis(fn);\n} : function (fn) {\n return fn && function () {\n return call.apply(fn, arguments);\n };\n};\n","var 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","var classof = require('../internals/classof');\nvar getMethod = require('../internals/get-method');\nvar Iterators = require('../internals/iterators');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\n\nmodule.exports = function (it) {\n if (it != undefined) return getMethod(it, ITERATOR)\n || getMethod(it, '@@iterator')\n || Iterators[classof(it)];\n};\n","var call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar anObject = require('../internals/an-object');\nvar tryToString = require('../internals/try-to-string');\nvar getIteratorMethod = require('../internals/get-iterator-method');\n\nvar $TypeError = TypeError;\n\nmodule.exports = function (argument, usingIterator) {\n var iteratorMethod = arguments.length < 2 ? getIteratorMethod(argument) : usingIterator;\n if (aCallable(iteratorMethod)) return anObject(call(iteratorMethod, argument));\n throw $TypeError(tryToString(argument) + ' is not iterable');\n};\n","var aCallable = require('../internals/a-callable');\n\n// `GetMethod` abstract operation\n// https://tc39.es/ecma262/#sec-getmethod\nmodule.exports = function (V, P) {\n var func = V[P];\n return func == null ? undefined : aCallable(func);\n};\n","var uncurryThis = require('../internals/function-uncurry-this');\nvar toObject = require('../internals/to-object');\n\nvar floor = Math.floor;\nvar charAt = uncurryThis(''.charAt);\nvar replace = uncurryThis(''.replace);\nvar stringSlice = uncurryThis(''.slice);\nvar SUBSTITUTION_SYMBOLS = /\\$([$&'`]|\\d{1,2}|<[^>]*>)/g;\nvar SUBSTITUTION_SYMBOLS_NO_NAMED = /\\$([$&'`]|\\d{1,2})/g;\n\n// `GetSubstitution` abstract operation\n// https://tc39.es/ecma262/#sec-getsubstitution\nmodule.exports = function (matched, str, position, captures, namedCaptures, replacement) {\n var tailPos = position + matched.length;\n var m = captures.length;\n var symbols = SUBSTITUTION_SYMBOLS_NO_NAMED;\n if (namedCaptures !== undefined) {\n namedCaptures = toObject(namedCaptures);\n symbols = SUBSTITUTION_SYMBOLS;\n }\n return replace(replacement, symbols, function (match, ch) {\n var capture;\n switch (charAt(ch, 0)) {\n case '$': return '$';\n case '&': return matched;\n case '`': return stringSlice(str, 0, position);\n case \"'\": return stringSlice(str, tailPos);\n case '<':\n capture = namedCaptures[stringSlice(ch, 1, -1)];\n break;\n default: // \\d\\d?\n var n = +ch;\n if (n === 0) return match;\n if (n > m) {\n var f = floor(n / 10);\n if (f === 0) return match;\n if (f <= m) return captures[f - 1] === undefined ? charAt(ch, 1) : captures[f - 1] + charAt(ch, 1);\n return match;\n }\n capture = captures[n - 1];\n }\n return capture === undefined ? '' : capture;\n });\n};\n","var 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-x/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 // eslint-disable-next-line no-new-func -- fallback\n (function () { return this; })() || Function('return this')();\n","var 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-x/no-object-hasown -- safe\nmodule.exports = Object.hasOwn || function hasOwn(it, key) {\n return hasOwnProperty(toObject(it), key);\n};\n","module.exports = {};\n","var global = require('../internals/global');\n\nmodule.exports = function (a, b) {\n var console = global.console;\n if (console && console.error) {\n arguments.length == 1 ? console.error(a) : console.error(a, b);\n }\n};\n","var getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('document', 'documentElement');\n","var 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-x/no-object-defineproperty -- required for testing\n return Object.defineProperty(createElement('div'), 'a', {\n get: function () { return 7; }\n }).a != 7;\n});\n","// IEEE754 conversions based on https://github.com/feross/ieee754\nvar $Array = Array;\nvar abs = Math.abs;\nvar pow = Math.pow;\nvar floor = Math.floor;\nvar log = Math.log;\nvar LN2 = Math.LN2;\n\nvar pack = function (number, mantissaLength, bytes) {\n var buffer = $Array(bytes);\n var exponentLength = bytes * 8 - mantissaLength - 1;\n var eMax = (1 << exponentLength) - 1;\n var eBias = eMax >> 1;\n var rt = mantissaLength === 23 ? pow(2, -24) - pow(2, -77) : 0;\n var sign = number < 0 || number === 0 && 1 / number < 0 ? 1 : 0;\n var index = 0;\n var exponent, mantissa, c;\n number = abs(number);\n // eslint-disable-next-line no-self-compare -- NaN check\n if (number != number || number === Infinity) {\n // eslint-disable-next-line no-self-compare -- NaN check\n mantissa = number != number ? 1 : 0;\n exponent = eMax;\n } else {\n exponent = floor(log(number) / LN2);\n c = pow(2, -exponent);\n if (number * c < 1) {\n exponent--;\n c *= 2;\n }\n if (exponent + eBias >= 1) {\n number += rt / c;\n } else {\n number += rt * pow(2, 1 - eBias);\n }\n if (number * c >= 2) {\n exponent++;\n c /= 2;\n }\n if (exponent + eBias >= eMax) {\n mantissa = 0;\n exponent = eMax;\n } else if (exponent + eBias >= 1) {\n mantissa = (number * c - 1) * pow(2, mantissaLength);\n exponent = exponent + eBias;\n } else {\n mantissa = number * pow(2, eBias - 1) * pow(2, mantissaLength);\n exponent = 0;\n }\n }\n while (mantissaLength >= 8) {\n buffer[index++] = mantissa & 255;\n mantissa /= 256;\n mantissaLength -= 8;\n }\n exponent = exponent << mantissaLength | mantissa;\n exponentLength += mantissaLength;\n while (exponentLength > 0) {\n buffer[index++] = exponent & 255;\n exponent /= 256;\n exponentLength -= 8;\n }\n buffer[--index] |= sign * 128;\n return buffer;\n};\n\nvar unpack = function (buffer, mantissaLength) {\n var bytes = buffer.length;\n var exponentLength = bytes * 8 - mantissaLength - 1;\n var eMax = (1 << exponentLength) - 1;\n var eBias = eMax >> 1;\n var nBits = exponentLength - 7;\n var index = bytes - 1;\n var sign = buffer[index--];\n var exponent = sign & 127;\n var mantissa;\n sign >>= 7;\n while (nBits > 0) {\n exponent = exponent * 256 + buffer[index--];\n nBits -= 8;\n }\n mantissa = exponent & (1 << -nBits) - 1;\n exponent >>= -nBits;\n nBits += mantissaLength;\n while (nBits > 0) {\n mantissa = mantissa * 256 + buffer[index--];\n nBits -= 8;\n }\n if (exponent === 0) {\n exponent = 1 - eBias;\n } else if (exponent === eMax) {\n return mantissa ? NaN : sign ? -Infinity : Infinity;\n } else {\n mantissa = mantissa + pow(2, mantissaLength);\n exponent = exponent - eBias;\n } return (sign ? -1 : 1) * mantissa * pow(2, exponent - mantissaLength);\n};\n\nmodule.exports = {\n pack: pack,\n unpack: unpack\n};\n","var 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","var 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","var 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","var NATIVE_WEAK_MAP = require('../internals/native-weak-map');\nvar global = require('../internals/global');\nvar uncurryThis = require('../internals/function-uncurry-this');\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 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 var wmget = uncurryThis(store.get);\n var wmhas = uncurryThis(store.has);\n var wmset = uncurryThis(store.set);\n set = function (it, metadata) {\n if (wmhas(store, it)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n wmset(store, it, metadata);\n return metadata;\n };\n get = function (it) {\n return wmget(store, it) || {};\n };\n has = function (it) {\n return wmhas(store, 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","var wellKnownSymbol = require('../internals/well-known-symbol');\nvar Iterators = require('../internals/iterators');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar ArrayPrototype = Array.prototype;\n\n// check on default Array iterator\nmodule.exports = function (it) {\n return it !== undefined && (Iterators.Array === it || ArrayPrototype[ITERATOR] === it);\n};\n","var classof = require('../internals/classof-raw');\n\n// `IsArray` abstract operation\n// https://tc39.es/ecma262/#sec-isarray\n// eslint-disable-next-line es-x/no-array-isarray -- safe\nmodule.exports = Array.isArray || function isArray(argument) {\n return classof(argument) == 'Array';\n};\n","// `IsCallable` abstract operation\n// https://tc39.es/ecma262/#sec-iscallable\nmodule.exports = function (argument) {\n return typeof argument == 'function';\n};\n","var uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar classof = require('../internals/classof');\nvar getBuiltIn = require('../internals/get-built-in');\nvar inspectSource = require('../internals/inspect-source');\n\nvar noop = function () { /* empty */ };\nvar empty = [];\nvar construct = getBuiltIn('Reflect', 'construct');\nvar constructorRegExp = /^\\s*(?:class|function)\\b/;\nvar exec = uncurryThis(constructorRegExp.exec);\nvar INCORRECT_TO_STRING = !constructorRegExp.exec(noop);\n\nvar isConstructorModern = function isConstructor(argument) {\n if (!isCallable(argument)) return false;\n try {\n construct(noop, empty, argument);\n return true;\n } catch (error) {\n return false;\n }\n};\n\nvar isConstructorLegacy = function isConstructor(argument) {\n if (!isCallable(argument)) return false;\n switch (classof(argument)) {\n case 'AsyncFunction':\n case 'GeneratorFunction':\n case 'AsyncGeneratorFunction': return false;\n }\n try {\n // we can't check .prototype since constructors produced by .bind haven't it\n // `Function#toString` throws on some built-it function in some legacy engines\n // (for example, `DOMQuad` and similar in FF41-)\n return INCORRECT_TO_STRING || !!exec(constructorRegExp, inspectSource(argument));\n } catch (error) {\n return true;\n }\n};\n\nisConstructorLegacy.sham = true;\n\n// `IsConstructor` abstract operation\n// https://tc39.es/ecma262/#sec-isconstructor\nmodule.exports = !construct || fails(function () {\n var called;\n return isConstructorModern(isConstructorModern.call)\n || !isConstructorModern(Object)\n || !isConstructorModern(function () { called = true; })\n || called;\n}) ? isConstructorLegacy : isConstructorModern;\n","var 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","var isObject = require('../internals/is-object');\n\nvar floor = Math.floor;\n\n// `IsIntegralNumber` abstract operation\n// https://tc39.es/ecma262/#sec-isintegralnumber\n// eslint-disable-next-line es-x/no-number-isinteger -- safe\nmodule.exports = Number.isInteger || function isInteger(it) {\n return !isObject(it) && isFinite(it) && floor(it) === it;\n};\n","var isCallable = require('../internals/is-callable');\n\nmodule.exports = function (it) {\n return typeof it == 'object' ? it !== null : isCallable(it);\n};\n","module.exports = false;\n","var isObject = require('../internals/is-object');\nvar classof = require('../internals/classof-raw');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar MATCH = wellKnownSymbol('match');\n\n// `IsRegExp` abstract operation\n// https://tc39.es/ecma262/#sec-isregexp\nmodule.exports = function (it) {\n var isRegExp;\n return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : classof(it) == 'RegExp');\n};\n","var 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","var bind = require('../internals/function-bind-context');\nvar call = require('../internals/function-call');\nvar anObject = require('../internals/an-object');\nvar tryToString = require('../internals/try-to-string');\nvar isArrayIteratorMethod = require('../internals/is-array-iterator-method');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar getIterator = require('../internals/get-iterator');\nvar getIteratorMethod = require('../internals/get-iterator-method');\nvar iteratorClose = require('../internals/iterator-close');\n\nvar $TypeError = TypeError;\n\nvar Result = function (stopped, result) {\n this.stopped = stopped;\n this.result = result;\n};\n\nvar ResultPrototype = Result.prototype;\n\nmodule.exports = function (iterable, unboundFunction, options) {\n var that = options && options.that;\n var AS_ENTRIES = !!(options && options.AS_ENTRIES);\n var IS_RECORD = !!(options && options.IS_RECORD);\n var IS_ITERATOR = !!(options && options.IS_ITERATOR);\n var INTERRUPTED = !!(options && options.INTERRUPTED);\n var fn = bind(unboundFunction, that);\n var iterator, iterFn, index, length, result, next, step;\n\n var stop = function (condition) {\n if (iterator) iteratorClose(iterator, 'normal', condition);\n return new Result(true, condition);\n };\n\n var callFn = function (value) {\n if (AS_ENTRIES) {\n anObject(value);\n return INTERRUPTED ? fn(value[0], value[1], stop) : fn(value[0], value[1]);\n } return INTERRUPTED ? fn(value, stop) : fn(value);\n };\n\n if (IS_RECORD) {\n iterator = iterable.iterator;\n } else if (IS_ITERATOR) {\n iterator = iterable;\n } else {\n iterFn = getIteratorMethod(iterable);\n if (!iterFn) throw $TypeError(tryToString(iterable) + ' is not iterable');\n // optimisation for array iterators\n if (isArrayIteratorMethod(iterFn)) {\n for (index = 0, length = lengthOfArrayLike(iterable); length > index; index++) {\n result = callFn(iterable[index]);\n if (result && isPrototypeOf(ResultPrototype, result)) return result;\n } return new Result(false);\n }\n iterator = getIterator(iterable, iterFn);\n }\n\n next = IS_RECORD ? iterable.next : iterator.next;\n while (!(step = call(next, iterator)).done) {\n try {\n result = callFn(step.value);\n } catch (error) {\n iteratorClose(iterator, 'throw', error);\n }\n if (typeof result == 'object' && result && isPrototypeOf(ResultPrototype, result)) return result;\n } return new Result(false);\n};\n","var call = require('../internals/function-call');\nvar anObject = require('../internals/an-object');\nvar getMethod = require('../internals/get-method');\n\nmodule.exports = function (iterator, kind, value) {\n var innerResult, innerError;\n anObject(iterator);\n try {\n innerResult = getMethod(iterator, 'return');\n if (!innerResult) {\n if (kind === 'throw') throw value;\n return value;\n }\n innerResult = call(innerResult, iterator);\n } catch (error) {\n innerError = true;\n innerResult = error;\n }\n if (kind === 'throw') throw value;\n if (innerError) throw innerResult;\n anObject(innerResult);\n return value;\n};\n","'use strict';\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar create = require('../internals/object-create');\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_PURE = require('../internals/is-pure');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar BUGGY_SAFARI_ITERATORS = false;\n\n// `%IteratorPrototype%` object\n// https://tc39.es/ecma262/#sec-%iteratorprototype%-object\nvar IteratorPrototype, PrototypeOfArrayIteratorPrototype, arrayIterator;\n\n/* eslint-disable es-x/no-array-prototype-keys -- safe */\nif ([].keys) {\n arrayIterator = [].keys();\n // Safari 8 has buggy iterators w/o `next`\n if (!('next' in arrayIterator)) BUGGY_SAFARI_ITERATORS = true;\n else {\n PrototypeOfArrayIteratorPrototype = getPrototypeOf(getPrototypeOf(arrayIterator));\n if (PrototypeOfArrayIteratorPrototype !== Object.prototype) IteratorPrototype = PrototypeOfArrayIteratorPrototype;\n }\n}\n\nvar NEW_ITERATOR_PROTOTYPE = IteratorPrototype == undefined || fails(function () {\n var test = {};\n // FF44- legacy iterators case\n return IteratorPrototype[ITERATOR].call(test) !== test;\n});\n\nif (NEW_ITERATOR_PROTOTYPE) IteratorPrototype = {};\nelse if (IS_PURE) IteratorPrototype = create(IteratorPrototype);\n\n// `%IteratorPrototype%[@@iterator]()` method\n// https://tc39.es/ecma262/#sec-%iteratorprototype%-@@iterator\nif (!isCallable(IteratorPrototype[ITERATOR])) {\n defineBuiltIn(IteratorPrototype, ITERATOR, function () {\n return this;\n });\n}\n\nmodule.exports = {\n IteratorPrototype: IteratorPrototype,\n BUGGY_SAFARI_ITERATORS: BUGGY_SAFARI_ITERATORS\n};\n","module.exports = {};\n","var 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","var 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;\n// eslint-disable-next-line es-x/no-object-defineproperty -- safe\nvar defineProperty = Object.defineProperty;\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 (String(name).slice(0, 7) === 'Symbol(') {\n name = '[' + String(name).replace(/^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 = TEMPLATE.join(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","var 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-x/no-math-trunc -- safe\nmodule.exports = Math.trunc || function trunc(x) {\n var n = +x;\n return (n > 0 ? floor : ceil)(n);\n};\n","var global = require('../internals/global');\nvar bind = require('../internals/function-bind-context');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar macrotask = require('../internals/task').set;\nvar IS_IOS = require('../internals/engine-is-ios');\nvar IS_IOS_PEBBLE = require('../internals/engine-is-ios-pebble');\nvar IS_WEBOS_WEBKIT = require('../internals/engine-is-webos-webkit');\nvar IS_NODE = require('../internals/engine-is-node');\n\nvar MutationObserver = global.MutationObserver || global.WebKitMutationObserver;\nvar document = global.document;\nvar process = global.process;\nvar Promise = global.Promise;\n// Node.js 11 shows ExperimentalWarning on getting `queueMicrotask`\nvar queueMicrotaskDescriptor = getOwnPropertyDescriptor(global, 'queueMicrotask');\nvar queueMicrotask = queueMicrotaskDescriptor && queueMicrotaskDescriptor.value;\n\nvar flush, head, last, notify, toggle, node, promise, then;\n\n// modern engines have queueMicrotask method\nif (!queueMicrotask) {\n flush = function () {\n var parent, fn;\n if (IS_NODE && (parent = process.domain)) parent.exit();\n while (head) {\n fn = head.fn;\n head = head.next;\n try {\n fn();\n } catch (error) {\n if (head) notify();\n else last = undefined;\n throw error;\n }\n } last = undefined;\n if (parent) parent.enter();\n };\n\n // browsers with MutationObserver, except iOS - https://github.com/zloirock/core-js/issues/339\n // also except WebOS Webkit https://github.com/zloirock/core-js/issues/898\n if (!IS_IOS && !IS_NODE && !IS_WEBOS_WEBKIT && MutationObserver && document) {\n toggle = true;\n node = document.createTextNode('');\n new MutationObserver(flush).observe(node, { characterData: true });\n notify = function () {\n node.data = toggle = !toggle;\n };\n // environments with maybe non-completely correct, but existent Promise\n } else if (!IS_IOS_PEBBLE && Promise && Promise.resolve) {\n // Promise.resolve without an argument throws an error in LG WebOS 2\n promise = Promise.resolve(undefined);\n // workaround of WebKit ~ iOS Safari 10.1 bug\n promise.constructor = Promise;\n then = bind(promise.then, promise);\n notify = function () {\n then(flush);\n };\n // Node.js without promises\n } else if (IS_NODE) {\n notify = function () {\n process.nextTick(flush);\n };\n // for other environments - macrotask based on:\n // - setImmediate\n // - MessageChannel\n // - window.postMessage\n // - onreadystatechange\n // - setTimeout\n } else {\n // strange IE + webpack dev server bug - use .bind(global)\n macrotask = bind(macrotask, global);\n notify = function () {\n macrotask(flush);\n };\n }\n}\n\nmodule.exports = queueMicrotask || function (fn) {\n var task = { fn: fn, next: undefined };\n if (last) last.next = task;\n if (!head) {\n head = task;\n notify();\n } last = task;\n};\n","var NATIVE_SYMBOL = require('../internals/native-symbol');\n\n/* eslint-disable es-x/no-symbol -- safe */\nmodule.exports = NATIVE_SYMBOL && !!Symbol['for'] && !!Symbol.keyFor;\n","/* eslint-disable es-x/no-symbol -- required for testing */\nvar V8_VERSION = require('../internals/engine-v8-version');\nvar fails = require('../internals/fails');\n\n// eslint-disable-next-line es-x/no-object-getownpropertysymbols -- required for testing\nmodule.exports = !!Object.getOwnPropertySymbols && !fails(function () {\n var symbol = Symbol();\n // Chrome 38 Symbol has incorrect toString conversion\n // `get-own-property-symbols` polyfill symbols converted to object are not Symbol instances\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","var fails = require('../internals/fails');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_PURE = require('../internals/is-pure');\n\nvar ITERATOR = wellKnownSymbol('iterator');\n\nmodule.exports = !fails(function () {\n // eslint-disable-next-line unicorn/relative-url-style -- required for testing\n var url = new URL('b?a=1&b=2&c=3', 'http://a');\n var searchParams = url.searchParams;\n var result = '';\n url.pathname = 'c%20d';\n searchParams.forEach(function (value, key) {\n searchParams['delete']('b');\n result += key + value;\n });\n return (IS_PURE && !url.toJSON)\n || !searchParams.sort\n || url.href !== 'http://a/c%20d?a=1&c=3'\n || searchParams.get('c') !== '3'\n || String(new URLSearchParams('?a=1')) !== 'a=1'\n || !searchParams[ITERATOR]\n // throws in Edge\n || new URL('https://a@b').username !== 'a'\n || new URLSearchParams(new URLSearchParams('a=b')).get('a') !== 'b'\n // not punycoded in Edge\n || new URL('http://тест').host !== 'xn--e1aybc'\n // not escaped in Chrome 62-\n || new URL('http://a#б').hash !== '#%D0%B1'\n // fails in Chrome 66-\n || result !== 'a1c3'\n // throws in Safari\n || new URL('http://x', undefined).host !== 'x';\n});\n","var global = require('../internals/global');\nvar isCallable = require('../internals/is-callable');\nvar inspectSource = require('../internals/inspect-source');\n\nvar WeakMap = global.WeakMap;\n\nmodule.exports = isCallable(WeakMap) && /native code/.test(inspectSource(WeakMap));\n","'use strict';\nvar aCallable = require('../internals/a-callable');\n\nvar PromiseCapability = function (C) {\n var resolve, reject;\n this.promise = new C(function ($$resolve, $$reject) {\n if (resolve !== undefined || reject !== undefined) throw TypeError('Bad Promise constructor');\n resolve = $$resolve;\n reject = $$reject;\n });\n this.resolve = aCallable(resolve);\n this.reject = aCallable(reject);\n};\n\n// `NewPromiseCapability` abstract operation\n// https://tc39.es/ecma262/#sec-newpromisecapability\nmodule.exports.f = function (C) {\n return new PromiseCapability(C);\n};\n","var isRegExp = require('../internals/is-regexp');\n\nvar $TypeError = TypeError;\n\nmodule.exports = function (it) {\n if (isRegExp(it)) {\n throw $TypeError(\"The method doesn't accept regular expressions\");\n } return it;\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar call = require('../internals/function-call');\nvar fails = require('../internals/fails');\nvar objectKeys = require('../internals/object-keys');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar toObject = require('../internals/to-object');\nvar IndexedObject = require('../internals/indexed-object');\n\n// eslint-disable-next-line es-x/no-object-assign -- safe\nvar $assign = Object.assign;\n// eslint-disable-next-line es-x/no-object-defineproperty -- required for testing\nvar defineProperty = Object.defineProperty;\nvar concat = uncurryThis([].concat);\n\n// `Object.assign` method\n// https://tc39.es/ecma262/#sec-object.assign\nmodule.exports = !$assign || fails(function () {\n // should have correct order of operations (Edge bug)\n if (DESCRIPTORS && $assign({ b: 1 }, $assign(defineProperty({}, 'a', {\n enumerable: true,\n get: function () {\n defineProperty(this, 'b', {\n value: 3,\n enumerable: false\n });\n }\n }), { b: 2 })).b !== 1) return true;\n // should work with symbols and should have deterministic property order (V8 bug)\n var A = {};\n var B = {};\n // eslint-disable-next-line es-x/no-symbol -- safe\n var symbol = Symbol();\n var alphabet = 'abcdefghijklmnopqrst';\n A[symbol] = 7;\n alphabet.split('').forEach(function (chr) { B[chr] = chr; });\n return $assign({}, A)[symbol] != 7 || objectKeys($assign({}, B)).join('') != alphabet;\n}) ? function assign(target, source) { // eslint-disable-line no-unused-vars -- required for `.length`\n var T = toObject(target);\n var argumentsLength = arguments.length;\n var index = 1;\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n var propertyIsEnumerable = propertyIsEnumerableModule.f;\n while (argumentsLength > index) {\n var S = IndexedObject(arguments[index++]);\n var keys = getOwnPropertySymbols ? concat(objectKeys(S), getOwnPropertySymbols(S)) : objectKeys(S);\n var length = keys.length;\n var j = 0;\n var key;\n while (length > j) {\n key = keys[j++];\n if (!DESCRIPTORS || call(propertyIsEnumerable, S, key)) T[key] = S[key];\n }\n } return T;\n} : $assign;\n","/* global ActiveXObject -- old IE, WSH */\nvar anObject = require('../internals/an-object');\nvar definePropertiesModule = require('../internals/object-define-properties');\nvar enumBugKeys = require('../internals/enum-bug-keys');\nvar hiddenKeys = require('../internals/hidden-keys');\nvar html = require('../internals/html');\nvar documentCreateElement = require('../internals/document-create-element');\nvar sharedKey = require('../internals/shared-key');\n\nvar GT = '>';\nvar LT = '<';\nvar PROTOTYPE = 'prototype';\nvar SCRIPT = 'script';\nvar IE_PROTO = sharedKey('IE_PROTO');\n\nvar EmptyConstructor = function () { /* empty */ };\n\nvar scriptTag = function (content) {\n return LT + SCRIPT + GT + content + LT + '/' + SCRIPT + GT;\n};\n\n// Create object with fake `null` prototype: use ActiveX Object with cleared prototype\nvar NullProtoObjectViaActiveX = function (activeXDocument) {\n activeXDocument.write(scriptTag(''));\n activeXDocument.close();\n var temp = activeXDocument.parentWindow.Object;\n activeXDocument = null; // avoid memory leak\n return temp;\n};\n\n// Create object with fake `null` prototype: use iframe Object with cleared prototype\nvar NullProtoObjectViaIFrame = function () {\n // Thrash, waste and sodomy: IE GC bug\n var iframe = documentCreateElement('iframe');\n var JS = 'java' + SCRIPT + ':';\n var iframeDocument;\n iframe.style.display = 'none';\n html.appendChild(iframe);\n // https://github.com/zloirock/core-js/issues/475\n iframe.src = String(JS);\n iframeDocument = iframe.contentWindow.document;\n iframeDocument.open();\n iframeDocument.write(scriptTag('document.F=Object'));\n iframeDocument.close();\n return iframeDocument.F;\n};\n\n// Check for document.domain and active x support\n// No need to use active x approach when document.domain is not set\n// see https://github.com/es-shims/es5-shim/issues/150\n// variation of https://github.com/kitcambridge/es5-shim/commit/4f738ac066346\n// avoid IE GC bug\nvar activeXDocument;\nvar NullProtoObject = function () {\n try {\n activeXDocument = new ActiveXObject('htmlfile');\n } catch (error) { /* ignore */ }\n NullProtoObject = typeof document != 'undefined'\n ? document.domain && activeXDocument\n ? NullProtoObjectViaActiveX(activeXDocument) // old IE\n : NullProtoObjectViaIFrame()\n : NullProtoObjectViaActiveX(activeXDocument); // WSH\n var length = enumBugKeys.length;\n while (length--) delete NullProtoObject[PROTOTYPE][enumBugKeys[length]];\n return NullProtoObject();\n};\n\nhiddenKeys[IE_PROTO] = true;\n\n// `Object.create` method\n// https://tc39.es/ecma262/#sec-object.create\n// eslint-disable-next-line es-x/no-object-create -- safe\nmodule.exports = Object.create || function create(O, Properties) {\n var result;\n if (O !== null) {\n EmptyConstructor[PROTOTYPE] = anObject(O);\n result = new EmptyConstructor();\n EmptyConstructor[PROTOTYPE] = null;\n // add \"__proto__\" for Object.getPrototypeOf polyfill\n result[IE_PROTO] = O;\n } else result = NullProtoObject();\n return Properties === undefined ? result : definePropertiesModule.f(result, Properties);\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar V8_PROTOTYPE_DEFINE_BUG = require('../internals/v8-prototype-define-bug');\nvar definePropertyModule = require('../internals/object-define-property');\nvar anObject = require('../internals/an-object');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar objectKeys = require('../internals/object-keys');\n\n// `Object.defineProperties` method\n// https://tc39.es/ecma262/#sec-object.defineproperties\n// eslint-disable-next-line es-x/no-object-defineproperties -- safe\nexports.f = DESCRIPTORS && !V8_PROTOTYPE_DEFINE_BUG ? Object.defineProperties : function defineProperties(O, Properties) {\n anObject(O);\n var props = toIndexedObject(Properties);\n var keys = objectKeys(Properties);\n var length = keys.length;\n var index = 0;\n var key;\n while (length > index) definePropertyModule.f(O, key = keys[index++], props[key]);\n return O;\n};\n","var 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-x/no-object-defineproperty -- safe\nvar $defineProperty = Object.defineProperty;\n// eslint-disable-next-line es-x/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 $TypeError('Accessors not supported');\n if ('value' in Attributes) O[P] = Attributes.value;\n return O;\n};\n","var 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-x/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","/* eslint-disable es-x/no-object-getownpropertynames -- safe */\nvar classof = require('../internals/classof-raw');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar $getOwnPropertyNames = require('../internals/object-get-own-property-names').f;\nvar arraySlice = require('../internals/array-slice-simple');\n\nvar windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames\n ? Object.getOwnPropertyNames(window) : [];\n\nvar getWindowNames = function (it) {\n try {\n return $getOwnPropertyNames(it);\n } catch (error) {\n return arraySlice(windowNames);\n }\n};\n\n// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window\nmodule.exports.f = function getOwnPropertyNames(it) {\n return windowNames && classof(it) == 'Window'\n ? getWindowNames(it)\n : $getOwnPropertyNames(toIndexedObject(it));\n};\n","var 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-x/no-object-getownpropertynames -- safe\nexports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {\n return internalObjectKeys(O, hiddenKeys);\n};\n","// eslint-disable-next-line es-x/no-object-getownpropertysymbols -- safe\nexports.f = Object.getOwnPropertySymbols;\n","var 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-x/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","var uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = uncurryThis({}.isPrototypeOf);\n","var 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","var internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\n// `Object.keys` method\n// https://tc39.es/ecma262/#sec-object.keys\n// eslint-disable-next-line es-x/no-object-keys -- safe\nmodule.exports = Object.keys || function keys(O) {\n return internalObjectKeys(O, enumBugKeys);\n};\n","'use strict';\nvar $propertyIsEnumerable = {}.propertyIsEnumerable;\n// eslint-disable-next-line es-x/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","/* eslint-disable no-proto -- safe */\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar anObject = require('../internals/an-object');\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-x/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 // eslint-disable-next-line es-x/no-object-getownpropertydescriptor -- safe\n setter = uncurryThis(Object.getOwnPropertyDescriptor(Object.prototype, '__proto__').set);\n setter(test, []);\n CORRECT_SETTER = test instanceof Array;\n } catch (error) { /* empty */ }\n return function setPrototypeOf(O, proto) {\n anObject(O);\n aPossiblePrototype(proto);\n if (CORRECT_SETTER) setter(O, proto);\n else O.__proto__ = proto;\n return O;\n };\n}() : undefined);\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar classof = require('../internals/classof');\n\n// `Object.prototype.toString` method implementation\n// https://tc39.es/ecma262/#sec-object.prototype.tostring\nmodule.exports = TO_STRING_TAG_SUPPORT ? {}.toString : function toString() {\n return '[object ' + classof(this) + ']';\n};\n","var 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 $TypeError(\"Can't convert object to primitive value\");\n};\n","var 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","var global = require('../internals/global');\n\nmodule.exports = global;\n","module.exports = function (exec) {\n try {\n return { error: false, value: exec() };\n } catch (error) {\n return { error: true, value: error };\n }\n};\n","var global = require('../internals/global');\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar isCallable = require('../internals/is-callable');\nvar isForced = require('../internals/is-forced');\nvar inspectSource = require('../internals/inspect-source');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_BROWSER = require('../internals/engine-is-browser');\nvar IS_PURE = require('../internals/is-pure');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;\nvar SPECIES = wellKnownSymbol('species');\nvar SUBCLASSING = false;\nvar NATIVE_PROMISE_REJECTION_EVENT = isCallable(global.PromiseRejectionEvent);\n\nvar FORCED_PROMISE_CONSTRUCTOR = isForced('Promise', function () {\n var PROMISE_CONSTRUCTOR_SOURCE = inspectSource(NativePromiseConstructor);\n var GLOBAL_CORE_JS_PROMISE = PROMISE_CONSTRUCTOR_SOURCE !== String(NativePromiseConstructor);\n // V8 6.6 (Node 10 and Chrome 66) have a bug with resolving custom thenables\n // https://bugs.chromium.org/p/chromium/issues/detail?id=830565\n // We can't detect it synchronously, so just check versions\n if (!GLOBAL_CORE_JS_PROMISE && V8_VERSION === 66) return true;\n // We need Promise#{ catch, finally } in the pure version for preventing prototype pollution\n if (IS_PURE && !(NativePromisePrototype['catch'] && NativePromisePrototype['finally'])) return true;\n // We can't use @@species feature detection in V8 since it causes\n // deoptimization and performance degradation\n // https://github.com/zloirock/core-js/issues/679\n if (V8_VERSION >= 51 && /native code/.test(PROMISE_CONSTRUCTOR_SOURCE)) return false;\n // Detect correctness of subclassing with @@species support\n var promise = new NativePromiseConstructor(function (resolve) { resolve(1); });\n var FakePromise = function (exec) {\n exec(function () { /* empty */ }, function () { /* empty */ });\n };\n var constructor = promise.constructor = {};\n constructor[SPECIES] = FakePromise;\n SUBCLASSING = promise.then(function () { /* empty */ }) instanceof FakePromise;\n if (!SUBCLASSING) return true;\n // Unhandled rejections tracking support, NodeJS Promise without it fails @@species test\n return !GLOBAL_CORE_JS_PROMISE && IS_BROWSER && !NATIVE_PROMISE_REJECTION_EVENT;\n});\n\nmodule.exports = {\n CONSTRUCTOR: FORCED_PROMISE_CONSTRUCTOR,\n REJECTION_EVENT: NATIVE_PROMISE_REJECTION_EVENT,\n SUBCLASSING: SUBCLASSING\n};\n","var global = require('../internals/global');\n\nmodule.exports = global.Promise;\n","var anObject = require('../internals/an-object');\nvar isObject = require('../internals/is-object');\nvar newPromiseCapability = require('../internals/new-promise-capability');\n\nmodule.exports = function (C, x) {\n anObject(C);\n if (isObject(x) && x.constructor === C) return x;\n var promiseCapability = newPromiseCapability.f(C);\n var resolve = promiseCapability.resolve;\n resolve(x);\n return promiseCapability.promise;\n};\n","var NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\n\nmodule.exports = FORCED_PROMISE_CONSTRUCTOR || !checkCorrectnessOfIteration(function (iterable) {\n NativePromiseConstructor.all(iterable).then(undefined, function () { /* empty */ });\n});\n","var defineProperty = require('../internals/object-define-property').f;\n\nmodule.exports = function (Target, Source, key) {\n key in Target || defineProperty(Target, key, {\n configurable: true,\n get: function () { return Source[key]; },\n set: function (it) { Source[key] = it; }\n });\n};\n","var Queue = function () {\n this.head = null;\n this.tail = null;\n};\n\nQueue.prototype = {\n add: function (item) {\n var entry = { item: item, next: null };\n if (this.head) this.tail.next = entry;\n else this.head = entry;\n this.tail = entry;\n },\n get: function () {\n var entry = this.head;\n if (entry) {\n this.head = entry.next;\n if (this.tail === entry) this.tail = null;\n return entry.item;\n }\n }\n};\n\nmodule.exports = Queue;\n","var call = require('../internals/function-call');\nvar anObject = require('../internals/an-object');\nvar isCallable = require('../internals/is-callable');\nvar classof = require('../internals/classof-raw');\nvar regexpExec = require('../internals/regexp-exec');\n\nvar $TypeError = TypeError;\n\n// `RegExpExec` abstract operation\n// https://tc39.es/ecma262/#sec-regexpexec\nmodule.exports = function (R, S) {\n var exec = R.exec;\n if (isCallable(exec)) {\n var result = call(exec, R, S);\n if (result !== null) anObject(result);\n return result;\n }\n if (classof(R) === 'RegExp') return call(regexpExec, R, S);\n throw $TypeError('RegExp#exec called on incompatible receiver');\n};\n","'use strict';\n/* eslint-disable regexp/no-empty-capturing-group, regexp/no-empty-group, regexp/no-lazy-ends -- testing */\n/* eslint-disable regexp/no-useless-quantifier -- testing */\nvar call = require('../internals/function-call');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar toString = require('../internals/to-string');\nvar regexpFlags = require('../internals/regexp-flags');\nvar stickyHelpers = require('../internals/regexp-sticky-helpers');\nvar shared = require('../internals/shared');\nvar create = require('../internals/object-create');\nvar getInternalState = require('../internals/internal-state').get;\nvar UNSUPPORTED_DOT_ALL = require('../internals/regexp-unsupported-dot-all');\nvar UNSUPPORTED_NCG = require('../internals/regexp-unsupported-ncg');\n\nvar nativeReplace = shared('native-string-replace', String.prototype.replace);\nvar nativeExec = RegExp.prototype.exec;\nvar patchedExec = nativeExec;\nvar charAt = uncurryThis(''.charAt);\nvar indexOf = uncurryThis(''.indexOf);\nvar replace = uncurryThis(''.replace);\nvar stringSlice = uncurryThis(''.slice);\n\nvar UPDATES_LAST_INDEX_WRONG = (function () {\n var re1 = /a/;\n var re2 = /b*/g;\n call(nativeExec, re1, 'a');\n call(nativeExec, re2, 'a');\n return re1.lastIndex !== 0 || re2.lastIndex !== 0;\n})();\n\nvar UNSUPPORTED_Y = stickyHelpers.BROKEN_CARET;\n\n// nonparticipating capturing group, copied from es5-shim's String#split patch.\nvar NPCG_INCLUDED = /()??/.exec('')[1] !== undefined;\n\nvar PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED || UNSUPPORTED_Y || UNSUPPORTED_DOT_ALL || UNSUPPORTED_NCG;\n\nif (PATCH) {\n patchedExec = function exec(string) {\n var re = this;\n var state = getInternalState(re);\n var str = toString(string);\n var raw = state.raw;\n var result, reCopy, lastIndex, match, i, object, group;\n\n if (raw) {\n raw.lastIndex = re.lastIndex;\n result = call(patchedExec, raw, str);\n re.lastIndex = raw.lastIndex;\n return result;\n }\n\n var groups = state.groups;\n var sticky = UNSUPPORTED_Y && re.sticky;\n var flags = call(regexpFlags, re);\n var source = re.source;\n var charsAdded = 0;\n var strCopy = str;\n\n if (sticky) {\n flags = replace(flags, 'y', '');\n if (indexOf(flags, 'g') === -1) {\n flags += 'g';\n }\n\n strCopy = stringSlice(str, re.lastIndex);\n // Support anchored sticky behavior.\n if (re.lastIndex > 0 && (!re.multiline || re.multiline && charAt(str, re.lastIndex - 1) !== '\\n')) {\n source = '(?: ' + source + ')';\n strCopy = ' ' + strCopy;\n charsAdded++;\n }\n // ^(? + rx + ) is needed, in combination with some str slicing, to\n // simulate the 'y' flag.\n reCopy = new RegExp('^(?:' + source + ')', flags);\n }\n\n if (NPCG_INCLUDED) {\n reCopy = new RegExp('^' + source + '$(?!\\\\s)', flags);\n }\n if (UPDATES_LAST_INDEX_WRONG) lastIndex = re.lastIndex;\n\n match = call(nativeExec, sticky ? reCopy : re, strCopy);\n\n if (sticky) {\n if (match) {\n match.input = stringSlice(match.input, charsAdded);\n match[0] = stringSlice(match[0], charsAdded);\n match.index = re.lastIndex;\n re.lastIndex += match[0].length;\n } else re.lastIndex = 0;\n } else if (UPDATES_LAST_INDEX_WRONG && match) {\n re.lastIndex = re.global ? match.index + match[0].length : lastIndex;\n }\n if (NPCG_INCLUDED && match && match.length > 1) {\n // Fix browsers whose `exec` methods don't consistently return `undefined`\n // for NPCG, like IE8. NOTE: This doesn't work for /(.?)?/\n call(nativeReplace, match[0], reCopy, function () {\n for (i = 1; i < arguments.length - 2; i++) {\n if (arguments[i] === undefined) match[i] = undefined;\n }\n });\n }\n\n if (match && groups) {\n match.groups = object = create(null);\n for (i = 0; i < groups.length; i++) {\n group = groups[i];\n object[group[0]] = match[group[1]];\n }\n }\n\n return match;\n };\n}\n\nmodule.exports = patchedExec;\n","'use strict';\nvar anObject = require('../internals/an-object');\n\n// `RegExp.prototype.flags` getter implementation\n// https://tc39.es/ecma262/#sec-get-regexp.prototype.flags\nmodule.exports = function () {\n var that = anObject(this);\n var result = '';\n if (that.hasIndices) result += 'd';\n if (that.global) result += 'g';\n if (that.ignoreCase) result += 'i';\n if (that.multiline) result += 'm';\n if (that.dotAll) result += 's';\n if (that.unicode) result += 'u';\n if (that.unicodeSets) result += 'v';\n if (that.sticky) result += 'y';\n return result;\n};\n","var call = require('../internals/function-call');\nvar hasOwn = require('../internals/has-own-property');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar regExpFlags = require('../internals/regexp-flags');\n\nvar RegExpPrototype = RegExp.prototype;\n\nmodule.exports = function (R) {\n var flags = R.flags;\n return flags === undefined && !('flags' in RegExpPrototype) && !hasOwn(R, 'flags') && isPrototypeOf(RegExpPrototype, R)\n ? call(regExpFlags, R) : flags;\n};\n","var fails = require('../internals/fails');\nvar global = require('../internals/global');\n\n// babel-minify and Closure Compiler transpiles RegExp('a', 'y') -> /a/y and it causes SyntaxError\nvar $RegExp = global.RegExp;\n\nvar UNSUPPORTED_Y = fails(function () {\n var re = $RegExp('a', 'y');\n re.lastIndex = 2;\n return re.exec('abcd') != null;\n});\n\n// UC Browser bug\n// https://github.com/zloirock/core-js/issues/1008\nvar MISSED_STICKY = UNSUPPORTED_Y || fails(function () {\n return !$RegExp('a', 'y').sticky;\n});\n\nvar BROKEN_CARET = UNSUPPORTED_Y || fails(function () {\n // https://bugzilla.mozilla.org/show_bug.cgi?id=773687\n var re = $RegExp('^r', 'gy');\n re.lastIndex = 2;\n return re.exec('str') != null;\n});\n\nmodule.exports = {\n BROKEN_CARET: BROKEN_CARET,\n MISSED_STICKY: MISSED_STICKY,\n UNSUPPORTED_Y: UNSUPPORTED_Y\n};\n","var fails = require('../internals/fails');\nvar global = require('../internals/global');\n\n// babel-minify and Closure Compiler transpiles RegExp('.', 's') -> /./s and it causes SyntaxError\nvar $RegExp = global.RegExp;\n\nmodule.exports = fails(function () {\n var re = $RegExp('.', 's');\n return !(re.dotAll && re.exec('\\n') && re.flags === 's');\n});\n","var fails = require('../internals/fails');\nvar global = require('../internals/global');\n\n// babel-minify and Closure Compiler transpiles RegExp('(?b)', 'g') -> /(?b)/g and it causes SyntaxError\nvar $RegExp = global.RegExp;\n\nmodule.exports = fails(function () {\n var re = $RegExp('(?b)', 'g');\n return re.exec('b').groups.a !== 'b' ||\n 'b'.replace(re, '$c') !== 'bc';\n});\n","var $TypeError = TypeError;\n\n// `RequireObjectCoercible` abstract operation\n// https://tc39.es/ecma262/#sec-requireobjectcoercible\nmodule.exports = function (it) {\n if (it == undefined) throw $TypeError(\"Can't call method on \" + it);\n return it;\n};\n","// `SameValue` abstract operation\n// https://tc39.es/ecma262/#sec-samevalue\n// eslint-disable-next-line es-x/no-object-is -- safe\nmodule.exports = Object.is || function is(x, y) {\n // eslint-disable-next-line no-self-compare -- NaN check\n return x === y ? x !== 0 || 1 / x === 1 / y : x != x && y != y;\n};\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar definePropertyModule = require('../internals/object-define-property');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar DESCRIPTORS = require('../internals/descriptors');\n\nvar SPECIES = wellKnownSymbol('species');\n\nmodule.exports = function (CONSTRUCTOR_NAME) {\n var Constructor = getBuiltIn(CONSTRUCTOR_NAME);\n var defineProperty = definePropertyModule.f;\n\n if (DESCRIPTORS && Constructor && !Constructor[SPECIES]) {\n defineProperty(Constructor, SPECIES, {\n configurable: true,\n get: function () { return this; }\n });\n }\n};\n","var defineProperty = require('../internals/object-define-property').f;\nvar hasOwn = require('../internals/has-own-property');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\n\nmodule.exports = function (target, TAG, STATIC) {\n if (target && !STATIC) target = target.prototype;\n if (target && !hasOwn(target, TO_STRING_TAG)) {\n defineProperty(target, TO_STRING_TAG, { configurable: true, value: TAG });\n }\n};\n","var 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","var global = require('../internals/global');\nvar defineGlobalProperty = require('../internals/define-global-property');\n\nvar SHARED = '__core-js_shared__';\nvar store = global[SHARED] || defineGlobalProperty(SHARED, {});\n\nmodule.exports = store;\n","var IS_PURE = require('../internals/is-pure');\nvar store = require('../internals/shared-store');\n\n(module.exports = function (key, value) {\n return store[key] || (store[key] = value !== undefined ? value : {});\n})('versions', []).push({\n version: '3.23.4',\n mode: IS_PURE ? 'pure' : 'global',\n copyright: '© 2014-2022 Denis Pushkarev (zloirock.ru)',\n license: 'https://github.com/zloirock/core-js/blob/v3.23.4/LICENSE',\n source: 'https://github.com/zloirock/core-js'\n});\n","var anObject = require('../internals/an-object');\nvar aConstructor = require('../internals/a-constructor');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar SPECIES = wellKnownSymbol('species');\n\n// `SpeciesConstructor` abstract operation\n// https://tc39.es/ecma262/#sec-speciesconstructor\nmodule.exports = function (O, defaultConstructor) {\n var C = anObject(O).constructor;\n var S;\n return C === undefined || (S = anObject(C)[SPECIES]) == undefined ? defaultConstructor : aConstructor(S);\n};\n","var fails = require('../internals/fails');\n\n// check the existence of a method, lowercase\n// of a tag and escaping quotes in arguments\nmodule.exports = function (METHOD_NAME) {\n return fails(function () {\n var test = ''[METHOD_NAME]('\"');\n return test !== test.toLowerCase() || test.split('\"').length > 3;\n });\n};\n","var uncurryThis = require('../internals/function-uncurry-this');\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\nvar toString = require('../internals/to-string');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nvar charAt = uncurryThis(''.charAt);\nvar charCodeAt = uncurryThis(''.charCodeAt);\nvar stringSlice = uncurryThis(''.slice);\n\nvar createMethod = function (CONVERT_TO_STRING) {\n return function ($this, pos) {\n var S = toString(requireObjectCoercible($this));\n var position = toIntegerOrInfinity(pos);\n var size = S.length;\n var first, second;\n if (position < 0 || position >= size) return CONVERT_TO_STRING ? '' : undefined;\n first = charCodeAt(S, position);\n return first < 0xD800 || first > 0xDBFF || position + 1 === size\n || (second = charCodeAt(S, position + 1)) < 0xDC00 || second > 0xDFFF\n ? CONVERT_TO_STRING\n ? charAt(S, position)\n : first\n : CONVERT_TO_STRING\n ? stringSlice(S, position, position + 2)\n : (first - 0xD800 << 10) + (second - 0xDC00) + 0x10000;\n };\n};\n\nmodule.exports = {\n // `String.prototype.codePointAt` method\n // https://tc39.es/ecma262/#sec-string.prototype.codepointat\n codeAt: createMethod(false),\n // `String.prototype.at` method\n // https://github.com/mathiasbynens/String.prototype.at\n charAt: createMethod(true)\n};\n","'use strict';\n// based on https://github.com/bestiejs/punycode.js/blob/master/punycode.js\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nvar maxInt = 2147483647; // aka. 0x7FFFFFFF or 2^31-1\nvar base = 36;\nvar tMin = 1;\nvar tMax = 26;\nvar skew = 38;\nvar damp = 700;\nvar initialBias = 72;\nvar initialN = 128; // 0x80\nvar delimiter = '-'; // '\\x2D'\nvar regexNonASCII = /[^\\0-\\u007E]/; // non-ASCII chars\nvar regexSeparators = /[.\\u3002\\uFF0E\\uFF61]/g; // RFC 3490 separators\nvar OVERFLOW_ERROR = 'Overflow: input needs wider integers to process';\nvar baseMinusTMin = base - tMin;\n\nvar $RangeError = RangeError;\nvar exec = uncurryThis(regexSeparators.exec);\nvar floor = Math.floor;\nvar fromCharCode = String.fromCharCode;\nvar charCodeAt = uncurryThis(''.charCodeAt);\nvar join = uncurryThis([].join);\nvar push = uncurryThis([].push);\nvar replace = uncurryThis(''.replace);\nvar split = uncurryThis(''.split);\nvar toLowerCase = uncurryThis(''.toLowerCase);\n\n/**\n * Creates an array containing the numeric code points of each Unicode\n * character in the string. While JavaScript uses UCS-2 internally,\n * this function will convert a pair of surrogate halves (each of which\n * UCS-2 exposes as separate characters) into a single code point,\n * matching UTF-16.\n */\nvar ucs2decode = function (string) {\n var output = [];\n var counter = 0;\n var length = string.length;\n while (counter < length) {\n var value = charCodeAt(string, counter++);\n if (value >= 0xD800 && value <= 0xDBFF && counter < length) {\n // It's a high surrogate, and there is a next character.\n var extra = charCodeAt(string, counter++);\n if ((extra & 0xFC00) == 0xDC00) { // Low surrogate.\n push(output, ((value & 0x3FF) << 10) + (extra & 0x3FF) + 0x10000);\n } else {\n // It's an unmatched surrogate; only append this code unit, in case the\n // next code unit is the high surrogate of a surrogate pair.\n push(output, value);\n counter--;\n }\n } else {\n push(output, value);\n }\n }\n return output;\n};\n\n/**\n * Converts a digit/integer into a basic code point.\n */\nvar digitToBasic = function (digit) {\n // 0..25 map to ASCII a..z or A..Z\n // 26..35 map to ASCII 0..9\n return digit + 22 + 75 * (digit < 26);\n};\n\n/**\n * Bias adaptation function as per section 3.4 of RFC 3492.\n * https://tools.ietf.org/html/rfc3492#section-3.4\n */\nvar adapt = function (delta, numPoints, firstTime) {\n var k = 0;\n delta = firstTime ? floor(delta / damp) : delta >> 1;\n delta += floor(delta / numPoints);\n while (delta > baseMinusTMin * tMax >> 1) {\n delta = floor(delta / baseMinusTMin);\n k += base;\n }\n return floor(k + (baseMinusTMin + 1) * delta / (delta + skew));\n};\n\n/**\n * Converts a string of Unicode symbols (e.g. a domain name label) to a\n * Punycode string of ASCII-only symbols.\n */\nvar encode = function (input) {\n var output = [];\n\n // Convert the input in UCS-2 to an array of Unicode code points.\n input = ucs2decode(input);\n\n // Cache the length.\n var inputLength = input.length;\n\n // Initialize the state.\n var n = initialN;\n var delta = 0;\n var bias = initialBias;\n var i, currentValue;\n\n // Handle the basic code points.\n for (i = 0; i < input.length; i++) {\n currentValue = input[i];\n if (currentValue < 0x80) {\n push(output, fromCharCode(currentValue));\n }\n }\n\n var basicLength = output.length; // number of basic code points.\n var handledCPCount = basicLength; // number of code points that have been handled;\n\n // Finish the basic string with a delimiter unless it's empty.\n if (basicLength) {\n push(output, delimiter);\n }\n\n // Main encoding loop:\n while (handledCPCount < inputLength) {\n // All non-basic code points < n have been handled already. Find the next larger one:\n var m = maxInt;\n for (i = 0; i < input.length; i++) {\n currentValue = input[i];\n if (currentValue >= n && currentValue < m) {\n m = currentValue;\n }\n }\n\n // Increase `delta` enough to advance the decoder's state to , but guard against overflow.\n var handledCPCountPlusOne = handledCPCount + 1;\n if (m - n > floor((maxInt - delta) / handledCPCountPlusOne)) {\n throw $RangeError(OVERFLOW_ERROR);\n }\n\n delta += (m - n) * handledCPCountPlusOne;\n n = m;\n\n for (i = 0; i < input.length; i++) {\n currentValue = input[i];\n if (currentValue < n && ++delta > maxInt) {\n throw $RangeError(OVERFLOW_ERROR);\n }\n if (currentValue == n) {\n // Represent delta as a generalized variable-length integer.\n var q = delta;\n var k = base;\n while (true) {\n var t = k <= bias ? tMin : (k >= bias + tMax ? tMax : k - bias);\n if (q < t) break;\n var qMinusT = q - t;\n var baseMinusT = base - t;\n push(output, fromCharCode(digitToBasic(t + qMinusT % baseMinusT)));\n q = floor(qMinusT / baseMinusT);\n k += base;\n }\n\n push(output, fromCharCode(digitToBasic(q)));\n bias = adapt(delta, handledCPCountPlusOne, handledCPCount == basicLength);\n delta = 0;\n handledCPCount++;\n }\n }\n\n delta++;\n n++;\n }\n return join(output, '');\n};\n\nmodule.exports = function (input) {\n var encoded = [];\n var labels = split(replace(toLowerCase(input), regexSeparators, '\\u002E'), '.');\n var i, label;\n for (i = 0; i < labels.length; i++) {\n label = labels[i];\n push(encoded, exec(regexNonASCII, label) ? 'xn--' + encode(label) : label);\n }\n return join(encoded, '.');\n};\n","var PROPER_FUNCTION_NAME = require('../internals/function-name').PROPER;\nvar fails = require('../internals/fails');\nvar whitespaces = require('../internals/whitespaces');\n\nvar non = '\\u200B\\u0085\\u180E';\n\n// check that a method works with the correct list\n// of whitespaces and has a correct name\nmodule.exports = function (METHOD_NAME) {\n return fails(function () {\n return !!whitespaces[METHOD_NAME]()\n || non[METHOD_NAME]() !== non\n || (PROPER_FUNCTION_NAME && whitespaces[METHOD_NAME].name !== METHOD_NAME);\n });\n};\n","var uncurryThis = require('../internals/function-uncurry-this');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar toString = require('../internals/to-string');\nvar whitespaces = require('../internals/whitespaces');\n\nvar replace = uncurryThis(''.replace);\nvar whitespace = '[' + whitespaces + ']';\nvar ltrim = RegExp('^' + whitespace + whitespace + '*');\nvar rtrim = RegExp(whitespace + whitespace + '*$');\n\n// `String.prototype.{ trim, trimStart, trimEnd, trimLeft, trimRight }` methods implementation\nvar createMethod = function (TYPE) {\n return function ($this) {\n var string = toString(requireObjectCoercible($this));\n if (TYPE & 1) string = replace(string, ltrim, '');\n if (TYPE & 2) string = replace(string, rtrim, '');\n return string;\n };\n};\n\nmodule.exports = {\n // `String.prototype.{ trimLeft, trimStart }` methods\n // https://tc39.es/ecma262/#sec-string.prototype.trimstart\n start: createMethod(1),\n // `String.prototype.{ trimRight, trimEnd }` methods\n // https://tc39.es/ecma262/#sec-string.prototype.trimend\n end: createMethod(2),\n // `String.prototype.trim` method\n // https://tc39.es/ecma262/#sec-string.prototype.trim\n trim: createMethod(3)\n};\n","var call = require('../internals/function-call');\nvar getBuiltIn = require('../internals/get-built-in');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar defineBuiltIn = require('../internals/define-built-in');\n\nmodule.exports = function () {\n var Symbol = getBuiltIn('Symbol');\n var SymbolPrototype = Symbol && Symbol.prototype;\n var valueOf = SymbolPrototype && SymbolPrototype.valueOf;\n var TO_PRIMITIVE = wellKnownSymbol('toPrimitive');\n\n if (SymbolPrototype && !SymbolPrototype[TO_PRIMITIVE]) {\n // `Symbol.prototype[@@toPrimitive]` method\n // https://tc39.es/ecma262/#sec-symbol.prototype-@@toprimitive\n // eslint-disable-next-line no-unused-vars -- required for .length\n defineBuiltIn(SymbolPrototype, TO_PRIMITIVE, function (hint) {\n return call(valueOf, this);\n }, { arity: 1 });\n }\n};\n","var global = require('../internals/global');\nvar apply = require('../internals/function-apply');\nvar bind = require('../internals/function-bind-context');\nvar isCallable = require('../internals/is-callable');\nvar hasOwn = require('../internals/has-own-property');\nvar fails = require('../internals/fails');\nvar html = require('../internals/html');\nvar arraySlice = require('../internals/array-slice');\nvar createElement = require('../internals/document-create-element');\nvar validateArgumentsLength = require('../internals/validate-arguments-length');\nvar IS_IOS = require('../internals/engine-is-ios');\nvar IS_NODE = require('../internals/engine-is-node');\n\nvar set = global.setImmediate;\nvar clear = global.clearImmediate;\nvar process = global.process;\nvar Dispatch = global.Dispatch;\nvar Function = global.Function;\nvar MessageChannel = global.MessageChannel;\nvar String = global.String;\nvar counter = 0;\nvar queue = {};\nvar ONREADYSTATECHANGE = 'onreadystatechange';\nvar location, defer, channel, port;\n\ntry {\n // Deno throws a ReferenceError on `location` access without `--location` flag\n location = global.location;\n} catch (error) { /* empty */ }\n\nvar run = function (id) {\n if (hasOwn(queue, id)) {\n var fn = queue[id];\n delete queue[id];\n fn();\n }\n};\n\nvar runner = function (id) {\n return function () {\n run(id);\n };\n};\n\nvar listener = function (event) {\n run(event.data);\n};\n\nvar post = function (id) {\n // old engines have not location.origin\n global.postMessage(String(id), location.protocol + '//' + location.host);\n};\n\n// Node.js 0.9+ & IE10+ has setImmediate, otherwise:\nif (!set || !clear) {\n set = function setImmediate(handler) {\n validateArgumentsLength(arguments.length, 1);\n var fn = isCallable(handler) ? handler : Function(handler);\n var args = arraySlice(arguments, 1);\n queue[++counter] = function () {\n apply(fn, undefined, args);\n };\n defer(counter);\n return counter;\n };\n clear = function clearImmediate(id) {\n delete queue[id];\n };\n // Node.js 0.8-\n if (IS_NODE) {\n defer = function (id) {\n process.nextTick(runner(id));\n };\n // Sphere (JS game engine) Dispatch API\n } else if (Dispatch && Dispatch.now) {\n defer = function (id) {\n Dispatch.now(runner(id));\n };\n // Browsers with MessageChannel, includes WebWorkers\n // except iOS - https://github.com/zloirock/core-js/issues/624\n } else if (MessageChannel && !IS_IOS) {\n channel = new MessageChannel();\n port = channel.port2;\n channel.port1.onmessage = listener;\n defer = bind(port.postMessage, port);\n // Browsers with postMessage, skip WebWorkers\n // IE8 has postMessage, but it's sync & typeof its postMessage is 'object'\n } else if (\n global.addEventListener &&\n isCallable(global.postMessage) &&\n !global.importScripts &&\n location && location.protocol !== 'file:' &&\n !fails(post)\n ) {\n defer = post;\n global.addEventListener('message', listener, false);\n // IE8-\n } else if (ONREADYSTATECHANGE in createElement('script')) {\n defer = function (id) {\n html.appendChild(createElement('script'))[ONREADYSTATECHANGE] = function () {\n html.removeChild(this);\n run(id);\n };\n };\n // Rest old browsers\n } else {\n defer = function (id) {\n setTimeout(runner(id), 0);\n };\n }\n}\n\nmodule.exports = {\n set: set,\n clear: clear\n};\n","var uncurryThis = require('../internals/function-uncurry-this');\n\n// `thisNumberValue` abstract operation\n// https://tc39.es/ecma262/#sec-thisnumbervalue\nmodule.exports = uncurryThis(1.0.valueOf);\n","var 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","var 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 $TypeError(\"Can't convert number to bigint\");\n // eslint-disable-next-line es-x/no-bigint -- safe\n return BigInt(prim);\n};\n","var 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 $RangeError('Wrong length or index');\n return length;\n};\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","var 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","var 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 return argument > 0 ? min(toIntegerOrInfinity(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991\n};\n","var 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","var toPositiveInteger = require('../internals/to-positive-integer');\n\nvar $RangeError = RangeError;\n\nmodule.exports = function (it, BYTES) {\n var offset = toPositiveInteger(it);\n if (offset % BYTES) throw $RangeError('Wrong offset');\n return offset;\n};\n","var toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\n\nvar $RangeError = RangeError;\n\nmodule.exports = function (it) {\n var result = toIntegerOrInfinity(it);\n if (result < 0) throw $RangeError(\"The argument can't be less than 0\");\n return result;\n};\n","var 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 $TypeError(\"Can't convert object to primitive value\");\n }\n if (pref === undefined) pref = 'number';\n return ordinaryToPrimitive(input, pref);\n};\n","var 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","var 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","var classof = require('../internals/classof');\n\nvar $String = String;\n\nmodule.exports = function (argument) {\n if (classof(argument) === 'Symbol') throw TypeError('Cannot convert a Symbol value to a string');\n return $String(argument);\n};\n","var $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 $ = require('../internals/export');\nvar global = require('../internals/global');\nvar call = require('../internals/function-call');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar TYPED_ARRAYS_CONSTRUCTORS_REQUIRES_WRAPPERS = require('../internals/typed-array-constructors-require-wrappers');\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\nvar ArrayBufferModule = require('../internals/array-buffer');\nvar anInstance = require('../internals/an-instance');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar isIntegralNumber = require('../internals/is-integral-number');\nvar toLength = require('../internals/to-length');\nvar toIndex = require('../internals/to-index');\nvar toOffset = require('../internals/to-offset');\nvar toPropertyKey = require('../internals/to-property-key');\nvar hasOwn = require('../internals/has-own-property');\nvar classof = require('../internals/classof');\nvar isObject = require('../internals/is-object');\nvar isSymbol = require('../internals/is-symbol');\nvar create = require('../internals/object-create');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\nvar getOwnPropertyNames = require('../internals/object-get-own-property-names').f;\nvar typedArrayFrom = require('../internals/typed-array-from');\nvar forEach = require('../internals/array-iteration').forEach;\nvar setSpecies = require('../internals/set-species');\nvar definePropertyModule = require('../internals/object-define-property');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar InternalStateModule = require('../internals/internal-state');\nvar inheritIfRequired = require('../internals/inherit-if-required');\n\nvar getInternalState = InternalStateModule.get;\nvar setInternalState = InternalStateModule.set;\nvar enforceInternalState = InternalStateModule.enforce;\nvar nativeDefineProperty = definePropertyModule.f;\nvar nativeGetOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;\nvar round = Math.round;\nvar RangeError = global.RangeError;\nvar ArrayBuffer = ArrayBufferModule.ArrayBuffer;\nvar ArrayBufferPrototype = ArrayBuffer.prototype;\nvar DataView = ArrayBufferModule.DataView;\nvar NATIVE_ARRAY_BUFFER_VIEWS = ArrayBufferViewCore.NATIVE_ARRAY_BUFFER_VIEWS;\nvar TYPED_ARRAY_TAG = ArrayBufferViewCore.TYPED_ARRAY_TAG;\nvar TypedArray = ArrayBufferViewCore.TypedArray;\nvar TypedArrayPrototype = ArrayBufferViewCore.TypedArrayPrototype;\nvar aTypedArrayConstructor = ArrayBufferViewCore.aTypedArrayConstructor;\nvar isTypedArray = ArrayBufferViewCore.isTypedArray;\nvar BYTES_PER_ELEMENT = 'BYTES_PER_ELEMENT';\nvar WRONG_LENGTH = 'Wrong length';\n\nvar fromList = function (C, list) {\n aTypedArrayConstructor(C);\n var index = 0;\n var length = list.length;\n var result = new C(length);\n while (length > index) result[index] = list[index++];\n return result;\n};\n\nvar addGetter = function (it, key) {\n nativeDefineProperty(it, key, { get: function () {\n return getInternalState(this)[key];\n } });\n};\n\nvar isArrayBuffer = function (it) {\n var klass;\n return isPrototypeOf(ArrayBufferPrototype, it) || (klass = classof(it)) == 'ArrayBuffer' || klass == 'SharedArrayBuffer';\n};\n\nvar isTypedArrayIndex = function (target, key) {\n return isTypedArray(target)\n && !isSymbol(key)\n && key in target\n && isIntegralNumber(+key)\n && key >= 0;\n};\n\nvar wrappedGetOwnPropertyDescriptor = function getOwnPropertyDescriptor(target, key) {\n key = toPropertyKey(key);\n return isTypedArrayIndex(target, key)\n ? createPropertyDescriptor(2, target[key])\n : nativeGetOwnPropertyDescriptor(target, key);\n};\n\nvar wrappedDefineProperty = function defineProperty(target, key, descriptor) {\n key = toPropertyKey(key);\n if (isTypedArrayIndex(target, key)\n && isObject(descriptor)\n && hasOwn(descriptor, 'value')\n && !hasOwn(descriptor, 'get')\n && !hasOwn(descriptor, 'set')\n // TODO: add validation descriptor w/o calling accessors\n && !descriptor.configurable\n && (!hasOwn(descriptor, 'writable') || descriptor.writable)\n && (!hasOwn(descriptor, 'enumerable') || descriptor.enumerable)\n ) {\n target[key] = descriptor.value;\n return target;\n } return nativeDefineProperty(target, key, descriptor);\n};\n\nif (DESCRIPTORS) {\n if (!NATIVE_ARRAY_BUFFER_VIEWS) {\n getOwnPropertyDescriptorModule.f = wrappedGetOwnPropertyDescriptor;\n definePropertyModule.f = wrappedDefineProperty;\n addGetter(TypedArrayPrototype, 'buffer');\n addGetter(TypedArrayPrototype, 'byteOffset');\n addGetter(TypedArrayPrototype, 'byteLength');\n addGetter(TypedArrayPrototype, 'length');\n }\n\n $({ target: 'Object', stat: true, forced: !NATIVE_ARRAY_BUFFER_VIEWS }, {\n getOwnPropertyDescriptor: wrappedGetOwnPropertyDescriptor,\n defineProperty: wrappedDefineProperty\n });\n\n module.exports = function (TYPE, wrapper, CLAMPED) {\n var BYTES = TYPE.match(/\\d+$/)[0] / 8;\n var CONSTRUCTOR_NAME = TYPE + (CLAMPED ? 'Clamped' : '') + 'Array';\n var GETTER = 'get' + TYPE;\n var SETTER = 'set' + TYPE;\n var NativeTypedArrayConstructor = global[CONSTRUCTOR_NAME];\n var TypedArrayConstructor = NativeTypedArrayConstructor;\n var TypedArrayConstructorPrototype = TypedArrayConstructor && TypedArrayConstructor.prototype;\n var exported = {};\n\n var getter = function (that, index) {\n var data = getInternalState(that);\n return data.view[GETTER](index * BYTES + data.byteOffset, true);\n };\n\n var setter = function (that, index, value) {\n var data = getInternalState(that);\n if (CLAMPED) value = (value = round(value)) < 0 ? 0 : value > 0xFF ? 0xFF : value & 0xFF;\n data.view[SETTER](index * BYTES + data.byteOffset, value, true);\n };\n\n var addElement = function (that, index) {\n nativeDefineProperty(that, index, {\n get: function () {\n return getter(this, index);\n },\n set: function (value) {\n return setter(this, index, value);\n },\n enumerable: true\n });\n };\n\n if (!NATIVE_ARRAY_BUFFER_VIEWS) {\n TypedArrayConstructor = wrapper(function (that, data, offset, $length) {\n anInstance(that, TypedArrayConstructorPrototype);\n var index = 0;\n var byteOffset = 0;\n var buffer, byteLength, length;\n if (!isObject(data)) {\n length = toIndex(data);\n byteLength = length * BYTES;\n buffer = new ArrayBuffer(byteLength);\n } else if (isArrayBuffer(data)) {\n buffer = data;\n byteOffset = toOffset(offset, BYTES);\n var $len = data.byteLength;\n if ($length === undefined) {\n if ($len % BYTES) throw RangeError(WRONG_LENGTH);\n byteLength = $len - byteOffset;\n if (byteLength < 0) throw RangeError(WRONG_LENGTH);\n } else {\n byteLength = toLength($length) * BYTES;\n if (byteLength + byteOffset > $len) throw RangeError(WRONG_LENGTH);\n }\n length = byteLength / BYTES;\n } else if (isTypedArray(data)) {\n return fromList(TypedArrayConstructor, data);\n } else {\n return call(typedArrayFrom, TypedArrayConstructor, data);\n }\n setInternalState(that, {\n buffer: buffer,\n byteOffset: byteOffset,\n byteLength: byteLength,\n length: length,\n view: new DataView(buffer)\n });\n while (index < length) addElement(that, index++);\n });\n\n if (setPrototypeOf) setPrototypeOf(TypedArrayConstructor, TypedArray);\n TypedArrayConstructorPrototype = TypedArrayConstructor.prototype = create(TypedArrayPrototype);\n } else if (TYPED_ARRAYS_CONSTRUCTORS_REQUIRES_WRAPPERS) {\n TypedArrayConstructor = wrapper(function (dummy, data, typedArrayOffset, $length) {\n anInstance(dummy, TypedArrayConstructorPrototype);\n return inheritIfRequired(function () {\n if (!isObject(data)) return new NativeTypedArrayConstructor(toIndex(data));\n if (isArrayBuffer(data)) return $length !== undefined\n ? new NativeTypedArrayConstructor(data, toOffset(typedArrayOffset, BYTES), $length)\n : typedArrayOffset !== undefined\n ? new NativeTypedArrayConstructor(data, toOffset(typedArrayOffset, BYTES))\n : new NativeTypedArrayConstructor(data);\n if (isTypedArray(data)) return fromList(TypedArrayConstructor, data);\n return call(typedArrayFrom, TypedArrayConstructor, data);\n }(), dummy, TypedArrayConstructor);\n });\n\n if (setPrototypeOf) setPrototypeOf(TypedArrayConstructor, TypedArray);\n forEach(getOwnPropertyNames(NativeTypedArrayConstructor), function (key) {\n if (!(key in TypedArrayConstructor)) {\n createNonEnumerableProperty(TypedArrayConstructor, key, NativeTypedArrayConstructor[key]);\n }\n });\n TypedArrayConstructor.prototype = TypedArrayConstructorPrototype;\n }\n\n if (TypedArrayConstructorPrototype.constructor !== TypedArrayConstructor) {\n createNonEnumerableProperty(TypedArrayConstructorPrototype, 'constructor', TypedArrayConstructor);\n }\n\n enforceInternalState(TypedArrayConstructorPrototype).TypedArrayConstructor = TypedArrayConstructor;\n\n if (TYPED_ARRAY_TAG) {\n createNonEnumerableProperty(TypedArrayConstructorPrototype, TYPED_ARRAY_TAG, CONSTRUCTOR_NAME);\n }\n\n var FORCED = TypedArrayConstructor != NativeTypedArrayConstructor;\n\n exported[CONSTRUCTOR_NAME] = TypedArrayConstructor;\n\n $({ global: true, constructor: true, forced: FORCED, sham: !NATIVE_ARRAY_BUFFER_VIEWS }, exported);\n\n if (!(BYTES_PER_ELEMENT in TypedArrayConstructor)) {\n createNonEnumerableProperty(TypedArrayConstructor, BYTES_PER_ELEMENT, BYTES);\n }\n\n if (!(BYTES_PER_ELEMENT in TypedArrayConstructorPrototype)) {\n createNonEnumerableProperty(TypedArrayConstructorPrototype, BYTES_PER_ELEMENT, BYTES);\n }\n\n setSpecies(CONSTRUCTOR_NAME);\n };\n} else module.exports = function () { /* empty */ };\n","/* eslint-disable no-new -- required for testing */\nvar global = require('../internals/global');\nvar fails = require('../internals/fails');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\nvar NATIVE_ARRAY_BUFFER_VIEWS = require('../internals/array-buffer-view-core').NATIVE_ARRAY_BUFFER_VIEWS;\n\nvar ArrayBuffer = global.ArrayBuffer;\nvar Int8Array = global.Int8Array;\n\nmodule.exports = !NATIVE_ARRAY_BUFFER_VIEWS || !fails(function () {\n Int8Array(1);\n}) || !fails(function () {\n new Int8Array(-1);\n}) || !checkCorrectnessOfIteration(function (iterable) {\n new Int8Array();\n new Int8Array(null);\n new Int8Array(1.5);\n new Int8Array(iterable);\n}, true) || fails(function () {\n // Safari (11+) bug - a reason why even Safari 13 should load a typed array polyfill\n return new Int8Array(new ArrayBuffer(2), 1, undefined).length !== 1;\n});\n","var arrayFromConstructorAndList = require('../internals/array-from-constructor-and-list');\nvar typedArraySpeciesConstructor = require('../internals/typed-array-species-constructor');\n\nmodule.exports = function (instance, list) {\n return arrayFromConstructorAndList(typedArraySpeciesConstructor(instance), list);\n};\n","var bind = require('../internals/function-bind-context');\nvar call = require('../internals/function-call');\nvar aConstructor = require('../internals/a-constructor');\nvar toObject = require('../internals/to-object');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar getIterator = require('../internals/get-iterator');\nvar getIteratorMethod = require('../internals/get-iterator-method');\nvar isArrayIteratorMethod = require('../internals/is-array-iterator-method');\nvar aTypedArrayConstructor = require('../internals/array-buffer-view-core').aTypedArrayConstructor;\n\nmodule.exports = function from(source /* , mapfn, thisArg */) {\n var C = aConstructor(this);\n var O = toObject(source);\n var argumentsLength = arguments.length;\n var mapfn = argumentsLength > 1 ? arguments[1] : undefined;\n var mapping = mapfn !== undefined;\n var iteratorMethod = getIteratorMethod(O);\n var i, length, result, step, iterator, next;\n if (iteratorMethod && !isArrayIteratorMethod(iteratorMethod)) {\n iterator = getIterator(O, iteratorMethod);\n next = iterator.next;\n O = [];\n while (!(step = call(next, iterator)).done) {\n O.push(step.value);\n }\n }\n if (mapping && argumentsLength > 2) {\n mapfn = bind(mapfn, arguments[2]);\n }\n length = lengthOfArrayLike(O);\n result = new (aTypedArrayConstructor(C))(length);\n for (i = 0; length > i; i++) {\n result[i] = mapping ? mapfn(O[i], i) : O[i];\n }\n return result;\n};\n","var ArrayBufferViewCore = require('../internals/array-buffer-view-core');\nvar speciesConstructor = require('../internals/species-constructor');\n\nvar aTypedArrayConstructor = ArrayBufferViewCore.aTypedArrayConstructor;\nvar getTypedArrayConstructor = ArrayBufferViewCore.getTypedArrayConstructor;\n\n// a part of `TypedArraySpeciesCreate` abstract operation\n// https://tc39.es/ecma262/#typedarray-species-create\nmodule.exports = function (originalArray) {\n return aTypedArrayConstructor(speciesConstructor(originalArray, getTypedArrayConstructor(originalArray)));\n};\n","var 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","/* eslint-disable es-x/no-symbol -- required for testing */\nvar NATIVE_SYMBOL = require('../internals/native-symbol');\n\nmodule.exports = NATIVE_SYMBOL\n && !Symbol.sham\n && typeof Symbol.iterator == 'symbol';\n","var 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-x/no-object-defineproperty -- required for testing\n return Object.defineProperty(function () { /* empty */ }, 'prototype', {\n value: 42,\n writable: false\n }).prototype != 42;\n});\n","var $TypeError = TypeError;\n\nmodule.exports = function (passed, required) {\n if (passed < required) throw $TypeError('Not enough arguments');\n return passed;\n};\n","var wellKnownSymbol = require('../internals/well-known-symbol');\n\nexports.f = wellKnownSymbol;\n","var 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/native-symbol');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar WellKnownSymbolsStore = shared('wks');\nvar Symbol = global.Symbol;\nvar symbolFor = Symbol && Symbol['for'];\nvar createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol : Symbol && Symbol.withoutSetter || uid;\n\nmodule.exports = function (name) {\n if (!hasOwn(WellKnownSymbolsStore, name) || !(NATIVE_SYMBOL || typeof WellKnownSymbolsStore[name] == 'string')) {\n var description = 'Symbol.' + name;\n if (NATIVE_SYMBOL && hasOwn(Symbol, name)) {\n WellKnownSymbolsStore[name] = Symbol[name];\n } else if (USE_SYMBOL_AS_UID && symbolFor) {\n WellKnownSymbolsStore[name] = symbolFor(description);\n } else {\n WellKnownSymbolsStore[name] = createWellKnownSymbol(description);\n }\n } return WellKnownSymbolsStore[name];\n};\n","// a string of all valid unicode whitespaces\nmodule.exports = '\\u0009\\u000A\\u000B\\u000C\\u000D\\u0020\\u00A0\\u1680\\u2000\\u2001\\u2002' +\n '\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200A\\u202F\\u205F\\u3000\\u2028\\u2029\\uFEFF';\n","'use strict';\nvar $ = require('../internals/export');\nvar fails = require('../internals/fails');\nvar isArray = require('../internals/is-array');\nvar isObject = require('../internals/is-object');\nvar toObject = require('../internals/to-object');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar doesNotExceedSafeInteger = require('../internals/does-not-exceed-safe-integer');\nvar createProperty = require('../internals/create-property');\nvar arraySpeciesCreate = require('../internals/array-species-create');\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar IS_CONCAT_SPREADABLE = wellKnownSymbol('isConcatSpreadable');\n\n// We can't use this feature detection in V8 since it causes\n// deoptimization and serious performance degradation\n// https://github.com/zloirock/core-js/issues/679\nvar IS_CONCAT_SPREADABLE_SUPPORT = V8_VERSION >= 51 || !fails(function () {\n var array = [];\n array[IS_CONCAT_SPREADABLE] = false;\n return array.concat()[0] !== array;\n});\n\nvar SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('concat');\n\nvar isConcatSpreadable = function (O) {\n if (!isObject(O)) return false;\n var spreadable = O[IS_CONCAT_SPREADABLE];\n return spreadable !== undefined ? !!spreadable : isArray(O);\n};\n\nvar FORCED = !IS_CONCAT_SPREADABLE_SUPPORT || !SPECIES_SUPPORT;\n\n// `Array.prototype.concat` method\n// https://tc39.es/ecma262/#sec-array.prototype.concat\n// with adding support of @@isConcatSpreadable and @@species\n$({ target: 'Array', proto: true, arity: 1, forced: FORCED }, {\n // eslint-disable-next-line no-unused-vars -- required for `.length`\n concat: function concat(arg) {\n var O = toObject(this);\n var A = arraySpeciesCreate(O, 0);\n var n = 0;\n var i, k, length, len, E;\n for (i = -1, length = arguments.length; i < length; i++) {\n E = i === -1 ? O : arguments[i];\n if (isConcatSpreadable(E)) {\n len = lengthOfArrayLike(E);\n doesNotExceedSafeInteger(n + len);\n for (k = 0; k < len; k++, n++) if (k in E) createProperty(A, n, E[k]);\n } else {\n doesNotExceedSafeInteger(n + 1);\n createProperty(A, n++, E);\n }\n }\n A.length = n;\n return A;\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar $filter = require('../internals/array-iteration').filter;\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('filter');\n\n// `Array.prototype.filter` method\n// https://tc39.es/ecma262/#sec-array.prototype.filter\n// with adding support of @@species\n$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT }, {\n filter: function filter(callbackfn /* , thisArg */) {\n return $filter(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar $find = require('../internals/array-iteration').find;\nvar addToUnscopables = require('../internals/add-to-unscopables');\n\nvar FIND = 'find';\nvar SKIPS_HOLES = true;\n\n// Shouldn't skip holes\nif (FIND in []) Array(1)[FIND](function () { SKIPS_HOLES = false; });\n\n// `Array.prototype.find` method\n// https://tc39.es/ecma262/#sec-array.prototype.find\n$({ target: 'Array', proto: true, forced: SKIPS_HOLES }, {\n find: function find(callbackfn /* , that = undefined */) {\n return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables(FIND);\n","'use strict';\nvar $ = require('../internals/export');\nvar flattenIntoArray = require('../internals/flatten-into-array');\nvar toObject = require('../internals/to-object');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\nvar arraySpeciesCreate = require('../internals/array-species-create');\n\n// `Array.prototype.flat` method\n// https://tc39.es/ecma262/#sec-array.prototype.flat\n$({ target: 'Array', proto: true }, {\n flat: function flat(/* depthArg = 1 */) {\n var depthArg = arguments.length ? arguments[0] : undefined;\n var O = toObject(this);\n var sourceLen = lengthOfArrayLike(O);\n var A = arraySpeciesCreate(O, 0);\n A.length = flattenIntoArray(A, O, O, sourceLen, 0, depthArg === undefined ? 1 : toIntegerOrInfinity(depthArg));\n return A;\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar $includes = require('../internals/array-includes').includes;\nvar fails = require('../internals/fails');\nvar addToUnscopables = require('../internals/add-to-unscopables');\n\n// FF99+ bug\nvar BROKEN_ON_SPARSE = fails(function () {\n return !Array(1).includes();\n});\n\n// `Array.prototype.includes` method\n// https://tc39.es/ecma262/#sec-array.prototype.includes\n$({ target: 'Array', proto: true, forced: BROKEN_ON_SPARSE }, {\n includes: function includes(el /* , fromIndex = 0 */) {\n return $includes(this, el, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables('includes');\n","'use strict';\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar addToUnscopables = require('../internals/add-to-unscopables');\nvar Iterators = require('../internals/iterators');\nvar InternalStateModule = require('../internals/internal-state');\nvar defineProperty = require('../internals/object-define-property').f;\nvar defineIterator = require('../internals/define-iterator');\nvar IS_PURE = require('../internals/is-pure');\nvar DESCRIPTORS = require('../internals/descriptors');\n\nvar ARRAY_ITERATOR = 'Array Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(ARRAY_ITERATOR);\n\n// `Array.prototype.entries` method\n// https://tc39.es/ecma262/#sec-array.prototype.entries\n// `Array.prototype.keys` method\n// https://tc39.es/ecma262/#sec-array.prototype.keys\n// `Array.prototype.values` method\n// https://tc39.es/ecma262/#sec-array.prototype.values\n// `Array.prototype[@@iterator]` method\n// https://tc39.es/ecma262/#sec-array.prototype-@@iterator\n// `CreateArrayIterator` internal method\n// https://tc39.es/ecma262/#sec-createarrayiterator\nmodule.exports = defineIterator(Array, 'Array', function (iterated, kind) {\n setInternalState(this, {\n type: ARRAY_ITERATOR,\n target: toIndexedObject(iterated), // target\n index: 0, // next index\n kind: kind // kind\n });\n// `%ArrayIteratorPrototype%.next` method\n// https://tc39.es/ecma262/#sec-%arrayiteratorprototype%.next\n}, function () {\n var state = getInternalState(this);\n var target = state.target;\n var kind = state.kind;\n var index = state.index++;\n if (!target || index >= target.length) {\n state.target = undefined;\n return { value: undefined, done: true };\n }\n if (kind == 'keys') return { value: index, done: false };\n if (kind == 'values') return { value: target[index], done: false };\n return { value: [index, target[index]], done: false };\n}, 'values');\n\n// argumentsList[@@iterator] is %ArrayProto_values%\n// https://tc39.es/ecma262/#sec-createunmappedargumentsobject\n// https://tc39.es/ecma262/#sec-createmappedargumentsobject\nvar values = Iterators.Arguments = Iterators.Array;\n\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables('keys');\naddToUnscopables('values');\naddToUnscopables('entries');\n\n// V8 ~ Chrome 45- bug\nif (!IS_PURE && DESCRIPTORS && values.name !== 'values') try {\n defineProperty(values, 'name', { value: 'values' });\n} catch (error) { /* empty */ }\n","'use strict';\nvar $ = require('../internals/export');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar IndexedObject = require('../internals/indexed-object');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\n\nvar un$Join = uncurryThis([].join);\n\nvar ES3_STRINGS = IndexedObject != Object;\nvar STRICT_METHOD = arrayMethodIsStrict('join', ',');\n\n// `Array.prototype.join` method\n// https://tc39.es/ecma262/#sec-array.prototype.join\n$({ target: 'Array', proto: true, forced: ES3_STRINGS || !STRICT_METHOD }, {\n join: function join(separator) {\n return un$Join(toIndexedObject(this), separator === undefined ? ',' : separator);\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar $map = require('../internals/array-iteration').map;\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('map');\n\n// `Array.prototype.map` method\n// https://tc39.es/ecma262/#sec-array.prototype.map\n// with adding support of @@species\n$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT }, {\n map: function map(callbackfn /* , thisArg */) {\n return $map(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar isArray = require('../internals/is-array');\nvar isConstructor = require('../internals/is-constructor');\nvar isObject = require('../internals/is-object');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar createProperty = require('../internals/create-property');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\nvar un$Slice = require('../internals/array-slice');\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('slice');\n\nvar SPECIES = wellKnownSymbol('species');\nvar $Array = Array;\nvar max = Math.max;\n\n// `Array.prototype.slice` method\n// https://tc39.es/ecma262/#sec-array.prototype.slice\n// fallback for not array-like ES3 strings and DOM objects\n$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT }, {\n slice: function slice(start, end) {\n var O = toIndexedObject(this);\n var length = lengthOfArrayLike(O);\n var k = toAbsoluteIndex(start, length);\n var fin = toAbsoluteIndex(end === undefined ? length : end, length);\n // inline `ArraySpeciesCreate` for usage native `Array#slice` where it's possible\n var Constructor, result, n;\n if (isArray(O)) {\n Constructor = O.constructor;\n // cross-realm fallback\n if (isConstructor(Constructor) && (Constructor === $Array || isArray(Constructor.prototype))) {\n Constructor = undefined;\n } else if (isObject(Constructor)) {\n Constructor = Constructor[SPECIES];\n if (Constructor === null) Constructor = undefined;\n }\n if (Constructor === $Array || Constructor === undefined) {\n return un$Slice(O, k, fin);\n }\n }\n result = new (Constructor === undefined ? $Array : Constructor)(max(fin - k, 0));\n for (n = 0; k < fin; k++, n++) if (k in O) createProperty(result, n, O[k]);\n result.length = n;\n return result;\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar aCallable = require('../internals/a-callable');\nvar toObject = require('../internals/to-object');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar deletePropertyOrThrow = require('../internals/delete-property-or-throw');\nvar toString = require('../internals/to-string');\nvar fails = require('../internals/fails');\nvar internalSort = require('../internals/array-sort');\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\nvar FF = require('../internals/engine-ff-version');\nvar IE_OR_EDGE = require('../internals/engine-is-ie-or-edge');\nvar V8 = require('../internals/engine-v8-version');\nvar WEBKIT = require('../internals/engine-webkit-version');\n\nvar test = [];\nvar un$Sort = uncurryThis(test.sort);\nvar push = uncurryThis(test.push);\n\n// IE8-\nvar FAILS_ON_UNDEFINED = fails(function () {\n test.sort(undefined);\n});\n// V8 bug\nvar FAILS_ON_NULL = fails(function () {\n test.sort(null);\n});\n// Old WebKit\nvar STRICT_METHOD = arrayMethodIsStrict('sort');\n\nvar STABLE_SORT = !fails(function () {\n // feature detection can be too slow, so check engines versions\n if (V8) return V8 < 70;\n if (FF && FF > 3) return;\n if (IE_OR_EDGE) return true;\n if (WEBKIT) return WEBKIT < 603;\n\n var result = '';\n var code, chr, value, index;\n\n // generate an array with more 512 elements (Chakra and old V8 fails only in this case)\n for (code = 65; code < 76; code++) {\n chr = String.fromCharCode(code);\n\n switch (code) {\n case 66: case 69: case 70: case 72: value = 3; break;\n case 68: case 71: value = 4; break;\n default: value = 2;\n }\n\n for (index = 0; index < 47; index++) {\n test.push({ k: chr + index, v: value });\n }\n }\n\n test.sort(function (a, b) { return b.v - a.v; });\n\n for (index = 0; index < test.length; index++) {\n chr = test[index].k.charAt(0);\n if (result.charAt(result.length - 1) !== chr) result += chr;\n }\n\n return result !== 'DGBEFHACIJK';\n});\n\nvar FORCED = FAILS_ON_UNDEFINED || !FAILS_ON_NULL || !STRICT_METHOD || !STABLE_SORT;\n\nvar getSortCompare = function (comparefn) {\n return function (x, y) {\n if (y === undefined) return -1;\n if (x === undefined) return 1;\n if (comparefn !== undefined) return +comparefn(x, y) || 0;\n return toString(x) > toString(y) ? 1 : -1;\n };\n};\n\n// `Array.prototype.sort` method\n// https://tc39.es/ecma262/#sec-array.prototype.sort\n$({ target: 'Array', proto: true, forced: FORCED }, {\n sort: function sort(comparefn) {\n if (comparefn !== undefined) aCallable(comparefn);\n\n var array = toObject(this);\n\n if (STABLE_SORT) return comparefn === undefined ? un$Sort(array) : un$Sort(array, comparefn);\n\n var items = [];\n var arrayLength = lengthOfArrayLike(array);\n var itemsLength, index;\n\n for (index = 0; index < arrayLength; index++) {\n if (index in array) push(items, array[index]);\n }\n\n internalSort(items, getSortCompare(comparefn));\n\n itemsLength = items.length;\n index = 0;\n\n while (index < itemsLength) array[index] = items[index++];\n while (index < arrayLength) deletePropertyOrThrow(array, index++);\n\n return array;\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar toObject = require('../internals/to-object');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar doesNotExceedSafeInteger = require('../internals/does-not-exceed-safe-integer');\nvar arraySpeciesCreate = require('../internals/array-species-create');\nvar createProperty = require('../internals/create-property');\nvar deletePropertyOrThrow = require('../internals/delete-property-or-throw');\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('splice');\n\nvar max = Math.max;\nvar min = Math.min;\n\n// `Array.prototype.splice` method\n// https://tc39.es/ecma262/#sec-array.prototype.splice\n// with adding support of @@species\n$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT }, {\n splice: function splice(start, deleteCount /* , ...items */) {\n var O = toObject(this);\n var len = lengthOfArrayLike(O);\n var actualStart = toAbsoluteIndex(start, len);\n var argumentsLength = arguments.length;\n var insertCount, actualDeleteCount, A, k, from, to;\n if (argumentsLength === 0) {\n insertCount = actualDeleteCount = 0;\n } else if (argumentsLength === 1) {\n insertCount = 0;\n actualDeleteCount = len - actualStart;\n } else {\n insertCount = argumentsLength - 2;\n actualDeleteCount = min(max(toIntegerOrInfinity(deleteCount), 0), len - actualStart);\n }\n doesNotExceedSafeInteger(len + insertCount - actualDeleteCount);\n A = arraySpeciesCreate(O, actualDeleteCount);\n for (k = 0; k < actualDeleteCount; k++) {\n from = actualStart + k;\n if (from in O) createProperty(A, k, O[from]);\n }\n A.length = actualDeleteCount;\n if (insertCount < actualDeleteCount) {\n for (k = actualStart; k < len - actualDeleteCount; k++) {\n from = k + actualDeleteCount;\n to = k + insertCount;\n if (from in O) O[to] = O[from];\n else deletePropertyOrThrow(O, to);\n }\n for (k = len; k > len - actualDeleteCount + insertCount; k--) deletePropertyOrThrow(O, k - 1);\n } else if (insertCount > actualDeleteCount) {\n for (k = len - actualDeleteCount; k > actualStart; k--) {\n from = k + actualDeleteCount - 1;\n to = k + insertCount - 1;\n if (from in O) O[to] = O[from];\n else deletePropertyOrThrow(O, to);\n }\n }\n for (k = 0; k < insertCount; k++) {\n O[k + actualStart] = arguments[k + 2];\n }\n O.length = len - actualDeleteCount + insertCount;\n return A;\n }\n});\n","// this method was added to unscopables after implementation\n// in popular engines, so it's moved to a separate module\nvar addToUnscopables = require('../internals/add-to-unscopables');\n\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables('flat');\n","var DESCRIPTORS = require('../internals/descriptors');\nvar FUNCTION_NAME_EXISTS = require('../internals/function-name').EXISTS;\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar defineProperty = require('../internals/object-define-property').f;\n\nvar FunctionPrototype = Function.prototype;\nvar functionToString = uncurryThis(FunctionPrototype.toString);\nvar nameRE = /function\\b(?:\\s|\\/\\*[\\S\\s]*?\\*\\/|\\/\\/[^\\n\\r]*[\\n\\r]+)*([^\\s(/]*)/;\nvar regExpExec = uncurryThis(nameRE.exec);\nvar NAME = 'name';\n\n// Function instances `.name` property\n// https://tc39.es/ecma262/#sec-function-instances-name\nif (DESCRIPTORS && !FUNCTION_NAME_EXISTS) {\n defineProperty(FunctionPrototype, NAME, {\n configurable: true,\n get: function () {\n try {\n return regExpExec(nameRE, functionToString(this))[1];\n } catch (error) {\n return '';\n }\n }\n });\n}\n","var $ = require('../internals/export');\nvar global = require('../internals/global');\n\n// `globalThis` object\n// https://tc39.es/ecma262/#sec-globalthis\n$({ global: true }, {\n globalThis: global\n});\n","var $ = require('../internals/export');\nvar getBuiltIn = require('../internals/get-built-in');\nvar apply = require('../internals/function-apply');\nvar call = require('../internals/function-call');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar isArray = require('../internals/is-array');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar isSymbol = require('../internals/is-symbol');\nvar arraySlice = require('../internals/array-slice');\nvar NATIVE_SYMBOL = require('../internals/native-symbol');\n\nvar $stringify = getBuiltIn('JSON', 'stringify');\nvar exec = uncurryThis(/./.exec);\nvar charAt = uncurryThis(''.charAt);\nvar charCodeAt = uncurryThis(''.charCodeAt);\nvar replace = uncurryThis(''.replace);\nvar numberToString = uncurryThis(1.0.toString);\n\nvar tester = /[\\uD800-\\uDFFF]/g;\nvar low = /^[\\uD800-\\uDBFF]$/;\nvar hi = /^[\\uDC00-\\uDFFF]$/;\n\nvar WRONG_SYMBOLS_CONVERSION = !NATIVE_SYMBOL || fails(function () {\n var symbol = getBuiltIn('Symbol')();\n // MS Edge converts symbol values to JSON as {}\n return $stringify([symbol]) != '[null]'\n // WebKit converts symbol values to JSON as null\n || $stringify({ a: symbol }) != '{}'\n // V8 throws on boxed symbols\n || $stringify(Object(symbol)) != '{}';\n});\n\n// https://github.com/tc39/proposal-well-formed-stringify\nvar ILL_FORMED_UNICODE = fails(function () {\n return $stringify('\\uDF06\\uD834') !== '\"\\\\udf06\\\\ud834\"'\n || $stringify('\\uDEAD') !== '\"\\\\udead\"';\n});\n\nvar stringifyWithSymbolsFix = function (it, replacer) {\n var args = arraySlice(arguments);\n var $replacer = replacer;\n if (!isObject(replacer) && it === undefined || isSymbol(it)) return; // IE8 returns string on undefined\n if (!isArray(replacer)) replacer = function (key, value) {\n if (isCallable($replacer)) value = call($replacer, this, key, value);\n if (!isSymbol(value)) return value;\n };\n args[1] = replacer;\n return apply($stringify, null, args);\n};\n\nvar fixIllFormed = function (match, offset, string) {\n var prev = charAt(string, offset - 1);\n var next = charAt(string, offset + 1);\n if ((exec(low, match) && !exec(hi, next)) || (exec(hi, match) && !exec(low, prev))) {\n return '\\\\u' + numberToString(charCodeAt(match, 0), 16);\n } return match;\n};\n\nif ($stringify) {\n // `JSON.stringify` method\n // https://tc39.es/ecma262/#sec-json.stringify\n $({ target: 'JSON', stat: true, arity: 3, forced: WRONG_SYMBOLS_CONVERSION || ILL_FORMED_UNICODE }, {\n // eslint-disable-next-line no-unused-vars -- required for `.length`\n stringify: function stringify(it, replacer, space) {\n var args = arraySlice(arguments);\n var result = apply(WRONG_SYMBOLS_CONVERSION ? stringifyWithSymbolsFix : $stringify, null, args);\n return ILL_FORMED_UNICODE && typeof result == 'string' ? replace(result, tester, fixIllFormed) : result;\n }\n });\n}\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar global = require('../internals/global');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar isForced = require('../internals/is-forced');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar hasOwn = require('../internals/has-own-property');\nvar inheritIfRequired = require('../internals/inherit-if-required');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar isSymbol = require('../internals/is-symbol');\nvar toPrimitive = require('../internals/to-primitive');\nvar fails = require('../internals/fails');\nvar getOwnPropertyNames = require('../internals/object-get-own-property-names').f;\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar defineProperty = require('../internals/object-define-property').f;\nvar thisNumberValue = require('../internals/this-number-value');\nvar trim = require('../internals/string-trim').trim;\n\nvar NUMBER = 'Number';\nvar NativeNumber = global[NUMBER];\nvar NumberPrototype = NativeNumber.prototype;\nvar TypeError = global.TypeError;\nvar arraySlice = uncurryThis(''.slice);\nvar charCodeAt = uncurryThis(''.charCodeAt);\n\n// `ToNumeric` abstract operation\n// https://tc39.es/ecma262/#sec-tonumeric\nvar toNumeric = function (value) {\n var primValue = toPrimitive(value, 'number');\n return typeof primValue == 'bigint' ? primValue : toNumber(primValue);\n};\n\n// `ToNumber` abstract operation\n// https://tc39.es/ecma262/#sec-tonumber\nvar toNumber = function (argument) {\n var it = toPrimitive(argument, 'number');\n var first, third, radix, maxCode, digits, length, index, code;\n if (isSymbol(it)) throw TypeError('Cannot convert a Symbol value to a number');\n if (typeof it == 'string' && it.length > 2) {\n it = trim(it);\n first = charCodeAt(it, 0);\n if (first === 43 || first === 45) {\n third = charCodeAt(it, 2);\n if (third === 88 || third === 120) return NaN; // Number('+0x1') should be NaN, old V8 fix\n } else if (first === 48) {\n switch (charCodeAt(it, 1)) {\n case 66: case 98: radix = 2; maxCode = 49; break; // fast equal of /^0b[01]+$/i\n case 79: case 111: radix = 8; maxCode = 55; break; // fast equal of /^0o[0-7]+$/i\n default: return +it;\n }\n digits = arraySlice(it, 2);\n length = digits.length;\n for (index = 0; index < length; index++) {\n code = charCodeAt(digits, index);\n // parseInt parses a string to a first unavailable symbol\n // but ToNumber should return NaN if a string contains unavailable symbols\n if (code < 48 || code > maxCode) return NaN;\n } return parseInt(digits, radix);\n }\n } return +it;\n};\n\n// `Number` constructor\n// https://tc39.es/ecma262/#sec-number-constructor\nif (isForced(NUMBER, !NativeNumber(' 0o1') || !NativeNumber('0b1') || NativeNumber('+0x1'))) {\n var NumberWrapper = function Number(value) {\n var n = arguments.length < 1 ? 0 : NativeNumber(toNumeric(value));\n var dummy = this;\n // check on 1..constructor(foo) case\n return isPrototypeOf(NumberPrototype, dummy) && fails(function () { thisNumberValue(dummy); })\n ? inheritIfRequired(Object(n), dummy, NumberWrapper) : n;\n };\n for (var keys = DESCRIPTORS ? getOwnPropertyNames(NativeNumber) : (\n // ES3:\n 'MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,' +\n // ES2015 (in case, if modules with ES2015 Number statics required before):\n 'EPSILON,MAX_SAFE_INTEGER,MIN_SAFE_INTEGER,isFinite,isInteger,isNaN,isSafeInteger,parseFloat,parseInt,' +\n // ESNext\n 'fromString,range'\n ).split(','), j = 0, key; keys.length > j; j++) {\n if (hasOwn(NativeNumber, key = keys[j]) && !hasOwn(NumberWrapper, key)) {\n defineProperty(NumberWrapper, key, getOwnPropertyDescriptor(NativeNumber, key));\n }\n }\n NumberWrapper.prototype = NumberPrototype;\n NumberPrototype.constructor = NumberWrapper;\n defineBuiltIn(global, NUMBER, NumberWrapper, { constructor: true });\n}\n","var $ = require('../internals/export');\nvar assign = require('../internals/object-assign');\n\n// `Object.assign` method\n// https://tc39.es/ecma262/#sec-object.assign\n// eslint-disable-next-line es-x/no-object-assign -- required for testing\n$({ target: 'Object', stat: true, arity: 2, forced: Object.assign !== assign }, {\n assign: assign\n});\n","var $ = require('../internals/export');\nvar fails = require('../internals/fails');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar nativeGetOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar DESCRIPTORS = require('../internals/descriptors');\n\nvar FAILS_ON_PRIMITIVES = fails(function () { nativeGetOwnPropertyDescriptor(1); });\nvar FORCED = !DESCRIPTORS || FAILS_ON_PRIMITIVES;\n\n// `Object.getOwnPropertyDescriptor` method\n// https://tc39.es/ecma262/#sec-object.getownpropertydescriptor\n$({ target: 'Object', stat: true, forced: FORCED, sham: !DESCRIPTORS }, {\n getOwnPropertyDescriptor: function getOwnPropertyDescriptor(it, key) {\n return nativeGetOwnPropertyDescriptor(toIndexedObject(it), key);\n }\n});\n","var $ = require('../internals/export');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar ownKeys = require('../internals/own-keys');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar createProperty = require('../internals/create-property');\n\n// `Object.getOwnPropertyDescriptors` method\n// https://tc39.es/ecma262/#sec-object.getownpropertydescriptors\n$({ target: 'Object', stat: true, sham: !DESCRIPTORS }, {\n getOwnPropertyDescriptors: function getOwnPropertyDescriptors(object) {\n var O = toIndexedObject(object);\n var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;\n var keys = ownKeys(O);\n var result = {};\n var index = 0;\n var key, descriptor;\n while (keys.length > index) {\n descriptor = getOwnPropertyDescriptor(O, key = keys[index++]);\n if (descriptor !== undefined) createProperty(result, key, descriptor);\n }\n return result;\n }\n});\n","var $ = require('../internals/export');\nvar NATIVE_SYMBOL = require('../internals/native-symbol');\nvar fails = require('../internals/fails');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar toObject = require('../internals/to-object');\n\n// V8 ~ Chrome 38 and 39 `Object.getOwnPropertySymbols` fails on primitives\n// https://bugs.chromium.org/p/v8/issues/detail?id=3443\nvar FORCED = !NATIVE_SYMBOL || fails(function () { getOwnPropertySymbolsModule.f(1); });\n\n// `Object.getOwnPropertySymbols` method\n// https://tc39.es/ecma262/#sec-object.getownpropertysymbols\n$({ target: 'Object', stat: true, forced: FORCED }, {\n getOwnPropertySymbols: function getOwnPropertySymbols(it) {\n var $getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n return $getOwnPropertySymbols ? $getOwnPropertySymbols(toObject(it)) : [];\n }\n});\n","var $ = require('../internals/export');\nvar toObject = require('../internals/to-object');\nvar nativeKeys = require('../internals/object-keys');\nvar fails = require('../internals/fails');\n\nvar FAILS_ON_PRIMITIVES = fails(function () { nativeKeys(1); });\n\n// `Object.keys` method\n// https://tc39.es/ecma262/#sec-object.keys\n$({ target: 'Object', stat: true, forced: FAILS_ON_PRIMITIVES }, {\n keys: function keys(it) {\n return nativeKeys(toObject(it));\n }\n});\n","var TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar toString = require('../internals/object-to-string');\n\n// `Object.prototype.toString` method\n// https://tc39.es/ecma262/#sec-object.prototype.tostring\nif (!TO_STRING_TAG_SUPPORT) {\n defineBuiltIn(Object.prototype, 'toString', toString, { unsafe: true });\n}\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar perform = require('../internals/perform');\nvar iterate = require('../internals/iterate');\nvar PROMISE_STATICS_INCORRECT_ITERATION = require('../internals/promise-statics-incorrect-iteration');\n\n// `Promise.all` method\n// https://tc39.es/ecma262/#sec-promise.all\n$({ target: 'Promise', stat: true, forced: PROMISE_STATICS_INCORRECT_ITERATION }, {\n all: function all(iterable) {\n var C = this;\n var capability = newPromiseCapabilityModule.f(C);\n var resolve = capability.resolve;\n var reject = capability.reject;\n var result = perform(function () {\n var $promiseResolve = aCallable(C.resolve);\n var values = [];\n var counter = 0;\n var remaining = 1;\n iterate(iterable, function (promise) {\n var index = counter++;\n var alreadyCalled = false;\n remaining++;\n call($promiseResolve, C, promise).then(function (value) {\n if (alreadyCalled) return;\n alreadyCalled = true;\n values[index] = value;\n --remaining || resolve(values);\n }, reject);\n });\n --remaining || resolve(values);\n });\n if (result.error) reject(result.value);\n return capability.promise;\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar IS_PURE = require('../internals/is-pure');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar getBuiltIn = require('../internals/get-built-in');\nvar isCallable = require('../internals/is-callable');\nvar defineBuiltIn = require('../internals/define-built-in');\n\nvar NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;\n\n// `Promise.prototype.catch` method\n// https://tc39.es/ecma262/#sec-promise.prototype.catch\n$({ target: 'Promise', proto: true, forced: FORCED_PROMISE_CONSTRUCTOR, real: true }, {\n 'catch': function (onRejected) {\n return this.then(undefined, onRejected);\n }\n});\n\n// makes sure that native promise-based APIs `Promise#catch` properly works with patched `Promise#then`\nif (!IS_PURE && isCallable(NativePromiseConstructor)) {\n var method = getBuiltIn('Promise').prototype['catch'];\n if (NativePromisePrototype['catch'] !== method) {\n defineBuiltIn(NativePromisePrototype, 'catch', method, { unsafe: true });\n }\n}\n","'use strict';\nvar $ = require('../internals/export');\nvar IS_PURE = require('../internals/is-pure');\nvar IS_NODE = require('../internals/engine-is-node');\nvar global = require('../internals/global');\nvar call = require('../internals/function-call');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar setSpecies = require('../internals/set-species');\nvar aCallable = require('../internals/a-callable');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar anInstance = require('../internals/an-instance');\nvar speciesConstructor = require('../internals/species-constructor');\nvar task = require('../internals/task').set;\nvar microtask = require('../internals/microtask');\nvar hostReportErrors = require('../internals/host-report-errors');\nvar perform = require('../internals/perform');\nvar Queue = require('../internals/queue');\nvar InternalStateModule = require('../internals/internal-state');\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar PromiseConstructorDetection = require('../internals/promise-constructor-detection');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\n\nvar PROMISE = 'Promise';\nvar FORCED_PROMISE_CONSTRUCTOR = PromiseConstructorDetection.CONSTRUCTOR;\nvar NATIVE_PROMISE_REJECTION_EVENT = PromiseConstructorDetection.REJECTION_EVENT;\nvar NATIVE_PROMISE_SUBCLASSING = PromiseConstructorDetection.SUBCLASSING;\nvar getInternalPromiseState = InternalStateModule.getterFor(PROMISE);\nvar setInternalState = InternalStateModule.set;\nvar NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;\nvar PromiseConstructor = NativePromiseConstructor;\nvar PromisePrototype = NativePromisePrototype;\nvar TypeError = global.TypeError;\nvar document = global.document;\nvar process = global.process;\nvar newPromiseCapability = newPromiseCapabilityModule.f;\nvar newGenericPromiseCapability = newPromiseCapability;\n\nvar DISPATCH_EVENT = !!(document && document.createEvent && global.dispatchEvent);\nvar UNHANDLED_REJECTION = 'unhandledrejection';\nvar REJECTION_HANDLED = 'rejectionhandled';\nvar PENDING = 0;\nvar FULFILLED = 1;\nvar REJECTED = 2;\nvar HANDLED = 1;\nvar UNHANDLED = 2;\n\nvar Internal, OwnPromiseCapability, PromiseWrapper, nativeThen;\n\n// helpers\nvar isThenable = function (it) {\n var then;\n return isObject(it) && isCallable(then = it.then) ? then : false;\n};\n\nvar callReaction = function (reaction, state) {\n var value = state.value;\n var ok = state.state == FULFILLED;\n var handler = ok ? reaction.ok : reaction.fail;\n var resolve = reaction.resolve;\n var reject = reaction.reject;\n var domain = reaction.domain;\n var result, then, exited;\n try {\n if (handler) {\n if (!ok) {\n if (state.rejection === UNHANDLED) onHandleUnhandled(state);\n state.rejection = HANDLED;\n }\n if (handler === true) result = value;\n else {\n if (domain) domain.enter();\n result = handler(value); // can throw\n if (domain) {\n domain.exit();\n exited = true;\n }\n }\n if (result === reaction.promise) {\n reject(TypeError('Promise-chain cycle'));\n } else if (then = isThenable(result)) {\n call(then, result, resolve, reject);\n } else resolve(result);\n } else reject(value);\n } catch (error) {\n if (domain && !exited) domain.exit();\n reject(error);\n }\n};\n\nvar notify = function (state, isReject) {\n if (state.notified) return;\n state.notified = true;\n microtask(function () {\n var reactions = state.reactions;\n var reaction;\n while (reaction = reactions.get()) {\n callReaction(reaction, state);\n }\n state.notified = false;\n if (isReject && !state.rejection) onUnhandled(state);\n });\n};\n\nvar dispatchEvent = function (name, promise, reason) {\n var event, handler;\n if (DISPATCH_EVENT) {\n event = document.createEvent('Event');\n event.promise = promise;\n event.reason = reason;\n event.initEvent(name, false, true);\n global.dispatchEvent(event);\n } else event = { promise: promise, reason: reason };\n if (!NATIVE_PROMISE_REJECTION_EVENT && (handler = global['on' + name])) handler(event);\n else if (name === UNHANDLED_REJECTION) hostReportErrors('Unhandled promise rejection', reason);\n};\n\nvar onUnhandled = function (state) {\n call(task, global, function () {\n var promise = state.facade;\n var value = state.value;\n var IS_UNHANDLED = isUnhandled(state);\n var result;\n if (IS_UNHANDLED) {\n result = perform(function () {\n if (IS_NODE) {\n process.emit('unhandledRejection', value, promise);\n } else dispatchEvent(UNHANDLED_REJECTION, promise, value);\n });\n // Browsers should not trigger `rejectionHandled` event if it was handled here, NodeJS - should\n state.rejection = IS_NODE || isUnhandled(state) ? UNHANDLED : HANDLED;\n if (result.error) throw result.value;\n }\n });\n};\n\nvar isUnhandled = function (state) {\n return state.rejection !== HANDLED && !state.parent;\n};\n\nvar onHandleUnhandled = function (state) {\n call(task, global, function () {\n var promise = state.facade;\n if (IS_NODE) {\n process.emit('rejectionHandled', promise);\n } else dispatchEvent(REJECTION_HANDLED, promise, state.value);\n });\n};\n\nvar bind = function (fn, state, unwrap) {\n return function (value) {\n fn(state, value, unwrap);\n };\n};\n\nvar internalReject = function (state, value, unwrap) {\n if (state.done) return;\n state.done = true;\n if (unwrap) state = unwrap;\n state.value = value;\n state.state = REJECTED;\n notify(state, true);\n};\n\nvar internalResolve = function (state, value, unwrap) {\n if (state.done) return;\n state.done = true;\n if (unwrap) state = unwrap;\n try {\n if (state.facade === value) throw TypeError(\"Promise can't be resolved itself\");\n var then = isThenable(value);\n if (then) {\n microtask(function () {\n var wrapper = { done: false };\n try {\n call(then, value,\n bind(internalResolve, wrapper, state),\n bind(internalReject, wrapper, state)\n );\n } catch (error) {\n internalReject(wrapper, error, state);\n }\n });\n } else {\n state.value = value;\n state.state = FULFILLED;\n notify(state, false);\n }\n } catch (error) {\n internalReject({ done: false }, error, state);\n }\n};\n\n// constructor polyfill\nif (FORCED_PROMISE_CONSTRUCTOR) {\n // 25.4.3.1 Promise(executor)\n PromiseConstructor = function Promise(executor) {\n anInstance(this, PromisePrototype);\n aCallable(executor);\n call(Internal, this);\n var state = getInternalPromiseState(this);\n try {\n executor(bind(internalResolve, state), bind(internalReject, state));\n } catch (error) {\n internalReject(state, error);\n }\n };\n\n PromisePrototype = PromiseConstructor.prototype;\n\n // eslint-disable-next-line no-unused-vars -- required for `.length`\n Internal = function Promise(executor) {\n setInternalState(this, {\n type: PROMISE,\n done: false,\n notified: false,\n parent: false,\n reactions: new Queue(),\n rejection: false,\n state: PENDING,\n value: undefined\n });\n };\n\n // `Promise.prototype.then` method\n // https://tc39.es/ecma262/#sec-promise.prototype.then\n Internal.prototype = defineBuiltIn(PromisePrototype, 'then', function then(onFulfilled, onRejected) {\n var state = getInternalPromiseState(this);\n var reaction = newPromiseCapability(speciesConstructor(this, PromiseConstructor));\n state.parent = true;\n reaction.ok = isCallable(onFulfilled) ? onFulfilled : true;\n reaction.fail = isCallable(onRejected) && onRejected;\n reaction.domain = IS_NODE ? process.domain : undefined;\n if (state.state == PENDING) state.reactions.add(reaction);\n else microtask(function () {\n callReaction(reaction, state);\n });\n return reaction.promise;\n });\n\n OwnPromiseCapability = function () {\n var promise = new Internal();\n var state = getInternalPromiseState(promise);\n this.promise = promise;\n this.resolve = bind(internalResolve, state);\n this.reject = bind(internalReject, state);\n };\n\n newPromiseCapabilityModule.f = newPromiseCapability = function (C) {\n return C === PromiseConstructor || C === PromiseWrapper\n ? new OwnPromiseCapability(C)\n : newGenericPromiseCapability(C);\n };\n\n if (!IS_PURE && isCallable(NativePromiseConstructor) && NativePromisePrototype !== Object.prototype) {\n nativeThen = NativePromisePrototype.then;\n\n if (!NATIVE_PROMISE_SUBCLASSING) {\n // make `Promise#then` return a polyfilled `Promise` for native promise-based APIs\n defineBuiltIn(NativePromisePrototype, 'then', function then(onFulfilled, onRejected) {\n var that = this;\n return new PromiseConstructor(function (resolve, reject) {\n call(nativeThen, that, resolve, reject);\n }).then(onFulfilled, onRejected);\n // https://github.com/zloirock/core-js/issues/640\n }, { unsafe: true });\n }\n\n // make `.constructor === Promise` work for native promise-based APIs\n try {\n delete NativePromisePrototype.constructor;\n } catch (error) { /* empty */ }\n\n // make `instanceof Promise` work for native promise-based APIs\n if (setPrototypeOf) {\n setPrototypeOf(NativePromisePrototype, PromisePrototype);\n }\n }\n}\n\n$({ global: true, constructor: true, wrap: true, forced: FORCED_PROMISE_CONSTRUCTOR }, {\n Promise: PromiseConstructor\n});\n\nsetToStringTag(PromiseConstructor, PROMISE, false, true);\nsetSpecies(PROMISE);\n","'use strict';\nvar $ = require('../internals/export');\nvar IS_PURE = require('../internals/is-pure');\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar fails = require('../internals/fails');\nvar getBuiltIn = require('../internals/get-built-in');\nvar isCallable = require('../internals/is-callable');\nvar speciesConstructor = require('../internals/species-constructor');\nvar promiseResolve = require('../internals/promise-resolve');\nvar defineBuiltIn = require('../internals/define-built-in');\n\nvar NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;\n\n// Safari bug https://bugs.webkit.org/show_bug.cgi?id=200829\nvar NON_GENERIC = !!NativePromiseConstructor && fails(function () {\n // eslint-disable-next-line unicorn/no-thenable -- required for testing\n NativePromisePrototype['finally'].call({ then: function () { /* empty */ } }, function () { /* empty */ });\n});\n\n// `Promise.prototype.finally` method\n// https://tc39.es/ecma262/#sec-promise.prototype.finally\n$({ target: 'Promise', proto: true, real: true, forced: NON_GENERIC }, {\n 'finally': function (onFinally) {\n var C = speciesConstructor(this, getBuiltIn('Promise'));\n var isFunction = isCallable(onFinally);\n return this.then(\n isFunction ? function (x) {\n return promiseResolve(C, onFinally()).then(function () { return x; });\n } : onFinally,\n isFunction ? function (e) {\n return promiseResolve(C, onFinally()).then(function () { throw e; });\n } : onFinally\n );\n }\n});\n\n// makes sure that native promise-based APIs `Promise#finally` properly works with patched `Promise#then`\nif (!IS_PURE && isCallable(NativePromiseConstructor)) {\n var method = getBuiltIn('Promise').prototype['finally'];\n if (NativePromisePrototype['finally'] !== method) {\n defineBuiltIn(NativePromisePrototype, 'finally', method, { unsafe: true });\n }\n}\n","// TODO: Remove this module from `core-js@4` since it's split to modules listed below\nrequire('../modules/es.promise.constructor');\nrequire('../modules/es.promise.all');\nrequire('../modules/es.promise.catch');\nrequire('../modules/es.promise.race');\nrequire('../modules/es.promise.reject');\nrequire('../modules/es.promise.resolve');\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar perform = require('../internals/perform');\nvar iterate = require('../internals/iterate');\nvar PROMISE_STATICS_INCORRECT_ITERATION = require('../internals/promise-statics-incorrect-iteration');\n\n// `Promise.race` method\n// https://tc39.es/ecma262/#sec-promise.race\n$({ target: 'Promise', stat: true, forced: PROMISE_STATICS_INCORRECT_ITERATION }, {\n race: function race(iterable) {\n var C = this;\n var capability = newPromiseCapabilityModule.f(C);\n var reject = capability.reject;\n var result = perform(function () {\n var $promiseResolve = aCallable(C.resolve);\n iterate(iterable, function (promise) {\n call($promiseResolve, C, promise).then(capability.resolve, reject);\n });\n });\n if (result.error) reject(result.value);\n return capability.promise;\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\n\n// `Promise.reject` method\n// https://tc39.es/ecma262/#sec-promise.reject\n$({ target: 'Promise', stat: true, forced: FORCED_PROMISE_CONSTRUCTOR }, {\n reject: function reject(r) {\n var capability = newPromiseCapabilityModule.f(this);\n call(capability.reject, undefined, r);\n return capability.promise;\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar getBuiltIn = require('../internals/get-built-in');\nvar IS_PURE = require('../internals/is-pure');\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\nvar promiseResolve = require('../internals/promise-resolve');\n\nvar PromiseConstructorWrapper = getBuiltIn('Promise');\nvar CHECK_WRAPPER = IS_PURE && !FORCED_PROMISE_CONSTRUCTOR;\n\n// `Promise.resolve` method\n// https://tc39.es/ecma262/#sec-promise.resolve\n$({ target: 'Promise', stat: true, forced: IS_PURE || FORCED_PROMISE_CONSTRUCTOR }, {\n resolve: function resolve(x) {\n return promiseResolve(CHECK_WRAPPER && this === PromiseConstructorWrapper ? NativePromiseConstructor : this, x);\n }\n});\n","var $ = require('../internals/export');\nvar getBuiltIn = require('../internals/get-built-in');\nvar apply = require('../internals/function-apply');\nvar bind = require('../internals/function-bind');\nvar aConstructor = require('../internals/a-constructor');\nvar anObject = require('../internals/an-object');\nvar isObject = require('../internals/is-object');\nvar create = require('../internals/object-create');\nvar fails = require('../internals/fails');\n\nvar nativeConstruct = getBuiltIn('Reflect', 'construct');\nvar ObjectPrototype = Object.prototype;\nvar push = [].push;\n\n// `Reflect.construct` method\n// https://tc39.es/ecma262/#sec-reflect.construct\n// MS Edge supports only 2 arguments and argumentsList argument is optional\n// FF Nightly sets third argument as `new.target`, but does not create `this` from it\nvar NEW_TARGET_BUG = fails(function () {\n function F() { /* empty */ }\n return !(nativeConstruct(function () { /* empty */ }, [], F) instanceof F);\n});\n\nvar ARGS_BUG = !fails(function () {\n nativeConstruct(function () { /* empty */ });\n});\n\nvar FORCED = NEW_TARGET_BUG || ARGS_BUG;\n\n$({ target: 'Reflect', stat: true, forced: FORCED, sham: FORCED }, {\n construct: function construct(Target, args /* , newTarget */) {\n aConstructor(Target);\n anObject(args);\n var newTarget = arguments.length < 3 ? Target : aConstructor(arguments[2]);\n if (ARGS_BUG && !NEW_TARGET_BUG) return nativeConstruct(Target, args, newTarget);\n if (Target == newTarget) {\n // w/o altered newTarget, optimization for 0-4 arguments\n switch (args.length) {\n case 0: return new Target();\n case 1: return new Target(args[0]);\n case 2: return new Target(args[0], args[1]);\n case 3: return new Target(args[0], args[1], args[2]);\n case 4: return new Target(args[0], args[1], args[2], args[3]);\n }\n // w/o altered newTarget, lot of arguments case\n var $args = [null];\n apply(push, $args, args);\n return new (apply(bind, Target, $args))();\n }\n // with altered newTarget, not support built-in constructors\n var proto = newTarget.prototype;\n var instance = create(isObject(proto) ? proto : ObjectPrototype);\n var result = apply(Target, instance, args);\n return isObject(result) ? result : instance;\n }\n});\n","var DESCRIPTORS = require('../internals/descriptors');\nvar global = require('../internals/global');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar isForced = require('../internals/is-forced');\nvar inheritIfRequired = require('../internals/inherit-if-required');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar getOwnPropertyNames = require('../internals/object-get-own-property-names').f;\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar isRegExp = require('../internals/is-regexp');\nvar toString = require('../internals/to-string');\nvar getRegExpFlags = require('../internals/regexp-get-flags');\nvar stickyHelpers = require('../internals/regexp-sticky-helpers');\nvar proxyAccessor = require('../internals/proxy-accessor');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar fails = require('../internals/fails');\nvar hasOwn = require('../internals/has-own-property');\nvar enforceInternalState = require('../internals/internal-state').enforce;\nvar setSpecies = require('../internals/set-species');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar UNSUPPORTED_DOT_ALL = require('../internals/regexp-unsupported-dot-all');\nvar UNSUPPORTED_NCG = require('../internals/regexp-unsupported-ncg');\n\nvar MATCH = wellKnownSymbol('match');\nvar NativeRegExp = global.RegExp;\nvar RegExpPrototype = NativeRegExp.prototype;\nvar SyntaxError = global.SyntaxError;\nvar exec = uncurryThis(RegExpPrototype.exec);\nvar charAt = uncurryThis(''.charAt);\nvar replace = uncurryThis(''.replace);\nvar stringIndexOf = uncurryThis(''.indexOf);\nvar stringSlice = uncurryThis(''.slice);\n// TODO: Use only proper RegExpIdentifierName\nvar IS_NCG = /^\\?<[^\\s\\d!#%&*+<=>@^][^\\s!#%&*+<=>@^]*>/;\nvar re1 = /a/g;\nvar re2 = /a/g;\n\n// \"new\" should create a new object, old webkit bug\nvar CORRECT_NEW = new NativeRegExp(re1) !== re1;\n\nvar MISSED_STICKY = stickyHelpers.MISSED_STICKY;\nvar UNSUPPORTED_Y = stickyHelpers.UNSUPPORTED_Y;\n\nvar BASE_FORCED = DESCRIPTORS &&\n (!CORRECT_NEW || MISSED_STICKY || UNSUPPORTED_DOT_ALL || UNSUPPORTED_NCG || fails(function () {\n re2[MATCH] = false;\n // RegExp constructor can alter flags and IsRegExp works correct with @@match\n return NativeRegExp(re1) != re1 || NativeRegExp(re2) == re2 || NativeRegExp(re1, 'i') != '/a/i';\n }));\n\nvar handleDotAll = function (string) {\n var length = string.length;\n var index = 0;\n var result = '';\n var brackets = false;\n var chr;\n for (; index <= length; index++) {\n chr = charAt(string, index);\n if (chr === '\\\\') {\n result += chr + charAt(string, ++index);\n continue;\n }\n if (!brackets && chr === '.') {\n result += '[\\\\s\\\\S]';\n } else {\n if (chr === '[') {\n brackets = true;\n } else if (chr === ']') {\n brackets = false;\n } result += chr;\n }\n } return result;\n};\n\nvar handleNCG = function (string) {\n var length = string.length;\n var index = 0;\n var result = '';\n var named = [];\n var names = {};\n var brackets = false;\n var ncg = false;\n var groupid = 0;\n var groupname = '';\n var chr;\n for (; index <= length; index++) {\n chr = charAt(string, index);\n if (chr === '\\\\') {\n chr = chr + charAt(string, ++index);\n } else if (chr === ']') {\n brackets = false;\n } else if (!brackets) switch (true) {\n case chr === '[':\n brackets = true;\n break;\n case chr === '(':\n if (exec(IS_NCG, stringSlice(string, index + 1))) {\n index += 2;\n ncg = true;\n }\n result += chr;\n groupid++;\n continue;\n case chr === '>' && ncg:\n if (groupname === '' || hasOwn(names, groupname)) {\n throw new SyntaxError('Invalid capture group name');\n }\n names[groupname] = true;\n named[named.length] = [groupname, groupid];\n ncg = false;\n groupname = '';\n continue;\n }\n if (ncg) groupname += chr;\n else result += chr;\n } return [result, named];\n};\n\n// `RegExp` constructor\n// https://tc39.es/ecma262/#sec-regexp-constructor\nif (isForced('RegExp', BASE_FORCED)) {\n var RegExpWrapper = function RegExp(pattern, flags) {\n var thisIsRegExp = isPrototypeOf(RegExpPrototype, this);\n var patternIsRegExp = isRegExp(pattern);\n var flagsAreUndefined = flags === undefined;\n var groups = [];\n var rawPattern = pattern;\n var rawFlags, dotAll, sticky, handled, result, state;\n\n if (!thisIsRegExp && patternIsRegExp && flagsAreUndefined && pattern.constructor === RegExpWrapper) {\n return pattern;\n }\n\n if (patternIsRegExp || isPrototypeOf(RegExpPrototype, pattern)) {\n pattern = pattern.source;\n if (flagsAreUndefined) flags = getRegExpFlags(rawPattern);\n }\n\n pattern = pattern === undefined ? '' : toString(pattern);\n flags = flags === undefined ? '' : toString(flags);\n rawPattern = pattern;\n\n if (UNSUPPORTED_DOT_ALL && 'dotAll' in re1) {\n dotAll = !!flags && stringIndexOf(flags, 's') > -1;\n if (dotAll) flags = replace(flags, /s/g, '');\n }\n\n rawFlags = flags;\n\n if (MISSED_STICKY && 'sticky' in re1) {\n sticky = !!flags && stringIndexOf(flags, 'y') > -1;\n if (sticky && UNSUPPORTED_Y) flags = replace(flags, /y/g, '');\n }\n\n if (UNSUPPORTED_NCG) {\n handled = handleNCG(pattern);\n pattern = handled[0];\n groups = handled[1];\n }\n\n result = inheritIfRequired(NativeRegExp(pattern, flags), thisIsRegExp ? this : RegExpPrototype, RegExpWrapper);\n\n if (dotAll || sticky || groups.length) {\n state = enforceInternalState(result);\n if (dotAll) {\n state.dotAll = true;\n state.raw = RegExpWrapper(handleDotAll(pattern), rawFlags);\n }\n if (sticky) state.sticky = true;\n if (groups.length) state.groups = groups;\n }\n\n if (pattern !== rawPattern) try {\n // fails in old engines, but we have no alternatives for unsupported regex syntax\n createNonEnumerableProperty(result, 'source', rawPattern === '' ? '(?:)' : rawPattern);\n } catch (error) { /* empty */ }\n\n return result;\n };\n\n for (var keys = getOwnPropertyNames(NativeRegExp), index = 0; keys.length > index;) {\n proxyAccessor(RegExpWrapper, NativeRegExp, keys[index++]);\n }\n\n RegExpPrototype.constructor = RegExpWrapper;\n RegExpWrapper.prototype = RegExpPrototype;\n defineBuiltIn(global, 'RegExp', RegExpWrapper, { constructor: true });\n}\n\n// https://tc39.es/ecma262/#sec-get-regexp-@@species\nsetSpecies('RegExp');\n","'use strict';\nvar $ = require('../internals/export');\nvar exec = require('../internals/regexp-exec');\n\n// `RegExp.prototype.exec` method\n// https://tc39.es/ecma262/#sec-regexp.prototype.exec\n$({ target: 'RegExp', proto: true, forced: /./.exec !== exec }, {\n exec: exec\n});\n","'use strict';\nvar PROPER_FUNCTION_NAME = require('../internals/function-name').PROPER;\nvar defineBuiltIn = require('../internals/define-built-in');\nvar anObject = require('../internals/an-object');\nvar $toString = require('../internals/to-string');\nvar fails = require('../internals/fails');\nvar getRegExpFlags = require('../internals/regexp-get-flags');\n\nvar TO_STRING = 'toString';\nvar RegExpPrototype = RegExp.prototype;\nvar n$ToString = RegExpPrototype[TO_STRING];\n\nvar NOT_GENERIC = fails(function () { return n$ToString.call({ source: 'a', flags: 'b' }) != '/a/b'; });\n// FF44- RegExp#toString has a wrong name\nvar INCORRECT_NAME = PROPER_FUNCTION_NAME && n$ToString.name != TO_STRING;\n\n// `RegExp.prototype.toString` method\n// https://tc39.es/ecma262/#sec-regexp.prototype.tostring\nif (NOT_GENERIC || INCORRECT_NAME) {\n defineBuiltIn(RegExp.prototype, TO_STRING, function toString() {\n var R = anObject(this);\n var pattern = $toString(R.source);\n var flags = $toString(getRegExpFlags(R));\n return '/' + pattern + '/' + flags;\n }, { unsafe: true });\n}\n","'use strict';\nvar $ = require('../internals/export');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar notARegExp = require('../internals/not-a-regexp');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar toString = require('../internals/to-string');\nvar correctIsRegExpLogic = require('../internals/correct-is-regexp-logic');\n\nvar stringIndexOf = uncurryThis(''.indexOf);\n\n// `String.prototype.includes` method\n// https://tc39.es/ecma262/#sec-string.prototype.includes\n$({ target: 'String', proto: true, forced: !correctIsRegExpLogic('includes') }, {\n includes: function includes(searchString /* , position = 0 */) {\n return !!~stringIndexOf(\n toString(requireObjectCoercible(this)),\n toString(notARegExp(searchString)),\n arguments.length > 1 ? arguments[1] : undefined\n );\n }\n});\n","'use strict';\nvar charAt = require('../internals/string-multibyte').charAt;\nvar toString = require('../internals/to-string');\nvar InternalStateModule = require('../internals/internal-state');\nvar defineIterator = require('../internals/define-iterator');\n\nvar STRING_ITERATOR = 'String Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(STRING_ITERATOR);\n\n// `String.prototype[@@iterator]` method\n// https://tc39.es/ecma262/#sec-string.prototype-@@iterator\ndefineIterator(String, 'String', function (iterated) {\n setInternalState(this, {\n type: STRING_ITERATOR,\n string: toString(iterated),\n index: 0\n });\n// `%StringIteratorPrototype%.next` method\n// https://tc39.es/ecma262/#sec-%stringiteratorprototype%.next\n}, function next() {\n var state = getInternalState(this);\n var string = state.string;\n var index = state.index;\n var point;\n if (index >= string.length) return { value: undefined, done: true };\n point = charAt(string, index);\n state.index += point.length;\n return { value: point, done: false };\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar createHTML = require('../internals/create-html');\nvar forcedStringHTMLMethod = require('../internals/string-html-forced');\n\n// `String.prototype.link` method\n// https://tc39.es/ecma262/#sec-string.prototype.link\n$({ target: 'String', proto: true, forced: forcedStringHTMLMethod('link') }, {\n link: function link(url) {\n return createHTML(this, 'a', 'href', url);\n }\n});\n","'use strict';\nvar call = require('../internals/function-call');\nvar fixRegExpWellKnownSymbolLogic = require('../internals/fix-regexp-well-known-symbol-logic');\nvar anObject = require('../internals/an-object');\nvar toLength = require('../internals/to-length');\nvar toString = require('../internals/to-string');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar getMethod = require('../internals/get-method');\nvar advanceStringIndex = require('../internals/advance-string-index');\nvar regExpExec = require('../internals/regexp-exec-abstract');\n\n// @@match logic\nfixRegExpWellKnownSymbolLogic('match', function (MATCH, nativeMatch, maybeCallNative) {\n return [\n // `String.prototype.match` method\n // https://tc39.es/ecma262/#sec-string.prototype.match\n function match(regexp) {\n var O = requireObjectCoercible(this);\n var matcher = regexp == undefined ? undefined : getMethod(regexp, MATCH);\n return matcher ? call(matcher, regexp, O) : new RegExp(regexp)[MATCH](toString(O));\n },\n // `RegExp.prototype[@@match]` method\n // https://tc39.es/ecma262/#sec-regexp.prototype-@@match\n function (string) {\n var rx = anObject(this);\n var S = toString(string);\n var res = maybeCallNative(nativeMatch, rx, S);\n\n if (res.done) return res.value;\n\n if (!rx.global) return regExpExec(rx, S);\n\n var fullUnicode = rx.unicode;\n rx.lastIndex = 0;\n var A = [];\n var n = 0;\n var result;\n while ((result = regExpExec(rx, S)) !== null) {\n var matchStr = toString(result[0]);\n A[n] = matchStr;\n if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);\n n++;\n }\n return n === 0 ? null : A;\n }\n ];\n});\n","'use strict';\nvar apply = require('../internals/function-apply');\nvar call = require('../internals/function-call');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fixRegExpWellKnownSymbolLogic = require('../internals/fix-regexp-well-known-symbol-logic');\nvar fails = require('../internals/fails');\nvar anObject = require('../internals/an-object');\nvar isCallable = require('../internals/is-callable');\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\nvar toLength = require('../internals/to-length');\nvar toString = require('../internals/to-string');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar advanceStringIndex = require('../internals/advance-string-index');\nvar getMethod = require('../internals/get-method');\nvar getSubstitution = require('../internals/get-substitution');\nvar regExpExec = require('../internals/regexp-exec-abstract');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar REPLACE = wellKnownSymbol('replace');\nvar max = Math.max;\nvar min = Math.min;\nvar concat = uncurryThis([].concat);\nvar push = uncurryThis([].push);\nvar stringIndexOf = uncurryThis(''.indexOf);\nvar stringSlice = uncurryThis(''.slice);\n\nvar maybeToString = function (it) {\n return it === undefined ? it : String(it);\n};\n\n// IE <= 11 replaces $0 with the whole match, as if it was $&\n// https://stackoverflow.com/questions/6024666/getting-ie-to-replace-a-regex-with-the-literal-string-0\nvar REPLACE_KEEPS_$0 = (function () {\n // eslint-disable-next-line regexp/prefer-escape-replacement-dollar-char -- required for testing\n return 'a'.replace(/./, '$0') === '$0';\n})();\n\n// Safari <= 13.0.3(?) substitutes nth capture where n>m with an empty string\nvar REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE = (function () {\n if (/./[REPLACE]) {\n return /./[REPLACE]('a', '$0') === '';\n }\n return false;\n})();\n\nvar REPLACE_SUPPORTS_NAMED_GROUPS = !fails(function () {\n var re = /./;\n re.exec = function () {\n var result = [];\n result.groups = { a: '7' };\n return result;\n };\n // eslint-disable-next-line regexp/no-useless-dollar-replacements -- false positive\n return ''.replace(re, '$') !== '7';\n});\n\n// @@replace logic\nfixRegExpWellKnownSymbolLogic('replace', function (_, nativeReplace, maybeCallNative) {\n var UNSAFE_SUBSTITUTE = REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE ? '$' : '$0';\n\n return [\n // `String.prototype.replace` method\n // https://tc39.es/ecma262/#sec-string.prototype.replace\n function replace(searchValue, replaceValue) {\n var O = requireObjectCoercible(this);\n var replacer = searchValue == undefined ? undefined : getMethod(searchValue, REPLACE);\n return replacer\n ? call(replacer, searchValue, O, replaceValue)\n : call(nativeReplace, toString(O), searchValue, replaceValue);\n },\n // `RegExp.prototype[@@replace]` method\n // https://tc39.es/ecma262/#sec-regexp.prototype-@@replace\n function (string, replaceValue) {\n var rx = anObject(this);\n var S = toString(string);\n\n if (\n typeof replaceValue == 'string' &&\n stringIndexOf(replaceValue, UNSAFE_SUBSTITUTE) === -1 &&\n stringIndexOf(replaceValue, '$<') === -1\n ) {\n var res = maybeCallNative(nativeReplace, rx, S, replaceValue);\n if (res.done) return res.value;\n }\n\n var functionalReplace = isCallable(replaceValue);\n if (!functionalReplace) replaceValue = toString(replaceValue);\n\n var global = rx.global;\n if (global) {\n var fullUnicode = rx.unicode;\n rx.lastIndex = 0;\n }\n var results = [];\n while (true) {\n var result = regExpExec(rx, S);\n if (result === null) break;\n\n push(results, result);\n if (!global) break;\n\n var matchStr = toString(result[0]);\n if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);\n }\n\n var accumulatedResult = '';\n var nextSourcePosition = 0;\n for (var i = 0; i < results.length; i++) {\n result = results[i];\n\n var matched = toString(result[0]);\n var position = max(min(toIntegerOrInfinity(result.index), S.length), 0);\n var captures = [];\n // NOTE: This is equivalent to\n // captures = result.slice(1).map(maybeToString)\n // but for some reason `nativeSlice.call(result, 1, result.length)` (called in\n // the slice polyfill when slicing native arrays) \"doesn't work\" in safari 9 and\n // causes a crash (https://pastebin.com/N21QzeQA) when trying to debug it.\n for (var j = 1; j < result.length; j++) push(captures, maybeToString(result[j]));\n var namedCaptures = result.groups;\n if (functionalReplace) {\n var replacerArgs = concat([matched], captures, position, S);\n if (namedCaptures !== undefined) push(replacerArgs, namedCaptures);\n var replacement = toString(apply(replaceValue, undefined, replacerArgs));\n } else {\n replacement = getSubstitution(matched, S, position, captures, namedCaptures, replaceValue);\n }\n if (position >= nextSourcePosition) {\n accumulatedResult += stringSlice(S, nextSourcePosition, position) + replacement;\n nextSourcePosition = position + matched.length;\n }\n }\n return accumulatedResult + stringSlice(S, nextSourcePosition);\n }\n ];\n}, !REPLACE_SUPPORTS_NAMED_GROUPS || !REPLACE_KEEPS_$0 || REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE);\n","'use strict';\nvar call = require('../internals/function-call');\nvar fixRegExpWellKnownSymbolLogic = require('../internals/fix-regexp-well-known-symbol-logic');\nvar anObject = require('../internals/an-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar sameValue = require('../internals/same-value');\nvar toString = require('../internals/to-string');\nvar getMethod = require('../internals/get-method');\nvar regExpExec = require('../internals/regexp-exec-abstract');\n\n// @@search logic\nfixRegExpWellKnownSymbolLogic('search', function (SEARCH, nativeSearch, maybeCallNative) {\n return [\n // `String.prototype.search` method\n // https://tc39.es/ecma262/#sec-string.prototype.search\n function search(regexp) {\n var O = requireObjectCoercible(this);\n var searcher = regexp == undefined ? undefined : getMethod(regexp, SEARCH);\n return searcher ? call(searcher, regexp, O) : new RegExp(regexp)[SEARCH](toString(O));\n },\n // `RegExp.prototype[@@search]` method\n // https://tc39.es/ecma262/#sec-regexp.prototype-@@search\n function (string) {\n var rx = anObject(this);\n var S = toString(string);\n var res = maybeCallNative(nativeSearch, rx, S);\n\n if (res.done) return res.value;\n\n var previousLastIndex = rx.lastIndex;\n if (!sameValue(previousLastIndex, 0)) rx.lastIndex = 0;\n var result = regExpExec(rx, S);\n if (!sameValue(rx.lastIndex, previousLastIndex)) rx.lastIndex = previousLastIndex;\n return result === null ? -1 : result.index;\n }\n ];\n});\n","'use strict';\nvar apply = require('../internals/function-apply');\nvar call = require('../internals/function-call');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fixRegExpWellKnownSymbolLogic = require('../internals/fix-regexp-well-known-symbol-logic');\nvar isRegExp = require('../internals/is-regexp');\nvar anObject = require('../internals/an-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar speciesConstructor = require('../internals/species-constructor');\nvar advanceStringIndex = require('../internals/advance-string-index');\nvar toLength = require('../internals/to-length');\nvar toString = require('../internals/to-string');\nvar getMethod = require('../internals/get-method');\nvar arraySlice = require('../internals/array-slice-simple');\nvar callRegExpExec = require('../internals/regexp-exec-abstract');\nvar regexpExec = require('../internals/regexp-exec');\nvar stickyHelpers = require('../internals/regexp-sticky-helpers');\nvar fails = require('../internals/fails');\n\nvar UNSUPPORTED_Y = stickyHelpers.UNSUPPORTED_Y;\nvar MAX_UINT32 = 0xFFFFFFFF;\nvar min = Math.min;\nvar $push = [].push;\nvar exec = uncurryThis(/./.exec);\nvar push = uncurryThis($push);\nvar stringSlice = uncurryThis(''.slice);\n\n// Chrome 51 has a buggy \"split\" implementation when RegExp#exec !== nativeExec\n// Weex JS has frozen built-in prototypes, so use try / catch wrapper\nvar SPLIT_WORKS_WITH_OVERWRITTEN_EXEC = !fails(function () {\n // eslint-disable-next-line regexp/no-empty-group -- required for testing\n var re = /(?:)/;\n var originalExec = re.exec;\n re.exec = function () { return originalExec.apply(this, arguments); };\n var result = 'ab'.split(re);\n return result.length !== 2 || result[0] !== 'a' || result[1] !== 'b';\n});\n\n// @@split logic\nfixRegExpWellKnownSymbolLogic('split', function (SPLIT, nativeSplit, maybeCallNative) {\n var internalSplit;\n if (\n 'abbc'.split(/(b)*/)[1] == 'c' ||\n // eslint-disable-next-line regexp/no-empty-group -- required for testing\n 'test'.split(/(?:)/, -1).length != 4 ||\n 'ab'.split(/(?:ab)*/).length != 2 ||\n '.'.split(/(.?)(.?)/).length != 4 ||\n // eslint-disable-next-line regexp/no-empty-capturing-group, regexp/no-empty-group -- required for testing\n '.'.split(/()()/).length > 1 ||\n ''.split(/.?/).length\n ) {\n // based on es5-shim implementation, need to rework it\n internalSplit = function (separator, limit) {\n var string = toString(requireObjectCoercible(this));\n var lim = limit === undefined ? MAX_UINT32 : limit >>> 0;\n if (lim === 0) return [];\n if (separator === undefined) return [string];\n // If `separator` is not a regex, use native split\n if (!isRegExp(separator)) {\n return call(nativeSplit, string, separator, lim);\n }\n var output = [];\n var flags = (separator.ignoreCase ? 'i' : '') +\n (separator.multiline ? 'm' : '') +\n (separator.unicode ? 'u' : '') +\n (separator.sticky ? 'y' : '');\n var lastLastIndex = 0;\n // Make `global` and avoid `lastIndex` issues by working with a copy\n var separatorCopy = new RegExp(separator.source, flags + 'g');\n var match, lastIndex, lastLength;\n while (match = call(regexpExec, separatorCopy, string)) {\n lastIndex = separatorCopy.lastIndex;\n if (lastIndex > lastLastIndex) {\n push(output, stringSlice(string, lastLastIndex, match.index));\n if (match.length > 1 && match.index < string.length) apply($push, output, arraySlice(match, 1));\n lastLength = match[0].length;\n lastLastIndex = lastIndex;\n if (output.length >= lim) break;\n }\n if (separatorCopy.lastIndex === match.index) separatorCopy.lastIndex++; // Avoid an infinite loop\n }\n if (lastLastIndex === string.length) {\n if (lastLength || !exec(separatorCopy, '')) push(output, '');\n } else push(output, stringSlice(string, lastLastIndex));\n return output.length > lim ? arraySlice(output, 0, lim) : output;\n };\n // Chakra, V8\n } else if ('0'.split(undefined, 0).length) {\n internalSplit = function (separator, limit) {\n return separator === undefined && limit === 0 ? [] : call(nativeSplit, this, separator, limit);\n };\n } else internalSplit = nativeSplit;\n\n return [\n // `String.prototype.split` method\n // https://tc39.es/ecma262/#sec-string.prototype.split\n function split(separator, limit) {\n var O = requireObjectCoercible(this);\n var splitter = separator == undefined ? undefined : getMethod(separator, SPLIT);\n return splitter\n ? call(splitter, separator, O, limit)\n : call(internalSplit, toString(O), separator, limit);\n },\n // `RegExp.prototype[@@split]` method\n // https://tc39.es/ecma262/#sec-regexp.prototype-@@split\n //\n // NOTE: This cannot be properly polyfilled in engines that don't support\n // the 'y' flag.\n function (string, limit) {\n var rx = anObject(this);\n var S = toString(string);\n var res = maybeCallNative(internalSplit, rx, S, limit, internalSplit !== nativeSplit);\n\n if (res.done) return res.value;\n\n var C = speciesConstructor(rx, RegExp);\n\n var unicodeMatching = rx.unicode;\n var flags = (rx.ignoreCase ? 'i' : '') +\n (rx.multiline ? 'm' : '') +\n (rx.unicode ? 'u' : '') +\n (UNSUPPORTED_Y ? 'g' : 'y');\n\n // ^(? + rx + ) is needed, in combination with some S slicing, to\n // simulate the 'y' flag.\n var splitter = new C(UNSUPPORTED_Y ? '^(?:' + rx.source + ')' : rx, flags);\n var lim = limit === undefined ? MAX_UINT32 : limit >>> 0;\n if (lim === 0) return [];\n if (S.length === 0) return callRegExpExec(splitter, S) === null ? [S] : [];\n var p = 0;\n var q = 0;\n var A = [];\n while (q < S.length) {\n splitter.lastIndex = UNSUPPORTED_Y ? 0 : q;\n var z = callRegExpExec(splitter, UNSUPPORTED_Y ? stringSlice(S, q) : S);\n var e;\n if (\n z === null ||\n (e = min(toLength(splitter.lastIndex + (UNSUPPORTED_Y ? q : 0)), S.length)) === p\n ) {\n q = advanceStringIndex(S, q, unicodeMatching);\n } else {\n push(A, stringSlice(S, p, q));\n if (A.length === lim) return A;\n for (var i = 1; i <= z.length - 1; i++) {\n push(A, z[i]);\n if (A.length === lim) return A;\n }\n q = p = e;\n }\n }\n push(A, stringSlice(S, p));\n return A;\n }\n ];\n}, !SPLIT_WORKS_WITH_OVERWRITTEN_EXEC, UNSUPPORTED_Y);\n","'use strict';\nvar $ = require('../internals/export');\nvar $trim = require('../internals/string-trim').trim;\nvar forcedStringTrimMethod = require('../internals/string-trim-forced');\n\n// `String.prototype.trim` method\n// https://tc39.es/ecma262/#sec-string.prototype.trim\n$({ target: 'String', proto: true, forced: forcedStringTrimMethod('trim') }, {\n trim: function trim() {\n return $trim(this);\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar global = require('../internals/global');\nvar call = require('../internals/function-call');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar IS_PURE = require('../internals/is-pure');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar NATIVE_SYMBOL = require('../internals/native-symbol');\nvar fails = require('../internals/fails');\nvar hasOwn = require('../internals/has-own-property');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar anObject = require('../internals/an-object');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toPropertyKey = require('../internals/to-property-key');\nvar $toString = require('../internals/to-string');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar nativeObjectCreate = require('../internals/object-create');\nvar objectKeys = require('../internals/object-keys');\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertyNamesExternal = require('../internals/object-get-own-property-names-external');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar definePropertyModule = require('../internals/object-define-property');\nvar definePropertiesModule = require('../internals/object-define-properties');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar shared = require('../internals/shared');\nvar sharedKey = require('../internals/shared-key');\nvar hiddenKeys = require('../internals/hidden-keys');\nvar uid = require('../internals/uid');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar wrappedWellKnownSymbolModule = require('../internals/well-known-symbol-wrapped');\nvar defineWellKnownSymbol = require('../internals/define-well-known-symbol');\nvar defineSymbolToPrimitive = require('../internals/symbol-define-to-primitive');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar InternalStateModule = require('../internals/internal-state');\nvar $forEach = require('../internals/array-iteration').forEach;\n\nvar HIDDEN = sharedKey('hidden');\nvar SYMBOL = 'Symbol';\nvar PROTOTYPE = 'prototype';\n\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(SYMBOL);\n\nvar ObjectPrototype = Object[PROTOTYPE];\nvar $Symbol = global.Symbol;\nvar SymbolPrototype = $Symbol && $Symbol[PROTOTYPE];\nvar TypeError = global.TypeError;\nvar QObject = global.QObject;\nvar nativeGetOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;\nvar nativeDefineProperty = definePropertyModule.f;\nvar nativeGetOwnPropertyNames = getOwnPropertyNamesExternal.f;\nvar nativePropertyIsEnumerable = propertyIsEnumerableModule.f;\nvar push = uncurryThis([].push);\n\nvar AllSymbols = shared('symbols');\nvar ObjectPrototypeSymbols = shared('op-symbols');\nvar WellKnownSymbolsStore = shared('wks');\n\n// Don't use setters in Qt Script, https://github.com/zloirock/core-js/issues/173\nvar USE_SETTER = !QObject || !QObject[PROTOTYPE] || !QObject[PROTOTYPE].findChild;\n\n// fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687\nvar setSymbolDescriptor = DESCRIPTORS && fails(function () {\n return nativeObjectCreate(nativeDefineProperty({}, 'a', {\n get: function () { return nativeDefineProperty(this, 'a', { value: 7 }).a; }\n })).a != 7;\n}) ? function (O, P, Attributes) {\n var ObjectPrototypeDescriptor = nativeGetOwnPropertyDescriptor(ObjectPrototype, P);\n if (ObjectPrototypeDescriptor) delete ObjectPrototype[P];\n nativeDefineProperty(O, P, Attributes);\n if (ObjectPrototypeDescriptor && O !== ObjectPrototype) {\n nativeDefineProperty(ObjectPrototype, P, ObjectPrototypeDescriptor);\n }\n} : nativeDefineProperty;\n\nvar wrap = function (tag, description) {\n var symbol = AllSymbols[tag] = nativeObjectCreate(SymbolPrototype);\n setInternalState(symbol, {\n type: SYMBOL,\n tag: tag,\n description: description\n });\n if (!DESCRIPTORS) symbol.description = description;\n return symbol;\n};\n\nvar $defineProperty = function defineProperty(O, P, Attributes) {\n if (O === ObjectPrototype) $defineProperty(ObjectPrototypeSymbols, P, Attributes);\n anObject(O);\n var key = toPropertyKey(P);\n anObject(Attributes);\n if (hasOwn(AllSymbols, key)) {\n if (!Attributes.enumerable) {\n if (!hasOwn(O, HIDDEN)) nativeDefineProperty(O, HIDDEN, createPropertyDescriptor(1, {}));\n O[HIDDEN][key] = true;\n } else {\n if (hasOwn(O, HIDDEN) && O[HIDDEN][key]) O[HIDDEN][key] = false;\n Attributes = nativeObjectCreate(Attributes, { enumerable: createPropertyDescriptor(0, false) });\n } return setSymbolDescriptor(O, key, Attributes);\n } return nativeDefineProperty(O, key, Attributes);\n};\n\nvar $defineProperties = function defineProperties(O, Properties) {\n anObject(O);\n var properties = toIndexedObject(Properties);\n var keys = objectKeys(properties).concat($getOwnPropertySymbols(properties));\n $forEach(keys, function (key) {\n if (!DESCRIPTORS || call($propertyIsEnumerable, properties, key)) $defineProperty(O, key, properties[key]);\n });\n return O;\n};\n\nvar $create = function create(O, Properties) {\n return Properties === undefined ? nativeObjectCreate(O) : $defineProperties(nativeObjectCreate(O), Properties);\n};\n\nvar $propertyIsEnumerable = function propertyIsEnumerable(V) {\n var P = toPropertyKey(V);\n var enumerable = call(nativePropertyIsEnumerable, this, P);\n if (this === ObjectPrototype && hasOwn(AllSymbols, P) && !hasOwn(ObjectPrototypeSymbols, P)) return false;\n return enumerable || !hasOwn(this, P) || !hasOwn(AllSymbols, P) || hasOwn(this, HIDDEN) && this[HIDDEN][P]\n ? enumerable : true;\n};\n\nvar $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(O, P) {\n var it = toIndexedObject(O);\n var key = toPropertyKey(P);\n if (it === ObjectPrototype && hasOwn(AllSymbols, key) && !hasOwn(ObjectPrototypeSymbols, key)) return;\n var descriptor = nativeGetOwnPropertyDescriptor(it, key);\n if (descriptor && hasOwn(AllSymbols, key) && !(hasOwn(it, HIDDEN) && it[HIDDEN][key])) {\n descriptor.enumerable = true;\n }\n return descriptor;\n};\n\nvar $getOwnPropertyNames = function getOwnPropertyNames(O) {\n var names = nativeGetOwnPropertyNames(toIndexedObject(O));\n var result = [];\n $forEach(names, function (key) {\n if (!hasOwn(AllSymbols, key) && !hasOwn(hiddenKeys, key)) push(result, key);\n });\n return result;\n};\n\nvar $getOwnPropertySymbols = function (O) {\n var IS_OBJECT_PROTOTYPE = O === ObjectPrototype;\n var names = nativeGetOwnPropertyNames(IS_OBJECT_PROTOTYPE ? ObjectPrototypeSymbols : toIndexedObject(O));\n var result = [];\n $forEach(names, function (key) {\n if (hasOwn(AllSymbols, key) && (!IS_OBJECT_PROTOTYPE || hasOwn(ObjectPrototype, key))) {\n push(result, AllSymbols[key]);\n }\n });\n return result;\n};\n\n// `Symbol` constructor\n// https://tc39.es/ecma262/#sec-symbol-constructor\nif (!NATIVE_SYMBOL) {\n $Symbol = function Symbol() {\n if (isPrototypeOf(SymbolPrototype, this)) throw TypeError('Symbol is not a constructor');\n var description = !arguments.length || arguments[0] === undefined ? undefined : $toString(arguments[0]);\n var tag = uid(description);\n var setter = function (value) {\n if (this === ObjectPrototype) call(setter, ObjectPrototypeSymbols, value);\n if (hasOwn(this, HIDDEN) && hasOwn(this[HIDDEN], tag)) this[HIDDEN][tag] = false;\n setSymbolDescriptor(this, tag, createPropertyDescriptor(1, value));\n };\n if (DESCRIPTORS && USE_SETTER) setSymbolDescriptor(ObjectPrototype, tag, { configurable: true, set: setter });\n return wrap(tag, description);\n };\n\n SymbolPrototype = $Symbol[PROTOTYPE];\n\n defineBuiltIn(SymbolPrototype, 'toString', function toString() {\n return getInternalState(this).tag;\n });\n\n defineBuiltIn($Symbol, 'withoutSetter', function (description) {\n return wrap(uid(description), description);\n });\n\n propertyIsEnumerableModule.f = $propertyIsEnumerable;\n definePropertyModule.f = $defineProperty;\n definePropertiesModule.f = $defineProperties;\n getOwnPropertyDescriptorModule.f = $getOwnPropertyDescriptor;\n getOwnPropertyNamesModule.f = getOwnPropertyNamesExternal.f = $getOwnPropertyNames;\n getOwnPropertySymbolsModule.f = $getOwnPropertySymbols;\n\n wrappedWellKnownSymbolModule.f = function (name) {\n return wrap(wellKnownSymbol(name), name);\n };\n\n if (DESCRIPTORS) {\n // https://github.com/tc39/proposal-Symbol-description\n nativeDefineProperty(SymbolPrototype, 'description', {\n configurable: true,\n get: function description() {\n return getInternalState(this).description;\n }\n });\n if (!IS_PURE) {\n defineBuiltIn(ObjectPrototype, 'propertyIsEnumerable', $propertyIsEnumerable, { unsafe: true });\n }\n }\n}\n\n$({ global: true, constructor: true, wrap: true, forced: !NATIVE_SYMBOL, sham: !NATIVE_SYMBOL }, {\n Symbol: $Symbol\n});\n\n$forEach(objectKeys(WellKnownSymbolsStore), function (name) {\n defineWellKnownSymbol(name);\n});\n\n$({ target: SYMBOL, stat: true, forced: !NATIVE_SYMBOL }, {\n useSetter: function () { USE_SETTER = true; },\n useSimple: function () { USE_SETTER = false; }\n});\n\n$({ target: 'Object', stat: true, forced: !NATIVE_SYMBOL, sham: !DESCRIPTORS }, {\n // `Object.create` method\n // https://tc39.es/ecma262/#sec-object.create\n create: $create,\n // `Object.defineProperty` method\n // https://tc39.es/ecma262/#sec-object.defineproperty\n defineProperty: $defineProperty,\n // `Object.defineProperties` method\n // https://tc39.es/ecma262/#sec-object.defineproperties\n defineProperties: $defineProperties,\n // `Object.getOwnPropertyDescriptor` method\n // https://tc39.es/ecma262/#sec-object.getownpropertydescriptors\n getOwnPropertyDescriptor: $getOwnPropertyDescriptor\n});\n\n$({ target: 'Object', stat: true, forced: !NATIVE_SYMBOL }, {\n // `Object.getOwnPropertyNames` method\n // https://tc39.es/ecma262/#sec-object.getownpropertynames\n getOwnPropertyNames: $getOwnPropertyNames\n});\n\n// `Symbol.prototype[@@toPrimitive]` method\n// https://tc39.es/ecma262/#sec-symbol.prototype-@@toprimitive\ndefineSymbolToPrimitive();\n\n// `Symbol.prototype[@@toStringTag]` property\n// https://tc39.es/ecma262/#sec-symbol.prototype-@@tostringtag\nsetToStringTag($Symbol, SYMBOL);\n\nhiddenKeys[HIDDEN] = true;\n","var $ = require('../internals/export');\nvar getBuiltIn = require('../internals/get-built-in');\nvar hasOwn = require('../internals/has-own-property');\nvar toString = require('../internals/to-string');\nvar shared = require('../internals/shared');\nvar NATIVE_SYMBOL_REGISTRY = require('../internals/native-symbol-registry');\n\nvar StringToSymbolRegistry = shared('string-to-symbol-registry');\nvar SymbolToStringRegistry = shared('symbol-to-string-registry');\n\n// `Symbol.for` method\n// https://tc39.es/ecma262/#sec-symbol.for\n$({ target: 'Symbol', stat: true, forced: !NATIVE_SYMBOL_REGISTRY }, {\n 'for': function (key) {\n var string = toString(key);\n if (hasOwn(StringToSymbolRegistry, string)) return StringToSymbolRegistry[string];\n var symbol = getBuiltIn('Symbol')(string);\n StringToSymbolRegistry[string] = symbol;\n SymbolToStringRegistry[symbol] = string;\n return symbol;\n }\n});\n","// TODO: Remove this module from `core-js@4` since it's split to modules listed below\nrequire('../modules/es.symbol.constructor');\nrequire('../modules/es.symbol.for');\nrequire('../modules/es.symbol.key-for');\nrequire('../modules/es.json.stringify');\nrequire('../modules/es.object.get-own-property-symbols');\n","var $ = require('../internals/export');\nvar hasOwn = require('../internals/has-own-property');\nvar isSymbol = require('../internals/is-symbol');\nvar tryToString = require('../internals/try-to-string');\nvar shared = require('../internals/shared');\nvar NATIVE_SYMBOL_REGISTRY = require('../internals/native-symbol-registry');\n\nvar SymbolToStringRegistry = shared('symbol-to-string-registry');\n\n// `Symbol.keyFor` method\n// https://tc39.es/ecma262/#sec-symbol.keyfor\n$({ target: 'Symbol', stat: true, forced: !NATIVE_SYMBOL_REGISTRY }, {\n keyFor: function keyFor(sym) {\n if (!isSymbol(sym)) throw TypeError(tryToString(sym) + ' is not a symbol');\n if (hasOwn(SymbolToStringRegistry, sym)) return SymbolToStringRegistry[sym];\n }\n});\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\nvar $ArrayCopyWithin = require('../internals/array-copy-within');\n\nvar u$ArrayCopyWithin = uncurryThis($ArrayCopyWithin);\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\n\n// `%TypedArray%.prototype.copyWithin` method\n// https://tc39.es/ecma262/#sec-%typedarray%.prototype.copywithin\nexportTypedArrayMethod('copyWithin', function copyWithin(target, start /* , end */) {\n return u$ArrayCopyWithin(aTypedArray(this), target, start, arguments.length > 2 ? arguments[2] : undefined);\n});\n","'use strict';\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\nvar $every = require('../internals/array-iteration').every;\n\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\n\n// `%TypedArray%.prototype.every` method\n// https://tc39.es/ecma262/#sec-%typedarray%.prototype.every\nexportTypedArrayMethod('every', function every(callbackfn /* , thisArg */) {\n return $every(aTypedArray(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n});\n","'use strict';\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\nvar $fill = require('../internals/array-fill');\nvar toBigInt = require('../internals/to-big-int');\nvar classof = require('../internals/classof');\nvar call = require('../internals/function-call');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\n\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\nvar slice = uncurryThis(''.slice);\n\n// V8 ~ Chrome < 59, Safari < 14.1, FF < 55, Edge <=18\nvar CONVERSION_BUG = fails(function () {\n var count = 0;\n // eslint-disable-next-line es-x/no-typed-arrays -- safe\n new Int8Array(2).fill({ valueOf: function () { return count++; } });\n return count !== 1;\n});\n\n// `%TypedArray%.prototype.fill` method\n// https://tc39.es/ecma262/#sec-%typedarray%.prototype.fill\nexportTypedArrayMethod('fill', function fill(value /* , start, end */) {\n var length = arguments.length;\n aTypedArray(this);\n var actualValue = slice(classof(this), 0, 3) === 'Big' ? toBigInt(value) : +value;\n return call($fill, this, actualValue, length > 1 ? arguments[1] : undefined, length > 2 ? arguments[2] : undefined);\n}, CONVERSION_BUG);\n","'use strict';\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\nvar $filter = require('../internals/array-iteration').filter;\nvar fromSpeciesAndList = require('../internals/typed-array-from-species-and-list');\n\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\n\n// `%TypedArray%.prototype.filter` method\n// https://tc39.es/ecma262/#sec-%typedarray%.prototype.filter\nexportTypedArrayMethod('filter', function filter(callbackfn /* , thisArg */) {\n var list = $filter(aTypedArray(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n return fromSpeciesAndList(this, list);\n});\n","'use strict';\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\nvar $findIndex = require('../internals/array-iteration').findIndex;\n\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\n\n// `%TypedArray%.prototype.findIndex` method\n// https://tc39.es/ecma262/#sec-%typedarray%.prototype.findindex\nexportTypedArrayMethod('findIndex', function findIndex(predicate /* , thisArg */) {\n return $findIndex(aTypedArray(this), predicate, arguments.length > 1 ? arguments[1] : undefined);\n});\n","'use strict';\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\nvar $find = require('../internals/array-iteration').find;\n\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\n\n// `%TypedArray%.prototype.find` method\n// https://tc39.es/ecma262/#sec-%typedarray%.prototype.find\nexportTypedArrayMethod('find', function find(predicate /* , thisArg */) {\n return $find(aTypedArray(this), predicate, arguments.length > 1 ? arguments[1] : undefined);\n});\n","'use strict';\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\nvar $forEach = require('../internals/array-iteration').forEach;\n\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\n\n// `%TypedArray%.prototype.forEach` method\n// https://tc39.es/ecma262/#sec-%typedarray%.prototype.foreach\nexportTypedArrayMethod('forEach', function forEach(callbackfn /* , thisArg */) {\n $forEach(aTypedArray(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n});\n","'use strict';\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\nvar $includes = require('../internals/array-includes').includes;\n\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\n\n// `%TypedArray%.prototype.includes` method\n// https://tc39.es/ecma262/#sec-%typedarray%.prototype.includes\nexportTypedArrayMethod('includes', function includes(searchElement /* , fromIndex */) {\n return $includes(aTypedArray(this), searchElement, arguments.length > 1 ? arguments[1] : undefined);\n});\n","'use strict';\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\nvar $indexOf = require('../internals/array-includes').indexOf;\n\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\n\n// `%TypedArray%.prototype.indexOf` method\n// https://tc39.es/ecma262/#sec-%typedarray%.prototype.indexof\nexportTypedArrayMethod('indexOf', function indexOf(searchElement /* , fromIndex */) {\n return $indexOf(aTypedArray(this), searchElement, arguments.length > 1 ? arguments[1] : undefined);\n});\n","'use strict';\nvar global = require('../internals/global');\nvar fails = require('../internals/fails');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\nvar ArrayIterators = require('../modules/es.array.iterator');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar Uint8Array = global.Uint8Array;\nvar arrayValues = uncurryThis(ArrayIterators.values);\nvar arrayKeys = uncurryThis(ArrayIterators.keys);\nvar arrayEntries = uncurryThis(ArrayIterators.entries);\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\nvar TypedArrayPrototype = Uint8Array && Uint8Array.prototype;\n\nvar GENERIC = !fails(function () {\n TypedArrayPrototype[ITERATOR].call([1]);\n});\n\nvar ITERATOR_IS_VALUES = !!TypedArrayPrototype\n && TypedArrayPrototype.values\n && TypedArrayPrototype[ITERATOR] === TypedArrayPrototype.values\n && TypedArrayPrototype.values.name === 'values';\n\nvar typedArrayValues = function values() {\n return arrayValues(aTypedArray(this));\n};\n\n// `%TypedArray%.prototype.entries` method\n// https://tc39.es/ecma262/#sec-%typedarray%.prototype.entries\nexportTypedArrayMethod('entries', function entries() {\n return arrayEntries(aTypedArray(this));\n}, GENERIC);\n// `%TypedArray%.prototype.keys` method\n// https://tc39.es/ecma262/#sec-%typedarray%.prototype.keys\nexportTypedArrayMethod('keys', function keys() {\n return arrayKeys(aTypedArray(this));\n}, GENERIC);\n// `%TypedArray%.prototype.values` method\n// https://tc39.es/ecma262/#sec-%typedarray%.prototype.values\nexportTypedArrayMethod('values', typedArrayValues, GENERIC || !ITERATOR_IS_VALUES, { name: 'values' });\n// `%TypedArray%.prototype[@@iterator]` method\n// https://tc39.es/ecma262/#sec-%typedarray%.prototype-@@iterator\nexportTypedArrayMethod(ITERATOR, typedArrayValues, GENERIC || !ITERATOR_IS_VALUES, { name: 'values' });\n","'use strict';\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\nvar $join = uncurryThis([].join);\n\n// `%TypedArray%.prototype.join` method\n// https://tc39.es/ecma262/#sec-%typedarray%.prototype.join\nexportTypedArrayMethod('join', function join(separator) {\n return $join(aTypedArray(this), separator);\n});\n","'use strict';\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\nvar apply = require('../internals/function-apply');\nvar $lastIndexOf = require('../internals/array-last-index-of');\n\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\n\n// `%TypedArray%.prototype.lastIndexOf` method\n// https://tc39.es/ecma262/#sec-%typedarray%.prototype.lastindexof\nexportTypedArrayMethod('lastIndexOf', function lastIndexOf(searchElement /* , fromIndex */) {\n var length = arguments.length;\n return apply($lastIndexOf, aTypedArray(this), length > 1 ? [searchElement, arguments[1]] : [searchElement]);\n});\n","'use strict';\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\nvar $map = require('../internals/array-iteration').map;\nvar typedArraySpeciesConstructor = require('../internals/typed-array-species-constructor');\n\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\n\n// `%TypedArray%.prototype.map` method\n// https://tc39.es/ecma262/#sec-%typedarray%.prototype.map\nexportTypedArrayMethod('map', function map(mapfn /* , thisArg */) {\n return $map(aTypedArray(this), mapfn, arguments.length > 1 ? arguments[1] : undefined, function (O, length) {\n return new (typedArraySpeciesConstructor(O))(length);\n });\n});\n","'use strict';\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\nvar $reduceRight = require('../internals/array-reduce').right;\n\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\n\n// `%TypedArray%.prototype.reduceRight` method\n// https://tc39.es/ecma262/#sec-%typedarray%.prototype.reduceright\nexportTypedArrayMethod('reduceRight', function reduceRight(callbackfn /* , initialValue */) {\n var length = arguments.length;\n return $reduceRight(aTypedArray(this), callbackfn, length, length > 1 ? arguments[1] : undefined);\n});\n","'use strict';\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\nvar $reduce = require('../internals/array-reduce').left;\n\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\n\n// `%TypedArray%.prototype.reduce` method\n// https://tc39.es/ecma262/#sec-%typedarray%.prototype.reduce\nexportTypedArrayMethod('reduce', function reduce(callbackfn /* , initialValue */) {\n var length = arguments.length;\n return $reduce(aTypedArray(this), callbackfn, length, length > 1 ? arguments[1] : undefined);\n});\n","'use strict';\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\n\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\nvar floor = Math.floor;\n\n// `%TypedArray%.prototype.reverse` method\n// https://tc39.es/ecma262/#sec-%typedarray%.prototype.reverse\nexportTypedArrayMethod('reverse', function reverse() {\n var that = this;\n var length = aTypedArray(that).length;\n var middle = floor(length / 2);\n var index = 0;\n var value;\n while (index < middle) {\n value = that[index];\n that[index++] = that[--length];\n that[length] = value;\n } return that;\n});\n","'use strict';\nvar global = require('../internals/global');\nvar call = require('../internals/function-call');\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar toOffset = require('../internals/to-offset');\nvar toIndexedObject = require('../internals/to-object');\nvar fails = require('../internals/fails');\n\nvar RangeError = global.RangeError;\nvar Int8Array = global.Int8Array;\nvar Int8ArrayPrototype = Int8Array && Int8Array.prototype;\nvar $set = Int8ArrayPrototype && Int8ArrayPrototype.set;\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\n\nvar WORKS_WITH_OBJECTS_AND_GEERIC_ON_TYPED_ARRAYS = !fails(function () {\n // eslint-disable-next-line es-x/no-typed-arrays -- required for testing\n var array = new Uint8ClampedArray(2);\n call($set, array, { length: 1, 0: 3 }, 1);\n return array[1] !== 3;\n});\n\n// https://bugs.chromium.org/p/v8/issues/detail?id=11294 and other\nvar TO_OBJECT_BUG = WORKS_WITH_OBJECTS_AND_GEERIC_ON_TYPED_ARRAYS && ArrayBufferViewCore.NATIVE_ARRAY_BUFFER_VIEWS && fails(function () {\n var array = new Int8Array(2);\n array.set(1);\n array.set('2', 1);\n return array[0] !== 0 || array[1] !== 2;\n});\n\n// `%TypedArray%.prototype.set` method\n// https://tc39.es/ecma262/#sec-%typedarray%.prototype.set\nexportTypedArrayMethod('set', function set(arrayLike /* , offset */) {\n aTypedArray(this);\n var offset = toOffset(arguments.length > 1 ? arguments[1] : undefined, 1);\n var src = toIndexedObject(arrayLike);\n if (WORKS_WITH_OBJECTS_AND_GEERIC_ON_TYPED_ARRAYS) return call($set, this, src, offset);\n var length = this.length;\n var len = lengthOfArrayLike(src);\n var index = 0;\n if (len + offset > length) throw RangeError('Wrong length');\n while (index < len) this[offset + index] = src[index++];\n}, !WORKS_WITH_OBJECTS_AND_GEERIC_ON_TYPED_ARRAYS || TO_OBJECT_BUG);\n","'use strict';\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\nvar typedArraySpeciesConstructor = require('../internals/typed-array-species-constructor');\nvar fails = require('../internals/fails');\nvar arraySlice = require('../internals/array-slice');\n\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\n\nvar FORCED = fails(function () {\n // eslint-disable-next-line es-x/no-typed-arrays -- required for testing\n new Int8Array(1).slice();\n});\n\n// `%TypedArray%.prototype.slice` method\n// https://tc39.es/ecma262/#sec-%typedarray%.prototype.slice\nexportTypedArrayMethod('slice', function slice(start, end) {\n var list = arraySlice(aTypedArray(this), start, end);\n var C = typedArraySpeciesConstructor(this);\n var index = 0;\n var length = list.length;\n var result = new C(length);\n while (length > index) result[index] = list[index++];\n return result;\n}, FORCED);\n","'use strict';\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\nvar $some = require('../internals/array-iteration').some;\n\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\n\n// `%TypedArray%.prototype.some` method\n// https://tc39.es/ecma262/#sec-%typedarray%.prototype.some\nexportTypedArrayMethod('some', function some(callbackfn /* , thisArg */) {\n return $some(aTypedArray(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n});\n","'use strict';\nvar global = require('../internals/global');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar aCallable = require('../internals/a-callable');\nvar internalSort = require('../internals/array-sort');\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\nvar FF = require('../internals/engine-ff-version');\nvar IE_OR_EDGE = require('../internals/engine-is-ie-or-edge');\nvar V8 = require('../internals/engine-v8-version');\nvar WEBKIT = require('../internals/engine-webkit-version');\n\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\nvar Uint16Array = global.Uint16Array;\nvar un$Sort = Uint16Array && uncurryThis(Uint16Array.prototype.sort);\n\n// WebKit\nvar ACCEPT_INCORRECT_ARGUMENTS = !!un$Sort && !(fails(function () {\n un$Sort(new Uint16Array(2), null);\n}) && fails(function () {\n un$Sort(new Uint16Array(2), {});\n}));\n\nvar STABLE_SORT = !!un$Sort && !fails(function () {\n // feature detection can be too slow, so check engines versions\n if (V8) return V8 < 74;\n if (FF) return FF < 67;\n if (IE_OR_EDGE) return true;\n if (WEBKIT) return WEBKIT < 602;\n\n var array = new Uint16Array(516);\n var expected = Array(516);\n var index, mod;\n\n for (index = 0; index < 516; index++) {\n mod = index % 4;\n array[index] = 515 - index;\n expected[index] = index - 2 * mod + 3;\n }\n\n un$Sort(array, function (a, b) {\n return (a / 4 | 0) - (b / 4 | 0);\n });\n\n for (index = 0; index < 516; index++) {\n if (array[index] !== expected[index]) return true;\n }\n});\n\nvar getSortCompare = function (comparefn) {\n return function (x, y) {\n if (comparefn !== undefined) return +comparefn(x, y) || 0;\n // eslint-disable-next-line no-self-compare -- NaN check\n if (y !== y) return -1;\n // eslint-disable-next-line no-self-compare -- NaN check\n if (x !== x) return 1;\n if (x === 0 && y === 0) return 1 / x > 0 && 1 / y < 0 ? 1 : -1;\n return x > y;\n };\n};\n\n// `%TypedArray%.prototype.sort` method\n// https://tc39.es/ecma262/#sec-%typedarray%.prototype.sort\nexportTypedArrayMethod('sort', function sort(comparefn) {\n if (comparefn !== undefined) aCallable(comparefn);\n if (STABLE_SORT) return un$Sort(this, comparefn);\n\n return internalSort(aTypedArray(this), getSortCompare(comparefn));\n}, !STABLE_SORT || ACCEPT_INCORRECT_ARGUMENTS);\n","'use strict';\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\nvar toLength = require('../internals/to-length');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar typedArraySpeciesConstructor = require('../internals/typed-array-species-constructor');\n\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\n\n// `%TypedArray%.prototype.subarray` method\n// https://tc39.es/ecma262/#sec-%typedarray%.prototype.subarray\nexportTypedArrayMethod('subarray', function subarray(begin, end) {\n var O = aTypedArray(this);\n var length = O.length;\n var beginIndex = toAbsoluteIndex(begin, length);\n var C = typedArraySpeciesConstructor(O);\n return new C(\n O.buffer,\n O.byteOffset + beginIndex * O.BYTES_PER_ELEMENT,\n toLength((end === undefined ? length : toAbsoluteIndex(end, length)) - beginIndex)\n );\n});\n","'use strict';\nvar global = require('../internals/global');\nvar apply = require('../internals/function-apply');\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\nvar fails = require('../internals/fails');\nvar arraySlice = require('../internals/array-slice');\n\nvar Int8Array = global.Int8Array;\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\nvar $toLocaleString = [].toLocaleString;\n\n// iOS Safari 6.x fails here\nvar TO_LOCALE_STRING_BUG = !!Int8Array && fails(function () {\n $toLocaleString.call(new Int8Array(1));\n});\n\nvar FORCED = fails(function () {\n return [1, 2].toLocaleString() != new Int8Array([1, 2]).toLocaleString();\n}) || !fails(function () {\n Int8Array.prototype.toLocaleString.call([1, 2]);\n});\n\n// `%TypedArray%.prototype.toLocaleString` method\n// https://tc39.es/ecma262/#sec-%typedarray%.prototype.tolocalestring\nexportTypedArrayMethod('toLocaleString', function toLocaleString() {\n return apply(\n $toLocaleString,\n TO_LOCALE_STRING_BUG ? arraySlice(aTypedArray(this)) : aTypedArray(this),\n arraySlice(arguments)\n );\n}, FORCED);\n","'use strict';\nvar exportTypedArrayMethod = require('../internals/array-buffer-view-core').exportTypedArrayMethod;\nvar fails = require('../internals/fails');\nvar global = require('../internals/global');\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nvar Uint8Array = global.Uint8Array;\nvar Uint8ArrayPrototype = Uint8Array && Uint8Array.prototype || {};\nvar arrayToString = [].toString;\nvar join = uncurryThis([].join);\n\nif (fails(function () { arrayToString.call({}); })) {\n arrayToString = function toString() {\n return join(this);\n };\n}\n\nvar IS_NOT_ARRAY_METHOD = Uint8ArrayPrototype.toString != arrayToString;\n\n// `%TypedArray%.prototype.toString` method\n// https://tc39.es/ecma262/#sec-%typedarray%.prototype.tostring\nexportTypedArrayMethod('toString', arrayToString, IS_NOT_ARRAY_METHOD);\n","var createTypedArrayConstructor = require('../internals/typed-array-constructor');\n\n// `Uint8Array` constructor\n// https://tc39.es/ecma262/#sec-typedarray-objects\ncreateTypedArrayConstructor('Uint8', function (init) {\n return function Uint8Array(data, byteOffset, length) {\n return init(this, data, byteOffset, length);\n };\n});\n","// TODO: Remove from `core-js@4`\nrequire('../modules/es.global-this');\n","var global = require('../internals/global');\nvar DOMIterables = require('../internals/dom-iterables');\nvar DOMTokenListPrototype = require('../internals/dom-token-list-prototype');\nvar forEach = require('../internals/array-for-each');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\n\nvar handlePrototype = function (CollectionPrototype) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype && CollectionPrototype.forEach !== forEach) try {\n createNonEnumerableProperty(CollectionPrototype, 'forEach', forEach);\n } catch (error) {\n CollectionPrototype.forEach = forEach;\n }\n};\n\nfor (var COLLECTION_NAME in DOMIterables) {\n if (DOMIterables[COLLECTION_NAME]) {\n handlePrototype(global[COLLECTION_NAME] && global[COLLECTION_NAME].prototype);\n }\n}\n\nhandlePrototype(DOMTokenListPrototype);\n","var global = require('../internals/global');\nvar DOMIterables = require('../internals/dom-iterables');\nvar DOMTokenListPrototype = require('../internals/dom-token-list-prototype');\nvar ArrayIteratorMethods = require('../modules/es.array.iterator');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar ArrayValues = ArrayIteratorMethods.values;\n\nvar handlePrototype = function (CollectionPrototype, COLLECTION_NAME) {\n if (CollectionPrototype) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype[ITERATOR] !== ArrayValues) try {\n createNonEnumerableProperty(CollectionPrototype, ITERATOR, ArrayValues);\n } catch (error) {\n CollectionPrototype[ITERATOR] = ArrayValues;\n }\n if (!CollectionPrototype[TO_STRING_TAG]) {\n createNonEnumerableProperty(CollectionPrototype, TO_STRING_TAG, COLLECTION_NAME);\n }\n if (DOMIterables[COLLECTION_NAME]) for (var METHOD_NAME in ArrayIteratorMethods) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype[METHOD_NAME] !== ArrayIteratorMethods[METHOD_NAME]) try {\n createNonEnumerableProperty(CollectionPrototype, METHOD_NAME, ArrayIteratorMethods[METHOD_NAME]);\n } catch (error) {\n CollectionPrototype[METHOD_NAME] = ArrayIteratorMethods[METHOD_NAME];\n }\n }\n }\n};\n\nfor (var COLLECTION_NAME in DOMIterables) {\n handlePrototype(global[COLLECTION_NAME] && global[COLLECTION_NAME].prototype, COLLECTION_NAME);\n}\n\nhandlePrototype(DOMTokenListPrototype, 'DOMTokenList');\n","'use strict';\n// TODO: in core-js@4, move /modules/ dependencies to public entries for better optimization by tools like `preset-env`\nrequire('../modules/es.array.iterator');\nvar $ = require('../internals/export');\nvar global = require('../internals/global');\nvar call = require('../internals/function-call');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar USE_NATIVE_URL = require('../internals/native-url');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar defineBuiltIns = require('../internals/define-built-ins');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar createIteratorConstructor = require('../internals/create-iterator-constructor');\nvar InternalStateModule = require('../internals/internal-state');\nvar anInstance = require('../internals/an-instance');\nvar isCallable = require('../internals/is-callable');\nvar hasOwn = require('../internals/has-own-property');\nvar bind = require('../internals/function-bind-context');\nvar classof = require('../internals/classof');\nvar anObject = require('../internals/an-object');\nvar isObject = require('../internals/is-object');\nvar $toString = require('../internals/to-string');\nvar create = require('../internals/object-create');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar getIterator = require('../internals/get-iterator');\nvar getIteratorMethod = require('../internals/get-iterator-method');\nvar validateArgumentsLength = require('../internals/validate-arguments-length');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar arraySort = require('../internals/array-sort');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar URL_SEARCH_PARAMS = 'URLSearchParams';\nvar URL_SEARCH_PARAMS_ITERATOR = URL_SEARCH_PARAMS + 'Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalParamsState = InternalStateModule.getterFor(URL_SEARCH_PARAMS);\nvar getInternalIteratorState = InternalStateModule.getterFor(URL_SEARCH_PARAMS_ITERATOR);\n// eslint-disable-next-line es-x/no-object-getownpropertydescriptor -- safe\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// Avoid NodeJS experimental warning\nvar safeGetBuiltIn = function (name) {\n if (!DESCRIPTORS) return global[name];\n var descriptor = getOwnPropertyDescriptor(global, name);\n return descriptor && descriptor.value;\n};\n\nvar nativeFetch = safeGetBuiltIn('fetch');\nvar NativeRequest = safeGetBuiltIn('Request');\nvar Headers = safeGetBuiltIn('Headers');\nvar RequestPrototype = NativeRequest && NativeRequest.prototype;\nvar HeadersPrototype = Headers && Headers.prototype;\nvar RegExp = global.RegExp;\nvar TypeError = global.TypeError;\nvar decodeURIComponent = global.decodeURIComponent;\nvar encodeURIComponent = global.encodeURIComponent;\nvar charAt = uncurryThis(''.charAt);\nvar join = uncurryThis([].join);\nvar push = uncurryThis([].push);\nvar replace = uncurryThis(''.replace);\nvar shift = uncurryThis([].shift);\nvar splice = uncurryThis([].splice);\nvar split = uncurryThis(''.split);\nvar stringSlice = uncurryThis(''.slice);\n\nvar plus = /\\+/g;\nvar sequences = Array(4);\n\nvar percentSequence = function (bytes) {\n return sequences[bytes - 1] || (sequences[bytes - 1] = RegExp('((?:%[\\\\da-f]{2}){' + bytes + '})', 'gi'));\n};\n\nvar percentDecode = function (sequence) {\n try {\n return decodeURIComponent(sequence);\n } catch (error) {\n return sequence;\n }\n};\n\nvar deserialize = function (it) {\n var result = replace(it, plus, ' ');\n var bytes = 4;\n try {\n return decodeURIComponent(result);\n } catch (error) {\n while (bytes) {\n result = replace(result, percentSequence(bytes--), percentDecode);\n }\n return result;\n }\n};\n\nvar find = /[!'()~]|%20/g;\n\nvar replacements = {\n '!': '%21',\n \"'\": '%27',\n '(': '%28',\n ')': '%29',\n '~': '%7E',\n '%20': '+'\n};\n\nvar replacer = function (match) {\n return replacements[match];\n};\n\nvar serialize = function (it) {\n return replace(encodeURIComponent(it), find, replacer);\n};\n\nvar URLSearchParamsIterator = createIteratorConstructor(function Iterator(params, kind) {\n setInternalState(this, {\n type: URL_SEARCH_PARAMS_ITERATOR,\n iterator: getIterator(getInternalParamsState(params).entries),\n kind: kind\n });\n}, 'Iterator', function next() {\n var state = getInternalIteratorState(this);\n var kind = state.kind;\n var step = state.iterator.next();\n var entry = step.value;\n if (!step.done) {\n step.value = kind === 'keys' ? entry.key : kind === 'values' ? entry.value : [entry.key, entry.value];\n } return step;\n}, true);\n\nvar URLSearchParamsState = function (init) {\n this.entries = [];\n this.url = null;\n\n if (init !== undefined) {\n if (isObject(init)) this.parseObject(init);\n else this.parseQuery(typeof init == 'string' ? charAt(init, 0) === '?' ? stringSlice(init, 1) : init : $toString(init));\n }\n};\n\nURLSearchParamsState.prototype = {\n type: URL_SEARCH_PARAMS,\n bindURL: function (url) {\n this.url = url;\n this.update();\n },\n parseObject: function (object) {\n var iteratorMethod = getIteratorMethod(object);\n var iterator, next, step, entryIterator, entryNext, first, second;\n\n if (iteratorMethod) {\n iterator = getIterator(object, iteratorMethod);\n next = iterator.next;\n while (!(step = call(next, iterator)).done) {\n entryIterator = getIterator(anObject(step.value));\n entryNext = entryIterator.next;\n if (\n (first = call(entryNext, entryIterator)).done ||\n (second = call(entryNext, entryIterator)).done ||\n !call(entryNext, entryIterator).done\n ) throw TypeError('Expected sequence with length 2');\n push(this.entries, { key: $toString(first.value), value: $toString(second.value) });\n }\n } else for (var key in object) if (hasOwn(object, key)) {\n push(this.entries, { key: key, value: $toString(object[key]) });\n }\n },\n parseQuery: function (query) {\n if (query) {\n var attributes = split(query, '&');\n var index = 0;\n var attribute, entry;\n while (index < attributes.length) {\n attribute = attributes[index++];\n if (attribute.length) {\n entry = split(attribute, '=');\n push(this.entries, {\n key: deserialize(shift(entry)),\n value: deserialize(join(entry, '='))\n });\n }\n }\n }\n },\n serialize: function () {\n var entries = this.entries;\n var result = [];\n var index = 0;\n var entry;\n while (index < entries.length) {\n entry = entries[index++];\n push(result, serialize(entry.key) + '=' + serialize(entry.value));\n } return join(result, '&');\n },\n update: function () {\n this.entries.length = 0;\n this.parseQuery(this.url.query);\n },\n updateURL: function () {\n if (this.url) this.url.update();\n }\n};\n\n// `URLSearchParams` constructor\n// https://url.spec.whatwg.org/#interface-urlsearchparams\nvar URLSearchParamsConstructor = function URLSearchParams(/* init */) {\n anInstance(this, URLSearchParamsPrototype);\n var init = arguments.length > 0 ? arguments[0] : undefined;\n setInternalState(this, new URLSearchParamsState(init));\n};\n\nvar URLSearchParamsPrototype = URLSearchParamsConstructor.prototype;\n\ndefineBuiltIns(URLSearchParamsPrototype, {\n // `URLSearchParams.prototype.append` method\n // https://url.spec.whatwg.org/#dom-urlsearchparams-append\n append: function append(name, value) {\n validateArgumentsLength(arguments.length, 2);\n var state = getInternalParamsState(this);\n push(state.entries, { key: $toString(name), value: $toString(value) });\n state.updateURL();\n },\n // `URLSearchParams.prototype.delete` method\n // https://url.spec.whatwg.org/#dom-urlsearchparams-delete\n 'delete': function (name) {\n validateArgumentsLength(arguments.length, 1);\n var state = getInternalParamsState(this);\n var entries = state.entries;\n var key = $toString(name);\n var index = 0;\n while (index < entries.length) {\n if (entries[index].key === key) splice(entries, index, 1);\n else index++;\n }\n state.updateURL();\n },\n // `URLSearchParams.prototype.get` method\n // https://url.spec.whatwg.org/#dom-urlsearchparams-get\n get: function get(name) {\n validateArgumentsLength(arguments.length, 1);\n var entries = getInternalParamsState(this).entries;\n var key = $toString(name);\n var index = 0;\n for (; index < entries.length; index++) {\n if (entries[index].key === key) return entries[index].value;\n }\n return null;\n },\n // `URLSearchParams.prototype.getAll` method\n // https://url.spec.whatwg.org/#dom-urlsearchparams-getall\n getAll: function getAll(name) {\n validateArgumentsLength(arguments.length, 1);\n var entries = getInternalParamsState(this).entries;\n var key = $toString(name);\n var result = [];\n var index = 0;\n for (; index < entries.length; index++) {\n if (entries[index].key === key) push(result, entries[index].value);\n }\n return result;\n },\n // `URLSearchParams.prototype.has` method\n // https://url.spec.whatwg.org/#dom-urlsearchparams-has\n has: function has(name) {\n validateArgumentsLength(arguments.length, 1);\n var entries = getInternalParamsState(this).entries;\n var key = $toString(name);\n var index = 0;\n while (index < entries.length) {\n if (entries[index++].key === key) return true;\n }\n return false;\n },\n // `URLSearchParams.prototype.set` method\n // https://url.spec.whatwg.org/#dom-urlsearchparams-set\n set: function set(name, value) {\n validateArgumentsLength(arguments.length, 1);\n var state = getInternalParamsState(this);\n var entries = state.entries;\n var found = false;\n var key = $toString(name);\n var val = $toString(value);\n var index = 0;\n var entry;\n for (; index < entries.length; index++) {\n entry = entries[index];\n if (entry.key === key) {\n if (found) splice(entries, index--, 1);\n else {\n found = true;\n entry.value = val;\n }\n }\n }\n if (!found) push(entries, { key: key, value: val });\n state.updateURL();\n },\n // `URLSearchParams.prototype.sort` method\n // https://url.spec.whatwg.org/#dom-urlsearchparams-sort\n sort: function sort() {\n var state = getInternalParamsState(this);\n arraySort(state.entries, function (a, b) {\n return a.key > b.key ? 1 : -1;\n });\n state.updateURL();\n },\n // `URLSearchParams.prototype.forEach` method\n forEach: function forEach(callback /* , thisArg */) {\n var entries = getInternalParamsState(this).entries;\n var boundFunction = bind(callback, arguments.length > 1 ? arguments[1] : undefined);\n var index = 0;\n var entry;\n while (index < entries.length) {\n entry = entries[index++];\n boundFunction(entry.value, entry.key, this);\n }\n },\n // `URLSearchParams.prototype.keys` method\n keys: function keys() {\n return new URLSearchParamsIterator(this, 'keys');\n },\n // `URLSearchParams.prototype.values` method\n values: function values() {\n return new URLSearchParamsIterator(this, 'values');\n },\n // `URLSearchParams.prototype.entries` method\n entries: function entries() {\n return new URLSearchParamsIterator(this, 'entries');\n }\n}, { enumerable: true });\n\n// `URLSearchParams.prototype[@@iterator]` method\ndefineBuiltIn(URLSearchParamsPrototype, ITERATOR, URLSearchParamsPrototype.entries, { name: 'entries' });\n\n// `URLSearchParams.prototype.toString` method\n// https://url.spec.whatwg.org/#urlsearchparams-stringification-behavior\ndefineBuiltIn(URLSearchParamsPrototype, 'toString', function toString() {\n return getInternalParamsState(this).serialize();\n}, { enumerable: true });\n\nsetToStringTag(URLSearchParamsConstructor, URL_SEARCH_PARAMS);\n\n$({ global: true, constructor: true, forced: !USE_NATIVE_URL }, {\n URLSearchParams: URLSearchParamsConstructor\n});\n\n// Wrap `fetch` and `Request` for correct work with polyfilled `URLSearchParams`\nif (!USE_NATIVE_URL && isCallable(Headers)) {\n var headersHas = uncurryThis(HeadersPrototype.has);\n var headersSet = uncurryThis(HeadersPrototype.set);\n\n var wrapRequestOptions = function (init) {\n if (isObject(init)) {\n var body = init.body;\n var headers;\n if (classof(body) === URL_SEARCH_PARAMS) {\n headers = init.headers ? new Headers(init.headers) : new Headers();\n if (!headersHas(headers, 'content-type')) {\n headersSet(headers, 'content-type', 'application/x-www-form-urlencoded;charset=UTF-8');\n }\n return create(init, {\n body: createPropertyDescriptor(0, $toString(body)),\n headers: createPropertyDescriptor(0, headers)\n });\n }\n } return init;\n };\n\n if (isCallable(nativeFetch)) {\n $({ global: true, enumerable: true, dontCallGetSet: true, forced: true }, {\n fetch: function fetch(input /* , init */) {\n return nativeFetch(input, arguments.length > 1 ? wrapRequestOptions(arguments[1]) : {});\n }\n });\n }\n\n if (isCallable(NativeRequest)) {\n var RequestConstructor = function Request(input /* , init */) {\n anInstance(this, RequestPrototype);\n return new NativeRequest(input, arguments.length > 1 ? wrapRequestOptions(arguments[1]) : {});\n };\n\n RequestPrototype.constructor = RequestConstructor;\n RequestConstructor.prototype = RequestPrototype;\n\n $({ global: true, constructor: true, dontCallGetSet: true, forced: true }, {\n Request: RequestConstructor\n });\n }\n}\n\nmodule.exports = {\n URLSearchParams: URLSearchParamsConstructor,\n getState: getInternalParamsState\n};\n","// TODO: Remove this module from `core-js@4` since it's replaced to module below\nrequire('../modules/web.url-search-params.constructor');\n","'use strict';\n// TODO: in core-js@4, move /modules/ dependencies to public entries for better optimization by tools like `preset-env`\nrequire('../modules/es.string.iterator');\nvar $ = require('../internals/export');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar USE_NATIVE_URL = require('../internals/native-url');\nvar global = require('../internals/global');\nvar bind = require('../internals/function-bind-context');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar defineBuiltInAccessor = require('../internals/define-built-in-accessor');\nvar anInstance = require('../internals/an-instance');\nvar hasOwn = require('../internals/has-own-property');\nvar assign = require('../internals/object-assign');\nvar arrayFrom = require('../internals/array-from');\nvar arraySlice = require('../internals/array-slice-simple');\nvar codeAt = require('../internals/string-multibyte').codeAt;\nvar toASCII = require('../internals/string-punycode-to-ascii');\nvar $toString = require('../internals/to-string');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar validateArgumentsLength = require('../internals/validate-arguments-length');\nvar URLSearchParamsModule = require('../modules/web.url-search-params.constructor');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar setInternalState = InternalStateModule.set;\nvar getInternalURLState = InternalStateModule.getterFor('URL');\nvar URLSearchParams = URLSearchParamsModule.URLSearchParams;\nvar getInternalSearchParamsState = URLSearchParamsModule.getState;\n\nvar NativeURL = global.URL;\nvar TypeError = global.TypeError;\nvar parseInt = global.parseInt;\nvar floor = Math.floor;\nvar pow = Math.pow;\nvar charAt = uncurryThis(''.charAt);\nvar exec = uncurryThis(/./.exec);\nvar join = uncurryThis([].join);\nvar numberToString = uncurryThis(1.0.toString);\nvar pop = uncurryThis([].pop);\nvar push = uncurryThis([].push);\nvar replace = uncurryThis(''.replace);\nvar shift = uncurryThis([].shift);\nvar split = uncurryThis(''.split);\nvar stringSlice = uncurryThis(''.slice);\nvar toLowerCase = uncurryThis(''.toLowerCase);\nvar unshift = uncurryThis([].unshift);\n\nvar INVALID_AUTHORITY = 'Invalid authority';\nvar INVALID_SCHEME = 'Invalid scheme';\nvar INVALID_HOST = 'Invalid host';\nvar INVALID_PORT = 'Invalid port';\n\nvar ALPHA = /[a-z]/i;\n// eslint-disable-next-line regexp/no-obscure-range -- safe\nvar ALPHANUMERIC = /[\\d+-.a-z]/i;\nvar DIGIT = /\\d/;\nvar HEX_START = /^0x/i;\nvar OCT = /^[0-7]+$/;\nvar DEC = /^\\d+$/;\nvar HEX = /^[\\da-f]+$/i;\n/* eslint-disable regexp/no-control-character -- safe */\nvar FORBIDDEN_HOST_CODE_POINT = /[\\0\\t\\n\\r #%/:<>?@[\\\\\\]^|]/;\nvar FORBIDDEN_HOST_CODE_POINT_EXCLUDING_PERCENT = /[\\0\\t\\n\\r #/:<>?@[\\\\\\]^|]/;\nvar LEADING_AND_TRAILING_C0_CONTROL_OR_SPACE = /^[\\u0000-\\u0020]+|[\\u0000-\\u0020]+$/g;\nvar TAB_AND_NEW_LINE = /[\\t\\n\\r]/g;\n/* eslint-enable regexp/no-control-character -- safe */\nvar EOF;\n\n// https://url.spec.whatwg.org/#ipv4-number-parser\nvar parseIPv4 = function (input) {\n var parts = split(input, '.');\n var partsLength, numbers, index, part, radix, number, ipv4;\n if (parts.length && parts[parts.length - 1] == '') {\n parts.length--;\n }\n partsLength = parts.length;\n if (partsLength > 4) return input;\n numbers = [];\n for (index = 0; index < partsLength; index++) {\n part = parts[index];\n if (part == '') return input;\n radix = 10;\n if (part.length > 1 && charAt(part, 0) == '0') {\n radix = exec(HEX_START, part) ? 16 : 8;\n part = stringSlice(part, radix == 8 ? 1 : 2);\n }\n if (part === '') {\n number = 0;\n } else {\n if (!exec(radix == 10 ? DEC : radix == 8 ? OCT : HEX, part)) return input;\n number = parseInt(part, radix);\n }\n push(numbers, number);\n }\n for (index = 0; index < partsLength; index++) {\n number = numbers[index];\n if (index == partsLength - 1) {\n if (number >= pow(256, 5 - partsLength)) return null;\n } else if (number > 255) return null;\n }\n ipv4 = pop(numbers);\n for (index = 0; index < numbers.length; index++) {\n ipv4 += numbers[index] * pow(256, 3 - index);\n }\n return ipv4;\n};\n\n// https://url.spec.whatwg.org/#concept-ipv6-parser\n// eslint-disable-next-line max-statements -- TODO\nvar parseIPv6 = function (input) {\n var address = [0, 0, 0, 0, 0, 0, 0, 0];\n var pieceIndex = 0;\n var compress = null;\n var pointer = 0;\n var value, length, numbersSeen, ipv4Piece, number, swaps, swap;\n\n var chr = function () {\n return charAt(input, pointer);\n };\n\n if (chr() == ':') {\n if (charAt(input, 1) != ':') return;\n pointer += 2;\n pieceIndex++;\n compress = pieceIndex;\n }\n while (chr()) {\n if (pieceIndex == 8) return;\n if (chr() == ':') {\n if (compress !== null) return;\n pointer++;\n pieceIndex++;\n compress = pieceIndex;\n continue;\n }\n value = length = 0;\n while (length < 4 && exec(HEX, chr())) {\n value = value * 16 + parseInt(chr(), 16);\n pointer++;\n length++;\n }\n if (chr() == '.') {\n if (length == 0) return;\n pointer -= length;\n if (pieceIndex > 6) return;\n numbersSeen = 0;\n while (chr()) {\n ipv4Piece = null;\n if (numbersSeen > 0) {\n if (chr() == '.' && numbersSeen < 4) pointer++;\n else return;\n }\n if (!exec(DIGIT, chr())) return;\n while (exec(DIGIT, chr())) {\n number = parseInt(chr(), 10);\n if (ipv4Piece === null) ipv4Piece = number;\n else if (ipv4Piece == 0) return;\n else ipv4Piece = ipv4Piece * 10 + number;\n if (ipv4Piece > 255) return;\n pointer++;\n }\n address[pieceIndex] = address[pieceIndex] * 256 + ipv4Piece;\n numbersSeen++;\n if (numbersSeen == 2 || numbersSeen == 4) pieceIndex++;\n }\n if (numbersSeen != 4) return;\n break;\n } else if (chr() == ':') {\n pointer++;\n if (!chr()) return;\n } else if (chr()) return;\n address[pieceIndex++] = value;\n }\n if (compress !== null) {\n swaps = pieceIndex - compress;\n pieceIndex = 7;\n while (pieceIndex != 0 && swaps > 0) {\n swap = address[pieceIndex];\n address[pieceIndex--] = address[compress + swaps - 1];\n address[compress + --swaps] = swap;\n }\n } else if (pieceIndex != 8) return;\n return address;\n};\n\nvar findLongestZeroSequence = function (ipv6) {\n var maxIndex = null;\n var maxLength = 1;\n var currStart = null;\n var currLength = 0;\n var index = 0;\n for (; index < 8; index++) {\n if (ipv6[index] !== 0) {\n if (currLength > maxLength) {\n maxIndex = currStart;\n maxLength = currLength;\n }\n currStart = null;\n currLength = 0;\n } else {\n if (currStart === null) currStart = index;\n ++currLength;\n }\n }\n if (currLength > maxLength) {\n maxIndex = currStart;\n maxLength = currLength;\n }\n return maxIndex;\n};\n\n// https://url.spec.whatwg.org/#host-serializing\nvar serializeHost = function (host) {\n var result, index, compress, ignore0;\n // ipv4\n if (typeof host == 'number') {\n result = [];\n for (index = 0; index < 4; index++) {\n unshift(result, host % 256);\n host = floor(host / 256);\n } return join(result, '.');\n // ipv6\n } else if (typeof host == 'object') {\n result = '';\n compress = findLongestZeroSequence(host);\n for (index = 0; index < 8; index++) {\n if (ignore0 && host[index] === 0) continue;\n if (ignore0) ignore0 = false;\n if (compress === index) {\n result += index ? ':' : '::';\n ignore0 = true;\n } else {\n result += numberToString(host[index], 16);\n if (index < 7) result += ':';\n }\n }\n return '[' + result + ']';\n } return host;\n};\n\nvar C0ControlPercentEncodeSet = {};\nvar fragmentPercentEncodeSet = assign({}, C0ControlPercentEncodeSet, {\n ' ': 1, '\"': 1, '<': 1, '>': 1, '`': 1\n});\nvar pathPercentEncodeSet = assign({}, fragmentPercentEncodeSet, {\n '#': 1, '?': 1, '{': 1, '}': 1\n});\nvar userinfoPercentEncodeSet = assign({}, pathPercentEncodeSet, {\n '/': 1, ':': 1, ';': 1, '=': 1, '@': 1, '[': 1, '\\\\': 1, ']': 1, '^': 1, '|': 1\n});\n\nvar percentEncode = function (chr, set) {\n var code = codeAt(chr, 0);\n return code > 0x20 && code < 0x7F && !hasOwn(set, chr) ? chr : encodeURIComponent(chr);\n};\n\n// https://url.spec.whatwg.org/#special-scheme\nvar specialSchemes = {\n ftp: 21,\n file: null,\n http: 80,\n https: 443,\n ws: 80,\n wss: 443\n};\n\n// https://url.spec.whatwg.org/#windows-drive-letter\nvar isWindowsDriveLetter = function (string, normalized) {\n var second;\n return string.length == 2 && exec(ALPHA, charAt(string, 0))\n && ((second = charAt(string, 1)) == ':' || (!normalized && second == '|'));\n};\n\n// https://url.spec.whatwg.org/#start-with-a-windows-drive-letter\nvar startsWithWindowsDriveLetter = function (string) {\n var third;\n return string.length > 1 && isWindowsDriveLetter(stringSlice(string, 0, 2)) && (\n string.length == 2 ||\n ((third = charAt(string, 2)) === '/' || third === '\\\\' || third === '?' || third === '#')\n );\n};\n\n// https://url.spec.whatwg.org/#single-dot-path-segment\nvar isSingleDot = function (segment) {\n return segment === '.' || toLowerCase(segment) === '%2e';\n};\n\n// https://url.spec.whatwg.org/#double-dot-path-segment\nvar isDoubleDot = function (segment) {\n segment = toLowerCase(segment);\n return segment === '..' || segment === '%2e.' || segment === '.%2e' || segment === '%2e%2e';\n};\n\n// States:\nvar SCHEME_START = {};\nvar SCHEME = {};\nvar NO_SCHEME = {};\nvar SPECIAL_RELATIVE_OR_AUTHORITY = {};\nvar PATH_OR_AUTHORITY = {};\nvar RELATIVE = {};\nvar RELATIVE_SLASH = {};\nvar SPECIAL_AUTHORITY_SLASHES = {};\nvar SPECIAL_AUTHORITY_IGNORE_SLASHES = {};\nvar AUTHORITY = {};\nvar HOST = {};\nvar HOSTNAME = {};\nvar PORT = {};\nvar FILE = {};\nvar FILE_SLASH = {};\nvar FILE_HOST = {};\nvar PATH_START = {};\nvar PATH = {};\nvar CANNOT_BE_A_BASE_URL_PATH = {};\nvar QUERY = {};\nvar FRAGMENT = {};\n\nvar URLState = function (url, isBase, base) {\n var urlString = $toString(url);\n var baseState, failure, searchParams;\n if (isBase) {\n failure = this.parse(urlString);\n if (failure) throw TypeError(failure);\n this.searchParams = null;\n } else {\n if (base !== undefined) baseState = new URLState(base, true);\n failure = this.parse(urlString, null, baseState);\n if (failure) throw TypeError(failure);\n searchParams = getInternalSearchParamsState(new URLSearchParams());\n searchParams.bindURL(this);\n this.searchParams = searchParams;\n }\n};\n\nURLState.prototype = {\n type: 'URL',\n // https://url.spec.whatwg.org/#url-parsing\n // eslint-disable-next-line max-statements -- TODO\n parse: function (input, stateOverride, base) {\n var url = this;\n var state = stateOverride || SCHEME_START;\n var pointer = 0;\n var buffer = '';\n var seenAt = false;\n var seenBracket = false;\n var seenPasswordToken = false;\n var codePoints, chr, bufferCodePoints, failure;\n\n input = $toString(input);\n\n if (!stateOverride) {\n url.scheme = '';\n url.username = '';\n url.password = '';\n url.host = null;\n url.port = null;\n url.path = [];\n url.query = null;\n url.fragment = null;\n url.cannotBeABaseURL = false;\n input = replace(input, LEADING_AND_TRAILING_C0_CONTROL_OR_SPACE, '');\n }\n\n input = replace(input, TAB_AND_NEW_LINE, '');\n\n codePoints = arrayFrom(input);\n\n while (pointer <= codePoints.length) {\n chr = codePoints[pointer];\n switch (state) {\n case SCHEME_START:\n if (chr && exec(ALPHA, chr)) {\n buffer += toLowerCase(chr);\n state = SCHEME;\n } else if (!stateOverride) {\n state = NO_SCHEME;\n continue;\n } else return INVALID_SCHEME;\n break;\n\n case SCHEME:\n if (chr && (exec(ALPHANUMERIC, chr) || chr == '+' || chr == '-' || chr == '.')) {\n buffer += toLowerCase(chr);\n } else if (chr == ':') {\n if (stateOverride && (\n (url.isSpecial() != hasOwn(specialSchemes, buffer)) ||\n (buffer == 'file' && (url.includesCredentials() || url.port !== null)) ||\n (url.scheme == 'file' && !url.host)\n )) return;\n url.scheme = buffer;\n if (stateOverride) {\n if (url.isSpecial() && specialSchemes[url.scheme] == url.port) url.port = null;\n return;\n }\n buffer = '';\n if (url.scheme == 'file') {\n state = FILE;\n } else if (url.isSpecial() && base && base.scheme == url.scheme) {\n state = SPECIAL_RELATIVE_OR_AUTHORITY;\n } else if (url.isSpecial()) {\n state = SPECIAL_AUTHORITY_SLASHES;\n } else if (codePoints[pointer + 1] == '/') {\n state = PATH_OR_AUTHORITY;\n pointer++;\n } else {\n url.cannotBeABaseURL = true;\n push(url.path, '');\n state = CANNOT_BE_A_BASE_URL_PATH;\n }\n } else if (!stateOverride) {\n buffer = '';\n state = NO_SCHEME;\n pointer = 0;\n continue;\n } else return INVALID_SCHEME;\n break;\n\n case NO_SCHEME:\n if (!base || (base.cannotBeABaseURL && chr != '#')) return INVALID_SCHEME;\n if (base.cannotBeABaseURL && chr == '#') {\n url.scheme = base.scheme;\n url.path = arraySlice(base.path);\n url.query = base.query;\n url.fragment = '';\n url.cannotBeABaseURL = true;\n state = FRAGMENT;\n break;\n }\n state = base.scheme == 'file' ? FILE : RELATIVE;\n continue;\n\n case SPECIAL_RELATIVE_OR_AUTHORITY:\n if (chr == '/' && codePoints[pointer + 1] == '/') {\n state = SPECIAL_AUTHORITY_IGNORE_SLASHES;\n pointer++;\n } else {\n state = RELATIVE;\n continue;\n } break;\n\n case PATH_OR_AUTHORITY:\n if (chr == '/') {\n state = AUTHORITY;\n break;\n } else {\n state = PATH;\n continue;\n }\n\n case RELATIVE:\n url.scheme = base.scheme;\n if (chr == EOF) {\n url.username = base.username;\n url.password = base.password;\n url.host = base.host;\n url.port = base.port;\n url.path = arraySlice(base.path);\n url.query = base.query;\n } else if (chr == '/' || (chr == '\\\\' && url.isSpecial())) {\n state = RELATIVE_SLASH;\n } else if (chr == '?') {\n url.username = base.username;\n url.password = base.password;\n url.host = base.host;\n url.port = base.port;\n url.path = arraySlice(base.path);\n url.query = '';\n state = QUERY;\n } else if (chr == '#') {\n url.username = base.username;\n url.password = base.password;\n url.host = base.host;\n url.port = base.port;\n url.path = arraySlice(base.path);\n url.query = base.query;\n url.fragment = '';\n state = FRAGMENT;\n } else {\n url.username = base.username;\n url.password = base.password;\n url.host = base.host;\n url.port = base.port;\n url.path = arraySlice(base.path);\n url.path.length--;\n state = PATH;\n continue;\n } break;\n\n case RELATIVE_SLASH:\n if (url.isSpecial() && (chr == '/' || chr == '\\\\')) {\n state = SPECIAL_AUTHORITY_IGNORE_SLASHES;\n } else if (chr == '/') {\n state = AUTHORITY;\n } else {\n url.username = base.username;\n url.password = base.password;\n url.host = base.host;\n url.port = base.port;\n state = PATH;\n continue;\n } break;\n\n case SPECIAL_AUTHORITY_SLASHES:\n state = SPECIAL_AUTHORITY_IGNORE_SLASHES;\n if (chr != '/' || charAt(buffer, pointer + 1) != '/') continue;\n pointer++;\n break;\n\n case SPECIAL_AUTHORITY_IGNORE_SLASHES:\n if (chr != '/' && chr != '\\\\') {\n state = AUTHORITY;\n continue;\n } break;\n\n case AUTHORITY:\n if (chr == '@') {\n if (seenAt) buffer = '%40' + buffer;\n seenAt = true;\n bufferCodePoints = arrayFrom(buffer);\n for (var i = 0; i < bufferCodePoints.length; i++) {\n var codePoint = bufferCodePoints[i];\n if (codePoint == ':' && !seenPasswordToken) {\n seenPasswordToken = true;\n continue;\n }\n var encodedCodePoints = percentEncode(codePoint, userinfoPercentEncodeSet);\n if (seenPasswordToken) url.password += encodedCodePoints;\n else url.username += encodedCodePoints;\n }\n buffer = '';\n } else if (\n chr == EOF || chr == '/' || chr == '?' || chr == '#' ||\n (chr == '\\\\' && url.isSpecial())\n ) {\n if (seenAt && buffer == '') return INVALID_AUTHORITY;\n pointer -= arrayFrom(buffer).length + 1;\n buffer = '';\n state = HOST;\n } else buffer += chr;\n break;\n\n case HOST:\n case HOSTNAME:\n if (stateOverride && url.scheme == 'file') {\n state = FILE_HOST;\n continue;\n } else if (chr == ':' && !seenBracket) {\n if (buffer == '') return INVALID_HOST;\n failure = url.parseHost(buffer);\n if (failure) return failure;\n buffer = '';\n state = PORT;\n if (stateOverride == HOSTNAME) return;\n } else if (\n chr == EOF || chr == '/' || chr == '?' || chr == '#' ||\n (chr == '\\\\' && url.isSpecial())\n ) {\n if (url.isSpecial() && buffer == '') return INVALID_HOST;\n if (stateOverride && buffer == '' && (url.includesCredentials() || url.port !== null)) return;\n failure = url.parseHost(buffer);\n if (failure) return failure;\n buffer = '';\n state = PATH_START;\n if (stateOverride) return;\n continue;\n } else {\n if (chr == '[') seenBracket = true;\n else if (chr == ']') seenBracket = false;\n buffer += chr;\n } break;\n\n case PORT:\n if (exec(DIGIT, chr)) {\n buffer += chr;\n } else if (\n chr == EOF || chr == '/' || chr == '?' || chr == '#' ||\n (chr == '\\\\' && url.isSpecial()) ||\n stateOverride\n ) {\n if (buffer != '') {\n var port = parseInt(buffer, 10);\n if (port > 0xFFFF) return INVALID_PORT;\n url.port = (url.isSpecial() && port === specialSchemes[url.scheme]) ? null : port;\n buffer = '';\n }\n if (stateOverride) return;\n state = PATH_START;\n continue;\n } else return INVALID_PORT;\n break;\n\n case FILE:\n url.scheme = 'file';\n if (chr == '/' || chr == '\\\\') state = FILE_SLASH;\n else if (base && base.scheme == 'file') {\n if (chr == EOF) {\n url.host = base.host;\n url.path = arraySlice(base.path);\n url.query = base.query;\n } else if (chr == '?') {\n url.host = base.host;\n url.path = arraySlice(base.path);\n url.query = '';\n state = QUERY;\n } else if (chr == '#') {\n url.host = base.host;\n url.path = arraySlice(base.path);\n url.query = base.query;\n url.fragment = '';\n state = FRAGMENT;\n } else {\n if (!startsWithWindowsDriveLetter(join(arraySlice(codePoints, pointer), ''))) {\n url.host = base.host;\n url.path = arraySlice(base.path);\n url.shortenPath();\n }\n state = PATH;\n continue;\n }\n } else {\n state = PATH;\n continue;\n } break;\n\n case FILE_SLASH:\n if (chr == '/' || chr == '\\\\') {\n state = FILE_HOST;\n break;\n }\n if (base && base.scheme == 'file' && !startsWithWindowsDriveLetter(join(arraySlice(codePoints, pointer), ''))) {\n if (isWindowsDriveLetter(base.path[0], true)) push(url.path, base.path[0]);\n else url.host = base.host;\n }\n state = PATH;\n continue;\n\n case FILE_HOST:\n if (chr == EOF || chr == '/' || chr == '\\\\' || chr == '?' || chr == '#') {\n if (!stateOverride && isWindowsDriveLetter(buffer)) {\n state = PATH;\n } else if (buffer == '') {\n url.host = '';\n if (stateOverride) return;\n state = PATH_START;\n } else {\n failure = url.parseHost(buffer);\n if (failure) return failure;\n if (url.host == 'localhost') url.host = '';\n if (stateOverride) return;\n buffer = '';\n state = PATH_START;\n } continue;\n } else buffer += chr;\n break;\n\n case PATH_START:\n if (url.isSpecial()) {\n state = PATH;\n if (chr != '/' && chr != '\\\\') continue;\n } else if (!stateOverride && chr == '?') {\n url.query = '';\n state = QUERY;\n } else if (!stateOverride && chr == '#') {\n url.fragment = '';\n state = FRAGMENT;\n } else if (chr != EOF) {\n state = PATH;\n if (chr != '/') continue;\n } break;\n\n case PATH:\n if (\n chr == EOF || chr == '/' ||\n (chr == '\\\\' && url.isSpecial()) ||\n (!stateOverride && (chr == '?' || chr == '#'))\n ) {\n if (isDoubleDot(buffer)) {\n url.shortenPath();\n if (chr != '/' && !(chr == '\\\\' && url.isSpecial())) {\n push(url.path, '');\n }\n } else if (isSingleDot(buffer)) {\n if (chr != '/' && !(chr == '\\\\' && url.isSpecial())) {\n push(url.path, '');\n }\n } else {\n if (url.scheme == 'file' && !url.path.length && isWindowsDriveLetter(buffer)) {\n if (url.host) url.host = '';\n buffer = charAt(buffer, 0) + ':'; // normalize windows drive letter\n }\n push(url.path, buffer);\n }\n buffer = '';\n if (url.scheme == 'file' && (chr == EOF || chr == '?' || chr == '#')) {\n while (url.path.length > 1 && url.path[0] === '') {\n shift(url.path);\n }\n }\n if (chr == '?') {\n url.query = '';\n state = QUERY;\n } else if (chr == '#') {\n url.fragment = '';\n state = FRAGMENT;\n }\n } else {\n buffer += percentEncode(chr, pathPercentEncodeSet);\n } break;\n\n case CANNOT_BE_A_BASE_URL_PATH:\n if (chr == '?') {\n url.query = '';\n state = QUERY;\n } else if (chr == '#') {\n url.fragment = '';\n state = FRAGMENT;\n } else if (chr != EOF) {\n url.path[0] += percentEncode(chr, C0ControlPercentEncodeSet);\n } break;\n\n case QUERY:\n if (!stateOverride && chr == '#') {\n url.fragment = '';\n state = FRAGMENT;\n } else if (chr != EOF) {\n if (chr == \"'\" && url.isSpecial()) url.query += '%27';\n else if (chr == '#') url.query += '%23';\n else url.query += percentEncode(chr, C0ControlPercentEncodeSet);\n } break;\n\n case FRAGMENT:\n if (chr != EOF) url.fragment += percentEncode(chr, fragmentPercentEncodeSet);\n break;\n }\n\n pointer++;\n }\n },\n // https://url.spec.whatwg.org/#host-parsing\n parseHost: function (input) {\n var result, codePoints, index;\n if (charAt(input, 0) == '[') {\n if (charAt(input, input.length - 1) != ']') return INVALID_HOST;\n result = parseIPv6(stringSlice(input, 1, -1));\n if (!result) return INVALID_HOST;\n this.host = result;\n // opaque host\n } else if (!this.isSpecial()) {\n if (exec(FORBIDDEN_HOST_CODE_POINT_EXCLUDING_PERCENT, input)) return INVALID_HOST;\n result = '';\n codePoints = arrayFrom(input);\n for (index = 0; index < codePoints.length; index++) {\n result += percentEncode(codePoints[index], C0ControlPercentEncodeSet);\n }\n this.host = result;\n } else {\n input = toASCII(input);\n if (exec(FORBIDDEN_HOST_CODE_POINT, input)) return INVALID_HOST;\n result = parseIPv4(input);\n if (result === null) return INVALID_HOST;\n this.host = result;\n }\n },\n // https://url.spec.whatwg.org/#cannot-have-a-username-password-port\n cannotHaveUsernamePasswordPort: function () {\n return !this.host || this.cannotBeABaseURL || this.scheme == 'file';\n },\n // https://url.spec.whatwg.org/#include-credentials\n includesCredentials: function () {\n return this.username != '' || this.password != '';\n },\n // https://url.spec.whatwg.org/#is-special\n isSpecial: function () {\n return hasOwn(specialSchemes, this.scheme);\n },\n // https://url.spec.whatwg.org/#shorten-a-urls-path\n shortenPath: function () {\n var path = this.path;\n var pathSize = path.length;\n if (pathSize && (this.scheme != 'file' || pathSize != 1 || !isWindowsDriveLetter(path[0], true))) {\n path.length--;\n }\n },\n // https://url.spec.whatwg.org/#concept-url-serializer\n serialize: function () {\n var url = this;\n var scheme = url.scheme;\n var username = url.username;\n var password = url.password;\n var host = url.host;\n var port = url.port;\n var path = url.path;\n var query = url.query;\n var fragment = url.fragment;\n var output = scheme + ':';\n if (host !== null) {\n output += '//';\n if (url.includesCredentials()) {\n output += username + (password ? ':' + password : '') + '@';\n }\n output += serializeHost(host);\n if (port !== null) output += ':' + port;\n } else if (scheme == 'file') output += '//';\n output += url.cannotBeABaseURL ? path[0] : path.length ? '/' + join(path, '/') : '';\n if (query !== null) output += '?' + query;\n if (fragment !== null) output += '#' + fragment;\n return output;\n },\n // https://url.spec.whatwg.org/#dom-url-href\n setHref: function (href) {\n var failure = this.parse(href);\n if (failure) throw TypeError(failure);\n this.searchParams.update();\n },\n // https://url.spec.whatwg.org/#dom-url-origin\n getOrigin: function () {\n var scheme = this.scheme;\n var port = this.port;\n if (scheme == 'blob') try {\n return new URLConstructor(scheme.path[0]).origin;\n } catch (error) {\n return 'null';\n }\n if (scheme == 'file' || !this.isSpecial()) return 'null';\n return scheme + '://' + serializeHost(this.host) + (port !== null ? ':' + port : '');\n },\n // https://url.spec.whatwg.org/#dom-url-protocol\n getProtocol: function () {\n return this.scheme + ':';\n },\n setProtocol: function (protocol) {\n this.parse($toString(protocol) + ':', SCHEME_START);\n },\n // https://url.spec.whatwg.org/#dom-url-username\n getUsername: function () {\n return this.username;\n },\n setUsername: function (username) {\n var codePoints = arrayFrom($toString(username));\n if (this.cannotHaveUsernamePasswordPort()) return;\n this.username = '';\n for (var i = 0; i < codePoints.length; i++) {\n this.username += percentEncode(codePoints[i], userinfoPercentEncodeSet);\n }\n },\n // https://url.spec.whatwg.org/#dom-url-password\n getPassword: function () {\n return this.password;\n },\n setPassword: function (password) {\n var codePoints = arrayFrom($toString(password));\n if (this.cannotHaveUsernamePasswordPort()) return;\n this.password = '';\n for (var i = 0; i < codePoints.length; i++) {\n this.password += percentEncode(codePoints[i], userinfoPercentEncodeSet);\n }\n },\n // https://url.spec.whatwg.org/#dom-url-host\n getHost: function () {\n var host = this.host;\n var port = this.port;\n return host === null ? ''\n : port === null ? serializeHost(host)\n : serializeHost(host) + ':' + port;\n },\n setHost: function (host) {\n if (this.cannotBeABaseURL) return;\n this.parse(host, HOST);\n },\n // https://url.spec.whatwg.org/#dom-url-hostname\n getHostname: function () {\n var host = this.host;\n return host === null ? '' : serializeHost(host);\n },\n setHostname: function (hostname) {\n if (this.cannotBeABaseURL) return;\n this.parse(hostname, HOSTNAME);\n },\n // https://url.spec.whatwg.org/#dom-url-port\n getPort: function () {\n var port = this.port;\n return port === null ? '' : $toString(port);\n },\n setPort: function (port) {\n if (this.cannotHaveUsernamePasswordPort()) return;\n port = $toString(port);\n if (port == '') this.port = null;\n else this.parse(port, PORT);\n },\n // https://url.spec.whatwg.org/#dom-url-pathname\n getPathname: function () {\n var path = this.path;\n return this.cannotBeABaseURL ? path[0] : path.length ? '/' + join(path, '/') : '';\n },\n setPathname: function (pathname) {\n if (this.cannotBeABaseURL) return;\n this.path = [];\n this.parse(pathname, PATH_START);\n },\n // https://url.spec.whatwg.org/#dom-url-search\n getSearch: function () {\n var query = this.query;\n return query ? '?' + query : '';\n },\n setSearch: function (search) {\n search = $toString(search);\n if (search == '') {\n this.query = null;\n } else {\n if ('?' == charAt(search, 0)) search = stringSlice(search, 1);\n this.query = '';\n this.parse(search, QUERY);\n }\n this.searchParams.update();\n },\n // https://url.spec.whatwg.org/#dom-url-searchparams\n getSearchParams: function () {\n return this.searchParams.facade;\n },\n // https://url.spec.whatwg.org/#dom-url-hash\n getHash: function () {\n var fragment = this.fragment;\n return fragment ? '#' + fragment : '';\n },\n setHash: function (hash) {\n hash = $toString(hash);\n if (hash == '') {\n this.fragment = null;\n return;\n }\n if ('#' == charAt(hash, 0)) hash = stringSlice(hash, 1);\n this.fragment = '';\n this.parse(hash, FRAGMENT);\n },\n update: function () {\n this.query = this.searchParams.serialize() || null;\n }\n};\n\n// `URL` constructor\n// https://url.spec.whatwg.org/#url-class\nvar URLConstructor = function URL(url /* , base */) {\n var that = anInstance(this, URLPrototype);\n var base = validateArgumentsLength(arguments.length, 1) > 1 ? arguments[1] : undefined;\n var state = setInternalState(that, new URLState(url, false, base));\n if (!DESCRIPTORS) {\n that.href = state.serialize();\n that.origin = state.getOrigin();\n that.protocol = state.getProtocol();\n that.username = state.getUsername();\n that.password = state.getPassword();\n that.host = state.getHost();\n that.hostname = state.getHostname();\n that.port = state.getPort();\n that.pathname = state.getPathname();\n that.search = state.getSearch();\n that.searchParams = state.getSearchParams();\n that.hash = state.getHash();\n }\n};\n\nvar URLPrototype = URLConstructor.prototype;\n\nvar accessorDescriptor = function (getter, setter) {\n return {\n get: function () {\n return getInternalURLState(this)[getter]();\n },\n set: setter && function (value) {\n return getInternalURLState(this)[setter](value);\n },\n configurable: true,\n enumerable: true\n };\n};\n\nif (DESCRIPTORS) {\n // `URL.prototype.href` accessors pair\n // https://url.spec.whatwg.org/#dom-url-href\n defineBuiltInAccessor(URLPrototype, 'href', accessorDescriptor('serialize', 'setHref'));\n // `URL.prototype.origin` getter\n // https://url.spec.whatwg.org/#dom-url-origin\n defineBuiltInAccessor(URLPrototype, 'origin', accessorDescriptor('getOrigin'));\n // `URL.prototype.protocol` accessors pair\n // https://url.spec.whatwg.org/#dom-url-protocol\n defineBuiltInAccessor(URLPrototype, 'protocol', accessorDescriptor('getProtocol', 'setProtocol'));\n // `URL.prototype.username` accessors pair\n // https://url.spec.whatwg.org/#dom-url-username\n defineBuiltInAccessor(URLPrototype, 'username', accessorDescriptor('getUsername', 'setUsername'));\n // `URL.prototype.password` accessors pair\n // https://url.spec.whatwg.org/#dom-url-password\n defineBuiltInAccessor(URLPrototype, 'password', accessorDescriptor('getPassword', 'setPassword'));\n // `URL.prototype.host` accessors pair\n // https://url.spec.whatwg.org/#dom-url-host\n defineBuiltInAccessor(URLPrototype, 'host', accessorDescriptor('getHost', 'setHost'));\n // `URL.prototype.hostname` accessors pair\n // https://url.spec.whatwg.org/#dom-url-hostname\n defineBuiltInAccessor(URLPrototype, 'hostname', accessorDescriptor('getHostname', 'setHostname'));\n // `URL.prototype.port` accessors pair\n // https://url.spec.whatwg.org/#dom-url-port\n defineBuiltInAccessor(URLPrototype, 'port', accessorDescriptor('getPort', 'setPort'));\n // `URL.prototype.pathname` accessors pair\n // https://url.spec.whatwg.org/#dom-url-pathname\n defineBuiltInAccessor(URLPrototype, 'pathname', accessorDescriptor('getPathname', 'setPathname'));\n // `URL.prototype.search` accessors pair\n // https://url.spec.whatwg.org/#dom-url-search\n defineBuiltInAccessor(URLPrototype, 'search', accessorDescriptor('getSearch', 'setSearch'));\n // `URL.prototype.searchParams` getter\n // https://url.spec.whatwg.org/#dom-url-searchparams\n defineBuiltInAccessor(URLPrototype, 'searchParams', accessorDescriptor('getSearchParams'));\n // `URL.prototype.hash` accessors pair\n // https://url.spec.whatwg.org/#dom-url-hash\n defineBuiltInAccessor(URLPrototype, 'hash', accessorDescriptor('getHash', 'setHash'));\n}\n\n// `URL.prototype.toJSON` method\n// https://url.spec.whatwg.org/#dom-url-tojson\ndefineBuiltIn(URLPrototype, 'toJSON', function toJSON() {\n return getInternalURLState(this).serialize();\n}, { enumerable: true });\n\n// `URL.prototype.toString` method\n// https://url.spec.whatwg.org/#URL-stringification-behavior\ndefineBuiltIn(URLPrototype, 'toString', function toString() {\n return getInternalURLState(this).serialize();\n}, { enumerable: true });\n\nif (NativeURL) {\n var nativeCreateObjectURL = NativeURL.createObjectURL;\n var nativeRevokeObjectURL = NativeURL.revokeObjectURL;\n // `URL.createObjectURL` method\n // https://developer.mozilla.org/en-US/docs/Web/API/URL/createObjectURL\n if (nativeCreateObjectURL) defineBuiltIn(URLConstructor, 'createObjectURL', bind(nativeCreateObjectURL, NativeURL));\n // `URL.revokeObjectURL` method\n // https://developer.mozilla.org/en-US/docs/Web/API/URL/revokeObjectURL\n if (nativeRevokeObjectURL) defineBuiltIn(URLConstructor, 'revokeObjectURL', bind(nativeRevokeObjectURL, NativeURL));\n}\n\nsetToStringTag(URLConstructor, 'URL');\n\n$({ global: true, constructor: true, forced: !USE_NATIVE_URL, sham: !DESCRIPTORS }, {\n URL: URLConstructor\n});\n","// TODO: Remove this module from `core-js@4` since it's replaced to module below\nrequire('../modules/web.url.constructor');\n","var global = typeof self !== 'undefined' ? self : this;\nvar __self__ = (function () {\nfunction F() {\nthis.fetch = false;\nthis.DOMException = global.DOMException\n}\nF.prototype = global;\nreturn new F();\n})();\n(function(self) {\n\nvar irrelevant = (function (exports) {\n\n var support = {\n searchParams: 'URLSearchParams' in self,\n iterable: 'Symbol' in self && 'iterator' in Symbol,\n blob:\n 'FileReader' in self &&\n 'Blob' in self &&\n (function() {\n try {\n new Blob();\n return true\n } catch (e) {\n return false\n }\n })(),\n formData: 'FormData' in self,\n arrayBuffer: 'ArrayBuffer' in self\n };\n\n function isDataView(obj) {\n return obj && DataView.prototype.isPrototypeOf(obj)\n }\n\n if (support.arrayBuffer) {\n var viewClasses = [\n '[object Int8Array]',\n '[object Uint8Array]',\n '[object Uint8ClampedArray]',\n '[object Int16Array]',\n '[object Uint16Array]',\n '[object Int32Array]',\n '[object Uint32Array]',\n '[object Float32Array]',\n '[object Float64Array]'\n ];\n\n var isArrayBufferView =\n ArrayBuffer.isView ||\n function(obj) {\n return obj && viewClasses.indexOf(Object.prototype.toString.call(obj)) > -1\n };\n }\n\n function normalizeName(name) {\n if (typeof name !== 'string') {\n name = String(name);\n }\n if (/[^a-z0-9\\-#$%&'*+.^_`|~]/i.test(name)) {\n throw new TypeError('Invalid character in header field name')\n }\n return name.toLowerCase()\n }\n\n function normalizeValue(value) {\n if (typeof value !== 'string') {\n value = String(value);\n }\n return value\n }\n\n // Build a destructive iterator for the value list\n function iteratorFor(items) {\n var iterator = {\n next: function() {\n var value = items.shift();\n return {done: value === undefined, value: value}\n }\n };\n\n if (support.iterable) {\n iterator[Symbol.iterator] = function() {\n return iterator\n };\n }\n\n return iterator\n }\n\n function Headers(headers) {\n this.map = {};\n\n if (headers instanceof Headers) {\n headers.forEach(function(value, name) {\n this.append(name, value);\n }, this);\n } else if (Array.isArray(headers)) {\n headers.forEach(function(header) {\n this.append(header[0], header[1]);\n }, this);\n } else if (headers) {\n Object.getOwnPropertyNames(headers).forEach(function(name) {\n this.append(name, headers[name]);\n }, this);\n }\n }\n\n Headers.prototype.append = function(name, value) {\n name = normalizeName(name);\n value = normalizeValue(value);\n var oldValue = this.map[name];\n this.map[name] = oldValue ? oldValue + ', ' + value : value;\n };\n\n Headers.prototype['delete'] = function(name) {\n delete this.map[normalizeName(name)];\n };\n\n Headers.prototype.get = function(name) {\n name = normalizeName(name);\n return this.has(name) ? this.map[name] : null\n };\n\n Headers.prototype.has = function(name) {\n return this.map.hasOwnProperty(normalizeName(name))\n };\n\n Headers.prototype.set = function(name, value) {\n this.map[normalizeName(name)] = normalizeValue(value);\n };\n\n Headers.prototype.forEach = function(callback, thisArg) {\n for (var name in this.map) {\n if (this.map.hasOwnProperty(name)) {\n callback.call(thisArg, this.map[name], name, this);\n }\n }\n };\n\n Headers.prototype.keys = function() {\n var items = [];\n this.forEach(function(value, name) {\n items.push(name);\n });\n return iteratorFor(items)\n };\n\n Headers.prototype.values = function() {\n var items = [];\n this.forEach(function(value) {\n items.push(value);\n });\n return iteratorFor(items)\n };\n\n Headers.prototype.entries = function() {\n var items = [];\n this.forEach(function(value, name) {\n items.push([name, value]);\n });\n return iteratorFor(items)\n };\n\n if (support.iterable) {\n Headers.prototype[Symbol.iterator] = Headers.prototype.entries;\n }\n\n function consumed(body) {\n if (body.bodyUsed) {\n return Promise.reject(new TypeError('Already read'))\n }\n body.bodyUsed = true;\n }\n\n function fileReaderReady(reader) {\n return new Promise(function(resolve, reject) {\n reader.onload = function() {\n resolve(reader.result);\n };\n reader.onerror = function() {\n reject(reader.error);\n };\n })\n }\n\n function readBlobAsArrayBuffer(blob) {\n var reader = new FileReader();\n var promise = fileReaderReady(reader);\n reader.readAsArrayBuffer(blob);\n return promise\n }\n\n function readBlobAsText(blob) {\n var reader = new FileReader();\n var promise = fileReaderReady(reader);\n reader.readAsText(blob);\n return promise\n }\n\n function readArrayBufferAsText(buf) {\n var view = new Uint8Array(buf);\n var chars = new Array(view.length);\n\n for (var i = 0; i < view.length; i++) {\n chars[i] = String.fromCharCode(view[i]);\n }\n return chars.join('')\n }\n\n function bufferClone(buf) {\n if (buf.slice) {\n return buf.slice(0)\n } else {\n var view = new Uint8Array(buf.byteLength);\n view.set(new Uint8Array(buf));\n return view.buffer\n }\n }\n\n function Body() {\n this.bodyUsed = false;\n\n this._initBody = function(body) {\n this._bodyInit = body;\n if (!body) {\n this._bodyText = '';\n } else if (typeof body === 'string') {\n this._bodyText = body;\n } else if (support.blob && Blob.prototype.isPrototypeOf(body)) {\n this._bodyBlob = body;\n } else if (support.formData && FormData.prototype.isPrototypeOf(body)) {\n this._bodyFormData = body;\n } else if (support.searchParams && URLSearchParams.prototype.isPrototypeOf(body)) {\n this._bodyText = body.toString();\n } else if (support.arrayBuffer && support.blob && isDataView(body)) {\n this._bodyArrayBuffer = bufferClone(body.buffer);\n // IE 10-11 can't handle a DataView body.\n this._bodyInit = new Blob([this._bodyArrayBuffer]);\n } else if (support.arrayBuffer && (ArrayBuffer.prototype.isPrototypeOf(body) || isArrayBufferView(body))) {\n this._bodyArrayBuffer = bufferClone(body);\n } else {\n this._bodyText = body = Object.prototype.toString.call(body);\n }\n\n if (!this.headers.get('content-type')) {\n if (typeof body === 'string') {\n this.headers.set('content-type', 'text/plain;charset=UTF-8');\n } else if (this._bodyBlob && this._bodyBlob.type) {\n this.headers.set('content-type', this._bodyBlob.type);\n } else if (support.searchParams && URLSearchParams.prototype.isPrototypeOf(body)) {\n this.headers.set('content-type', 'application/x-www-form-urlencoded;charset=UTF-8');\n }\n }\n };\n\n if (support.blob) {\n this.blob = function() {\n var rejected = consumed(this);\n if (rejected) {\n return rejected\n }\n\n if (this._bodyBlob) {\n return Promise.resolve(this._bodyBlob)\n } else if (this._bodyArrayBuffer) {\n return Promise.resolve(new Blob([this._bodyArrayBuffer]))\n } else if (this._bodyFormData) {\n throw new Error('could not read FormData body as blob')\n } else {\n return Promise.resolve(new Blob([this._bodyText]))\n }\n };\n\n this.arrayBuffer = function() {\n if (this._bodyArrayBuffer) {\n return consumed(this) || Promise.resolve(this._bodyArrayBuffer)\n } else {\n return this.blob().then(readBlobAsArrayBuffer)\n }\n };\n }\n\n this.text = function() {\n var rejected = consumed(this);\n if (rejected) {\n return rejected\n }\n\n if (this._bodyBlob) {\n return readBlobAsText(this._bodyBlob)\n } else if (this._bodyArrayBuffer) {\n return Promise.resolve(readArrayBufferAsText(this._bodyArrayBuffer))\n } else if (this._bodyFormData) {\n throw new Error('could not read FormData body as text')\n } else {\n return Promise.resolve(this._bodyText)\n }\n };\n\n if (support.formData) {\n this.formData = function() {\n return this.text().then(decode)\n };\n }\n\n this.json = function() {\n return this.text().then(JSON.parse)\n };\n\n return this\n }\n\n // HTTP methods whose capitalization should be normalized\n var methods = ['DELETE', 'GET', 'HEAD', 'OPTIONS', 'POST', 'PUT'];\n\n function normalizeMethod(method) {\n var upcased = method.toUpperCase();\n return methods.indexOf(upcased) > -1 ? upcased : method\n }\n\n function Request(input, options) {\n options = options || {};\n var body = options.body;\n\n if (input instanceof Request) {\n if (input.bodyUsed) {\n throw new TypeError('Already read')\n }\n this.url = input.url;\n this.credentials = input.credentials;\n if (!options.headers) {\n this.headers = new Headers(input.headers);\n }\n this.method = input.method;\n this.mode = input.mode;\n this.signal = input.signal;\n if (!body && input._bodyInit != null) {\n body = input._bodyInit;\n input.bodyUsed = true;\n }\n } else {\n this.url = String(input);\n }\n\n this.credentials = options.credentials || this.credentials || 'same-origin';\n if (options.headers || !this.headers) {\n this.headers = new Headers(options.headers);\n }\n this.method = normalizeMethod(options.method || this.method || 'GET');\n this.mode = options.mode || this.mode || null;\n this.signal = options.signal || this.signal;\n this.referrer = null;\n\n if ((this.method === 'GET' || this.method === 'HEAD') && body) {\n throw new TypeError('Body not allowed for GET or HEAD requests')\n }\n this._initBody(body);\n }\n\n Request.prototype.clone = function() {\n return new Request(this, {body: this._bodyInit})\n };\n\n function decode(body) {\n var form = new FormData();\n body\n .trim()\n .split('&')\n .forEach(function(bytes) {\n if (bytes) {\n var split = bytes.split('=');\n var name = split.shift().replace(/\\+/g, ' ');\n var value = split.join('=').replace(/\\+/g, ' ');\n form.append(decodeURIComponent(name), decodeURIComponent(value));\n }\n });\n return form\n }\n\n function parseHeaders(rawHeaders) {\n var headers = new Headers();\n // Replace instances of \\r\\n and \\n followed by at least one space or horizontal tab with a space\n // https://tools.ietf.org/html/rfc7230#section-3.2\n var preProcessedHeaders = rawHeaders.replace(/\\r?\\n[\\t ]+/g, ' ');\n preProcessedHeaders.split(/\\r?\\n/).forEach(function(line) {\n var parts = line.split(':');\n var key = parts.shift().trim();\n if (key) {\n var value = parts.join(':').trim();\n headers.append(key, value);\n }\n });\n return headers\n }\n\n Body.call(Request.prototype);\n\n function Response(bodyInit, options) {\n if (!options) {\n options = {};\n }\n\n this.type = 'default';\n this.status = options.status === undefined ? 200 : options.status;\n this.ok = this.status >= 200 && this.status < 300;\n this.statusText = 'statusText' in options ? options.statusText : 'OK';\n this.headers = new Headers(options.headers);\n this.url = options.url || '';\n this._initBody(bodyInit);\n }\n\n Body.call(Response.prototype);\n\n Response.prototype.clone = function() {\n return new Response(this._bodyInit, {\n status: this.status,\n statusText: this.statusText,\n headers: new Headers(this.headers),\n url: this.url\n })\n };\n\n Response.error = function() {\n var response = new Response(null, {status: 0, statusText: ''});\n response.type = 'error';\n return response\n };\n\n var redirectStatuses = [301, 302, 303, 307, 308];\n\n Response.redirect = function(url, status) {\n if (redirectStatuses.indexOf(status) === -1) {\n throw new RangeError('Invalid status code')\n }\n\n return new Response(null, {status: status, headers: {location: url}})\n };\n\n exports.DOMException = self.DOMException;\n try {\n new exports.DOMException();\n } catch (err) {\n exports.DOMException = function(message, name) {\n this.message = message;\n this.name = name;\n var error = Error(message);\n this.stack = error.stack;\n };\n exports.DOMException.prototype = Object.create(Error.prototype);\n exports.DOMException.prototype.constructor = exports.DOMException;\n }\n\n function fetch(input, init) {\n return new Promise(function(resolve, reject) {\n var request = new Request(input, init);\n\n if (request.signal && request.signal.aborted) {\n return reject(new exports.DOMException('Aborted', 'AbortError'))\n }\n\n var xhr = new XMLHttpRequest();\n\n function abortXhr() {\n xhr.abort();\n }\n\n xhr.onload = function() {\n var options = {\n status: xhr.status,\n statusText: xhr.statusText,\n headers: parseHeaders(xhr.getAllResponseHeaders() || '')\n };\n options.url = 'responseURL' in xhr ? xhr.responseURL : options.headers.get('X-Request-URL');\n var body = 'response' in xhr ? xhr.response : xhr.responseText;\n resolve(new Response(body, options));\n };\n\n xhr.onerror = function() {\n reject(new TypeError('Network request failed'));\n };\n\n xhr.ontimeout = function() {\n reject(new TypeError('Network request failed'));\n };\n\n xhr.onabort = function() {\n reject(new exports.DOMException('Aborted', 'AbortError'));\n };\n\n xhr.open(request.method, request.url, true);\n\n if (request.credentials === 'include') {\n xhr.withCredentials = true;\n } else if (request.credentials === 'omit') {\n xhr.withCredentials = false;\n }\n\n if ('responseType' in xhr && support.blob) {\n xhr.responseType = 'blob';\n }\n\n request.headers.forEach(function(value, name) {\n xhr.setRequestHeader(name, value);\n });\n\n if (request.signal) {\n request.signal.addEventListener('abort', abortXhr);\n\n xhr.onreadystatechange = function() {\n // DONE (success or failure)\n if (xhr.readyState === 4) {\n request.signal.removeEventListener('abort', abortXhr);\n }\n };\n }\n\n xhr.send(typeof request._bodyInit === 'undefined' ? null : request._bodyInit);\n })\n }\n\n fetch.polyfill = true;\n\n if (!self.fetch) {\n self.fetch = fetch;\n self.Headers = Headers;\n self.Request = Request;\n self.Response = Response;\n }\n\n exports.Headers = Headers;\n exports.Request = Request;\n exports.Response = Response;\n exports.fetch = fetch;\n\n Object.defineProperty(exports, '__esModule', { value: true });\n\n return exports;\n\n})({});\n})(__self__);\n__self__.fetch.ponyfill = true;\n// Remove \"polyfill\" property added by whatwg-fetch\ndelete __self__.fetch.polyfill;\n// Choose between native implementation (global) or custom implementation (__self__)\n// var ctx = global.fetch ? global : __self__;\nvar ctx = __self__; // this line disable service worker support temporarily\nexports = ctx.fetch // To enable: import fetch from 'cross-fetch'\nexports.default = ctx.fetch // For TypeScript consumers without esModuleInterop.\nexports.fetch = ctx.fetch // To enable: import {fetch} from 'cross-fetch'\nexports.Headers = ctx.Headers\nexports.Request = ctx.Request\nexports.Response = ctx.Response\nmodule.exports = exports\n","//\n// THIS FILE IS AUTOMATICALLY GENERATED! DO NOT EDIT BY HAND!\n//\n;\n(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n ? module.exports = factory()\n : typeof define === 'function' && define.amd\n ? define(factory) :\n // cf. https://github.com/dankogai/js-base64/issues/119\n (function () {\n // existing version for noConflict()\n var _Base64 = global.Base64;\n var gBase64 = factory();\n gBase64.noConflict = function () {\n global.Base64 = _Base64;\n return gBase64;\n };\n if (global.Meteor) { // Meteor.js\n Base64 = gBase64;\n }\n global.Base64 = gBase64;\n })();\n}((typeof self !== 'undefined' ? self\n : typeof window !== 'undefined' ? window\n : typeof global !== 'undefined' ? global\n : this), function () {\n 'use strict';\n /**\n * base64.ts\n *\n * Licensed under the BSD 3-Clause License.\n * http://opensource.org/licenses/BSD-3-Clause\n *\n * References:\n * http://en.wikipedia.org/wiki/Base64\n *\n * @author Dan Kogai (https://github.com/dankogai)\n */\n var version = '3.7.2';\n /**\n * @deprecated use lowercase `version`.\n */\n var VERSION = version;\n var _hasatob = typeof atob === 'function';\n var _hasbtoa = typeof btoa === 'function';\n var _hasBuffer = typeof Buffer === 'function';\n var _TD = typeof TextDecoder === 'function' ? new TextDecoder() : undefined;\n var _TE = typeof TextEncoder === 'function' ? new TextEncoder() : undefined;\n var b64ch = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=';\n var b64chs = Array.prototype.slice.call(b64ch);\n var b64tab = (function (a) {\n var tab = {};\n a.forEach(function (c, i) { return tab[c] = i; });\n return tab;\n })(b64chs);\n var b64re = /^(?:[A-Za-z\\d+\\/]{4})*?(?:[A-Za-z\\d+\\/]{2}(?:==)?|[A-Za-z\\d+\\/]{3}=?)?$/;\n var _fromCC = String.fromCharCode.bind(String);\n var _U8Afrom = typeof Uint8Array.from === 'function'\n ? Uint8Array.from.bind(Uint8Array)\n : function (it, fn) {\n if (fn === void 0) { fn = function (x) { return x; }; }\n return new Uint8Array(Array.prototype.slice.call(it, 0).map(fn));\n };\n var _mkUriSafe = function (src) { return src\n .replace(/=/g, '').replace(/[+\\/]/g, function (m0) { return m0 == '+' ? '-' : '_'; }); };\n var _tidyB64 = function (s) { return s.replace(/[^A-Za-z0-9\\+\\/]/g, ''); };\n /**\n * polyfill version of `btoa`\n */\n var btoaPolyfill = function (bin) {\n // console.log('polyfilled');\n var u32, c0, c1, c2, asc = '';\n var pad = bin.length % 3;\n for (var i = 0; i < bin.length;) {\n if ((c0 = bin.charCodeAt(i++)) > 255 ||\n (c1 = bin.charCodeAt(i++)) > 255 ||\n (c2 = bin.charCodeAt(i++)) > 255)\n throw new TypeError('invalid character found');\n u32 = (c0 << 16) | (c1 << 8) | c2;\n asc += b64chs[u32 >> 18 & 63]\n + b64chs[u32 >> 12 & 63]\n + b64chs[u32 >> 6 & 63]\n + b64chs[u32 & 63];\n }\n return pad ? asc.slice(0, pad - 3) + \"===\".substring(pad) : asc;\n };\n /**\n * does what `window.btoa` of web browsers do.\n * @param {String} bin binary string\n * @returns {string} Base64-encoded string\n */\n var _btoa = _hasbtoa ? function (bin) { return btoa(bin); }\n : _hasBuffer ? function (bin) { return Buffer.from(bin, 'binary').toString('base64'); }\n : btoaPolyfill;\n var _fromUint8Array = _hasBuffer\n ? function (u8a) { return Buffer.from(u8a).toString('base64'); }\n : function (u8a) {\n // cf. https://stackoverflow.com/questions/12710001/how-to-convert-uint8-array-to-base64-encoded-string/12713326#12713326\n var maxargs = 0x1000;\n var strs = [];\n for (var i = 0, l = u8a.length; i < l; i += maxargs) {\n strs.push(_fromCC.apply(null, u8a.subarray(i, i + maxargs)));\n }\n return _btoa(strs.join(''));\n };\n /**\n * converts a Uint8Array to a Base64 string.\n * @param {boolean} [urlsafe] URL-and-filename-safe a la RFC4648 §5\n * @returns {string} Base64 string\n */\n var fromUint8Array = function (u8a, urlsafe) {\n if (urlsafe === void 0) { urlsafe = false; }\n return urlsafe ? _mkUriSafe(_fromUint8Array(u8a)) : _fromUint8Array(u8a);\n };\n // This trick is found broken https://github.com/dankogai/js-base64/issues/130\n // const utob = (src: string) => unescape(encodeURIComponent(src));\n // reverting good old fationed regexp\n var cb_utob = function (c) {\n if (c.length < 2) {\n var cc = c.charCodeAt(0);\n return cc < 0x80 ? c\n : cc < 0x800 ? (_fromCC(0xc0 | (cc >>> 6))\n + _fromCC(0x80 | (cc & 0x3f)))\n : (_fromCC(0xe0 | ((cc >>> 12) & 0x0f))\n + _fromCC(0x80 | ((cc >>> 6) & 0x3f))\n + _fromCC(0x80 | (cc & 0x3f)));\n }\n else {\n var cc = 0x10000\n + (c.charCodeAt(0) - 0xD800) * 0x400\n + (c.charCodeAt(1) - 0xDC00);\n return (_fromCC(0xf0 | ((cc >>> 18) & 0x07))\n + _fromCC(0x80 | ((cc >>> 12) & 0x3f))\n + _fromCC(0x80 | ((cc >>> 6) & 0x3f))\n + _fromCC(0x80 | (cc & 0x3f)));\n }\n };\n var re_utob = /[\\uD800-\\uDBFF][\\uDC00-\\uDFFFF]|[^\\x00-\\x7F]/g;\n /**\n * @deprecated should have been internal use only.\n * @param {string} src UTF-8 string\n * @returns {string} UTF-16 string\n */\n var utob = function (u) { return u.replace(re_utob, cb_utob); };\n //\n var _encode = _hasBuffer\n ? function (s) { return Buffer.from(s, 'utf8').toString('base64'); }\n : _TE\n ? function (s) { return _fromUint8Array(_TE.encode(s)); }\n : function (s) { return _btoa(utob(s)); };\n /**\n * converts a UTF-8-encoded string to a Base64 string.\n * @param {boolean} [urlsafe] if `true` make the result URL-safe\n * @returns {string} Base64 string\n */\n var encode = function (src, urlsafe) {\n if (urlsafe === void 0) { urlsafe = false; }\n return urlsafe\n ? _mkUriSafe(_encode(src))\n : _encode(src);\n };\n /**\n * converts a UTF-8-encoded string to URL-safe Base64 RFC4648 §5.\n * @returns {string} Base64 string\n */\n var encodeURI = function (src) { return encode(src, true); };\n // This trick is found broken https://github.com/dankogai/js-base64/issues/130\n // const btou = (src: string) => decodeURIComponent(escape(src));\n // reverting good old fationed regexp\n var re_btou = /[\\xC0-\\xDF][\\x80-\\xBF]|[\\xE0-\\xEF][\\x80-\\xBF]{2}|[\\xF0-\\xF7][\\x80-\\xBF]{3}/g;\n var cb_btou = function (cccc) {\n switch (cccc.length) {\n case 4:\n var cp = ((0x07 & cccc.charCodeAt(0)) << 18)\n | ((0x3f & cccc.charCodeAt(1)) << 12)\n | ((0x3f & cccc.charCodeAt(2)) << 6)\n | (0x3f & cccc.charCodeAt(3)), offset = cp - 0x10000;\n return (_fromCC((offset >>> 10) + 0xD800)\n + _fromCC((offset & 0x3FF) + 0xDC00));\n case 3:\n return _fromCC(((0x0f & cccc.charCodeAt(0)) << 12)\n | ((0x3f & cccc.charCodeAt(1)) << 6)\n | (0x3f & cccc.charCodeAt(2)));\n default:\n return _fromCC(((0x1f & cccc.charCodeAt(0)) << 6)\n | (0x3f & cccc.charCodeAt(1)));\n }\n };\n /**\n * @deprecated should have been internal use only.\n * @param {string} src UTF-16 string\n * @returns {string} UTF-8 string\n */\n var btou = function (b) { return b.replace(re_btou, cb_btou); };\n /**\n * polyfill version of `atob`\n */\n var atobPolyfill = function (asc) {\n // console.log('polyfilled');\n asc = asc.replace(/\\s+/g, '');\n if (!b64re.test(asc))\n throw new TypeError('malformed base64.');\n asc += '=='.slice(2 - (asc.length & 3));\n var u24, bin = '', r1, r2;\n for (var i = 0; i < asc.length;) {\n u24 = b64tab[asc.charAt(i++)] << 18\n | b64tab[asc.charAt(i++)] << 12\n | (r1 = b64tab[asc.charAt(i++)]) << 6\n | (r2 = b64tab[asc.charAt(i++)]);\n bin += r1 === 64 ? _fromCC(u24 >> 16 & 255)\n : r2 === 64 ? _fromCC(u24 >> 16 & 255, u24 >> 8 & 255)\n : _fromCC(u24 >> 16 & 255, u24 >> 8 & 255, u24 & 255);\n }\n return bin;\n };\n /**\n * does what `window.atob` of web browsers do.\n * @param {String} asc Base64-encoded string\n * @returns {string} binary string\n */\n var _atob = _hasatob ? function (asc) { return atob(_tidyB64(asc)); }\n : _hasBuffer ? function (asc) { return Buffer.from(asc, 'base64').toString('binary'); }\n : atobPolyfill;\n //\n var _toUint8Array = _hasBuffer\n ? function (a) { return _U8Afrom(Buffer.from(a, 'base64')); }\n : function (a) { return _U8Afrom(_atob(a), function (c) { return c.charCodeAt(0); }); };\n /**\n * converts a Base64 string to a Uint8Array.\n */\n var toUint8Array = function (a) { return _toUint8Array(_unURI(a)); };\n //\n var _decode = _hasBuffer\n ? function (a) { return Buffer.from(a, 'base64').toString('utf8'); }\n : _TD\n ? function (a) { return _TD.decode(_toUint8Array(a)); }\n : function (a) { return btou(_atob(a)); };\n var _unURI = function (a) { return _tidyB64(a.replace(/[-_]/g, function (m0) { return m0 == '-' ? '+' : '/'; })); };\n /**\n * converts a Base64 string to a UTF-8 string.\n * @param {String} src Base64 string. Both normal and URL-safe are supported\n * @returns {string} UTF-8 string\n */\n var decode = function (src) { return _decode(_unURI(src)); };\n /**\n * check if a value is a valid Base64 string\n * @param {String} src a value to check\n */\n var isValid = function (src) {\n if (typeof src !== 'string')\n return false;\n var s = src.replace(/\\s+/g, '').replace(/={0,2}$/, '');\n return !/[^\\s0-9a-zA-Z\\+/]/.test(s) || !/[^\\s0-9a-zA-Z\\-_]/.test(s);\n };\n //\n var _noEnum = function (v) {\n return {\n value: v, enumerable: false, writable: true, configurable: true\n };\n };\n /**\n * extend String.prototype with relevant methods\n */\n var extendString = function () {\n var _add = function (name, body) { return Object.defineProperty(String.prototype, name, _noEnum(body)); };\n _add('fromBase64', function () { return decode(this); });\n _add('toBase64', function (urlsafe) { return encode(this, urlsafe); });\n _add('toBase64URI', function () { return encode(this, true); });\n _add('toBase64URL', function () { return encode(this, true); });\n _add('toUint8Array', function () { return toUint8Array(this); });\n };\n /**\n * extend Uint8Array.prototype with relevant methods\n */\n var extendUint8Array = function () {\n var _add = function (name, body) { return Object.defineProperty(Uint8Array.prototype, name, _noEnum(body)); };\n _add('toBase64', function (urlsafe) { return fromUint8Array(this, urlsafe); });\n _add('toBase64URI', function () { return fromUint8Array(this, true); });\n _add('toBase64URL', function () { return fromUint8Array(this, true); });\n };\n /**\n * extend Builtin prototypes with relevant methods\n */\n var extendBuiltins = function () {\n extendString();\n extendUint8Array();\n };\n var gBase64 = {\n version: version,\n VERSION: VERSION,\n atob: _atob,\n atobPolyfill: atobPolyfill,\n btoa: _btoa,\n btoaPolyfill: btoaPolyfill,\n fromBase64: decode,\n toBase64: encode,\n encode: encode,\n encodeURI: encodeURI,\n encodeURL: encodeURI,\n utob: utob,\n btou: btou,\n decode: decode,\n isValid: isValid,\n fromUint8Array: fromUint8Array,\n toUint8Array: toUint8Array,\n extendString: extendString,\n extendUint8Array: extendUint8Array,\n extendBuiltins: extendBuiltins\n };\n //\n // export Base64 to the namespace\n //\n // ES5 is yet to have Object.assign() that may make transpilers unhappy.\n // gBase64.Base64 = Object.assign({}, gBase64);\n gBase64.Base64 = {};\n Object.keys(gBase64).forEach(function (k) { return gBase64.Base64[k] = gBase64[k]; });\n return gBase64;\n}));\n","/**\n * Helpers.\n */\n\nvar s = 1000;\nvar m = s * 60;\nvar h = m * 60;\nvar d = h * 24;\nvar w = d * 7;\nvar y = d * 365.25;\n\n/**\n * Parse or format the given `val`.\n *\n * Options:\n *\n * - `long` verbose formatting [false]\n *\n * @param {String|Number} val\n * @param {Object} [options]\n * @throws {Error} throw an error if val is not a non-empty string or a number\n * @return {String|Number}\n * @api public\n */\n\nmodule.exports = function(val, options) {\n options = options || {};\n var type = typeof val;\n if (type === 'string' && val.length > 0) {\n return parse(val);\n } else if (type === 'number' && isFinite(val)) {\n return options.long ? fmtLong(val) : fmtShort(val);\n }\n throw new Error(\n 'val is not a non-empty string or a valid number. val=' +\n JSON.stringify(val)\n );\n};\n\n/**\n * Parse the given `str` and return milliseconds.\n *\n * @param {String} str\n * @return {Number}\n * @api private\n */\n\nfunction parse(str) {\n str = String(str);\n if (str.length > 100) {\n return;\n }\n var match = /^(-?(?:\\d+)?\\.?\\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(\n str\n );\n if (!match) {\n return;\n }\n var n = parseFloat(match[1]);\n var type = (match[2] || 'ms').toLowerCase();\n switch (type) {\n case 'years':\n case 'year':\n case 'yrs':\n case 'yr':\n case 'y':\n return n * y;\n case 'weeks':\n case 'week':\n case 'w':\n return n * w;\n case 'days':\n case 'day':\n case 'd':\n return n * d;\n case 'hours':\n case 'hour':\n case 'hrs':\n case 'hr':\n case 'h':\n return n * h;\n case 'minutes':\n case 'minute':\n case 'mins':\n case 'min':\n case 'm':\n return n * m;\n case 'seconds':\n case 'second':\n case 'secs':\n case 'sec':\n case 's':\n return n * s;\n case 'milliseconds':\n case 'millisecond':\n case 'msecs':\n case 'msec':\n case 'ms':\n return n;\n default:\n return undefined;\n }\n}\n\n/**\n * Short format for `ms`.\n *\n * @param {Number} ms\n * @return {String}\n * @api private\n */\n\nfunction fmtShort(ms) {\n var msAbs = Math.abs(ms);\n if (msAbs >= d) {\n return Math.round(ms / d) + 'd';\n }\n if (msAbs >= h) {\n return Math.round(ms / h) + 'h';\n }\n if (msAbs >= m) {\n return Math.round(ms / m) + 'm';\n }\n if (msAbs >= s) {\n return Math.round(ms / s) + 's';\n }\n return ms + 'ms';\n}\n\n/**\n * Long format for `ms`.\n *\n * @param {Number} ms\n * @return {String}\n * @api private\n */\n\nfunction fmtLong(ms) {\n var msAbs = Math.abs(ms);\n if (msAbs >= d) {\n return plural(ms, msAbs, d, 'day');\n }\n if (msAbs >= h) {\n return plural(ms, msAbs, h, 'hour');\n }\n if (msAbs >= m) {\n return plural(ms, msAbs, m, 'minute');\n }\n if (msAbs >= s) {\n return plural(ms, msAbs, s, 'second');\n }\n return ms + ' ms';\n}\n\n/**\n * Pluralization helper.\n */\n\nfunction plural(ms, msAbs, n, name) {\n var isPlural = msAbs >= n * 1.5;\n return Math.round(ms / n) + ' ' + name + (isPlural ? 's' : '');\n}\n","function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n return arr2;\n}\nmodule.exports = _arrayLikeToArray, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var arrayLikeToArray = require(\"./arrayLikeToArray.js\");\nfunction _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return arrayLikeToArray(arr);\n}\nmodule.exports = _arrayWithoutHoles, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n return self;\n}\nmodule.exports = _assertThisInitialized, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n}\nfunction _asyncToGenerator(fn) {\n return function () {\n var self = this,\n args = arguments;\n return new Promise(function (resolve, reject) {\n var gen = fn.apply(self, args);\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n _next(undefined);\n });\n };\n}\nmodule.exports = _asyncToGenerator, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\nmodule.exports = _classCallCheck, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var setPrototypeOf = require(\"./setPrototypeOf.js\");\nvar isNativeReflectConstruct = require(\"./isNativeReflectConstruct.js\");\nfunction _construct(t, e, r) {\n if (isNativeReflectConstruct()) return Reflect.construct.apply(null, arguments);\n var o = [null];\n o.push.apply(o, e);\n var p = new (t.bind.apply(t, o))();\n return r && setPrototypeOf(p, r.prototype), p;\n}\nmodule.exports = _construct, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var toPropertyKey = require(\"./toPropertyKey.js\");\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, toPropertyKey(descriptor.key), descriptor);\n }\n}\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n Object.defineProperty(Constructor, \"prototype\", {\n writable: false\n });\n return Constructor;\n}\nmodule.exports = _createClass, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var toPropertyKey = require(\"./toPropertyKey.js\");\nfunction _defineProperty(obj, key, value) {\n key = toPropertyKey(key);\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}\nmodule.exports = _defineProperty, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _getPrototypeOf(o) {\n module.exports = _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;\n return _getPrototypeOf(o);\n}\nmodule.exports = _getPrototypeOf, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var setPrototypeOf = require(\"./setPrototypeOf.js\");\nfunction _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n Object.defineProperty(subClass, \"prototype\", {\n writable: false\n });\n if (superClass) setPrototypeOf(subClass, superClass);\n}\nmodule.exports = _inherits, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n \"default\": obj\n };\n}\nmodule.exports = _interopRequireDefault, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _isNativeFunction(fn) {\n try {\n return Function.toString.call(fn).indexOf(\"[native code]\") !== -1;\n } catch (e) {\n return typeof fn === \"function\";\n }\n}\nmodule.exports = _isNativeFunction, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _isNativeReflectConstruct() {\n try {\n var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {}));\n } catch (t) {}\n return (module.exports = _isNativeReflectConstruct = function _isNativeReflectConstruct() {\n return !!t;\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports)();\n}\nmodule.exports = _isNativeReflectConstruct, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter);\n}\nmodule.exports = _iterableToArray, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\nmodule.exports = _nonIterableSpread, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var objectWithoutPropertiesLoose = require(\"./objectWithoutPropertiesLoose.js\");\nfunction _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n var target = objectWithoutPropertiesLoose(source, excluded);\n var key, i;\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n for (i = 0; i < sourceSymbolKeys.length; i++) {\n key = sourceSymbolKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;\n target[key] = source[key];\n }\n }\n return target;\n}\nmodule.exports = _objectWithoutProperties, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n return target;\n}\nmodule.exports = _objectWithoutPropertiesLoose, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var _typeof = require(\"./typeof.js\")[\"default\"];\nvar assertThisInitialized = require(\"./assertThisInitialized.js\");\nfunction _possibleConstructorReturn(self, call) {\n if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) {\n return call;\n } else if (call !== void 0) {\n throw new TypeError(\"Derived constructors may only return object or undefined\");\n }\n return assertThisInitialized(self);\n}\nmodule.exports = _possibleConstructorReturn, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var _typeof = require(\"./typeof.js\")[\"default\"];\nfunction _regeneratorRuntime() {\n \"use strict\"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */\n module.exports = _regeneratorRuntime = function _regeneratorRuntime() {\n return e;\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;\n var t,\n e = {},\n r = Object.prototype,\n n = r.hasOwnProperty,\n o = Object.defineProperty || function (t, e, r) {\n t[e] = r.value;\n },\n i = \"function\" == typeof Symbol ? Symbol : {},\n a = i.iterator || \"@@iterator\",\n c = i.asyncIterator || \"@@asyncIterator\",\n u = i.toStringTag || \"@@toStringTag\";\n function define(t, e, r) {\n return Object.defineProperty(t, e, {\n value: r,\n enumerable: !0,\n configurable: !0,\n writable: !0\n }), t[e];\n }\n try {\n define({}, \"\");\n } catch (t) {\n define = function define(t, e, r) {\n return t[e] = r;\n };\n }\n function wrap(t, e, r, n) {\n var i = e && e.prototype instanceof Generator ? e : Generator,\n a = Object.create(i.prototype),\n c = new Context(n || []);\n return o(a, \"_invoke\", {\n value: makeInvokeMethod(t, r, c)\n }), a;\n }\n function tryCatch(t, e, r) {\n try {\n return {\n type: \"normal\",\n arg: t.call(e, r)\n };\n } catch (t) {\n return {\n type: \"throw\",\n arg: t\n };\n }\n }\n e.wrap = wrap;\n var h = \"suspendedStart\",\n l = \"suspendedYield\",\n f = \"executing\",\n s = \"completed\",\n y = {};\n function Generator() {}\n function GeneratorFunction() {}\n function GeneratorFunctionPrototype() {}\n var p = {};\n define(p, a, function () {\n return this;\n });\n var d = Object.getPrototypeOf,\n v = d && d(d(values([])));\n v && v !== r && n.call(v, a) && (p = v);\n var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p);\n function defineIteratorMethods(t) {\n [\"next\", \"throw\", \"return\"].forEach(function (e) {\n define(t, e, function (t) {\n return this._invoke(e, t);\n });\n });\n }\n function AsyncIterator(t, e) {\n function invoke(r, o, i, a) {\n var c = tryCatch(t[r], t, o);\n if (\"throw\" !== c.type) {\n var u = c.arg,\n h = u.value;\n return h && \"object\" == _typeof(h) && n.call(h, \"__await\") ? e.resolve(h.__await).then(function (t) {\n invoke(\"next\", t, i, a);\n }, function (t) {\n invoke(\"throw\", t, i, a);\n }) : e.resolve(h).then(function (t) {\n u.value = t, i(u);\n }, function (t) {\n return invoke(\"throw\", t, i, a);\n });\n }\n a(c.arg);\n }\n var r;\n o(this, \"_invoke\", {\n value: function value(t, n) {\n function callInvokeWithMethodAndArg() {\n return new e(function (e, r) {\n invoke(t, n, e, r);\n });\n }\n return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg();\n }\n });\n }\n function makeInvokeMethod(e, r, n) {\n var o = h;\n return function (i, a) {\n if (o === f) throw new Error(\"Generator is already running\");\n if (o === s) {\n if (\"throw\" === i) throw a;\n return {\n value: t,\n done: !0\n };\n }\n for (n.method = i, n.arg = a;;) {\n var c = n.delegate;\n if (c) {\n var u = maybeInvokeDelegate(c, n);\n if (u) {\n if (u === y) continue;\n return u;\n }\n }\n if (\"next\" === n.method) n.sent = n._sent = n.arg;else if (\"throw\" === n.method) {\n if (o === h) throw o = s, n.arg;\n n.dispatchException(n.arg);\n } else \"return\" === n.method && n.abrupt(\"return\", n.arg);\n o = f;\n var p = tryCatch(e, r, n);\n if (\"normal\" === p.type) {\n if (o = n.done ? s : l, p.arg === y) continue;\n return {\n value: p.arg,\n done: n.done\n };\n }\n \"throw\" === p.type && (o = s, n.method = \"throw\", n.arg = p.arg);\n }\n };\n }\n function maybeInvokeDelegate(e, r) {\n var n = r.method,\n o = e.iterator[n];\n if (o === t) return r.delegate = null, \"throw\" === n && e.iterator[\"return\"] && (r.method = \"return\", r.arg = t, maybeInvokeDelegate(e, r), \"throw\" === r.method) || \"return\" !== n && (r.method = \"throw\", r.arg = new TypeError(\"The iterator does not provide a '\" + n + \"' method\")), y;\n var i = tryCatch(o, e.iterator, r.arg);\n if (\"throw\" === i.type) return r.method = \"throw\", r.arg = i.arg, r.delegate = null, y;\n var a = i.arg;\n return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, \"return\" !== r.method && (r.method = \"next\", r.arg = t), r.delegate = null, y) : a : (r.method = \"throw\", r.arg = new TypeError(\"iterator result is not an object\"), r.delegate = null, y);\n }\n function pushTryEntry(t) {\n var e = {\n tryLoc: t[0]\n };\n 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e);\n }\n function resetTryEntry(t) {\n var e = t.completion || {};\n e.type = \"normal\", delete e.arg, t.completion = e;\n }\n function Context(t) {\n this.tryEntries = [{\n tryLoc: \"root\"\n }], t.forEach(pushTryEntry, this), this.reset(!0);\n }\n function values(e) {\n if (e || \"\" === e) {\n var r = e[a];\n if (r) return r.call(e);\n if (\"function\" == typeof e.next) return e;\n if (!isNaN(e.length)) {\n var o = -1,\n i = function next() {\n for (; ++o < e.length;) if (n.call(e, o)) return next.value = e[o], next.done = !1, next;\n return next.value = t, next.done = !0, next;\n };\n return i.next = i;\n }\n }\n throw new TypeError(_typeof(e) + \" is not iterable\");\n }\n return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(g, \"constructor\", {\n value: GeneratorFunctionPrototype,\n configurable: !0\n }), o(GeneratorFunctionPrototype, \"constructor\", {\n value: GeneratorFunction,\n configurable: !0\n }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, u, \"GeneratorFunction\"), e.isGeneratorFunction = function (t) {\n var e = \"function\" == typeof t && t.constructor;\n return !!e && (e === GeneratorFunction || \"GeneratorFunction\" === (e.displayName || e.name));\n }, e.mark = function (t) {\n return Object.setPrototypeOf ? Object.setPrototypeOf(t, GeneratorFunctionPrototype) : (t.__proto__ = GeneratorFunctionPrototype, define(t, u, \"GeneratorFunction\")), t.prototype = Object.create(g), t;\n }, e.awrap = function (t) {\n return {\n __await: t\n };\n }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, c, function () {\n return this;\n }), e.AsyncIterator = AsyncIterator, e.async = function (t, r, n, o, i) {\n void 0 === i && (i = Promise);\n var a = new AsyncIterator(wrap(t, r, n, o), i);\n return e.isGeneratorFunction(r) ? a : a.next().then(function (t) {\n return t.done ? t.value : a.next();\n });\n }, defineIteratorMethods(g), define(g, u, \"Generator\"), define(g, a, function () {\n return this;\n }), define(g, \"toString\", function () {\n return \"[object Generator]\";\n }), e.keys = function (t) {\n var e = Object(t),\n r = [];\n for (var n in e) r.push(n);\n return r.reverse(), function next() {\n for (; r.length;) {\n var t = r.pop();\n if (t in e) return next.value = t, next.done = !1, next;\n }\n return next.done = !0, next;\n };\n }, e.values = values, Context.prototype = {\n constructor: Context,\n reset: function reset(e) {\n if (this.prev = 0, this.next = 0, this.sent = this._sent = t, this.done = !1, this.delegate = null, this.method = \"next\", this.arg = t, this.tryEntries.forEach(resetTryEntry), !e) for (var r in this) \"t\" === r.charAt(0) && n.call(this, r) && !isNaN(+r.slice(1)) && (this[r] = t);\n },\n stop: function stop() {\n this.done = !0;\n var t = this.tryEntries[0].completion;\n if (\"throw\" === t.type) throw t.arg;\n return this.rval;\n },\n dispatchException: function dispatchException(e) {\n if (this.done) throw e;\n var r = this;\n function handle(n, o) {\n return a.type = \"throw\", a.arg = e, r.next = n, o && (r.method = \"next\", r.arg = t), !!o;\n }\n for (var o = this.tryEntries.length - 1; o >= 0; --o) {\n var i = this.tryEntries[o],\n a = i.completion;\n if (\"root\" === i.tryLoc) return handle(\"end\");\n if (i.tryLoc <= this.prev) {\n var c = n.call(i, \"catchLoc\"),\n u = n.call(i, \"finallyLoc\");\n if (c && u) {\n if (this.prev < i.catchLoc) return handle(i.catchLoc, !0);\n if (this.prev < i.finallyLoc) return handle(i.finallyLoc);\n } else if (c) {\n if (this.prev < i.catchLoc) return handle(i.catchLoc, !0);\n } else {\n if (!u) throw new Error(\"try statement without catch or finally\");\n if (this.prev < i.finallyLoc) return handle(i.finallyLoc);\n }\n }\n }\n },\n abrupt: function abrupt(t, e) {\n for (var r = this.tryEntries.length - 1; r >= 0; --r) {\n var o = this.tryEntries[r];\n if (o.tryLoc <= this.prev && n.call(o, \"finallyLoc\") && this.prev < o.finallyLoc) {\n var i = o;\n break;\n }\n }\n i && (\"break\" === t || \"continue\" === t) && i.tryLoc <= e && e <= i.finallyLoc && (i = null);\n var a = i ? i.completion : {};\n return a.type = t, a.arg = e, i ? (this.method = \"next\", this.next = i.finallyLoc, y) : this.complete(a);\n },\n complete: function complete(t, e) {\n if (\"throw\" === t.type) throw t.arg;\n return \"break\" === t.type || \"continue\" === t.type ? this.next = t.arg : \"return\" === t.type ? (this.rval = this.arg = t.arg, this.method = \"return\", this.next = \"end\") : \"normal\" === t.type && e && (this.next = e), y;\n },\n finish: function finish(t) {\n for (var e = this.tryEntries.length - 1; e >= 0; --e) {\n var r = this.tryEntries[e];\n if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y;\n }\n },\n \"catch\": function _catch(t) {\n for (var e = this.tryEntries.length - 1; e >= 0; --e) {\n var r = this.tryEntries[e];\n if (r.tryLoc === t) {\n var n = r.completion;\n if (\"throw\" === n.type) {\n var o = n.arg;\n resetTryEntry(r);\n }\n return o;\n }\n }\n throw new Error(\"illegal catch attempt\");\n },\n delegateYield: function delegateYield(e, r, n) {\n return this.delegate = {\n iterator: values(e),\n resultName: r,\n nextLoc: n\n }, \"next\" === this.method && (this.arg = t), y;\n }\n }, e;\n}\nmodule.exports = _regeneratorRuntime, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _setPrototypeOf(o, p) {\n module.exports = _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;\n return _setPrototypeOf(o, p);\n}\nmodule.exports = _setPrototypeOf, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var arrayWithoutHoles = require(\"./arrayWithoutHoles.js\");\nvar iterableToArray = require(\"./iterableToArray.js\");\nvar unsupportedIterableToArray = require(\"./unsupportedIterableToArray.js\");\nvar nonIterableSpread = require(\"./nonIterableSpread.js\");\nfunction _toConsumableArray(arr) {\n return arrayWithoutHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableSpread();\n}\nmodule.exports = _toConsumableArray, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var _typeof = require(\"./typeof.js\")[\"default\"];\nfunction toPrimitive(t, r) {\n if (\"object\" != _typeof(t) || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != _typeof(i)) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nmodule.exports = toPrimitive, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var _typeof = require(\"./typeof.js\")[\"default\"];\nvar toPrimitive = require(\"./toPrimitive.js\");\nfunction toPropertyKey(t) {\n var i = toPrimitive(t, \"string\");\n return \"symbol\" == _typeof(i) ? i : String(i);\n}\nmodule.exports = toPropertyKey, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _typeof(o) {\n \"@babel/helpers - typeof\";\n\n return (module.exports = _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o;\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports), _typeof(o);\n}\nmodule.exports = _typeof, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var arrayLikeToArray = require(\"./arrayLikeToArray.js\");\nfunction _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);\n}\nmodule.exports = _unsupportedIterableToArray, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var getPrototypeOf = require(\"./getPrototypeOf.js\");\nvar setPrototypeOf = require(\"./setPrototypeOf.js\");\nvar isNativeFunction = require(\"./isNativeFunction.js\");\nvar construct = require(\"./construct.js\");\nfunction _wrapNativeSuper(Class) {\n var _cache = typeof Map === \"function\" ? new Map() : undefined;\n module.exports = _wrapNativeSuper = function _wrapNativeSuper(Class) {\n if (Class === null || !isNativeFunction(Class)) return Class;\n if (typeof Class !== \"function\") {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n if (typeof _cache !== \"undefined\") {\n if (_cache.has(Class)) return _cache.get(Class);\n _cache.set(Class, Wrapper);\n }\n function Wrapper() {\n return construct(Class, arguments, getPrototypeOf(this).constructor);\n }\n Wrapper.prototype = Object.create(Class.prototype, {\n constructor: {\n value: Wrapper,\n enumerable: false,\n writable: true,\n configurable: true\n }\n });\n return setPrototypeOf(Wrapper, Class);\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;\n return _wrapNativeSuper(Class);\n}\nmodule.exports = _wrapNativeSuper, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","// TODO(Babel 8): Remove this file.\n\nvar runtime = require(\"../helpers/regeneratorRuntime\")();\nmodule.exports = runtime;\n\n// Copied from https://github.com/facebook/regenerator/blob/main/packages/runtime/runtime.js#L736=\ntry {\n regeneratorRuntime = runtime;\n} catch (accidentalStrictMode) {\n if (typeof globalThis === \"object\") {\n globalThis.regeneratorRuntime = runtime;\n } else {\n Function(\"r\", \"regeneratorRuntime = r\")(runtime);\n }\n}\n","import './webcrypto-shim.mjs'\nexport default window.crypto\n","/**\n * @file Web Cryptography API shim\n * @author Artem S Vybornov \n * @license MIT\n */\n(function (global, factory) {\n if (typeof define === 'function' && define.amd) {\n // AMD. Register as an anonymous module.\n define([], function () {\n return factory(global);\n });\n } else if (typeof module === 'object' && module.exports) {\n // CommonJS-like environments that support module.exports\n module.exports = factory(global);\n } else {\n factory(global);\n }\n}(typeof self !== 'undefined' ? self : this, function (global) {\n 'use strict';\n\n if ( typeof Promise !== 'function' )\n throw \"Promise support required\";\n\n var _crypto = global.crypto || global.msCrypto;\n if ( !_crypto ) return;\n\n var _subtle = _crypto.subtle || _crypto.webkitSubtle;\n if ( !_subtle ) return;\n\n var _Crypto = global.Crypto || _crypto.constructor || Object,\n _SubtleCrypto = global.SubtleCrypto || _subtle.constructor || Object,\n _CryptoKey = global.CryptoKey || global.Key || Object;\n\n var isEdge = global.navigator.userAgent.indexOf('Edge/') > -1;\n var isIE = !!global.msCrypto && !isEdge;\n var isWebkit = !_crypto.subtle && !!_crypto.webkitSubtle;\n if ( !isIE && !isWebkit ) return;\n\n function s2a ( s ) {\n return btoa(s).replace(/\\=+$/, '').replace(/\\+/g, '-').replace(/\\//g, '_');\n }\n\n function a2s ( s ) {\n s += '===', s = s.slice( 0, -s.length % 4 );\n return atob( s.replace(/-/g, '+').replace(/_/g, '/') );\n }\n\n function s2b ( s ) {\n var b = new Uint8Array(s.length);\n for ( var i = 0; i < s.length; i++ ) b[i] = s.charCodeAt(i);\n return b;\n }\n\n function b2s ( b ) {\n if ( b instanceof ArrayBuffer ) b = new Uint8Array(b);\n return String.fromCharCode.apply( String, b );\n }\n\n function alg ( a ) {\n var r = { 'name': (a.name || a || '').toUpperCase().replace('V','v') };\n switch ( r.name ) {\n case 'SHA-1':\n case 'SHA-256':\n case 'SHA-384':\n case 'SHA-512':\n break;\n case 'AES-CBC':\n case 'AES-GCM':\n case 'AES-KW':\n if ( a.length ) r['length'] = a.length;\n break;\n case 'HMAC':\n if ( a.hash ) r['hash'] = alg(a.hash);\n if ( a.length ) r['length'] = a.length;\n break;\n case 'RSAES-PKCS1-v1_5':\n if ( a.publicExponent ) r['publicExponent'] = new Uint8Array(a.publicExponent);\n if ( a.modulusLength ) r['modulusLength'] = a.modulusLength;\n break;\n case 'RSASSA-PKCS1-v1_5':\n case 'RSA-OAEP':\n if ( a.hash ) r['hash'] = alg(a.hash);\n if ( a.publicExponent ) r['publicExponent'] = new Uint8Array(a.publicExponent);\n if ( a.modulusLength ) r['modulusLength'] = a.modulusLength;\n break;\n default:\n throw new SyntaxError(\"Bad algorithm name\");\n }\n return r;\n };\n\n function jwkAlg ( a ) {\n return {\n 'HMAC': {\n 'SHA-1': 'HS1',\n 'SHA-256': 'HS256',\n 'SHA-384': 'HS384',\n 'SHA-512': 'HS512',\n },\n 'RSASSA-PKCS1-v1_5': {\n 'SHA-1': 'RS1',\n 'SHA-256': 'RS256',\n 'SHA-384': 'RS384',\n 'SHA-512': 'RS512',\n },\n 'RSAES-PKCS1-v1_5': {\n '': 'RSA1_5',\n },\n 'RSA-OAEP': {\n 'SHA-1': 'RSA-OAEP',\n 'SHA-256': 'RSA-OAEP-256',\n },\n 'AES-KW': {\n '128': 'A128KW',\n '192': 'A192KW',\n '256': 'A256KW',\n },\n 'AES-GCM': {\n '128': 'A128GCM',\n '192': 'A192GCM',\n '256': 'A256GCM',\n },\n 'AES-CBC': {\n '128': 'A128CBC',\n '192': 'A192CBC',\n '256': 'A256CBC',\n },\n }[a.name][ ( a.hash || {} ).name || a.length || '' ];\n }\n\n function b2jwk ( k ) {\n if ( k instanceof ArrayBuffer || k instanceof Uint8Array ) k = JSON.parse( decodeURIComponent( escape( b2s(k) ) ) );\n var jwk = { 'kty': k.kty, 'alg': k.alg, 'ext': k.ext || k.extractable };\n switch ( jwk.kty ) {\n case 'oct':\n jwk.k = k.k;\n case 'RSA':\n [ 'n', 'e', 'd', 'p', 'q', 'dp', 'dq', 'qi', 'oth' ].forEach( function ( x ) { if ( x in k ) jwk[x] = k[x] } );\n break;\n default:\n throw new TypeError(\"Unsupported key type\");\n }\n return jwk;\n }\n\n function jwk2b ( k ) {\n var jwk = b2jwk(k);\n if ( isIE ) jwk['extractable'] = jwk.ext, delete jwk.ext;\n return s2b( unescape( encodeURIComponent( JSON.stringify(jwk) ) ) ).buffer;\n }\n\n function pkcs2jwk ( k ) {\n var info = b2der(k), prv = false;\n if ( info.length > 2 ) prv = true, info.shift(); // remove version from PKCS#8 PrivateKeyInfo structure\n var jwk = { 'ext': true };\n switch ( info[0][0] ) {\n case '1.2.840.113549.1.1.1':\n var rsaComp = [ 'n', 'e', 'd', 'p', 'q', 'dp', 'dq', 'qi' ],\n rsaKey = b2der( info[1] );\n if ( prv ) rsaKey.shift(); // remove version from PKCS#1 RSAPrivateKey structure\n for ( var i = 0; i < rsaKey.length; i++ ) {\n if ( !rsaKey[i][0] ) rsaKey[i] = rsaKey[i].subarray(1);\n jwk[ rsaComp[i] ] = s2a( b2s( rsaKey[i] ) );\n }\n jwk['kty'] = 'RSA';\n break;\n default:\n throw new TypeError(\"Unsupported key type\");\n }\n return jwk;\n }\n\n function jwk2pkcs ( k ) {\n var key, info = [ [ '', null ] ], prv = false;\n switch ( k.kty ) {\n case 'RSA':\n var rsaComp = [ 'n', 'e', 'd', 'p', 'q', 'dp', 'dq', 'qi' ],\n rsaKey = [];\n for ( var i = 0; i < rsaComp.length; i++ ) {\n if ( !( rsaComp[i] in k ) ) break;\n var b = rsaKey[i] = s2b( a2s( k[ rsaComp[i] ] ) );\n if ( b[0] & 0x80 ) rsaKey[i] = new Uint8Array(b.length + 1), rsaKey[i].set( b, 1 );\n }\n if ( rsaKey.length > 2 ) prv = true, rsaKey.unshift( new Uint8Array([0]) ); // add version to PKCS#1 RSAPrivateKey structure\n info[0][0] = '1.2.840.113549.1.1.1';\n key = rsaKey;\n break;\n default:\n throw new TypeError(\"Unsupported key type\");\n }\n info.push( new Uint8Array( der2b(key) ).buffer );\n if ( !prv ) info[1] = { 'tag': 0x03, 'value': info[1] };\n else info.unshift( new Uint8Array([0]) ); // add version to PKCS#8 PrivateKeyInfo structure\n return new Uint8Array( der2b(info) ).buffer;\n }\n\n var oid2str = { 'KoZIhvcNAQEB': '1.2.840.113549.1.1.1' },\n str2oid = { '1.2.840.113549.1.1.1': 'KoZIhvcNAQEB' };\n\n function b2der ( buf, ctx ) {\n if ( buf instanceof ArrayBuffer ) buf = new Uint8Array(buf);\n if ( !ctx ) ctx = { pos: 0, end: buf.length };\n\n if ( ctx.end - ctx.pos < 2 || ctx.end > buf.length ) throw new RangeError(\"Malformed DER\");\n\n var tag = buf[ctx.pos++],\n len = buf[ctx.pos++];\n\n if ( len >= 0x80 ) {\n len &= 0x7f;\n if ( ctx.end - ctx.pos < len ) throw new RangeError(\"Malformed DER\");\n for ( var xlen = 0; len--; ) xlen <<= 8, xlen |= buf[ctx.pos++];\n len = xlen;\n }\n\n if ( ctx.end - ctx.pos < len ) throw new RangeError(\"Malformed DER\");\n\n var rv;\n\n switch ( tag ) {\n case 0x02: // Universal Primitive INTEGER\n rv = buf.subarray( ctx.pos, ctx.pos += len );\n break;\n case 0x03: // Universal Primitive BIT STRING\n if ( buf[ctx.pos++] ) throw new Error( \"Unsupported bit string\" );\n len--;\n case 0x04: // Universal Primitive OCTET STRING\n rv = new Uint8Array( buf.subarray( ctx.pos, ctx.pos += len ) ).buffer;\n break;\n case 0x05: // Universal Primitive NULL\n rv = null;\n break;\n case 0x06: // Universal Primitive OBJECT IDENTIFIER\n var oid = btoa( b2s( buf.subarray( ctx.pos, ctx.pos += len ) ) );\n if ( !( oid in oid2str ) ) throw new Error( \"Unsupported OBJECT ID \" + oid );\n rv = oid2str[oid];\n break;\n case 0x30: // Universal Constructed SEQUENCE\n rv = [];\n for ( var end = ctx.pos + len; ctx.pos < end; ) rv.push( b2der( buf, ctx ) );\n break;\n default:\n throw new Error( \"Unsupported DER tag 0x\" + tag.toString(16) );\n }\n\n return rv;\n }\n\n function der2b ( val, buf ) {\n if ( !buf ) buf = [];\n\n var tag = 0, len = 0,\n pos = buf.length + 2;\n\n buf.push( 0, 0 ); // placeholder\n\n if ( val instanceof Uint8Array ) { // Universal Primitive INTEGER\n tag = 0x02, len = val.length;\n for ( var i = 0; i < len; i++ ) buf.push( val[i] );\n }\n else if ( val instanceof ArrayBuffer ) { // Universal Primitive OCTET STRING\n tag = 0x04, len = val.byteLength, val = new Uint8Array(val);\n for ( var i = 0; i < len; i++ ) buf.push( val[i] );\n }\n else if ( val === null ) { // Universal Primitive NULL\n tag = 0x05, len = 0;\n }\n else if ( typeof val === 'string' && val in str2oid ) { // Universal Primitive OBJECT IDENTIFIER\n var oid = s2b( atob( str2oid[val] ) );\n tag = 0x06, len = oid.length;\n for ( var i = 0; i < len; i++ ) buf.push( oid[i] );\n }\n else if ( val instanceof Array ) { // Universal Constructed SEQUENCE\n for ( var i = 0; i < val.length; i++ ) der2b( val[i], buf );\n tag = 0x30, len = buf.length - pos;\n }\n else if ( typeof val === 'object' && val.tag === 0x03 && val.value instanceof ArrayBuffer ) { // Tag hint\n val = new Uint8Array(val.value), tag = 0x03, len = val.byteLength;\n buf.push(0); for ( var i = 0; i < len; i++ ) buf.push( val[i] );\n len++;\n }\n else {\n throw new Error( \"Unsupported DER value \" + val );\n }\n\n if ( len >= 0x80 ) {\n var xlen = len, len = 4;\n buf.splice( pos, 0, (xlen >> 24) & 0xff, (xlen >> 16) & 0xff, (xlen >> 8) & 0xff, xlen & 0xff );\n while ( len > 1 && !(xlen >> 24) ) xlen <<= 8, len--;\n if ( len < 4 ) buf.splice( pos, 4 - len );\n len |= 0x80;\n }\n\n buf.splice( pos - 2, 2, tag, len );\n\n return buf;\n }\n\n function CryptoKey ( key, alg, ext, use ) {\n Object.defineProperties( this, {\n _key: {\n value: key\n },\n type: {\n value: key.type,\n enumerable: true,\n },\n extractable: {\n value: (ext === undefined) ? key.extractable : ext,\n enumerable: true,\n },\n algorithm: {\n value: (alg === undefined) ? key.algorithm : alg,\n enumerable: true,\n },\n usages: {\n value: (use === undefined) ? key.usages : use,\n enumerable: true,\n },\n });\n }\n\n function isPubKeyUse ( u ) {\n return u === 'verify' || u === 'encrypt' || u === 'wrapKey';\n }\n\n function isPrvKeyUse ( u ) {\n return u === 'sign' || u === 'decrypt' || u === 'unwrapKey';\n }\n\n [ 'generateKey', 'importKey', 'unwrapKey' ]\n .forEach( function ( m ) {\n var _fn = _subtle[m];\n\n _subtle[m] = function ( a, b, c ) {\n var args = [].slice.call(arguments),\n ka, kx, ku;\n\n switch ( m ) {\n case 'generateKey':\n ka = alg(a), kx = b, ku = c;\n break;\n case 'importKey':\n ka = alg(c), kx = args[3], ku = args[4];\n if ( a === 'jwk' ) {\n b = b2jwk(b);\n if ( !b.alg ) b.alg = jwkAlg(ka);\n if ( !b.key_ops ) b.key_ops = ( b.kty !== 'oct' ) ? ( 'd' in b ) ? ku.filter(isPrvKeyUse) : ku.filter(isPubKeyUse) : ku.slice();\n args[1] = jwk2b(b);\n }\n break;\n case 'unwrapKey':\n ka = args[4], kx = args[5], ku = args[6];\n args[2] = c._key;\n break;\n }\n\n if ( m === 'generateKey' && ka.name === 'HMAC' && ka.hash ) {\n ka.length = ka.length || { 'SHA-1': 512, 'SHA-256': 512, 'SHA-384': 1024, 'SHA-512': 1024 }[ka.hash.name];\n return _subtle.importKey( 'raw', _crypto.getRandomValues( new Uint8Array( (ka.length+7)>>3 ) ), ka, kx, ku );\n }\n\n if ( isWebkit && m === 'generateKey' && ka.name === 'RSASSA-PKCS1-v1_5' && ( !ka.modulusLength || ka.modulusLength >= 2048 ) ) {\n a = alg(a), a.name = 'RSAES-PKCS1-v1_5', delete a.hash;\n return _subtle.generateKey( a, true, [ 'encrypt', 'decrypt' ] )\n .then( function ( k ) {\n return Promise.all([\n _subtle.exportKey( 'jwk', k.publicKey ),\n _subtle.exportKey( 'jwk', k.privateKey ),\n ]);\n })\n .then( function ( keys ) {\n keys[0].alg = keys[1].alg = jwkAlg(ka);\n keys[0].key_ops = ku.filter(isPubKeyUse), keys[1].key_ops = ku.filter(isPrvKeyUse);\n return Promise.all([\n _subtle.importKey( 'jwk', keys[0], ka, true, keys[0].key_ops ),\n _subtle.importKey( 'jwk', keys[1], ka, kx, keys[1].key_ops ),\n ]);\n })\n .then( function ( keys ) {\n return {\n publicKey: keys[0],\n privateKey: keys[1],\n };\n });\n }\n\n if ( ( isWebkit || ( isIE && ( ka.hash || {} ).name === 'SHA-1' ) )\n && m === 'importKey' && a === 'jwk' && ka.name === 'HMAC' && b.kty === 'oct' ) {\n return _subtle.importKey( 'raw', s2b( a2s(b.k) ), c, args[3], args[4] );\n }\n\n if ( isWebkit && m === 'importKey' && ( a === 'spki' || a === 'pkcs8' ) ) {\n return _subtle.importKey( 'jwk', pkcs2jwk(b), c, args[3], args[4] );\n }\n\n if ( isIE && m === 'unwrapKey' ) {\n return _subtle.decrypt( args[3], c, b )\n .then( function ( k ) {\n return _subtle.importKey( a, k, args[4], args[5], args[6] );\n });\n }\n\n var op;\n try {\n op = _fn.apply( _subtle, args );\n }\n catch ( e ) {\n return Promise.reject(e);\n }\n\n if ( isIE ) {\n op = new Promise( function ( res, rej ) {\n op.onabort =\n op.onerror = function ( e ) { rej(e) };\n op.oncomplete = function ( r ) { res(r.target.result) };\n });\n }\n\n op = op.then( function ( k ) {\n if ( ka.name === 'HMAC' ) {\n if ( !ka.length ) ka.length = 8 * k.algorithm.length;\n }\n if ( ka.name.search('RSA') == 0 ) {\n if ( !ka.modulusLength ) ka.modulusLength = (k.publicKey || k).algorithm.modulusLength;\n if ( !ka.publicExponent ) ka.publicExponent = (k.publicKey || k).algorithm.publicExponent;\n }\n if ( k.publicKey && k.privateKey ) {\n k = {\n publicKey: new CryptoKey( k.publicKey, ka, kx, ku.filter(isPubKeyUse) ),\n privateKey: new CryptoKey( k.privateKey, ka, kx, ku.filter(isPrvKeyUse) ),\n };\n }\n else {\n k = new CryptoKey( k, ka, kx, ku );\n }\n return k;\n });\n\n return op;\n }\n });\n\n [ 'exportKey', 'wrapKey' ]\n .forEach( function ( m ) {\n var _fn = _subtle[m];\n\n _subtle[m] = function ( a, b, c ) {\n var args = [].slice.call(arguments);\n\n switch ( m ) {\n case 'exportKey':\n args[1] = b._key;\n break;\n case 'wrapKey':\n args[1] = b._key, args[2] = c._key;\n break;\n }\n\n if ( ( isWebkit || ( isIE && ( b.algorithm.hash || {} ).name === 'SHA-1' ) )\n && m === 'exportKey' && a === 'jwk' && b.algorithm.name === 'HMAC' ) {\n args[0] = 'raw';\n }\n\n if ( isWebkit && m === 'exportKey' && ( a === 'spki' || a === 'pkcs8' ) ) {\n args[0] = 'jwk';\n }\n\n if ( isIE && m === 'wrapKey' ) {\n return _subtle.exportKey( a, b )\n .then( function ( k ) {\n if ( a === 'jwk' ) k = s2b( unescape( encodeURIComponent( JSON.stringify( b2jwk(k) ) ) ) );\n return _subtle.encrypt( args[3], c, k );\n });\n }\n\n var op;\n try {\n op = _fn.apply( _subtle, args );\n }\n catch ( e ) {\n return Promise.reject(e);\n }\n\n if ( isIE ) {\n op = new Promise( function ( res, rej ) {\n op.onabort =\n op.onerror = function ( e ) { rej(e) };\n op.oncomplete = function ( r ) { res(r.target.result) };\n });\n }\n\n if ( m === 'exportKey' && a === 'jwk' ) {\n op = op.then( function ( k ) {\n if ( ( isWebkit || ( isIE && ( b.algorithm.hash || {} ).name === 'SHA-1' ) )\n && b.algorithm.name === 'HMAC') {\n return { 'kty': 'oct', 'alg': jwkAlg(b.algorithm), 'key_ops': b.usages.slice(), 'ext': true, 'k': s2a( b2s(k) ) };\n }\n k = b2jwk(k);\n if ( !k.alg ) k['alg'] = jwkAlg(b.algorithm);\n if ( !k.key_ops ) k['key_ops'] = ( b.type === 'public' ) ? b.usages.filter(isPubKeyUse) : ( b.type === 'private' ) ? b.usages.filter(isPrvKeyUse) : b.usages.slice();\n return k;\n });\n }\n\n if ( isWebkit && m === 'exportKey' && ( a === 'spki' || a === 'pkcs8' ) ) {\n op = op.then( function ( k ) {\n k = jwk2pkcs( b2jwk(k) );\n return k;\n });\n }\n\n return op;\n }\n });\n\n [ 'encrypt', 'decrypt', 'sign', 'verify' ]\n .forEach( function ( m ) {\n var _fn = _subtle[m];\n\n _subtle[m] = function ( a, b, c, d ) {\n if ( isIE && ( !c.byteLength || ( d && !d.byteLength ) ) )\n throw new Error(\"Empy input is not allowed\");\n\n var args = [].slice.call(arguments),\n ka = alg(a);\n\n if ( isIE && m === 'decrypt' && ka.name === 'AES-GCM' ) {\n var tl = a.tagLength >> 3;\n args[2] = (c.buffer || c).slice( 0, c.byteLength - tl ),\n a.tag = (c.buffer || c).slice( c.byteLength - tl );\n }\n\n args[1] = b._key;\n\n var op;\n try {\n op = _fn.apply( _subtle, args );\n }\n catch ( e ) {\n return Promise.reject(e);\n }\n\n if ( isIE ) {\n op = new Promise( function ( res, rej ) {\n op.onabort =\n op.onerror = function ( e ) {\n rej(e);\n };\n\n op.oncomplete = function ( r ) {\n var r = r.target.result;\n\n if ( m === 'encrypt' && r instanceof AesGcmEncryptResult ) {\n var c = r.ciphertext, t = r.tag;\n r = new Uint8Array( c.byteLength + t.byteLength );\n r.set( new Uint8Array(c), 0 );\n r.set( new Uint8Array(t), c.byteLength );\n r = r.buffer;\n }\n\n res(r);\n };\n });\n }\n\n return op;\n }\n });\n\n if ( isIE ) {\n var _digest = _subtle.digest;\n\n _subtle['digest'] = function ( a, b ) {\n if ( !b.byteLength )\n throw new Error(\"Empy input is not allowed\");\n\n var op;\n try {\n op = _digest.call( _subtle, a, b );\n }\n catch ( e ) {\n return Promise.reject(e);\n }\n\n op = new Promise( function ( res, rej ) {\n op.onabort =\n op.onerror = function ( e ) { rej(e) };\n op.oncomplete = function ( r ) { res(r.target.result) };\n });\n\n return op;\n };\n\n global.crypto = Object.create( _crypto, {\n getRandomValues: { value: function ( a ) { return _crypto.getRandomValues(a) } },\n subtle: { value: _subtle },\n });\n\n global.CryptoKey = CryptoKey;\n }\n\n if ( isWebkit ) {\n _crypto.subtle = _subtle;\n\n global.Crypto = _Crypto;\n global.SubtleCrypto = _SubtleCrypto;\n global.CryptoKey = CryptoKey;\n }\n}));\n\n export default {} // section modified by isomorphic-webcrypto build \n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","","// startup\n// Load entry module and return exports\n// This entry module is referenced by other modules so it can't be inlined\nvar __webpack_exports__ = __webpack_require__(\"./src/entry/browser.ts\");\n",""],"names":["exports","formatArgs","save","load","useColors","storage","localstorage","destroy","warned","console","warn","colors","window","process","type","__nwjs","navigator","userAgent","toLowerCase","match","document","documentElement","style","WebkitAppearance","firebug","exception","table","parseInt","RegExp","$1","args","namespace","module","humanize","diff","c","color","splice","index","lastC","replace","log","debug","namespaces","setItem","removeItem","error","r","getItem","env","DEBUG","localStorage","require","formatters","j","v","JSON","stringify","message","setup","createDebug","default","coerce","disable","enable","enabled","Object","keys","forEach","key","names","skips","selectColor","hash","i","length","charCodeAt","Math","abs","prevTime","enableOverride","namespacesCache","enabledCache","_len","arguments","Array","_key","self","curr","Number","Date","ms","prev","unshift","format","formatter","val","call","logFn","apply","extend","defineProperty","enumerable","configurable","get","set","init","delimiter","newDebug","split","len","push","slice","concat","_toConsumableArray2","map","toNamespace","join","name","test","regexp","toString","substring","Error","stack","lib_1","strings_1","settings_1","_ref","FHIRCLIENT_PURE","Response","contextualize","_x","_x2","_contextualize","_asyncToGenerator2","_regenerator","mark","_callee9","requestOptions","client","base","contextualURL","_contextualURL","wrap","_callee9$","_context9","next","_contextualURL3","_callee8","_url","resourceType","conformance","searchParam","_callee8$","_context8","pathname","pop","assert","patientCompartment","indexOf","fetchConformanceStatement","state","serverUrl","sent","getPatientParam","searchParams","patient","id","abrupt","href","stop","_contextualURL2","_x9","absolute","URL","t0","url","getRef","refId","cache","signal","request","then","res","Promise","resolve","resolveRef","obj","path","graph","node","getPath","isArray","all","makeArray","filter","Boolean","item","ref","reference","sub","setPath","catch","ex","status","resolveRefs","fhirOptions","paths","resolveReferences","String","trim","p","groups","task","sort","group","Client","environment","_this","_classCallCheck2","units","_state","_refreshTask","getPatientId","read","_objectSpread","reject","undefined","_callee","options","_callee$","_context","encounter","getEncounterId","user","fhirUser","getFhirUser","getUserId","getUserType","connect","fhir","_createClass2","value","fhirJs","baseUrl","accessToken","getState","auth","token","_this$state","username","password","pass","api","patientId","tokenResponse","scope","noScopeForId","authorizeUri","noIfNoAuth","noFreeContext","getIdToken","idToken","id_token","hasOpenid","hasProfile","hasFhirUser","jwtDecode","profile","getAuthorizationHeader","_this$state2","btoa","_clearState2","_callee2","_callee2$","_context2","getStorage","SMART_KEY","unset","_clearState","create","resource","method","body","headers","update","_delete","_patch2","_callee3","patch","_args3","_callee3$","_context3","assertJsonPatch","_x3","_x4","_request","_callee7","_this2","_resolvedRefs","_a","debugRequest","job","response","_args7","_callee7$","_context7","flat","pageLimit","useRefreshToken","onPage","refreshIfNeeded","authHeader","authorization","result","includeResponse","_ref3","_callee4","_callee4$","_context4","expired","_x6","data","_ref4","_callee5","_data","_callee5$","_context5","entry","_x7","_ref5","_callee6","links","nextPage","_callee6$","_context6","link","find","l","relation","assign","references","_x8","_x5","refreshToken","expiresAt","now","refresh","_this3","debugRefresh","_b","refresh_token","tokenUri","scopes","hasOfflineAccess","search","hasOnlineAccess","refreshRequestOptions","credentials","refreshTokenWithCredentials","mode","encodeURIComponent","_this$state3","clientSecret","clientId","access_token","getAccessTokenExpiration","finally","byCode","observations","property","byCodes","getFhirVersion","metadata","fhirVersion","getFhirRelease","fhirVersions","HttpError","_Error","_inherits2","_callSuper","statusText","statusCode","_parse","_body","bodyUsed","json","error_description","text","parse","toJSON","_wrapNativeSuper2","smart_1","Client_1","BrowserStorage_1","security","js_base64_1","BrowserAdapter","_storage","replaceBrowserHistory","fullSessionStorageSupport","relative","getUrl","location","redirect","to","getAbortController","AbortController","atob","str","base64urlencode","input","encodeURL","fromUint8Array","base64urldecode","decode","getSmartApi","ready","authorize","utils","BrowserAdapter_1","adapter","_adapter$getSmartApi","fetch","Headers","Request","FHIR","oauth2","settings","_interopRequireDefault","_defineProperty2","_objectWithoutProperties2","_typeof2","_excluded","ownKeys","e","t","getOwnPropertySymbols","o","getOwnPropertyDescriptor","getOwnPropertyDescriptors","defineProperties","HttpError_1","_debug","cm","_ref2","code","ensureNumerical","kg","any","pq","checkResponse","_checkResponse","resp","ok","responseToJSON","loweCaseKeys","out","lowerKey","accept","getAndCache","force","NODE_ENV","segments","shift","createEmpty","reduce","idx","arr","arg","randomString","strLength","charSet","charAt","floor","random","payload","getTimeInFuture","secondsAhead","from","expires_in","tokenBody","exp","ret","handleCodeableConcept","concept","observation","coding","_ref6","bank","codes","resources","meta","x","patientParams","getTargetWindow","_getTargetWindow","target","width","height","targetWindow","_error","_targetWindow","winOrFrame","_args2","parent","top","open","screen","t1","frames","condition","operation","op","crypto","globalThis","subtle","ALGS","ES384","namedCurve","RS384","modulusLength","publicExponent","Uint8Array","randomBytes","count","getRandomValues","digestSha256","_digestSha","prepared","TextEncoder","encode","digest","generatePKCEChallenge","entropy","inputBytes","codeVerifier","codeChallenge","_args","importJWK","_importJWK","jwk","alg","key_ops","includes","importKey","ext","signCompactJws","_signCompactJws","privateKey","header","jwtHeader","jwtPayload","jwtAuthenticatedContent","signature","sign","algorithm","isBrowser","fetchWellKnownJson","getSecurityExtensionsFromWellKnownJson","authorization_endpoint","token_endpoint","registrationUri","registration_endpoint","codeChallengeMethods","code_challenge_methods_supported","getSecurityExtensionsFromConformanceStatement","nsUri","extensions","extension","valueUri","getSecurityExtensions","_authorize","params","urlISS","cfg","fakeTokenResponse","encounterId","pkceMode","clientPublicKeySetUrl","redirect_uri","client_id","iss","launch","fhirServiceUrl","redirectUri","noRedirect","_params$scope","completeInTarget","clientPrivateJwk","inFrame","inPopUp","oldKey","stateKey","redirectUrl","redirectParams","win","issMatch","isInFrame","isInPopUp","shouldIncludeChallenge","sessionStorage","addEventListener","onMessage","S256supported","opener","origin","removeEventListener","_ready","Storage","authError","authErrorDescription","hasState","authorized","postMessage","close","delete","has","history","replaceState","buildTokenRequest","_buildTokenRequest","pk","jwtHeaders","jwtClaims","clientAssertion","typ","kid","jku","aud","jti","_init","authorizeOptions","readyOptions","cached","_get","_set","_unset"],"sourceRoot":""} \ No newline at end of file diff --git a/dist/build/fhir-client.min.js b/dist/build/fhir-client.min.js index 46ab1aa6..f272a00b 100644 --- a/dist/build/fhir-client.min.js +++ b/dist/build/fhir-client.min.js @@ -1,3 +1,3 @@ /*! For license information please see fhir-client.min.js.LICENSE.txt */ -!function(){var e={6486:function(e,t,r){var n,o;n=function(){"use strict";function e(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function t(e,t){for(var r=0;r=31||"undefined"!=typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/))},t.storage=function(){try{return localStorage}catch(e){}}(),t.destroy=(n=!1,function(){n||(n=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}),t.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"],t.log=console.debug||console.log||function(){},e.exports=r(9956)(t),e.exports.formatters.j=function(e){try{return JSON.stringify(e)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}}},9956:function(e,t,r){"use strict";var n=r(4836)(r(861));r(1539),r(4747),r(7941),r(9653),r(4916),r(5306),r(561),r(3123),r(4603),r(9714),r(7042),r(9600),r(2222),r(1249),e.exports=function(e){function t(e){var r,n,i,a=null;function u(){for(var e=arguments.length,n=new Array(e),o=0;o-1,'Cannot filter "'.concat(n,'" resources by patient')),e.next=5,(0,l.fetchConformanceStatement)(r.state.serverUrl);case 5:return i=e.sent,a=(0,l.getPatientParam)(i,n),t.searchParams.set(a,r.patient.id),e.abrupt("return",t.href);case 9:case"end":return e.stop()}}),e)})))).apply(this,arguments)},i=function(e){return a.apply(this,arguments)},n=(0,l.absolute)("/",r.state.serverUrl),!("string"==typeof t||t instanceof URL)){e.next=8;break}return e.next=6,i(new URL(t+"",n));case 6:return e.t0=e.sent,e.abrupt("return",{url:e.t0});case 8:return e.next=10,i(new URL(t.url+"",n));case 10:return t.url=e.sent,e.abrupt("return",t);case 12:case"end":return e.stop()}}),e)}))),g.apply(this,arguments)}function b(e,t,r,n,o){var i=(0,l.makeArray)(t.resolveReferences).filter(Boolean).map((function(e){return String(e).trim()})).filter(Boolean);if(!(i=i.filter((function(e,t){return!(i.indexOf(e,t+1)>-1&&(v('Duplicated reference path "%s"',e),1))}))).length)return Promise.resolve();var a={};i.forEach((function(e){var t=e.split(".").length;a[t]||(a[t]=[]),a[t].push(e)}));var u=Promise.resolve();return Object.keys(a).sort().forEach((function(i){var s=a[i];u=u.then((function(){return Promise.all(s.map((function(i){return function(e,t,r,n,o,i){var a=(0,l.getPath)(e,t);if(a){var u=Array.isArray(a);return Promise.all((0,l.makeArray)(a).filter(Boolean).map((function(a,s){var c=a.reference;if(c)return function(e,t,r,n){return t[e]||(t[e]=r.request({url:e,signal:n}).then((function(r){return t[e]=r,r}),(function(r){throw delete t[e],r}))),Promise.resolve(t[e])}(c,n,o,i).then((function(n){r&&(u?t.indexOf("..")>-1?(0,l.setPath)(e,"".concat(t.replace("..",".".concat(s,"."))),n):(0,l.setPath)(e,"".concat(t,".").concat(s),n):(0,l.setPath)(e,t,n))})).catch((function(e){if(404!==e.status)throw e}))})))}}(e,i,!!t.graph,r,n,o)})))}))})),u}var m=function(){function e(t,r){var n=this;(0,a.default)(this,e),this.units=l.units;var i="string"==typeof r?{serverUrl:r}:r;(0,l.assert)(i.serverUrl&&i.serverUrl.match(/https?:\/\/.+/),'A "serverUrl" option is required and must begin with "http(s)"'),this.state=i,this.environment=t,this._refreshTask=null;var u=this;this.patient={get id(){return u.getPatientId()},read:function(e){var t=n.patient.id;return t?n.request(f(f({},e),{},{url:"Patient/".concat(t)})):Promise.reject(new Error("Patient is not available"))},request:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return n.patient.id?(0,s.default)(o.default.mark((function r(){var i;return o.default.wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return r.next=2,y(e,n);case 2:return i=r.sent,r.abrupt("return",n.request(i,t));case 4:case"end":return r.stop()}}),r)})))():Promise.reject(new Error("Patient is not available"))}},this.encounter={get id(){return u.getEncounterId()},read:function(e){var t=n.encounter.id;return t?n.request(f(f({},e),{},{url:"Encounter/".concat(t)})):Promise.reject(new Error("Encounter is not available"))}},this.user={get fhirUser(){return u.getFhirUser()},get id(){return u.getUserId()},get resourceType(){return u.getUserType()},read:function(e){var t=n.user.fhirUser;return t?n.request(f(f({},e),{},{url:t})):Promise.reject(new Error("User is not available"))}},this.connect(t.fhir)}var t,r,n;return(0,u.default)(e,[{key:"connect",value:function(e){if("function"==typeof e){var t={baseUrl:this.state.serverUrl.replace(/\/$/,"")},r=this.getState("tokenResponse.access_token");if(r)t.auth={token:r};else{var n=this.state,o=n.username,i=n.password;o&&i&&(t.auth={user:o,pass:i})}this.api=e(t);var a=this.getState("tokenResponse.patient");a&&(this.patient.api=e(f(f({},t),{},{patient:a})))}return this}},{key:"getPatientId",value:function(){var e=this.state.tokenResponse;return e?e.patient?e.patient:((this.state.scope||"").match(/\blaunch(\/patient)?\b/)?v("The ID of the selected patient is not available. Please check if your server supports that."):v(p.default.noScopeForId,"patient","patient"),null):(this.state.authorizeUri?v(p.default.noIfNoAuth,"the ID of the selected patient"):v(p.default.noFreeContext,"selected patient"),null)}},{key:"getEncounterId",value:function(){var e=this.state.tokenResponse;return e?e.encounter?e.encounter:((this.state.scope||"").match(/\blaunch(\/encounter)?\b/)?v("The ID of the selected encounter is not available. Please check if your server supports that, and that the selected patient has any recorded encounters."):v(p.default.noScopeForId,"encounter","encounter"),null):(this.state.authorizeUri?v(p.default.noIfNoAuth,"the ID of the selected encounter"):v(p.default.noFreeContext,"selected encounter"),null)}},{key:"getIdToken",value:function(){var e=this.state.tokenResponse;if(e){var t=e.id_token,r=this.state.scope||"";if(!t){var n=r.match(/\bopenid\b/),o=r.match(/\bprofile\b/),i=r.match(/\bfhirUser\b/);return v(n&&(i||o)?"The id_token is not available. Please check if your server supports that.":"You are trying to get the id_token but you are not using the right scopes. Please add 'openid' and 'fhirUser' or 'profile' to the scopes you are requesting."),null}return(0,l.jwtDecode)(t,this.environment)}return this.state.authorizeUri?v(p.default.noIfNoAuth,"the id_token"):v(p.default.noFreeContext,"id_token"),null}},{key:"getFhirUser",value:function(){var e=this.getIdToken();return e?e.fhirUser?e.fhirUser.split("/").slice(-2).join("/"):e.profile:null}},{key:"getUserId",value:function(){var e=this.getFhirUser();return e?e.split("/")[1]:null}},{key:"getUserType",value:function(){var e=this.getFhirUser();return e?e.split("/")[0]:null}},{key:"getAuthorizationHeader",value:function(){var e=this.getState("tokenResponse.access_token");if(e)return"Bearer "+e;var t=this.state,r=t.username,n=t.password;return r&&n?"Basic "+this.environment.btoa(r+":"+n):null}},{key:"_clearState",value:(n=(0,s.default)(o.default.mark((function e(){var t,r;return o.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=this.environment.getStorage(),e.next=3,t.get(h.SMART_KEY);case 3:if(!(r=e.sent)){e.next=7;break}return e.next=7,t.unset(r);case 7:return e.next=9,t.unset(h.SMART_KEY);case 9:this.state.tokenResponse={};case 10:case"end":return e.stop()}}),e,this)}))),function(){return n.apply(this,arguments)})},{key:"create",value:function(e,t){return this.request(f(f({},t),{},{url:"".concat(e.resourceType),method:"POST",body:JSON.stringify(e),headers:f({"content-type":"application/json"},(t||{}).headers)}))}},{key:"update",value:function(e,t){return this.request(f(f({},t),{},{url:"".concat(e.resourceType,"/").concat(e.id),method:"PUT",body:JSON.stringify(e),headers:f({"content-type":"application/json"},(t||{}).headers)}))}},{key:"delete",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.request(f(f({},t),{},{url:e,method:"DELETE"}))}},{key:"patch",value:(r=(0,s.default)(o.default.mark((function e(t,r){var n,i=arguments;return o.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=i.length>2&&void 0!==i[2]?i[2]:{},(0,l.assertJsonPatch)(r),e.abrupt("return",this.request(f(f({},n),{},{url:t,method:"PATCH",body:JSON.stringify(r),headers:f({prefer:"return=presentation","content-type":"application/json-patch+json; charset=UTF-8"},n.headers)})));case 3:case"end":return e.stop()}}),e,this)}))),function(e,t){return r.apply(this,arguments)})},{key:"request",value:(t=(0,s.default)(o.default.mark((function e(t){var r,n,i,a,u,c,h,v,y,g=this,m=arguments;return o.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=m.length>1&&void 0!==m[1]?m[1]:{},n=m.length>2&&void 0!==m[2]?m[2]:{},a=l.debug.extend("client:request"),(0,l.assert)(t,"request requires an url or request options as argument"),"string"==typeof t||t instanceof URL?(u=String(t),t={}):u=String(t.url),u=(0,l.absolute)(u,this.state.serverUrl),c={graph:!1!==r.graph,flat:!!r.flat,pageLimit:null!==(i=r.pageLimit)&&void 0!==i?i:1,resolveReferences:r.resolveReferences||[],useRefreshToken:!1!==r.useRefreshToken,onPage:"function"==typeof r.onPage?r.onPage:void 0},h=t.signal||void 0,v=c.useRefreshToken?this.refreshIfNeeded({signal:h}).then((function(){return t})):Promise.resolve(t),e.abrupt("return",v.then((function(e){var t=g.getAuthorizationHeader();return t&&(e.headers=f(f({},e.headers),{},{authorization:t})),e})).then((function(e){return a("%s, options: %O, fhirOptions: %O",u,e,c),(0,l.request)(u,e).then((function(t){return e.includeResponse?(y=t.response,t.body):t}))})).catch(function(){var e=(0,s.default)(o.default.mark((function e(t){return o.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(401!=t.status){e.next=15;break}if(g.getState("tokenResponse.access_token")){e.next=4;break}throw t.message+="\nThis app cannot be accessed directly. Please launch it as SMART app!",t;case 4:if(c.useRefreshToken){e.next=10;break}return a("Your session has expired and the useRefreshToken option is set to false. Please re-launch the app."),e.next=8,g._clearState();case 8:case 13:throw t.message+="\n"+p.default.expired,t;case 10:return a("Auto-refresh failed! Please re-launch the app."),e.next=13,g._clearState();case 15:throw t;case 16:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()).catch((function(e){throw 403==e.status&&a("Permission denied! Please make sure that you have requested the proper scopes."),e})).then((function(e){return e?"string"==typeof e||e instanceof d?e:(r=(0,s.default)(o.default.mark((function e(t){return o.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if("Bundle"!=t.resourceType){e.next=5;break}return e.next=3,Promise.all((t.entry||[]).map((function(e){return b(e.resource,c,n,g,h)})));case 3:e.next=7;break;case 5:return e.next=7,b(t,c,n,g,h);case 7:return e.abrupt("return",t);case 8:case"end":return e.stop()}}),e)}))),function(e){return r.apply(this,arguments)})(e).then(function(){var e=(0,s.default)(o.default.mark((function e(t){var r,i,a;return o.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!t||"Bundle"!=t.resourceType){e.next=19;break}if(r=t.link||[],c.flat&&(t=(t.entry||[]).map((function(e){return e.resource}))),!c.onPage){e.next=6;break}return e.next=6,c.onPage(t,f({},n));case 6:if(!--c.pageLimit){e.next=19;break}if(i=r.find((function(e){return"next"==e.relation})),t=(0,l.makeArray)(t),!i||!i.url){e.next=19;break}return e.next=12,g.request({url:i.url,signal:h},c,n);case 12:if(a=e.sent,!c.onPage){e.next=15;break}return e.abrupt("return",null);case 15:if(!c.resolveReferences.length){e.next=18;break}return Object.assign(n,a.references),e.abrupt("return",t.concat((0,l.makeArray)(a.data||a)));case 18:return e.abrupt("return",t.concat((0,l.makeArray)(a)));case 19:return e.abrupt("return",t);case 20:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()).then((function(e){if(c.graph)n={};else if(!c.onPage&&c.resolveReferences.length)return{data:e,references:n};return e})).then((function(e){return t.includeResponse?{body:e,response:y}:e})):e;var r})));case 10:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})},{key:"refreshIfNeeded",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=this.getState("tokenResponse.access_token"),r=this.getState("tokenResponse.refresh_token"),n=this.state.expiresAt||0;return t&&r&&n-100&&void 0!==arguments[0]?arguments[0]:{},o=l.debug.extend("client:refresh");o("Attempting to refresh with refresh_token...");var i=null===(t=null===(e=this.state)||void 0===e?void 0:e.tokenResponse)||void 0===t?void 0:t.refresh_token;(0,l.assert)(i,"Unable to refresh. No refresh_token found.");var a=this.state.tokenUri;(0,l.assert)(a,"Unable to refresh. No tokenUri found.");var u=this.getState("tokenResponse.scope")||"",s=u.search(/\boffline_access\b/)>-1,c=u.search(/\bonline_access\b/)>-1;if((0,l.assert)(s||c,"Unable to refresh. No offline_access or online_access scope found."),!this._refreshTask){var p=f(f({credentials:this.environment.options.refreshTokenWithCredentials||"same-origin"},n),{},{method:"POST",mode:"cors",headers:f(f({},n.headers||{}),{},{"content-type":"application/x-www-form-urlencoded"}),body:"grant_type=refresh_token&refresh_token=".concat(encodeURIComponent(i))});if(!("authorization"in p.headers)){var h=this.state,d=h.clientSecret,v=h.clientId;d&&(p.headers.authorization="Basic "+this.environment.btoa(v+":"+d))}this._refreshTask=(0,l.request)(a,p).then((function(e){return(0,l.assert)(e.access_token,"No access token received"),o("Received new access token response %O",e),r.state.tokenResponse=f(f({},r.state.tokenResponse),e),r.state.expiresAt=(0,l.getAccessTokenExpiration)(e,r.environment),r.state})).catch((function(e){var t,n;throw(null===(n=null===(t=r.state)||void 0===t?void 0:t.tokenResponse)||void 0===n?void 0:n.refresh_token)&&(o("Deleting the expired or invalid refresh token."),delete r.state.tokenResponse.refresh_token),e})).finally((function(){r._refreshTask=null;var e=r.state.key;e?r.environment.getStorage().set(e,r.state):o("No 'key' found in Clint.state. Cannot persist the instance.")}))}return this._refreshTask}},{key:"byCode",value:function(e,t){return(0,l.byCode)(e,t)}},{key:"byCodes",value:function(e,t){return(0,l.byCodes)(e,t)}},{key:"getPath",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";return(0,l.getPath)(e,t)}},{key:"getState",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return(0,l.getPath)(f({},this.state),e)}},{key:"getFhirVersion",value:function(){return(0,l.fetchConformanceStatement)(this.state.serverUrl).then((function(e){return e.fhirVersion}))}},{key:"getFhirRelease",value:function(){return this.getFhirVersion().then((function(e){var t;return null!==(t=h.fhirVersions[e])&&void 0!==t?t:0}))}}]),e}();t.default=m},7998:function(e,t,r){"use strict";r(1539),r(2419);var n=r(4836),o=n(r(4687));r(2222),r(8309),r(4916),r(4723);var i=n(r(7156)),a=n(r(6690)),u=n(r(9728)),s=n(r(1655)),c=n(r(4993)),f=n(r(3808)),l=n(r(3496));Object.defineProperty(t,"__esModule",{value:!0});var p=function(e){(0,s.default)(p,e);var t,r,n,l=(r=p,n=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,t=(0,f.default)(r);if(n){var o=(0,f.default)(this).constructor;e=Reflect.construct(t,arguments,o)}else e=t.apply(this,arguments);return(0,c.default)(this,e)});function p(e){var t;return(0,a.default)(this,p),(t=l.call(this,"".concat(e.status," ").concat(e.statusText,"\nURL: ").concat(e.url))).name="HttpError",t.response=e,t.statusCode=e.status,t.status=e.status,t.statusText=e.statusText,t}return(0,u.default)(p,[{key:"parse",value:(t=(0,i.default)(o.default.mark((function e(){var t,r,n;return o.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this.response.bodyUsed){e.next=19;break}if(e.prev=1,!(t=this.response.headers.get("content-type")||"text/plain").match(/\bjson\b/i)){e.next=10;break}return e.next=6,this.response.json();case 6:(r=e.sent).error?(this.message+="\n"+r.error,r.error_description&&(this.message+=": "+r.error_description)):this.message+="\n\n"+JSON.stringify(r,null,4),e.next=15;break;case 10:if(!t.match(/^text\//i)){e.next=15;break}return e.next=13,this.response.text();case 13:(n=e.sent)&&(this.message+="\n\n"+n);case 15:e.next=19;break;case 17:e.prev=17,e.t0=e.catch(1);case 19:return e.abrupt("return",this);case 20:case"end":return e.stop()}}),e,this,[[1,17]])}))),function(){return t.apply(this,arguments)})},{key:"toJSON",value:function(){return{name:this.name,statusCode:this.statusCode,status:this.status,statusText:this.statusText,message:this.message}}}]),p}((0,l.default)(Error));t.default=p},3923:function(e,t,r){"use strict";r(7941),r(2526),r(7327),r(5003),r(4747),r(9337);var n=r(4836);r(6992),r(1539),r(8783),r(3948),r(285),r(1637),r(2222);var o=n(r(8416)),i=n(r(6690)),a=n(r(9728));function u(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function s(e){for(var t=1;t0&&void 0!==arguments[0]?arguments[0]:{};(0,i.default)(this,e),this._url=null,this._storage=null,this.security=p,this.options=s({replaceBrowserHistory:!0,fullSessionStorageSupport:!0,refreshTokenWithCredentials:"same-origin"},t)}return(0,a.default)(e,[{key:"relative",value:function(e){return new URL(e,this.getUrl().href).href}},{key:"fhir",get:function(){return"function"==typeof fhir?fhir:null}},{key:"getUrl",value:function(){return this._url||(this._url=new URL(location+"")),this._url}},{key:"redirect",value:function(e){location.href=e}},{key:"getStorage",value:function(){return this._storage||(this._storage=new l.default),this._storage}},{key:"getAbortController",value:function(){return AbortController}},{key:"atob",value:function(e){return window.atob(e)}},{key:"btoa",value:function(e){return window.btoa(e)}},{key:"base64urlencode",value:function(e){return"string"==typeof e?(0,h.encodeURL)(e):(0,h.fromUint8Array)(e,!0)}},{key:"base64urldecode",value:function(e){return(0,h.decode)(e)}},{key:"getSmartApi",value:function(){var e=this;return{ready:function(){for(var t=arguments.length,r=new Array(t),n=0;n1&&void 0!==arguments[1]?arguments[1]:{},r=t.includeResponse,n=(0,a.default)(t,c);return v(e,l(l({mode:"cors"},n),{},{headers:l({accept:"application/json"},A(n.headers))})).then(m).then((function(e){var t=e.headers.get("content-type")+"";return t.match(/\bjson\b/i)?x(e).then((function(t){return{res:e,body:t}})):t.match(/^text\//i)?e.text().then((function(t){return{res:e,body:t}})):{res:e}})).then((function(e){var t=e.res,o=e.body;if(!o&&201==t.status){var i=t.headers.get("location");if(i)return S(i,l(l({},n),{},{method:"GET",body:null,includeResponse:r}))}return r?{body:o,response:t}:void 0===o?t:o}))}function k(e,t){var r=arguments.length>2&&void 0!==arguments[2]&&arguments[2];return r||!g[e]?(g[e]=S(e,t),g[e]):Promise.resolve(g[e])}function O(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";if(!(t=t.trim()))return e;for(var r=t.split("."),n=e;n&&r.length;){var o=r.shift();if(!o&&Array.isArray(n))return n.map((function(e){return O(e,r.join("."))}));n=n[o]}return n}function E(e){return Array.isArray(e)?e:[e]}function P(e,t){var r=e.split(".")[1];return r?JSON.parse(t.atob(r)):null}function C(e,t){var r={};function n(e,t){e&&Array.isArray(e.coding)&&e.coding.forEach((function(e){var n=e.code;n&&(r[n]=r[n]||[],r[n].push(t))}))}return E(e).forEach((function(e){"Observation"===e.resourceType&&e[t]&&(Array.isArray(e[t])?e[t].forEach((function(t){return n(t,e)})):n(e[t],e))})),r}function R(){return R=(0,s.default)(o.default.mark((function e(t){var r,n,i,a,s,c,f,l=arguments;return o.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(r=l.length>1&&void 0!==l[1]?l[1]:800,n=l.length>2&&void 0!==l[2]?l[2]:720,"function"!=typeof t){e.next=6;break}return e.next=5,t();case 5:t=e.sent;case 6:if(!t||"object"!=(0,u.default)(t)){e.next=8;break}return e.abrupt("return",t);case 8:if("string"==typeof t){e.next=11;break}return y("Invalid target type '%s'. Failing back to '_self'.",(0,u.default)(t)),e.abrupt("return",self);case 11:if("_self"!=t){e.next=13;break}return e.abrupt("return",self);case 13:if("_parent"!=t){e.next=15;break}return e.abrupt("return",parent);case 15:if("_top"!=t){e.next=17;break}return e.abrupt("return",top||self);case 17:if("_blank"!=t){e.next=34;break}if(a=null,e.prev=19,a=window.open("","SMARTAuthPopup")){e.next=23;break}throw new Error("Perhaps window.open was blocked");case 23:e.next=28;break;case 25:e.prev=25,e.t0=e.catch(19),i=e.t0;case 28:if(a){e.next=33;break}return y("Cannot open window. Failing back to '_self'. %s",i),e.abrupt("return",self);case 33:return e.abrupt("return",a);case 34:if("popup"!=t){e.next=51;break}if(c=null,e.prev=36,c=window.open("","SMARTAuthPopup",["height="+n,"width="+r,"menubar=0","resizable=1","status=0","top="+(screen.height-n)/2,"left="+(screen.width-r)/2].join(","))){e.next=40;break}throw new Error("Perhaps the popup window was blocked");case 40:e.next=45;break;case 42:e.prev=42,e.t1=e.catch(36),s=e.t1;case 45:if(c){e.next=50;break}return y("Cannot open window. Failing back to '_self'. %s",s),e.abrupt("return",self);case 50:return e.abrupt("return",c);case 51:if(!(f=frames[t])){e.next=54;break}return e.abrupt("return",f);case 54:return y("Unknown target '%s'. Failing back to '_self'.",t),e.abrupt("return",self);case 56:case"end":return e.stop()}}),e,null,[[19,25],[36,42]])}))),R.apply(this,arguments)}function _(e,t){if(!e)throw new Error(t)}t.units={cm:function(e){var t=e.code,r=e.value;if(b({code:t,value:r}),"cm"==t)return r;if("m"==t)return 100*r;if("in"==t)return 2.54*r;if("[in_us]"==t)return 2.54*r;if("[in_i]"==t)return 2.54*r;if("ft"==t)return 30.48*r;if("[ft_us]"==t)return 30.48*r;throw new Error("Unrecognized length unit: "+t)},kg:function(e){var t=e.code,r=e.value;if(b({code:t,value:r}),"kg"==t)return r;if("g"==t)return r/1e3;if(t.match(/lb/))return r/2.20462;if(t.match(/oz/))return r/35.274;throw new Error("Unrecognized weight unit: "+t)},any:function(e){return b(e),e.value}},t.checkResponse=m,t.responseToJSON=x,t.loweCaseKeys=A,t.request=S,t.getAndCache=k,t.fetchConformanceStatement=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"/",t=arguments.length>1?arguments[1]:void 0,r=String(e).replace(/\/*$/,"/")+"metadata";return k(r,t).catch((function(e){throw new Error('Failed to fetch the conformance statement from "'.concat(r,'". ').concat(e))}))},t.getPath=O,t.setPath=function(e,t,r){var n=arguments.length>3&&void 0!==arguments[3]&&arguments[3];return t.trim().split(".").reduce((function(e,t,o,i){if(!e||o!==i.length-1)return e&&void 0===e[t]&&n&&(e[t]=i[o+1].match(/^[0-9]+$/)?[]:{}),e?e[t]:void 0;e[t]=r}),e),e},t.makeArray=E,t.absolute=function(e,t){return e.match(/^http/)||e.match(/^urn/)?e:String(t||"").replace(/\/+$/,"")+"/"+e.replace(/^\/+/,"")},t.randomString=function(){for(var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:8,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",r=[],n=t.length;e--;)r.push(t.charAt(Math.floor(Math.random()*n)));return r.join("")},t.jwtDecode=P,t.getTimeInFuture=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:120,t=arguments.length>1?arguments[1]:void 0;return Math.floor(+(t||new Date)/1e3+e)},t.getAccessTokenExpiration=function(e,t){var r=Math.floor(Date.now()/1e3);if(e.expires_in)return r+e.expires_in;if(e.access_token){var n=P(e.access_token,t);if(n&&n.exp)return n.exp}return r+300},t.byCode=C,t.byCodes=function(e,t){var r=C(e,t);return function(){for(var e=arguments.length,t=new Array(e),n=0;n0,"The JSON patch array should not be empty"),e.forEach((function(e){_(["add","replace","test","move","copy","remove"].indexOf(e.op)>-1,'Each patch operation must have an "op" property which must be one of: "add", "replace", "test", "move", "copy", "remove"'),_(e.path&&(0,u.default)(e.path),'Invalid "'.concat(e.op,'" operation. Missing "path" property')),"add"==e.op||"replace"==e.op||"test"==e.op?(_("value"in e,'Invalid "'.concat(e.op,'" operation. Missing "value" property')),_(3==Object.keys(e).length,'Invalid "'.concat(e.op,'" operation. Contains unknown properties'))):"move"==e.op||"copy"==e.op?(_("string"==typeof e.from,'Invalid "'.concat(e.op,'" operation. Requires a string "from" property')),_(3==Object.keys(e).length,'Invalid "'.concat(e.op,'" operation. Contains unknown properties'))):_(2==Object.keys(e).length,'Invalid "'.concat(e.op,'" operation. Contains unknown properties'))}))}},8366:function(e,t,r){"use strict";r(7941),r(2526),r(7327),r(5003),r(4747),r(9337);var n=r(4836),o=n(r(4687));r(5743),r(6992),r(1539),r(2472),r(2990),r(8927),r(3105),r(5035),r(4345),r(7174),r(2846),r(4731),r(7209),r(6319),r(8867),r(7789),r(3739),r(9368),r(4483),r(2056),r(3462),r(678),r(7462),r(3824),r(5021),r(2974),r(5016),r(6699),r(2023),r(2222);var i=n(r(8416)),a=n(r(7156)),u=n(r(8698));function s(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function c(e){for(var t=1;t0&&void 0!==a[0]?a[0]:96,r=d(t),n=(0,f.fromUint8Array)(r,!0),e.t0=f.fromUint8Array,e.next=6,v(n);case 6:return e.t1=e.sent,i=(0,e.t0)(e.t1,!0),e.abrupt("return",{codeChallenge:i,codeVerifier:n});case 9:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}();function b(){return(b=(0,a.default)(o.default.mark((function e(t){return o.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t.alg){e.next=2;break}throw new Error('The "alg" property of the JWK must be set to "ES384" or "RS384"');case 2:if(Array.isArray(t.key_ops)||(t.key_ops=["sign"]),t.key_ops.includes("sign")){e.next=5;break}throw new Error('The "key_ops" property of the JWK does not contain "sign"');case 5:return e.prev=5,e.next=8,p.importKey("jwk",t,h[t.alg],!0===t.ext,t.key_ops);case 8:return e.abrupt("return",e.sent);case 11:throw e.prev=11,e.t0=e.catch(5),new Error("The ".concat(t.alg," is not supported by this browser: ").concat(e.t0));case 14:case"end":return e.stop()}}),e,null,[[5,11]])})))).apply(this,arguments)}function m(){return(m=(0,a.default)(o.default.mark((function e(t,r,n,i){var a,u,s,l;return o.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return a=JSON.stringify(c(c({},n),{},{alg:t})),u=JSON.stringify(i),s="".concat((0,f.encodeURL)(a),".").concat((0,f.encodeURL)(u)),e.next=5,p.sign(c(c({},r.algorithm),{},{hash:"SHA-384"}),r,(new TextEncoder).encode(s));case 5:return l=e.sent,e.abrupt("return","".concat(s,".").concat((0,f.fromUint8Array)(new Uint8Array(l),!0)));case 7:case"end":return e.stop()}}),e)})))).apply(this,arguments)}t.generatePKCEChallenge=g,t.importJWK=function(e){return b.apply(this,arguments)},t.signCompactJws=function(e,t,r,n){return m.apply(this,arguments)}},7691:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SMART_KEY=t.patientParams=t.fhirVersions=t.patientCompartment=void 0,t.patientCompartment=["Account","AdverseEvent","AllergyIntolerance","Appointment","AppointmentResponse","AuditEvent","Basic","BodySite","BodyStructure","CarePlan","CareTeam","ChargeItem","Claim","ClaimResponse","ClinicalImpression","Communication","CommunicationRequest","Composition","Condition","Consent","Coverage","CoverageEligibilityRequest","CoverageEligibilityResponse","DetectedIssue","DeviceRequest","DeviceUseRequest","DeviceUseStatement","DiagnosticOrder","DiagnosticReport","DocumentManifest","DocumentReference","EligibilityRequest","Encounter","EnrollmentRequest","EpisodeOfCare","ExplanationOfBenefit","FamilyMemberHistory","Flag","Goal","Group","ImagingManifest","ImagingObjectSelection","ImagingStudy","Immunization","ImmunizationEvaluation","ImmunizationRecommendation","Invoice","List","MeasureReport","Media","MedicationAdministration","MedicationDispense","MedicationOrder","MedicationRequest","MedicationStatement","MolecularSequence","NutritionOrder","Observation","Order","Patient","Person","Procedure","ProcedureRequest","Provenance","QuestionnaireResponse","ReferralRequest","RelatedPerson","RequestGroup","ResearchSubject","RiskAssessment","Schedule","ServiceRequest","Specimen","SupplyDelivery","SupplyRequest","VisionPrescription"],t.fhirVersions={"0.4.0":2,"0.5.0":2,"1.0.0":2,"1.0.1":2,"1.0.2":2,"1.1.0":3,"1.4.0":3,"1.6.0":3,"1.8.0":3,"3.0.0":3,"3.0.1":3,"3.3.0":4,"3.5.0":4,"4.0.0":4,"4.0.1":4},t.patientParams=["patient","subject","requester","member","actor","beneficiary"],t.SMART_KEY="SMART_KEY"},1074:function(e,t,r){"use strict";r(7941),r(2526),r(5003),r(9337);var n=r(4836),o=n(r(4687));r(4916),r(5306),r(2222),r(1249),r(7327),r(1539),r(4747),r(8309),r(6992),r(8783),r(3948),r(285),r(1637),r(9826),r(4603),r(9714),r(4723),r(9601),r(6699),r(2023),r(9600),r(8674);var i=n(r(8416)),a=n(r(7156)),u=n(r(8698));function s(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function c(e){for(var t=1;t0&&void 0!==arguments[0]?arguments[0]:"/",t=arguments.length>1?arguments[1]:void 0,r=String(e).replace(/\/*$/,"/")+".well-known/smart-configuration";return(0,f.getAndCache)(r,t).catch((function(e){throw new Error('Failed to fetch the well-known json "'.concat(r,'". ').concat(e.message))}))}function y(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"/",t=arguments.length>1?arguments[1]:void 0;return v(e,t).then((function(e){if(!e.authorization_endpoint||!e.token_endpoint)throw new Error("Invalid wellKnownJson");return{registrationUri:e.registration_endpoint||"",authorizeUri:e.authorization_endpoint,tokenUri:e.token_endpoint,codeChallengeMethods:e.code_challenge_methods_supported||[]}}))}function g(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"/",t=arguments.length>1?arguments[1]:void 0;return(0,f.fetchConformanceStatement)(e,t).then((function(e){var t=((0,f.getPath)(e||{},"rest.0.security.extension")||[]).filter((function(e){return"http://fhir-registry.smarthealthit.org/StructureDefinition/oauth-uris"===e.url})).map((function(e){return e.extension}))[0],r={registrationUri:"",authorizeUri:"",tokenUri:"",codeChallengeMethods:[]};return t&&t.forEach((function(e){"register"===e.url&&(r.registrationUri=e.valueUri),"authorize"===e.url&&(r.authorizeUri=e.valueUri),"token"===e.url&&(r.tokenUri=e.valueUri)})),r}))}function b(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"/";return y(e).catch((function(){return g(e)}))}function m(e){return w.apply(this,arguments)}function w(){return w=(0,a.default)(o.default.mark((function e(t){var r,n,i,a,u,s,c,l,v,y,g,w,O,E,P,C,R,_,T,j,U,I,F,L,M,B,N,D,K,q,H,z,G,J,V,Y,W,$=arguments;return o.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(r=$.length>1&&void 0!==$[1]?$[1]:{},n=t.getUrl(),!Array.isArray(r)){e.next=11;break}if(i=n.searchParams.get("iss")||n.searchParams.get("fhirServiceUrl")){e.next=6;break}throw new Error('Passing in an "iss" url parameter is required if authorize uses multiple configurations');case 6:return a=r.find((function(e){if(e.issMatch){if("function"==typeof e.issMatch)return!!e.issMatch(i);if("string"==typeof e.issMatch)return e.issMatch===i;if(e.issMatch instanceof RegExp)return e.issMatch.test(i)}return!1})),(0,f.assert)(a,'No configuration found matching the current "iss" parameter "'.concat(i,'"')),e.next=10,m(t,a);case 10:return e.abrupt("return",e.sent);case 11:if(u=r.redirect_uri,s=r.clientSecret,c=r.fakeTokenResponse,l=r.patientId,v=r.encounterId,y=r.client_id,g=r.target,w=r.width,O=r.height,E=r.pkceMode,P=r.clientPublicKeySetUrl,C=r.iss,R=r.launch,_=r.fhirServiceUrl,T=r.redirectUri,j=r.noRedirect,U=r.scope,I=void 0===U?"":U,F=r.clientId,L=r.completeInTarget,M=r.clientPrivateJwk,B=t.getStorage(),C=n.searchParams.get("iss")||C,_=n.searchParams.get("fhirServiceUrl")||_,R=n.searchParams.get("launch")||R,F||(F=y),T||(T=u),T?T.match(/^https?\:\/\//)||(T=t.relative(T)):T=t.relative("."),N=String(C||_||"")){e.next=23;break}throw new Error("No server url found. It must be specified as `iss` or as `fhirServiceUrl` parameter");case 23:return C&&h("Making %s launch...",R?"EHR":"standalone"),R&&!I.match(/launch/)&&(I+=" launch"),d()&&(D=A(),K=S(),(D||K)&&!0!==L&&!1!==L&&(L=D,console.warn('Your app is being authorized from within an iframe or popup window. Please be explicit and provide a "completeInTarget" option. Use "true" to complete the authorization in the same window, or "false" to try to complete it in the parent or the opener window. See http://docs.smarthealthit.org/client-js/api.html'))),e.next=28,B.get(p.SMART_KEY);case 28:return q=e.sent,e.next=31,B.unset(q);case 31:if(H=(0,f.randomString)(16),z={clientId:F,scope:I,redirectUri:T,serverUrl:N,clientSecret:s,clientPrivateJwk:M,tokenResponse:{},key:H,completeInTarget:L,clientPublicKeySetUrl:P},d()&&!(0,f.getPath)(t,"options.fullSessionStorageSupport")){e.next=37;break}return e.next=37,B.set(p.SMART_KEY,H);case 37:if(c&&Object.assign(z.tokenResponse,c),l&&Object.assign(z.tokenResponse,{patient:l}),v&&Object.assign(z.tokenResponse,{encounter:v}),G=T+"?state="+encodeURIComponent(H),!_||C){e.next=50;break}return h("Making fake launch..."),e.next=45,B.set(H,z);case 45:if(!j){e.next=47;break}return e.abrupt("return",G);case 47:return e.next=49,t.redirect(G);case 49:return e.abrupt("return",e.sent);case 50:return e.next=52,b(N);case 52:return J=e.sent,Object.assign(z,J),e.next=56,B.set(H,z);case 56:if(z.authorizeUri){e.next=62;break}if(!j){e.next=59;break}return e.abrupt("return",G);case 59:return e.next=61,t.redirect(G);case 61:return e.abrupt("return",e.sent);case 62:if(V=["response_type=code","client_id="+encodeURIComponent(F||""),"scope="+encodeURIComponent(I),"redirect_uri="+encodeURIComponent(T),"aud="+encodeURIComponent(N),"state="+encodeURIComponent(H)],R&&V.push("launch="+encodeURIComponent(R)),!x(J.codeChallengeMethods.includes("S256"),E)){e.next=73;break}return e.next=67,t.security.generatePKCEChallenge();case 67:return Y=e.sent,Object.assign(z,Y),e.next=71,B.set(H,z);case 71:V.push("code_challenge="+z.codeChallenge),V.push("code_challenge_method=S256");case 73:if(G=z.authorizeUri+"?"+V.join("&"),!j){e.next=76;break}return e.abrupt("return",G);case 76:if(!g||!d()){e.next=85;break}return e.next=79,(0,f.getTargetWindow)(g,w,O);case 79:if((W=e.sent)!==self)try{W.sessionStorage.removeItem(q),W.sessionStorage.setItem(H,JSON.stringify(z))}catch(e){(0,f.debug)('Failed to modify window.sessionStorage. Perhaps it is from different origin?. Failing back to "_self". %s',e),W=self}if(W!==self)try{W.location.href=G,self.addEventListener("message",k)}catch(e){(0,f.debug)('Failed to modify window.location. Perhaps it is from different origin?. Failing back to "_self". %s',e),self.location.href=G}else self.location.href=G;return e.abrupt("return");case 85:return e.next=87,t.redirect(G);case 87:return e.abrupt("return",e.sent);case 88:case"end":return e.stop()}}),e)}))),w.apply(this,arguments)}function x(e,t){if("disabled"===t)return!1;if("unsafeV1"===t)return!0;if("required"===t){if(!e)throw new Error("Required PKCE code challenge method (`S256`) was not found.");return!0}return e}function A(){try{return self!==top&&parent!==self}catch(e){return!0}}function S(){try{return self===top&&!!opener&&opener!==self&&!!window.name}catch(e){return!1}}function k(e){"completeAuth"==e.data.type&&e.origin===new URL(self.location.href).origin&&(window.removeEventListener("message",k),window.location.href=e.data.url)}function O(e){return E.apply(this,arguments)}function E(){return E=(0,a.default)(o.default.mark((function e(t){var r,n,i,a,u,s,v,y,g,b,m,w,x,k,O,E,C,R,_,T,j=arguments;return o.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(r=j.length>1&&void 0!==j[1]?j[1]:{},a=t.getUrl(),u=t.getStorage(),s=a.searchParams,v=s.get("state"),y=s.get("code"),g=s.get("error"),b=s.get("error_description"),v){e.next=12;break}return e.next=11,u.get(p.SMART_KEY);case 11:v=e.sent;case 12:if(!g&&!b){e.next=14;break}throw new Error([g,b].filter(Boolean).join(": "));case 14:return h("key: %s, code: %s",v,y),(0,f.assert)(v,"No 'state' parameter found. Please (re)launch the app."),e.next=18,u.get(v);case 18:if(m=e.sent,w=!d()||(0,f.getPath)(t,"options.fullSessionStorageSupport"),!d()||!m||m.completeInTarget){e.next=29;break}if(x=A(),k=S(),!x&&!k||a.searchParams.get("complete")){e.next=29;break}return a.searchParams.set("complete","1"),O=a.href,E=a.origin,x&&parent.postMessage({type:"completeAuth",url:O},E),k&&(opener.postMessage({type:"completeAuth",url:O},E),window.close()),e.abrupt("return",new Promise((function(){})));case 29:if(a.searchParams.delete("complete"),C=s.has("state"),d()&&(0,f.getPath)(t,"options.replaceBrowserHistory")&&(y||C)&&(y&&(s.delete("code"),h("Removed code parameter from the url.")),C&&w&&(s.delete("state"),h("Removed state parameter from the url.")),window.history.replaceState&&window.history.replaceState({},"",a.href)),(0,f.assert)(m,"No state found! Please (re)launch the app."),!y||(null===(n=m.tokenResponse)||void 0===n?void 0:n.access_token)||!m.tokenUri){e.next=53;break}return(0,f.assert)(y,"'code' url parameter is required"),h("Preparing to exchange the code for access token..."),e.next=39,P(t,{code:y,state:m,clientPublicKeySetUrl:r.clientPublicKeySetUrl,privateKey:r.privateKey||m.clientPrivateJwk});case 39:return R=e.sent,h("Token request options: %O",R),e.next=43,(0,f.request)(m.tokenUri,R);case 43:return _=e.sent,h("Token response: %O",_),(0,f.assert)(_.access_token,"Failed to obtain access token."),m.expiresAt=(0,f.getAccessTokenExpiration)(_,t),m=c(c({},m),{},{tokenResponse:_}),e.next=50,u.set(v,m);case 50:h("Authorization successful!"),e.next=54;break;case 53:h((null===(i=m.tokenResponse)||void 0===i?void 0:i.access_token)?"Already authorized":"No authorization needed");case 54:if(!w){e.next=57;break}return e.next=57,u.set(p.SMART_KEY,v);case 57:return T=new l.default(t,m),h("Created client instance: %O",T),e.abrupt("return",T);case 60:case"end":return e.stop()}}),e)}))),E.apply(this,arguments)}function P(e,t){return C.apply(this,arguments)}function C(){return(C=(0,a.default)(o.default.mark((function e(t,r){var n,i,a,u,s,c,l,p,d,v,y,g,b,m;return o.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=r.code,i=r.state,a=r.clientPublicKeySetUrl,u=r.privateKey,s=i.redirectUri,c=i.clientSecret,l=i.tokenUri,p=i.clientId,d=i.codeVerifier,(0,f.assert)(s,"Missing state.redirectUri"),(0,f.assert)(l,"Missing state.tokenUri"),(0,f.assert)(p,"Missing state.clientId"),v={method:"POST",headers:{"content-type":"application/x-www-form-urlencoded"},body:"code=".concat(n,"&grant_type=authorization_code&redirect_uri=").concat(encodeURIComponent(s))},!c){e.next=11;break}v.headers.authorization="Basic "+t.btoa(p+":"+c),h("Using state.clientSecret to construct the authorization header: %s",v.headers.authorization),e.next=32;break;case 11:if(!u){e.next=30;break}if(!("key"in u)){e.next=16;break}e.t0=u.key,e.next=19;break;case 16:return e.next=18,t.security.importJWK(u);case 18:e.t0=e.sent;case 19:return y=e.t0,g={typ:"JWT",kid:u.kid,jku:a||i.clientPublicKeySetUrl},b={iss:p,sub:p,aud:l,jti:t.base64urlencode(t.security.randomBytes(32)),exp:(0,f.getTimeInFuture)(120)},e.next=24,t.security.signCompactJws(u.alg,y,g,b);case 24:m=e.sent,v.body+="&client_assertion_type=".concat(encodeURIComponent("urn:ietf:params:oauth:client-assertion-type:jwt-bearer")),v.body+="&client_assertion=".concat(encodeURIComponent(m)),h("Using state.clientPrivateJwk to add a client_assertion to the POST body"),e.next=32;break;case 30:h("Public client detected; adding state.clientId to the POST body"),v.body+="&client_id=".concat(encodeURIComponent(p));case 32:return d&&(h("Found state.codeVerifier, adding to the POST body"),v.body+="&code_verifier="+d),e.abrupt("return",v);case 34:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function R(){return(R=(0,a.default)(o.default.mark((function e(t,r,n){var i,a,u,s,c,f;return o.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(i=t.getUrl(),a=i.searchParams.get("code"),u=i.searchParams.get("state"),!a||!u){e.next=5;break}return e.abrupt("return",O(t,n));case 5:if(s=t.getStorage(),e.t0=u,e.t0){e.next=11;break}return e.next=10,s.get(p.SMART_KEY);case 10:e.t0=e.sent;case 11:return c=e.t0,e.next=14,s.get(c);case 14:if(!(f=e.sent)){e.next=17;break}return e.abrupt("return",new l.default(t,f));case 17:return e.abrupt("return",m(t,r).then((function(){return new Promise((function(){}))})));case 18:case"end":return e.stop()}}),e)})))).apply(this,arguments)}t.fetchWellKnownJson=v,t.getSecurityExtensions=b,t.authorize=m,t.isInFrame=A,t.isInPopUp=S,t.onMessage=k,t.ready=O,t.buildTokenRequest=P,t.init=function(e,t,r){return R.apply(this,arguments)}},1060:function(e,t,r){"use strict";var n=r(4836),o=n(r(4687)),i=n(r(7156)),a=n(r(6690)),u=n(r(9728));Object.defineProperty(t,"__esModule",{value:!0});var s=function(){function e(){(0,a.default)(this,e)}var t,r,n;return(0,u.default)(e,[{key:"get",value:(n=(0,i.default)(o.default.mark((function e(t){var r;return o.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!(r=sessionStorage[t])){e.next=3;break}return e.abrupt("return",JSON.parse(r));case 3:return e.abrupt("return",null);case 4:case"end":return e.stop()}}),e)}))),function(e){return n.apply(this,arguments)})},{key:"set",value:(r=(0,i.default)(o.default.mark((function e(t,r){return o.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return sessionStorage[t]=JSON.stringify(r),e.abrupt("return",r);case 2:case"end":return e.stop()}}),e)}))),function(e,t){return r.apply(this,arguments)})},{key:"unset",value:(t=(0,i.default)(o.default.mark((function e(t){return o.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!(t in sessionStorage)){e.next=3;break}return delete sessionStorage[t],e.abrupt("return",!0);case 3:return e.abrupt("return",!1);case 4:case"end":return e.stop()}}),e)}))),function(e){return t.apply(this,arguments)})}]),e}();t.default=s},2088:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default={expired:"Session expired! Please re-launch the app",noScopeForId:"Trying to get the ID of the selected %s. Please add 'launch' or 'launch/%s' to the requested scopes and try again.",noIfNoAuth:"You are trying to get %s but the app is not authorized yet.",noFreeContext:"Please don't use open fhir servers if you need to access launch context items like the %S."}},9662:function(e,t,r){var n=r(614),o=r(6330),i=TypeError;e.exports=function(e){if(n(e))return e;throw i(o(e)+" is not a function")}},9483:function(e,t,r){var n=r(4411),o=r(6330),i=TypeError;e.exports=function(e){if(n(e))return e;throw i(o(e)+" is not a constructor")}},6077:function(e,t,r){var n=r(614),o=String,i=TypeError;e.exports=function(e){if("object"==typeof e||n(e))return e;throw i("Can't set "+o(e)+" as a prototype")}},1223:function(e,t,r){var n=r(5112),o=r(30),i=r(3070).f,a=n("unscopables"),u=Array.prototype;null==u[a]&&i(u,a,{configurable:!0,value:o(null)}),e.exports=function(e){u[a][e]=!0}},1530:function(e,t,r){"use strict";var n=r(8710).charAt;e.exports=function(e,t,r){return t+(r?n(e,t).length:1)}},5787:function(e,t,r){var n=r(7976),o=TypeError;e.exports=function(e,t){if(n(t,e))return e;throw o("Incorrect invocation")}},9670:function(e,t,r){var n=r(111),o=String,i=TypeError;e.exports=function(e){if(n(e))return e;throw i(o(e)+" is not an object")}},4019:function(e){e.exports="undefined"!=typeof ArrayBuffer&&"undefined"!=typeof DataView},260:function(e,t,r){"use strict";var n,o,i,a=r(4019),u=r(9781),s=r(7854),c=r(614),f=r(111),l=r(2597),p=r(648),h=r(6330),d=r(8880),v=r(8052),y=r(3070).f,g=r(7976),b=r(9518),m=r(7674),w=r(5112),x=r(9711),A=r(9909),S=A.enforce,k=A.get,O=s.Int8Array,E=O&&O.prototype,P=s.Uint8ClampedArray,C=P&&P.prototype,R=O&&b(O),_=E&&b(E),T=Object.prototype,j=s.TypeError,U=w("toStringTag"),I=x("TYPED_ARRAY_TAG"),F=a&&!!m&&"Opera"!==p(s.opera),L=!1,M={Int8Array:1,Uint8Array:1,Uint8ClampedArray:1,Int16Array:2,Uint16Array:2,Int32Array:4,Uint32Array:4,Float32Array:4,Float64Array:8},B={BigInt64Array:8,BigUint64Array:8},N=function(e){var t=b(e);if(f(t)){var r=k(t);return r&&l(r,"TypedArrayConstructor")?r.TypedArrayConstructor:N(t)}},D=function(e){if(!f(e))return!1;var t=p(e);return l(M,t)||l(B,t)};for(n in M)(i=(o=s[n])&&o.prototype)?S(i).TypedArrayConstructor=o:F=!1;for(n in B)(i=(o=s[n])&&o.prototype)&&(S(i).TypedArrayConstructor=o);if((!F||!c(R)||R===Function.prototype)&&(R=function(){throw j("Incorrect invocation")},F))for(n in M)s[n]&&m(s[n],R);if((!F||!_||_===T)&&(_=R.prototype,F))for(n in M)s[n]&&m(s[n].prototype,_);if(F&&b(C)!==_&&m(C,_),u&&!l(_,U))for(n in L=!0,y(_,U,{get:function(){return f(this)?this[I]:void 0}}),M)s[n]&&d(s[n],I,n);e.exports={NATIVE_ARRAY_BUFFER_VIEWS:F,TYPED_ARRAY_TAG:L&&I,aTypedArray:function(e){if(D(e))return e;throw j("Target is not a typed array")},aTypedArrayConstructor:function(e){if(c(e)&&(!m||g(R,e)))return e;throw j(h(e)+" is not a typed array constructor")},exportTypedArrayMethod:function(e,t,r,n){if(u){if(r)for(var o in M){var i=s[o];if(i&&l(i.prototype,e))try{delete i.prototype[e]}catch(r){try{i.prototype[e]=t}catch(e){}}}_[e]&&!r||v(_,e,r?t:F&&E[e]||t,n)}},exportTypedArrayStaticMethod:function(e,t,r){var n,o;if(u){if(m){if(r)for(n in M)if((o=s[n])&&l(o,e))try{delete o[e]}catch(e){}if(R[e]&&!r)return;try{return v(R,e,r?t:F&&R[e]||t)}catch(e){}}for(n in M)!(o=s[n])||o[e]&&!r||v(o,e,t)}},getTypedArrayConstructor:N,isView:function(e){if(!f(e))return!1;var t=p(e);return"DataView"===t||l(M,t)||l(B,t)},isTypedArray:D,TypedArray:R,TypedArrayPrototype:_}},3331:function(e,t,r){"use strict";var n=r(7854),o=r(1702),i=r(9781),a=r(4019),u=r(6530),s=r(8880),c=r(9190),f=r(7293),l=r(5787),p=r(9303),h=r(7466),d=r(7067),v=r(1179),y=r(9518),g=r(7674),b=r(8006).f,m=r(3070).f,w=r(1285),x=r(1589),A=r(8003),S=r(9909),k=u.PROPER,O=u.CONFIGURABLE,E=S.get,P=S.set,C="ArrayBuffer",R="Wrong index",_=n.ArrayBuffer,T=_,j=T&&T.prototype,U=n.DataView,I=U&&U.prototype,F=Object.prototype,L=n.Array,M=n.RangeError,B=o(w),N=o([].reverse),D=v.pack,K=v.unpack,q=function(e){return[255&e]},H=function(e){return[255&e,e>>8&255]},z=function(e){return[255&e,e>>8&255,e>>16&255,e>>24&255]},G=function(e){return e[3]<<24|e[2]<<16|e[1]<<8|e[0]},J=function(e){return D(e,23,4)},V=function(e){return D(e,52,8)},Y=function(e,t){m(e.prototype,t,{get:function(){return E(this)[t]}})},W=function(e,t,r,n){var o=d(r),i=E(e);if(o+t>i.byteLength)throw M(R);var a=E(i.buffer).bytes,u=o+i.byteOffset,s=x(a,u,u+t);return n?s:N(s)},$=function(e,t,r,n,o,i){var a=d(r),u=E(e);if(a+t>u.byteLength)throw M(R);for(var s=E(u.buffer).bytes,c=a+u.byteOffset,f=n(+o),l=0;lee;)(Q=X[ee++])in T||s(T,Q,_[Q]);j.constructor=T}g&&y(I)!==F&&g(I,F);var te=new U(new T(2)),re=o(I.setInt8);te.setInt8(0,2147483648),te.setInt8(1,2147483649),!te.getInt8(0)&&te.getInt8(1)||c(I,{setInt8:function(e,t){re(this,e,t<<24>>24)},setUint8:function(e,t){re(this,e,t<<24>>24)}},{unsafe:!0})}else j=(T=function(e){l(this,j);var t=d(e);P(this,{bytes:B(L(t),0),byteLength:t}),i||(this.byteLength=t)}).prototype,I=(U=function(e,t,r){l(this,I),l(e,j);var n=E(e).byteLength,o=p(t);if(o<0||o>n)throw M("Wrong offset");if(o+(r=void 0===r?n-o:h(r))>n)throw M("Wrong length");P(this,{buffer:e,byteLength:r,byteOffset:o}),i||(this.buffer=e,this.byteLength=r,this.byteOffset=o)}).prototype,i&&(Y(T,"byteLength"),Y(U,"buffer"),Y(U,"byteLength"),Y(U,"byteOffset")),c(I,{getInt8:function(e){return W(this,1,e)[0]<<24>>24},getUint8:function(e){return W(this,1,e)[0]},getInt16:function(e){var t=W(this,2,e,arguments.length>1?arguments[1]:void 0);return(t[1]<<8|t[0])<<16>>16},getUint16:function(e){var t=W(this,2,e,arguments.length>1?arguments[1]:void 0);return t[1]<<8|t[0]},getInt32:function(e){return G(W(this,4,e,arguments.length>1?arguments[1]:void 0))},getUint32:function(e){return G(W(this,4,e,arguments.length>1?arguments[1]:void 0))>>>0},getFloat32:function(e){return K(W(this,4,e,arguments.length>1?arguments[1]:void 0),23)},getFloat64:function(e){return K(W(this,8,e,arguments.length>1?arguments[1]:void 0),52)},setInt8:function(e,t){$(this,1,e,q,t)},setUint8:function(e,t){$(this,1,e,q,t)},setInt16:function(e,t){$(this,2,e,H,t,arguments.length>2?arguments[2]:void 0)},setUint16:function(e,t){$(this,2,e,H,t,arguments.length>2?arguments[2]:void 0)},setInt32:function(e,t){$(this,4,e,z,t,arguments.length>2?arguments[2]:void 0)},setUint32:function(e,t){$(this,4,e,z,t,arguments.length>2?arguments[2]:void 0)},setFloat32:function(e,t){$(this,4,e,J,t,arguments.length>2?arguments[2]:void 0)},setFloat64:function(e,t){$(this,8,e,V,t,arguments.length>2?arguments[2]:void 0)}});A(T,C),A(U,"DataView"),e.exports={ArrayBuffer:T,DataView:U}},1048:function(e,t,r){"use strict";var n=r(7908),o=r(1400),i=r(6244),a=r(5117),u=Math.min;e.exports=[].copyWithin||function(e,t){var r=n(this),s=i(r),c=o(e,s),f=o(t,s),l=arguments.length>2?arguments[2]:void 0,p=u((void 0===l?s:o(l,s))-f,s-c),h=1;for(f0;)f in r?r[c]=r[f]:a(r,c),c+=h,f+=h;return r}},1285:function(e,t,r){"use strict";var n=r(7908),o=r(1400),i=r(6244);e.exports=function(e){for(var t=n(this),r=i(t),a=arguments.length,u=o(a>1?arguments[1]:void 0,r),s=a>2?arguments[2]:void 0,c=void 0===s?r:o(s,r);c>u;)t[u++]=e;return t}},8533:function(e,t,r){"use strict";var n=r(2092).forEach,o=r(9341)("forEach");e.exports=o?[].forEach:function(e){return n(this,e,arguments.length>1?arguments[1]:void 0)}},7745:function(e,t,r){var n=r(6244);e.exports=function(e,t){for(var r=0,o=n(t),i=new e(o);o>r;)i[r]=t[r++];return i}},8457:function(e,t,r){"use strict";var n=r(9974),o=r(6916),i=r(7908),a=r(3411),u=r(7659),s=r(4411),c=r(6244),f=r(6135),l=r(8554),p=r(1246),h=Array;e.exports=function(e){var t=i(e),r=s(this),d=arguments.length,v=d>1?arguments[1]:void 0,y=void 0!==v;y&&(v=n(v,d>2?arguments[2]:void 0));var g,b,m,w,x,A,S=p(t),k=0;if(!S||this===h&&u(S))for(g=c(t),b=r?new this(g):h(g);g>k;k++)A=y?v(t[k],k):t[k],f(b,k,A);else for(x=(w=l(t,S)).next,b=r?new this:[];!(m=o(x,w)).done;k++)A=y?a(w,v,[m.value,k],!0):m.value,f(b,k,A);return b.length=k,b}},1318:function(e,t,r){var n=r(5656),o=r(1400),i=r(6244),a=function(e){return function(t,r,a){var u,s=n(t),c=i(s),f=o(a,c);if(e&&r!=r){for(;c>f;)if((u=s[f++])!=u)return!0}else for(;c>f;f++)if((e||f in s)&&s[f]===r)return e||f||0;return!e&&-1}};e.exports={includes:a(!0),indexOf:a(!1)}},2092:function(e,t,r){var n=r(9974),o=r(1702),i=r(8361),a=r(7908),u=r(6244),s=r(5417),c=o([].push),f=function(e){var t=1==e,r=2==e,o=3==e,f=4==e,l=6==e,p=7==e,h=5==e||l;return function(d,v,y,g){for(var b,m,w=a(d),x=i(w),A=n(v,y),S=u(x),k=0,O=g||s,E=t?O(d,S):r||p?O(d,0):void 0;S>k;k++)if((h||k in x)&&(m=A(b=x[k],k,w),e))if(t)E[k]=m;else if(m)switch(e){case 3:return!0;case 5:return b;case 6:return k;case 2:c(E,b)}else switch(e){case 4:return!1;case 7:c(E,b)}return l?-1:o||f?f:E}};e.exports={forEach:f(0),map:f(1),filter:f(2),some:f(3),every:f(4),find:f(5),findIndex:f(6),filterReject:f(7)}},6583:function(e,t,r){"use strict";var n=r(2104),o=r(5656),i=r(9303),a=r(6244),u=r(9341),s=Math.min,c=[].lastIndexOf,f=!!c&&1/[1].lastIndexOf(1,-0)<0,l=u("lastIndexOf"),p=f||!l;e.exports=p?function(e){if(f)return n(c,this,arguments)||0;var t=o(this),r=a(t),u=r-1;for(arguments.length>1&&(u=s(u,i(arguments[1]))),u<0&&(u=r+u);u>=0;u--)if(u in t&&t[u]===e)return u||0;return-1}:c},1194:function(e,t,r){var n=r(7293),o=r(5112),i=r(7392),a=o("species");e.exports=function(e){return i>=51||!n((function(){var t=[];return(t.constructor={})[a]=function(){return{foo:1}},1!==t[e](Boolean).foo}))}},9341:function(e,t,r){"use strict";var n=r(7293);e.exports=function(e,t){var r=[][e];return!!r&&n((function(){r.call(null,t||function(){return 1},1)}))}},3671:function(e,t,r){var n=r(9662),o=r(7908),i=r(8361),a=r(6244),u=TypeError,s=function(e){return function(t,r,s,c){n(r);var f=o(t),l=i(f),p=a(f),h=e?p-1:0,d=e?-1:1;if(s<2)for(;;){if(h in l){c=l[h],h+=d;break}if(h+=d,e?h<0:p<=h)throw u("Reduce of empty array with no initial value")}for(;e?h>=0:p>h;h+=d)h in l&&(c=r(c,l[h],h,f));return c}};e.exports={left:s(!1),right:s(!0)}},1589:function(e,t,r){var n=r(1400),o=r(6244),i=r(6135),a=Array,u=Math.max;e.exports=function(e,t,r){for(var s=o(e),c=n(t,s),f=n(void 0===r?s:r,s),l=a(u(f-c,0)),p=0;c0;)e[n]=e[--n];n!==i++&&(e[n]=r)}return e},u=function(e,t,r,n){for(var o=t.length,i=r.length,a=0,u=0;a"+s+""}},4994:function(e,t,r){"use strict";var n=r(3383).IteratorPrototype,o=r(30),i=r(9114),a=r(8003),u=r(7497),s=function(){return this};e.exports=function(e,t,r,c){var f=t+" Iterator";return e.prototype=o(n,{next:i(+!c,r)}),a(e,f,!1,!0),u[f]=s,e}},8880:function(e,t,r){var n=r(9781),o=r(3070),i=r(9114);e.exports=n?function(e,t,r){return o.f(e,t,i(1,r))}:function(e,t,r){return e[t]=r,e}},9114:function(e){e.exports=function(e,t){return{enumerable:!(1&e),configurable:!(2&e),writable:!(4&e),value:t}}},6135:function(e,t,r){"use strict";var n=r(4948),o=r(3070),i=r(9114);e.exports=function(e,t,r){var a=n(t);a in e?o.f(e,a,i(0,r)):e[a]=r}},7045:function(e,t,r){var n=r(6339),o=r(3070);e.exports=function(e,t,r){return r.get&&n(r.get,t,{getter:!0}),r.set&&n(r.set,t,{setter:!0}),o.f(e,t,r)}},8052:function(e,t,r){var n=r(614),o=r(3070),i=r(6339),a=r(3072);e.exports=function(e,t,r,u){u||(u={});var s=u.enumerable,c=void 0!==u.name?u.name:t;if(n(r)&&i(r,c,u),u.global)s?e[t]=r:a(t,r);else{try{u.unsafe?e[t]&&(s=!0):delete e[t]}catch(e){}s?e[t]=r:o.f(e,t,{value:r,enumerable:!1,configurable:!u.nonConfigurable,writable:!u.nonWritable})}return e}},9190:function(e,t,r){var n=r(8052);e.exports=function(e,t,r){for(var o in t)n(e,o,t[o],r);return e}},3072:function(e,t,r){var n=r(7854),o=Object.defineProperty;e.exports=function(e,t){try{o(n,e,{value:t,configurable:!0,writable:!0})}catch(r){n[e]=t}return t}},654:function(e,t,r){"use strict";var n=r(2109),o=r(6916),i=r(1913),a=r(6530),u=r(614),s=r(4994),c=r(9518),f=r(7674),l=r(8003),p=r(8880),h=r(8052),d=r(5112),v=r(7497),y=r(3383),g=a.PROPER,b=a.CONFIGURABLE,m=y.IteratorPrototype,w=y.BUGGY_SAFARI_ITERATORS,x=d("iterator"),A="keys",S="values",k="entries",O=function(){return this};e.exports=function(e,t,r,a,d,y,E){s(r,t,a);var P,C,R,_=function(e){if(e===d&&F)return F;if(!w&&e in U)return U[e];switch(e){case A:case S:case k:return function(){return new r(this,e)}}return function(){return new r(this)}},T=t+" Iterator",j=!1,U=e.prototype,I=U[x]||U["@@iterator"]||d&&U[d],F=!w&&I||_(d),L="Array"==t&&U.entries||I;if(L&&(P=c(L.call(new e)))!==Object.prototype&&P.next&&(i||c(P)===m||(f?f(P,m):u(P[x])||h(P,x,O)),l(P,T,!0,!0),i&&(v[T]=O)),g&&d==S&&I&&I.name!==S&&(!i&&b?p(U,"name",S):(j=!0,F=function(){return o(I,this)})),d)if(C={values:_(S),keys:y?F:_(A),entries:_(k)},E)for(R in C)(w||j||!(R in U))&&h(U,R,C[R]);else n({target:t,proto:!0,forced:w||j},C);return i&&!E||U[x]===F||h(U,x,F,{name:d}),v[t]=F,C}},7235:function(e,t,r){var n=r(857),o=r(2597),i=r(6061),a=r(3070).f;e.exports=function(e){var t=n.Symbol||(n.Symbol={});o(t,e)||a(t,e,{value:i.f(e)})}},5117:function(e,t,r){"use strict";var n=r(6330),o=TypeError;e.exports=function(e,t){if(!delete e[t])throw o("Cannot delete property "+n(t)+" of "+n(e))}},9781:function(e,t,r){var n=r(7293);e.exports=!n((function(){return 7!=Object.defineProperty({},1,{get:function(){return 7}})[1]}))},317:function(e,t,r){var n=r(7854),o=r(111),i=n.document,a=o(i)&&o(i.createElement);e.exports=function(e){return a?i.createElement(e):{}}},7207:function(e){var t=TypeError;e.exports=function(e){if(e>9007199254740991)throw t("Maximum allowed index exceeded");return e}},8324:function(e){e.exports={CSSRuleList:0,CSSStyleDeclaration:0,CSSValueList:0,ClientRectList:0,DOMRectList:0,DOMStringList:0,DOMTokenList:1,DataTransferItemList:0,FileList:0,HTMLAllCollection:0,HTMLCollection:0,HTMLFormElement:0,HTMLSelectElement:0,MediaList:0,MimeTypeArray:0,NamedNodeMap:0,NodeList:1,PaintRequestList:0,Plugin:0,PluginArray:0,SVGLengthList:0,SVGNumberList:0,SVGPathSegList:0,SVGPointList:0,SVGStringList:0,SVGTransformList:0,SourceBufferList:0,StyleSheetList:0,TextTrackCueList:0,TextTrackList:0,TouchList:0}},8509:function(e,t,r){var n=r(317)("span").classList,o=n&&n.constructor&&n.constructor.prototype;e.exports=o===Object.prototype?void 0:o},8886:function(e,t,r){var n=r(8113).match(/firefox\/(\d+)/i);e.exports=!!n&&+n[1]},7871:function(e){e.exports="object"==typeof window&&"object"!=typeof Deno},256:function(e,t,r){var n=r(8113);e.exports=/MSIE|Trident/.test(n)},1528:function(e,t,r){var n=r(8113),o=r(7854);e.exports=/ipad|iphone|ipod/i.test(n)&&void 0!==o.Pebble},6833:function(e,t,r){var n=r(8113);e.exports=/(?:ipad|iphone|ipod).*applewebkit/i.test(n)},5268:function(e,t,r){var n=r(4326),o=r(7854);e.exports="process"==n(o.process)},1036:function(e,t,r){var n=r(8113);e.exports=/web0s(?!.*chrome)/i.test(n)},8113:function(e,t,r){var n=r(5005);e.exports=n("navigator","userAgent")||""},7392:function(e,t,r){var n,o,i=r(7854),a=r(8113),u=i.process,s=i.Deno,c=u&&u.versions||s&&s.version,f=c&&c.v8;f&&(o=(n=f.split("."))[0]>0&&n[0]<4?1:+(n[0]+n[1])),!o&&a&&(!(n=a.match(/Edge\/(\d+)/))||n[1]>=74)&&(n=a.match(/Chrome\/(\d+)/))&&(o=+n[1]),e.exports=o},8008:function(e,t,r){var n=r(8113).match(/AppleWebKit\/(\d+)\./);e.exports=!!n&&+n[1]},748:function(e){e.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},2109:function(e,t,r){var n=r(7854),o=r(1236).f,i=r(8880),a=r(8052),u=r(3072),s=r(9920),c=r(4705);e.exports=function(e,t){var r,f,l,p,h,d=e.target,v=e.global,y=e.stat;if(r=v?n:y?n[d]||u(d,{}):(n[d]||{}).prototype)for(f in t){if(p=t[f],l=e.dontCallGetSet?(h=o(r,f))&&h.value:r[f],!c(v?f:d+(y?".":"#")+f,e.forced)&&void 0!==l){if(typeof p==typeof l)continue;s(p,l)}(e.sham||l&&l.sham)&&i(p,"sham",!0),a(r,f,p,e)}}},7293:function(e){e.exports=function(e){try{return!!e()}catch(e){return!0}}},7007:function(e,t,r){"use strict";r(4916);var n=r(1702),o=r(8052),i=r(2261),a=r(7293),u=r(5112),s=r(8880),c=u("species"),f=RegExp.prototype;e.exports=function(e,t,r,l){var p=u(e),h=!a((function(){var t={};return t[p]=function(){return 7},7!=""[e](t)})),d=h&&!a((function(){var t=!1,r=/a/;return"split"===e&&((r={}).constructor={},r.constructor[c]=function(){return r},r.flags="",r[p]=/./[p]),r.exec=function(){return t=!0,null},r[p](""),!t}));if(!h||!d||r){var v=n(/./[p]),y=t(p,""[e],(function(e,t,r,o,a){var u=n(e),s=t.exec;return s===i||s===f.exec?h&&!a?{done:!0,value:v(t,r,o)}:{done:!0,value:u(r,t,o)}:{done:!1}}));o(String.prototype,e,y[0]),o(f,p,y[1])}l&&s(f[p],"sham",!0)}},6790:function(e,t,r){"use strict";var n=r(3157),o=r(6244),i=r(7207),a=r(9974),u=function(e,t,r,s,c,f,l,p){for(var h,d,v=c,y=0,g=!!l&&a(l,p);y0&&n(h)?(d=o(h),v=u(e,t,h,d,v,f-1)-1):(i(v+1),e[v]=h),v++),y++;return v};e.exports=u},2104:function(e,t,r){var n=r(4374),o=Function.prototype,i=o.apply,a=o.call;e.exports="object"==typeof Reflect&&Reflect.apply||(n?a.bind(i):function(){return a.apply(i,arguments)})},9974:function(e,t,r){var n=r(1702),o=r(9662),i=r(4374),a=n(n.bind);e.exports=function(e,t){return o(e),void 0===t?e:i?a(e,t):function(){return e.apply(t,arguments)}}},4374:function(e,t,r){var n=r(7293);e.exports=!n((function(){var e=function(){}.bind();return"function"!=typeof e||e.hasOwnProperty("prototype")}))},7065:function(e,t,r){"use strict";var n=r(1702),o=r(9662),i=r(111),a=r(2597),u=r(206),s=r(4374),c=Function,f=n([].concat),l=n([].join),p={},h=function(e,t,r){if(!a(p,t)){for(var n=[],o=0;o]*>)/g,f=/\$([$&'`]|\d{1,2})/g;e.exports=function(e,t,r,n,l,p){var h=r+e.length,d=n.length,v=f;return void 0!==l&&(l=o(l),v=c),u(p,v,(function(o,u){var c;switch(a(u,0)){case"$":return"$";case"&":return e;case"`":return s(t,0,r);case"'":return s(t,h);case"<":c=l[s(u,1,-1)];break;default:var f=+u;if(0===f)return o;if(f>d){var p=i(f/10);return 0===p?o:p<=d?void 0===n[p-1]?a(u,1):n[p-1]+a(u,1):o}c=n[f-1]}return void 0===c?"":c}))}},7854:function(e,t,r){var n=function(e){return e&&e.Math==Math&&e};e.exports=n("object"==typeof globalThis&&globalThis)||n("object"==typeof window&&window)||n("object"==typeof self&&self)||n("object"==typeof r.g&&r.g)||function(){return this}()||Function("return this")()},2597:function(e,t,r){var n=r(1702),o=r(7908),i=n({}.hasOwnProperty);e.exports=Object.hasOwn||function(e,t){return i(o(e),t)}},3501:function(e){e.exports={}},842:function(e,t,r){var n=r(7854);e.exports=function(e,t){var r=n.console;r&&r.error&&(1==arguments.length?r.error(e):r.error(e,t))}},490:function(e,t,r){var n=r(5005);e.exports=n("document","documentElement")},4664:function(e,t,r){var n=r(9781),o=r(7293),i=r(317);e.exports=!n&&!o((function(){return 7!=Object.defineProperty(i("div"),"a",{get:function(){return 7}}).a}))},1179:function(e){var t=Array,r=Math.abs,n=Math.pow,o=Math.floor,i=Math.log,a=Math.LN2;e.exports={pack:function(e,u,s){var c,f,l,p=t(s),h=8*s-u-1,d=(1<>1,y=23===u?n(2,-24)-n(2,-77):0,g=e<0||0===e&&1/e<0?1:0,b=0;for((e=r(e))!=e||e===1/0?(f=e!=e?1:0,c=d):(c=o(i(e)/a),e*(l=n(2,-c))<1&&(c--,l*=2),(e+=c+v>=1?y/l:y*n(2,1-v))*l>=2&&(c++,l/=2),c+v>=d?(f=0,c=d):c+v>=1?(f=(e*l-1)*n(2,u),c+=v):(f=e*n(2,v-1)*n(2,u),c=0));u>=8;)p[b++]=255&f,f/=256,u-=8;for(c=c<0;)p[b++]=255&c,c/=256,h-=8;return p[--b]|=128*g,p},unpack:function(e,t){var r,o=e.length,i=8*o-t-1,a=(1<>1,s=i-7,c=o-1,f=e[c--],l=127&f;for(f>>=7;s>0;)l=256*l+e[c--],s-=8;for(r=l&(1<<-s)-1,l>>=-s,s+=t;s>0;)r=256*r+e[c--],s-=8;if(0===l)l=1-u;else{if(l===a)return r?NaN:f?-1/0:1/0;r+=n(2,t),l-=u}return(f?-1:1)*r*n(2,l-t)}}},8361:function(e,t,r){var n=r(1702),o=r(7293),i=r(4326),a=Object,u=n("".split);e.exports=o((function(){return!a("z").propertyIsEnumerable(0)}))?function(e){return"String"==i(e)?u(e,""):a(e)}:a},9587:function(e,t,r){var n=r(614),o=r(111),i=r(7674);e.exports=function(e,t,r){var a,u;return i&&n(a=t.constructor)&&a!==r&&o(u=a.prototype)&&u!==r.prototype&&i(e,u),e}},2788:function(e,t,r){var n=r(1702),o=r(614),i=r(5465),a=n(Function.toString);o(i.inspectSource)||(i.inspectSource=function(e){return a(e)}),e.exports=i.inspectSource},9909:function(e,t,r){var n,o,i,a=r(8536),u=r(7854),s=r(1702),c=r(111),f=r(8880),l=r(2597),p=r(5465),h=r(6200),d=r(3501),v="Object already initialized",y=u.TypeError,g=u.WeakMap;if(a||p.state){var b=p.state||(p.state=new g),m=s(b.get),w=s(b.has),x=s(b.set);n=function(e,t){if(w(b,e))throw new y(v);return t.facade=e,x(b,e,t),t},o=function(e){return m(b,e)||{}},i=function(e){return w(b,e)}}else{var A=h("state");d[A]=!0,n=function(e,t){if(l(e,A))throw new y(v);return t.facade=e,f(e,A,t),t},o=function(e){return l(e,A)?e[A]:{}},i=function(e){return l(e,A)}}e.exports={set:n,get:o,has:i,enforce:function(e){return i(e)?o(e):n(e,{})},getterFor:function(e){return function(t){var r;if(!c(t)||(r=o(t)).type!==e)throw y("Incompatible receiver, "+e+" required");return r}}}},7659:function(e,t,r){var n=r(5112),o=r(7497),i=n("iterator"),a=Array.prototype;e.exports=function(e){return void 0!==e&&(o.Array===e||a[i]===e)}},3157:function(e,t,r){var n=r(4326);e.exports=Array.isArray||function(e){return"Array"==n(e)}},614:function(e){e.exports=function(e){return"function"==typeof e}},4411:function(e,t,r){var n=r(1702),o=r(7293),i=r(614),a=r(648),u=r(5005),s=r(2788),c=function(){},f=[],l=u("Reflect","construct"),p=/^\s*(?:class|function)\b/,h=n(p.exec),d=!p.exec(c),v=function(e){if(!i(e))return!1;try{return l(c,f,e),!0}catch(e){return!1}},y=function(e){if(!i(e))return!1;switch(a(e)){case"AsyncFunction":case"GeneratorFunction":case"AsyncGeneratorFunction":return!1}try{return d||!!h(p,s(e))}catch(e){return!0}};y.sham=!0,e.exports=!l||o((function(){var e;return v(v.call)||!v(Object)||!v((function(){e=!0}))||e}))?y:v},4705:function(e,t,r){var n=r(7293),o=r(614),i=/#|\.prototype\./,a=function(e,t){var r=s[u(e)];return r==f||r!=c&&(o(t)?n(t):!!t)},u=a.normalize=function(e){return String(e).replace(i,".").toLowerCase()},s=a.data={},c=a.NATIVE="N",f=a.POLYFILL="P";e.exports=a},5988:function(e,t,r){var n=r(111),o=Math.floor;e.exports=Number.isInteger||function(e){return!n(e)&&isFinite(e)&&o(e)===e}},111:function(e,t,r){var n=r(614);e.exports=function(e){return"object"==typeof e?null!==e:n(e)}},1913:function(e){e.exports=!1},7850:function(e,t,r){var n=r(111),o=r(4326),i=r(5112)("match");e.exports=function(e){var t;return n(e)&&(void 0!==(t=e[i])?!!t:"RegExp"==o(e))}},2190:function(e,t,r){var n=r(5005),o=r(614),i=r(7976),a=r(3307),u=Object;e.exports=a?function(e){return"symbol"==typeof e}:function(e){var t=n("Symbol");return o(t)&&i(t.prototype,u(e))}},408:function(e,t,r){var n=r(9974),o=r(6916),i=r(9670),a=r(6330),u=r(7659),s=r(6244),c=r(7976),f=r(8554),l=r(1246),p=r(9212),h=TypeError,d=function(e,t){this.stopped=e,this.result=t},v=d.prototype;e.exports=function(e,t,r){var y,g,b,m,w,x,A,S=r&&r.that,k=!(!r||!r.AS_ENTRIES),O=!(!r||!r.IS_RECORD),E=!(!r||!r.IS_ITERATOR),P=!(!r||!r.INTERRUPTED),C=n(t,S),R=function(e){return y&&p(y,"normal",e),new d(!0,e)},_=function(e){return k?(i(e),P?C(e[0],e[1],R):C(e[0],e[1])):P?C(e,R):C(e)};if(O)y=e.iterator;else if(E)y=e;else{if(!(g=l(e)))throw h(a(e)+" is not iterable");if(u(g)){for(b=0,m=s(e);m>b;b++)if((w=_(e[b]))&&c(v,w))return w;return new d(!1)}y=f(e,g)}for(x=O?e.next:y.next;!(A=o(x,y)).done;){try{w=_(A.value)}catch(e){p(y,"throw",e)}if("object"==typeof w&&w&&c(v,w))return w}return new d(!1)}},9212:function(e,t,r){var n=r(6916),o=r(9670),i=r(8173);e.exports=function(e,t,r){var a,u;o(e);try{if(!(a=i(e,"return"))){if("throw"===t)throw r;return r}a=n(a,e)}catch(e){u=!0,a=e}if("throw"===t)throw r;if(u)throw a;return o(a),r}},3383:function(e,t,r){"use strict";var n,o,i,a=r(7293),u=r(614),s=r(30),c=r(9518),f=r(8052),l=r(5112),p=r(1913),h=l("iterator"),d=!1;[].keys&&("next"in(i=[].keys())?(o=c(c(i)))!==Object.prototype&&(n=o):d=!0),null==n||a((function(){var e={};return n[h].call(e)!==e}))?n={}:p&&(n=s(n)),u(n[h])||f(n,h,(function(){return this})),e.exports={IteratorPrototype:n,BUGGY_SAFARI_ITERATORS:d}},7497:function(e){e.exports={}},6244:function(e,t,r){var n=r(7466);e.exports=function(e){return n(e.length)}},6339:function(e,t,r){var n=r(7293),o=r(614),i=r(2597),a=r(9781),u=r(6530).CONFIGURABLE,s=r(2788),c=r(9909),f=c.enforce,l=c.get,p=Object.defineProperty,h=a&&!n((function(){return 8!==p((function(){}),"length",{value:8}).length})),d=String(String).split("String"),v=e.exports=function(e,t,r){"Symbol("===String(t).slice(0,7)&&(t="["+String(t).replace(/^Symbol\(([^)]*)\)/,"$1")+"]"),r&&r.getter&&(t="get "+t),r&&r.setter&&(t="set "+t),(!i(e,"name")||u&&e.name!==t)&&(a?p(e,"name",{value:t,configurable:!0}):e.name=t),h&&r&&i(r,"arity")&&e.length!==r.arity&&p(e,"length",{value:r.arity});try{r&&i(r,"constructor")&&r.constructor?a&&p(e,"prototype",{writable:!1}):e.prototype&&(e.prototype=void 0)}catch(e){}var n=f(e);return i(n,"source")||(n.source=d.join("string"==typeof t?t:"")),e};Function.prototype.toString=v((function(){return o(this)&&l(this).source||s(this)}),"toString")},4758:function(e){var t=Math.ceil,r=Math.floor;e.exports=Math.trunc||function(e){var n=+e;return(n>0?r:t)(n)}},5948:function(e,t,r){var n,o,i,a,u,s,c,f,l=r(7854),p=r(9974),h=r(1236).f,d=r(261).set,v=r(6833),y=r(1528),g=r(1036),b=r(5268),m=l.MutationObserver||l.WebKitMutationObserver,w=l.document,x=l.process,A=l.Promise,S=h(l,"queueMicrotask"),k=S&&S.value;k||(n=function(){var e,t;for(b&&(e=x.domain)&&e.exit();o;){t=o.fn,o=o.next;try{t()}catch(e){throw o?a():i=void 0,e}}i=void 0,e&&e.enter()},v||b||g||!m||!w?!y&&A&&A.resolve?((c=A.resolve(void 0)).constructor=A,f=p(c.then,c),a=function(){f(n)}):b?a=function(){x.nextTick(n)}:(d=p(d,l),a=function(){d(n)}):(u=!0,s=w.createTextNode(""),new m(n).observe(s,{characterData:!0}),a=function(){s.data=u=!u})),e.exports=k||function(e){var t={fn:e,next:void 0};i&&(i.next=t),o||(o=t,a()),i=t}},735:function(e,t,r){var n=r(133);e.exports=n&&!!Symbol.for&&!!Symbol.keyFor},133:function(e,t,r){var n=r(7392),o=r(7293);e.exports=!!Object.getOwnPropertySymbols&&!o((function(){var e=Symbol();return!String(e)||!(Object(e)instanceof Symbol)||!Symbol.sham&&n&&n<41}))},590:function(e,t,r){var n=r(7293),o=r(5112),i=r(1913),a=o("iterator");e.exports=!n((function(){var e=new URL("b?a=1&b=2&c=3","http://a"),t=e.searchParams,r="";return e.pathname="c%20d",t.forEach((function(e,n){t.delete("b"),r+=n+e})),i&&!e.toJSON||!t.sort||"http://a/c%20d?a=1&c=3"!==e.href||"3"!==t.get("c")||"a=1"!==String(new URLSearchParams("?a=1"))||!t[a]||"a"!==new URL("https://a@b").username||"b"!==new URLSearchParams(new URLSearchParams("a=b")).get("a")||"xn--e1aybc"!==new URL("http://тест").host||"#%D0%B1"!==new URL("http://a#б").hash||"a1c3"!==r||"x"!==new URL("http://x",void 0).host}))},8536:function(e,t,r){var n=r(7854),o=r(614),i=r(2788),a=n.WeakMap;e.exports=o(a)&&/native code/.test(i(a))},8523:function(e,t,r){"use strict";var n=r(9662),o=function(e){var t,r;this.promise=new e((function(e,n){if(void 0!==t||void 0!==r)throw TypeError("Bad Promise constructor");t=e,r=n})),this.resolve=n(t),this.reject=n(r)};e.exports.f=function(e){return new o(e)}},3929:function(e,t,r){var n=r(7850),o=TypeError;e.exports=function(e){if(n(e))throw o("The method doesn't accept regular expressions");return e}},1574:function(e,t,r){"use strict";var n=r(9781),o=r(1702),i=r(6916),a=r(7293),u=r(1956),s=r(5181),c=r(5296),f=r(7908),l=r(8361),p=Object.assign,h=Object.defineProperty,d=o([].concat);e.exports=!p||a((function(){if(n&&1!==p({b:1},p(h({},"a",{enumerable:!0,get:function(){h(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var e={},t={},r=Symbol(),o="abcdefghijklmnopqrst";return e[r]=7,o.split("").forEach((function(e){t[e]=e})),7!=p({},e)[r]||u(p({},t)).join("")!=o}))?function(e,t){for(var r=f(e),o=arguments.length,a=1,p=s.f,h=c.f;o>a;)for(var v,y=l(arguments[a++]),g=p?d(u(y),p(y)):u(y),b=g.length,m=0;b>m;)v=g[m++],n&&!i(h,y,v)||(r[v]=y[v]);return r}:p},30:function(e,t,r){var n,o=r(9670),i=r(6048),a=r(748),u=r(3501),s=r(490),c=r(317),f=r(6200)("IE_PROTO"),l=function(){},p=function(e){return"