{"version":3,"file":"app.s2018-final.min.js","mappings":"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","sources":["/node_modules/@bugsnag/browser/dist/bugsnag.js","/node_modules/@bugsnag/js/browser/notifier.js","/node_modules/core-js/internals/a-callable.js","/node_modules/core-js/internals/a-possible-prototype.js","/node_modules/core-js/internals/an-object.js","/node_modules/core-js/internals/array-includes.js","/node_modules/core-js/internals/array-set-length.js","/node_modules/core-js/internals/classof-raw.js","/node_modules/core-js/internals/classof.js","/node_modules/core-js/internals/copy-constructor-properties.js","/node_modules/core-js/internals/create-non-enumerable-property.js","/node_modules/core-js/internals/create-property-descriptor.js","/node_modules/core-js/internals/define-built-in-accessor.js","/node_modules/core-js/internals/define-built-in.js","/node_modules/core-js/internals/define-global-property.js","/node_modules/core-js/internals/descriptors.js","/node_modules/core-js/internals/document-create-element.js","/node_modules/core-js/internals/does-not-exceed-safe-integer.js","/node_modules/core-js/internals/enum-bug-keys.js","/node_modules/core-js/internals/environment-user-agent.js","/node_modules/core-js/internals/environment-v8-version.js","/node_modules/core-js/internals/export.js","/node_modules/core-js/internals/fails.js","/node_modules/core-js/internals/function-bind-native.js","/node_modules/core-js/internals/function-call.js","/node_modules/core-js/internals/function-name.js","/node_modules/core-js/internals/function-uncurry-this-accessor.js","/node_modules/core-js/internals/function-uncurry-this.js","/node_modules/core-js/internals/get-built-in.js","/node_modules/core-js/internals/get-method.js","/node_modules/core-js/internals/global-this.js","/node_modules/core-js/internals/has-own-property.js","/node_modules/core-js/internals/hidden-keys.js","/node_modules/core-js/internals/html.js","/node_modules/core-js/internals/ie8-dom-define.js","/node_modules/core-js/internals/indexed-object.js","/node_modules/core-js/internals/inherit-if-required.js","/node_modules/core-js/internals/inspect-source.js","/node_modules/core-js/internals/internal-state.js","/node_modules/core-js/internals/is-array.js","/node_modules/core-js/internals/is-callable.js","/node_modules/core-js/internals/is-forced.js","/node_modules/core-js/internals/is-null-or-undefined.js","/node_modules/core-js/internals/is-object.js","/node_modules/core-js/internals/is-possible-prototype.js","/node_modules/core-js/internals/is-pure.js","/node_modules/core-js/internals/is-regexp.js","/node_modules/core-js/internals/is-symbol.js","/node_modules/core-js/internals/length-of-array-like.js","/node_modules/core-js/internals/make-built-in.js","/node_modules/core-js/internals/math-trunc.js","/node_modules/core-js/internals/object-create.js","/node_modules/core-js/internals/object-define-properties.js","/node_modules/core-js/internals/object-define-property.js","/node_modules/core-js/internals/object-get-own-property-descriptor.js","/node_modules/core-js/internals/object-get-own-property-names.js","/node_modules/core-js/internals/object-get-own-property-symbols.js","/node_modules/core-js/internals/object-is-prototype-of.js","/node_modules/core-js/internals/object-keys-internal.js","/node_modules/core-js/internals/object-keys.js","/node_modules/core-js/internals/object-property-is-enumerable.js","/node_modules/core-js/internals/object-set-prototype-of.js","/node_modules/core-js/internals/ordinary-to-primitive.js","/node_modules/core-js/internals/own-keys.js","/node_modules/core-js/internals/proxy-accessor.js","/node_modules/core-js/internals/regexp-exec.js","/node_modules/core-js/internals/regexp-flags.js","/node_modules/core-js/internals/regexp-get-flags.js","/node_modules/core-js/internals/regexp-sticky-helpers.js","/node_modules/core-js/internals/regexp-unsupported-dot-all.js","/node_modules/core-js/internals/regexp-unsupported-ncg.js","/node_modules/core-js/internals/require-object-coercible.js","/node_modules/core-js/internals/set-species.js","/node_modules/core-js/internals/shared-key.js","/node_modules/core-js/internals/shared-store.js","/node_modules/core-js/internals/shared.js","/node_modules/core-js/internals/symbol-constructor-detection.js","/node_modules/core-js/internals/to-absolute-index.js","/node_modules/core-js/internals/to-indexed-object.js","/node_modules/core-js/internals/to-integer-or-infinity.js","/node_modules/core-js/internals/to-length.js","/node_modules/core-js/internals/to-object.js","/node_modules/core-js/internals/to-primitive.js","/node_modules/core-js/internals/to-property-key.js","/node_modules/core-js/internals/to-string-tag-support.js","/node_modules/core-js/internals/to-string.js","/node_modules/core-js/internals/try-to-string.js","/node_modules/core-js/internals/uid.js","/node_modules/core-js/internals/use-symbol-as-uid.js","/node_modules/core-js/internals/v8-prototype-define-bug.js","/node_modules/core-js/internals/weak-map-basic-detection.js","/node_modules/core-js/internals/well-known-symbol.js","/node_modules/core-js/modules/es.array.push.js","/node_modules/core-js/modules/es.regexp.constructor.js","/node_modules/core-js/modules/es.regexp.dot-all.js","/node_modules/core-js/modules/es.regexp.exec.js","webpack/bootstrap","webpack/runtime/compat get default export","webpack/runtime/define property getters","webpack/runtime/global","webpack/runtime/hasOwnProperty shorthand","/packages/bugsnag-config/lib/bugsnag-config.ts","/packages/mr-interactive/lib/privacy-controls/do-not-track/do-not-track.ts","/packages/mr-interactive/lib/cookie/cookie.ts","/packages/mr-interactive/lib/privacy-controls/embeds/embeds.ts","/packages/mr-interactive/lib/privacy-controls/gtm/gtm.ts","/packages/mr-interactive/lib/privacy-controls/embeds/embeds-setup.ts","/packages/mr-interactive/lib/privacy-controls/gtm/gtm-setup.ts"],"sourcesContent":["(function(f){if(typeof exports===\"object\"&&typeof module!==\"undefined\"){module.exports=f()}else if(typeof define===\"function\"&&define.amd){define([],f)}else{var g;if(typeof window!==\"undefined\"){g=window}else if(typeof global!==\"undefined\"){g=global}else if(typeof self!==\"undefined\"){g=self}else{g=this}g.Bugsnag = f()}})(function(){var define,module,exports;\nvar _$breadcrumbTypes_8 = ['navigation', 'request', 'process', 'log', 'user', 'state', 'error', 'manual'];\n\n// Array#reduce\nvar _$reduce_17 = function (arr, fn, accum) {\n var val = accum;\n for (var i = 0, len = arr.length; i < len; i++) val = fn(val, arr[i], i, arr);\n return val;\n};\n\n/* removed: var _$reduce_17 = require('./reduce'); */;\n\n// Array#filter\nvar _$filter_12 = function (arr, fn) {\n return _$reduce_17(arr, function (accum, item, i, arr) {\n return !fn(item, i, arr) ? accum : accum.concat(item);\n }, []);\n};\n\n/* removed: var _$reduce_17 = require('./reduce'); */;\n// Array#includes\nvar _$includes_13 = function (arr, x) {\n return _$reduce_17(arr, function (accum, item, i, arr) {\n return accum === true || item === x;\n }, false);\n};\n\n// Array#isArray\nvar _$isArray_14 = function (obj) {\n return Object.prototype.toString.call(obj) === '[object Array]';\n};\n\n/* eslint-disable-next-line no-prototype-builtins */\nvar _hasDontEnumBug = !{\n toString: null\n}.propertyIsEnumerable('toString');\nvar _dontEnums = ['toString', 'toLocaleString', 'valueOf', 'hasOwnProperty', 'isPrototypeOf', 'propertyIsEnumerable', 'constructor'];\n\n// Object#keys\nvar _$keys_15 = function (obj) {\n // stripped down version of\n // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/Keys\n var result = [];\n var prop;\n for (prop in obj) {\n if (Object.prototype.hasOwnProperty.call(obj, prop)) result.push(prop);\n }\n if (!_hasDontEnumBug) return result;\n for (var i = 0, len = _dontEnums.length; i < len; i++) {\n if (Object.prototype.hasOwnProperty.call(obj, _dontEnums[i])) result.push(_dontEnums[i]);\n }\n return result;\n};\n\nvar _$intRange_24 = function (min, max) {\n if (min === void 0) {\n min = 1;\n }\n if (max === void 0) {\n max = Infinity;\n }\n return function (value) {\n return typeof value === 'number' && parseInt('' + value, 10) === value && value >= min && value <= max;\n };\n};\n\n/* removed: var _$filter_12 = require('../es-utils/filter'); */;\n/* removed: var _$isArray_14 = require('../es-utils/is-array'); */;\nvar _$listOfFunctions_25 = function (value) {\n return typeof value === 'function' || _$isArray_14(value) && _$filter_12(value, function (f) {\n return typeof f === 'function';\n }).length === value.length;\n};\n\nvar _$stringWithLength_26 = function (value) {\n return typeof value === 'string' && !!value.length;\n};\n\nvar _$config_5 = {};\n/* removed: var _$filter_12 = require('./lib/es-utils/filter'); */;\n/* removed: var _$reduce_17 = require('./lib/es-utils/reduce'); */;\n/* removed: var _$keys_15 = require('./lib/es-utils/keys'); */;\n/* removed: var _$isArray_14 = require('./lib/es-utils/is-array'); */;\n/* removed: var _$includes_13 = require('./lib/es-utils/includes'); */;\n/* removed: var _$intRange_24 = require('./lib/validators/int-range'); */;\n/* removed: var _$stringWithLength_26 = require('./lib/validators/string-with-length'); */;\n/* removed: var _$listOfFunctions_25 = require('./lib/validators/list-of-functions'); */;\n/* removed: var _$breadcrumbTypes_8 = require('./lib/breadcrumb-types'); */;\nvar defaultErrorTypes = function () {\n return {\n unhandledExceptions: true,\n unhandledRejections: true\n };\n};\n_$config_5.schema = {\n apiKey: {\n defaultValue: function () {\n return null;\n },\n message: 'is required',\n validate: _$stringWithLength_26\n },\n appVersion: {\n defaultValue: function () {\n return undefined;\n },\n message: 'should be a string',\n validate: function (value) {\n return value === undefined || _$stringWithLength_26(value);\n }\n },\n appType: {\n defaultValue: function () {\n return undefined;\n },\n message: 'should be a string',\n validate: function (value) {\n return value === undefined || _$stringWithLength_26(value);\n }\n },\n autoDetectErrors: {\n defaultValue: function () {\n return true;\n },\n message: 'should be true|false',\n validate: function (value) {\n return value === true || value === false;\n }\n },\n enabledErrorTypes: {\n defaultValue: function () {\n return defaultErrorTypes();\n },\n message: 'should be an object containing the flags { unhandledExceptions:true|false, unhandledRejections:true|false }',\n allowPartialObject: true,\n validate: function (value) {\n // ensure we have an object\n if (typeof value !== 'object' || !value) return false;\n var providedKeys = _$keys_15(value);\n var defaultKeys = _$keys_15(defaultErrorTypes());\n // ensure it only has a subset of the allowed keys\n if (_$filter_12(providedKeys, function (k) {\n return _$includes_13(defaultKeys, k);\n }).length < providedKeys.length) return false;\n // ensure all of the values are boolean\n if (_$filter_12(_$keys_15(value), function (k) {\n return typeof value[k] !== 'boolean';\n }).length > 0) return false;\n return true;\n }\n },\n onError: {\n defaultValue: function () {\n return [];\n },\n message: 'should be a function or array of functions',\n validate: _$listOfFunctions_25\n },\n onSession: {\n defaultValue: function () {\n return [];\n },\n message: 'should be a function or array of functions',\n validate: _$listOfFunctions_25\n },\n onBreadcrumb: {\n defaultValue: function () {\n return [];\n },\n message: 'should be a function or array of functions',\n validate: _$listOfFunctions_25\n },\n endpoints: {\n defaultValue: function (endpoints) {\n // only apply the default value if no endpoints have been provided, otherwise prevent delivery by setting to null\n if (typeof endpoints === 'undefined') {\n return {\n notify: 'https://notify.bugsnag.com',\n sessions: 'https://sessions.bugsnag.com'\n };\n } else {\n return {\n notify: null,\n sessions: null\n };\n }\n },\n message: 'should be an object containing endpoint URLs { notify, sessions }',\n validate: function (val) {\n return (\n // first, ensure it's an object\n val && typeof val === 'object' &&\n // notify and sessions must always be set\n _$stringWithLength_26(val.notify) && _$stringWithLength_26(val.sessions) &&\n // ensure no keys other than notify/session are set on endpoints object\n _$filter_12(_$keys_15(val), function (k) {\n return !_$includes_13(['notify', 'sessions'], k);\n }).length === 0\n );\n }\n },\n autoTrackSessions: {\n defaultValue: function (val) {\n return true;\n },\n message: 'should be true|false',\n validate: function (val) {\n return val === true || val === false;\n }\n },\n enabledReleaseStages: {\n defaultValue: function () {\n return null;\n },\n message: 'should be an array of strings',\n validate: function (value) {\n return value === null || _$isArray_14(value) && _$filter_12(value, function (f) {\n return typeof f === 'string';\n }).length === value.length;\n }\n },\n releaseStage: {\n defaultValue: function () {\n return 'production';\n },\n message: 'should be a string',\n validate: function (value) {\n return typeof value === 'string' && value.length;\n }\n },\n maxBreadcrumbs: {\n defaultValue: function () {\n return 25;\n },\n message: 'should be a number ≤100',\n validate: function (value) {\n return _$intRange_24(0, 100)(value);\n }\n },\n enabledBreadcrumbTypes: {\n defaultValue: function () {\n return _$breadcrumbTypes_8;\n },\n message: \"should be null or a list of available breadcrumb types (\" + _$breadcrumbTypes_8.join(',') + \")\",\n validate: function (value) {\n return value === null || _$isArray_14(value) && _$reduce_17(value, function (accum, maybeType) {\n if (accum === false) return accum;\n return _$includes_13(_$breadcrumbTypes_8, maybeType);\n }, true);\n }\n },\n context: {\n defaultValue: function () {\n return undefined;\n },\n message: 'should be a string',\n validate: function (value) {\n return value === undefined || typeof value === 'string';\n }\n },\n user: {\n defaultValue: function () {\n return {};\n },\n message: 'should be an object with { id, email, name } properties',\n validate: function (value) {\n return value === null || value && _$reduce_17(_$keys_15(value), function (accum, key) {\n return accum && _$includes_13(['id', 'email', 'name'], key);\n }, true);\n }\n },\n metadata: {\n defaultValue: function () {\n return {};\n },\n message: 'should be an object',\n validate: function (value) {\n return typeof value === 'object' && value !== null;\n }\n },\n logger: {\n defaultValue: function () {\n return undefined;\n },\n message: 'should be null or an object with methods { debug, info, warn, error }',\n validate: function (value) {\n return !value || value && _$reduce_17(['debug', 'info', 'warn', 'error'], function (accum, method) {\n return accum && typeof value[method] === 'function';\n }, true);\n }\n },\n redactedKeys: {\n defaultValue: function () {\n return ['password'];\n },\n message: 'should be an array of strings|regexes',\n validate: function (value) {\n return _$isArray_14(value) && value.length === _$filter_12(value, function (s) {\n return typeof s === 'string' || s && typeof s.test === 'function';\n }).length;\n }\n },\n plugins: {\n defaultValue: function () {\n return [];\n },\n message: 'should be an array of plugin objects',\n validate: function (value) {\n return _$isArray_14(value) && value.length === _$filter_12(value, function (p) {\n return p && typeof p === 'object' && typeof p.load === 'function';\n }).length;\n }\n },\n featureFlags: {\n defaultValue: function () {\n return [];\n },\n message: 'should be an array of objects that have a \"name\" property',\n validate: function (value) {\n return _$isArray_14(value) && value.length === _$filter_12(value, function (feature) {\n return feature && typeof feature === 'object' && typeof feature.name === 'string';\n }).length;\n }\n }\n};\n\n// extends helper from babel\n// https://github.com/babel/babel/blob/916429b516e6466fd06588ee820e40e025d7f3a3/packages/babel-helpers/src/helpers.js#L377-L393\nvar _$assign_11 = function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n return target;\n};\n\n/* removed: var _$reduce_17 = require('./reduce'); */;\n\n// Array#map\nvar _$map_16 = function (arr, fn) {\n return _$reduce_17(arr, function (accum, item, i, arr) {\n return accum.concat(fn(item, i, arr));\n }, []);\n};\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nvar schema = _$config_5.schema;\n/* removed: var _$map_16 = require('@bugsnag/core/lib/es-utils/map'); */;\n/* removed: var _$assign_11 = require('@bugsnag/core/lib/es-utils/assign'); */;\nvar _$config_1 = {\n releaseStage: _$assign_11({}, schema.releaseStage, {\n defaultValue: function () {\n if (/^localhost(:\\d+)?$/.test(window.location.host)) return 'development';\n return 'production';\n }\n }),\n appType: _extends({}, schema.appType, {\n defaultValue: function () {\n return 'browser';\n }\n }),\n logger: _$assign_11({}, schema.logger, {\n defaultValue: function () {\n return (\n // set logger based on browser capability\n typeof console !== 'undefined' && typeof console.debug === 'function' ? getPrefixedConsole() : undefined\n );\n }\n })\n};\nvar getPrefixedConsole = function () {\n var logger = {};\n var consoleLog = console.log;\n _$map_16(['debug', 'info', 'warn', 'error'], function (method) {\n var consoleMethod = console[method];\n logger[method] = typeof consoleMethod === 'function' ? consoleMethod.bind(console, '[bugsnag]') : consoleLog.bind(console, '[bugsnag]');\n });\n return logger;\n};\n\nvar Breadcrumb = /*#__PURE__*/function () {\n function Breadcrumb(message, metadata, type, timestamp) {\n if (timestamp === void 0) {\n timestamp = new Date();\n }\n this.type = type;\n this.message = message;\n this.metadata = metadata;\n this.timestamp = timestamp;\n }\n var _proto = Breadcrumb.prototype;\n _proto.toJSON = function toJSON() {\n return {\n type: this.type,\n name: this.message,\n timestamp: this.timestamp,\n metaData: this.metadata\n };\n };\n return Breadcrumb;\n}();\nvar _$Breadcrumb_3 = Breadcrumb;\n\nvar _$stackframe_34 = {};\n(function (root, factory) {\n 'use strict';\n\n // Universal Module Definition (UMD) to support AMD, CommonJS/Node.js, Rhino, and browsers.\n\n /* istanbul ignore next */\n if (typeof define === 'function' && define.amd) {\n define('stackframe', [], factory);\n } else if (typeof _$stackframe_34 === 'object') {\n _$stackframe_34 = factory();\n } else {\n root.StackFrame = factory();\n }\n})(this, function () {\n 'use strict';\n\n function _isNumber(n) {\n return !isNaN(parseFloat(n)) && isFinite(n);\n }\n function _capitalize(str) {\n return str.charAt(0).toUpperCase() + str.substring(1);\n }\n function _getter(p) {\n return function () {\n return this[p];\n };\n }\n var booleanProps = ['isConstructor', 'isEval', 'isNative', 'isToplevel'];\n var numericProps = ['columnNumber', 'lineNumber'];\n var stringProps = ['fileName', 'functionName', 'source'];\n var arrayProps = ['args'];\n var props = booleanProps.concat(numericProps, stringProps, arrayProps);\n function StackFrame(obj) {\n if (obj instanceof Object) {\n for (var i = 0; i < props.length; i++) {\n if (obj.hasOwnProperty(props[i]) && obj[props[i]] !== undefined) {\n this['set' + _capitalize(props[i])](obj[props[i]]);\n }\n }\n }\n }\n StackFrame.prototype = {\n getArgs: function () {\n return this.args;\n },\n setArgs: function (v) {\n if (Object.prototype.toString.call(v) !== '[object Array]') {\n throw new TypeError('Args must be an Array');\n }\n this.args = v;\n },\n getEvalOrigin: function () {\n return this.evalOrigin;\n },\n setEvalOrigin: function (v) {\n if (v instanceof StackFrame) {\n this.evalOrigin = v;\n } else if (v instanceof Object) {\n this.evalOrigin = new StackFrame(v);\n } else {\n throw new TypeError('Eval Origin must be an Object or StackFrame');\n }\n },\n toString: function () {\n var functionName = this.getFunctionName() || '{anonymous}';\n var args = '(' + (this.getArgs() || []).join(',') + ')';\n var fileName = this.getFileName() ? '@' + this.getFileName() : '';\n var lineNumber = _isNumber(this.getLineNumber()) ? ':' + this.getLineNumber() : '';\n var columnNumber = _isNumber(this.getColumnNumber()) ? ':' + this.getColumnNumber() : '';\n return functionName + args + fileName + lineNumber + columnNumber;\n }\n };\n for (var i = 0; i < booleanProps.length; i++) {\n StackFrame.prototype['get' + _capitalize(booleanProps[i])] = _getter(booleanProps[i]);\n StackFrame.prototype['set' + _capitalize(booleanProps[i])] = function (p) {\n return function (v) {\n this[p] = Boolean(v);\n };\n }(booleanProps[i]);\n }\n for (var j = 0; j < numericProps.length; j++) {\n StackFrame.prototype['get' + _capitalize(numericProps[j])] = _getter(numericProps[j]);\n StackFrame.prototype['set' + _capitalize(numericProps[j])] = function (p) {\n return function (v) {\n if (!_isNumber(v)) {\n throw new TypeError(p + ' must be a Number');\n }\n this[p] = Number(v);\n };\n }(numericProps[j]);\n }\n for (var k = 0; k < stringProps.length; k++) {\n StackFrame.prototype['get' + _capitalize(stringProps[k])] = _getter(stringProps[k]);\n StackFrame.prototype['set' + _capitalize(stringProps[k])] = function (p) {\n return function (v) {\n this[p] = String(v);\n };\n }(stringProps[k]);\n }\n return StackFrame;\n});\n\nvar _$errorStackParser_31 = {};\n(function (root, factory) {\n 'use strict';\n\n // Universal Module Definition (UMD) to support AMD, CommonJS/Node.js, Rhino, and browsers.\n\n /* istanbul ignore next */\n if (typeof define === 'function' && define.amd) {\n define('error-stack-parser', ['stackframe'], factory);\n } else if (typeof _$errorStackParser_31 === 'object') {\n _$errorStackParser_31 = factory(_$stackframe_34);\n } else {\n root.ErrorStackParser = factory(root.StackFrame);\n }\n})(this, function ErrorStackParser(StackFrame) {\n 'use strict';\n\n var FIREFOX_SAFARI_STACK_REGEXP = /(^|@)\\S+\\:\\d+/;\n var CHROME_IE_STACK_REGEXP = /^\\s*at .*(\\S+\\:\\d+|\\(native\\))/m;\n var SAFARI_NATIVE_CODE_REGEXP = /^(eval@)?(\\[native code\\])?$/;\n return {\n /**\n * Given an Error object, extract the most information from it.\n *\n * @param {Error} error object\n * @return {Array} of StackFrames\n */\n parse: function ErrorStackParser$$parse(error) {\n if (typeof error.stacktrace !== 'undefined' || typeof error['opera#sourceloc'] !== 'undefined') {\n return this.parseOpera(error);\n } else if (error.stack && error.stack.match(CHROME_IE_STACK_REGEXP)) {\n return this.parseV8OrIE(error);\n } else if (error.stack) {\n return this.parseFFOrSafari(error);\n } else {\n throw new Error('Cannot parse given Error object');\n }\n },\n // Separate line and column numbers from a string of the form: (URI:Line:Column)\n extractLocation: function ErrorStackParser$$extractLocation(urlLike) {\n // Fail-fast but return locations like \"(native)\"\n if (urlLike.indexOf(':') === -1) {\n return [urlLike];\n }\n var regExp = /(.+?)(?:\\:(\\d+))?(?:\\:(\\d+))?$/;\n var parts = regExp.exec(urlLike.replace(/[\\(\\)]/g, ''));\n return [parts[1], parts[2] || undefined, parts[3] || undefined];\n },\n parseV8OrIE: function ErrorStackParser$$parseV8OrIE(error) {\n var filtered = error.stack.split('\\n').filter(function (line) {\n return !!line.match(CHROME_IE_STACK_REGEXP);\n }, this);\n return filtered.map(function (line) {\n if (line.indexOf('(eval ') > -1) {\n // Throw away eval information until we implement stacktrace.js/stackframe#8\n line = line.replace(/eval code/g, 'eval').replace(/(\\(eval at [^\\()]*)|(\\)\\,.*$)/g, '');\n }\n var sanitizedLine = line.replace(/^\\s+/, '').replace(/\\(eval code/g, '(');\n\n // capture and preseve the parenthesized location \"(/foo/my bar.js:12:87)\" in\n // case it has spaces in it, as the string is split on \\s+ later on\n var location = sanitizedLine.match(/ (\\((.+):(\\d+):(\\d+)\\)$)/);\n\n // remove the parenthesized location from the line, if it was matched\n sanitizedLine = location ? sanitizedLine.replace(location[0], '') : sanitizedLine;\n var tokens = sanitizedLine.split(/\\s+/).slice(1);\n // if a location was matched, pass it to extractLocation() otherwise pop the last token\n var locationParts = this.extractLocation(location ? location[1] : tokens.pop());\n var functionName = tokens.join(' ') || undefined;\n var fileName = ['eval', ''].indexOf(locationParts[0]) > -1 ? undefined : locationParts[0];\n return new StackFrame({\n functionName: functionName,\n fileName: fileName,\n lineNumber: locationParts[1],\n columnNumber: locationParts[2],\n source: line\n });\n }, this);\n },\n parseFFOrSafari: function ErrorStackParser$$parseFFOrSafari(error) {\n var filtered = error.stack.split('\\n').filter(function (line) {\n return !line.match(SAFARI_NATIVE_CODE_REGEXP);\n }, this);\n return filtered.map(function (line) {\n // Throw away eval information until we implement stacktrace.js/stackframe#8\n if (line.indexOf(' > eval') > -1) {\n line = line.replace(/ line (\\d+)(?: > eval line \\d+)* > eval\\:\\d+\\:\\d+/g, ':$1');\n }\n if (line.indexOf('@') === -1 && line.indexOf(':') === -1) {\n // Safari eval frames only have function names and nothing else\n return new StackFrame({\n functionName: line\n });\n } else {\n var functionNameRegex = /((.*\".+\"[^@]*)?[^@]*)(?:@)/;\n var matches = line.match(functionNameRegex);\n var functionName = matches && matches[1] ? matches[1] : undefined;\n var locationParts = this.extractLocation(line.replace(functionNameRegex, ''));\n return new StackFrame({\n functionName: functionName,\n fileName: locationParts[0],\n lineNumber: locationParts[1],\n columnNumber: locationParts[2],\n source: line\n });\n }\n }, this);\n },\n parseOpera: function ErrorStackParser$$parseOpera(e) {\n if (!e.stacktrace || e.message.indexOf('\\n') > -1 && e.message.split('\\n').length > e.stacktrace.split('\\n').length) {\n return this.parseOpera9(e);\n } else if (!e.stack) {\n return this.parseOpera10(e);\n } else {\n return this.parseOpera11(e);\n }\n },\n parseOpera9: function ErrorStackParser$$parseOpera9(e) {\n var lineRE = /Line (\\d+).*script (?:in )?(\\S+)/i;\n var lines = e.message.split('\\n');\n var result = [];\n for (var i = 2, len = lines.length; i < len; i += 2) {\n var match = lineRE.exec(lines[i]);\n if (match) {\n result.push(new StackFrame({\n fileName: match[2],\n lineNumber: match[1],\n source: lines[i]\n }));\n }\n }\n return result;\n },\n parseOpera10: function ErrorStackParser$$parseOpera10(e) {\n var lineRE = /Line (\\d+).*script (?:in )?(\\S+)(?:: In function (\\S+))?$/i;\n var lines = e.stacktrace.split('\\n');\n var result = [];\n for (var i = 0, len = lines.length; i < len; i += 2) {\n var match = lineRE.exec(lines[i]);\n if (match) {\n result.push(new StackFrame({\n functionName: match[3] || undefined,\n fileName: match[2],\n lineNumber: match[1],\n source: lines[i]\n }));\n }\n }\n return result;\n },\n // Opera 10.65+ Error.stack very similar to FF/Safari\n parseOpera11: function ErrorStackParser$$parseOpera11(error) {\n var filtered = error.stack.split('\\n').filter(function (line) {\n return !!line.match(FIREFOX_SAFARI_STACK_REGEXP) && !line.match(/^Error created at/);\n }, this);\n return filtered.map(function (line) {\n var tokens = line.split('@');\n var locationParts = this.extractLocation(tokens.pop());\n var functionCall = tokens.shift() || '';\n var functionName = functionCall.replace(//, '$2').replace(/\\([^\\)]*\\)/g, '') || undefined;\n var argsRaw;\n if (functionCall.match(/\\(([^\\)]*)\\)/)) {\n argsRaw = functionCall.replace(/^[^\\(]+\\(([^\\)]*)\\)$/, '$1');\n }\n var args = argsRaw === undefined || argsRaw === '[arguments not available]' ? undefined : argsRaw.split(',');\n return new StackFrame({\n functionName: functionName,\n args: args,\n fileName: locationParts[0],\n lineNumber: locationParts[1],\n columnNumber: locationParts[2],\n source: line\n });\n }, this);\n }\n };\n});\n\nvar _$errorStackParser_10 = _$errorStackParser_31;\n\nvar _$safeJsonStringify_30 = function (data, replacer, space, opts) {\n var redactedKeys = opts && opts.redactedKeys ? opts.redactedKeys : [];\n var redactedPaths = opts && opts.redactedPaths ? opts.redactedPaths : [];\n return JSON.stringify(prepareObjForSerialization(data, redactedKeys, redactedPaths), replacer, space);\n};\nvar MAX_DEPTH = 20;\nvar MAX_EDGES = 25000;\nvar MIN_PRESERVED_DEPTH = 8;\nvar REPLACEMENT_NODE = '...';\nfunction isError(o) {\n return o instanceof Error || /^\\[object (Error|(Dom)?Exception)\\]$/.test(Object.prototype.toString.call(o));\n}\nfunction throwsMessage(err) {\n return '[Throws: ' + (err ? err.message : '?') + ']';\n}\nfunction find(haystack, needle) {\n for (var i = 0, len = haystack.length; i < len; i++) {\n if (haystack[i] === needle) return true;\n }\n return false;\n}\n\n// returns true if the string `path` starts with any of the provided `paths`\nfunction isDescendent(paths, path) {\n for (var i = 0, len = paths.length; i < len; i++) {\n if (path.indexOf(paths[i]) === 0) return true;\n }\n return false;\n}\nfunction shouldRedact(patterns, key) {\n for (var i = 0, len = patterns.length; i < len; i++) {\n if (typeof patterns[i] === 'string' && patterns[i].toLowerCase() === key.toLowerCase()) return true;\n if (patterns[i] && typeof patterns[i].test === 'function' && patterns[i].test(key)) return true;\n }\n return false;\n}\nfunction __isArray_30(obj) {\n return Object.prototype.toString.call(obj) === '[object Array]';\n}\nfunction safelyGetProp(obj, prop) {\n try {\n return obj[prop];\n } catch (err) {\n return throwsMessage(err);\n }\n}\nfunction prepareObjForSerialization(obj, redactedKeys, redactedPaths) {\n var seen = []; // store references to objects we have seen before\n var edges = 0;\n function visit(obj, path) {\n function edgesExceeded() {\n return path.length > MIN_PRESERVED_DEPTH && edges > MAX_EDGES;\n }\n edges++;\n if (path.length > MAX_DEPTH) return REPLACEMENT_NODE;\n if (edgesExceeded()) return REPLACEMENT_NODE;\n if (obj === null || typeof obj !== 'object') return obj;\n if (find(seen, obj)) return '[Circular]';\n seen.push(obj);\n if (typeof obj.toJSON === 'function') {\n try {\n // we're not going to count this as an edge because it\n // replaces the value of the currently visited object\n edges--;\n var fResult = visit(obj.toJSON(), path);\n seen.pop();\n return fResult;\n } catch (err) {\n return throwsMessage(err);\n }\n }\n var er = isError(obj);\n if (er) {\n edges--;\n var eResult = visit({\n name: obj.name,\n message: obj.message\n }, path);\n seen.pop();\n return eResult;\n }\n if (__isArray_30(obj)) {\n var aResult = [];\n for (var i = 0, len = obj.length; i < len; i++) {\n if (edgesExceeded()) {\n aResult.push(REPLACEMENT_NODE);\n break;\n }\n aResult.push(visit(obj[i], path.concat('[]')));\n }\n seen.pop();\n return aResult;\n }\n var result = {};\n try {\n for (var prop in obj) {\n if (!Object.prototype.hasOwnProperty.call(obj, prop)) continue;\n if (isDescendent(redactedPaths, path.join('.')) && shouldRedact(redactedKeys, prop)) {\n result[prop] = '[REDACTED]';\n continue;\n }\n if (edgesExceeded()) {\n result[prop] = REPLACEMENT_NODE;\n break;\n }\n result[prop] = visit(safelyGetProp(obj, prop), path.concat(prop));\n }\n } catch (e) {}\n seen.pop();\n return result;\n }\n return visit(obj, []);\n}\n\n/* removed: var _$map_16 = require('./es-utils/map'); */;\n/* removed: var _$filter_12 = require('./es-utils/filter'); */;\n/* removed: var _$isArray_14 = require('./es-utils/is-array'); */;\n/* removed: var _$safeJsonStringify_30 = require('@bugsnag/safe-json-stringify'); */;\nfunction add(existingFeatures, existingFeatureKeys, name, variant) {\n if (typeof name !== 'string') {\n return;\n }\n if (variant === undefined) {\n variant = null;\n } else if (variant !== null && typeof variant !== 'string') {\n variant = _$safeJsonStringify_30(variant);\n }\n var existingIndex = existingFeatureKeys[name];\n if (typeof existingIndex === 'number') {\n existingFeatures[existingIndex] = {\n name: name,\n variant: variant\n };\n return;\n }\n existingFeatures.push({\n name: name,\n variant: variant\n });\n existingFeatureKeys[name] = existingFeatures.length - 1;\n}\nfunction merge(existingFeatures, newFeatures, existingFeatureKeys) {\n if (!_$isArray_14(newFeatures)) {\n return;\n }\n for (var i = 0; i < newFeatures.length; ++i) {\n var feature = newFeatures[i];\n if (feature === null || typeof feature !== 'object') {\n continue;\n }\n\n // 'add' will handle if 'name' doesn't exist & 'variant' is optional\n add(existingFeatures, existingFeatureKeys, feature.name, feature.variant);\n }\n return existingFeatures;\n}\n\n// convert feature flags from a map of 'name -> variant' into the format required\n// by the Bugsnag Event API:\n// [{ featureFlag: 'name', variant: 'variant' }, { featureFlag: 'name 2' }]\nfunction toEventApi(featureFlags) {\n return _$map_16(_$filter_12(featureFlags, Boolean), function (_ref) {\n var name = _ref.name,\n variant = _ref.variant;\n var flag = {\n featureFlag: name\n };\n\n // don't add a 'variant' property unless there's actually a value\n if (typeof variant === 'string') {\n flag.variant = variant;\n }\n return flag;\n });\n}\nfunction clear(features, featuresIndex, name) {\n var existingIndex = featuresIndex[name];\n if (typeof existingIndex === 'number') {\n features[existingIndex] = null;\n delete featuresIndex[name];\n }\n}\nvar _$featureFlagDelegate_18 = {\n add: add,\n clear: clear,\n merge: merge,\n toEventApi: toEventApi\n};\n\n// Given `err` which may be an error, does it have a stack property which is a string?\nvar _$hasStack_19 = function (err) {\n return !!err && (!!err.stack || !!err.stacktrace || !!err['opera#sourceloc']) && typeof (err.stack || err.stacktrace || err['opera#sourceloc']) === 'string' && err.stack !== err.name + \": \" + err.message;\n};\n\n/**\n * Expose `isError`.\n */\n\nvar _$isError_32 = __isError_32;\n\n/**\n * Test whether `value` is error object.\n *\n * @param {*} value\n * @returns {boolean}\n */\n\nfunction __isError_32(value) {\n switch (Object.prototype.toString.call(value)) {\n case '[object Error]':\n return true;\n case '[object Exception]':\n return true;\n case '[object DOMException]':\n return true;\n default:\n return value instanceof Error;\n }\n}\n\nvar _$iserror_20 = _$isError_32;\n\n/* removed: var _$assign_11 = require('./es-utils/assign'); */;\nvar __add_22 = function (state, section, keyOrObj, maybeVal) {\n var _updates;\n if (!section) return;\n var updates;\n\n // addMetadata(\"section\", null) -> clears section\n if (keyOrObj === null) return __clear_22(state, section);\n\n // normalise the two supported input types into object form\n if (typeof keyOrObj === 'object') updates = keyOrObj;\n if (typeof keyOrObj === 'string') updates = (_updates = {}, _updates[keyOrObj] = maybeVal, _updates);\n\n // exit if we don't have an updates object at this point\n if (!updates) return;\n\n // preventing the __proto__ property from being used as a key\n if (section === '__proto__' || section === 'constructor' || section === 'prototype') {\n return;\n }\n\n // ensure a section with this name exists\n if (!state[section]) state[section] = {};\n\n // merge the updates with the existing section\n state[section] = _$assign_11({}, state[section], updates);\n};\nvar get = function (state, section, key) {\n if (typeof section !== 'string') return undefined;\n if (!key) {\n return state[section];\n }\n if (state[section]) {\n return state[section][key];\n }\n return undefined;\n};\nvar __clear_22 = function (state, section, key) {\n if (typeof section !== 'string') return;\n\n // clear an entire section\n if (!key) {\n delete state[section];\n return;\n }\n\n // preventing the __proto__ property from being used as a key\n if (section === '__proto__' || section === 'constructor' || section === 'prototype') {\n return;\n }\n\n // clear a single value from a section\n if (state[section]) {\n delete state[section][key];\n }\n};\nvar _$metadataDelegate_22 = {\n add: __add_22,\n get: get,\n clear: __clear_22\n};\n\nvar _$stackGenerator_33 = {};\n(function (root, factory) {\n 'use strict';\n\n // Universal Module Definition (UMD) to support AMD, CommonJS/Node.js, Rhino, and browsers.\n\n /* istanbul ignore next */\n if (typeof define === 'function' && define.amd) {\n define('stack-generator', ['stackframe'], factory);\n } else if (typeof _$stackGenerator_33 === 'object') {\n _$stackGenerator_33 = factory(_$stackframe_34);\n } else {\n root.StackGenerator = factory(root.StackFrame);\n }\n})(this, function (StackFrame) {\n return {\n backtrace: function StackGenerator$$backtrace(opts) {\n var stack = [];\n var maxStackSize = 10;\n if (typeof opts === 'object' && typeof opts.maxStackSize === 'number') {\n maxStackSize = opts.maxStackSize;\n }\n var curr = arguments.callee;\n while (curr && stack.length < maxStackSize && curr['arguments']) {\n // Allow V8 optimizations\n var args = new Array(curr['arguments'].length);\n for (var i = 0; i < args.length; ++i) {\n args[i] = curr['arguments'][i];\n }\n if (/function(?:\\s+([\\w$]+))+\\s*\\(/.test(curr.toString())) {\n stack.push(new StackFrame({\n functionName: RegExp.$1 || undefined,\n args: args\n }));\n } else {\n stack.push(new StackFrame({\n args: args\n }));\n }\n try {\n curr = curr.caller;\n } catch (e) {\n break;\n }\n }\n return stack;\n }\n };\n});\n\nfunction ___extends_6() { ___extends_6 = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return ___extends_6.apply(this, arguments); }\n/* removed: var _$errorStackParser_10 = require('./lib/error-stack-parser'); */;\n/* removed: var _$stackGenerator_33 = require('stack-generator'); */;\n/* removed: var _$hasStack_19 = require('./lib/has-stack'); */;\n/* removed: var _$map_16 = require('./lib/es-utils/map'); */;\n/* removed: var _$reduce_17 = require('./lib/es-utils/reduce'); */;\n/* removed: var _$filter_12 = require('./lib/es-utils/filter'); */;\n/* removed: var _$assign_11 = require('./lib/es-utils/assign'); */;\n/* removed: var _$metadataDelegate_22 = require('./lib/metadata-delegate'); */;\n/* removed: var _$featureFlagDelegate_18 = require('./lib/feature-flag-delegate'); */;\n/* removed: var _$iserror_20 = require('./lib/iserror'); */;\nvar Event = /*#__PURE__*/function () {\n function Event(errorClass, errorMessage, stacktrace, handledState, originalError) {\n if (stacktrace === void 0) {\n stacktrace = [];\n }\n if (handledState === void 0) {\n handledState = defaultHandledState();\n }\n this.apiKey = undefined;\n this.context = undefined;\n this.groupingHash = undefined;\n this.originalError = originalError;\n this._handledState = handledState;\n this.severity = this._handledState.severity;\n this.unhandled = this._handledState.unhandled;\n this.app = {};\n this.device = {};\n this.request = {};\n this.breadcrumbs = [];\n this.threads = [];\n this._metadata = {};\n this._features = [];\n this._featuresIndex = {};\n this._user = {};\n this._session = undefined;\n this._correlation = undefined;\n this.errors = [createBugsnagError(errorClass, errorMessage, Event.__type, stacktrace)];\n\n // Flags.\n // Note these are not initialised unless they are used\n // to save unnecessary bytes in the browser bundle\n\n /* this.attemptImmediateDelivery, default: true */\n }\n var _proto = Event.prototype;\n _proto.addMetadata = function addMetadata(section, keyOrObj, maybeVal) {\n return _$metadataDelegate_22.add(this._metadata, section, keyOrObj, maybeVal);\n }\n\n /**\n * Associate this event with a specific trace. This is usually done automatically when\n * using bugsnag-js-performance, but can also be set manually if required.\n *\n * @param traceId the ID of the trace the event occurred within\n * @param spanId the ID of the span that the event occurred within\n */;\n _proto.setTraceCorrelation = function setTraceCorrelation(traceId, spanId) {\n if (typeof traceId === 'string') {\n this._correlation = ___extends_6({\n traceId: traceId\n }, typeof spanId === 'string' ? {\n spanId: spanId\n } : {});\n }\n };\n _proto.getMetadata = function getMetadata(section, key) {\n return _$metadataDelegate_22.get(this._metadata, section, key);\n };\n _proto.clearMetadata = function clearMetadata(section, key) {\n return _$metadataDelegate_22.clear(this._metadata, section, key);\n };\n _proto.addFeatureFlag = function addFeatureFlag(name, variant) {\n if (variant === void 0) {\n variant = null;\n }\n _$featureFlagDelegate_18.add(this._features, this._featuresIndex, name, variant);\n };\n _proto.addFeatureFlags = function addFeatureFlags(featureFlags) {\n _$featureFlagDelegate_18.merge(this._features, featureFlags, this._featuresIndex);\n };\n _proto.getFeatureFlags = function getFeatureFlags() {\n return _$featureFlagDelegate_18.toEventApi(this._features);\n };\n _proto.clearFeatureFlag = function clearFeatureFlag(name) {\n _$featureFlagDelegate_18.clear(this._features, this._featuresIndex, name);\n };\n _proto.clearFeatureFlags = function clearFeatureFlags() {\n this._features = [];\n this._featuresIndex = {};\n };\n _proto.getUser = function getUser() {\n return this._user;\n };\n _proto.setUser = function setUser(id, email, name) {\n this._user = {\n id: id,\n email: email,\n name: name\n };\n };\n _proto.toJSON = function toJSON() {\n return {\n payloadVersion: '4',\n exceptions: _$map_16(this.errors, function (er) {\n return _$assign_11({}, er, {\n message: er.errorMessage\n });\n }),\n severity: this.severity,\n unhandled: this._handledState.unhandled,\n severityReason: this._handledState.severityReason,\n app: this.app,\n device: this.device,\n request: this.request,\n breadcrumbs: this.breadcrumbs,\n context: this.context,\n groupingHash: this.groupingHash,\n metaData: this._metadata,\n user: this._user,\n session: this._session,\n featureFlags: this.getFeatureFlags(),\n correlation: this._correlation\n };\n };\n return Event;\n}(); // takes a stacktrace.js style stackframe (https://github.com/stacktracejs/stackframe)\n// and returns a Bugsnag compatible stackframe (https://docs.bugsnag.com/api/error-reporting/#json-payload)\nvar formatStackframe = function (frame) {\n var f = {\n file: frame.fileName,\n method: normaliseFunctionName(frame.functionName),\n lineNumber: frame.lineNumber,\n columnNumber: frame.columnNumber,\n code: undefined,\n inProject: undefined\n };\n // Some instances result in no file:\n // - calling notify() from chrome's terminal results in no file/method.\n // - non-error exception thrown from global code in FF\n // This adds one.\n if (f.lineNumber > -1 && !f.file && !f.method) {\n f.file = 'global code';\n }\n return f;\n};\nvar normaliseFunctionName = function (name) {\n return /^global code$/i.test(name) ? 'global code' : name;\n};\nvar defaultHandledState = function () {\n return {\n unhandled: false,\n severity: 'warning',\n severityReason: {\n type: 'handledException'\n }\n };\n};\nvar ensureString = function (str) {\n return typeof str === 'string' ? str : '';\n};\nfunction createBugsnagError(errorClass, errorMessage, type, stacktrace) {\n return {\n errorClass: ensureString(errorClass),\n errorMessage: ensureString(errorMessage),\n type: type,\n stacktrace: _$reduce_17(stacktrace, function (accum, frame) {\n var f = formatStackframe(frame);\n // don't include a stackframe if none of its properties are defined\n try {\n if (JSON.stringify(f) === '{}') return accum;\n return accum.concat(f);\n } catch (e) {\n return accum;\n }\n }, [])\n };\n}\nfunction getCauseStack(error) {\n if (error.cause) {\n return [error].concat(getCauseStack(error.cause));\n } else {\n return [error];\n }\n}\n\n// Helpers\n\nEvent.getStacktrace = function (error, errorFramesToSkip, backtraceFramesToSkip) {\n if (_$hasStack_19(error)) return _$errorStackParser_10.parse(error).slice(errorFramesToSkip);\n // error wasn't provided or didn't have a stacktrace so try to walk the callstack\n try {\n return _$filter_12(_$stackGenerator_33.backtrace(), function (frame) {\n return (frame.functionName || '').indexOf('StackGenerator$$') === -1;\n }).slice(1 + backtraceFramesToSkip);\n } catch (e) {\n return [];\n }\n};\nEvent.create = function (maybeError, tolerateNonErrors, handledState, component, errorFramesToSkip, logger) {\n if (errorFramesToSkip === void 0) {\n errorFramesToSkip = 0;\n }\n var _normaliseError = normaliseError(maybeError, tolerateNonErrors, component, logger),\n error = _normaliseError[0],\n internalFrames = _normaliseError[1];\n var event;\n try {\n var stacktrace = Event.getStacktrace(error,\n // if an error was created/throw in the normaliseError() function, we need to\n // tell the getStacktrace() function to skip the number of frames we know will\n // be from our own functions. This is added to the number of frames deep we\n // were told about\n internalFrames > 0 ? 1 + internalFrames + errorFramesToSkip : 0,\n // if there's no stacktrace, the callstack may be walked to generated one.\n // this is how many frames should be removed because they come from our library\n 1 + errorFramesToSkip);\n event = new Event(error.name, error.message, stacktrace, handledState, maybeError);\n } catch (e) {\n event = new Event(error.name, error.message, [], handledState, maybeError);\n }\n if (error.name === 'InvalidError') {\n event.addMetadata(\"\" + component, 'non-error parameter', makeSerialisable(maybeError));\n }\n if (error.cause) {\n var _event$errors;\n var causes = getCauseStack(error).slice(1);\n var normalisedCauses = _$map_16(causes, function (cause) {\n // Only get stacktrace for error causes that are a valid JS Error and already have a stack\n var stacktrace = _$iserror_20(cause) && _$hasStack_19(cause) ? _$errorStackParser_10.parse(cause) : [];\n var _normaliseError2 = normaliseError(cause, true, 'error cause'),\n error = _normaliseError2[0];\n if (error.name === 'InvalidError') event.addMetadata('error cause', makeSerialisable(cause));\n return createBugsnagError(error.name, error.message, Event.__type, stacktrace);\n });\n (_event$errors = event.errors).push.apply(_event$errors, normalisedCauses);\n }\n return event;\n};\nvar makeSerialisable = function (err) {\n if (err === null) return 'null';\n if (err === undefined) return 'undefined';\n return err;\n};\nvar normaliseError = function (maybeError, tolerateNonErrors, component, logger) {\n var error;\n var internalFrames = 0;\n var createAndLogInputError = function (reason) {\n var verb = component === 'error cause' ? 'was' : 'received';\n if (logger) logger.warn(component + \" \" + verb + \" a non-error: \\\"\" + reason + \"\\\"\");\n var err = new Error(component + \" \" + verb + \" a non-error. See \\\"\" + component + \"\\\" tab for more detail.\");\n err.name = 'InvalidError';\n return err;\n };\n\n // In some cases:\n //\n // - the promise rejection handler (both in the browser and node)\n // - the node uncaughtException handler\n //\n // We are really limited in what we can do to get a stacktrace. So we use the\n // tolerateNonErrors option to ensure that the resulting error communicates as\n // such.\n if (!tolerateNonErrors) {\n if (_$iserror_20(maybeError)) {\n error = maybeError;\n } else {\n error = createAndLogInputError(typeof maybeError);\n internalFrames += 2;\n }\n } else {\n switch (typeof maybeError) {\n case 'string':\n case 'number':\n case 'boolean':\n error = new Error(String(maybeError));\n internalFrames += 1;\n break;\n case 'function':\n error = createAndLogInputError('function');\n internalFrames += 2;\n break;\n case 'object':\n if (maybeError !== null && _$iserror_20(maybeError)) {\n error = maybeError;\n } else if (maybeError !== null && hasNecessaryFields(maybeError)) {\n error = new Error(maybeError.message || maybeError.errorMessage);\n error.name = maybeError.name || maybeError.errorClass;\n internalFrames += 1;\n } else {\n error = createAndLogInputError(maybeError === null ? 'null' : 'unsupported object');\n internalFrames += 2;\n }\n break;\n default:\n error = createAndLogInputError('nothing');\n internalFrames += 2;\n }\n }\n if (!_$hasStack_19(error)) {\n // in IE10/11 a new Error() doesn't have a stacktrace until you throw it, so try that here\n try {\n throw error;\n } catch (e) {\n if (_$hasStack_19(e)) {\n error = e;\n // if the error only got a stacktrace after we threw it here, we know it\n // will only have one extra internal frame from this function, regardless\n // of whether it went through createAndLogInputError() or not\n internalFrames = 1;\n }\n }\n }\n return [error, internalFrames];\n};\n\n// default value for stacktrace.type\nEvent.__type = 'browserjs';\nvar hasNecessaryFields = function (error) {\n return (typeof error.name === 'string' || typeof error.errorClass === 'string') && (typeof error.message === 'string' || typeof error.errorMessage === 'string');\n};\nvar _$Event_6 = Event;\n\n// This is a heavily modified/simplified version of\n// https://github.com/othiym23/async-some\n// with the logic flipped so that it is akin to the\n// synchronous \"every\" method instead of \"some\".\n\n// run the asynchronous test function (fn) over each item in the array (arr)\n// in series until:\n// - fn(item, cb) => calls cb(null, false)\n// - or the end of the array is reached\n// the callback (cb) will be passed (null, false) if any of the items in arr\n// caused fn to call back with false, otherwise it will be passed (null, true)\nvar _$asyncEvery_7 = function (arr, fn, cb) {\n var index = 0;\n var next = function () {\n if (index >= arr.length) return cb(null, true);\n fn(arr[index], function (err, result) {\n if (err) return cb(err);\n if (result === false) return cb(null, false);\n index++;\n next();\n });\n };\n next();\n};\n\n/* removed: var _$asyncEvery_7 = require('./async-every'); */;\nvar _$callbackRunner_9 = function (callbacks, event, onCallbackError, cb) {\n // This function is how we support different kinds of callback:\n // - synchronous - return value\n // - node-style async with callback - cb(err, value)\n // - promise/thenable - resolve(value)\n // It normalises each of these into the lowest common denominator – a node-style callback\n var runMaybeAsyncCallback = function (fn, cb) {\n if (typeof fn !== 'function') return cb(null);\n try {\n // if function appears sync…\n if (fn.length !== 2) {\n var ret = fn(event);\n // check if it returned a \"thenable\" (promise)\n if (ret && typeof ret.then === 'function') {\n return ret.then(\n // resolve\n function (val) {\n return setTimeout(function () {\n return cb(null, val);\n });\n },\n // reject\n function (err) {\n setTimeout(function () {\n onCallbackError(err);\n return cb(null, true);\n });\n });\n }\n return cb(null, ret);\n }\n // if function is async…\n fn(event, function (err, result) {\n if (err) {\n onCallbackError(err);\n return cb(null);\n }\n cb(null, result);\n });\n } catch (e) {\n onCallbackError(e);\n cb(null);\n }\n };\n _$asyncEvery_7(callbacks, runMaybeAsyncCallback, cb);\n};\n\nvar _$syncCallbackRunner_23 = function (callbacks, callbackArg, callbackType, logger) {\n var ignore = false;\n var cbs = callbacks.slice();\n while (!ignore) {\n if (!cbs.length) break;\n try {\n ignore = cbs.pop()(callbackArg) === false;\n } catch (e) {\n logger.error(\"Error occurred in \" + callbackType + \" callback, continuing anyway\\u2026\");\n logger.error(e);\n }\n }\n return ignore;\n};\n\nvar _$pad_29 = function pad(num, size) {\n var s = '000000000' + num;\n return s.substr(s.length - size);\n};\n\n/* removed: var _$pad_29 = require('./pad.js'); */;\nvar env = typeof window === 'object' ? window : self;\nvar globalCount = 0;\nfor (var prop in env) {\n if (Object.hasOwnProperty.call(env, prop)) globalCount++;\n}\nvar mimeTypesLength = navigator.mimeTypes ? navigator.mimeTypes.length : 0;\nvar clientId = _$pad_29((mimeTypesLength + navigator.userAgent.length).toString(36) + globalCount.toString(36), 4);\nvar _$fingerprint_28 = function fingerprint() {\n return clientId;\n};\n\n/**\n * cuid.js\n * Collision-resistant UID generator for browsers and node.\n * Sequential for fast db lookups and recency sorting.\n * Safe for element IDs and server-side lookups.\n *\n * Extracted from CLCTR\n *\n * Copyright (c) Eric Elliott 2012\n * MIT License\n */\n\n/* removed: var _$fingerprint_28 = require('./lib/fingerprint.js'); */;\n/* removed: var _$pad_29 = require('./lib/pad.js'); */;\nvar c = 0,\n blockSize = 4,\n base = 36,\n discreteValues = Math.pow(base, blockSize);\nfunction randomBlock() {\n return _$pad_29((Math.random() * discreteValues << 0).toString(base), blockSize);\n}\nfunction safeCounter() {\n c = c < discreteValues ? c : 0;\n c++; // this is not subliminal\n return c - 1;\n}\nfunction cuid() {\n // Starting with a lowercase letter makes\n // it HTML element ID friendly.\n var letter = 'c',\n // hard-coded allows for sequential access\n\n // timestamp\n // warning: this exposes the exact date and time\n // that the uid was created.\n timestamp = new Date().getTime().toString(base),\n // Prevent same-machine collisions.\n counter = _$pad_29(safeCounter().toString(base), blockSize),\n // A few chars to generate distinct ids for different\n // clients (so different computers are far less\n // likely to generate the same id)\n print = _$fingerprint_28(),\n // Grab some more chars from Math.random()\n random = randomBlock() + randomBlock();\n return letter + timestamp + counter + print + random;\n}\ncuid.fingerprint = _$fingerprint_28;\nvar _$cuid_27 = cuid;\n\n/* removed: var _$cuid_27 = require('@bugsnag/cuid'); */;\nvar Session = /*#__PURE__*/function () {\n function Session() {\n this.id = _$cuid_27();\n this.startedAt = new Date();\n this._handled = 0;\n this._unhandled = 0;\n this._user = {};\n this.app = {};\n this.device = {};\n }\n var _proto = Session.prototype;\n _proto.getUser = function getUser() {\n return this._user;\n };\n _proto.setUser = function setUser(id, email, name) {\n this._user = {\n id: id,\n email: email,\n name: name\n };\n };\n _proto.toJSON = function toJSON() {\n return {\n id: this.id,\n startedAt: this.startedAt,\n events: {\n handled: this._handled,\n unhandled: this._unhandled\n }\n };\n };\n _proto._track = function _track(event) {\n this[event._handledState.unhandled ? '_unhandled' : '_handled'] += 1;\n };\n return Session;\n}();\nvar _$Session_35 = Session;\n\n/* removed: var _$config_5 = require('./config'); */;\n/* removed: var _$Event_6 = require('./event'); */;\n/* removed: var _$Breadcrumb_3 = require('./breadcrumb'); */;\n/* removed: var _$Session_35 = require('./session'); */;\n/* removed: var _$map_16 = require('./lib/es-utils/map'); */;\n/* removed: var _$includes_13 = require('./lib/es-utils/includes'); */;\n/* removed: var _$filter_12 = require('./lib/es-utils/filter'); */;\n/* removed: var _$reduce_17 = require('./lib/es-utils/reduce'); */;\n/* removed: var _$keys_15 = require('./lib/es-utils/keys'); */;\n/* removed: var _$assign_11 = require('./lib/es-utils/assign'); */;\n/* removed: var _$callbackRunner_9 = require('./lib/callback-runner'); */;\n/* removed: var _$metadataDelegate_22 = require('./lib/metadata-delegate'); */;\n/* removed: var _$syncCallbackRunner_23 = require('./lib/sync-callback-runner'); */;\n/* removed: var _$breadcrumbTypes_8 = require('./lib/breadcrumb-types'); */;\nvar __add_4 = _$featureFlagDelegate_18.add,\n __clear_4 = _$featureFlagDelegate_18.clear,\n __merge_4 = _$featureFlagDelegate_18.merge;\nvar noop = function () {};\nvar Client = /*#__PURE__*/function () {\n function Client(configuration, schema, internalPlugins, notifier) {\n var _this = this;\n if (schema === void 0) {\n schema = _$config_5.schema;\n }\n if (internalPlugins === void 0) {\n internalPlugins = [];\n }\n // notifier id\n this._notifier = notifier;\n\n // intialise opts and config\n this._config = {};\n this._schema = schema;\n\n // i/o\n this._delivery = {\n sendSession: noop,\n sendEvent: noop\n };\n this._logger = {\n debug: noop,\n info: noop,\n warn: noop,\n error: noop\n };\n\n // plugins\n this._plugins = {};\n\n // state\n this._breadcrumbs = [];\n this._session = null;\n this._metadata = {};\n this._featuresIndex = {};\n this._features = [];\n this._context = undefined;\n this._user = {};\n\n // callbacks:\n // e: onError\n // s: onSession\n // sp: onSessionPayload\n // b: onBreadcrumb\n // (note these names are minified by hand because object\n // properties are not safe to minify automatically)\n this._cbs = {\n e: [],\n s: [],\n sp: [],\n b: []\n };\n\n // expose internal constructors\n this.Client = Client;\n this.Event = _$Event_6;\n this.Breadcrumb = _$Breadcrumb_3;\n this.Session = _$Session_35;\n this._config = this._configure(configuration, internalPlugins);\n _$map_16(internalPlugins.concat(this._config.plugins), function (pl) {\n if (pl) _this._loadPlugin(pl);\n });\n\n // when notify() is called we need to know how many frames are from our own source\n // this inital value is 1 not 0 because we wrap notify() to ensure it is always\n // bound to have the client as its `this` value – see below.\n this._depth = 1;\n var self = this;\n var notify = this.notify;\n this.notify = function () {\n return notify.apply(self, arguments);\n };\n }\n var _proto = Client.prototype;\n _proto.addMetadata = function addMetadata(section, keyOrObj, maybeVal) {\n return _$metadataDelegate_22.add(this._metadata, section, keyOrObj, maybeVal);\n };\n _proto.getMetadata = function getMetadata(section, key) {\n return _$metadataDelegate_22.get(this._metadata, section, key);\n };\n _proto.clearMetadata = function clearMetadata(section, key) {\n return _$metadataDelegate_22.clear(this._metadata, section, key);\n };\n _proto.addFeatureFlag = function addFeatureFlag(name, variant) {\n if (variant === void 0) {\n variant = null;\n }\n __add_4(this._features, this._featuresIndex, name, variant);\n };\n _proto.addFeatureFlags = function addFeatureFlags(featureFlags) {\n __merge_4(this._features, featureFlags, this._featuresIndex);\n };\n _proto.clearFeatureFlag = function clearFeatureFlag(name) {\n __clear_4(this._features, this._featuresIndex, name);\n };\n _proto.clearFeatureFlags = function clearFeatureFlags() {\n this._features = [];\n this._featuresIndex = {};\n };\n _proto.getContext = function getContext() {\n return this._context;\n };\n _proto.setContext = function setContext(c) {\n this._context = c;\n };\n _proto._configure = function _configure(opts, internalPlugins) {\n var schema = _$reduce_17(internalPlugins, function (schema, plugin) {\n if (plugin && plugin.configSchema) return _$assign_11({}, schema, plugin.configSchema);\n return schema;\n }, this._schema);\n\n // accumulate configuration and error messages\n var _reduce = _$reduce_17(_$keys_15(schema), function (accum, key) {\n var defaultValue = schema[key].defaultValue(opts[key]);\n if (opts[key] !== undefined) {\n var valid = schema[key].validate(opts[key]);\n if (!valid) {\n accum.errors[key] = schema[key].message;\n accum.config[key] = defaultValue;\n } else {\n if (schema[key].allowPartialObject) {\n accum.config[key] = _$assign_11(defaultValue, opts[key]);\n } else {\n accum.config[key] = opts[key];\n }\n }\n } else {\n accum.config[key] = defaultValue;\n }\n return accum;\n }, {\n errors: {},\n config: {}\n }),\n errors = _reduce.errors,\n config = _reduce.config;\n if (schema.apiKey) {\n // missing api key is the only fatal error\n if (!config.apiKey) throw new Error('No Bugsnag API Key set');\n // warn about an apikey that is not of the expected format\n if (!/^[0-9a-f]{32}$/i.test(config.apiKey)) errors.apiKey = 'should be a string of 32 hexadecimal characters';\n }\n\n // update and elevate some options\n this._metadata = _$assign_11({}, config.metadata);\n __merge_4(this._features, config.featureFlags, this._featuresIndex);\n this._user = _$assign_11({}, config.user);\n this._context = config.context;\n if (config.logger) this._logger = config.logger;\n\n // add callbacks\n if (config.onError) this._cbs.e = this._cbs.e.concat(config.onError);\n if (config.onBreadcrumb) this._cbs.b = this._cbs.b.concat(config.onBreadcrumb);\n if (config.onSession) this._cbs.s = this._cbs.s.concat(config.onSession);\n\n // finally warn about any invalid config where we fell back to the default\n if (_$keys_15(errors).length) {\n this._logger.warn(generateConfigErrorMessage(errors, opts));\n }\n return config;\n };\n _proto.getUser = function getUser() {\n return this._user;\n };\n _proto.setUser = function setUser(id, email, name) {\n this._user = {\n id: id,\n email: email,\n name: name\n };\n };\n _proto._loadPlugin = function _loadPlugin(plugin) {\n var result = plugin.load(this);\n // JS objects are not the safest way to store arbitrarily keyed values,\n // so bookend the key with some characters that prevent tampering with\n // stuff like __proto__ etc. (only store the result if the plugin had a\n // name)\n if (plugin.name) this._plugins[\"~\" + plugin.name + \"~\"] = result;\n };\n _proto.getPlugin = function getPlugin(name) {\n return this._plugins[\"~\" + name + \"~\"];\n };\n _proto._setDelivery = function _setDelivery(d) {\n this._delivery = d(this);\n };\n _proto.startSession = function startSession() {\n var session = new _$Session_35();\n session.app.releaseStage = this._config.releaseStage;\n session.app.version = this._config.appVersion;\n session.app.type = this._config.appType;\n session._user = _$assign_11({}, this._user);\n\n // run onSession callbacks\n var ignore = _$syncCallbackRunner_23(this._cbs.s, session, 'onSession', this._logger);\n if (ignore) {\n this._logger.debug('Session not started due to onSession callback');\n return this;\n }\n return this._sessionDelegate.startSession(this, session);\n };\n _proto.addOnError = function addOnError(fn, front) {\n if (front === void 0) {\n front = false;\n }\n this._cbs.e[front ? 'unshift' : 'push'](fn);\n };\n _proto.removeOnError = function removeOnError(fn) {\n this._cbs.e = _$filter_12(this._cbs.e, function (f) {\n return f !== fn;\n });\n };\n _proto._addOnSessionPayload = function _addOnSessionPayload(fn) {\n this._cbs.sp.push(fn);\n };\n _proto.addOnSession = function addOnSession(fn) {\n this._cbs.s.push(fn);\n };\n _proto.removeOnSession = function removeOnSession(fn) {\n this._cbs.s = _$filter_12(this._cbs.s, function (f) {\n return f !== fn;\n });\n };\n _proto.addOnBreadcrumb = function addOnBreadcrumb(fn, front) {\n if (front === void 0) {\n front = false;\n }\n this._cbs.b[front ? 'unshift' : 'push'](fn);\n };\n _proto.removeOnBreadcrumb = function removeOnBreadcrumb(fn) {\n this._cbs.b = _$filter_12(this._cbs.b, function (f) {\n return f !== fn;\n });\n };\n _proto.pauseSession = function pauseSession() {\n return this._sessionDelegate.pauseSession(this);\n };\n _proto.resumeSession = function resumeSession() {\n return this._sessionDelegate.resumeSession(this);\n };\n _proto.leaveBreadcrumb = function leaveBreadcrumb(message, metadata, type) {\n // coerce bad values so that the defaults get set\n message = typeof message === 'string' ? message : '';\n type = typeof type === 'string' && _$includes_13(_$breadcrumbTypes_8, type) ? type : 'manual';\n metadata = typeof metadata === 'object' && metadata !== null ? metadata : {};\n\n // if no message, discard\n if (!message) return;\n var crumb = new _$Breadcrumb_3(message, metadata, type);\n\n // run onBreadcrumb callbacks\n var ignore = _$syncCallbackRunner_23(this._cbs.b, crumb, 'onBreadcrumb', this._logger);\n if (ignore) {\n this._logger.debug('Breadcrumb not attached due to onBreadcrumb callback');\n return;\n }\n\n // push the valid crumb onto the queue and maintain the length\n this._breadcrumbs.push(crumb);\n if (this._breadcrumbs.length > this._config.maxBreadcrumbs) {\n this._breadcrumbs = this._breadcrumbs.slice(this._breadcrumbs.length - this._config.maxBreadcrumbs);\n }\n };\n _proto._isBreadcrumbTypeEnabled = function _isBreadcrumbTypeEnabled(type) {\n var types = this._config.enabledBreadcrumbTypes;\n return types === null || _$includes_13(types, type);\n };\n _proto.notify = function notify(maybeError, onError, postReportCallback) {\n if (postReportCallback === void 0) {\n postReportCallback = noop;\n }\n var event = _$Event_6.create(maybeError, true, undefined, 'notify()', this._depth + 1, this._logger);\n this._notify(event, onError, postReportCallback);\n };\n _proto._notify = function _notify(event, onError, postReportCallback) {\n var _this2 = this;\n if (postReportCallback === void 0) {\n postReportCallback = noop;\n }\n event.app = _$assign_11({}, event.app, {\n releaseStage: this._config.releaseStage,\n version: this._config.appVersion,\n type: this._config.appType\n });\n event.context = event.context || this._context;\n event._metadata = _$assign_11({}, event._metadata, this._metadata);\n event._user = _$assign_11({}, event._user, this._user);\n event.breadcrumbs = this._breadcrumbs.slice();\n __merge_4(event._features, this._features, event._featuresIndex);\n\n // exit early if events should not be sent on the current releaseStage\n if (this._config.enabledReleaseStages !== null && !_$includes_13(this._config.enabledReleaseStages, this._config.releaseStage)) {\n this._logger.warn('Event not sent due to releaseStage/enabledReleaseStages configuration');\n return postReportCallback(null, event);\n }\n var originalSeverity = event.severity;\n var onCallbackError = function (err) {\n // errors in callbacks are tolerated but we want to log them out\n _this2._logger.error('Error occurred in onError callback, continuing anyway…');\n _this2._logger.error(err);\n };\n var callbacks = [].concat(this._cbs.e).concat(onError);\n _$callbackRunner_9(callbacks, event, onCallbackError, function (err, shouldSend) {\n if (err) onCallbackError(err);\n if (!shouldSend) {\n _this2._logger.debug('Event not sent due to onError callback');\n return postReportCallback(null, event);\n }\n if (_this2._isBreadcrumbTypeEnabled('error')) {\n // only leave a crumb for the error if actually got sent\n Client.prototype.leaveBreadcrumb.call(_this2, event.errors[0].errorClass, {\n errorClass: event.errors[0].errorClass,\n errorMessage: event.errors[0].errorMessage,\n severity: event.severity\n }, 'error');\n }\n if (originalSeverity !== event.severity) {\n event._handledState.severityReason = {\n type: 'userCallbackSetSeverity'\n };\n }\n if (event.unhandled !== event._handledState.unhandled) {\n event._handledState.severityReason.unhandledOverridden = true;\n event._handledState.unhandled = event.unhandled;\n }\n if (_this2._session) {\n _this2._session._track(event);\n event._session = _this2._session;\n }\n _this2._delivery.sendEvent({\n apiKey: event.apiKey || _this2._config.apiKey,\n notifier: _this2._notifier,\n events: [event]\n }, function (err) {\n return postReportCallback(err, event);\n });\n });\n };\n return Client;\n}();\nvar generateConfigErrorMessage = function (errors, rawInput) {\n var er = new Error(\"Invalid configuration\\n\" + _$map_16(_$keys_15(errors), function (key) {\n return \" - \" + key + \" \" + errors[key] + \", got \" + stringify(rawInput[key]);\n }).join('\\n\\n'));\n return er;\n};\nvar stringify = function (val) {\n switch (typeof val) {\n case 'string':\n case 'number':\n case 'object':\n return JSON.stringify(val);\n default:\n return String(val);\n }\n};\nvar _$Client_4 = Client;\n\nvar _$jsonPayload_21 = {};\n/* removed: var _$safeJsonStringify_30 = require('@bugsnag/safe-json-stringify'); */;\nvar EVENT_REDACTION_PATHS = ['events.[].metaData', 'events.[].breadcrumbs.[].metaData', 'events.[].request'];\n_$jsonPayload_21.event = function (event, redactedKeys) {\n var payload = _$safeJsonStringify_30(event, null, null, {\n redactedPaths: EVENT_REDACTION_PATHS,\n redactedKeys: redactedKeys\n });\n if (payload.length > 10e5) {\n event.events[0]._metadata = {\n notifier: \"WARNING!\\nSerialized payload was \" + payload.length / 10e5 + \"MB (limit = 1MB)\\nmetadata was removed\"\n };\n payload = _$safeJsonStringify_30(event, null, null, {\n redactedPaths: EVENT_REDACTION_PATHS,\n redactedKeys: redactedKeys\n });\n }\n return payload;\n};\n_$jsonPayload_21.session = function (session, redactedKeys) {\n var payload = _$safeJsonStringify_30(session, null, null);\n return payload;\n};\n\nvar _$delivery_36 = {};\n/* removed: var _$jsonPayload_21 = require('@bugsnag/core/lib/json-payload'); */;\n_$delivery_36 = function (client, win) {\n if (win === void 0) {\n win = window;\n }\n return {\n sendEvent: function (event, cb) {\n if (cb === void 0) {\n cb = function () {};\n }\n if (client._config.endpoints.notify === null) {\n var err = new Error('Event not sent due to incomplete endpoint configuration');\n return cb(err);\n }\n var url = getApiUrl(client._config, 'notify', '4', win);\n var body = _$jsonPayload_21.event(event, client._config.redactedKeys);\n var req = new win.XDomainRequest();\n req.onload = function () {\n cb(null);\n };\n req.onerror = function () {\n var err = new Error('Event failed to send');\n client._logger.error('Event failed to send…', err);\n if (body.length > 10e5) {\n client._logger.warn(\"Event oversized (\" + (body.length / 10e5).toFixed(2) + \" MB)\");\n }\n cb(err);\n };\n req.open('POST', url);\n setTimeout(function () {\n try {\n req.send(body);\n } catch (e) {\n client._logger.error(e);\n cb(e);\n }\n }, 0);\n },\n sendSession: function (session, cb) {\n if (cb === void 0) {\n cb = function () {};\n }\n if (client._config.endpoints.sessions === null) {\n var err = new Error('Session not sent due to incomplete endpoint configuration');\n return cb(err);\n }\n var url = getApiUrl(client._config, 'sessions', '1', win);\n var req = new win.XDomainRequest();\n req.onload = function () {\n cb(null);\n };\n req.open('POST', url);\n setTimeout(function () {\n try {\n req.send(_$jsonPayload_21.session(session, client._config.redactedKeys));\n } catch (e) {\n client._logger.error(e);\n cb(e);\n }\n }, 0);\n }\n };\n};\nvar getApiUrl = function (config, endpoint, version, win) {\n // IE8 doesn't support Date.prototype.toISOstring(), but it does convert a date\n // to an ISO string when you use JSON stringify. Simply parsing the result of\n // JSON.stringify is smaller than using a toISOstring() polyfill.\n var isoDate = JSON.parse(JSON.stringify(new Date()));\n var url = matchPageProtocol(config.endpoints[endpoint], win.location.protocol);\n return url + \"?apiKey=\" + encodeURIComponent(config.apiKey) + \"&payloadVersion=\" + version + \"&sentAt=\" + encodeURIComponent(isoDate);\n};\nvar matchPageProtocol = _$delivery_36._matchPageProtocol = function (endpoint, pageProtocol) {\n return pageProtocol === 'http:' ? endpoint.replace(/^https:/, 'http:') : endpoint;\n};\n\n/* removed: var _$jsonPayload_21 = require('@bugsnag/core/lib/json-payload'); */;\nvar _$delivery_37 = function (client, win) {\n if (win === void 0) {\n win = window;\n }\n return {\n sendEvent: function (event, cb) {\n if (cb === void 0) {\n cb = function () {};\n }\n try {\n var url = client._config.endpoints.notify;\n if (url === null) {\n var err = new Error('Event not sent due to incomplete endpoint configuration');\n return cb(err);\n }\n var req = new win.XMLHttpRequest();\n var body = _$jsonPayload_21.event(event, client._config.redactedKeys);\n req.onreadystatechange = function () {\n if (req.readyState === win.XMLHttpRequest.DONE) {\n var status = req.status;\n if (status === 0 || status >= 400) {\n var _err = new Error(\"Request failed with status \" + status);\n client._logger.error('Event failed to send…', _err);\n if (body.length > 10e5) {\n client._logger.warn(\"Event oversized (\" + (body.length / 10e5).toFixed(2) + \" MB)\");\n }\n cb(_err);\n } else {\n cb(null);\n }\n }\n };\n req.open('POST', url);\n req.setRequestHeader('Content-Type', 'application/json');\n req.setRequestHeader('Bugsnag-Api-Key', event.apiKey || client._config.apiKey);\n req.setRequestHeader('Bugsnag-Payload-Version', '4');\n req.setRequestHeader('Bugsnag-Sent-At', new Date().toISOString());\n req.send(body);\n } catch (e) {\n client._logger.error(e);\n }\n },\n sendSession: function (session, cb) {\n if (cb === void 0) {\n cb = function () {};\n }\n try {\n var url = client._config.endpoints.sessions;\n if (url === null) {\n var err = new Error('Session not sent due to incomplete endpoint configuration');\n return cb(err);\n }\n var req = new win.XMLHttpRequest();\n req.onreadystatechange = function () {\n if (req.readyState === win.XMLHttpRequest.DONE) {\n var status = req.status;\n if (status === 0 || status >= 400) {\n var _err2 = new Error(\"Request failed with status \" + status);\n client._logger.error('Session failed to send…', _err2);\n cb(_err2);\n } else {\n cb(null);\n }\n }\n };\n req.open('POST', url);\n req.setRequestHeader('Content-Type', 'application/json');\n req.setRequestHeader('Bugsnag-Api-Key', client._config.apiKey);\n req.setRequestHeader('Bugsnag-Payload-Version', '1');\n req.setRequestHeader('Bugsnag-Sent-At', new Date().toISOString());\n req.send(_$jsonPayload_21.session(session, client._config.redactedKeys));\n } catch (e) {\n client._logger.error(e);\n }\n }\n };\n};\n\nvar appStart = new Date();\nvar reset = function () {\n appStart = new Date();\n};\nvar _$app_38 = {\n name: 'appDuration',\n load: function (client) {\n client.addOnError(function (event) {\n var now = new Date();\n event.app.duration = now - appStart;\n }, true);\n return {\n reset: reset\n };\n }\n};\n\n/*\n * Sets the default context to be the current URL\n */\nvar _$context_39 = function (win) {\n if (win === void 0) {\n win = window;\n }\n return {\n load: function (client) {\n client.addOnError(function (event) {\n if (event.context !== undefined) return;\n event.context = win.location.pathname;\n }, true);\n }\n };\n};\n\nvar _$pad_43 = function pad(num, size) {\n var s = '000000000' + num;\n return s.substr(s.length - size);\n};\n\n/* removed: var _$pad_43 = require('./pad.js'); */;\nvar __env_42 = typeof window === 'object' ? window : self;\nvar __globalCount_42 = 0;\nfor (var __prop_42 in __env_42) {\n if (Object.hasOwnProperty.call(__env_42, __prop_42)) __globalCount_42++;\n}\nvar __mimeTypesLength_42 = navigator.mimeTypes ? navigator.mimeTypes.length : 0;\nvar __clientId_42 = _$pad_43((__mimeTypesLength_42 + navigator.userAgent.length).toString(36) + __globalCount_42.toString(36), 4);\nvar _$fingerprint_42 = function fingerprint() {\n return __clientId_42;\n};\n\n/**\n * cuid.js\n * Collision-resistant UID generator for browsers and node.\n * Sequential for fast db lookups and recency sorting.\n * Safe for element IDs and server-side lookups.\n *\n * Extracted from CLCTR\n *\n * Copyright (c) Eric Elliott 2012\n * MIT License\n */\n\n/* removed: var _$fingerprint_42 = require('./lib/fingerprint.js'); */;\n/* removed: var _$pad_43 = require('./lib/pad.js'); */;\nvar __c_41 = 0,\n __blockSize_41 = 4,\n __base_41 = 36,\n __discreteValues_41 = Math.pow(__base_41, __blockSize_41);\nfunction __randomBlock_41() {\n return _$pad_43((Math.random() * __discreteValues_41 << 0).toString(__base_41), __blockSize_41);\n}\nfunction __safeCounter_41() {\n __c_41 = __c_41 < __discreteValues_41 ? __c_41 : 0;\n __c_41++; // this is not subliminal\n return __c_41 - 1;\n}\nfunction __cuid_41() {\n // Starting with a lowercase letter makes\n // it HTML element ID friendly.\n var letter = 'c',\n // hard-coded allows for sequential access\n\n // timestamp\n // warning: this exposes the exact date and time\n // that the uid was created.\n timestamp = new Date().getTime().toString(__base_41),\n // Prevent same-machine collisions.\n counter = _$pad_43(__safeCounter_41().toString(__base_41), __blockSize_41),\n // A few chars to generate distinct ids for different\n // clients (so different computers are far less\n // likely to generate the same id)\n print = _$fingerprint_42(),\n // Grab some more chars from Math.random()\n random = __randomBlock_41() + __randomBlock_41();\n return letter + timestamp + counter + print + random;\n}\n__cuid_41.fingerprint = _$fingerprint_42;\nvar _$cuid_41 = __cuid_41;\n\n/* removed: var _$assign_11 = require('@bugsnag/core/lib/es-utils/assign'); */;\nvar BUGSNAG_ANONYMOUS_ID_KEY = 'bugsnag-anonymous-id';\nvar getDeviceId = function (win) {\n try {\n var storage = win.localStorage;\n var id = storage.getItem(BUGSNAG_ANONYMOUS_ID_KEY);\n\n // If we get an ID, make sure it looks like a valid cuid. The length can\n // fluctuate slightly, so some leeway is built in\n if (id && /^c[a-z0-9]{20,32}$/.test(id)) {\n return id;\n }\n /* removed: var _$cuid_41 = require('@bugsnag/cuid'); */;\n id = _$cuid_41();\n storage.setItem(BUGSNAG_ANONYMOUS_ID_KEY, id);\n return id;\n } catch (err) {\n // If localStorage is not available (e.g. because it's disabled) then give up\n }\n};\n\n/*\n * Automatically detects browser device details\n */\nvar _$device_40 = function (nav, win) {\n if (nav === void 0) {\n nav = navigator;\n }\n if (win === void 0) {\n win = window;\n }\n return {\n load: function (client) {\n var device = {\n locale: nav.browserLanguage || nav.systemLanguage || nav.userLanguage || nav.language,\n userAgent: nav.userAgent\n };\n if (win && win.screen && win.screen.orientation && win.screen.orientation.type) {\n device.orientation = win.screen.orientation.type;\n } else if (win && win.document) {\n device.orientation = win.document.documentElement.clientWidth > win.document.documentElement.clientHeight ? 'landscape' : 'portrait';\n }\n if (client._config.generateAnonymousId) {\n device.id = getDeviceId(win);\n }\n client.addOnSession(function (session) {\n session.device = _$assign_11({}, session.device, device);\n // only set device id if collectUserIp is false\n if (!client._config.collectUserIp) setDefaultUserId(session);\n });\n\n // add time just as the event is sent\n client.addOnError(function (event) {\n event.device = _$assign_11({}, event.device, device, {\n time: new Date()\n });\n if (!client._config.collectUserIp) setDefaultUserId(event);\n }, true);\n },\n configSchema: {\n generateAnonymousId: {\n validate: function (value) {\n return value === true || value === false;\n },\n defaultValue: function () {\n return true;\n },\n message: 'should be true|false'\n }\n }\n };\n};\nvar setDefaultUserId = function (eventOrSession) {\n // device id is also used to populate the user id field, if it's not already set\n var user = eventOrSession.getUser();\n if (!user || !user.id) {\n eventOrSession.setUser(eventOrSession.device.id);\n }\n};\n\n/* removed: var _$assign_11 = require('@bugsnag/core/lib/es-utils/assign'); */;\n\n/*\n * Sets the event request: { url } to be the current href\n */\nvar _$request_44 = function (win) {\n if (win === void 0) {\n win = window;\n }\n return {\n load: function (client) {\n client.addOnError(function (event) {\n if (event.request && event.request.url) return;\n event.request = _$assign_11({}, event.request, {\n url: win.location.href\n });\n }, true);\n }\n };\n};\n\n/* removed: var _$includes_13 = require('@bugsnag/core/lib/es-utils/includes'); */;\nvar _$session_45 = {\n load: function (client) {\n client._sessionDelegate = sessionDelegate;\n }\n};\nvar sessionDelegate = {\n startSession: function (client, session) {\n var sessionClient = client;\n sessionClient._session = session;\n sessionClient._pausedSession = null;\n\n // exit early if the current releaseStage is not enabled\n if (sessionClient._config.enabledReleaseStages !== null && !_$includes_13(sessionClient._config.enabledReleaseStages, sessionClient._config.releaseStage)) {\n sessionClient._logger.warn('Session not sent due to releaseStage/enabledReleaseStages configuration');\n return sessionClient;\n }\n sessionClient._delivery.sendSession({\n notifier: sessionClient._notifier,\n device: session.device,\n app: session.app,\n sessions: [{\n id: session.id,\n startedAt: session.startedAt,\n user: session._user\n }]\n });\n return sessionClient;\n },\n resumeSession: function (client) {\n // Do nothing if there's already an active session\n if (client._session) {\n return client;\n }\n\n // If we have a paused session then make it the active session\n if (client._pausedSession) {\n client._session = client._pausedSession;\n client._pausedSession = null;\n return client;\n }\n\n // Otherwise start a new session\n return client.startSession();\n },\n pauseSession: function (client) {\n client._pausedSession = client._session;\n client._session = null;\n }\n};\n\n/* removed: var _$assign_11 = require('@bugsnag/core/lib/es-utils/assign'); */;\n\n/*\n * Prevent collection of user IPs\n */\nvar _$clientIp_46 = {\n load: function (client) {\n if (client._config.collectUserIp) return;\n client.addOnError(function (event) {\n // If user.id is explicitly undefined, it will be missing from the payload. It needs\n // removing so that the following line replaces it\n if (event._user && typeof event._user.id === 'undefined') delete event._user.id;\n event._user = _$assign_11({\n id: '[REDACTED]'\n }, event._user);\n event.request = _$assign_11({\n clientIp: '[REDACTED]'\n }, event.request);\n });\n },\n configSchema: {\n collectUserIp: {\n defaultValue: function () {\n return true;\n },\n message: 'should be true|false',\n validate: function (value) {\n return value === true || value === false;\n }\n }\n }\n};\n\nvar _$consoleBreadcrumbs_47 = {};\n/* removed: var _$map_16 = require('@bugsnag/core/lib/es-utils/map'); */;\n/* removed: var _$reduce_17 = require('@bugsnag/core/lib/es-utils/reduce'); */;\n/* removed: var _$filter_12 = require('@bugsnag/core/lib/es-utils/filter'); */;\n\n/*\n * Leaves breadcrumbs when console log methods are called\n */\n_$consoleBreadcrumbs_47.load = function (client) {\n var isDev = /^(local-)?dev(elopment)?$/.test(client._config.releaseStage);\n if (isDev || !client._isBreadcrumbTypeEnabled('log')) return;\n _$map_16(CONSOLE_LOG_METHODS, function (method) {\n var original = console[method];\n console[method] = function () {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n client.leaveBreadcrumb('Console output', _$reduce_17(args, function (accum, arg, i) {\n // do the best/simplest stringification of each argument\n var stringified = '[Unknown value]';\n // this may fail if the input is:\n // - an object whose [[Prototype]] is null (no toString)\n // - an object with a broken toString or @@toPrimitive implementation\n try {\n stringified = String(arg);\n } catch (e) {}\n // if it stringifies to [object Object] attempt to JSON stringify\n if (stringified === '[object Object]') {\n // catch stringify errors and fallback to [object Object]\n try {\n stringified = JSON.stringify(arg);\n } catch (e) {}\n }\n accum[\"[\" + i + \"]\"] = stringified;\n return accum;\n }, {\n severity: method.indexOf('group') === 0 ? 'log' : method\n }), 'log');\n original.apply(console, args);\n };\n console[method]._restore = function () {\n console[method] = original;\n };\n });\n};\nif (\"production\" !== 'production') {\n _$consoleBreadcrumbs_47.destroy = function () {\n return CONSOLE_LOG_METHODS.forEach(function (method) {\n if (typeof console[method]._restore === 'function') console[method]._restore();\n });\n };\n}\nvar CONSOLE_LOG_METHODS = _$filter_12(['log', 'debug', 'info', 'warn', 'error'], function (method) {\n return typeof console !== 'undefined' && typeof console[method] === 'function';\n});\n\n/* removed: var _$map_16 = require('@bugsnag/core/lib/es-utils/map'); */;\n/* removed: var _$reduce_17 = require('@bugsnag/core/lib/es-utils/reduce'); */;\n/* removed: var _$filter_12 = require('@bugsnag/core/lib/es-utils/filter'); */;\nvar MAX_LINE_LENGTH = 200;\nvar MAX_SCRIPT_LENGTH = 500000;\nvar _$inlineScriptContent_48 = function (doc, win) {\n if (doc === void 0) {\n doc = document;\n }\n if (win === void 0) {\n win = window;\n }\n return {\n load: function (client) {\n if (!client._config.trackInlineScripts) return;\n var originalLocation = win.location.href;\n var html = '';\n\n // in IE8-10 the 'interactive' state can fire too soon (before scripts have finished executing), so in those\n // we wait for the 'complete' state before assuming that synchronous scripts are no longer executing\n var isOldIe = !!doc.attachEvent;\n var DOMContentLoaded = isOldIe ? doc.readyState === 'complete' : doc.readyState !== 'loading';\n var getHtml = function () {\n return doc.documentElement.outerHTML;\n };\n\n // get whatever HTML exists at this point in time\n html = getHtml();\n var prev = doc.onreadystatechange;\n // then update it when the DOM content has loaded\n doc.onreadystatechange = function () {\n // IE8 compatible alternative to document#DOMContentLoaded\n if (doc.readyState === 'interactive') {\n html = getHtml();\n DOMContentLoaded = true;\n }\n try {\n prev.apply(this, arguments);\n } catch (e) {}\n };\n var _lastScript = null;\n var updateLastScript = function (script) {\n _lastScript = script;\n };\n var getCurrentScript = function () {\n var script = doc.currentScript || _lastScript;\n if (!script && !DOMContentLoaded) {\n var scripts = doc.scripts || doc.getElementsByTagName('script');\n script = scripts[scripts.length - 1];\n }\n return script;\n };\n var addSurroundingCode = function (lineNumber) {\n // get whatever html has rendered at this point\n if (!DOMContentLoaded || !html) html = getHtml();\n // simulate the raw html\n var htmlLines = [''].concat(html.split('\\n'));\n var zeroBasedLine = lineNumber - 1;\n var start = Math.max(zeroBasedLine - 3, 0);\n var end = Math.min(zeroBasedLine + 3, htmlLines.length);\n return _$reduce_17(htmlLines.slice(start, end), function (accum, line, i) {\n accum[start + 1 + i] = line.length <= MAX_LINE_LENGTH ? line : line.substr(0, MAX_LINE_LENGTH);\n return accum;\n }, {});\n };\n client.addOnError(function (event) {\n // remove any of our own frames that may be part the stack this\n // happens before the inline script check as it happens for all errors\n event.errors[0].stacktrace = _$filter_12(event.errors[0].stacktrace, function (f) {\n return !/__trace__$/.test(f.method);\n });\n var frame = event.errors[0].stacktrace[0];\n\n // remove hash and query string from url\n var cleanUrl = function (url) {\n return url.replace(/#.*$/, '').replace(/\\?.*$/, '');\n };\n\n // if frame.file exists and is not the original location of the page, this can't be an inline script\n if (frame && frame.file && cleanUrl(frame.file) !== cleanUrl(originalLocation)) return;\n\n // grab the last script known to have run\n var currentScript = getCurrentScript();\n if (currentScript) {\n var content = currentScript.innerHTML;\n event.addMetadata('script', 'content', content.length <= MAX_SCRIPT_LENGTH ? content : content.substr(0, MAX_SCRIPT_LENGTH));\n\n // only attempt to grab some surrounding code if we have a line number\n if (frame && frame.lineNumber) {\n frame.code = addSurroundingCode(frame.lineNumber);\n }\n }\n }, true);\n\n // Proxy all the timer functions whose callback is their 0th argument.\n // Keep a reference to the original setTimeout because we need it later\n var _map = _$map_16(['setTimeout', 'setInterval', 'setImmediate', 'requestAnimationFrame'], function (fn) {\n return __proxy(win, fn, function (original) {\n return __traceOriginalScript(original, function (args) {\n return {\n get: function () {\n return args[0];\n },\n replace: function (fn) {\n args[0] = fn;\n }\n };\n });\n });\n }),\n _setTimeout = _map[0];\n\n // Proxy all the host objects whose prototypes have an addEventListener function\n _$map_16(['EventTarget', 'Window', 'Node', 'ApplicationCache', 'AudioTrackList', 'ChannelMergerNode', 'CryptoOperation', 'EventSource', 'FileReader', 'HTMLUnknownElement', 'IDBDatabase', 'IDBRequest', 'IDBTransaction', 'KeyOperation', 'MediaController', 'MessagePort', 'ModalWindow', 'Notification', 'SVGElementInstance', 'Screen', 'TextTrack', 'TextTrackCue', 'TextTrackList', 'WebSocket', 'WebSocketWorker', 'Worker', 'XMLHttpRequest', 'XMLHttpRequestEventTarget', 'XMLHttpRequestUpload'], function (o) {\n if (!win[o] || !win[o].prototype || !Object.prototype.hasOwnProperty.call(win[o].prototype, 'addEventListener')) return;\n __proxy(win[o].prototype, 'addEventListener', function (original) {\n return __traceOriginalScript(original, eventTargetCallbackAccessor);\n });\n __proxy(win[o].prototype, 'removeEventListener', function (original) {\n return __traceOriginalScript(original, eventTargetCallbackAccessor, true);\n });\n });\n function __traceOriginalScript(fn, callbackAccessor, alsoCallOriginal) {\n if (alsoCallOriginal === void 0) {\n alsoCallOriginal = false;\n }\n return function () {\n // this is required for removeEventListener to remove anything added with\n // addEventListener before the functions started being wrapped by Bugsnag\n var args = [].slice.call(arguments);\n try {\n var cba = callbackAccessor(args);\n var cb = cba.get();\n if (alsoCallOriginal) fn.apply(this, args);\n if (typeof cb !== 'function') return fn.apply(this, args);\n if (cb.__trace__) {\n cba.replace(cb.__trace__);\n } else {\n var script = getCurrentScript();\n // this function mustn't be annonymous due to a bug in the stack\n // generation logic, meaning it gets tripped up\n // see: https://github.com/stacktracejs/stack-generator/issues/6\n cb.__trace__ = function __trace__() {\n // set the script that called this function\n updateLastScript(script);\n // immediately unset the currentScript synchronously below, however\n // if this cb throws an error the line after will not get run so schedule\n // an almost-immediate aysnc update too\n _setTimeout(function () {\n updateLastScript(null);\n }, 0);\n var ret = cb.apply(this, arguments);\n updateLastScript(null);\n return ret;\n };\n cb.__trace__.__trace__ = cb.__trace__;\n cba.replace(cb.__trace__);\n }\n } catch (e) {\n // swallow these errors on Selenium:\n // Permission denied to access property '__trace__'\n // WebDriverException: Message: Permission denied to access property \"handleEvent\"\n }\n // IE8 doesn't let you call .apply() on setTimeout/setInterval\n if (fn.apply) return fn.apply(this, args);\n switch (args.length) {\n case 1:\n return fn(args[0]);\n case 2:\n return fn(args[0], args[1]);\n default:\n return fn();\n }\n };\n }\n },\n configSchema: {\n trackInlineScripts: {\n validate: function (value) {\n return value === true || value === false;\n },\n defaultValue: function () {\n return true;\n },\n message: 'should be true|false'\n }\n }\n };\n};\nfunction __proxy(host, name, replacer) {\n var original = host[name];\n if (!original) return original;\n var replacement = replacer(original);\n host[name] = replacement;\n return original;\n}\nfunction eventTargetCallbackAccessor(args) {\n var isEventHandlerObj = !!args[1] && typeof args[1].handleEvent === 'function';\n return {\n get: function () {\n return isEventHandlerObj ? args[1].handleEvent : args[1];\n },\n replace: function (fn) {\n if (isEventHandlerObj) {\n args[1].handleEvent = fn;\n } else {\n args[1] = fn;\n }\n }\n };\n}\n\n/*\n * Leaves breadcrumbs when the user interacts with the DOM\n */\nvar _$interactionBreadcrumbs_49 = function (win) {\n if (win === void 0) {\n win = window;\n }\n return {\n load: function (client) {\n if (!('addEventListener' in win)) return;\n if (!client._isBreadcrumbTypeEnabled('user')) return;\n win.addEventListener('click', function (event) {\n var targetText, targetSelector;\n try {\n targetText = getNodeText(event.target);\n targetSelector = getNodeSelector(event.target, win);\n } catch (e) {\n targetText = '[hidden]';\n targetSelector = '[hidden]';\n client._logger.error('Cross domain error when tracking click event. See docs: https://tinyurl.com/yy3rn63z');\n }\n client.leaveBreadcrumb('UI click', {\n targetText: targetText,\n targetSelector: targetSelector\n }, 'user');\n }, true);\n }\n };\n};\nvar trim = /^\\s*([^\\s][\\s\\S]{0,139}[^\\s])?\\s*/;\nfunction getNodeText(el) {\n var text = el.textContent || el.innerText || '';\n if (!text && (el.type === 'submit' || el.type === 'button')) {\n text = el.value;\n }\n text = text.replace(trim, '$1');\n if (text.length > 140) {\n return text.slice(0, 135) + '(...)';\n }\n return text;\n}\n\n// Create a label from tagname, id and css class of the element\nfunction getNodeSelector(el, win) {\n var parts = [el.tagName];\n if (el.id) parts.push('#' + el.id);\n if (el.className && el.className.length) parts.push(\".\" + el.className.split(' ').join('.'));\n // Can't get much more advanced with the current browser\n if (!win.document.querySelectorAll || !Array.prototype.indexOf) return parts.join('');\n try {\n if (win.document.querySelectorAll(parts.join('')).length === 1) return parts.join('');\n } catch (e) {\n // Sometimes the query selector can be invalid just return it as-is\n return parts.join('');\n }\n // try to get a more specific selector if this one matches more than one element\n if (el.parentNode.childNodes.length > 1) {\n var index = Array.prototype.indexOf.call(el.parentNode.childNodes, el) + 1;\n parts.push(\":nth-child(\" + index + \")\");\n }\n if (win.document.querySelectorAll(parts.join('')).length === 1) return parts.join('');\n // try prepending the parent node selector\n if (el.parentNode) return getNodeSelector(el.parentNode, win) + \" > \" + parts.join('');\n return parts.join('');\n}\n\nvar _$navigationBreadcrumbs_50 = {};\n/*\n* Leaves breadcrumbs when navigation methods are called or events are emitted\n*/\n_$navigationBreadcrumbs_50 = function (win) {\n if (win === void 0) {\n win = window;\n }\n var plugin = {\n load: function (client) {\n if (!('addEventListener' in win)) return;\n if (!client._isBreadcrumbTypeEnabled('navigation')) return;\n\n // returns a function that will drop a breadcrumb with a given name\n var drop = function (name) {\n return function () {\n return client.leaveBreadcrumb(name, {}, 'navigation');\n };\n };\n\n // simple drops – just names, no meta\n win.addEventListener('pagehide', drop('Page hidden'), true);\n win.addEventListener('pageshow', drop('Page shown'), true);\n win.addEventListener('load', drop('Page loaded'), true);\n win.document.addEventListener('DOMContentLoaded', drop('DOMContentLoaded'), true);\n // some browsers like to emit popstate when the page loads, so only add the popstate listener after that\n win.addEventListener('load', function () {\n return win.addEventListener('popstate', drop('Navigated back'), true);\n });\n\n // hashchange has some metadata that we care about\n win.addEventListener('hashchange', function (event) {\n var metadata = event.oldURL ? {\n from: relativeLocation(event.oldURL, win),\n to: relativeLocation(event.newURL, win),\n state: getCurrentState(win)\n } : {\n to: relativeLocation(win.location.href, win)\n };\n client.leaveBreadcrumb('Hash changed', metadata, 'navigation');\n }, true);\n\n // the only way to know about replaceState/pushState is to wrap them… >_<\n if (win.history.pushState) wrapHistoryFn(client, win.history, 'pushState', win, true);\n if (win.history.replaceState) wrapHistoryFn(client, win.history, 'replaceState', win);\n }\n };\n if (\"production\" !== 'production') {\n plugin.destroy = function (win) {\n if (win === void 0) {\n win = window;\n }\n win.history.replaceState._restore();\n win.history.pushState._restore();\n };\n }\n return plugin;\n};\nif (\"production\" !== 'production') {\n _$navigationBreadcrumbs_50.destroy = function (win) {\n if (win === void 0) {\n win = window;\n }\n win.history.replaceState._restore();\n win.history.pushState._restore();\n };\n}\n\n// takes a full url like http://foo.com:1234/pages/01.html?yes=no#section-2 and returns\n// just the path and hash parts, e.g. /pages/01.html?yes=no#section-2\nvar relativeLocation = function (url, win) {\n var a = win.document.createElement('A');\n a.href = url;\n return \"\" + a.pathname + a.search + a.hash;\n};\nvar stateChangeToMetadata = function (win, state, title, url) {\n var currentPath = relativeLocation(win.location.href, win);\n return {\n title: title,\n state: state,\n prevState: getCurrentState(win),\n to: url || currentPath,\n from: currentPath\n };\n};\nvar wrapHistoryFn = function (client, target, fn, win, resetEventCount) {\n if (resetEventCount === void 0) {\n resetEventCount = false;\n }\n var orig = target[fn];\n target[fn] = function (state, title, url) {\n client.leaveBreadcrumb(\"History \" + fn, stateChangeToMetadata(win, state, title, url), 'navigation');\n // if throttle plugin is in use, reset the event sent count\n if (resetEventCount && typeof client.resetEventCount === 'function') client.resetEventCount();\n // Internet Explorer will convert `undefined` to a string when passed, causing an unintended redirect\n // to '/undefined'. therefore we only pass the url if it's not undefined.\n orig.apply(target, [state, title].concat(url !== undefined ? url : []));\n };\n if (\"production\" !== 'production') {\n target[fn]._restore = function () {\n target[fn] = orig;\n };\n }\n};\nvar getCurrentState = function (win) {\n try {\n return win.history.state;\n } catch (e) {}\n};\n\nvar BREADCRUMB_TYPE = 'request';\n/* removed: var _$includes_13 = require('@bugsnag/core/lib/es-utils/includes'); */;\n\n/*\n * Leaves breadcrumbs when network requests occur\n */\nvar _$networkBreadcrumbs_51 = function (_ignoredUrls, win) {\n if (_ignoredUrls === void 0) {\n _ignoredUrls = [];\n }\n if (win === void 0) {\n win = window;\n }\n var restoreFunctions = [];\n var plugin = {\n load: function (client) {\n if (!client._isBreadcrumbTypeEnabled('request')) return;\n var ignoredUrls = [client._config.endpoints.notify, client._config.endpoints.sessions].concat(_ignoredUrls);\n monkeyPatchXMLHttpRequest();\n monkeyPatchFetch();\n\n // XMLHttpRequest monkey patch\n function monkeyPatchXMLHttpRequest() {\n if (!('addEventListener' in win.XMLHttpRequest.prototype) || !('WeakMap' in win)) return;\n var trackedRequests = new WeakMap();\n var requestHandlers = new WeakMap();\n var originalOpen = win.XMLHttpRequest.prototype.open;\n win.XMLHttpRequest.prototype.open = function open(method, url) {\n // it's possible for `this` to be `undefined`, which is not a valid key for a WeakMap\n if (this) {\n trackedRequests.set(this, {\n method: method,\n url: url\n });\n }\n originalOpen.apply(this, arguments);\n };\n var originalSend = win.XMLHttpRequest.prototype.send;\n win.XMLHttpRequest.prototype.send = function send(body) {\n var _this = this;\n var requestData = trackedRequests.get(this);\n if (requestData) {\n // if we have already setup listeners then this request instance is being reused,\n // so we need to remove the listeners from the previous send\n var listeners = requestHandlers.get(this);\n if (listeners) {\n this.removeEventListener('load', listeners.load);\n this.removeEventListener('error', listeners.error);\n }\n var requestStart = new Date();\n var error = function () {\n return handleXHRError(requestData.method, requestData.url, getDuration(requestStart));\n };\n var load = function () {\n return handleXHRLoad(requestData.method, requestData.url, _this.status, getDuration(requestStart));\n };\n this.addEventListener('load', load);\n this.addEventListener('error', error);\n // it's possible for `this` to be `undefined`, which is not a valid key for a WeakMap\n if (this) {\n requestHandlers.set(this, {\n load: load,\n error: error\n });\n }\n }\n originalSend.apply(this, arguments);\n };\n if (\"production\" !== 'production') {\n restoreFunctions.push(function () {\n win.XMLHttpRequest.prototype.open = originalOpen;\n win.XMLHttpRequest.prototype.send = originalSend;\n });\n }\n }\n function handleXHRLoad(method, url, status, duration) {\n if (url === undefined) {\n client._logger.warn('The request URL is no longer present on this XMLHttpRequest. A breadcrumb cannot be left for this request.');\n return;\n }\n\n // an XMLHttpRequest's URL can be an object as long as its 'toString'\n // returns a URL, e.g. a HTMLAnchorElement\n if (typeof url === 'string' && _$includes_13(ignoredUrls, url.replace(/\\?.*$/, ''))) {\n // don't leave a network breadcrumb from bugsnag notify calls\n return;\n }\n var metadata = {\n status: status,\n method: String(method),\n url: String(url),\n duration: duration\n };\n if (status >= 400) {\n // contacted server but got an error response\n client.leaveBreadcrumb('XMLHttpRequest failed', metadata, BREADCRUMB_TYPE);\n } else {\n client.leaveBreadcrumb('XMLHttpRequest succeeded', metadata, BREADCRUMB_TYPE);\n }\n }\n function handleXHRError(method, url, duration) {\n if (url === undefined) {\n client._logger.warn('The request URL is no longer present on this XMLHttpRequest. A breadcrumb cannot be left for this request.');\n return;\n }\n if (typeof url === 'string' && _$includes_13(ignoredUrls, url.replace(/\\?.*$/, ''))) {\n // don't leave a network breadcrumb from bugsnag notify calls\n return;\n }\n\n // failed to contact server\n client.leaveBreadcrumb('XMLHttpRequest error', {\n method: String(method),\n url: String(url),\n duration: duration\n }, BREADCRUMB_TYPE);\n }\n\n // window.fetch monkey patch\n function monkeyPatchFetch() {\n // only patch it if it exists and if it is not a polyfill (patching a polyfilled\n // fetch() results in duplicate breadcrumbs for the same request because the\n // implementation uses XMLHttpRequest which is also patched)\n if (!('fetch' in win) || win.fetch.polyfill) return;\n var oldFetch = win.fetch;\n win.fetch = function fetch() {\n var _arguments = arguments;\n var urlOrRequest = arguments[0];\n var options = arguments[1];\n var method;\n var url = null;\n if (urlOrRequest && typeof urlOrRequest === 'object') {\n url = urlOrRequest.url;\n if (options && 'method' in options) {\n method = options.method;\n } else if (urlOrRequest && 'method' in urlOrRequest) {\n method = urlOrRequest.method;\n }\n } else {\n url = urlOrRequest;\n if (options && 'method' in options) {\n method = options.method;\n }\n }\n if (method === undefined) {\n method = 'GET';\n }\n return new Promise(function (resolve, reject) {\n var requestStart = new Date();\n\n // pass through to native fetch\n oldFetch.apply(void 0, _arguments).then(function (response) {\n handleFetchSuccess(response, method, url, getDuration(requestStart));\n resolve(response);\n })[\"catch\"](function (error) {\n handleFetchError(method, url, getDuration(requestStart));\n reject(error);\n });\n });\n };\n if (\"production\" !== 'production') {\n restoreFunctions.push(function () {\n win.fetch = oldFetch;\n });\n }\n }\n var handleFetchSuccess = function (response, method, url, duration) {\n var metadata = {\n method: String(method),\n status: response.status,\n url: String(url),\n duration: duration\n };\n if (response.status >= 400) {\n // when the request comes back with a 4xx or 5xx status it does not reject the fetch promise,\n client.leaveBreadcrumb('fetch() failed', metadata, BREADCRUMB_TYPE);\n } else {\n client.leaveBreadcrumb('fetch() succeeded', metadata, BREADCRUMB_TYPE);\n }\n };\n var handleFetchError = function (method, url, duration) {\n client.leaveBreadcrumb('fetch() error', {\n method: String(method),\n url: String(url),\n duration: duration\n }, BREADCRUMB_TYPE);\n };\n }\n };\n if (\"production\" !== 'production') {\n plugin.destroy = function () {\n restoreFunctions.forEach(function (fn) {\n return fn();\n });\n restoreFunctions = [];\n };\n }\n return plugin;\n};\nvar getDuration = function (startTime) {\n return startTime && new Date() - startTime;\n};\n\n/* removed: var _$intRange_24 = require('@bugsnag/core/lib/validators/int-range'); */;\n\n/*\n * Throttles and dedupes events\n */\n\nvar _$throttle_52 = {\n load: function (client) {\n // track sent events for each init of the plugin\n var n = 0;\n\n // add onError hook\n client.addOnError(function (event) {\n // have max events been sent already?\n if (n >= client._config.maxEvents) {\n client._logger.warn(\"Cancelling event send due to maxEvents per session limit of \" + client._config.maxEvents + \" being reached\");\n return false;\n }\n n++;\n });\n client.resetEventCount = function () {\n n = 0;\n };\n },\n configSchema: {\n maxEvents: {\n defaultValue: function () {\n return 10;\n },\n message: 'should be a positive integer ≤100',\n validate: function (val) {\n return _$intRange_24(1, 100)(val);\n }\n }\n }\n};\n\nvar _$stripQueryString_53 = {};\n/*\n * Remove query strings (and fragments) from stacktraces\n */\n/* removed: var _$map_16 = require('@bugsnag/core/lib/es-utils/map'); */;\n/* removed: var _$reduce_17 = require('@bugsnag/core/lib/es-utils/reduce'); */;\n_$stripQueryString_53 = {\n load: function (client) {\n client.addOnError(function (event) {\n var allFrames = _$reduce_17(event.errors, function (accum, er) {\n return accum.concat(er.stacktrace);\n }, []);\n _$map_16(allFrames, function (frame) {\n frame.file = strip(frame.file);\n });\n });\n }\n};\nvar strip = _$stripQueryString_53._strip = function (str) {\n return typeof str === 'string' ? str.replace(/\\?.*$/, '').replace(/#.*$/, '') : str;\n};\n\n/*\n * Automatically notifies Bugsnag when window.onerror is called\n */\n\nvar _$onerror_54 = function (win, component) {\n if (win === void 0) {\n win = window;\n }\n if (component === void 0) {\n component = 'window onerror';\n }\n return {\n load: function (client) {\n if (!client._config.autoDetectErrors) return;\n if (!client._config.enabledErrorTypes.unhandledExceptions) return;\n function onerror(messageOrEvent, url, lineNo, charNo, error) {\n // Ignore errors with no info due to CORS settings\n if (lineNo === 0 && /Script error\\.?/.test(messageOrEvent)) {\n client._logger.warn('Ignoring cross-domain or eval script error. See docs: https://tinyurl.com/yy3rn63z');\n } else {\n // any error sent to window.onerror is unhandled and has severity=error\n var handledState = {\n severity: 'error',\n unhandled: true,\n severityReason: {\n type: 'unhandledException'\n }\n };\n var event;\n\n // window.onerror can be called in a number of ways. This big if-else is how we\n // figure out which arguments were supplied, and what kind of values it received.\n\n if (error) {\n // if the last parameter (error) was supplied, this is a modern browser's\n // way of saying \"this value was thrown and not caught\"\n event = client.Event.create(error, true, handledState, component, 1);\n decorateStack(event.errors[0].stacktrace, url, lineNo, charNo);\n } else if (\n // This complex case detects \"error\" events that are typically synthesised\n // by jquery's trigger method (although can be created in other ways). In\n // order to detect this:\n // - the first argument (message) must exist and be an object (most likely it's a jQuery event)\n // - the second argument (url) must either not exist or be something other than a string (if it\n // exists and is not a string, it'll be the extraParameters argument from jQuery's trigger()\n // function)\n // - the third, fourth and fifth arguments must not exist (lineNo, charNo and error)\n typeof messageOrEvent === 'object' && messageOrEvent !== null && (!url || typeof url !== 'string') && !lineNo && !charNo && !error) {\n // The jQuery event may have a \"type\" property, if so use it as part of the error message\n var name = messageOrEvent.type ? \"Event: \" + messageOrEvent.type : 'Error';\n // attempt to find a message from one of the conventional properties, but\n // default to empty string (the event will fill it with a placeholder)\n var message = messageOrEvent.message || messageOrEvent.detail || '';\n event = client.Event.create({\n name: name,\n message: message\n }, true, handledState, component, 1);\n\n // provide the original thing onerror received – not our error-like object we passed to _notify\n event.originalError = messageOrEvent;\n\n // include the raw input as metadata – it might contain more info than we extracted\n event.addMetadata(component, {\n event: messageOrEvent,\n extraParameters: url\n });\n } else {\n // Lastly, if there was no \"error\" parameter this event was probably from an old\n // browser that doesn't support that. Instead we need to generate a stacktrace.\n event = client.Event.create(messageOrEvent, true, handledState, component, 1);\n decorateStack(event.errors[0].stacktrace, url, lineNo, charNo);\n }\n client._notify(event);\n }\n if (typeof prevOnError === 'function') prevOnError.apply(this, arguments);\n }\n var prevOnError = win.onerror;\n win.onerror = onerror;\n }\n };\n};\n\n// Sometimes the stacktrace has less information than was passed to window.onerror.\n// This function will augment the first stackframe with any useful info that was\n// received as arguments to the onerror callback.\nvar decorateStack = function (stack, url, lineNo, charNo) {\n if (!stack[0]) stack.push({});\n var culprit = stack[0];\n if (!culprit.file && typeof url === 'string') culprit.file = url;\n if (!culprit.lineNumber && isActualNumber(lineNo)) culprit.lineNumber = lineNo;\n if (!culprit.columnNumber) {\n if (isActualNumber(charNo)) {\n culprit.columnNumber = charNo;\n } else if (window.event && isActualNumber(window.event.errorCharacter)) {\n culprit.columnNumber = window.event.errorCharacter;\n }\n }\n};\nvar isActualNumber = function (n) {\n return typeof n === 'number' && String.call(n) !== 'NaN';\n};\n\n/* removed: var _$map_16 = require('@bugsnag/core/lib/es-utils/map'); */;\n/* removed: var _$iserror_20 = require('@bugsnag/core/lib/iserror'); */;\nvar _listener;\n/*\n * Automatically notifies Bugsnag when window.onunhandledrejection is called\n */\nvar _$unhandledRejection_55 = function (win) {\n if (win === void 0) {\n win = window;\n }\n var plugin = {\n load: function (client) {\n if (!client._config.autoDetectErrors || !client._config.enabledErrorTypes.unhandledRejections) return;\n var listener = function (evt) {\n var error = evt.reason;\n var isBluebird = false;\n\n // accessing properties on evt.detail can throw errors (see #394)\n try {\n if (evt.detail && evt.detail.reason) {\n error = evt.detail.reason;\n isBluebird = true;\n }\n } catch (e) {}\n var event = client.Event.create(error, false, {\n severity: 'error',\n unhandled: true,\n severityReason: {\n type: 'unhandledPromiseRejection'\n }\n }, 'unhandledrejection handler', 1, client._logger);\n if (isBluebird) {\n _$map_16(event.errors[0].stacktrace, fixBluebirdStacktrace(error));\n }\n client._notify(event, function (event) {\n if (_$iserror_20(event.originalError) && !event.originalError.stack) {\n var _event$addMetadata;\n event.addMetadata('unhandledRejection handler', (_event$addMetadata = {}, _event$addMetadata[Object.prototype.toString.call(event.originalError)] = {\n name: event.originalError.name,\n message: event.originalError.message,\n code: event.originalError.code\n }, _event$addMetadata));\n }\n });\n };\n if ('addEventListener' in win) {\n win.addEventListener('unhandledrejection', listener);\n } else {\n win.onunhandledrejection = function (reason, promise) {\n listener({\n detail: {\n reason: reason,\n promise: promise\n }\n });\n };\n }\n _listener = listener;\n }\n };\n if (\"production\" !== 'production') {\n plugin.destroy = function (win) {\n if (win === void 0) {\n win = window;\n }\n if (_listener) {\n if ('addEventListener' in win) {\n win.removeEventListener('unhandledrejection', _listener);\n } else {\n win.onunhandledrejection = null;\n }\n }\n _listener = null;\n };\n }\n return plugin;\n};\n\n// The stack parser on bluebird stacks in FF get a suprious first frame:\n//\n// Error: derp\n// b@http://localhost:5000/bluebird.html:22:24\n// a@http://localhost:5000/bluebird.html:18:9\n// @http://localhost:5000/bluebird.html:14:9\n//\n// results in\n// […]\n// 0: Object { file: \"Error: derp\", method: undefined, lineNumber: undefined, … }\n// 1: Object { file: \"http://localhost:5000/bluebird.html\", method: \"b\", lineNumber: 22, … }\n// 2: Object { file: \"http://localhost:5000/bluebird.html\", method: \"a\", lineNumber: 18, … }\n// 3: Object { file: \"http://localhost:5000/bluebird.html\", lineNumber: 14, columnNumber: 9, … }\n//\n// so the following reduce/accumulator function removes such frames\n//\n// Bluebird pads method names with spaces so trim that too…\n// https://github.com/petkaantonov/bluebird/blob/b7f21399816d02f979fe434585334ce901dcaf44/src/debuggability.js#L568-L571\nvar fixBluebirdStacktrace = function (error) {\n return function (frame) {\n if (frame.file === error.toString()) return;\n if (frame.method) {\n frame.method = frame.method.replace(/^\\s+/, '');\n }\n };\n};\n\nvar _$notifier_2 = {};\nvar name = 'Bugsnag JavaScript';\nvar version = '8.0.0';\nvar url = 'https://github.com/bugsnag/bugsnag-js';\n/* removed: var _$Client_4 = require('@bugsnag/core/client'); */;\n/* removed: var _$Event_6 = require('@bugsnag/core/event'); */;\n/* removed: var _$Session_35 = require('@bugsnag/core/session'); */;\n/* removed: var _$Breadcrumb_3 = require('@bugsnag/core/breadcrumb'); */;\n/* removed: var _$map_16 = require('@bugsnag/core/lib/es-utils/map'); */;\n/* removed: var _$keys_15 = require('@bugsnag/core/lib/es-utils/keys'); */;\n/* removed: var _$assign_11 = require('@bugsnag/core/lib/es-utils/assign'); */;\n\n// extend the base config schema with some browser-specific options\nvar __schema_2 = _$assign_11({}, _$config_5.schema, _$config_1);\n/* removed: var _$onerror_54 = require('@bugsnag/plugin-window-onerror'); */;\n/* removed: var _$unhandledRejection_55 = require('@bugsnag/plugin-window-unhandled-rejection'); */;\n/* removed: var _$app_38 = require('@bugsnag/plugin-app-duration'); */;\n/* removed: var _$device_40 = require('@bugsnag/plugin-browser-device'); */;\n/* removed: var _$context_39 = require('@bugsnag/plugin-browser-context'); */;\n/* removed: var _$request_44 = require('@bugsnag/plugin-browser-request'); */;\n/* removed: var _$throttle_52 = require('@bugsnag/plugin-simple-throttle'); */;\n/* removed: var _$consoleBreadcrumbs_47 = require('@bugsnag/plugin-console-breadcrumbs'); */;\n/* removed: var _$networkBreadcrumbs_51 = require('@bugsnag/plugin-network-breadcrumbs'); */;\n/* removed: var _$navigationBreadcrumbs_50 = require('@bugsnag/plugin-navigation-breadcrumbs'); */;\n/* removed: var _$interactionBreadcrumbs_49 = require('@bugsnag/plugin-interaction-breadcrumbs'); */;\n/* removed: var _$inlineScriptContent_48 = require('@bugsnag/plugin-inline-script-content'); */;\n/* removed: var _$session_45 = require('@bugsnag/plugin-browser-session'); */;\n/* removed: var _$clientIp_46 = require('@bugsnag/plugin-client-ip'); */;\n/* removed: var _$stripQueryString_53 = require('@bugsnag/plugin-strip-query-string'); */;\n\n// delivery mechanisms\n/* removed: var _$delivery_36 = require('@bugsnag/delivery-x-domain-request'); */;\n/* removed: var _$delivery_37 = require('@bugsnag/delivery-xml-http-request'); */;\nvar Bugsnag = {\n _client: null,\n createClient: function (opts) {\n // handle very simple use case where user supplies just the api key as a string\n if (typeof opts === 'string') opts = {\n apiKey: opts\n };\n if (!opts) opts = {};\n var internalPlugins = [\n // add browser-specific plugins\n _$app_38, _$device_40(), _$context_39(), _$request_44(), _$throttle_52, _$session_45, _$clientIp_46, _$stripQueryString_53, _$onerror_54(), _$unhandledRejection_55(), _$navigationBreadcrumbs_50(), _$interactionBreadcrumbs_49(), _$networkBreadcrumbs_51(), _$consoleBreadcrumbs_47,\n // this one added last to avoid wrapping functionality before bugsnag uses it\n _$inlineScriptContent_48()];\n\n // configure a client with user supplied options\n var bugsnag = new _$Client_4(opts, __schema_2, internalPlugins, {\n name: name,\n version: version,\n url: url\n });\n\n // set delivery based on browser capability (IE 8+9 have an XDomainRequest object)\n bugsnag._setDelivery(window.XDomainRequest ? _$delivery_36 : _$delivery_37);\n bugsnag._logger.debug('Loaded!');\n bugsnag.leaveBreadcrumb('Bugsnag loaded', {}, 'state');\n return bugsnag._config.autoTrackSessions ? bugsnag.startSession() : bugsnag;\n },\n start: function (opts) {\n if (Bugsnag._client) {\n Bugsnag._client._logger.warn('Bugsnag.start() was called more than once. Ignoring.');\n return Bugsnag._client;\n }\n Bugsnag._client = Bugsnag.createClient(opts);\n return Bugsnag._client;\n },\n isStarted: function () {\n return Bugsnag._client != null;\n }\n};\n_$map_16(['resetEventCount'].concat(_$keys_15(_$Client_4.prototype)), function (m) {\n if (/^_/.test(m)) return;\n Bugsnag[m] = function () {\n if (!Bugsnag._client) return console.log(\"Bugsnag.\" + m + \"() was called before Bugsnag.start()\");\n Bugsnag._client._depth += 1;\n var ret = Bugsnag._client[m].apply(Bugsnag._client, arguments);\n Bugsnag._client._depth -= 1;\n return ret;\n };\n});\n_$notifier_2 = Bugsnag;\n_$notifier_2.Client = _$Client_4;\n_$notifier_2.Event = _$Event_6;\n_$notifier_2.Session = _$Session_35;\n_$notifier_2.Breadcrumb = _$Breadcrumb_3;\n\n// Export a \"default\" property for compatibility with ESM imports\n_$notifier_2[\"default\"] = Bugsnag;\n\nreturn _$notifier_2;\n\n});\n//# sourceMappingURL=bugsnag.js.map\n","module.exports = require('@bugsnag/browser')\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar tryToString = require('../internals/try-to-string');\n\nvar $TypeError = TypeError;\n\n// `Assert: IsCallable(argument) is true`\nmodule.exports = function (argument) {\n if (isCallable(argument)) return argument;\n throw new $TypeError(tryToString(argument) + ' is not a function');\n};\n","'use strict';\nvar isPossiblePrototype = require('../internals/is-possible-prototype');\n\nvar $String = String;\nvar $TypeError = TypeError;\n\nmodule.exports = function (argument) {\n if (isPossiblePrototype(argument)) return argument;\n throw new $TypeError(\"Can't set \" + $String(argument) + ' as a prototype');\n};\n","'use strict';\nvar isObject = require('../internals/is-object');\n\nvar $String = String;\nvar $TypeError = TypeError;\n\n// `Assert: Type(argument) is Object`\nmodule.exports = function (argument) {\n if (isObject(argument)) return argument;\n throw new $TypeError($String(argument) + ' is not an object');\n};\n","'use strict';\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\n\n// `Array.prototype.{ indexOf, includes }` methods implementation\nvar createMethod = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIndexedObject($this);\n var length = lengthOfArrayLike(O);\n if (length === 0) return !IS_INCLUDES && -1;\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n // Array#includes uses SameValueZero equality algorithm\n // eslint-disable-next-line no-self-compare -- NaN check\n if (IS_INCLUDES && el !== el) while (length > index) {\n value = O[index++];\n // eslint-disable-next-line no-self-compare -- NaN check\n if (value !== value) return true;\n // Array#indexOf ignores holes, Array#includes - not\n } else for (;length > index; index++) {\n if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.includes` method\n // https://tc39.es/ecma262/#sec-array.prototype.includes\n includes: createMethod(true),\n // `Array.prototype.indexOf` method\n // https://tc39.es/ecma262/#sec-array.prototype.indexof\n indexOf: createMethod(false)\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar isArray = require('../internals/is-array');\n\nvar $TypeError = TypeError;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// Safari < 13 does not throw an error in this case\nvar SILENT_ON_NON_WRITABLE_LENGTH_SET = DESCRIPTORS && !function () {\n // makes no sense without proper strict mode support\n if (this !== undefined) return true;\n try {\n // eslint-disable-next-line es/no-object-defineproperty -- safe\n Object.defineProperty([], 'length', { writable: false }).length = 1;\n } catch (error) {\n return error instanceof TypeError;\n }\n}();\n\nmodule.exports = SILENT_ON_NON_WRITABLE_LENGTH_SET ? function (O, length) {\n if (isArray(O) && !getOwnPropertyDescriptor(O, 'length').writable) {\n throw new $TypeError('Cannot set read only .length');\n } return O.length = length;\n} : function (O, length) {\n return O.length = length;\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nvar toString = uncurryThis({}.toString);\nvar stringSlice = uncurryThis(''.slice);\n\nmodule.exports = function (it) {\n return stringSlice(toString(it), 8, -1);\n};\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar isCallable = require('../internals/is-callable');\nvar classofRaw = require('../internals/classof-raw');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar $Object = Object;\n\n// ES3 wrong here\nvar CORRECT_ARGUMENTS = classofRaw(function () { return arguments; }()) === 'Arguments';\n\n// fallback for IE11 Script Access Denied error\nvar tryGet = function (it, key) {\n try {\n return it[key];\n } catch (error) { /* empty */ }\n};\n\n// getting tag from ES6+ `Object.prototype.toString`\nmodule.exports = TO_STRING_TAG_SUPPORT ? classofRaw : function (it) {\n var O, tag, result;\n return it === undefined ? 'Undefined' : it === null ? 'Null'\n // @@toStringTag case\n : typeof (tag = tryGet(O = $Object(it), TO_STRING_TAG)) == 'string' ? tag\n // builtinTag case\n : CORRECT_ARGUMENTS ? classofRaw(O)\n // ES3 arguments fallback\n : (result = classofRaw(O)) === 'Object' && isCallable(O.callee) ? 'Arguments' : result;\n};\n","'use strict';\nvar hasOwn = require('../internals/has-own-property');\nvar ownKeys = require('../internals/own-keys');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar definePropertyModule = require('../internals/object-define-property');\n\nmodule.exports = function (target, source, exceptions) {\n var keys = ownKeys(source);\n var defineProperty = definePropertyModule.f;\n var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n if (!hasOwn(target, key) && !(exceptions && hasOwn(exceptions, key))) {\n defineProperty(target, key, getOwnPropertyDescriptor(source, key));\n }\n }\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = DESCRIPTORS ? function (object, key, value) {\n return definePropertyModule.f(object, key, createPropertyDescriptor(1, value));\n} : function (object, key, value) {\n object[key] = value;\n return object;\n};\n","'use strict';\nmodule.exports = function (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n};\n","'use strict';\nvar makeBuiltIn = require('../internals/make-built-in');\nvar defineProperty = require('../internals/object-define-property');\n\nmodule.exports = function (target, name, descriptor) {\n if (descriptor.get) makeBuiltIn(descriptor.get, name, { getter: true });\n if (descriptor.set) makeBuiltIn(descriptor.set, name, { setter: true });\n return defineProperty.f(target, name, descriptor);\n};\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar definePropertyModule = require('../internals/object-define-property');\nvar makeBuiltIn = require('../internals/make-built-in');\nvar defineGlobalProperty = require('../internals/define-global-property');\n\nmodule.exports = function (O, key, value, options) {\n if (!options) options = {};\n var simple = options.enumerable;\n var name = options.name !== undefined ? options.name : key;\n if (isCallable(value)) makeBuiltIn(value, name, options);\n if (options.global) {\n if (simple) O[key] = value;\n else defineGlobalProperty(key, value);\n } else {\n try {\n if (!options.unsafe) delete O[key];\n else if (O[key]) simple = true;\n } catch (error) { /* empty */ }\n if (simple) O[key] = value;\n else definePropertyModule.f(O, key, {\n value: value,\n enumerable: false,\n configurable: !options.nonConfigurable,\n writable: !options.nonWritable\n });\n } return O;\n};\n","'use strict';\nvar globalThis = require('../internals/global-this');\n\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar defineProperty = Object.defineProperty;\n\nmodule.exports = function (key, value) {\n try {\n defineProperty(globalThis, key, { value: value, configurable: true, writable: true });\n } catch (error) {\n globalThis[key] = value;\n } return value;\n};\n","'use strict';\nvar fails = require('../internals/fails');\n\n// Detect IE8's incomplete defineProperty implementation\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] !== 7;\n});\n","'use strict';\nvar globalThis = require('../internals/global-this');\nvar isObject = require('../internals/is-object');\n\nvar document = globalThis.document;\n// typeof document.createElement is 'object' in old IE\nvar EXISTS = isObject(document) && isObject(document.createElement);\n\nmodule.exports = function (it) {\n return EXISTS ? document.createElement(it) : {};\n};\n","'use strict';\nvar $TypeError = TypeError;\nvar MAX_SAFE_INTEGER = 0x1FFFFFFFFFFFFF; // 2 ** 53 - 1 == 9007199254740991\n\nmodule.exports = function (it) {\n if (it > MAX_SAFE_INTEGER) throw $TypeError('Maximum allowed index exceeded');\n return it;\n};\n","'use strict';\n// IE8- don't enum bug keys\nmodule.exports = [\n 'constructor',\n 'hasOwnProperty',\n 'isPrototypeOf',\n 'propertyIsEnumerable',\n 'toLocaleString',\n 'toString',\n 'valueOf'\n];\n","'use strict';\nvar globalThis = require('../internals/global-this');\n\nvar navigator = globalThis.navigator;\nvar userAgent = navigator && navigator.userAgent;\n\nmodule.exports = userAgent ? String(userAgent) : '';\n","'use strict';\nvar globalThis = require('../internals/global-this');\nvar userAgent = require('../internals/environment-user-agent');\n\nvar process = globalThis.process;\nvar Deno = globalThis.Deno;\nvar versions = process && process.versions || Deno && Deno.version;\nvar v8 = versions && versions.v8;\nvar match, version;\n\nif (v8) {\n match = v8.split('.');\n // in old Chrome, versions of V8 isn't V8 = Chrome / 10\n // but their correct versions are not interesting for us\n version = match[0] > 0 && match[0] < 4 ? 1 : +(match[0] + match[1]);\n}\n\n// BrowserFS NodeJS `process` polyfill incorrectly set `.v8` to `0.0`\n// so check `userAgent` even if `.v8` exists, but 0\nif (!version && userAgent) {\n match = userAgent.match(/Edge\\/(\\d+)/);\n if (!match || match[1] >= 74) {\n match = userAgent.match(/Chrome\\/(\\d+)/);\n if (match) version = +match[1];\n }\n}\n\nmodule.exports = version;\n","'use strict';\nvar globalThis = require('../internals/global-this');\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 = globalThis;\n } else if (STATIC) {\n target = globalThis[TARGET] || defineGlobalProperty(TARGET, {});\n } else {\n target = globalThis[TARGET] && globalThis[TARGET].prototype;\n }\n if (target) for (key in source) {\n sourceProperty = source[key];\n if (options.dontCallGetSet) {\n descriptor = getOwnPropertyDescriptor(target, key);\n targetProperty = descriptor && descriptor.value;\n } else targetProperty = target[key];\n FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);\n // contained in target\n if (!FORCED && targetProperty !== undefined) {\n if (typeof sourceProperty == typeof targetProperty) continue;\n copyConstructorProperties(sourceProperty, targetProperty);\n }\n // add a flag to not completely full polyfills\n if (options.sham || (targetProperty && targetProperty.sham)) {\n createNonEnumerableProperty(sourceProperty, 'sham', true);\n }\n defineBuiltIn(target, key, sourceProperty, options);\n }\n};\n","'use strict';\nmodule.exports = function (exec) {\n try {\n return !!exec();\n } catch (error) {\n return true;\n }\n};\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-function-prototype-bind -- safe\n var test = (function () { /* empty */ }).bind();\n // eslint-disable-next-line no-prototype-builtins -- safe\n return typeof test != 'function' || test.hasOwnProperty('prototype');\n});\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar call = Function.prototype.call;\n\nmodule.exports = NATIVE_BIND ? call.bind(call) : function () {\n return call.apply(call, arguments);\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar hasOwn = require('../internals/has-own-property');\n\nvar FunctionPrototype = Function.prototype;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar getDescriptor = DESCRIPTORS && Object.getOwnPropertyDescriptor;\n\nvar EXISTS = hasOwn(FunctionPrototype, 'name');\n// additional protection from minified / mangled / dropped function names\nvar PROPER = EXISTS && (function something() { /* empty */ }).name === 'something';\nvar CONFIGURABLE = EXISTS && (!DESCRIPTORS || (DESCRIPTORS && getDescriptor(FunctionPrototype, 'name').configurable));\n\nmodule.exports = {\n EXISTS: EXISTS,\n PROPER: PROPER,\n CONFIGURABLE: CONFIGURABLE\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar aCallable = require('../internals/a-callable');\n\nmodule.exports = function (object, key, method) {\n try {\n // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\n return uncurryThis(aCallable(Object.getOwnPropertyDescriptor(object, key)[method]));\n } catch (error) { /* empty */ }\n};\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar FunctionPrototype = Function.prototype;\nvar call = FunctionPrototype.call;\nvar uncurryThisWithBind = NATIVE_BIND && FunctionPrototype.bind.bind(call, call);\n\nmodule.exports = NATIVE_BIND ? uncurryThisWithBind : function (fn) {\n return function () {\n return call.apply(fn, arguments);\n };\n};\n","'use strict';\nvar globalThis = require('../internals/global-this');\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(globalThis[namespace]) : globalThis[namespace] && globalThis[namespace][method];\n};\n","'use strict';\nvar aCallable = require('../internals/a-callable');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\n\n// `GetMethod` abstract operation\n// https://tc39.es/ecma262/#sec-getmethod\nmodule.exports = function (V, P) {\n var func = V[P];\n return isNullOrUndefined(func) ? undefined : aCallable(func);\n};\n","'use strict';\nvar check = function (it) {\n return it && it.Math === Math && it;\n};\n\n// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nmodule.exports =\n // eslint-disable-next-line es/no-global-this -- safe\n check(typeof globalThis == 'object' && globalThis) ||\n check(typeof window == 'object' && window) ||\n // eslint-disable-next-line no-restricted-globals -- safe\n check(typeof self == 'object' && self) ||\n check(typeof global == 'object' && global) ||\n check(typeof this == 'object' && this) ||\n // eslint-disable-next-line no-new-func -- fallback\n (function () { return this; })() || Function('return this')();\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar toObject = require('../internals/to-object');\n\nvar hasOwnProperty = uncurryThis({}.hasOwnProperty);\n\n// `HasOwnProperty` abstract operation\n// https://tc39.es/ecma262/#sec-hasownproperty\n// eslint-disable-next-line es/no-object-hasown -- safe\nmodule.exports = Object.hasOwn || function hasOwn(it, key) {\n return hasOwnProperty(toObject(it), key);\n};\n","'use strict';\nmodule.exports = {};\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('document', 'documentElement');\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\nvar createElement = require('../internals/document-create-element');\n\n// Thanks to IE8 for its funny defineProperty\nmodule.exports = !DESCRIPTORS && !fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty(createElement('div'), 'a', {\n get: function () { return 7; }\n }).a !== 7;\n});\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar classof = require('../internals/classof-raw');\n\nvar $Object = Object;\nvar split = uncurryThis(''.split);\n\n// fallback for non-array-like ES3 and non-enumerable old V8 strings\nmodule.exports = fails(function () {\n // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346\n // eslint-disable-next-line no-prototype-builtins -- safe\n return !$Object('z').propertyIsEnumerable(0);\n}) ? function (it) {\n return classof(it) === 'String' ? split(it, '') : $Object(it);\n} : $Object;\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\n\n// makes subclassing work correct for wrapped built-ins\nmodule.exports = function ($this, dummy, Wrapper) {\n var NewTarget, NewTargetPrototype;\n if (\n // it can work only with native `setPrototypeOf`\n setPrototypeOf &&\n // we haven't completely correct pre-ES6 way for getting `new.target`, so use this\n isCallable(NewTarget = dummy.constructor) &&\n NewTarget !== Wrapper &&\n isObject(NewTargetPrototype = NewTarget.prototype) &&\n NewTargetPrototype !== Wrapper.prototype\n ) setPrototypeOf($this, NewTargetPrototype);\n return $this;\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar isCallable = require('../internals/is-callable');\nvar store = require('../internals/shared-store');\n\nvar functionToString = uncurryThis(Function.toString);\n\n// this helper broken in `core-js@3.4.1-3.4.4`, so we can't use `shared` helper\nif (!isCallable(store.inspectSource)) {\n store.inspectSource = function (it) {\n return functionToString(it);\n };\n}\n\nmodule.exports = store.inspectSource;\n","'use strict';\nvar NATIVE_WEAK_MAP = require('../internals/weak-map-basic-detection');\nvar globalThis = require('../internals/global-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 = globalThis.TypeError;\nvar WeakMap = globalThis.WeakMap;\nvar set, get, has;\n\nvar enforce = function (it) {\n return has(it) ? get(it) : set(it, {});\n};\n\nvar getterFor = function (TYPE) {\n return function (it) {\n var state;\n if (!isObject(it) || (state = get(it)).type !== TYPE) {\n throw new TypeError('Incompatible receiver, ' + TYPE + ' required');\n } return state;\n };\n};\n\nif (NATIVE_WEAK_MAP || shared.state) {\n var store = shared.state || (shared.state = new WeakMap());\n /* eslint-disable no-self-assign -- prototype methods protection */\n store.get = store.get;\n store.has = store.has;\n store.set = store.set;\n /* eslint-enable no-self-assign -- prototype methods protection */\n set = function (it, metadata) {\n if (store.has(it)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n store.set(it, metadata);\n return metadata;\n };\n get = function (it) {\n return store.get(it) || {};\n };\n has = function (it) {\n return store.has(it);\n };\n} else {\n var STATE = sharedKey('state');\n hiddenKeys[STATE] = true;\n set = function (it, metadata) {\n if (hasOwn(it, STATE)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n createNonEnumerableProperty(it, STATE, metadata);\n return metadata;\n };\n get = function (it) {\n return hasOwn(it, STATE) ? it[STATE] : {};\n };\n has = function (it) {\n return hasOwn(it, STATE);\n };\n}\n\nmodule.exports = {\n set: set,\n get: get,\n has: has,\n enforce: enforce,\n getterFor: getterFor\n};\n","'use strict';\nvar classof = require('../internals/classof-raw');\n\n// `IsArray` abstract operation\n// https://tc39.es/ecma262/#sec-isarray\n// eslint-disable-next-line es/no-array-isarray -- safe\nmodule.exports = Array.isArray || function isArray(argument) {\n return classof(argument) === 'Array';\n};\n","'use strict';\n// https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot\nvar documentAll = typeof document == 'object' && document.all;\n\n// `IsCallable` abstract operation\n// https://tc39.es/ecma262/#sec-iscallable\n// eslint-disable-next-line unicorn/no-typeof-undefined -- required for testing\nmodule.exports = typeof documentAll == 'undefined' && documentAll !== undefined ? function (argument) {\n return typeof argument == 'function' || argument === documentAll;\n} : function (argument) {\n return typeof argument == 'function';\n};\n","'use strict';\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\n\nvar replacement = /#|\\.prototype\\./;\n\nvar isForced = function (feature, detection) {\n var value = data[normalize(feature)];\n return value === POLYFILL ? true\n : value === NATIVE ? false\n : isCallable(detection) ? fails(detection)\n : !!detection;\n};\n\nvar normalize = isForced.normalize = function (string) {\n return String(string).replace(replacement, '.').toLowerCase();\n};\n\nvar data = isForced.data = {};\nvar NATIVE = isForced.NATIVE = 'N';\nvar POLYFILL = isForced.POLYFILL = 'P';\n\nmodule.exports = isForced;\n","'use strict';\n// we can't use just `it == null` since of `document.all` special case\n// https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot-aec\nmodule.exports = function (it) {\n return it === null || it === undefined;\n};\n","'use strict';\nvar isCallable = require('../internals/is-callable');\n\nmodule.exports = function (it) {\n return typeof it == 'object' ? it !== null : isCallable(it);\n};\n","'use strict';\nvar isObject = require('../internals/is-object');\n\nmodule.exports = function (argument) {\n return isObject(argument) || argument === null;\n};\n","'use strict';\nmodule.exports = false;\n","'use strict';\nvar 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","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar isCallable = require('../internals/is-callable');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar $Object = Object;\n\nmodule.exports = USE_SYMBOL_AS_UID ? function (it) {\n return typeof it == 'symbol';\n} : function (it) {\n var $Symbol = getBuiltIn('Symbol');\n return isCallable($Symbol) && isPrototypeOf($Symbol.prototype, $Object(it));\n};\n","'use strict';\nvar toLength = require('../internals/to-length');\n\n// `LengthOfArrayLike` abstract operation\n// https://tc39.es/ecma262/#sec-lengthofarraylike\nmodule.exports = function (obj) {\n return toLength(obj.length);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar hasOwn = require('../internals/has-own-property');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar CONFIGURABLE_FUNCTION_NAME = require('../internals/function-name').CONFIGURABLE;\nvar inspectSource = require('../internals/inspect-source');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar enforceInternalState = InternalStateModule.enforce;\nvar getInternalState = InternalStateModule.get;\nvar $String = String;\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar defineProperty = Object.defineProperty;\nvar stringSlice = uncurryThis(''.slice);\nvar replace = uncurryThis(''.replace);\nvar join = uncurryThis([].join);\n\nvar CONFIGURABLE_LENGTH = DESCRIPTORS && !fails(function () {\n return defineProperty(function () { /* empty */ }, 'length', { value: 8 }).length !== 8;\n});\n\nvar TEMPLATE = String(String).split('String');\n\nvar makeBuiltIn = module.exports = function (value, name, options) {\n if (stringSlice($String(name), 0, 7) === 'Symbol(') {\n name = '[' + replace($String(name), /^Symbol\\(([^)]*)\\).*$/, '$1') + ']';\n }\n if (options && options.getter) name = 'get ' + name;\n if (options && options.setter) name = 'set ' + name;\n if (!hasOwn(value, 'name') || (CONFIGURABLE_FUNCTION_NAME && value.name !== name)) {\n if (DESCRIPTORS) defineProperty(value, 'name', { value: name, configurable: true });\n else value.name = name;\n }\n if (CONFIGURABLE_LENGTH && options && hasOwn(options, 'arity') && value.length !== options.arity) {\n defineProperty(value, 'length', { value: options.arity });\n }\n try {\n if (options && hasOwn(options, 'constructor') && options.constructor) {\n if (DESCRIPTORS) defineProperty(value, 'prototype', { writable: false });\n // in V8 ~ Chrome 53, prototypes of some methods, like `Array.prototype.values`, are non-writable\n } else if (value.prototype) value.prototype = undefined;\n } catch (error) { /* empty */ }\n var state = enforceInternalState(value);\n if (!hasOwn(state, 'source')) {\n state.source = join(TEMPLATE, typeof name == 'string' ? name : '');\n } return value;\n};\n\n// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative\n// eslint-disable-next-line no-extend-native -- required\nFunction.prototype.toString = makeBuiltIn(function toString() {\n return isCallable(this) && getInternalState(this).source || inspectSource(this);\n}, 'toString');\n","'use strict';\nvar ceil = Math.ceil;\nvar floor = Math.floor;\n\n// `Math.trunc` method\n// https://tc39.es/ecma262/#sec-math.trunc\n// eslint-disable-next-line es/no-math-trunc -- safe\nmodule.exports = Math.trunc || function trunc(x) {\n var n = +x;\n return (n > 0 ? floor : ceil)(n);\n};\n","'use strict';\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 // eslint-disable-next-line no-useless-assignment -- avoid memory leak\n activeXDocument = null;\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/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","'use strict';\nvar 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/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","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\nvar V8_PROTOTYPE_DEFINE_BUG = require('../internals/v8-prototype-define-bug');\nvar anObject = require('../internals/an-object');\nvar toPropertyKey = require('../internals/to-property-key');\n\nvar $TypeError = TypeError;\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar $defineProperty = Object.defineProperty;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\nvar ENUMERABLE = 'enumerable';\nvar CONFIGURABLE = 'configurable';\nvar WRITABLE = 'writable';\n\n// `Object.defineProperty` method\n// https://tc39.es/ecma262/#sec-object.defineproperty\nexports.f = DESCRIPTORS ? V8_PROTOTYPE_DEFINE_BUG ? function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPropertyKey(P);\n anObject(Attributes);\n if (typeof O === 'function' && P === 'prototype' && 'value' in Attributes && WRITABLE in Attributes && !Attributes[WRITABLE]) {\n var current = $getOwnPropertyDescriptor(O, P);\n if (current && current[WRITABLE]) {\n O[P] = Attributes.value;\n Attributes = {\n configurable: CONFIGURABLE in Attributes ? Attributes[CONFIGURABLE] : current[CONFIGURABLE],\n enumerable: ENUMERABLE in Attributes ? Attributes[ENUMERABLE] : current[ENUMERABLE],\n writable: false\n };\n }\n } return $defineProperty(O, P, Attributes);\n} : $defineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPropertyKey(P);\n anObject(Attributes);\n if (IE8_DOM_DEFINE) try {\n return $defineProperty(O, P, Attributes);\n } catch (error) { /* empty */ }\n if ('get' in Attributes || 'set' in Attributes) throw new $TypeError('Accessors not supported');\n if ('value' in Attributes) O[P] = Attributes.value;\n return O;\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar call = require('../internals/function-call');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toPropertyKey = require('../internals/to-property-key');\nvar hasOwn = require('../internals/has-own-property');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\n\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// `Object.getOwnPropertyDescriptor` method\n// https://tc39.es/ecma262/#sec-object.getownpropertydescriptor\nexports.f = DESCRIPTORS ? $getOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {\n O = toIndexedObject(O);\n P = toPropertyKey(P);\n if (IE8_DOM_DEFINE) try {\n return $getOwnPropertyDescriptor(O, P);\n } catch (error) { /* empty */ }\n if (hasOwn(O, P)) return createPropertyDescriptor(!call(propertyIsEnumerableModule.f, O, P), O[P]);\n};\n","'use strict';\nvar internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\nvar hiddenKeys = enumBugKeys.concat('length', 'prototype');\n\n// `Object.getOwnPropertyNames` method\n// https://tc39.es/ecma262/#sec-object.getownpropertynames\n// eslint-disable-next-line es/no-object-getownpropertynames -- safe\nexports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {\n return internalObjectKeys(O, hiddenKeys);\n};\n","'use strict';\n// eslint-disable-next-line es/no-object-getownpropertysymbols -- safe\nexports.f = Object.getOwnPropertySymbols;\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = uncurryThis({}.isPrototypeOf);\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar hasOwn = require('../internals/has-own-property');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar indexOf = require('../internals/array-includes').indexOf;\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar push = uncurryThis([].push);\n\nmodule.exports = function (object, names) {\n var O = toIndexedObject(object);\n var i = 0;\n var result = [];\n var key;\n for (key in O) !hasOwn(hiddenKeys, key) && hasOwn(O, key) && push(result, key);\n // Don't enum bug & hidden keys\n while (names.length > i) if (hasOwn(O, key = names[i++])) {\n ~indexOf(result, key) || push(result, key);\n }\n return result;\n};\n","'use strict';\nvar 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/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/no-object-getownpropertydescriptor -- safe\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// Nashorn ~ JDK8 bug\nvar NASHORN_BUG = getOwnPropertyDescriptor && !$propertyIsEnumerable.call({ 1: 2 }, 1);\n\n// `Object.prototype.propertyIsEnumerable` method implementation\n// https://tc39.es/ecma262/#sec-object.prototype.propertyisenumerable\nexports.f = NASHORN_BUG ? function propertyIsEnumerable(V) {\n var descriptor = getOwnPropertyDescriptor(this, V);\n return !!descriptor && descriptor.enumerable;\n} : $propertyIsEnumerable;\n","'use strict';\n/* eslint-disable no-proto -- safe */\nvar uncurryThisAccessor = require('../internals/function-uncurry-this-accessor');\nvar isObject = require('../internals/is-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar aPossiblePrototype = require('../internals/a-possible-prototype');\n\n// `Object.setPrototypeOf` method\n// https://tc39.es/ecma262/#sec-object.setprototypeof\n// Works with __proto__ only. Old v8 can't work with null proto objects.\n// eslint-disable-next-line es/no-object-setprototypeof -- safe\nmodule.exports = Object.setPrototypeOf || ('__proto__' in {} ? function () {\n var CORRECT_SETTER = false;\n var test = {};\n var setter;\n try {\n setter = uncurryThisAccessor(Object.prototype, '__proto__', 'set');\n setter(test, []);\n CORRECT_SETTER = test instanceof Array;\n } catch (error) { /* empty */ }\n return function setPrototypeOf(O, proto) {\n requireObjectCoercible(O);\n aPossiblePrototype(proto);\n if (!isObject(O)) return O;\n if (CORRECT_SETTER) setter(O, proto);\n else O.__proto__ = proto;\n return O;\n };\n}() : undefined);\n","'use strict';\nvar call = require('../internals/function-call');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\n\nvar $TypeError = TypeError;\n\n// `OrdinaryToPrimitive` abstract operation\n// https://tc39.es/ecma262/#sec-ordinarytoprimitive\nmodule.exports = function (input, pref) {\n var fn, val;\n if (pref === 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;\n if (isCallable(fn = input.valueOf) && !isObject(val = call(fn, input))) return val;\n if (pref !== 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;\n throw new $TypeError(\"Can't convert object to primitive value\");\n};\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar anObject = require('../internals/an-object');\n\nvar concat = uncurryThis([].concat);\n\n// all object keys, includes non-enumerable and symbols\nmodule.exports = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) {\n var keys = getOwnPropertyNamesModule.f(anObject(it));\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n return getOwnPropertySymbols ? concat(keys, getOwnPropertySymbols(it)) : keys;\n};\n","'use strict';\nvar 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","'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","'use strict';\nvar 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","'use strict';\nvar fails = require('../internals/fails');\nvar globalThis = require('../internals/global-this');\n\n// babel-minify and Closure Compiler transpiles RegExp('a', 'y') -> /a/y and it causes SyntaxError\nvar $RegExp = globalThis.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","'use strict';\nvar fails = require('../internals/fails');\nvar globalThis = require('../internals/global-this');\n\n// babel-minify and Closure Compiler transpiles RegExp('.', 's') -> /./s and it causes SyntaxError\nvar $RegExp = globalThis.RegExp;\n\nmodule.exports = fails(function () {\n var re = $RegExp('.', 's');\n return !(re.dotAll && re.test('\\n') && re.flags === 's');\n});\n","'use strict';\nvar fails = require('../internals/fails');\nvar globalThis = require('../internals/global-this');\n\n// babel-minify and Closure Compiler transpiles RegExp('(?b)', 'g') -> /(?b)/g and it causes SyntaxError\nvar $RegExp = globalThis.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","'use strict';\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\n\nvar $TypeError = TypeError;\n\n// `RequireObjectCoercible` abstract operation\n// https://tc39.es/ecma262/#sec-requireobjectcoercible\nmodule.exports = function (it) {\n if (isNullOrUndefined(it)) throw new $TypeError(\"Can't call method on \" + it);\n return it;\n};\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar defineBuiltInAccessor = require('../internals/define-built-in-accessor');\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\n if (DESCRIPTORS && Constructor && !Constructor[SPECIES]) {\n defineBuiltInAccessor(Constructor, SPECIES, {\n configurable: true,\n get: function () { return this; }\n });\n }\n};\n","'use strict';\nvar shared = require('../internals/shared');\nvar uid = require('../internals/uid');\n\nvar keys = shared('keys');\n\nmodule.exports = function (key) {\n return keys[key] || (keys[key] = uid(key));\n};\n","'use strict';\nvar IS_PURE = require('../internals/is-pure');\nvar globalThis = require('../internals/global-this');\nvar defineGlobalProperty = require('../internals/define-global-property');\n\nvar SHARED = '__core-js_shared__';\nvar store = module.exports = globalThis[SHARED] || defineGlobalProperty(SHARED, {});\n\n(store.versions || (store.versions = [])).push({\n version: '3.38.1',\n mode: IS_PURE ? 'pure' : 'global',\n copyright: '© 2014-2024 Denis Pushkarev (zloirock.ru)',\n license: 'https://github.com/zloirock/core-js/blob/v3.38.1/LICENSE',\n source: 'https://github.com/zloirock/core-js'\n});\n","'use strict';\nvar store = require('../internals/shared-store');\n\nmodule.exports = function (key, value) {\n return store[key] || (store[key] = value || {});\n};\n","'use strict';\n/* eslint-disable es/no-symbol -- required for testing */\nvar V8_VERSION = require('../internals/environment-v8-version');\nvar fails = require('../internals/fails');\nvar globalThis = require('../internals/global-this');\n\nvar $String = globalThis.String;\n\n// eslint-disable-next-line es/no-object-getownpropertysymbols -- required for testing\nmodule.exports = !!Object.getOwnPropertySymbols && !fails(function () {\n var symbol = Symbol('symbol detection');\n // Chrome 38 Symbol has incorrect toString conversion\n // `get-own-property-symbols` polyfill symbols converted to object are not Symbol instances\n // nb: Do not call `String` directly to avoid this being optimized out to `symbol+''` which will,\n // of course, fail.\n return !$String(symbol) || !(Object(symbol) instanceof Symbol) ||\n // Chrome 38-40 symbols are not inherited from DOM collections prototypes to instances\n !Symbol.sham && V8_VERSION && V8_VERSION < 41;\n});\n","'use strict';\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\n\nvar max = Math.max;\nvar min = Math.min;\n\n// Helper for a popular repeating case of the spec:\n// Let integer be ? ToInteger(index).\n// If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length).\nmodule.exports = function (index, length) {\n var integer = toIntegerOrInfinity(index);\n return integer < 0 ? max(integer + length, 0) : min(integer, length);\n};\n","'use strict';\n// toObject with fallback for non-array-like ES3 strings\nvar IndexedObject = require('../internals/indexed-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nmodule.exports = function (it) {\n return IndexedObject(requireObjectCoercible(it));\n};\n","'use strict';\nvar trunc = require('../internals/math-trunc');\n\n// `ToIntegerOrInfinity` abstract operation\n// https://tc39.es/ecma262/#sec-tointegerorinfinity\nmodule.exports = function (argument) {\n var number = +argument;\n // eslint-disable-next-line no-self-compare -- NaN check\n return number !== number || number === 0 ? 0 : trunc(number);\n};\n","'use strict';\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\n\nvar min = Math.min;\n\n// `ToLength` abstract operation\n// https://tc39.es/ecma262/#sec-tolength\nmodule.exports = function (argument) {\n var len = toIntegerOrInfinity(argument);\n return len > 0 ? min(len, 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991\n};\n","'use strict';\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nvar $Object = Object;\n\n// `ToObject` abstract operation\n// https://tc39.es/ecma262/#sec-toobject\nmodule.exports = function (argument) {\n return $Object(requireObjectCoercible(argument));\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar isObject = require('../internals/is-object');\nvar isSymbol = require('../internals/is-symbol');\nvar getMethod = require('../internals/get-method');\nvar ordinaryToPrimitive = require('../internals/ordinary-to-primitive');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar $TypeError = TypeError;\nvar TO_PRIMITIVE = wellKnownSymbol('toPrimitive');\n\n// `ToPrimitive` abstract operation\n// https://tc39.es/ecma262/#sec-toprimitive\nmodule.exports = function (input, pref) {\n if (!isObject(input) || isSymbol(input)) return input;\n var exoticToPrim = getMethod(input, TO_PRIMITIVE);\n var result;\n if (exoticToPrim) {\n if (pref === undefined) pref = 'default';\n result = call(exoticToPrim, input, pref);\n if (!isObject(result) || isSymbol(result)) return result;\n throw new $TypeError(\"Can't convert object to primitive value\");\n }\n if (pref === undefined) pref = 'number';\n return ordinaryToPrimitive(input, pref);\n};\n","'use strict';\nvar toPrimitive = require('../internals/to-primitive');\nvar isSymbol = require('../internals/is-symbol');\n\n// `ToPropertyKey` abstract operation\n// https://tc39.es/ecma262/#sec-topropertykey\nmodule.exports = function (argument) {\n var key = toPrimitive(argument, 'string');\n return isSymbol(key) ? key : key + '';\n};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar test = {};\n\ntest[TO_STRING_TAG] = 'z';\n\nmodule.exports = String(test) === '[object z]';\n","'use strict';\nvar classof = require('../internals/classof');\n\nvar $String = String;\n\nmodule.exports = function (argument) {\n if (classof(argument) === 'Symbol') throw new TypeError('Cannot convert a Symbol value to a string');\n return $String(argument);\n};\n","'use strict';\nvar $String = String;\n\nmodule.exports = function (argument) {\n try {\n return $String(argument);\n } catch (error) {\n return 'Object';\n }\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nvar id = 0;\nvar postfix = Math.random();\nvar toString = uncurryThis(1.0.toString);\n\nmodule.exports = function (key) {\n return 'Symbol(' + (key === undefined ? '' : key) + ')_' + toString(++id + postfix, 36);\n};\n","'use strict';\n/* eslint-disable es/no-symbol -- required for testing */\nvar NATIVE_SYMBOL = require('../internals/symbol-constructor-detection');\n\nmodule.exports = NATIVE_SYMBOL\n && !Symbol.sham\n && typeof Symbol.iterator == 'symbol';\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\n\n// V8 ~ Chrome 36-\n// https://bugs.chromium.org/p/v8/issues/detail?id=3334\nmodule.exports = DESCRIPTORS && fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty(function () { /* empty */ }, 'prototype', {\n value: 42,\n writable: false\n }).prototype !== 42;\n});\n","'use strict';\nvar globalThis = require('../internals/global-this');\nvar isCallable = require('../internals/is-callable');\n\nvar WeakMap = globalThis.WeakMap;\n\nmodule.exports = isCallable(WeakMap) && /native code/.test(String(WeakMap));\n","'use strict';\nvar globalThis = require('../internals/global-this');\nvar shared = require('../internals/shared');\nvar hasOwn = require('../internals/has-own-property');\nvar uid = require('../internals/uid');\nvar NATIVE_SYMBOL = require('../internals/symbol-constructor-detection');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar Symbol = globalThis.Symbol;\nvar WellKnownSymbolsStore = shared('wks');\nvar createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol['for'] || Symbol : Symbol && Symbol.withoutSetter || uid;\n\nmodule.exports = function (name) {\n if (!hasOwn(WellKnownSymbolsStore, name)) {\n WellKnownSymbolsStore[name] = NATIVE_SYMBOL && hasOwn(Symbol, name)\n ? Symbol[name]\n : createWellKnownSymbol('Symbol.' + name);\n } return WellKnownSymbolsStore[name];\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar toObject = require('../internals/to-object');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar setArrayLength = require('../internals/array-set-length');\nvar doesNotExceedSafeInteger = require('../internals/does-not-exceed-safe-integer');\nvar fails = require('../internals/fails');\n\nvar INCORRECT_TO_LENGTH = fails(function () {\n return [].push.call({ length: 0x100000000 }, 1) !== 4294967297;\n});\n\n// V8 <= 121 and Safari <= 15.4; FF < 23 throws InternalError\n// https://bugs.chromium.org/p/v8/issues/detail?id=12681\nvar properErrorOnNonWritableLength = function () {\n try {\n // eslint-disable-next-line es/no-object-defineproperty -- safe\n Object.defineProperty([], 'length', { writable: false }).push();\n } catch (error) {\n return error instanceof TypeError;\n }\n};\n\nvar FORCED = INCORRECT_TO_LENGTH || !properErrorOnNonWritableLength();\n\n// `Array.prototype.push` method\n// https://tc39.es/ecma262/#sec-array.prototype.push\n$({ target: 'Array', proto: true, arity: 1, forced: FORCED }, {\n // eslint-disable-next-line no-unused-vars -- required for `.length`\n push: function push(item) {\n var O = toObject(this);\n var len = lengthOfArrayLike(O);\n var argCount = arguments.length;\n doesNotExceedSafeInteger(len + argCount);\n for (var i = 0; i < argCount; i++) {\n O[len] = arguments[i];\n len++;\n }\n setArrayLength(O, len);\n return len;\n }\n});\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar globalThis = require('../internals/global-this');\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 create = require('../internals/object-create');\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 = globalThis.RegExp;\nvar RegExpPrototype = NativeRegExp.prototype;\nvar SyntaxError = globalThis.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 // eslint-disable-next-line sonar/inconsistent-function-call -- required for testing\n return NativeRegExp(re1) !== re1 || NativeRegExp(re2) === re2 || String(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 = create(null);\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 += 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 result += chr;\n // ignore non-capturing groups\n if (stringSlice(string, index + 1, index + 3) === '?:') {\n continue;\n }\n if (exec(IS_NCG, stringSlice(string, index + 1))) {\n index += 2;\n ncg = true;\n }\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(globalThis, 'RegExp', RegExpWrapper, { constructor: true });\n}\n\n// https://tc39.es/ecma262/#sec-get-regexp-@@species\nsetSpecies('RegExp');\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar UNSUPPORTED_DOT_ALL = require('../internals/regexp-unsupported-dot-all');\nvar classof = require('../internals/classof-raw');\nvar defineBuiltInAccessor = require('../internals/define-built-in-accessor');\nvar getInternalState = require('../internals/internal-state').get;\n\nvar RegExpPrototype = RegExp.prototype;\nvar $TypeError = TypeError;\n\n// `RegExp.prototype.dotAll` getter\n// https://tc39.es/ecma262/#sec-get-regexp.prototype.dotall\nif (DESCRIPTORS && UNSUPPORTED_DOT_ALL) {\n defineBuiltInAccessor(RegExpPrototype, 'dotAll', {\n configurable: true,\n get: function dotAll() {\n if (this === RegExpPrototype) return;\n // We can't use InternalStateModule.getterFor because\n // we don't add metadata for regexps created by a literal.\n if (classof(this) === 'RegExp') {\n return !!getInternalState(this).dotAll;\n }\n throw new $TypeError('Incompatible receiver, RegExp required');\n }\n });\n}\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","// 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","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\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})();","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","import Bugsnag, { Client } from '@bugsnag/js';\n\ndeclare global {\n\tinterface Window {\n\t\tbugsnagClient: Client\n\t}\n}\n\nconst metaValue = ( name: string ): string | null => {\n\tif ( !document || !document.head ) {\n\t\treturn null;\n\t}\n\n\tconst metaTag: HTMLMetaElement | null = document.head.querySelector( 'meta[name=\"' + name + '\"][content]' );\n\tif ( !metaTag || !metaTag.content ) {\n\t\treturn null;\n\t}\n\n\treturn metaTag.content;\n};\n\nexport const bugsnagClient = Bugsnag.createClient( {\n\tapiKey: metaValue( 'mrh:bugsnag' ) || '',\n\tappType: metaValue( 'mrh:theme' ) || 'unknown theme',\n\tautoTrackSessions: false,\n\tcollectUserIp: false,\n\tenabledReleaseStages: [\n\t\t'production',\n\t],\n\tgenerateAnonymousId: true,\n\treleaseStage: metaValue( 'mrh:stage' ) || 'production',\n\tonError: ( event ) => {\n\t\t// Update Context\n\t\tconst theme = metaValue( 'mrh:theme' );\n\t\tif ( theme ) {\n\t\t\tevent.context = event.context + ' - ' + theme;\n\t\t}\n\n\t\t// Update Meta Data\n\t\tconst id = metaValue( 'mrh:id' );\n\t\tif ( id && theme ) {\n\t\t\tevent.addMetadata( 'site', {\n\t\t\t\tid: id,\n\t\t\t\ttheme: theme,\n\t\t\t} );\n\t\t}\n\n\t\tconst target = metaValue( 'mrh:browser-target' );\n\t\tif ( target ) {\n\t\t\tevent.addMetadata( 'js-bundle', {\n\t\t\t\ttarget: metaValue( 'mrh:browser-target' ),\n\t\t\t} );\n\t\t}\n\t},\n} );\n\nwindow.bugsnagClient = bugsnagClient;\n","\ninterface MSDoNotTracker extends Navigator {\n\tmsDoNotTrack: string|undefined\n}\n\ninterface MSTrackingProtectionEnabler extends External {\n\tmsTrackingProtectionEnabled: () => boolean\n}\n\ninterface DoNotTrackerWindow extends Window {\n\tdoNotTrack: string\n}\n\n/**\n * Ponyfill for navigator.doNotTrack\n */\nexport function doNotTrack(): string|null {\n\ttry {\n\t\tif ( 'doNotTrack' in window ) {\n\t\t\tif ( '1' === ( ( window as unknown ) as DoNotTrackerWindow ).doNotTrack ) {\n\t\t\t\treturn '1';\n\t\t\t}\n\t\t}\n\n\t\tif ( 'navigator' in window ) {\n\t\t\tif ( '1' === navigator.doNotTrack ) {\n\t\t\t\treturn '1';\n\t\t\t}\n\n\t\t\tif ( 'yes' === navigator.doNotTrack ) {\n\t\t\t\treturn '1';\n\t\t\t}\n\n\t\t\t// eslint-disable-next-line eqeqeq\n\t\t\tif ( 'msDoNotTrack' in navigator && '1' == ( navigator as MSDoNotTracker ).msDoNotTrack ) {\n\t\t\t\treturn '1';\n\t\t\t}\n\t\t}\n\n\t\tif ( 'external' in window && 'msTrackingProtectionEnabled' in window.external ) {\n\t\t\tconst trackingProtector = ( window.external as MSTrackingProtectionEnabler );\n\t\t\tif (\n\t\t\t\t( 'function' === typeof trackingProtector.msTrackingProtectionEnabled ) &&\n\t\t\t\ttrackingProtector.msTrackingProtectionEnabled()\n\t\t\t) {\n\t\t\t\treturn '1';\n\t\t\t}\n\t\t}\n\t} catch ( err ) {\n\t\tconsole.warn( err );\n\n\t\treturn null;\n\t}\n\n\treturn null;\n}\n","// Naive implementation of key/value object packing for cookies used by Google/Youtube/...\n// - url safe\n// - compact\n//\n// Note : doesn't do any input validation.\n// If your inputs are bad this will bite you and I am ok with that.\n\nexport function unpackRecords( str: string ): Array<{ key: string, value: string }> {\n\tconst records: Array<{key: string, value:string}> = [];\n\n\tstr.split( '.' ).forEach( ( record ) => {\n\t\tconst pair = record.split( '+' );\n\t\tif ( !pair || !pair.length ) {\n\t\t\treturn;\n\t\t}\n\n\t\trecords.push( {\n\t\t\tkey: pair[0],\n\t\t\tvalue: pair[1] || '',\n\t\t} );\n\t} );\n\n\treturn records;\n}\n\nexport function packRecords( records: Array<{ key: string, value: string }> ): string {\n\tconst out: Array = [];\n\n\trecords.forEach( ( record ) => {\n\t\tout.push( record.key + '+' + record.value );\n\t} );\n\n\treturn out.join( '.' );\n}\n","import * as Cookie from '../../cookie/cookie';\n\nexport function embedderIsEnabled( key: string ): boolean {\n\tconst match = document.cookie.match( new RegExp( '(^| )mr_prv_embedders=([^;]+)' ) );\n\tlet records: Array<{ key: string, value: string }> = [];\n\tif ( match && match[2] ) {\n\t\trecords = Cookie.unpackRecords( match[2] );\n\t}\n\n\trecords = records.filter( ( record ) => {\n\t\treturn record.key === key && '1' === record.value;\n\t} );\n\n\treturn 0 < records.length;\n}\n\nexport function enableEmbedder( key: string ): void {\n\tconst match = document.cookie.match( new RegExp( '(^| )mr_prv_embedders=([^;]+)' ) );\n\tlet records: Array<{ key: string, value: string }> = [];\n\tif ( match && match[2] ) {\n\t\trecords = Cookie.unpackRecords( match[2] );\n\t}\n\n\trecords = records.filter( ( record ) => {\n\t\treturn record.key !== key;\n\t} );\n\n\trecords.push( {\n\t\tkey: key,\n\t\tvalue: '1',\n\t} );\n\n\tconst expires = window.Mr_Prv_Embedder_Helpers.cookieExpiration();\n\n\tif ( window.Mr_Prv_Embedder_Helpers.cookieDomain() ) {\n\t\tdocument.cookie = `mr_prv_embedders=${Cookie.packRecords( records )}; domain=${window.Mr_Prv_Embedder_Helpers.cookieDomain()}; path=/; secure; samesite=lax; expires=` + expires.toUTCString();\n\t} else {\n\t\tdocument.cookie = `mr_prv_embedders=${Cookie.packRecords( records )}; path=/; secure; samesite=lax; expires=` + expires.toUTCString();\n\t}\n}\n\nexport function disableEmbedder( key: string ): void {\n\tconst match = document.cookie.match( new RegExp( '(^| )mr_prv_embedders=([^;]+)' ) );\n\tlet records: Array<{ key: string, value: string }> = [];\n\tif ( match && match[2] ) {\n\t\trecords = Cookie.unpackRecords( match[2] );\n\t}\n\n\trecords = records.filter( ( record ) => {\n\t\treturn record.key !== key;\n\t} );\n\n\trecords.push( {\n\t\tkey: key,\n\t\tvalue: '-1',\n\t} );\n\n\tconst expires = window.Mr_Prv_Embedder_Helpers.cookieExpiration();\n\n\tif ( window.Mr_Prv_Embedder_Helpers.cookieDomain() ) {\n\t\tdocument.cookie = `mr_prv_embedders=${Cookie.packRecords( records )}; domain=${window.Mr_Prv_Embedder_Helpers.cookieDomain()}; path=/; secure; samesite=lax; expires=` + expires.toUTCString();\n\t} else {\n\t\tdocument.cookie = `mr_prv_embedders=${Cookie.packRecords( records )}; path=/; secure; samesite=lax; expires=` + expires.toUTCString();\n\t}\n}\n","import * as Cookie from '../../cookie/cookie';\n\nexport function isEnabledInGTM( key: string ): boolean {\n\tconst match = document.cookie.match( new RegExp( '(^| )mr_prv_gtm=([^;]+)' ) );\n\tlet records: Array<{ key: string, value: string }> = [];\n\tif ( match && match[2] ) {\n\t\trecords = Cookie.unpackRecords( match[2] );\n\t}\n\n\trecords = records.filter( ( record ) => {\n\t\treturn record.key === key && '1' === record.value;\n\t} );\n\n\treturn 0 < records.length;\n}\n\nexport function isDisabledInGTM( key: string ): boolean {\n\tconst match = document.cookie.match( new RegExp( '(^| )mr_prv_gtm=([^;]+)' ) );\n\tlet records: Array<{ key: string, value: string }> = [];\n\tif ( match && match[2] ) {\n\t\trecords = Cookie.unpackRecords( match[2] );\n\t}\n\n\trecords = records.filter( ( record ) => {\n\t\treturn record.key === key && '-1' === record.value;\n\t} );\n\n\treturn 0 < records.length;\n}\n\nexport function enableInGTM( key: string ): void {\n\tconst match = document.cookie.match( new RegExp( '(^| )mr_prv_gtm=([^;]+)' ) );\n\tlet records: Array<{ key: string, value: string }> = [];\n\tif ( match && match[2] ) {\n\t\trecords = Cookie.unpackRecords( match[2] );\n\t}\n\n\trecords = records.filter( ( record ) => {\n\t\treturn record.key !== key;\n\t} );\n\n\trecords.push( {\n\t\tkey: key,\n\t\tvalue: '1',\n\t} );\n\n\tconst expires = window.Mr_Prv_GTM_Helpers.cookieExpiration();\n\n\tif ( window.Mr_Prv_GTM_Helpers.cookieDomain() ) {\n\t\tdocument.cookie = `mr_prv_gtm=${Cookie.packRecords( records )}; domain=${window.Mr_Prv_GTM_Helpers.cookieDomain()}; path=/; secure; samesite=lax; expires=` + expires.toUTCString();\n\t} else {\n\t\tdocument.cookie = `mr_prv_gtm=${Cookie.packRecords( records )}; path=/; secure; samesite=lax; expires=` + expires.toUTCString();\n\t}\n}\n\nexport function disableInGTM( key: string ): void {\n\tconst match = document.cookie.match( new RegExp( '(^| )mr_prv_gtm=([^;]+)' ) );\n\tlet records: Array<{ key: string, value: string }> = [];\n\tif ( match && match[2] ) {\n\t\trecords = Cookie.unpackRecords( match[2] );\n\t}\n\n\trecords = records.filter( ( record ) => {\n\t\treturn record.key !== key;\n\t} );\n\n\trecords.push( {\n\t\tkey: key,\n\t\tvalue: '-1',\n\t} );\n\n\tconst expires = window.Mr_Prv_GTM_Helpers.cookieExpiration();\n\n\tif ( window.Mr_Prv_GTM_Helpers.cookieDomain() ) {\n\t\tdocument.cookie = `mr_prv_gtm=${Cookie.packRecords( records )}; domain=${window.Mr_Prv_GTM_Helpers.cookieDomain()}; path=/; secure; samesite=lax; expires=` + expires.toUTCString();\n\t} else {\n\t\tdocument.cookie = `mr_prv_gtm=${Cookie.packRecords( records )}; path=/; secure; samesite=lax; expires=` + expires.toUTCString();\n\t}\n}\n","import { doNotTrack } from '../do-not-track/do-not-track';\nimport { embedderIsEnabled, enableEmbedder, disableEmbedder } from './embeds';\n\ndeclare global {\n\tinterface Window {\n\t\tMr_Prv_Embedder_Helpers: {\n\t\t\tisEnabled( key: string ): boolean\n\t\t\tenable( key: string ): void\n\t\t\tdisable( key: string ): void\n\t\t\tcookieExpiration(): Date\n\t\t\tcookieDomain(): string|null\n\t\t};\n\t}\n}\n\nexport function setupPrivacyAwareEmbedders(): void {\n\twindow.Mr_Prv_Embedder_Helpers = {\n\t\tisEnabled: embedderIsEnabled,\n\t\tenable: enableEmbedder,\n\t\tdisable: disableEmbedder,\n\t\tcookieExpiration: (): Date => {\n\t\t\tconst d = new Date();\n\t\t\td.setTime( d.getTime() + 90 * 24 * 60 * 60 * 1000 );\n\n\t\t\treturn d;\n\t\t},\n\t\tcookieDomain: (): string|null => {\n\t\t\treturn null;\n\t\t},\n\t};\n\n\t// Make sure all content is unblocked eventually\n\tdocument.addEventListener( 'readystatechange', () => {\n\t\tdocument.querySelectorAll( '[mr-prv-embedder-blocked]' ).forEach( ( el ) => {\n\t\t\tconst key = el.getAttribute( 'mr-prv-embedder-blocked' );\n\t\t\tif ( !key ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif ( embedderIsEnabled( key ) ) {\n\t\t\t\tel.removeAttribute( 'mr-prv-embedder-blocked' );\n\t\t\t\tel.removeAttribute( 'tabindex' );\n\t\t\t}\n\t\t} );\n\n\t\tdocument.querySelectorAll( '[mr-prv-embedders-control]' ).forEach( ( el ) => {\n\t\t\tif ( !el || !( el instanceof HTMLInputElement ) ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif ( doNotTrack() ) {\n\t\t\t\tel.setAttribute( 'do-not-track', '1' );\n\t\t\t}\n\n\t\t\tconst enabled = embedderIsEnabled( el.name );\n\n\t\t\tif ( enabled && 'true' === el.value ) {\n\t\t\t\tel.checked = true;\n\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif ( !enabled && 'false' === el.value ) {\n\t\t\t\tel.checked = true;\n\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tel.checked = false;\n\t\t} );\n\t} );\n\n\twindow.addEventListener( 'change', ( e ) => {\n\t\tif ( !e.target || !( e.target instanceof HTMLInputElement ) ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst input = e.target;\n\t\tif ( !input.hasAttribute( 'mr-prv-embedders-control' ) ) {\n\t\t\treturn;\n\t\t}\n\n\t\tif ( 'true' === input.value ) {\n\t\t\tenableEmbedder( input.name );\n\n\t\t\treturn;\n\t\t}\n\n\t\tdisableEmbedder( input.name );\n\t} );\n}\n","import { doNotTrack } from '../do-not-track/do-not-track';\nimport { isEnabledInGTM, isDisabledInGTM, enableInGTM, disableInGTM } from './gtm';\n\ndeclare global {\n\tinterface Window {\n\t\tMr_Prv_GTM_Helpers: {\n\t\t\tisEnabled( key: string ): boolean\n\t\t\tisDisabled( key: string ): boolean\n\t\t\tenable( key: string ): void\n\t\t\tdisable( key: string ): void\n\t\t\tcookieExpiration(): Date\n\t\t\tcookieDomain(): string|null\n\t\t};\n\t}\n}\n\nexport function setupPrivacyAwareGTM(): void {\n\twindow.Mr_Prv_GTM_Helpers = {\n\t\tisEnabled: isEnabledInGTM,\n\t\tisDisabled: isDisabledInGTM,\n\t\tenable: enableInGTM,\n\t\tdisable: disableInGTM,\n\t\tcookieExpiration: (): Date => {\n\t\t\tconst d = new Date();\n\t\t\td.setTime( d.getTime() + 90 * 24 * 60 * 60 * 1000 );\n\n\t\t\treturn d;\n\t\t},\n\t\tcookieDomain: (): string|null => {\n\t\t\treturn null;\n\t\t},\n\t};\n\n\t// Make sure all content is unblocked eventually\n\tdocument.addEventListener( 'readystatechange', () => {\n\t\tdocument.querySelectorAll( '[mr-prv-gtm-control]' ).forEach( ( el ) => {\n\t\t\tif ( !el || !( el instanceof HTMLInputElement ) ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif ( doNotTrack() ) {\n\t\t\t\tel.setAttribute( 'do-not-track', '1' );\n\t\t\t}\n\n\t\t\t// Explicitly enabled\n\t\t\tconst enabled = isEnabledInGTM( el.name );\n\t\t\tif ( enabled ) {\n\t\t\t\tif ( 'true' === el.value ) {\n\t\t\t\t\tel.checked = true;\n\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif ( 'false' === el.value ) {\n\t\t\t\t\tel.checked = false;\n\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// Explicitly disabled\n\t\t\tconst disabled = isDisabledInGTM( el.name );\n\t\t\tif ( disabled ) {\n\t\t\t\tif ( 'true' === el.value ) {\n\t\t\t\t\tel.checked = false;\n\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif ( 'false' === el.value ) {\n\t\t\t\t\tel.checked = true;\n\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// Implicitly enabled\n\t\t\tif ( 'enabled' === el.getAttribute( 'mr-prv-gtm-control-default' ) ) {\n\t\t\t\tif ( 'true' === el.value ) {\n\t\t\t\t\tel.checked = true;\n\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif ( 'false' === el.value ) {\n\t\t\t\t\tel.checked = false;\n\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// Implicitly disabled\n\t\t\tif ( 'true' === el.value ) {\n\t\t\t\tel.checked = false;\n\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif ( 'false' === el.value ) {\n\t\t\t\tel.checked = true;\n\n\t\t\t\treturn;\n\t\t\t}\n\t\t} );\n\t} );\n\n\twindow.addEventListener( 'change', ( e ) => {\n\t\tif ( !e.target || !( e.target instanceof HTMLInputElement ) ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst input = e.target;\n\t\tif ( !input.hasAttribute( 'mr-prv-gtm-control' ) ) {\n\t\t\treturn;\n\t\t}\n\n\t\tif ( 'true' === input.value ) {\n\t\t\tenableInGTM( input.name );\n\n\t\t\treturn;\n\t\t}\n\n\t\tdisableInGTM( input.name );\n\t} );\n}\n"],"names":["module","exports","_$breadcrumbTypes_8","_$reduce_17","arr","fn","accum","val","i","len","length","_$filter_12","item","concat","_$includes_13","x","_$isArray_14","obj","Object","prototype","toString","call","_hasDontEnumBug","propertyIsEnumerable","_dontEnums","_$keys_15","prop","result","hasOwnProperty","push","_$intRange_24","min","max","Infinity","value","parseInt","_$listOfFunctions_25","f","_$stringWithLength_26","_$config_5","schema","apiKey","defaultValue","message","validate","appVersion","undefined","appType","autoDetectErrors","enabledErrorTypes","unhandledExceptions","unhandledRejections","allowPartialObject","providedKeys","defaultKeys","k","onError","onSession","onBreadcrumb","endpoints","notify","sessions","autoTrackSessions","enabledReleaseStages","releaseStage","maxBreadcrumbs","enabledBreadcrumbTypes","join","maybeType","context","user","key","metadata","logger","method","redactedKeys","s","test","plugins","p","load","featureFlags","feature","name","_$assign_11","target","arguments","source","_$map_16","_extends","assign","bind","apply","this","_$config_1","window","location","host","console","debug","getPrefixedConsole","consoleLog","log","consoleMethod","_$Breadcrumb_3","Breadcrumb","type","timestamp","Date","toJSON","metaData","_$stackframe_34","root","factory","StackFrame","_isNumber","n","isNaN","parseFloat","isFinite","_capitalize","str","charAt","toUpperCase","substring","_getter","booleanProps","numericProps","stringProps","props","getArgs","args","setArgs","v","TypeError","getEvalOrigin","evalOrigin","setEvalOrigin","getFunctionName","getFileName","getLineNumber","getColumnNumber","Boolean","j","Number","String","_$errorStackParser_31","ErrorStackParser","FIREFOX_SAFARI_STACK_REGEXP","CHROME_IE_STACK_REGEXP","SAFARI_NATIVE_CODE_REGEXP","parse","error","stacktrace","parseOpera","stack","match","parseV8OrIE","parseFFOrSafari","Error","extractLocation","urlLike","indexOf","parts","exec","replace","split","filter","line","map","sanitizedLine","tokens","slice","locationParts","pop","functionName","fileName","lineNumber","columnNumber","functionNameRegex","matches","e","parseOpera9","parseOpera11","parseOpera10","lineRE","lines","argsRaw","functionCall","shift","_$errorStackParser_10","_$safeJsonStringify_30","data","replacer","space","opts","redactedPaths","JSON","stringify","seen","edges","visit","path","edgesExceeded","MIN_PRESERVED_DEPTH","MAX_EDGES","MAX_DEPTH","REPLACEMENT_NODE","haystack","needle","find","fResult","err","throwsMessage","o","eResult","__isArray_30","aResult","isDescendent","shouldRedact","safelyGetProp","prepareObjForSerialization","paths","patterns","toLowerCase","add","existingFeatures","existingFeatureKeys","variant","existingIndex","_$featureFlagDelegate_18","clear","features","featuresIndex","merge","newFeatures","toEventApi","_ref","flag","featureFlag","_$hasStack_19","_$iserror_20","__clear_22","state","section","_$metadataDelegate_22","keyOrObj","maybeVal","_updates","updates","get","_$stackGenerator_33","___extends_6","StackGenerator","backtrace","maxStackSize","curr","callee","Array","RegExp","$1","caller","Event","errorClass","errorMessage","handledState","originalError","defaultHandledState","groupingHash","_handledState","severity","unhandled","app","device","request","breadcrumbs","threads","_metadata","_features","_featuresIndex","_user","_session","_correlation","errors","createBugsnagError","__type","_proto","addMetadata","setTraceCorrelation","traceId","spanId","getMetadata","clearMetadata","addFeatureFlag","addFeatureFlags","getFeatureFlags","clearFeatureFlag","clearFeatureFlags","getUser","setUser","id","email","payloadVersion","exceptions","er","severityReason","session","correlation","formatStackframe","frame","file","normaliseFunctionName","code","inProject","ensureString","getCauseStack","cause","getStacktrace","errorFramesToSkip","backtraceFramesToSkip","create","maybeError","tolerateNonErrors","component","event","_normaliseError","normaliseError","internalFrames","makeSerialisable","_event$errors","causes","normalisedCauses","createAndLogInputError","reason","verb","warn","hasNecessaryFields","_$Event_6","_$syncCallbackRunner_23","callbacks","callbackArg","callbackType","ignore","cbs","_$pad_29","num","size","substr","env","self","globalCount","mimeTypesLength","navigator","mimeTypes","clientId","userAgent","_$fingerprint_28","c","discreteValues","Math","pow","randomBlock","random","cuid","getTime","fingerprint","_$cuid_27","_$Session_35","Session","startedAt","_handled","_unhandled","events","handled","_track","__add_4","__clear_4","__merge_4","noop","Client","configuration","internalPlugins","notifier","_this","_notifier","_config","_schema","_delivery","sendSession","sendEvent","_logger","info","_plugins","_breadcrumbs","_context","_cbs","sp","b","_configure","pl","_loadPlugin","_depth","getContext","setContext","plugin","configSchema","_reduce","config","generateConfigErrorMessage","getPlugin","_setDelivery","d","startSession","version","_sessionDelegate","addOnError","front","removeOnError","_addOnSessionPayload","addOnSession","removeOnSession","addOnBreadcrumb","removeOnBreadcrumb","pauseSession","resumeSession","leaveBreadcrumb","crumb","_isBreadcrumbTypeEnabled","types","postReportCallback","_notify","_this2","originalSeverity","onCallbackError","cb","index","next","_$asyncEvery_7","ret","then","setTimeout","_$callbackRunner_9","shouldSend","unhandledOverridden","rawInput","_$Client_4","_$jsonPayload_21","EVENT_REDACTION_PATHS","payload","_$delivery_36","client","win","url","getApiUrl","body","req","XDomainRequest","onload","onerror","toFixed","open","send","endpoint","isoDate","matchPageProtocol","protocol","encodeURIComponent","_matchPageProtocol","pageProtocol","_$delivery_37","XMLHttpRequest","onreadystatechange","readyState","DONE","status","_err","setRequestHeader","toISOString","_err2","appStart","reset","_$app_38","now","duration","_$pad_43","__env_42","__globalCount_42","__prop_42","__mimeTypesLength_42","__clientId_42","_$fingerprint_42","__c_41","__discreteValues_41","__randomBlock_41","__cuid_41","_$cuid_41","BUGSNAG_ANONYMOUS_ID_KEY","_$device_40","nav","locale","browserLanguage","systemLanguage","userLanguage","language","screen","orientation","document","documentElement","clientWidth","clientHeight","generateAnonymousId","storage","localStorage","getItem","setItem","getDeviceId","collectUserIp","setDefaultUserId","time","eventOrSession","_$request_44","href","_$session_45","sessionDelegate","sessionClient","_pausedSession","_$clientIp_46","clientIp","_$consoleBreadcrumbs_47","CONSOLE_LOG_METHODS","original","_len","_key","arg","stringified","_restore","MAX_SCRIPT_LENGTH","_$inlineScriptContent_48","doc","trackInlineScripts","originalLocation","html","DOMContentLoaded","attachEvent","getHtml","outerHTML","prev","_lastScript","updateLastScript","script","getCurrentScript","currentScript","scripts","getElementsByTagName","cleanUrl","content","innerHTML","htmlLines","zeroBasedLine","start","end","addSurroundingCode","_setTimeout","__proxy","__traceOriginalScript","eventTargetCallbackAccessor","callbackAccessor","alsoCallOriginal","cba","__trace__","replacement","isEventHandlerObj","handleEvent","_$interactionBreadcrumbs_49","addEventListener","targetText","targetSelector","el","text","textContent","innerText","trim","getNodeSelector","tagName","className","querySelectorAll","parentNode","childNodes","_$navigationBreadcrumbs_50","drop","oldURL","from","relativeLocation","to","newURL","getCurrentState","history","pushState","wrapHistoryFn","replaceState","a","createElement","pathname","search","hash","resetEventCount","orig","title","currentPath","prevState","stateChangeToMetadata","BREADCRUMB_TYPE","_$networkBreadcrumbs_51","_ignoredUrls","ignoredUrls","trackedRequests","WeakMap","requestHandlers","originalOpen","set","originalSend","requestData","listeners","removeEventListener","requestStart","handleXHRError","getDuration","handleXHRLoad","monkeyPatchXMLHttpRequest","fetch","polyfill","oldFetch","_arguments","urlOrRequest","options","Promise","resolve","reject","response","handleFetchSuccess","handleFetchError","monkeyPatchFetch","startTime","_$throttle_52","maxEvents","_$stripQueryString_53","strip","allFrames","_strip","_$onerror_54","prevOnError","messageOrEvent","lineNo","charNo","decorateStack","detail","extraParameters","culprit","isActualNumber","errorCharacter","_$unhandledRejection_55","listener","evt","isBluebird","fixBluebirdStacktrace","_event$addMetadata","onunhandledrejection","promise","_$notifier_2","__schema_2","Bugsnag","_client","createClient","bugsnag","isStarted","m","isCallable","tryToString","$TypeError","argument","isPossiblePrototype","$String","isObject","toIndexedObject","toAbsoluteIndex","lengthOfArrayLike","createMethod","IS_INCLUDES","$this","fromIndex","O","includes","DESCRIPTORS","isArray","getOwnPropertyDescriptor","SILENT_ON_NON_WRITABLE_LENGTH_SET","defineProperty","writable","uncurryThis","stringSlice","it","TO_STRING_TAG_SUPPORT","classofRaw","TO_STRING_TAG","wellKnownSymbol","$Object","CORRECT_ARGUMENTS","tag","tryGet","hasOwn","ownKeys","getOwnPropertyDescriptorModule","definePropertyModule","keys","createPropertyDescriptor","object","bitmap","enumerable","configurable","makeBuiltIn","descriptor","getter","setter","defineGlobalProperty","simple","global","unsafe","nonConfigurable","nonWritable","globalThis","fails","EXISTS","process","Deno","versions","v8","createNonEnumerableProperty","defineBuiltIn","copyConstructorProperties","isForced","targetProperty","sourceProperty","TARGET","GLOBAL","STATIC","stat","dontCallGetSet","forced","sham","NATIVE_BIND","Function","FunctionPrototype","getDescriptor","PROPER","CONFIGURABLE","aCallable","uncurryThisWithBind","namespace","isNullOrUndefined","V","P","func","check","g","toObject","getBuiltIn","classof","setPrototypeOf","dummy","Wrapper","NewTarget","NewTargetPrototype","constructor","store","functionToString","inspectSource","has","NATIVE_WEAK_MAP","shared","sharedKey","hiddenKeys","OBJECT_ALREADY_INITIALIZED","facade","STATE","enforce","getterFor","TYPE","documentAll","all","detection","normalize","POLYFILL","NATIVE","string","MATCH","isRegExp","isPrototypeOf","USE_SYMBOL_AS_UID","$Symbol","toLength","CONFIGURABLE_FUNCTION_NAME","InternalStateModule","enforceInternalState","getInternalState","CONFIGURABLE_LENGTH","TEMPLATE","arity","ceil","floor","trunc","activeXDocument","anObject","definePropertiesModule","enumBugKeys","documentCreateElement","PROTOTYPE","SCRIPT","IE_PROTO","EmptyConstructor","scriptTag","LT","NullProtoObjectViaActiveX","write","close","temp","parentWindow","NullProtoObject","ActiveXObject","iframeDocument","iframe","JS","domain","style","display","appendChild","src","contentWindow","F","Properties","V8_PROTOTYPE_DEFINE_BUG","objectKeys","defineProperties","IE8_DOM_DEFINE","toPropertyKey","$defineProperty","$getOwnPropertyDescriptor","ENUMERABLE","WRITABLE","Attributes","current","propertyIsEnumerableModule","internalObjectKeys","getOwnPropertyNames","getOwnPropertySymbols","names","$propertyIsEnumerable","NASHORN_BUG","uncurryThisAccessor","requireObjectCoercible","aPossiblePrototype","CORRECT_SETTER","proto","__proto__","input","pref","valueOf","getOwnPropertyNamesModule","getOwnPropertySymbolsModule","Target","Source","re1","re2","regexpFlags","stickyHelpers","UNSUPPORTED_DOT_ALL","UNSUPPORTED_NCG","nativeReplace","nativeExec","patchedExec","UPDATES_LAST_INDEX_WRONG","lastIndex","UNSUPPORTED_Y","BROKEN_CARET","NPCG_INCLUDED","reCopy","group","re","raw","groups","sticky","flags","charsAdded","strCopy","multiline","that","hasIndices","ignoreCase","dotAll","unicode","unicodeSets","regExpFlags","RegExpPrototype","R","$RegExp","MISSED_STICKY","defineBuiltInAccessor","SPECIES","CONSTRUCTOR_NAME","Constructor","uid","IS_PURE","SHARED","mode","copyright","license","V8_VERSION","symbol","Symbol","toIntegerOrInfinity","integer","IndexedObject","number","isSymbol","getMethod","ordinaryToPrimitive","TO_PRIMITIVE","exoticToPrim","toPrimitive","postfix","NATIVE_SYMBOL","iterator","WellKnownSymbolsStore","createWellKnownSymbol","withoutSetter","$","setArrayLength","doesNotExceedSafeInteger","properErrorOnNonWritableLength","argCount","inheritIfRequired","getRegExpFlags","proxyAccessor","setSpecies","NativeRegExp","SyntaxError","stringIndexOf","IS_NCG","CORRECT_NEW","RegExpWrapper","pattern","rawFlags","thisIsRegExp","patternIsRegExp","flagsAreUndefined","rawPattern","chr","named","brackets","ncg","groupid","groupname","handleNCG","handleDotAll","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","__webpack_modules__","__esModule","definition","metaValue","head","metaTag","querySelector","bugsnagClient","theme","doNotTrack","msDoNotTrack","external","trackingProtector","msTrackingProtectionEnabled","unpackRecords","records","forEach","record","pair","packRecords","out","embedderIsEnabled","cookie","Cookie","enableEmbedder","expires","Mr_Prv_Embedder_Helpers","cookieExpiration","cookieDomain","toUTCString","disableEmbedder","isEnabledInGTM","isDisabledInGTM","enableInGTM","Mr_Prv_GTM_Helpers","disableInGTM","isEnabled","enable","disable","setTime","getAttribute","removeAttribute","HTMLInputElement","setAttribute","enabled","checked","hasAttribute","isDisabled"],"sourceRoot":""}