Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nextcloud/files_pdfviewer.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'js/files_pdfviewer-workersrc.js.map')
-rw-r--r--js/files_pdfviewer-workersrc.js.map2
1 files changed, 1 insertions, 1 deletions
diff --git a/js/files_pdfviewer-workersrc.js.map b/js/files_pdfviewer-workersrc.js.map
index d2b8a3b..8c08d87 100644
--- a/js/files_pdfviewer-workersrc.js.map
+++ b/js/files_pdfviewer-workersrc.js.map
@@ -1 +1 @@
-{"version":3,"sources":["webpack:///files_pdfviewer/node_modules/assert/assert.js","webpack:///files_pdfviewer/node_modules/assert/node_modules/inherits/inherits_browser.js","webpack:///files_pdfviewer/node_modules/assert/node_modules/util/support/isBufferBrowser.js","webpack:///files_pdfviewer/node_modules/assert/node_modules/util/util.js","webpack:///files_pdfviewer/src/utils/canDownload.js","webpack:///files_pdfviewer/src/utils/redirectIfNotIframe.js","webpack:///files_pdfviewer/node_modules/console-browserify/index.js","webpack:///files_pdfviewer/node_modules/object-assign/index.js","webpack:///files_pdfviewer/node_modules/process/browser.js","webpack:///files_pdfviewer/node_modules/util/node_modules/inherits/inherits_browser.js","webpack:///files_pdfviewer/node_modules/util/support/isBufferBrowser.js","webpack:///files_pdfviewer/node_modules/util/util.js","webpack:///files_pdfviewer/webpack/bootstrap","webpack:///files_pdfviewer/webpack/runtime/global","webpack:///files_pdfviewer/src/workersrc.js"],"names":["objectAssign","compare","a","b","x","length","y","i","len","Math","min","isBuffer","g","Buffer","_isBuffer","util","hasOwn","Object","prototype","hasOwnProperty","pSlice","Array","slice","functionsHaveNames","name","pToString","obj","toString","call","isView","arrbuf","ArrayBuffer","DataView","buffer","assert","module","exports","ok","regex","getName","func","isFunction","match","truncate","s","n","inspect","something","rawname","fail","actual","expected","message","operator","stackStartFunction","AssertionError","value","_deepEqual","strict","memos","isDate","getTime","isRegExp","source","global","multiline","lastIndex","ignoreCase","Float32Array","Float64Array","Uint8Array","actualIndex","indexOf","push","actualVisitedObjects","isPrimitive","getPrototypeOf","aIsArgs","isArguments","bIsArgs","key","ka","objectKeys","kb","sort","objEquiv","object","expectedException","test","e","Error","isPrototypeOf","_throws","shouldThrow","block","TypeError","error","_tryBlock","userProvidedMessage","isUnexpectedException","isError","options","self","this","generatedMessage","captureStackTrace","err","stack","out","fn_name","idx","next_line","substring","inherits","equal","notEqual","deepEqual","deepStrictEqual","notDeepEqual","notDeepStrictEqual","strictEqual","notStrictEqual","throws","doesNotThrow","ifError","keys","create","ctor","superCtor","super_","constructor","enumerable","writable","configurable","TempCtor","arg","copy","fill","readUInt8","formatRegExp","format","f","isString","objects","arguments","join","args","str","String","replace","Number","JSON","stringify","_","isNull","isObject","deprecate","fn","msg","isUndefined","process","apply","noDeprecation","warned","throwDeprecation","traceDeprecation","console","trace","debugEnviron","debugs","opts","ctx","seen","stylize","stylizeNoColor","depth","colors","isBoolean","showHidden","_extend","customInspect","stylizeWithColor","formatValue","styleType","style","styles","recurseTimes","ret","primitive","simple","isNumber","formatPrimitive","visibleKeys","array","hash","forEach","val","arrayToHash","getOwnPropertyNames","formatError","RegExp","Date","output","base","braces","isArray","toUTCString","l","formatProperty","formatArray","map","pop","reduce","prev","cur","numLinesEst","reduceToSingleString","desc","getOwnPropertyDescriptor","get","set","split","line","substr","ar","re","objectToString","d","o","pad","debuglog","env","NODE_DEBUG","toUpperCase","pid","isNullOrUndefined","isSymbol","months","timestamp","time","getHours","getMinutes","getSeconds","getDate","getMonth","prop","log","origin","add","hideDownloadElmt","document","getElementById","window","location","parent","href","now","times","functions","warn","label","duration","expression","arr","tuple","getOwnPropertySymbols","propIsEnumerable","propertyIsEnumerable","toObject","assign","test1","test2","fromCharCode","test3","letter","shouldUseNative","target","from","symbols","to","cachedSetTimeout","cachedClearTimeout","defaultSetTimout","defaultClearTimeout","runTimeout","fun","setTimeout","clearTimeout","currentQueue","queue","draining","queueIndex","cleanUpNextTick","concat","drainQueue","timeout","run","marker","runClearTimeout","Item","noop","nextTick","title","browser","argv","version","versions","on","addListener","once","off","removeListener","removeAllListeners","emit","prependListener","prependOnceListener","listeners","binding","cwd","chdir","dir","umask","getOwnPropertyDescriptors","descriptors","kCustomPromisifiedSymbol","Symbol","undefined","callbackifyOnRejected","reason","cb","newReason","promisify","original","defineProperty","promiseResolve","promiseReject","promise","Promise","resolve","reject","setPrototypeOf","defineProperties","custom","callbackify","callbackified","maybeCb","then","rej","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","__webpack_modules__","globalThis","Function","addEventListener","PDFViewerApplicationOptions","pdfjsLib","LinkTarget","BLANK","getElementsByTagName","getAttribute","debug","getAll","PDFViewerApplication","download","isDataSchema","url","ii","trim","toLowerCase","decodeURIComponent","search","downloadManager","downloadUrl","defaultFilename","reURI","reFilename","splitURI","exec","suggestedFilename","getPDFFileNameFromURL","downloadButton","querySelector","display","supportsPrinting","beforePrint","classList"],"mappings":"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","file":"files_pdfviewer-workersrc.js?v=f2a07eb63c4f83315f29","sourcesContent":["'use strict';\n\nvar objectAssign = require('object-assign');\n\n// compare and isBuffer taken from https://github.com/feross/buffer/blob/680e9e5e488f22aac27599a57dc844a6315928dd/index.js\n// original notice:\n\n/*!\n * The buffer module from node.js, for the browser.\n *\n * @author Feross Aboukhadijeh <feross@feross.org> <http://feross.org>\n * @license MIT\n */\nfunction compare(a, b) {\n if (a === b) {\n return 0;\n }\n\n var x = a.length;\n var y = b.length;\n\n for (var i = 0, len = Math.min(x, y); i < len; ++i) {\n if (a[i] !== b[i]) {\n x = a[i];\n y = b[i];\n break;\n }\n }\n\n if (x < y) {\n return -1;\n }\n if (y < x) {\n return 1;\n }\n return 0;\n}\nfunction isBuffer(b) {\n if (global.Buffer && typeof global.Buffer.isBuffer === 'function') {\n return global.Buffer.isBuffer(b);\n }\n return !!(b != null && b._isBuffer);\n}\n\n// based on node assert, original notice:\n// NB: The URL to the CommonJS spec is kept just for tradition.\n// node-assert has evolved a lot since then, both in API and behavior.\n\n// http://wiki.commonjs.org/wiki/Unit_Testing/1.0\n//\n// THIS IS NOT TESTED NOR LIKELY TO WORK OUTSIDE V8!\n//\n// Originally from narwhal.js (http://narwhaljs.org)\n// Copyright (c) 2009 Thomas Robinson <280north.com>\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the 'Software'), to\n// deal in the Software without restriction, including without limitation the\n// rights to use, copy, modify, merge, publish, distribute, sublicense, and/or\n// sell copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN\n// ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION\n// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\nvar util = require('util/');\nvar hasOwn = Object.prototype.hasOwnProperty;\nvar pSlice = Array.prototype.slice;\nvar functionsHaveNames = (function () {\n return function foo() {}.name === 'foo';\n}());\nfunction pToString (obj) {\n return Object.prototype.toString.call(obj);\n}\nfunction isView(arrbuf) {\n if (isBuffer(arrbuf)) {\n return false;\n }\n if (typeof global.ArrayBuffer !== 'function') {\n return false;\n }\n if (typeof ArrayBuffer.isView === 'function') {\n return ArrayBuffer.isView(arrbuf);\n }\n if (!arrbuf) {\n return false;\n }\n if (arrbuf instanceof DataView) {\n return true;\n }\n if (arrbuf.buffer && arrbuf.buffer instanceof ArrayBuffer) {\n return true;\n }\n return false;\n}\n// 1. The assert module provides functions that throw\n// AssertionError's when particular conditions are not met. The\n// assert module must conform to the following interface.\n\nvar assert = module.exports = ok;\n\n// 2. The AssertionError is defined in assert.\n// new assert.AssertionError({ message: message,\n// actual: actual,\n// expected: expected })\n\nvar regex = /\\s*function\\s+([^\\(\\s]*)\\s*/;\n// based on https://github.com/ljharb/function.prototype.name/blob/adeeeec8bfcc6068b187d7d9fb3d5bb1d3a30899/implementation.js\nfunction getName(func) {\n if (!util.isFunction(func)) {\n return;\n }\n if (functionsHaveNames) {\n return func.name;\n }\n var str = func.toString();\n var match = str.match(regex);\n return match && match[1];\n}\nassert.AssertionError = function AssertionError(options) {\n this.name = 'AssertionError';\n this.actual = options.actual;\n this.expected = options.expected;\n this.operator = options.operator;\n if (options.message) {\n this.message = options.message;\n this.generatedMessage = false;\n } else {\n this.message = getMessage(this);\n this.generatedMessage = true;\n }\n var stackStartFunction = options.stackStartFunction || fail;\n if (Error.captureStackTrace) {\n Error.captureStackTrace(this, stackStartFunction);\n } else {\n // non v8 browsers so we can have a stacktrace\n var err = new Error();\n if (err.stack) {\n var out = err.stack;\n\n // try to strip useless frames\n var fn_name = getName(stackStartFunction);\n var idx = out.indexOf('\\n' + fn_name);\n if (idx >= 0) {\n // once we have located the function frame\n // we need to strip out everything before it (and its line)\n var next_line = out.indexOf('\\n', idx + 1);\n out = out.substring(next_line + 1);\n }\n\n this.stack = out;\n }\n }\n};\n\n// assert.AssertionError instanceof Error\nutil.inherits(assert.AssertionError, Error);\n\nfunction truncate(s, n) {\n if (typeof s === 'string') {\n return s.length < n ? s : s.slice(0, n);\n } else {\n return s;\n }\n}\nfunction inspect(something) {\n if (functionsHaveNames || !util.isFunction(something)) {\n return util.inspect(something);\n }\n var rawname = getName(something);\n var name = rawname ? ': ' + rawname : '';\n return '[Function' + name + ']';\n}\nfunction getMessage(self) {\n return truncate(inspect(self.actual), 128) + ' ' +\n self.operator + ' ' +\n truncate(inspect(self.expected), 128);\n}\n\n// At present only the three keys mentioned above are used and\n// understood by the spec. Implementations or sub modules can pass\n// other keys to the AssertionError's constructor - they will be\n// ignored.\n\n// 3. All of the following functions must throw an AssertionError\n// when a corresponding condition is not met, with a message that\n// may be undefined if not provided. All assertion methods provide\n// both the actual and expected values to the assertion error for\n// display purposes.\n\nfunction fail(actual, expected, message, operator, stackStartFunction) {\n throw new assert.AssertionError({\n message: message,\n actual: actual,\n expected: expected,\n operator: operator,\n stackStartFunction: stackStartFunction\n });\n}\n\n// EXTENSION! allows for well behaved errors defined elsewhere.\nassert.fail = fail;\n\n// 4. Pure assertion tests whether a value is truthy, as determined\n// by !!guard.\n// assert.ok(guard, message_opt);\n// This statement is equivalent to assert.equal(true, !!guard,\n// message_opt);. To test strictly for the value true, use\n// assert.strictEqual(true, guard, message_opt);.\n\nfunction ok(value, message) {\n if (!value) fail(value, true, message, '==', assert.ok);\n}\nassert.ok = ok;\n\n// 5. The equality assertion tests shallow, coercive equality with\n// ==.\n// assert.equal(actual, expected, message_opt);\n\nassert.equal = function equal(actual, expected, message) {\n if (actual != expected) fail(actual, expected, message, '==', assert.equal);\n};\n\n// 6. The non-equality assertion tests for whether two objects are not equal\n// with != assert.notEqual(actual, expected, message_opt);\n\nassert.notEqual = function notEqual(actual, expected, message) {\n if (actual == expected) {\n fail(actual, expected, message, '!=', assert.notEqual);\n }\n};\n\n// 7. The equivalence assertion tests a deep equality relation.\n// assert.deepEqual(actual, expected, message_opt);\n\nassert.deepEqual = function deepEqual(actual, expected, message) {\n if (!_deepEqual(actual, expected, false)) {\n fail(actual, expected, message, 'deepEqual', assert.deepEqual);\n }\n};\n\nassert.deepStrictEqual = function deepStrictEqual(actual, expected, message) {\n if (!_deepEqual(actual, expected, true)) {\n fail(actual, expected, message, 'deepStrictEqual', assert.deepStrictEqual);\n }\n};\n\nfunction _deepEqual(actual, expected, strict, memos) {\n // 7.1. All identical values are equivalent, as determined by ===.\n if (actual === expected) {\n return true;\n } else if (isBuffer(actual) && isBuffer(expected)) {\n return compare(actual, expected) === 0;\n\n // 7.2. If the expected value is a Date object, the actual value is\n // equivalent if it is also a Date object that refers to the same time.\n } else if (util.isDate(actual) && util.isDate(expected)) {\n return actual.getTime() === expected.getTime();\n\n // 7.3 If the expected value is a RegExp object, the actual value is\n // equivalent if it is also a RegExp object with the same source and\n // properties (`global`, `multiline`, `lastIndex`, `ignoreCase`).\n } else if (util.isRegExp(actual) && util.isRegExp(expected)) {\n return actual.source === expected.source &&\n actual.global === expected.global &&\n actual.multiline === expected.multiline &&\n actual.lastIndex === expected.lastIndex &&\n actual.ignoreCase === expected.ignoreCase;\n\n // 7.4. Other pairs that do not both pass typeof value == 'object',\n // equivalence is determined by ==.\n } else if ((actual === null || typeof actual !== 'object') &&\n (expected === null || typeof expected !== 'object')) {\n return strict ? actual === expected : actual == expected;\n\n // If both values are instances of typed arrays, wrap their underlying\n // ArrayBuffers in a Buffer each to increase performance\n // This optimization requires the arrays to have the same type as checked by\n // Object.prototype.toString (aka pToString). Never perform binary\n // comparisons for Float*Arrays, though, since e.g. +0 === -0 but their\n // bit patterns are not identical.\n } else if (isView(actual) && isView(expected) &&\n pToString(actual) === pToString(expected) &&\n !(actual instanceof Float32Array ||\n actual instanceof Float64Array)) {\n return compare(new Uint8Array(actual.buffer),\n new Uint8Array(expected.buffer)) === 0;\n\n // 7.5 For all other Object pairs, including Array objects, equivalence is\n // determined by having the same number of owned properties (as verified\n // with Object.prototype.hasOwnProperty.call), the same set of keys\n // (although not necessarily the same order), equivalent values for every\n // corresponding key, and an identical 'prototype' property. Note: this\n // accounts for both named and indexed properties on Arrays.\n } else if (isBuffer(actual) !== isBuffer(expected)) {\n return false;\n } else {\n memos = memos || {actual: [], expected: []};\n\n var actualIndex = memos.actual.indexOf(actual);\n if (actualIndex !== -1) {\n if (actualIndex === memos.expected.indexOf(expected)) {\n return true;\n }\n }\n\n memos.actual.push(actual);\n memos.expected.push(expected);\n\n return objEquiv(actual, expected, strict, memos);\n }\n}\n\nfunction isArguments(object) {\n return Object.prototype.toString.call(object) == '[object Arguments]';\n}\n\nfunction objEquiv(a, b, strict, actualVisitedObjects) {\n if (a === null || a === undefined || b === null || b === undefined)\n return false;\n // if one is a primitive, the other must be same\n if (util.isPrimitive(a) || util.isPrimitive(b))\n return a === b;\n if (strict && Object.getPrototypeOf(a) !== Object.getPrototypeOf(b))\n return false;\n var aIsArgs = isArguments(a);\n var bIsArgs = isArguments(b);\n if ((aIsArgs && !bIsArgs) || (!aIsArgs && bIsArgs))\n return false;\n if (aIsArgs) {\n a = pSlice.call(a);\n b = pSlice.call(b);\n return _deepEqual(a, b, strict);\n }\n var ka = objectKeys(a);\n var kb = objectKeys(b);\n var key, i;\n // having the same number of owned properties (keys incorporates\n // hasOwnProperty)\n if (ka.length !== kb.length)\n return false;\n //the same set of keys (although not necessarily the same order),\n ka.sort();\n kb.sort();\n //~~~cheap key test\n for (i = ka.length - 1; i >= 0; i--) {\n if (ka[i] !== kb[i])\n return false;\n }\n //equivalent values for every corresponding key, and\n //~~~possibly expensive deep test\n for (i = ka.length - 1; i >= 0; i--) {\n key = ka[i];\n if (!_deepEqual(a[key], b[key], strict, actualVisitedObjects))\n return false;\n }\n return true;\n}\n\n// 8. The non-equivalence assertion tests for any deep inequality.\n// assert.notDeepEqual(actual, expected, message_opt);\n\nassert.notDeepEqual = function notDeepEqual(actual, expected, message) {\n if (_deepEqual(actual, expected, false)) {\n fail(actual, expected, message, 'notDeepEqual', assert.notDeepEqual);\n }\n};\n\nassert.notDeepStrictEqual = notDeepStrictEqual;\nfunction notDeepStrictEqual(actual, expected, message) {\n if (_deepEqual(actual, expected, true)) {\n fail(actual, expected, message, 'notDeepStrictEqual', notDeepStrictEqual);\n }\n}\n\n\n// 9. The strict equality assertion tests strict equality, as determined by ===.\n// assert.strictEqual(actual, expected, message_opt);\n\nassert.strictEqual = function strictEqual(actual, expected, message) {\n if (actual !== expected) {\n fail(actual, expected, message, '===', assert.strictEqual);\n }\n};\n\n// 10. The strict non-equality assertion tests for strict inequality, as\n// determined by !==. assert.notStrictEqual(actual, expected, message_opt);\n\nassert.notStrictEqual = function notStrictEqual(actual, expected, message) {\n if (actual === expected) {\n fail(actual, expected, message, '!==', assert.notStrictEqual);\n }\n};\n\nfunction expectedException(actual, expected) {\n if (!actual || !expected) {\n return false;\n }\n\n if (Object.prototype.toString.call(expected) == '[object RegExp]') {\n return expected.test(actual);\n }\n\n try {\n if (actual instanceof expected) {\n return true;\n }\n } catch (e) {\n // Ignore. The instanceof check doesn't work for arrow functions.\n }\n\n if (Error.isPrototypeOf(expected)) {\n return false;\n }\n\n return expected.call({}, actual) === true;\n}\n\nfunction _tryBlock(block) {\n var error;\n try {\n block();\n } catch (e) {\n error = e;\n }\n return error;\n}\n\nfunction _throws(shouldThrow, block, expected, message) {\n var actual;\n\n if (typeof block !== 'function') {\n throw new TypeError('\"block\" argument must be a function');\n }\n\n if (typeof expected === 'string') {\n message = expected;\n expected = null;\n }\n\n actual = _tryBlock(block);\n\n message = (expected && expected.name ? ' (' + expected.name + ').' : '.') +\n (message ? ' ' + message : '.');\n\n if (shouldThrow && !actual) {\n fail(actual, expected, 'Missing expected exception' + message);\n }\n\n var userProvidedMessage = typeof message === 'string';\n var isUnwantedException = !shouldThrow && util.isError(actual);\n var isUnexpectedException = !shouldThrow && actual && !expected;\n\n if ((isUnwantedException &&\n userProvidedMessage &&\n expectedException(actual, expected)) ||\n isUnexpectedException) {\n fail(actual, expected, 'Got unwanted exception' + message);\n }\n\n if ((shouldThrow && actual && expected &&\n !expectedException(actual, expected)) || (!shouldThrow && actual)) {\n throw actual;\n }\n}\n\n// 11. Expected to throw an error:\n// assert.throws(block, Error_opt, message_opt);\n\nassert.throws = function(block, /*optional*/error, /*optional*/message) {\n _throws(true, block, error, message);\n};\n\n// EXTENSION! This is annoying to write outside this module.\nassert.doesNotThrow = function(block, /*optional*/error, /*optional*/message) {\n _throws(false, block, error, message);\n};\n\nassert.ifError = function(err) { if (err) throw err; };\n\n// Expose a strict only variant of assert\nfunction strict(value, message) {\n if (!value) fail(value, true, message, '==', strict);\n}\nassert.strict = objectAssign(strict, assert, {\n equal: assert.strictEqual,\n deepEqual: assert.deepStrictEqual,\n notEqual: assert.notStrictEqual,\n notDeepEqual: assert.notDeepStrictEqual\n});\nassert.strict.strict = assert.strict;\n\nvar objectKeys = Object.keys || function (obj) {\n var keys = [];\n for (var key in obj) {\n if (hasOwn.call(obj, key)) keys.push(key);\n }\n return keys;\n};\n","if (typeof Object.create === 'function') {\n // implementation from standard node.js 'util' module\n module.exports = function inherits(ctor, superCtor) {\n ctor.super_ = superCtor\n ctor.prototype = Object.create(superCtor.prototype, {\n constructor: {\n value: ctor,\n enumerable: false,\n writable: true,\n configurable: true\n }\n });\n };\n} else {\n // old school shim for old browsers\n module.exports = function inherits(ctor, superCtor) {\n ctor.super_ = superCtor\n var TempCtor = function () {}\n TempCtor.prototype = superCtor.prototype\n ctor.prototype = new TempCtor()\n ctor.prototype.constructor = ctor\n }\n}\n","module.exports = function isBuffer(arg) {\n return arg && typeof arg === 'object'\n && typeof arg.copy === 'function'\n && typeof arg.fill === 'function'\n && typeof arg.readUInt8 === 'function';\n}","// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\nvar formatRegExp = /%[sdj%]/g;\nexports.format = function(f) {\n if (!isString(f)) {\n var objects = [];\n for (var i = 0; i < arguments.length; i++) {\n objects.push(inspect(arguments[i]));\n }\n return objects.join(' ');\n }\n\n var i = 1;\n var args = arguments;\n var len = args.length;\n var str = String(f).replace(formatRegExp, function(x) {\n if (x === '%%') return '%';\n if (i >= len) return x;\n switch (x) {\n case '%s': return String(args[i++]);\n case '%d': return Number(args[i++]);\n case '%j':\n try {\n return JSON.stringify(args[i++]);\n } catch (_) {\n return '[Circular]';\n }\n default:\n return x;\n }\n });\n for (var x = args[i]; i < len; x = args[++i]) {\n if (isNull(x) || !isObject(x)) {\n str += ' ' + x;\n } else {\n str += ' ' + inspect(x);\n }\n }\n return str;\n};\n\n\n// Mark that a method should not be used.\n// Returns a modified function which warns once by default.\n// If --no-deprecation is set, then it is a no-op.\nexports.deprecate = function(fn, msg) {\n // Allow for deprecating things in the process of starting up.\n if (isUndefined(global.process)) {\n return function() {\n return exports.deprecate(fn, msg).apply(this, arguments);\n };\n }\n\n if (process.noDeprecation === true) {\n return fn;\n }\n\n var warned = false;\n function deprecated() {\n if (!warned) {\n if (process.throwDeprecation) {\n throw new Error(msg);\n } else if (process.traceDeprecation) {\n console.trace(msg);\n } else {\n console.error(msg);\n }\n warned = true;\n }\n return fn.apply(this, arguments);\n }\n\n return deprecated;\n};\n\n\nvar debugs = {};\nvar debugEnviron;\nexports.debuglog = function(set) {\n if (isUndefined(debugEnviron))\n debugEnviron = process.env.NODE_DEBUG || '';\n set = set.toUpperCase();\n if (!debugs[set]) {\n if (new RegExp('\\\\b' + set + '\\\\b', 'i').test(debugEnviron)) {\n var pid = process.pid;\n debugs[set] = function() {\n var msg = exports.format.apply(exports, arguments);\n console.error('%s %d: %s', set, pid, msg);\n };\n } else {\n debugs[set] = function() {};\n }\n }\n return debugs[set];\n};\n\n\n/**\n * Echos the value of a value. Trys to print the value out\n * in the best way possible given the different types.\n *\n * @param {Object} obj The object to print out.\n * @param {Object} opts Optional options object that alters the output.\n */\n/* legacy: obj, showHidden, depth, colors*/\nfunction inspect(obj, opts) {\n // default options\n var ctx = {\n seen: [],\n stylize: stylizeNoColor\n };\n // legacy...\n if (arguments.length >= 3) ctx.depth = arguments[2];\n if (arguments.length >= 4) ctx.colors = arguments[3];\n if (isBoolean(opts)) {\n // legacy...\n ctx.showHidden = opts;\n } else if (opts) {\n // got an \"options\" object\n exports._extend(ctx, opts);\n }\n // set default options\n if (isUndefined(ctx.showHidden)) ctx.showHidden = false;\n if (isUndefined(ctx.depth)) ctx.depth = 2;\n if (isUndefined(ctx.colors)) ctx.colors = false;\n if (isUndefined(ctx.customInspect)) ctx.customInspect = true;\n if (ctx.colors) ctx.stylize = stylizeWithColor;\n return formatValue(ctx, obj, ctx.depth);\n}\nexports.inspect = inspect;\n\n\n// http://en.wikipedia.org/wiki/ANSI_escape_code#graphics\ninspect.colors = {\n 'bold' : [1, 22],\n 'italic' : [3, 23],\n 'underline' : [4, 24],\n 'inverse' : [7, 27],\n 'white' : [37, 39],\n 'grey' : [90, 39],\n 'black' : [30, 39],\n 'blue' : [34, 39],\n 'cyan' : [36, 39],\n 'green' : [32, 39],\n 'magenta' : [35, 39],\n 'red' : [31, 39],\n 'yellow' : [33, 39]\n};\n\n// Don't use 'blue' not visible on cmd.exe\ninspect.styles = {\n 'special': 'cyan',\n 'number': 'yellow',\n 'boolean': 'yellow',\n 'undefined': 'grey',\n 'null': 'bold',\n 'string': 'green',\n 'date': 'magenta',\n // \"name\": intentionally not styling\n 'regexp': 'red'\n};\n\n\nfunction stylizeWithColor(str, styleType) {\n var style = inspect.styles[styleType];\n\n if (style) {\n return '\\u001b[' + inspect.colors[style][0] + 'm' + str +\n '\\u001b[' + inspect.colors[style][1] + 'm';\n } else {\n return str;\n }\n}\n\n\nfunction stylizeNoColor(str, styleType) {\n return str;\n}\n\n\nfunction arrayToHash(array) {\n var hash = {};\n\n array.forEach(function(val, idx) {\n hash[val] = true;\n });\n\n return hash;\n}\n\n\nfunction formatValue(ctx, value, recurseTimes) {\n // Provide a hook for user-specified inspect functions.\n // Check that value is an object with an inspect function on it\n if (ctx.customInspect &&\n value &&\n isFunction(value.inspect) &&\n // Filter out the util module, it's inspect function is special\n value.inspect !== exports.inspect &&\n // Also filter out any prototype objects using the circular check.\n !(value.constructor && value.constructor.prototype === value)) {\n var ret = value.inspect(recurseTimes, ctx);\n if (!isString(ret)) {\n ret = formatValue(ctx, ret, recurseTimes);\n }\n return ret;\n }\n\n // Primitive types cannot have properties\n var primitive = formatPrimitive(ctx, value);\n if (primitive) {\n return primitive;\n }\n\n // Look up the keys of the object.\n var keys = Object.keys(value);\n var visibleKeys = arrayToHash(keys);\n\n if (ctx.showHidden) {\n keys = Object.getOwnPropertyNames(value);\n }\n\n // IE doesn't make error fields non-enumerable\n // http://msdn.microsoft.com/en-us/library/ie/dww52sbt(v=vs.94).aspx\n if (isError(value)\n && (keys.indexOf('message') >= 0 || keys.indexOf('description') >= 0)) {\n return formatError(value);\n }\n\n // Some type of object without properties can be shortcutted.\n if (keys.length === 0) {\n if (isFunction(value)) {\n var name = value.name ? ': ' + value.name : '';\n return ctx.stylize('[Function' + name + ']', 'special');\n }\n if (isRegExp(value)) {\n return ctx.stylize(RegExp.prototype.toString.call(value), 'regexp');\n }\n if (isDate(value)) {\n return ctx.stylize(Date.prototype.toString.call(value), 'date');\n }\n if (isError(value)) {\n return formatError(value);\n }\n }\n\n var base = '', array = false, braces = ['{', '}'];\n\n // Make Array say that they are Array\n if (isArray(value)) {\n array = true;\n braces = ['[', ']'];\n }\n\n // Make functions say that they are functions\n if (isFunction(value)) {\n var n = value.name ? ': ' + value.name : '';\n base = ' [Function' + n + ']';\n }\n\n // Make RegExps say that they are RegExps\n if (isRegExp(value)) {\n base = ' ' + RegExp.prototype.toString.call(value);\n }\n\n // Make dates with properties first say the date\n if (isDate(value)) {\n base = ' ' + Date.prototype.toUTCString.call(value);\n }\n\n // Make error with message first say the error\n if (isError(value)) {\n base = ' ' + formatError(value);\n }\n\n if (keys.length === 0 && (!array || value.length == 0)) {\n return braces[0] + base + braces[1];\n }\n\n if (recurseTimes < 0) {\n if (isRegExp(value)) {\n return ctx.stylize(RegExp.prototype.toString.call(value), 'regexp');\n } else {\n return ctx.stylize('[Object]', 'special');\n }\n }\n\n ctx.seen.push(value);\n\n var output;\n if (array) {\n output = formatArray(ctx, value, recurseTimes, visibleKeys, keys);\n } else {\n output = keys.map(function(key) {\n return formatProperty(ctx, value, recurseTimes, visibleKeys, key, array);\n });\n }\n\n ctx.seen.pop();\n\n return reduceToSingleString(output, base, braces);\n}\n\n\nfunction formatPrimitive(ctx, value) {\n if (isUndefined(value))\n return ctx.stylize('undefined', 'undefined');\n if (isString(value)) {\n var simple = '\\'' + JSON.stringify(value).replace(/^\"|\"$/g, '')\n .replace(/'/g, \"\\\\'\")\n .replace(/\\\\\"/g, '\"') + '\\'';\n return ctx.stylize(simple, 'string');\n }\n if (isNumber(value))\n return ctx.stylize('' + value, 'number');\n if (isBoolean(value))\n return ctx.stylize('' + value, 'boolean');\n // For some reason typeof null is \"object\", so special case here.\n if (isNull(value))\n return ctx.stylize('null', 'null');\n}\n\n\nfunction formatError(value) {\n return '[' + Error.prototype.toString.call(value) + ']';\n}\n\n\nfunction formatArray(ctx, value, recurseTimes, visibleKeys, keys) {\n var output = [];\n for (var i = 0, l = value.length; i < l; ++i) {\n if (hasOwnProperty(value, String(i))) {\n output.push(formatProperty(ctx, value, recurseTimes, visibleKeys,\n String(i), true));\n } else {\n output.push('');\n }\n }\n keys.forEach(function(key) {\n if (!key.match(/^\\d+$/)) {\n output.push(formatProperty(ctx, value, recurseTimes, visibleKeys,\n key, true));\n }\n });\n return output;\n}\n\n\nfunction formatProperty(ctx, value, recurseTimes, visibleKeys, key, array) {\n var name, str, desc;\n desc = Object.getOwnPropertyDescriptor(value, key) || { value: value[key] };\n if (desc.get) {\n if (desc.set) {\n str = ctx.stylize('[Getter/Setter]', 'special');\n } else {\n str = ctx.stylize('[Getter]', 'special');\n }\n } else {\n if (desc.set) {\n str = ctx.stylize('[Setter]', 'special');\n }\n }\n if (!hasOwnProperty(visibleKeys, key)) {\n name = '[' + key + ']';\n }\n if (!str) {\n if (ctx.seen.indexOf(desc.value) < 0) {\n if (isNull(recurseTimes)) {\n str = formatValue(ctx, desc.value, null);\n } else {\n str = formatValue(ctx, desc.value, recurseTimes - 1);\n }\n if (str.indexOf('\\n') > -1) {\n if (array) {\n str = str.split('\\n').map(function(line) {\n return ' ' + line;\n }).join('\\n').substr(2);\n } else {\n str = '\\n' + str.split('\\n').map(function(line) {\n return ' ' + line;\n }).join('\\n');\n }\n }\n } else {\n str = ctx.stylize('[Circular]', 'special');\n }\n }\n if (isUndefined(name)) {\n if (array && key.match(/^\\d+$/)) {\n return str;\n }\n name = JSON.stringify('' + key);\n if (name.match(/^\"([a-zA-Z_][a-zA-Z_0-9]*)\"$/)) {\n name = name.substr(1, name.length - 2);\n name = ctx.stylize(name, 'name');\n } else {\n name = name.replace(/'/g, \"\\\\'\")\n .replace(/\\\\\"/g, '\"')\n .replace(/(^\"|\"$)/g, \"'\");\n name = ctx.stylize(name, 'string');\n }\n }\n\n return name + ': ' + str;\n}\n\n\nfunction reduceToSingleString(output, base, braces) {\n var numLinesEst = 0;\n var length = output.reduce(function(prev, cur) {\n numLinesEst++;\n if (cur.indexOf('\\n') >= 0) numLinesEst++;\n return prev + cur.replace(/\\u001b\\[\\d\\d?m/g, '').length + 1;\n }, 0);\n\n if (length > 60) {\n return braces[0] +\n (base === '' ? '' : base + '\\n ') +\n ' ' +\n output.join(',\\n ') +\n ' ' +\n braces[1];\n }\n\n return braces[0] + base + ' ' + output.join(', ') + ' ' + braces[1];\n}\n\n\n// NOTE: These type checking functions intentionally don't use `instanceof`\n// because it is fragile and can be easily faked with `Object.create()`.\nfunction isArray(ar) {\n return Array.isArray(ar);\n}\nexports.isArray = isArray;\n\nfunction isBoolean(arg) {\n return typeof arg === 'boolean';\n}\nexports.isBoolean = isBoolean;\n\nfunction isNull(arg) {\n return arg === null;\n}\nexports.isNull = isNull;\n\nfunction isNullOrUndefined(arg) {\n return arg == null;\n}\nexports.isNullOrUndefined = isNullOrUndefined;\n\nfunction isNumber(arg) {\n return typeof arg === 'number';\n}\nexports.isNumber = isNumber;\n\nfunction isString(arg) {\n return typeof arg === 'string';\n}\nexports.isString = isString;\n\nfunction isSymbol(arg) {\n return typeof arg === 'symbol';\n}\nexports.isSymbol = isSymbol;\n\nfunction isUndefined(arg) {\n return arg === void 0;\n}\nexports.isUndefined = isUndefined;\n\nfunction isRegExp(re) {\n return isObject(re) && objectToString(re) === '[object RegExp]';\n}\nexports.isRegExp = isRegExp;\n\nfunction isObject(arg) {\n return typeof arg === 'object' && arg !== null;\n}\nexports.isObject = isObject;\n\nfunction isDate(d) {\n return isObject(d) && objectToString(d) === '[object Date]';\n}\nexports.isDate = isDate;\n\nfunction isError(e) {\n return isObject(e) &&\n (objectToString(e) === '[object Error]' || e instanceof Error);\n}\nexports.isError = isError;\n\nfunction isFunction(arg) {\n return typeof arg === 'function';\n}\nexports.isFunction = isFunction;\n\nfunction isPrimitive(arg) {\n return arg === null ||\n typeof arg === 'boolean' ||\n typeof arg === 'number' ||\n typeof arg === 'string' ||\n typeof arg === 'symbol' || // ES6 symbol\n typeof arg === 'undefined';\n}\nexports.isPrimitive = isPrimitive;\n\nexports.isBuffer = require('./support/isBuffer');\n\nfunction objectToString(o) {\n return Object.prototype.toString.call(o);\n}\n\n\nfunction pad(n) {\n return n < 10 ? '0' + n.toString(10) : n.toString(10);\n}\n\n\nvar months = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep',\n 'Oct', 'Nov', 'Dec'];\n\n// 26 Feb 16:19:34\nfunction timestamp() {\n var d = new Date();\n var time = [pad(d.getHours()),\n pad(d.getMinutes()),\n pad(d.getSeconds())].join(':');\n return [d.getDate(), months[d.getMonth()], time].join(' ');\n}\n\n\n// log is just a thin wrapper to console.log that prepends a timestamp\nexports.log = function() {\n console.log('%s - %s', timestamp(), exports.format.apply(exports, arguments));\n};\n\n\n/**\n * Inherit the prototype methods from one constructor into another.\n *\n * The Function.prototype.inherits from lang.js rewritten as a standalone\n * function (not on Function.prototype). NOTE: If this file is to be loaded\n * during bootstrapping this function needs to be rewritten using some native\n * functions as prototype setup using normal JavaScript does not work as\n * expected during bootstrapping (see mirror.js in r114903).\n *\n * @param {function} ctor Constructor function which needs to inherit the\n * prototype.\n * @param {function} superCtor Constructor function to inherit prototype from.\n */\nexports.inherits = require('inherits');\n\nexports._extend = function(origin, add) {\n // Don't do anything if add isn't an object\n if (!add || !isObject(add)) return origin;\n\n var keys = Object.keys(add);\n var i = keys.length;\n while (i--) {\n origin[keys[i]] = add[keys[i]];\n }\n return origin;\n};\n\nfunction hasOwnProperty(obj, prop) {\n return Object.prototype.hasOwnProperty.call(obj, prop);\n}\n","\n/**\n * @copyright Copyright (c) 2020 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n\nconst hideDownloadElmt = document.getElementById('hideDownload')\n// true = hidden download\nexport default () => !hideDownloadElmt || (hideDownloadElmt && hideDownloadElmt.value !== 'true')\n","/**\n * @copyright Copyright (c) 2020 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\nexport default function() {\n\t// Not within iframe\n\tif (window.location !== window.parent.location) {\n\t\treturn\n\t}\n\n\twindow.location.href = '/'\n}\n","/*global window, global*/\nvar util = require(\"util\")\nvar assert = require(\"assert\")\nfunction now() { return new Date().getTime() }\n\nvar slice = Array.prototype.slice\nvar console\nvar times = {}\n\nif (typeof global !== \"undefined\" && global.console) {\n console = global.console\n} else if (typeof window !== \"undefined\" && window.console) {\n console = window.console\n} else {\n console = {}\n}\n\nvar functions = [\n [log, \"log\"],\n [info, \"info\"],\n [warn, \"warn\"],\n [error, \"error\"],\n [time, \"time\"],\n [timeEnd, \"timeEnd\"],\n [trace, \"trace\"],\n [dir, \"dir\"],\n [consoleAssert, \"assert\"]\n]\n\nfor (var i = 0; i < functions.length; i++) {\n var tuple = functions[i]\n var f = tuple[0]\n var name = tuple[1]\n\n if (!console[name]) {\n console[name] = f\n }\n}\n\nmodule.exports = console\n\nfunction log() {}\n\nfunction info() {\n console.log.apply(console, arguments)\n}\n\nfunction warn() {\n console.log.apply(console, arguments)\n}\n\nfunction error() {\n console.warn.apply(console, arguments)\n}\n\nfunction time(label) {\n times[label] = now()\n}\n\nfunction timeEnd(label) {\n var time = times[label]\n if (!time) {\n throw new Error(\"No such label: \" + label)\n }\n\n delete times[label]\n var duration = now() - time\n console.log(label + \": \" + duration + \"ms\")\n}\n\nfunction trace() {\n var err = new Error()\n err.name = \"Trace\"\n err.message = util.format.apply(null, arguments)\n console.error(err.stack)\n}\n\nfunction dir(object) {\n console.log(util.inspect(object) + \"\\n\")\n}\n\nfunction consoleAssert(expression) {\n if (!expression) {\n var arr = slice.call(arguments, 1)\n assert.ok(false, util.format.apply(null, arr))\n }\n}\n","/*\nobject-assign\n(c) Sindre Sorhus\n@license MIT\n*/\n\n'use strict';\n/* eslint-disable no-unused-vars */\nvar getOwnPropertySymbols = Object.getOwnPropertySymbols;\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nvar propIsEnumerable = Object.prototype.propertyIsEnumerable;\n\nfunction toObject(val) {\n\tif (val === null || val === undefined) {\n\t\tthrow new TypeError('Object.assign cannot be called with null or undefined');\n\t}\n\n\treturn Object(val);\n}\n\nfunction shouldUseNative() {\n\ttry {\n\t\tif (!Object.assign) {\n\t\t\treturn false;\n\t\t}\n\n\t\t// Detect buggy property enumeration order in older V8 versions.\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=4118\n\t\tvar test1 = new String('abc'); // eslint-disable-line no-new-wrappers\n\t\ttest1[5] = 'de';\n\t\tif (Object.getOwnPropertyNames(test1)[0] === '5') {\n\t\t\treturn false;\n\t\t}\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\tvar test2 = {};\n\t\tfor (var i = 0; i < 10; i++) {\n\t\t\ttest2['_' + String.fromCharCode(i)] = i;\n\t\t}\n\t\tvar order2 = Object.getOwnPropertyNames(test2).map(function (n) {\n\t\t\treturn test2[n];\n\t\t});\n\t\tif (order2.join('') !== '0123456789') {\n\t\t\treturn false;\n\t\t}\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\tvar test3 = {};\n\t\t'abcdefghijklmnopqrst'.split('').forEach(function (letter) {\n\t\t\ttest3[letter] = letter;\n\t\t});\n\t\tif (Object.keys(Object.assign({}, test3)).join('') !==\n\t\t\t\t'abcdefghijklmnopqrst') {\n\t\t\treturn false;\n\t\t}\n\n\t\treturn true;\n\t} catch (err) {\n\t\t// We don't expect any of the above to throw, but better to be safe.\n\t\treturn false;\n\t}\n}\n\nmodule.exports = shouldUseNative() ? Object.assign : function (target, source) {\n\tvar from;\n\tvar to = toObject(target);\n\tvar symbols;\n\n\tfor (var s = 1; s < arguments.length; s++) {\n\t\tfrom = Object(arguments[s]);\n\n\t\tfor (var key in from) {\n\t\t\tif (hasOwnProperty.call(from, key)) {\n\t\t\t\tto[key] = from[key];\n\t\t\t}\n\t\t}\n\n\t\tif (getOwnPropertySymbols) {\n\t\t\tsymbols = getOwnPropertySymbols(from);\n\t\t\tfor (var i = 0; i < symbols.length; i++) {\n\t\t\t\tif (propIsEnumerable.call(from, symbols[i])) {\n\t\t\t\t\tto[symbols[i]] = from[symbols[i]];\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\treturn to;\n};\n","// shim for using process in browser\nvar process = module.exports = {};\n\n// cached from whatever global is present so that test runners that stub it\n// don't break things. But we need to wrap it in a try catch in case it is\n// wrapped in strict mode code which doesn't define any globals. It's inside a\n// function because try/catches deoptimize in certain engines.\n\nvar cachedSetTimeout;\nvar cachedClearTimeout;\n\nfunction defaultSetTimout() {\n throw new Error('setTimeout has not been defined');\n}\nfunction defaultClearTimeout () {\n throw new Error('clearTimeout has not been defined');\n}\n(function () {\n try {\n if (typeof setTimeout === 'function') {\n cachedSetTimeout = setTimeout;\n } else {\n cachedSetTimeout = defaultSetTimout;\n }\n } catch (e) {\n cachedSetTimeout = defaultSetTimout;\n }\n try {\n if (typeof clearTimeout === 'function') {\n cachedClearTimeout = clearTimeout;\n } else {\n cachedClearTimeout = defaultClearTimeout;\n }\n } catch (e) {\n cachedClearTimeout = defaultClearTimeout;\n }\n} ())\nfunction runTimeout(fun) {\n if (cachedSetTimeout === setTimeout) {\n //normal enviroments in sane situations\n return setTimeout(fun, 0);\n }\n // if setTimeout wasn't available but was latter defined\n if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {\n cachedSetTimeout = setTimeout;\n return setTimeout(fun, 0);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedSetTimeout(fun, 0);\n } catch(e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedSetTimeout.call(null, fun, 0);\n } catch(e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error\n return cachedSetTimeout.call(this, fun, 0);\n }\n }\n\n\n}\nfunction runClearTimeout(marker) {\n if (cachedClearTimeout === clearTimeout) {\n //normal enviroments in sane situations\n return clearTimeout(marker);\n }\n // if clearTimeout wasn't available but was latter defined\n if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {\n cachedClearTimeout = clearTimeout;\n return clearTimeout(marker);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedClearTimeout(marker);\n } catch (e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedClearTimeout.call(null, marker);\n } catch (e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.\n // Some versions of I.E. have different rules for clearTimeout vs setTimeout\n return cachedClearTimeout.call(this, marker);\n }\n }\n\n\n\n}\nvar queue = [];\nvar draining = false;\nvar currentQueue;\nvar queueIndex = -1;\n\nfunction cleanUpNextTick() {\n if (!draining || !currentQueue) {\n return;\n }\n draining = false;\n if (currentQueue.length) {\n queue = currentQueue.concat(queue);\n } else {\n queueIndex = -1;\n }\n if (queue.length) {\n drainQueue();\n }\n}\n\nfunction drainQueue() {\n if (draining) {\n return;\n }\n var timeout = runTimeout(cleanUpNextTick);\n draining = true;\n\n var len = queue.length;\n while(len) {\n currentQueue = queue;\n queue = [];\n while (++queueIndex < len) {\n if (currentQueue) {\n currentQueue[queueIndex].run();\n }\n }\n queueIndex = -1;\n len = queue.length;\n }\n currentQueue = null;\n draining = false;\n runClearTimeout(timeout);\n}\n\nprocess.nextTick = function (fun) {\n var args = new Array(arguments.length - 1);\n if (arguments.length > 1) {\n for (var i = 1; i < arguments.length; i++) {\n args[i - 1] = arguments[i];\n }\n }\n queue.push(new Item(fun, args));\n if (queue.length === 1 && !draining) {\n runTimeout(drainQueue);\n }\n};\n\n// v8 likes predictible objects\nfunction Item(fun, array) {\n this.fun = fun;\n this.array = array;\n}\nItem.prototype.run = function () {\n this.fun.apply(null, this.array);\n};\nprocess.title = 'browser';\nprocess.browser = true;\nprocess.env = {};\nprocess.argv = [];\nprocess.version = ''; // empty string to avoid regexp issues\nprocess.versions = {};\n\nfunction noop() {}\n\nprocess.on = noop;\nprocess.addListener = noop;\nprocess.once = noop;\nprocess.off = noop;\nprocess.removeListener = noop;\nprocess.removeAllListeners = noop;\nprocess.emit = noop;\nprocess.prependListener = noop;\nprocess.prependOnceListener = noop;\n\nprocess.listeners = function (name) { return [] }\n\nprocess.binding = function (name) {\n throw new Error('process.binding is not supported');\n};\n\nprocess.cwd = function () { return '/' };\nprocess.chdir = function (dir) {\n throw new Error('process.chdir is not supported');\n};\nprocess.umask = function() { return 0; };\n","if (typeof Object.create === 'function') {\n // implementation from standard node.js 'util' module\n module.exports = function inherits(ctor, superCtor) {\n ctor.super_ = superCtor\n ctor.prototype = Object.create(superCtor.prototype, {\n constructor: {\n value: ctor,\n enumerable: false,\n writable: true,\n configurable: true\n }\n });\n };\n} else {\n // old school shim for old browsers\n module.exports = function inherits(ctor, superCtor) {\n ctor.super_ = superCtor\n var TempCtor = function () {}\n TempCtor.prototype = superCtor.prototype\n ctor.prototype = new TempCtor()\n ctor.prototype.constructor = ctor\n }\n}\n","module.exports = function isBuffer(arg) {\n return arg && typeof arg === 'object'\n && typeof arg.copy === 'function'\n && typeof arg.fill === 'function'\n && typeof arg.readUInt8 === 'function';\n}","// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\nvar getOwnPropertyDescriptors = Object.getOwnPropertyDescriptors ||\n function getOwnPropertyDescriptors(obj) {\n var keys = Object.keys(obj);\n var descriptors = {};\n for (var i = 0; i < keys.length; i++) {\n descriptors[keys[i]] = Object.getOwnPropertyDescriptor(obj, keys[i]);\n }\n return descriptors;\n };\n\nvar formatRegExp = /%[sdj%]/g;\nexports.format = function(f) {\n if (!isString(f)) {\n var objects = [];\n for (var i = 0; i < arguments.length; i++) {\n objects.push(inspect(arguments[i]));\n }\n return objects.join(' ');\n }\n\n var i = 1;\n var args = arguments;\n var len = args.length;\n var str = String(f).replace(formatRegExp, function(x) {\n if (x === '%%') return '%';\n if (i >= len) return x;\n switch (x) {\n case '%s': return String(args[i++]);\n case '%d': return Number(args[i++]);\n case '%j':\n try {\n return JSON.stringify(args[i++]);\n } catch (_) {\n return '[Circular]';\n }\n default:\n return x;\n }\n });\n for (var x = args[i]; i < len; x = args[++i]) {\n if (isNull(x) || !isObject(x)) {\n str += ' ' + x;\n } else {\n str += ' ' + inspect(x);\n }\n }\n return str;\n};\n\n\n// Mark that a method should not be used.\n// Returns a modified function which warns once by default.\n// If --no-deprecation is set, then it is a no-op.\nexports.deprecate = function(fn, msg) {\n if (typeof process !== 'undefined' && process.noDeprecation === true) {\n return fn;\n }\n\n // Allow for deprecating things in the process of starting up.\n if (typeof process === 'undefined') {\n return function() {\n return exports.deprecate(fn, msg).apply(this, arguments);\n };\n }\n\n var warned = false;\n function deprecated() {\n if (!warned) {\n if (process.throwDeprecation) {\n throw new Error(msg);\n } else if (process.traceDeprecation) {\n console.trace(msg);\n } else {\n console.error(msg);\n }\n warned = true;\n }\n return fn.apply(this, arguments);\n }\n\n return deprecated;\n};\n\n\nvar debugs = {};\nvar debugEnviron;\nexports.debuglog = function(set) {\n if (isUndefined(debugEnviron))\n debugEnviron = process.env.NODE_DEBUG || '';\n set = set.toUpperCase();\n if (!debugs[set]) {\n if (new RegExp('\\\\b' + set + '\\\\b', 'i').test(debugEnviron)) {\n var pid = process.pid;\n debugs[set] = function() {\n var msg = exports.format.apply(exports, arguments);\n console.error('%s %d: %s', set, pid, msg);\n };\n } else {\n debugs[set] = function() {};\n }\n }\n return debugs[set];\n};\n\n\n/**\n * Echos the value of a value. Trys to print the value out\n * in the best way possible given the different types.\n *\n * @param {Object} obj The object to print out.\n * @param {Object} opts Optional options object that alters the output.\n */\n/* legacy: obj, showHidden, depth, colors*/\nfunction inspect(obj, opts) {\n // default options\n var ctx = {\n seen: [],\n stylize: stylizeNoColor\n };\n // legacy...\n if (arguments.length >= 3) ctx.depth = arguments[2];\n if (arguments.length >= 4) ctx.colors = arguments[3];\n if (isBoolean(opts)) {\n // legacy...\n ctx.showHidden = opts;\n } else if (opts) {\n // got an \"options\" object\n exports._extend(ctx, opts);\n }\n // set default options\n if (isUndefined(ctx.showHidden)) ctx.showHidden = false;\n if (isUndefined(ctx.depth)) ctx.depth = 2;\n if (isUndefined(ctx.colors)) ctx.colors = false;\n if (isUndefined(ctx.customInspect)) ctx.customInspect = true;\n if (ctx.colors) ctx.stylize = stylizeWithColor;\n return formatValue(ctx, obj, ctx.depth);\n}\nexports.inspect = inspect;\n\n\n// http://en.wikipedia.org/wiki/ANSI_escape_code#graphics\ninspect.colors = {\n 'bold' : [1, 22],\n 'italic' : [3, 23],\n 'underline' : [4, 24],\n 'inverse' : [7, 27],\n 'white' : [37, 39],\n 'grey' : [90, 39],\n 'black' : [30, 39],\n 'blue' : [34, 39],\n 'cyan' : [36, 39],\n 'green' : [32, 39],\n 'magenta' : [35, 39],\n 'red' : [31, 39],\n 'yellow' : [33, 39]\n};\n\n// Don't use 'blue' not visible on cmd.exe\ninspect.styles = {\n 'special': 'cyan',\n 'number': 'yellow',\n 'boolean': 'yellow',\n 'undefined': 'grey',\n 'null': 'bold',\n 'string': 'green',\n 'date': 'magenta',\n // \"name\": intentionally not styling\n 'regexp': 'red'\n};\n\n\nfunction stylizeWithColor(str, styleType) {\n var style = inspect.styles[styleType];\n\n if (style) {\n return '\\u001b[' + inspect.colors[style][0] + 'm' + str +\n '\\u001b[' + inspect.colors[style][1] + 'm';\n } else {\n return str;\n }\n}\n\n\nfunction stylizeNoColor(str, styleType) {\n return str;\n}\n\n\nfunction arrayToHash(array) {\n var hash = {};\n\n array.forEach(function(val, idx) {\n hash[val] = true;\n });\n\n return hash;\n}\n\n\nfunction formatValue(ctx, value, recurseTimes) {\n // Provide a hook for user-specified inspect functions.\n // Check that value is an object with an inspect function on it\n if (ctx.customInspect &&\n value &&\n isFunction(value.inspect) &&\n // Filter out the util module, it's inspect function is special\n value.inspect !== exports.inspect &&\n // Also filter out any prototype objects using the circular check.\n !(value.constructor && value.constructor.prototype === value)) {\n var ret = value.inspect(recurseTimes, ctx);\n if (!isString(ret)) {\n ret = formatValue(ctx, ret, recurseTimes);\n }\n return ret;\n }\n\n // Primitive types cannot have properties\n var primitive = formatPrimitive(ctx, value);\n if (primitive) {\n return primitive;\n }\n\n // Look up the keys of the object.\n var keys = Object.keys(value);\n var visibleKeys = arrayToHash(keys);\n\n if (ctx.showHidden) {\n keys = Object.getOwnPropertyNames(value);\n }\n\n // IE doesn't make error fields non-enumerable\n // http://msdn.microsoft.com/en-us/library/ie/dww52sbt(v=vs.94).aspx\n if (isError(value)\n && (keys.indexOf('message') >= 0 || keys.indexOf('description') >= 0)) {\n return formatError(value);\n }\n\n // Some type of object without properties can be shortcutted.\n if (keys.length === 0) {\n if (isFunction(value)) {\n var name = value.name ? ': ' + value.name : '';\n return ctx.stylize('[Function' + name + ']', 'special');\n }\n if (isRegExp(value)) {\n return ctx.stylize(RegExp.prototype.toString.call(value), 'regexp');\n }\n if (isDate(value)) {\n return ctx.stylize(Date.prototype.toString.call(value), 'date');\n }\n if (isError(value)) {\n return formatError(value);\n }\n }\n\n var base = '', array = false, braces = ['{', '}'];\n\n // Make Array say that they are Array\n if (isArray(value)) {\n array = true;\n braces = ['[', ']'];\n }\n\n // Make functions say that they are functions\n if (isFunction(value)) {\n var n = value.name ? ': ' + value.name : '';\n base = ' [Function' + n + ']';\n }\n\n // Make RegExps say that they are RegExps\n if (isRegExp(value)) {\n base = ' ' + RegExp.prototype.toString.call(value);\n }\n\n // Make dates with properties first say the date\n if (isDate(value)) {\n base = ' ' + Date.prototype.toUTCString.call(value);\n }\n\n // Make error with message first say the error\n if (isError(value)) {\n base = ' ' + formatError(value);\n }\n\n if (keys.length === 0 && (!array || value.length == 0)) {\n return braces[0] + base + braces[1];\n }\n\n if (recurseTimes < 0) {\n if (isRegExp(value)) {\n return ctx.stylize(RegExp.prototype.toString.call(value), 'regexp');\n } else {\n return ctx.stylize('[Object]', 'special');\n }\n }\n\n ctx.seen.push(value);\n\n var output;\n if (array) {\n output = formatArray(ctx, value, recurseTimes, visibleKeys, keys);\n } else {\n output = keys.map(function(key) {\n return formatProperty(ctx, value, recurseTimes, visibleKeys, key, array);\n });\n }\n\n ctx.seen.pop();\n\n return reduceToSingleString(output, base, braces);\n}\n\n\nfunction formatPrimitive(ctx, value) {\n if (isUndefined(value))\n return ctx.stylize('undefined', 'undefined');\n if (isString(value)) {\n var simple = '\\'' + JSON.stringify(value).replace(/^\"|\"$/g, '')\n .replace(/'/g, \"\\\\'\")\n .replace(/\\\\\"/g, '\"') + '\\'';\n return ctx.stylize(simple, 'string');\n }\n if (isNumber(value))\n return ctx.stylize('' + value, 'number');\n if (isBoolean(value))\n return ctx.stylize('' + value, 'boolean');\n // For some reason typeof null is \"object\", so special case here.\n if (isNull(value))\n return ctx.stylize('null', 'null');\n}\n\n\nfunction formatError(value) {\n return '[' + Error.prototype.toString.call(value) + ']';\n}\n\n\nfunction formatArray(ctx, value, recurseTimes, visibleKeys, keys) {\n var output = [];\n for (var i = 0, l = value.length; i < l; ++i) {\n if (hasOwnProperty(value, String(i))) {\n output.push(formatProperty(ctx, value, recurseTimes, visibleKeys,\n String(i), true));\n } else {\n output.push('');\n }\n }\n keys.forEach(function(key) {\n if (!key.match(/^\\d+$/)) {\n output.push(formatProperty(ctx, value, recurseTimes, visibleKeys,\n key, true));\n }\n });\n return output;\n}\n\n\nfunction formatProperty(ctx, value, recurseTimes, visibleKeys, key, array) {\n var name, str, desc;\n desc = Object.getOwnPropertyDescriptor(value, key) || { value: value[key] };\n if (desc.get) {\n if (desc.set) {\n str = ctx.stylize('[Getter/Setter]', 'special');\n } else {\n str = ctx.stylize('[Getter]', 'special');\n }\n } else {\n if (desc.set) {\n str = ctx.stylize('[Setter]', 'special');\n }\n }\n if (!hasOwnProperty(visibleKeys, key)) {\n name = '[' + key + ']';\n }\n if (!str) {\n if (ctx.seen.indexOf(desc.value) < 0) {\n if (isNull(recurseTimes)) {\n str = formatValue(ctx, desc.value, null);\n } else {\n str = formatValue(ctx, desc.value, recurseTimes - 1);\n }\n if (str.indexOf('\\n') > -1) {\n if (array) {\n str = str.split('\\n').map(function(line) {\n return ' ' + line;\n }).join('\\n').substr(2);\n } else {\n str = '\\n' + str.split('\\n').map(function(line) {\n return ' ' + line;\n }).join('\\n');\n }\n }\n } else {\n str = ctx.stylize('[Circular]', 'special');\n }\n }\n if (isUndefined(name)) {\n if (array && key.match(/^\\d+$/)) {\n return str;\n }\n name = JSON.stringify('' + key);\n if (name.match(/^\"([a-zA-Z_][a-zA-Z_0-9]*)\"$/)) {\n name = name.substr(1, name.length - 2);\n name = ctx.stylize(name, 'name');\n } else {\n name = name.replace(/'/g, \"\\\\'\")\n .replace(/\\\\\"/g, '\"')\n .replace(/(^\"|\"$)/g, \"'\");\n name = ctx.stylize(name, 'string');\n }\n }\n\n return name + ': ' + str;\n}\n\n\nfunction reduceToSingleString(output, base, braces) {\n var numLinesEst = 0;\n var length = output.reduce(function(prev, cur) {\n numLinesEst++;\n if (cur.indexOf('\\n') >= 0) numLinesEst++;\n return prev + cur.replace(/\\u001b\\[\\d\\d?m/g, '').length + 1;\n }, 0);\n\n if (length > 60) {\n return braces[0] +\n (base === '' ? '' : base + '\\n ') +\n ' ' +\n output.join(',\\n ') +\n ' ' +\n braces[1];\n }\n\n return braces[0] + base + ' ' + output.join(', ') + ' ' + braces[1];\n}\n\n\n// NOTE: These type checking functions intentionally don't use `instanceof`\n// because it is fragile and can be easily faked with `Object.create()`.\nfunction isArray(ar) {\n return Array.isArray(ar);\n}\nexports.isArray = isArray;\n\nfunction isBoolean(arg) {\n return typeof arg === 'boolean';\n}\nexports.isBoolean = isBoolean;\n\nfunction isNull(arg) {\n return arg === null;\n}\nexports.isNull = isNull;\n\nfunction isNullOrUndefined(arg) {\n return arg == null;\n}\nexports.isNullOrUndefined = isNullOrUndefined;\n\nfunction isNumber(arg) {\n return typeof arg === 'number';\n}\nexports.isNumber = isNumber;\n\nfunction isString(arg) {\n return typeof arg === 'string';\n}\nexports.isString = isString;\n\nfunction isSymbol(arg) {\n return typeof arg === 'symbol';\n}\nexports.isSymbol = isSymbol;\n\nfunction isUndefined(arg) {\n return arg === void 0;\n}\nexports.isUndefined = isUndefined;\n\nfunction isRegExp(re) {\n return isObject(re) && objectToString(re) === '[object RegExp]';\n}\nexports.isRegExp = isRegExp;\n\nfunction isObject(arg) {\n return typeof arg === 'object' && arg !== null;\n}\nexports.isObject = isObject;\n\nfunction isDate(d) {\n return isObject(d) && objectToString(d) === '[object Date]';\n}\nexports.isDate = isDate;\n\nfunction isError(e) {\n return isObject(e) &&\n (objectToString(e) === '[object Error]' || e instanceof Error);\n}\nexports.isError = isError;\n\nfunction isFunction(arg) {\n return typeof arg === 'function';\n}\nexports.isFunction = isFunction;\n\nfunction isPrimitive(arg) {\n return arg === null ||\n typeof arg === 'boolean' ||\n typeof arg === 'number' ||\n typeof arg === 'string' ||\n typeof arg === 'symbol' || // ES6 symbol\n typeof arg === 'undefined';\n}\nexports.isPrimitive = isPrimitive;\n\nexports.isBuffer = require('./support/isBuffer');\n\nfunction objectToString(o) {\n return Object.prototype.toString.call(o);\n}\n\n\nfunction pad(n) {\n return n < 10 ? '0' + n.toString(10) : n.toString(10);\n}\n\n\nvar months = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep',\n 'Oct', 'Nov', 'Dec'];\n\n// 26 Feb 16:19:34\nfunction timestamp() {\n var d = new Date();\n var time = [pad(d.getHours()),\n pad(d.getMinutes()),\n pad(d.getSeconds())].join(':');\n return [d.getDate(), months[d.getMonth()], time].join(' ');\n}\n\n\n// log is just a thin wrapper to console.log that prepends a timestamp\nexports.log = function() {\n console.log('%s - %s', timestamp(), exports.format.apply(exports, arguments));\n};\n\n\n/**\n * Inherit the prototype methods from one constructor into another.\n *\n * The Function.prototype.inherits from lang.js rewritten as a standalone\n * function (not on Function.prototype). NOTE: If this file is to be loaded\n * during bootstrapping this function needs to be rewritten using some native\n * functions as prototype setup using normal JavaScript does not work as\n * expected during bootstrapping (see mirror.js in r114903).\n *\n * @param {function} ctor Constructor function which needs to inherit the\n * prototype.\n * @param {function} superCtor Constructor function to inherit prototype from.\n */\nexports.inherits = require('inherits');\n\nexports._extend = function(origin, add) {\n // Don't do anything if add isn't an object\n if (!add || !isObject(add)) return origin;\n\n var keys = Object.keys(add);\n var i = keys.length;\n while (i--) {\n origin[keys[i]] = add[keys[i]];\n }\n return origin;\n};\n\nfunction hasOwnProperty(obj, prop) {\n return Object.prototype.hasOwnProperty.call(obj, prop);\n}\n\nvar kCustomPromisifiedSymbol = typeof Symbol !== 'undefined' ? Symbol('util.promisify.custom') : undefined;\n\nexports.promisify = function promisify(original) {\n if (typeof original !== 'function')\n throw new TypeError('The \"original\" argument must be of type Function');\n\n if (kCustomPromisifiedSymbol && original[kCustomPromisifiedSymbol]) {\n var fn = original[kCustomPromisifiedSymbol];\n if (typeof fn !== 'function') {\n throw new TypeError('The \"util.promisify.custom\" argument must be of type Function');\n }\n Object.defineProperty(fn, kCustomPromisifiedSymbol, {\n value: fn, enumerable: false, writable: false, configurable: true\n });\n return fn;\n }\n\n function fn() {\n var promiseResolve, promiseReject;\n var promise = new Promise(function (resolve, reject) {\n promiseResolve = resolve;\n promiseReject = reject;\n });\n\n var args = [];\n for (var i = 0; i < arguments.length; i++) {\n args.push(arguments[i]);\n }\n args.push(function (err, value) {\n if (err) {\n promiseReject(err);\n } else {\n promiseResolve(value);\n }\n });\n\n try {\n original.apply(this, args);\n } catch (err) {\n promiseReject(err);\n }\n\n return promise;\n }\n\n Object.setPrototypeOf(fn, Object.getPrototypeOf(original));\n\n if (kCustomPromisifiedSymbol) Object.defineProperty(fn, kCustomPromisifiedSymbol, {\n value: fn, enumerable: false, writable: false, configurable: true\n });\n return Object.defineProperties(\n fn,\n getOwnPropertyDescriptors(original)\n );\n}\n\nexports.promisify.custom = kCustomPromisifiedSymbol\n\nfunction callbackifyOnRejected(reason, cb) {\n // `!reason` guard inspired by bluebird (Ref: https://goo.gl/t5IS6M).\n // Because `null` is a special error value in callbacks which means \"no error\n // occurred\", we error-wrap so the callback consumer can distinguish between\n // \"the promise rejected with null\" or \"the promise fulfilled with undefined\".\n if (!reason) {\n var newReason = new Error('Promise was rejected with a falsy value');\n newReason.reason = reason;\n reason = newReason;\n }\n return cb(reason);\n}\n\nfunction callbackify(original) {\n if (typeof original !== 'function') {\n throw new TypeError('The \"original\" argument must be of type Function');\n }\n\n // We DO NOT return the promise as it gives the user a false sense that\n // the promise is actually somehow related to the callback's execution\n // and that the callback throwing will reject the promise.\n function callbackified() {\n var args = [];\n for (var i = 0; i < arguments.length; i++) {\n args.push(arguments[i]);\n }\n\n var maybeCb = args.pop();\n if (typeof maybeCb !== 'function') {\n throw new TypeError('The last argument must be of type Function');\n }\n var self = this;\n var cb = function() {\n return maybeCb.apply(self, arguments);\n };\n // In true node style we process the callback on `nextTick` with all the\n // implications (stack, `uncaughtException`, `async_hooks`)\n original.apply(this, args)\n .then(function(ret) { process.nextTick(cb, null, ret) },\n function(rej) { process.nextTick(callbackifyOnRejected, rej, cb) });\n }\n\n Object.setPrototypeOf(callbackified, Object.getPrototypeOf(original));\n Object.defineProperties(callbackified,\n getOwnPropertyDescriptors(original));\n return callbackified;\n}\nexports.callbackify = callbackify;\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](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","\n/**\n * @copyright Copyright (c) 2020 Daniel Calviño Sánchez <danxuliu@gmail.com>\n *\n * @author Daniel Calviño Sánchez <danxuliu@gmail.com>\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n\nimport canDownload from './utils/canDownload'\nimport redirectIfNotIframe from './utils/redirectIfNotIframe'\n\n/**\n * Checks if the page is displayed in an iframe. If not redirect to /.\n **/\nredirectIfNotIframe()\n\n// When \"PDFViewerApplication.webViewerInitialized\" is executed (once\n// \"PDFViewerApplication.initialize\" is done) it opens the PDF file via URL,\n// which requires the PDFViewerApplication to be properly configured, so the\n// custom initialization has to be executed before that. This can be done by\n// listening to the \"webviewerloaded\" event, which is emitted after\n// \"PDFViewerApplication\" and \"PDFViewerApplicationOptions\" are globally set and\n// before \"PDFViewerApplication.initialize\" is executed.\nfunction initializeCustomPDFViewerApplication() {\n\n\t// Preferences override options, so they must be disabled for\n\t// \"externalLinkTarget\" to take effect.\n\tPDFViewerApplicationOptions.set('disablePreferences', true)\n\tPDFViewerApplicationOptions.set('externalLinkTarget', pdfjsLib.LinkTarget.BLANK)\n\tPDFViewerApplicationOptions.set('isEvalSupported', false)\n\tPDFViewerApplicationOptions.set('workerSrc', document.getElementsByTagName('head')[0].getAttribute('data-workersrc'))\n\tPDFViewerApplicationOptions.set('cMapUrl', document.getElementsByTagName('head')[0].getAttribute('data-cmapurl'))\n\tPDFViewerApplicationOptions.set('enablePermissions', true)\n\n\tconsole.debug('Initialized files_pdfviewer', PDFViewerApplicationOptions.getAll())\n\n\t// The download has to be forced to use the URL of the file; by default\n\t// \"PDFViewerApplication.download\" uses a blob, but this causes a CSP error\n\t// (at least, in Firefox) when trying to download it.\n\tPDFViewerApplication.download = function() {\n\t\t// \"isDataSchema()\" and \"getPDFFileNameFromURL()\" are copied from\n\t\t// \"vendor/pdfjs/web/viewer.js\", as the functions defined in that file\n\t\t// can not be accessed from the outside.\n\t\tfunction isDataSchema(url) {\n\t\t\tlet i = 0\n\t\t\tconst ii = url.length\n\t\t\twhile (i < ii && url[i].trim() === '') {\n\t\t\t\ti++\n\t\t\t}\n\t\t\treturn url.substr(i, 5).toLowerCase() === 'data:'\n\t\t}\n\n\t\tfunction getPDFFileNameFromURL(url) {\n\t\t\tconst defaultFilename = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'document.pdf'\n\n\t\t\tif (isDataSchema(url)) {\n\t\t\t\tconsole.warn('getPDFFileNameFromURL: ' + 'ignoring \"data:\" URL for performance reasons.')\n\t\t\t\treturn defaultFilename\n\t\t\t}\n\t\t\tconst reURI = /^(?:(?:[^:]+:)?\\/\\/[^/]+)?([^?#]*)(\\?[^#]*)?(#.*)?$/\n\t\t\tconst reFilename = /[^/?#=]+\\.pdf\\b(?!.*\\.pdf\\b)/i\n\t\t\tconst splitURI = reURI.exec(url)\n\t\t\tlet suggestedFilename = reFilename.exec(splitURI[1]) || reFilename.exec(splitURI[2]) || reFilename.exec(splitURI[3])\n\t\t\tif (suggestedFilename) {\n\t\t\t\tsuggestedFilename = suggestedFilename[0]\n\t\t\t\tif (suggestedFilename.indexOf('%') !== -1) {\n\t\t\t\t\ttry {\n\t\t\t\t\t\tsuggestedFilename = reFilename.exec(decodeURIComponent(suggestedFilename))[0]\n\t\t\t\t\t} catch (e) {\n\t\t\t\t\t\tconsole.debug(e)\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn suggestedFilename || defaultFilename\n\t\t}\n\n\t\tconst url = decodeURIComponent(window.location.search.substr(6))\n\n\t\tthis.downloadManager.downloadUrl(url, getPDFFileNameFromURL(url))\n\t}\n\n\tif (!canDownload()) {\n\t\t// Disable download function when downloads are hidden, as even if the\n\t\t// buttons in the UI are hidden the download could still be triggered\n\t\t// with Ctrl|Meta+S.\n\t\tPDFViewerApplication.download = function() {\n\t\t}\n\t\tconst downloadButton = document.getElementById('toolbarViewerRight').querySelector('button.download')\n\t\tif (downloadButton) {\n\t\t\tdownloadButton.style.display = 'none'\n\t\t}\n\n\t\t// Disable printing service when downloads are hidden, as even if the\n\t\t// buttons in the UI are hidden the printing could still be triggered\n\t\t// with Ctrl|Meta+P.\n\t\t// Abuse the \"supportsPrinting\" parameter, which signals that the\n\t\t// browser does not fully support printing, to make PDFViewer disable\n\t\t// the printing service.\n\t\t// \"supportsPrinting\" is a getter function, so it needs to be deleted\n\t\t// before replacing it with a simple value.\n\t\tdelete PDFViewerApplication.supportsPrinting\n\t\tPDFViewerApplication.supportsPrinting = false\n\n\t\t// When printing is not supported a warning is shown by the default\n\t\t// \"beforePrint\" function when trying to print. That function needs to\n\t\t// be replaced with an empty one to prevent that warning to be shown.\n\t\tPDFViewerApplication.beforePrint = function() {\n\t\t}\n\n\t\t// For css properties\n\t\tdocument.getElementById('viewer').classList.add('disabledTextSelection')\n\n\t\tconsole.debug('Files_PDFViewer, download and print disabled')\n\t}\n}\n\ndocument.addEventListener('DOMContentLoaded', initializeCustomPDFViewerApplication, true)\n"],"sourceRoot":""} \ No newline at end of file
+{"version":3,"sources":["webpack:///files_pdfviewer/node_modules/assert/build/assert.js","webpack:///files_pdfviewer/node_modules/assert/build/internal/assert/assertion_error.js","webpack:///files_pdfviewer/node_modules/assert/build/internal/errors.js","webpack:///files_pdfviewer/node_modules/assert/build/internal/util/comparisons.js","webpack:///files_pdfviewer/node_modules/available-typed-arrays/index.js","webpack:///files_pdfviewer/src/utils/canDownload.js","webpack:///files_pdfviewer/src/utils/redirectIfNotIframe.js","webpack:///files_pdfviewer/node_modules/call-bind/callBound.js","webpack:///files_pdfviewer/node_modules/call-bind/index.js","webpack:///files_pdfviewer/node_modules/console-browserify/index.js","webpack:///files_pdfviewer/node_modules/define-properties/index.js","webpack:///files_pdfviewer/node_modules/es-abstract/helpers/getOwnPropertyDescriptor.js","webpack:///files_pdfviewer/node_modules/es6-object-assign/index.js","webpack:///files_pdfviewer/node_modules/foreach/index.js","webpack:///files_pdfviewer/node_modules/function-bind/implementation.js","webpack:///files_pdfviewer/node_modules/function-bind/index.js","webpack:///files_pdfviewer/node_modules/get-intrinsic/index.js","webpack:///files_pdfviewer/node_modules/has-symbols/index.js","webpack:///files_pdfviewer/node_modules/has-symbols/shams.js","webpack:///files_pdfviewer/node_modules/has/src/index.js","webpack:///files_pdfviewer/node_modules/inherits/inherits_browser.js","webpack:///files_pdfviewer/node_modules/is-arguments/index.js","webpack:///files_pdfviewer/node_modules/is-generator-function/index.js","webpack:///files_pdfviewer/node_modules/is-nan/implementation.js","webpack:///files_pdfviewer/node_modules/is-nan/index.js","webpack:///files_pdfviewer/node_modules/is-nan/polyfill.js","webpack:///files_pdfviewer/node_modules/is-nan/shim.js","webpack:///files_pdfviewer/node_modules/is-typed-array/index.js","webpack:///files_pdfviewer/node_modules/object-is/implementation.js","webpack:///files_pdfviewer/node_modules/object-is/index.js","webpack:///files_pdfviewer/node_modules/object-is/polyfill.js","webpack:///files_pdfviewer/node_modules/object-is/shim.js","webpack:///files_pdfviewer/node_modules/object-keys/implementation.js","webpack:///files_pdfviewer/node_modules/object-keys/index.js","webpack:///files_pdfviewer/node_modules/object-keys/isArguments.js","webpack:///files_pdfviewer/node_modules/process/browser.js","webpack:///files_pdfviewer/node_modules/util/support/isBufferBrowser.js","webpack:///files_pdfviewer/node_modules/util/support/types.js","webpack:///files_pdfviewer/node_modules/util/util.js","webpack:///files_pdfviewer/node_modules/which-typed-array/index.js","webpack:///files_pdfviewer/webpack/bootstrap","webpack:///files_pdfviewer/webpack/runtime/global","webpack:///files_pdfviewer/src/workersrc.js"],"names":["_typeof","obj","Symbol","iterator","constructor","prototype","isDeepEqual","isDeepStrictEqual","_require$codes","codes","ERR_AMBIGUOUS_ARGUMENT","ERR_INVALID_ARG_TYPE","ERR_INVALID_ARG_VALUE","ERR_INVALID_RETURN_VALUE","ERR_MISSING_ARGS","AssertionError","inspect","_require$types","isPromise","isRegExp","objectAssign","Object","assign","objectIs","is","Map","lazyLoadComparison","comparison","warned","assert","module","exports","ok","NO_EXCEPTION_SENTINEL","innerFail","message","Error","innerOk","fn","argLen","value","generatedMessage","err","actual","expected","operator","stackStartFn","_len","arguments","length","args","Array","_key","apply","concat","fail","internalMessage","argsLen","undefined","warn","process","emitWarning","console","bind","errArgs","equal","notEqual","deepEqual","notDeepEqual","deepStrictEqual","notDeepStrictEqual","strictEqual","notStrictEqual","Comparison","keys","_this","this","instance","Constructor","TypeError","_classCallCheck","forEach","key","test","compareExceptionKey","a","b","name","expectedException","msg","push","isPrototypeOf","call","getActual","e","checkIsPromise","then","catch","waitForActual","promiseFn","Promise","resolve","resultPromise","expectsError","error","details","fnType","expectsNoError","strict","_len6","_key6","throws","_len2","_key2","rejects","_len3","_key3","result","doesNotThrow","_len4","_key4","doesNotReject","_len5","_key5","ifError","newErr","origStack","stack","tmp2","split","shift","tmp1","i","pos","indexOf","slice","join","_defineProperty","defineProperty","enumerable","configurable","writable","_defineProperties","target","props","descriptor","_possibleConstructorReturn","self","_assertThisInitialized","ReferenceError","_wrapNativeSuper","Class","_cache","Function","toString","has","get","set","Wrapper","_construct","_getPrototypeOf","create","_setPrototypeOf","isNativeReflectConstruct","Reflect","construct","sham","Proxy","Date","Parent","o","p","setPrototypeOf","__proto__","getPrototypeOf","endsWith","str","search","this_len","substring","blue","green","red","white","kReadableOperator","strictEqualObject","notStrictEqualObject","notIdentical","copyError","source","inspectValue","val","compact","customInspect","depth","maxArrayLength","Infinity","showHidden","breakLength","showProxy","sorted","getters","createErrDiff","other","res","lastPos","end","skipped","actualInspected","actualLines","expectedLines","indicator","inputLength","stderr","isTTY","columns","count","Math","floor","maxCount","log","repeat","pop","maxLines","max","_actualLines","printedLines","skippedMsg","cur","expectedLine","actualLine","divergingLines","_Error","options","limit","stackTraceLimit","String","getColorDepth","base","_res","knownOperators","code","captureStackTrace","protoProps","staticProps","subClass","superClass","_inherits","custom","recurseTimes","ctx","ownKeys","getOwnPropertySymbols","filter","sym","getOwnPropertyDescriptor","_objectSpread","util","createErrorType","Base","NodeError","_Base","arg1","arg2","arg3","getMessage","oneOf","thing","isArray","len","map","determiner","substr","replace","type","start","includes","reason","inspected","RangeError","input","_slicedToArray","arr","_arrayWithHoles","_arr","_n","_d","_e","_s","_i","next","done","_iterableToArrayLimit","_nonIterableRest","regexFlagsSupported","flags","arrayFromSet","array","arrayFromMap","objectGetOwnPropertySymbols","numberIsNaN","Number","isNaN","uncurryThis","f","hasOwnProperty","propertyIsEnumerable","objectToString","isAnyArrayBuffer","isArrayBufferView","isDate","isMap","isSet","isNativeError","isBoxedPrimitive","isNumberObject","isStringObject","isBooleanObject","isBigIntObject","isSymbolObject","isFloat32Array","isFloat64Array","isNonIndex","charCodeAt","pow","getOwnNonIndexProperties","compare","x","y","min","innerDeepEqual","val1","val2","memos","buf1","buf2","val1Tag","keys1","keys2","keyCheck","getTime","RegExp","byteLength","Uint8Array","buffer","byteOffset","areSimilarTypedArrays","offset","areSimilarFloatArrays","_keys","_keys2","size","valueOf","Boolean","BigInt","isEqualBoxedPrimitive","getEnumerables","k","iterationType","aKeys","bKeys","symbolKeysA","symbolKeysB","_symbolKeysB","position","val2MemoA","val2MemoB","areEq","objEquiv","delete","setHasEqualElement","memo","setValues","findLooseMatchingPrimitives","prim","setMightHaveLoosePrim","altValue","mapMightHaveLoosePrim","item","curB","mapHasEqualEntry","key1","item1","key2","aValues","Set","add","bValues","_val","setEquiv","aEntries","_aEntries$i","item2","bEntries","_i2","_bEntries$_i","mapEquiv","keysA","possibleNames","out","g","hideDownloadElmt","document","getElementById","window","location","parent","href","GetIntrinsic","callBind","$indexOf","allowMissing","intrinsic","$apply","$call","$reflectApply","$gOPD","$defineProperty","$max","originalFunction","func","desc","applyBind","now","times","functions","label","time","duration","format","object","expression","tuple","hasSymbols","toStr","origDefineProperty","supportsDescriptors","_","arePropertyDescriptorsSupported","predicate","defineProperties","predicates","firstSource","to","nextSource","keysArray","nextIndex","nextKey","polyfill","hasOwn","l","ERROR_MESSAGE","funcType","that","bound","binder","boundLength","boundArgs","Empty","implementation","$SyntaxError","SyntaxError","$Function","$TypeError","getEvalledConstructor","expressionSyntax","throwTypeError","ThrowTypeError","calleeThrows","gOPDthrows","getProto","needsEval","TypedArray","INTRINSICS","AggregateError","ArrayBuffer","Atomics","DataView","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","eval","EvalError","Float32Array","Float64Array","FinalizationRegistry","Int8Array","Int16Array","Int32Array","isFinite","JSON","parseFloat","parseInt","SharedArrayBuffer","Uint8ClampedArray","Uint16Array","Uint32Array","URIError","WeakMap","WeakRef","WeakSet","doEval","gen","LEGACY_ALIASES","$concat","$spliceApply","splice","$replace","$strSlice","rePropName","reEscapeChar","stringToPath","string","first","last","match","number","quote","subString","getBaseIntrinsic","alias","intrinsicName","parts","intrinsicBaseName","intrinsicRealName","skipFurtherCaching","isOwn","part","origSymbol","hasSymbolSham","symObj","getOwnPropertyNames","syms","ctor","superCtor","super_","TempCtor","hasToStringTag","toStringTag","$toString","callBound","isStandardArguments","isLegacyArguments","callee","supportsStandardArguments","GeneratorFunction","fnToStr","isFnRegex","generatorFunc","getGeneratorFunc","define","getPolyfill","shim","NaN","availableTypedArrays","typedArrays","$slice","toStrTags","gOPD","typedArray","proto","superProto","tag","anyTrue","getter","tryTypedArrays","keysShim","isArgs","isEnumerable","hasDontEnumBug","hasProtoEnumBug","dontEnums","equalsConstructorPrototype","excludedKeys","$applicationCache","$console","$external","$frame","$frameElement","$frames","$innerHeight","$innerWidth","$onmozfullscreenchange","$onmozfullscreenerror","$outerHeight","$outerWidth","$pageXOffset","$pageYOffset","$parent","$scrollLeft","$scrollTop","$scrollX","$scrollY","$self","$webkitIndexedDB","$webkitStorageInfo","$window","hasAutomationEqualityBug","isObject","isFunction","isArguments","isString","theKeys","skipProto","j","skipConstructor","equalsConstructorPrototypeIfNotBuggy","origKeys","originalKeys","cachedSetTimeout","cachedClearTimeout","defaultSetTimout","defaultClearTimeout","runTimeout","fun","setTimeout","clearTimeout","currentQueue","queue","draining","queueIndex","cleanUpNextTick","drainQueue","timeout","run","marker","runClearTimeout","Item","noop","nextTick","title","browser","env","argv","version","versions","on","addListener","once","off","removeListener","removeAllListeners","emit","prependListener","prependOnceListener","listeners","binding","cwd","chdir","dir","umask","arg","copy","fill","readUInt8","isArgumentsObject","isGeneratorFunction","whichTypedArray","isTypedArray","BigIntSupported","SymbolSupported","ObjectToString","numberValue","stringValue","booleanValue","bigIntValue","symbolValue","checkBoxedPrimitive","prototypeValueOf","isMapToString","isSetToString","isWeakMapToString","isWeakSetToString","isArrayBufferToString","isArrayBuffer","working","isDataViewToString","isDataView","isView","isUint8Array","isUint8ClampedArray","isUint16Array","isUint32Array","isInt8Array","isInt16Array","isInt32Array","isBigInt64Array","isBigUint64Array","isWeakMap","isWeakSet","SharedArrayBufferCopy","isSharedArrayBufferToString","isSharedArrayBuffer","isAsyncFunction","isMapIterator","isSetIterator","isGeneratorObject","isWebAssemblyCompiledModule","method","getOwnPropertyDescriptors","descriptors","formatRegExp","objects","stringify","isNull","deprecate","noDeprecation","throwDeprecation","traceDeprecation","trace","debugs","debugEnvRegex","NODE_DEBUG","debugEnv","toUpperCase","opts","seen","stylize","stylizeNoColor","colors","isBoolean","_extend","isUndefined","stylizeWithColor","formatValue","styleType","style","styles","ret","primitive","simple","isNumber","formatPrimitive","visibleKeys","hash","idx","arrayToHash","isError","formatError","output","braces","toUTCString","formatProperty","formatArray","reduce","prev","numLinesEst","reduceToSingleString","line","ar","re","d","pad","n","debuglog","pid","types","isNullOrUndefined","isSymbol","isPrimitive","isBuffer","months","timestamp","getHours","getMinutes","getSeconds","getDate","getMonth","prop","inherits","origin","kCustomPromisifiedSymbol","callbackifyOnRejected","cb","newReason","promisify","original","promiseResolve","promiseReject","promise","reject","callbackify","callbackified","maybeCb","rej","foundName","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","__webpack_modules__","globalThis","addEventListener","PDFViewerApplicationOptions","pdfjsLib","LinkTarget","BLANK","getElementsByTagName","getAttribute","debug","getAll","PDFViewerApplication","download","isDataSchema","url","ii","trim","toLowerCase","downloadManager","downloadUrl","defaultFilename","reURI","reFilename","splitURI","exec","suggestedFilename","getPDFFileNameFromURL","downloadButton","querySelector","display","supportsPrinting","beforePrint","classList"],"mappings":"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","file":"files_pdfviewer-workersrc.js?v=486b46678911c20e2244","sourcesContent":["// Currently in sync with Node.js lib/assert.js\n// https://github.com/nodejs/node/commit/2a51ae424a513ec9a6aa3466baa0cc1d55dd4f3b\n// Originally from narwhal.js (http://narwhaljs.org)\n// Copyright (c) 2009 Thomas Robinson <280north.com>\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the 'Software'), to\n// deal in the Software without restriction, including without limitation the\n// rights to use, copy, modify, merge, publish, distribute, sublicense, and/or\n// sell copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN\n// ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION\n// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n'use strict';\n\nfunction _typeof(obj) { if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar _require = require('./internal/errors'),\n _require$codes = _require.codes,\n ERR_AMBIGUOUS_ARGUMENT = _require$codes.ERR_AMBIGUOUS_ARGUMENT,\n ERR_INVALID_ARG_TYPE = _require$codes.ERR_INVALID_ARG_TYPE,\n ERR_INVALID_ARG_VALUE = _require$codes.ERR_INVALID_ARG_VALUE,\n ERR_INVALID_RETURN_VALUE = _require$codes.ERR_INVALID_RETURN_VALUE,\n ERR_MISSING_ARGS = _require$codes.ERR_MISSING_ARGS;\n\nvar AssertionError = require('./internal/assert/assertion_error');\n\nvar _require2 = require('util/'),\n inspect = _require2.inspect;\n\nvar _require$types = require('util/').types,\n isPromise = _require$types.isPromise,\n isRegExp = _require$types.isRegExp;\n\nvar objectAssign = Object.assign ? Object.assign : require('es6-object-assign').assign;\nvar objectIs = Object.is ? Object.is : require('object-is');\nvar errorCache = new Map();\nvar isDeepEqual;\nvar isDeepStrictEqual;\nvar parseExpressionAt;\nvar findNodeAround;\nvar decoder;\n\nfunction lazyLoadComparison() {\n var comparison = require('./internal/util/comparisons');\n\n isDeepEqual = comparison.isDeepEqual;\n isDeepStrictEqual = comparison.isDeepStrictEqual;\n} // Escape control characters but not \\n and \\t to keep the line breaks and\n// indentation intact.\n// eslint-disable-next-line no-control-regex\n\n\nvar escapeSequencesRegExp = /[\\x00-\\x08\\x0b\\x0c\\x0e-\\x1f]/g;\nvar meta = [\"\\\\u0000\", \"\\\\u0001\", \"\\\\u0002\", \"\\\\u0003\", \"\\\\u0004\", \"\\\\u0005\", \"\\\\u0006\", \"\\\\u0007\", '\\\\b', '', '', \"\\\\u000b\", '\\\\f', '', \"\\\\u000e\", \"\\\\u000f\", \"\\\\u0010\", \"\\\\u0011\", \"\\\\u0012\", \"\\\\u0013\", \"\\\\u0014\", \"\\\\u0015\", \"\\\\u0016\", \"\\\\u0017\", \"\\\\u0018\", \"\\\\u0019\", \"\\\\u001a\", \"\\\\u001b\", \"\\\\u001c\", \"\\\\u001d\", \"\\\\u001e\", \"\\\\u001f\"];\n\nvar escapeFn = function escapeFn(str) {\n return meta[str.charCodeAt(0)];\n};\n\nvar warned = false; // The assert module provides functions that throw\n// AssertionError's when particular conditions are not met. The\n// assert module must conform to the following interface.\n\nvar assert = module.exports = ok;\nvar NO_EXCEPTION_SENTINEL = {}; // All of the following functions must throw an AssertionError\n// when a corresponding condition is not met, with a message that\n// may be undefined if not provided. All assertion methods provide\n// both the actual and expected values to the assertion error for\n// display purposes.\n\nfunction innerFail(obj) {\n if (obj.message instanceof Error) throw obj.message;\n throw new AssertionError(obj);\n}\n\nfunction fail(actual, expected, message, operator, stackStartFn) {\n var argsLen = arguments.length;\n var internalMessage;\n\n if (argsLen === 0) {\n internalMessage = 'Failed';\n } else if (argsLen === 1) {\n message = actual;\n actual = undefined;\n } else {\n if (warned === false) {\n warned = true;\n var warn = process.emitWarning ? process.emitWarning : console.warn.bind(console);\n warn('assert.fail() with more than one argument is deprecated. ' + 'Please use assert.strictEqual() instead or only pass a message.', 'DeprecationWarning', 'DEP0094');\n }\n\n if (argsLen === 2) operator = '!=';\n }\n\n if (message instanceof Error) throw message;\n var errArgs = {\n actual: actual,\n expected: expected,\n operator: operator === undefined ? 'fail' : operator,\n stackStartFn: stackStartFn || fail\n };\n\n if (message !== undefined) {\n errArgs.message = message;\n }\n\n var err = new AssertionError(errArgs);\n\n if (internalMessage) {\n err.message = internalMessage;\n err.generatedMessage = true;\n }\n\n throw err;\n}\n\nassert.fail = fail; // The AssertionError is defined in internal/error.\n\nassert.AssertionError = AssertionError;\n\nfunction innerOk(fn, argLen, value, message) {\n if (!value) {\n var generatedMessage = false;\n\n if (argLen === 0) {\n generatedMessage = true;\n message = 'No value argument passed to `assert.ok()`';\n } else if (message instanceof Error) {\n throw message;\n }\n\n var err = new AssertionError({\n actual: value,\n expected: true,\n message: message,\n operator: '==',\n stackStartFn: fn\n });\n err.generatedMessage = generatedMessage;\n throw err;\n }\n} // Pure assertion tests whether a value is truthy, as determined\n// by !!value.\n\n\nfunction ok() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n innerOk.apply(void 0, [ok, args.length].concat(args));\n}\n\nassert.ok = ok; // The equality assertion tests shallow, coercive equality with ==.\n\n/* eslint-disable no-restricted-properties */\n\nassert.equal = function equal(actual, expected, message) {\n if (arguments.length < 2) {\n throw new ERR_MISSING_ARGS('actual', 'expected');\n } // eslint-disable-next-line eqeqeq\n\n\n if (actual != expected) {\n innerFail({\n actual: actual,\n expected: expected,\n message: message,\n operator: '==',\n stackStartFn: equal\n });\n }\n}; // The non-equality assertion tests for whether two objects are not\n// equal with !=.\n\n\nassert.notEqual = function notEqual(actual, expected, message) {\n if (arguments.length < 2) {\n throw new ERR_MISSING_ARGS('actual', 'expected');\n } // eslint-disable-next-line eqeqeq\n\n\n if (actual == expected) {\n innerFail({\n actual: actual,\n expected: expected,\n message: message,\n operator: '!=',\n stackStartFn: notEqual\n });\n }\n}; // The equivalence assertion tests a deep equality relation.\n\n\nassert.deepEqual = function deepEqual(actual, expected, message) {\n if (arguments.length < 2) {\n throw new ERR_MISSING_ARGS('actual', 'expected');\n }\n\n if (isDeepEqual === undefined) lazyLoadComparison();\n\n if (!isDeepEqual(actual, expected)) {\n innerFail({\n actual: actual,\n expected: expected,\n message: message,\n operator: 'deepEqual',\n stackStartFn: deepEqual\n });\n }\n}; // The non-equivalence assertion tests for any deep inequality.\n\n\nassert.notDeepEqual = function notDeepEqual(actual, expected, message) {\n if (arguments.length < 2) {\n throw new ERR_MISSING_ARGS('actual', 'expected');\n }\n\n if (isDeepEqual === undefined) lazyLoadComparison();\n\n if (isDeepEqual(actual, expected)) {\n innerFail({\n actual: actual,\n expected: expected,\n message: message,\n operator: 'notDeepEqual',\n stackStartFn: notDeepEqual\n });\n }\n};\n/* eslint-enable */\n\n\nassert.deepStrictEqual = function deepStrictEqual(actual, expected, message) {\n if (arguments.length < 2) {\n throw new ERR_MISSING_ARGS('actual', 'expected');\n }\n\n if (isDeepEqual === undefined) lazyLoadComparison();\n\n if (!isDeepStrictEqual(actual, expected)) {\n innerFail({\n actual: actual,\n expected: expected,\n message: message,\n operator: 'deepStrictEqual',\n stackStartFn: deepStrictEqual\n });\n }\n};\n\nassert.notDeepStrictEqual = notDeepStrictEqual;\n\nfunction notDeepStrictEqual(actual, expected, message) {\n if (arguments.length < 2) {\n throw new ERR_MISSING_ARGS('actual', 'expected');\n }\n\n if (isDeepEqual === undefined) lazyLoadComparison();\n\n if (isDeepStrictEqual(actual, expected)) {\n innerFail({\n actual: actual,\n expected: expected,\n message: message,\n operator: 'notDeepStrictEqual',\n stackStartFn: notDeepStrictEqual\n });\n }\n}\n\nassert.strictEqual = function strictEqual(actual, expected, message) {\n if (arguments.length < 2) {\n throw new ERR_MISSING_ARGS('actual', 'expected');\n }\n\n if (!objectIs(actual, expected)) {\n innerFail({\n actual: actual,\n expected: expected,\n message: message,\n operator: 'strictEqual',\n stackStartFn: strictEqual\n });\n }\n};\n\nassert.notStrictEqual = function notStrictEqual(actual, expected, message) {\n if (arguments.length < 2) {\n throw new ERR_MISSING_ARGS('actual', 'expected');\n }\n\n if (objectIs(actual, expected)) {\n innerFail({\n actual: actual,\n expected: expected,\n message: message,\n operator: 'notStrictEqual',\n stackStartFn: notStrictEqual\n });\n }\n};\n\nvar Comparison = function Comparison(obj, keys, actual) {\n var _this = this;\n\n _classCallCheck(this, Comparison);\n\n keys.forEach(function (key) {\n if (key in obj) {\n if (actual !== undefined && typeof actual[key] === 'string' && isRegExp(obj[key]) && obj[key].test(actual[key])) {\n _this[key] = actual[key];\n } else {\n _this[key] = obj[key];\n }\n }\n });\n};\n\nfunction compareExceptionKey(actual, expected, key, message, keys, fn) {\n if (!(key in actual) || !isDeepStrictEqual(actual[key], expected[key])) {\n if (!message) {\n // Create placeholder objects to create a nice output.\n var a = new Comparison(actual, keys);\n var b = new Comparison(expected, keys, actual);\n var err = new AssertionError({\n actual: a,\n expected: b,\n operator: 'deepStrictEqual',\n stackStartFn: fn\n });\n err.actual = actual;\n err.expected = expected;\n err.operator = fn.name;\n throw err;\n }\n\n innerFail({\n actual: actual,\n expected: expected,\n message: message,\n operator: fn.name,\n stackStartFn: fn\n });\n }\n}\n\nfunction expectedException(actual, expected, msg, fn) {\n if (typeof expected !== 'function') {\n if (isRegExp(expected)) return expected.test(actual); // assert.doesNotThrow does not accept objects.\n\n if (arguments.length === 2) {\n throw new ERR_INVALID_ARG_TYPE('expected', ['Function', 'RegExp'], expected);\n } // Handle primitives properly.\n\n\n if (_typeof(actual) !== 'object' || actual === null) {\n var err = new AssertionError({\n actual: actual,\n expected: expected,\n message: msg,\n operator: 'deepStrictEqual',\n stackStartFn: fn\n });\n err.operator = fn.name;\n throw err;\n }\n\n var keys = Object.keys(expected); // Special handle errors to make sure the name and the message are compared\n // as well.\n\n if (expected instanceof Error) {\n keys.push('name', 'message');\n } else if (keys.length === 0) {\n throw new ERR_INVALID_ARG_VALUE('error', expected, 'may not be an empty object');\n }\n\n if (isDeepEqual === undefined) lazyLoadComparison();\n keys.forEach(function (key) {\n if (typeof actual[key] === 'string' && isRegExp(expected[key]) && expected[key].test(actual[key])) {\n return;\n }\n\n compareExceptionKey(actual, expected, key, msg, keys, fn);\n });\n return true;\n } // Guard instanceof against arrow functions as they don't have a prototype.\n\n\n if (expected.prototype !== undefined && actual instanceof expected) {\n return true;\n }\n\n if (Error.isPrototypeOf(expected)) {\n return false;\n }\n\n return expected.call({}, actual) === true;\n}\n\nfunction getActual(fn) {\n if (typeof fn !== 'function') {\n throw new ERR_INVALID_ARG_TYPE('fn', 'Function', fn);\n }\n\n try {\n fn();\n } catch (e) {\n return e;\n }\n\n return NO_EXCEPTION_SENTINEL;\n}\n\nfunction checkIsPromise(obj) {\n // Accept native ES6 promises and promises that are implemented in a similar\n // way. Do not accept thenables that use a function as `obj` and that have no\n // `catch` handler.\n // TODO: thenables are checked up until they have the correct methods,\n // but according to documentation, the `then` method should receive\n // the `fulfill` and `reject` arguments as well or it may be never resolved.\n return isPromise(obj) || obj !== null && _typeof(obj) === 'object' && typeof obj.then === 'function' && typeof obj.catch === 'function';\n}\n\nfunction waitForActual(promiseFn) {\n return Promise.resolve().then(function () {\n var resultPromise;\n\n if (typeof promiseFn === 'function') {\n // Return a rejected promise if `promiseFn` throws synchronously.\n resultPromise = promiseFn(); // Fail in case no promise is returned.\n\n if (!checkIsPromise(resultPromise)) {\n throw new ERR_INVALID_RETURN_VALUE('instance of Promise', 'promiseFn', resultPromise);\n }\n } else if (checkIsPromise(promiseFn)) {\n resultPromise = promiseFn;\n } else {\n throw new ERR_INVALID_ARG_TYPE('promiseFn', ['Function', 'Promise'], promiseFn);\n }\n\n return Promise.resolve().then(function () {\n return resultPromise;\n }).then(function () {\n return NO_EXCEPTION_SENTINEL;\n }).catch(function (e) {\n return e;\n });\n });\n}\n\nfunction expectsError(stackStartFn, actual, error, message) {\n if (typeof error === 'string') {\n if (arguments.length === 4) {\n throw new ERR_INVALID_ARG_TYPE('error', ['Object', 'Error', 'Function', 'RegExp'], error);\n }\n\n if (_typeof(actual) === 'object' && actual !== null) {\n if (actual.message === error) {\n throw new ERR_AMBIGUOUS_ARGUMENT('error/message', \"The error message \\\"\".concat(actual.message, \"\\\" is identical to the message.\"));\n }\n } else if (actual === error) {\n throw new ERR_AMBIGUOUS_ARGUMENT('error/message', \"The error \\\"\".concat(actual, \"\\\" is identical to the message.\"));\n }\n\n message = error;\n error = undefined;\n } else if (error != null && _typeof(error) !== 'object' && typeof error !== 'function') {\n throw new ERR_INVALID_ARG_TYPE('error', ['Object', 'Error', 'Function', 'RegExp'], error);\n }\n\n if (actual === NO_EXCEPTION_SENTINEL) {\n var details = '';\n\n if (error && error.name) {\n details += \" (\".concat(error.name, \")\");\n }\n\n details += message ? \": \".concat(message) : '.';\n var fnType = stackStartFn.name === 'rejects' ? 'rejection' : 'exception';\n innerFail({\n actual: undefined,\n expected: error,\n operator: stackStartFn.name,\n message: \"Missing expected \".concat(fnType).concat(details),\n stackStartFn: stackStartFn\n });\n }\n\n if (error && !expectedException(actual, error, message, stackStartFn)) {\n throw actual;\n }\n}\n\nfunction expectsNoError(stackStartFn, actual, error, message) {\n if (actual === NO_EXCEPTION_SENTINEL) return;\n\n if (typeof error === 'string') {\n message = error;\n error = undefined;\n }\n\n if (!error || expectedException(actual, error)) {\n var details = message ? \": \".concat(message) : '.';\n var fnType = stackStartFn.name === 'doesNotReject' ? 'rejection' : 'exception';\n innerFail({\n actual: actual,\n expected: error,\n operator: stackStartFn.name,\n message: \"Got unwanted \".concat(fnType).concat(details, \"\\n\") + \"Actual message: \\\"\".concat(actual && actual.message, \"\\\"\"),\n stackStartFn: stackStartFn\n });\n }\n\n throw actual;\n}\n\nassert.throws = function throws(promiseFn) {\n for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {\n args[_key2 - 1] = arguments[_key2];\n }\n\n expectsError.apply(void 0, [throws, getActual(promiseFn)].concat(args));\n};\n\nassert.rejects = function rejects(promiseFn) {\n for (var _len3 = arguments.length, args = new Array(_len3 > 1 ? _len3 - 1 : 0), _key3 = 1; _key3 < _len3; _key3++) {\n args[_key3 - 1] = arguments[_key3];\n }\n\n return waitForActual(promiseFn).then(function (result) {\n return expectsError.apply(void 0, [rejects, result].concat(args));\n });\n};\n\nassert.doesNotThrow = function doesNotThrow(fn) {\n for (var _len4 = arguments.length, args = new Array(_len4 > 1 ? _len4 - 1 : 0), _key4 = 1; _key4 < _len4; _key4++) {\n args[_key4 - 1] = arguments[_key4];\n }\n\n expectsNoError.apply(void 0, [doesNotThrow, getActual(fn)].concat(args));\n};\n\nassert.doesNotReject = function doesNotReject(fn) {\n for (var _len5 = arguments.length, args = new Array(_len5 > 1 ? _len5 - 1 : 0), _key5 = 1; _key5 < _len5; _key5++) {\n args[_key5 - 1] = arguments[_key5];\n }\n\n return waitForActual(fn).then(function (result) {\n return expectsNoError.apply(void 0, [doesNotReject, result].concat(args));\n });\n};\n\nassert.ifError = function ifError(err) {\n if (err !== null && err !== undefined) {\n var message = 'ifError got unwanted exception: ';\n\n if (_typeof(err) === 'object' && typeof err.message === 'string') {\n if (err.message.length === 0 && err.constructor) {\n message += err.constructor.name;\n } else {\n message += err.message;\n }\n } else {\n message += inspect(err);\n }\n\n var newErr = new AssertionError({\n actual: err,\n expected: null,\n operator: 'ifError',\n message: message,\n stackStartFn: ifError\n }); // Make sure we actually have a stack trace!\n\n var origStack = err.stack;\n\n if (typeof origStack === 'string') {\n // This will remove any duplicated frames from the error frames taken\n // from within `ifError` and add the original error frames to the newly\n // created ones.\n var tmp2 = origStack.split('\\n');\n tmp2.shift(); // Filter all frames existing in err.stack.\n\n var tmp1 = newErr.stack.split('\\n');\n\n for (var i = 0; i < tmp2.length; i++) {\n // Find the first occurrence of the frame.\n var pos = tmp1.indexOf(tmp2[i]);\n\n if (pos !== -1) {\n // Only keep new frames.\n tmp1 = tmp1.slice(0, pos);\n break;\n }\n }\n\n newErr.stack = \"\".concat(tmp1.join('\\n'), \"\\n\").concat(tmp2.join('\\n'));\n }\n\n throw newErr;\n }\n}; // Expose a strict only variant of assert\n\n\nfunction strict() {\n for (var _len6 = arguments.length, args = new Array(_len6), _key6 = 0; _key6 < _len6; _key6++) {\n args[_key6] = arguments[_key6];\n }\n\n innerOk.apply(void 0, [strict, args.length].concat(args));\n}\n\nassert.strict = objectAssign(strict, assert, {\n equal: assert.strictEqual,\n deepEqual: assert.deepStrictEqual,\n notEqual: assert.notStrictEqual,\n notDeepEqual: assert.notDeepStrictEqual\n});\nassert.strict.strict = assert.strict;","// Currently in sync with Node.js lib/internal/assert/assertion_error.js\n// https://github.com/nodejs/node/commit/0817840f775032169ddd70c85ac059f18ffcc81c\n'use strict';\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; var ownKeys = Object.keys(source); if (typeof Object.getOwnPropertySymbols === 'function') { ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) { return Object.getOwnPropertyDescriptor(source, sym).enumerable; })); } ownKeys.forEach(function (key) { _defineProperty(target, key, source[key]); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _wrapNativeSuper(Class) { var _cache = typeof Map === \"function\" ? new Map() : undefined; _wrapNativeSuper = function _wrapNativeSuper(Class) { if (Class === null || !_isNativeFunction(Class)) return Class; if (typeof Class !== \"function\") { throw new TypeError(\"Super expression must either be null or a function\"); } if (typeof _cache !== \"undefined\") { if (_cache.has(Class)) return _cache.get(Class); _cache.set(Class, Wrapper); } function Wrapper() { return _construct(Class, arguments, _getPrototypeOf(this).constructor); } Wrapper.prototype = Object.create(Class.prototype, { constructor: { value: Wrapper, enumerable: false, writable: true, configurable: true } }); return _setPrototypeOf(Wrapper, Class); }; return _wrapNativeSuper(Class); }\n\nfunction isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _construct(Parent, args, Class) { if (isNativeReflectConstruct()) { _construct = Reflect.construct; } else { _construct = function _construct(Parent, args, Class) { var a = [null]; a.push.apply(a, args); var Constructor = Function.bind.apply(Parent, a); var instance = new Constructor(); if (Class) _setPrototypeOf(instance, Class.prototype); return instance; }; } return _construct.apply(null, arguments); }\n\nfunction _isNativeFunction(fn) { return Function.toString.call(fn).indexOf(\"[native code]\") !== -1; }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction _typeof(obj) { if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nvar _require = require('util/'),\n inspect = _require.inspect;\n\nvar _require2 = require('../errors'),\n ERR_INVALID_ARG_TYPE = _require2.codes.ERR_INVALID_ARG_TYPE; // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/endsWith\n\n\nfunction endsWith(str, search, this_len) {\n if (this_len === undefined || this_len > str.length) {\n this_len = str.length;\n }\n\n return str.substring(this_len - search.length, this_len) === search;\n} // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/repeat\n\n\nfunction repeat(str, count) {\n count = Math.floor(count);\n if (str.length == 0 || count == 0) return '';\n var maxCount = str.length * count;\n count = Math.floor(Math.log(count) / Math.log(2));\n\n while (count) {\n str += str;\n count--;\n }\n\n str += str.substring(0, maxCount - str.length);\n return str;\n}\n\nvar blue = '';\nvar green = '';\nvar red = '';\nvar white = '';\nvar kReadableOperator = {\n deepStrictEqual: 'Expected values to be strictly deep-equal:',\n strictEqual: 'Expected values to be strictly equal:',\n strictEqualObject: 'Expected \"actual\" to be reference-equal to \"expected\":',\n deepEqual: 'Expected values to be loosely deep-equal:',\n equal: 'Expected values to be loosely equal:',\n notDeepStrictEqual: 'Expected \"actual\" not to be strictly deep-equal to:',\n notStrictEqual: 'Expected \"actual\" to be strictly unequal to:',\n notStrictEqualObject: 'Expected \"actual\" not to be reference-equal to \"expected\":',\n notDeepEqual: 'Expected \"actual\" not to be loosely deep-equal to:',\n notEqual: 'Expected \"actual\" to be loosely unequal to:',\n notIdentical: 'Values identical but not reference-equal:'\n}; // Comparing short primitives should just show === / !== instead of using the\n// diff.\n\nvar kMaxShortLength = 10;\n\nfunction copyError(source) {\n var keys = Object.keys(source);\n var target = Object.create(Object.getPrototypeOf(source));\n keys.forEach(function (key) {\n target[key] = source[key];\n });\n Object.defineProperty(target, 'message', {\n value: source.message\n });\n return target;\n}\n\nfunction inspectValue(val) {\n // The util.inspect default values could be changed. This makes sure the\n // error messages contain the necessary information nevertheless.\n return inspect(val, {\n compact: false,\n customInspect: false,\n depth: 1000,\n maxArrayLength: Infinity,\n // Assert compares only enumerable properties (with a few exceptions).\n showHidden: false,\n // Having a long line as error is better than wrapping the line for\n // comparison for now.\n // TODO(BridgeAR): `breakLength` should be limited as soon as soon as we\n // have meta information about the inspected properties (i.e., know where\n // in what line the property starts and ends).\n breakLength: Infinity,\n // Assert does not detect proxies currently.\n showProxy: false,\n sorted: true,\n // Inspect getters as we also check them when comparing entries.\n getters: true\n });\n}\n\nfunction createErrDiff(actual, expected, operator) {\n var other = '';\n var res = '';\n var lastPos = 0;\n var end = '';\n var skipped = false;\n var actualInspected = inspectValue(actual);\n var actualLines = actualInspected.split('\\n');\n var expectedLines = inspectValue(expected).split('\\n');\n var i = 0;\n var indicator = ''; // In case both values are objects explicitly mark them as not reference equal\n // for the `strictEqual` operator.\n\n if (operator === 'strictEqual' && _typeof(actual) === 'object' && _typeof(expected) === 'object' && actual !== null && expected !== null) {\n operator = 'strictEqualObject';\n } // If \"actual\" and \"expected\" fit on a single line and they are not strictly\n // equal, check further special handling.\n\n\n if (actualLines.length === 1 && expectedLines.length === 1 && actualLines[0] !== expectedLines[0]) {\n var inputLength = actualLines[0].length + expectedLines[0].length; // If the character length of \"actual\" and \"expected\" together is less than\n // kMaxShortLength and if neither is an object and at least one of them is\n // not `zero`, use the strict equal comparison to visualize the output.\n\n if (inputLength <= kMaxShortLength) {\n if ((_typeof(actual) !== 'object' || actual === null) && (_typeof(expected) !== 'object' || expected === null) && (actual !== 0 || expected !== 0)) {\n // -0 === +0\n return \"\".concat(kReadableOperator[operator], \"\\n\\n\") + \"\".concat(actualLines[0], \" !== \").concat(expectedLines[0], \"\\n\");\n }\n } else if (operator !== 'strictEqualObject') {\n // If the stderr is a tty and the input length is lower than the current\n // columns per line, add a mismatch indicator below the output. If it is\n // not a tty, use a default value of 80 characters.\n var maxLength = process.stderr && process.stderr.isTTY ? process.stderr.columns : 80;\n\n if (inputLength < maxLength) {\n while (actualLines[0][i] === expectedLines[0][i]) {\n i++;\n } // Ignore the first characters.\n\n\n if (i > 2) {\n // Add position indicator for the first mismatch in case it is a\n // single line and the input length is less than the column length.\n indicator = \"\\n \".concat(repeat(' ', i), \"^\");\n i = 0;\n }\n }\n }\n } // Remove all ending lines that match (this optimizes the output for\n // readability by reducing the number of total changed lines).\n\n\n var a = actualLines[actualLines.length - 1];\n var b = expectedLines[expectedLines.length - 1];\n\n while (a === b) {\n if (i++ < 2) {\n end = \"\\n \".concat(a).concat(end);\n } else {\n other = a;\n }\n\n actualLines.pop();\n expectedLines.pop();\n if (actualLines.length === 0 || expectedLines.length === 0) break;\n a = actualLines[actualLines.length - 1];\n b = expectedLines[expectedLines.length - 1];\n }\n\n var maxLines = Math.max(actualLines.length, expectedLines.length); // Strict equal with identical objects that are not identical by reference.\n // E.g., assert.deepStrictEqual({ a: Symbol() }, { a: Symbol() })\n\n if (maxLines === 0) {\n // We have to get the result again. The lines were all removed before.\n var _actualLines = actualInspected.split('\\n'); // Only remove lines in case it makes sense to collapse those.\n // TODO: Accept env to always show the full error.\n\n\n if (_actualLines.length > 30) {\n _actualLines[26] = \"\".concat(blue, \"...\").concat(white);\n\n while (_actualLines.length > 27) {\n _actualLines.pop();\n }\n }\n\n return \"\".concat(kReadableOperator.notIdentical, \"\\n\\n\").concat(_actualLines.join('\\n'), \"\\n\");\n }\n\n if (i > 3) {\n end = \"\\n\".concat(blue, \"...\").concat(white).concat(end);\n skipped = true;\n }\n\n if (other !== '') {\n end = \"\\n \".concat(other).concat(end);\n other = '';\n }\n\n var printedLines = 0;\n var msg = kReadableOperator[operator] + \"\\n\".concat(green, \"+ actual\").concat(white, \" \").concat(red, \"- expected\").concat(white);\n var skippedMsg = \" \".concat(blue, \"...\").concat(white, \" Lines skipped\");\n\n for (i = 0; i < maxLines; i++) {\n // Only extra expected lines exist\n var cur = i - lastPos;\n\n if (actualLines.length < i + 1) {\n // If the last diverging line is more than one line above and the\n // current line is at least line three, add some of the former lines and\n // also add dots to indicate skipped entries.\n if (cur > 1 && i > 2) {\n if (cur > 4) {\n res += \"\\n\".concat(blue, \"...\").concat(white);\n skipped = true;\n } else if (cur > 3) {\n res += \"\\n \".concat(expectedLines[i - 2]);\n printedLines++;\n }\n\n res += \"\\n \".concat(expectedLines[i - 1]);\n printedLines++;\n } // Mark the current line as the last diverging one.\n\n\n lastPos = i; // Add the expected line to the cache.\n\n other += \"\\n\".concat(red, \"-\").concat(white, \" \").concat(expectedLines[i]);\n printedLines++; // Only extra actual lines exist\n } else if (expectedLines.length < i + 1) {\n // If the last diverging line is more than one line above and the\n // current line is at least line three, add some of the former lines and\n // also add dots to indicate skipped entries.\n if (cur > 1 && i > 2) {\n if (cur > 4) {\n res += \"\\n\".concat(blue, \"...\").concat(white);\n skipped = true;\n } else if (cur > 3) {\n res += \"\\n \".concat(actualLines[i - 2]);\n printedLines++;\n }\n\n res += \"\\n \".concat(actualLines[i - 1]);\n printedLines++;\n } // Mark the current line as the last diverging one.\n\n\n lastPos = i; // Add the actual line to the result.\n\n res += \"\\n\".concat(green, \"+\").concat(white, \" \").concat(actualLines[i]);\n printedLines++; // Lines diverge\n } else {\n var expectedLine = expectedLines[i];\n var actualLine = actualLines[i]; // If the lines diverge, specifically check for lines that only diverge by\n // a trailing comma. In that case it is actually identical and we should\n // mark it as such.\n\n var divergingLines = actualLine !== expectedLine && (!endsWith(actualLine, ',') || actualLine.slice(0, -1) !== expectedLine); // If the expected line has a trailing comma but is otherwise identical,\n // add a comma at the end of the actual line. Otherwise the output could\n // look weird as in:\n //\n // [\n // 1 // No comma at the end!\n // + 2\n // ]\n //\n\n if (divergingLines && endsWith(expectedLine, ',') && expectedLine.slice(0, -1) === actualLine) {\n divergingLines = false;\n actualLine += ',';\n }\n\n if (divergingLines) {\n // If the last diverging line is more than one line above and the\n // current line is at least line three, add some of the former lines and\n // also add dots to indicate skipped entries.\n if (cur > 1 && i > 2) {\n if (cur > 4) {\n res += \"\\n\".concat(blue, \"...\").concat(white);\n skipped = true;\n } else if (cur > 3) {\n res += \"\\n \".concat(actualLines[i - 2]);\n printedLines++;\n }\n\n res += \"\\n \".concat(actualLines[i - 1]);\n printedLines++;\n } // Mark the current line as the last diverging one.\n\n\n lastPos = i; // Add the actual line to the result and cache the expected diverging\n // line so consecutive diverging lines show up as +++--- and not +-+-+-.\n\n res += \"\\n\".concat(green, \"+\").concat(white, \" \").concat(actualLine);\n other += \"\\n\".concat(red, \"-\").concat(white, \" \").concat(expectedLine);\n printedLines += 2; // Lines are identical\n } else {\n // Add all cached information to the result before adding other things\n // and reset the cache.\n res += other;\n other = ''; // If the last diverging line is exactly one line above or if it is the\n // very first line, add the line to the result.\n\n if (cur === 1 || i === 0) {\n res += \"\\n \".concat(actualLine);\n printedLines++;\n }\n }\n } // Inspected object to big (Show ~20 rows max)\n\n\n if (printedLines > 20 && i < maxLines - 2) {\n return \"\".concat(msg).concat(skippedMsg, \"\\n\").concat(res, \"\\n\").concat(blue, \"...\").concat(white).concat(other, \"\\n\") + \"\".concat(blue, \"...\").concat(white);\n }\n }\n\n return \"\".concat(msg).concat(skipped ? skippedMsg : '', \"\\n\").concat(res).concat(other).concat(end).concat(indicator);\n}\n\nvar AssertionError =\n/*#__PURE__*/\nfunction (_Error) {\n _inherits(AssertionError, _Error);\n\n function AssertionError(options) {\n var _this;\n\n _classCallCheck(this, AssertionError);\n\n if (_typeof(options) !== 'object' || options === null) {\n throw new ERR_INVALID_ARG_TYPE('options', 'Object', options);\n }\n\n var message = options.message,\n operator = options.operator,\n stackStartFn = options.stackStartFn;\n var actual = options.actual,\n expected = options.expected;\n var limit = Error.stackTraceLimit;\n Error.stackTraceLimit = 0;\n\n if (message != null) {\n _this = _possibleConstructorReturn(this, _getPrototypeOf(AssertionError).call(this, String(message)));\n } else {\n if (process.stderr && process.stderr.isTTY) {\n // Reset on each call to make sure we handle dynamically set environment\n // variables correct.\n if (process.stderr && process.stderr.getColorDepth && process.stderr.getColorDepth() !== 1) {\n blue = \"\\x1B[34m\";\n green = \"\\x1B[32m\";\n white = \"\\x1B[39m\";\n red = \"\\x1B[31m\";\n } else {\n blue = '';\n green = '';\n white = '';\n red = '';\n }\n } // Prevent the error stack from being visible by duplicating the error\n // in a very close way to the original in case both sides are actually\n // instances of Error.\n\n\n if (_typeof(actual) === 'object' && actual !== null && _typeof(expected) === 'object' && expected !== null && 'stack' in actual && actual instanceof Error && 'stack' in expected && expected instanceof Error) {\n actual = copyError(actual);\n expected = copyError(expected);\n }\n\n if (operator === 'deepStrictEqual' || operator === 'strictEqual') {\n _this = _possibleConstructorReturn(this, _getPrototypeOf(AssertionError).call(this, createErrDiff(actual, expected, operator)));\n } else if (operator === 'notDeepStrictEqual' || operator === 'notStrictEqual') {\n // In case the objects are equal but the operator requires unequal, show\n // the first object and say A equals B\n var base = kReadableOperator[operator];\n var res = inspectValue(actual).split('\\n'); // In case \"actual\" is an object, it should not be reference equal.\n\n if (operator === 'notStrictEqual' && _typeof(actual) === 'object' && actual !== null) {\n base = kReadableOperator.notStrictEqualObject;\n } // Only remove lines in case it makes sense to collapse those.\n // TODO: Accept env to always show the full error.\n\n\n if (res.length > 30) {\n res[26] = \"\".concat(blue, \"...\").concat(white);\n\n while (res.length > 27) {\n res.pop();\n }\n } // Only print a single input.\n\n\n if (res.length === 1) {\n _this = _possibleConstructorReturn(this, _getPrototypeOf(AssertionError).call(this, \"\".concat(base, \" \").concat(res[0])));\n } else {\n _this = _possibleConstructorReturn(this, _getPrototypeOf(AssertionError).call(this, \"\".concat(base, \"\\n\\n\").concat(res.join('\\n'), \"\\n\")));\n }\n } else {\n var _res = inspectValue(actual);\n\n var other = '';\n var knownOperators = kReadableOperator[operator];\n\n if (operator === 'notDeepEqual' || operator === 'notEqual') {\n _res = \"\".concat(kReadableOperator[operator], \"\\n\\n\").concat(_res);\n\n if (_res.length > 1024) {\n _res = \"\".concat(_res.slice(0, 1021), \"...\");\n }\n } else {\n other = \"\".concat(inspectValue(expected));\n\n if (_res.length > 512) {\n _res = \"\".concat(_res.slice(0, 509), \"...\");\n }\n\n if (other.length > 512) {\n other = \"\".concat(other.slice(0, 509), \"...\");\n }\n\n if (operator === 'deepEqual' || operator === 'equal') {\n _res = \"\".concat(knownOperators, \"\\n\\n\").concat(_res, \"\\n\\nshould equal\\n\\n\");\n } else {\n other = \" \".concat(operator, \" \").concat(other);\n }\n }\n\n _this = _possibleConstructorReturn(this, _getPrototypeOf(AssertionError).call(this, \"\".concat(_res).concat(other)));\n }\n }\n\n Error.stackTraceLimit = limit;\n _this.generatedMessage = !message;\n Object.defineProperty(_assertThisInitialized(_this), 'name', {\n value: 'AssertionError [ERR_ASSERTION]',\n enumerable: false,\n writable: true,\n configurable: true\n });\n _this.code = 'ERR_ASSERTION';\n _this.actual = actual;\n _this.expected = expected;\n _this.operator = operator;\n\n if (Error.captureStackTrace) {\n // eslint-disable-next-line no-restricted-syntax\n Error.captureStackTrace(_assertThisInitialized(_this), stackStartFn);\n } // Create error message including the error code in the name.\n\n\n _this.stack; // Reset the name.\n\n _this.name = 'AssertionError';\n return _possibleConstructorReturn(_this);\n }\n\n _createClass(AssertionError, [{\n key: \"toString\",\n value: function toString() {\n return \"\".concat(this.name, \" [\").concat(this.code, \"]: \").concat(this.message);\n }\n }, {\n key: inspect.custom,\n value: function value(recurseTimes, ctx) {\n // This limits the `actual` and `expected` property default inspection to\n // the minimum depth. Otherwise those values would be too verbose compared\n // to the actual error message which contains a combined view of these two\n // input values.\n return inspect(this, _objectSpread({}, ctx, {\n customInspect: false,\n depth: 0\n }));\n }\n }]);\n\n return AssertionError;\n}(_wrapNativeSuper(Error));\n\nmodule.exports = AssertionError;","// Currently in sync with Node.js lib/internal/errors.js\n// https://github.com/nodejs/node/commit/3b044962c48fe313905877a96b5d0894a5404f6f\n\n/* eslint node-core/documented-errors: \"error\" */\n\n/* eslint node-core/alphabetize-errors: \"error\" */\n\n/* eslint node-core/prefer-util-format-errors: \"error\" */\n'use strict'; // The whole point behind this internal module is to allow Node.js to no\n// longer be forced to treat every error message change as a semver-major\n// change. The NodeError classes here all expose a `code` property whose\n// value statically and permanently identifies the error. While the error\n// message may change, the code should not.\n\nfunction _typeof(obj) { if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nvar codes = {}; // Lazy loaded\n\nvar assert;\nvar util;\n\nfunction createErrorType(code, message, Base) {\n if (!Base) {\n Base = Error;\n }\n\n function getMessage(arg1, arg2, arg3) {\n if (typeof message === 'string') {\n return message;\n } else {\n return message(arg1, arg2, arg3);\n }\n }\n\n var NodeError =\n /*#__PURE__*/\n function (_Base) {\n _inherits(NodeError, _Base);\n\n function NodeError(arg1, arg2, arg3) {\n var _this;\n\n _classCallCheck(this, NodeError);\n\n _this = _possibleConstructorReturn(this, _getPrototypeOf(NodeError).call(this, getMessage(arg1, arg2, arg3)));\n _this.code = code;\n return _this;\n }\n\n return NodeError;\n }(Base);\n\n codes[code] = NodeError;\n} // https://github.com/nodejs/node/blob/v10.8.0/lib/internal/errors.js\n\n\nfunction oneOf(expected, thing) {\n if (Array.isArray(expected)) {\n var len = expected.length;\n expected = expected.map(function (i) {\n return String(i);\n });\n\n if (len > 2) {\n return \"one of \".concat(thing, \" \").concat(expected.slice(0, len - 1).join(', '), \", or \") + expected[len - 1];\n } else if (len === 2) {\n return \"one of \".concat(thing, \" \").concat(expected[0], \" or \").concat(expected[1]);\n } else {\n return \"of \".concat(thing, \" \").concat(expected[0]);\n }\n } else {\n return \"of \".concat(thing, \" \").concat(String(expected));\n }\n} // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/startsWith\n\n\nfunction startsWith(str, search, pos) {\n return str.substr(!pos || pos < 0 ? 0 : +pos, search.length) === search;\n} // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/endsWith\n\n\nfunction endsWith(str, search, this_len) {\n if (this_len === undefined || this_len > str.length) {\n this_len = str.length;\n }\n\n return str.substring(this_len - search.length, this_len) === search;\n} // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/includes\n\n\nfunction includes(str, search, start) {\n if (typeof start !== 'number') {\n start = 0;\n }\n\n if (start + search.length > str.length) {\n return false;\n } else {\n return str.indexOf(search, start) !== -1;\n }\n}\n\ncreateErrorType('ERR_AMBIGUOUS_ARGUMENT', 'The \"%s\" argument is ambiguous. %s', TypeError);\ncreateErrorType('ERR_INVALID_ARG_TYPE', function (name, expected, actual) {\n if (assert === undefined) assert = require('../assert');\n assert(typeof name === 'string', \"'name' must be a string\"); // determiner: 'must be' or 'must not be'\n\n var determiner;\n\n if (typeof expected === 'string' && startsWith(expected, 'not ')) {\n determiner = 'must not be';\n expected = expected.replace(/^not /, '');\n } else {\n determiner = 'must be';\n }\n\n var msg;\n\n if (endsWith(name, ' argument')) {\n // For cases like 'first argument'\n msg = \"The \".concat(name, \" \").concat(determiner, \" \").concat(oneOf(expected, 'type'));\n } else {\n var type = includes(name, '.') ? 'property' : 'argument';\n msg = \"The \\\"\".concat(name, \"\\\" \").concat(type, \" \").concat(determiner, \" \").concat(oneOf(expected, 'type'));\n } // TODO(BridgeAR): Improve the output by showing `null` and similar.\n\n\n msg += \". Received type \".concat(_typeof(actual));\n return msg;\n}, TypeError);\ncreateErrorType('ERR_INVALID_ARG_VALUE', function (name, value) {\n var reason = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'is invalid';\n if (util === undefined) util = require('util/');\n var inspected = util.inspect(value);\n\n if (inspected.length > 128) {\n inspected = \"\".concat(inspected.slice(0, 128), \"...\");\n }\n\n return \"The argument '\".concat(name, \"' \").concat(reason, \". Received \").concat(inspected);\n}, TypeError, RangeError);\ncreateErrorType('ERR_INVALID_RETURN_VALUE', function (input, name, value) {\n var type;\n\n if (value && value.constructor && value.constructor.name) {\n type = \"instance of \".concat(value.constructor.name);\n } else {\n type = \"type \".concat(_typeof(value));\n }\n\n return \"Expected \".concat(input, \" to be returned from the \\\"\").concat(name, \"\\\"\") + \" function but got \".concat(type, \".\");\n}, TypeError);\ncreateErrorType('ERR_MISSING_ARGS', function () {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n if (assert === undefined) assert = require('../assert');\n assert(args.length > 0, 'At least one arg needs to be specified');\n var msg = 'The ';\n var len = args.length;\n args = args.map(function (a) {\n return \"\\\"\".concat(a, \"\\\"\");\n });\n\n switch (len) {\n case 1:\n msg += \"\".concat(args[0], \" argument\");\n break;\n\n case 2:\n msg += \"\".concat(args[0], \" and \").concat(args[1], \" arguments\");\n break;\n\n default:\n msg += args.slice(0, len - 1).join(', ');\n msg += \", and \".concat(args[len - 1], \" arguments\");\n break;\n }\n\n return \"\".concat(msg, \" must be specified\");\n}, TypeError);\nmodule.exports.codes = codes;","// Currently in sync with Node.js lib/internal/util/comparisons.js\n// https://github.com/nodejs/node/commit/112cc7c27551254aa2b17098fb774867f05ed0d9\n'use strict';\n\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _nonIterableRest(); }\n\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance\"); }\n\nfunction _iterableToArrayLimit(arr, i) { var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\nfunction _typeof(obj) { if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nvar regexFlagsSupported = /a/g.flags !== undefined;\n\nvar arrayFromSet = function arrayFromSet(set) {\n var array = [];\n set.forEach(function (value) {\n return array.push(value);\n });\n return array;\n};\n\nvar arrayFromMap = function arrayFromMap(map) {\n var array = [];\n map.forEach(function (value, key) {\n return array.push([key, value]);\n });\n return array;\n};\n\nvar objectIs = Object.is ? Object.is : require('object-is');\nvar objectGetOwnPropertySymbols = Object.getOwnPropertySymbols ? Object.getOwnPropertySymbols : function () {\n return [];\n};\nvar numberIsNaN = Number.isNaN ? Number.isNaN : require('is-nan');\n\nfunction uncurryThis(f) {\n return f.call.bind(f);\n}\n\nvar hasOwnProperty = uncurryThis(Object.prototype.hasOwnProperty);\nvar propertyIsEnumerable = uncurryThis(Object.prototype.propertyIsEnumerable);\nvar objectToString = uncurryThis(Object.prototype.toString);\n\nvar _require$types = require('util/').types,\n isAnyArrayBuffer = _require$types.isAnyArrayBuffer,\n isArrayBufferView = _require$types.isArrayBufferView,\n isDate = _require$types.isDate,\n isMap = _require$types.isMap,\n isRegExp = _require$types.isRegExp,\n isSet = _require$types.isSet,\n isNativeError = _require$types.isNativeError,\n isBoxedPrimitive = _require$types.isBoxedPrimitive,\n isNumberObject = _require$types.isNumberObject,\n isStringObject = _require$types.isStringObject,\n isBooleanObject = _require$types.isBooleanObject,\n isBigIntObject = _require$types.isBigIntObject,\n isSymbolObject = _require$types.isSymbolObject,\n isFloat32Array = _require$types.isFloat32Array,\n isFloat64Array = _require$types.isFloat64Array;\n\nfunction isNonIndex(key) {\n if (key.length === 0 || key.length > 10) return true;\n\n for (var i = 0; i < key.length; i++) {\n var code = key.charCodeAt(i);\n if (code < 48 || code > 57) return true;\n } // The maximum size for an array is 2 ** 32 -1.\n\n\n return key.length === 10 && key >= Math.pow(2, 32);\n}\n\nfunction getOwnNonIndexProperties(value) {\n return Object.keys(value).filter(isNonIndex).concat(objectGetOwnPropertySymbols(value).filter(Object.prototype.propertyIsEnumerable.bind(value)));\n} // Taken from https://github.com/feross/buffer/blob/680e9e5e488f22aac27599a57dc844a6315928dd/index.js\n// original notice:\n\n/*!\n * The buffer module from node.js, for the browser.\n *\n * @author Feross Aboukhadijeh <feross@feross.org> <http://feross.org>\n * @license MIT\n */\n\n\nfunction compare(a, b) {\n if (a === b) {\n return 0;\n }\n\n var x = a.length;\n var y = b.length;\n\n for (var i = 0, len = Math.min(x, y); i < len; ++i) {\n if (a[i] !== b[i]) {\n x = a[i];\n y = b[i];\n break;\n }\n }\n\n if (x < y) {\n return -1;\n }\n\n if (y < x) {\n return 1;\n }\n\n return 0;\n}\n\nvar ONLY_ENUMERABLE = undefined;\nvar kStrict = true;\nvar kLoose = false;\nvar kNoIterator = 0;\nvar kIsArray = 1;\nvar kIsSet = 2;\nvar kIsMap = 3; // Check if they have the same source and flags\n\nfunction areSimilarRegExps(a, b) {\n return regexFlagsSupported ? a.source === b.source && a.flags === b.flags : RegExp.prototype.toString.call(a) === RegExp.prototype.toString.call(b);\n}\n\nfunction areSimilarFloatArrays(a, b) {\n if (a.byteLength !== b.byteLength) {\n return false;\n }\n\n for (var offset = 0; offset < a.byteLength; offset++) {\n if (a[offset] !== b[offset]) {\n return false;\n }\n }\n\n return true;\n}\n\nfunction areSimilarTypedArrays(a, b) {\n if (a.byteLength !== b.byteLength) {\n return false;\n }\n\n return compare(new Uint8Array(a.buffer, a.byteOffset, a.byteLength), new Uint8Array(b.buffer, b.byteOffset, b.byteLength)) === 0;\n}\n\nfunction areEqualArrayBuffers(buf1, buf2) {\n return buf1.byteLength === buf2.byteLength && compare(new Uint8Array(buf1), new Uint8Array(buf2)) === 0;\n}\n\nfunction isEqualBoxedPrimitive(val1, val2) {\n if (isNumberObject(val1)) {\n return isNumberObject(val2) && objectIs(Number.prototype.valueOf.call(val1), Number.prototype.valueOf.call(val2));\n }\n\n if (isStringObject(val1)) {\n return isStringObject(val2) && String.prototype.valueOf.call(val1) === String.prototype.valueOf.call(val2);\n }\n\n if (isBooleanObject(val1)) {\n return isBooleanObject(val2) && Boolean.prototype.valueOf.call(val1) === Boolean.prototype.valueOf.call(val2);\n }\n\n if (isBigIntObject(val1)) {\n return isBigIntObject(val2) && BigInt.prototype.valueOf.call(val1) === BigInt.prototype.valueOf.call(val2);\n }\n\n return isSymbolObject(val2) && Symbol.prototype.valueOf.call(val1) === Symbol.prototype.valueOf.call(val2);\n} // Notes: Type tags are historical [[Class]] properties that can be set by\n// FunctionTemplate::SetClassName() in C++ or Symbol.toStringTag in JS\n// and retrieved using Object.prototype.toString.call(obj) in JS\n// See https://tc39.github.io/ecma262/#sec-object.prototype.tostring\n// for a list of tags pre-defined in the spec.\n// There are some unspecified tags in the wild too (e.g. typed array tags).\n// Since tags can be altered, they only serve fast failures\n//\n// Typed arrays and buffers are checked by comparing the content in their\n// underlying ArrayBuffer. This optimization requires that it's\n// reasonable to interpret their underlying memory in the same way,\n// which is checked by comparing their type tags.\n// (e.g. a Uint8Array and a Uint16Array with the same memory content\n// could still be different because they will be interpreted differently).\n//\n// For strict comparison, objects should have\n// a) The same built-in type tags\n// b) The same prototypes.\n\n\nfunction innerDeepEqual(val1, val2, strict, memos) {\n // All identical values are equivalent, as determined by ===.\n if (val1 === val2) {\n if (val1 !== 0) return true;\n return strict ? objectIs(val1, val2) : true;\n } // Check more closely if val1 and val2 are equal.\n\n\n if (strict) {\n if (_typeof(val1) !== 'object') {\n return typeof val1 === 'number' && numberIsNaN(val1) && numberIsNaN(val2);\n }\n\n if (_typeof(val2) !== 'object' || val1 === null || val2 === null) {\n return false;\n }\n\n if (Object.getPrototypeOf(val1) !== Object.getPrototypeOf(val2)) {\n return false;\n }\n } else {\n if (val1 === null || _typeof(val1) !== 'object') {\n if (val2 === null || _typeof(val2) !== 'object') {\n // eslint-disable-next-line eqeqeq\n return val1 == val2;\n }\n\n return false;\n }\n\n if (val2 === null || _typeof(val2) !== 'object') {\n return false;\n }\n }\n\n var val1Tag = objectToString(val1);\n var val2Tag = objectToString(val2);\n\n if (val1Tag !== val2Tag) {\n return false;\n }\n\n if (Array.isArray(val1)) {\n // Check for sparse arrays and general fast path\n if (val1.length !== val2.length) {\n return false;\n }\n\n var keys1 = getOwnNonIndexProperties(val1, ONLY_ENUMERABLE);\n var keys2 = getOwnNonIndexProperties(val2, ONLY_ENUMERABLE);\n\n if (keys1.length !== keys2.length) {\n return false;\n }\n\n return keyCheck(val1, val2, strict, memos, kIsArray, keys1);\n } // [browserify] This triggers on certain types in IE (Map/Set) so we don't\n // wan't to early return out of the rest of the checks. However we can check\n // if the second value is one of these values and the first isn't.\n\n\n if (val1Tag === '[object Object]') {\n // return keyCheck(val1, val2, strict, memos, kNoIterator);\n if (!isMap(val1) && isMap(val2) || !isSet(val1) && isSet(val2)) {\n return false;\n }\n }\n\n if (isDate(val1)) {\n if (!isDate(val2) || Date.prototype.getTime.call(val1) !== Date.prototype.getTime.call(val2)) {\n return false;\n }\n } else if (isRegExp(val1)) {\n if (!isRegExp(val2) || !areSimilarRegExps(val1, val2)) {\n return false;\n }\n } else if (isNativeError(val1) || val1 instanceof Error) {\n // Do not compare the stack as it might differ even though the error itself\n // is otherwise identical.\n if (val1.message !== val2.message || val1.name !== val2.name) {\n return false;\n }\n } else if (isArrayBufferView(val1)) {\n if (!strict && (isFloat32Array(val1) || isFloat64Array(val1))) {\n if (!areSimilarFloatArrays(val1, val2)) {\n return false;\n }\n } else if (!areSimilarTypedArrays(val1, val2)) {\n return false;\n } // Buffer.compare returns true, so val1.length === val2.length. If they both\n // only contain numeric keys, we don't need to exam further than checking\n // the symbols.\n\n\n var _keys = getOwnNonIndexProperties(val1, ONLY_ENUMERABLE);\n\n var _keys2 = getOwnNonIndexProperties(val2, ONLY_ENUMERABLE);\n\n if (_keys.length !== _keys2.length) {\n return false;\n }\n\n return keyCheck(val1, val2, strict, memos, kNoIterator, _keys);\n } else if (isSet(val1)) {\n if (!isSet(val2) || val1.size !== val2.size) {\n return false;\n }\n\n return keyCheck(val1, val2, strict, memos, kIsSet);\n } else if (isMap(val1)) {\n if (!isMap(val2) || val1.size !== val2.size) {\n return false;\n }\n\n return keyCheck(val1, val2, strict, memos, kIsMap);\n } else if (isAnyArrayBuffer(val1)) {\n if (!areEqualArrayBuffers(val1, val2)) {\n return false;\n }\n } else if (isBoxedPrimitive(val1) && !isEqualBoxedPrimitive(val1, val2)) {\n return false;\n }\n\n return keyCheck(val1, val2, strict, memos, kNoIterator);\n}\n\nfunction getEnumerables(val, keys) {\n return keys.filter(function (k) {\n return propertyIsEnumerable(val, k);\n });\n}\n\nfunction keyCheck(val1, val2, strict, memos, iterationType, aKeys) {\n // For all remaining Object pairs, including Array, objects and Maps,\n // equivalence is determined by having:\n // a) The same number of owned enumerable properties\n // b) The same set of keys/indexes (although not necessarily the same order)\n // c) Equivalent values for every corresponding key/index\n // d) For Sets and Maps, equal contents\n // Note: this accounts for both named and indexed properties on Arrays.\n if (arguments.length === 5) {\n aKeys = Object.keys(val1);\n var bKeys = Object.keys(val2); // The pair must have the same number of owned properties.\n\n if (aKeys.length !== bKeys.length) {\n return false;\n }\n } // Cheap key test\n\n\n var i = 0;\n\n for (; i < aKeys.length; i++) {\n if (!hasOwnProperty(val2, aKeys[i])) {\n return false;\n }\n }\n\n if (strict && arguments.length === 5) {\n var symbolKeysA = objectGetOwnPropertySymbols(val1);\n\n if (symbolKeysA.length !== 0) {\n var count = 0;\n\n for (i = 0; i < symbolKeysA.length; i++) {\n var key = symbolKeysA[i];\n\n if (propertyIsEnumerable(val1, key)) {\n if (!propertyIsEnumerable(val2, key)) {\n return false;\n }\n\n aKeys.push(key);\n count++;\n } else if (propertyIsEnumerable(val2, key)) {\n return false;\n }\n }\n\n var symbolKeysB = objectGetOwnPropertySymbols(val2);\n\n if (symbolKeysA.length !== symbolKeysB.length && getEnumerables(val2, symbolKeysB).length !== count) {\n return false;\n }\n } else {\n var _symbolKeysB = objectGetOwnPropertySymbols(val2);\n\n if (_symbolKeysB.length !== 0 && getEnumerables(val2, _symbolKeysB).length !== 0) {\n return false;\n }\n }\n }\n\n if (aKeys.length === 0 && (iterationType === kNoIterator || iterationType === kIsArray && val1.length === 0 || val1.size === 0)) {\n return true;\n } // Use memos to handle cycles.\n\n\n if (memos === undefined) {\n memos = {\n val1: new Map(),\n val2: new Map(),\n position: 0\n };\n } else {\n // We prevent up to two map.has(x) calls by directly retrieving the value\n // and checking for undefined. The map can only contain numbers, so it is\n // safe to check for undefined only.\n var val2MemoA = memos.val1.get(val1);\n\n if (val2MemoA !== undefined) {\n var val2MemoB = memos.val2.get(val2);\n\n if (val2MemoB !== undefined) {\n return val2MemoA === val2MemoB;\n }\n }\n\n memos.position++;\n }\n\n memos.val1.set(val1, memos.position);\n memos.val2.set(val2, memos.position);\n var areEq = objEquiv(val1, val2, strict, aKeys, memos, iterationType);\n memos.val1.delete(val1);\n memos.val2.delete(val2);\n return areEq;\n}\n\nfunction setHasEqualElement(set, val1, strict, memo) {\n // Go looking.\n var setValues = arrayFromSet(set);\n\n for (var i = 0; i < setValues.length; i++) {\n var val2 = setValues[i];\n\n if (innerDeepEqual(val1, val2, strict, memo)) {\n // Remove the matching element to make sure we do not check that again.\n set.delete(val2);\n return true;\n }\n }\n\n return false;\n} // See https://developer.mozilla.org/en-US/docs/Web/JavaScript/Equality_comparisons_and_sameness#Loose_equality_using\n// Sadly it is not possible to detect corresponding values properly in case the\n// type is a string, number, bigint or boolean. The reason is that those values\n// can match lots of different string values (e.g., 1n == '+00001').\n\n\nfunction findLooseMatchingPrimitives(prim) {\n switch (_typeof(prim)) {\n case 'undefined':\n return null;\n\n case 'object':\n // Only pass in null as object!\n return undefined;\n\n case 'symbol':\n return false;\n\n case 'string':\n prim = +prim;\n // Loose equal entries exist only if the string is possible to convert to\n // a regular number and not NaN.\n // Fall through\n\n case 'number':\n if (numberIsNaN(prim)) {\n return false;\n }\n\n }\n\n return true;\n}\n\nfunction setMightHaveLoosePrim(a, b, prim) {\n var altValue = findLooseMatchingPrimitives(prim);\n if (altValue != null) return altValue;\n return b.has(altValue) && !a.has(altValue);\n}\n\nfunction mapMightHaveLoosePrim(a, b, prim, item, memo) {\n var altValue = findLooseMatchingPrimitives(prim);\n\n if (altValue != null) {\n return altValue;\n }\n\n var curB = b.get(altValue);\n\n if (curB === undefined && !b.has(altValue) || !innerDeepEqual(item, curB, false, memo)) {\n return false;\n }\n\n return !a.has(altValue) && innerDeepEqual(item, curB, false, memo);\n}\n\nfunction setEquiv(a, b, strict, memo) {\n // This is a lazily initiated Set of entries which have to be compared\n // pairwise.\n var set = null;\n var aValues = arrayFromSet(a);\n\n for (var i = 0; i < aValues.length; i++) {\n var val = aValues[i]; // Note: Checking for the objects first improves the performance for object\n // heavy sets but it is a minor slow down for primitives. As they are fast\n // to check this improves the worst case scenario instead.\n\n if (_typeof(val) === 'object' && val !== null) {\n if (set === null) {\n set = new Set();\n } // If the specified value doesn't exist in the second set its an not null\n // object (or non strict only: a not matching primitive) we'll need to go\n // hunting for something thats deep-(strict-)equal to it. To make this\n // O(n log n) complexity we have to copy these values in a new set first.\n\n\n set.add(val);\n } else if (!b.has(val)) {\n if (strict) return false; // Fast path to detect missing string, symbol, undefined and null values.\n\n if (!setMightHaveLoosePrim(a, b, val)) {\n return false;\n }\n\n if (set === null) {\n set = new Set();\n }\n\n set.add(val);\n }\n }\n\n if (set !== null) {\n var bValues = arrayFromSet(b);\n\n for (var _i = 0; _i < bValues.length; _i++) {\n var _val = bValues[_i]; // We have to check if a primitive value is already\n // matching and only if it's not, go hunting for it.\n\n if (_typeof(_val) === 'object' && _val !== null) {\n if (!setHasEqualElement(set, _val, strict, memo)) return false;\n } else if (!strict && !a.has(_val) && !setHasEqualElement(set, _val, strict, memo)) {\n return false;\n }\n }\n\n return set.size === 0;\n }\n\n return true;\n}\n\nfunction mapHasEqualEntry(set, map, key1, item1, strict, memo) {\n // To be able to handle cases like:\n // Map([[{}, 'a'], [{}, 'b']]) vs Map([[{}, 'b'], [{}, 'a']])\n // ... we need to consider *all* matching keys, not just the first we find.\n var setValues = arrayFromSet(set);\n\n for (var i = 0; i < setValues.length; i++) {\n var key2 = setValues[i];\n\n if (innerDeepEqual(key1, key2, strict, memo) && innerDeepEqual(item1, map.get(key2), strict, memo)) {\n set.delete(key2);\n return true;\n }\n }\n\n return false;\n}\n\nfunction mapEquiv(a, b, strict, memo) {\n var set = null;\n var aEntries = arrayFromMap(a);\n\n for (var i = 0; i < aEntries.length; i++) {\n var _aEntries$i = _slicedToArray(aEntries[i], 2),\n key = _aEntries$i[0],\n item1 = _aEntries$i[1];\n\n if (_typeof(key) === 'object' && key !== null) {\n if (set === null) {\n set = new Set();\n }\n\n set.add(key);\n } else {\n // By directly retrieving the value we prevent another b.has(key) check in\n // almost all possible cases.\n var item2 = b.get(key);\n\n if (item2 === undefined && !b.has(key) || !innerDeepEqual(item1, item2, strict, memo)) {\n if (strict) return false; // Fast path to detect missing string, symbol, undefined and null\n // keys.\n\n if (!mapMightHaveLoosePrim(a, b, key, item1, memo)) return false;\n\n if (set === null) {\n set = new Set();\n }\n\n set.add(key);\n }\n }\n }\n\n if (set !== null) {\n var bEntries = arrayFromMap(b);\n\n for (var _i2 = 0; _i2 < bEntries.length; _i2++) {\n var _bEntries$_i = _slicedToArray(bEntries[_i2], 2),\n key = _bEntries$_i[0],\n item = _bEntries$_i[1];\n\n if (_typeof(key) === 'object' && key !== null) {\n if (!mapHasEqualEntry(set, a, key, item, strict, memo)) return false;\n } else if (!strict && (!a.has(key) || !innerDeepEqual(a.get(key), item, false, memo)) && !mapHasEqualEntry(set, a, key, item, false, memo)) {\n return false;\n }\n }\n\n return set.size === 0;\n }\n\n return true;\n}\n\nfunction objEquiv(a, b, strict, keys, memos, iterationType) {\n // Sets and maps don't have their entries accessible via normal object\n // properties.\n var i = 0;\n\n if (iterationType === kIsSet) {\n if (!setEquiv(a, b, strict, memos)) {\n return false;\n }\n } else if (iterationType === kIsMap) {\n if (!mapEquiv(a, b, strict, memos)) {\n return false;\n }\n } else if (iterationType === kIsArray) {\n for (; i < a.length; i++) {\n if (hasOwnProperty(a, i)) {\n if (!hasOwnProperty(b, i) || !innerDeepEqual(a[i], b[i], strict, memos)) {\n return false;\n }\n } else if (hasOwnProperty(b, i)) {\n return false;\n } else {\n // Array is sparse.\n var keysA = Object.keys(a);\n\n for (; i < keysA.length; i++) {\n var key = keysA[i];\n\n if (!hasOwnProperty(b, key) || !innerDeepEqual(a[key], b[key], strict, memos)) {\n return false;\n }\n }\n\n if (keysA.length !== Object.keys(b).length) {\n return false;\n }\n\n return true;\n }\n }\n } // The pair must have equivalent values for every corresponding key.\n // Possibly expensive deep test:\n\n\n for (i = 0; i < keys.length; i++) {\n var _key = keys[i];\n\n if (!innerDeepEqual(a[_key], b[_key], strict, memos)) {\n return false;\n }\n }\n\n return true;\n}\n\nfunction isDeepEqual(val1, val2) {\n return innerDeepEqual(val1, val2, kLoose);\n}\n\nfunction isDeepStrictEqual(val1, val2) {\n return innerDeepEqual(val1, val2, kStrict);\n}\n\nmodule.exports = {\n isDeepEqual: isDeepEqual,\n isDeepStrictEqual: isDeepStrictEqual\n};","'use strict';\n\nvar possibleNames = [\n\t'BigInt64Array',\n\t'BigUint64Array',\n\t'Float32Array',\n\t'Float64Array',\n\t'Int16Array',\n\t'Int32Array',\n\t'Int8Array',\n\t'Uint16Array',\n\t'Uint32Array',\n\t'Uint8Array',\n\t'Uint8ClampedArray'\n];\n\nmodule.exports = function availableTypedArrays() {\n\tvar out = [];\n\tfor (var i = 0; i < possibleNames.length; i++) {\n\t\tif (typeof global[possibleNames[i]] === 'function') {\n\t\t\tout[out.length] = possibleNames[i];\n\t\t}\n\t}\n\treturn out;\n};\n","\n/**\n * @copyright Copyright (c) 2020 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n\nconst hideDownloadElmt = document.getElementById('hideDownload')\n// true = hidden download\nexport default () => !hideDownloadElmt || (hideDownloadElmt && hideDownloadElmt.value !== 'true')\n","/**\n * @copyright Copyright (c) 2020 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\nexport default function() {\n\t// Not within iframe\n\tif (window.location !== window.parent.location) {\n\t\treturn\n\t}\n\n\twindow.location.href = '/'\n}\n","'use strict';\n\nvar GetIntrinsic = require('get-intrinsic');\n\nvar callBind = require('./');\n\nvar $indexOf = callBind(GetIntrinsic('String.prototype.indexOf'));\n\nmodule.exports = function callBoundIntrinsic(name, allowMissing) {\n\tvar intrinsic = GetIntrinsic(name, !!allowMissing);\n\tif (typeof intrinsic === 'function' && $indexOf(name, '.prototype.') > -1) {\n\t\treturn callBind(intrinsic);\n\t}\n\treturn intrinsic;\n};\n","'use strict';\n\nvar bind = require('function-bind');\nvar GetIntrinsic = require('get-intrinsic');\n\nvar $apply = GetIntrinsic('%Function.prototype.apply%');\nvar $call = GetIntrinsic('%Function.prototype.call%');\nvar $reflectApply = GetIntrinsic('%Reflect.apply%', true) || bind.call($call, $apply);\n\nvar $gOPD = GetIntrinsic('%Object.getOwnPropertyDescriptor%', true);\nvar $defineProperty = GetIntrinsic('%Object.defineProperty%', true);\nvar $max = GetIntrinsic('%Math.max%');\n\nif ($defineProperty) {\n\ttry {\n\t\t$defineProperty({}, 'a', { value: 1 });\n\t} catch (e) {\n\t\t// IE 8 has a broken defineProperty\n\t\t$defineProperty = null;\n\t}\n}\n\nmodule.exports = function callBind(originalFunction) {\n\tvar func = $reflectApply(bind, $call, arguments);\n\tif ($gOPD && $defineProperty) {\n\t\tvar desc = $gOPD(func, 'length');\n\t\tif (desc.configurable) {\n\t\t\t// original length, plus the receiver, minus any additional arguments (after the receiver)\n\t\t\t$defineProperty(\n\t\t\t\tfunc,\n\t\t\t\t'length',\n\t\t\t\t{ value: 1 + $max(0, originalFunction.length - (arguments.length - 1)) }\n\t\t\t);\n\t\t}\n\t}\n\treturn func;\n};\n\nvar applyBind = function applyBind() {\n\treturn $reflectApply(bind, $apply, arguments);\n};\n\nif ($defineProperty) {\n\t$defineProperty(module.exports, 'apply', { value: applyBind });\n} else {\n\tmodule.exports.apply = applyBind;\n}\n","/*global window, global*/\nvar util = require(\"util\")\nvar assert = require(\"assert\")\nfunction now() { return new Date().getTime() }\n\nvar slice = Array.prototype.slice\nvar console\nvar times = {}\n\nif (typeof global !== \"undefined\" && global.console) {\n console = global.console\n} else if (typeof window !== \"undefined\" && window.console) {\n console = window.console\n} else {\n console = {}\n}\n\nvar functions = [\n [log, \"log\"],\n [info, \"info\"],\n [warn, \"warn\"],\n [error, \"error\"],\n [time, \"time\"],\n [timeEnd, \"timeEnd\"],\n [trace, \"trace\"],\n [dir, \"dir\"],\n [consoleAssert, \"assert\"]\n]\n\nfor (var i = 0; i < functions.length; i++) {\n var tuple = functions[i]\n var f = tuple[0]\n var name = tuple[1]\n\n if (!console[name]) {\n console[name] = f\n }\n}\n\nmodule.exports = console\n\nfunction log() {}\n\nfunction info() {\n console.log.apply(console, arguments)\n}\n\nfunction warn() {\n console.log.apply(console, arguments)\n}\n\nfunction error() {\n console.warn.apply(console, arguments)\n}\n\nfunction time(label) {\n times[label] = now()\n}\n\nfunction timeEnd(label) {\n var time = times[label]\n if (!time) {\n throw new Error(\"No such label: \" + label)\n }\n\n delete times[label]\n var duration = now() - time\n console.log(label + \": \" + duration + \"ms\")\n}\n\nfunction trace() {\n var err = new Error()\n err.name = \"Trace\"\n err.message = util.format.apply(null, arguments)\n console.error(err.stack)\n}\n\nfunction dir(object) {\n console.log(util.inspect(object) + \"\\n\")\n}\n\nfunction consoleAssert(expression) {\n if (!expression) {\n var arr = slice.call(arguments, 1)\n assert.ok(false, util.format.apply(null, arr))\n }\n}\n","'use strict';\n\nvar keys = require('object-keys');\nvar hasSymbols = typeof Symbol === 'function' && typeof Symbol('foo') === 'symbol';\n\nvar toStr = Object.prototype.toString;\nvar concat = Array.prototype.concat;\nvar origDefineProperty = Object.defineProperty;\n\nvar isFunction = function (fn) {\n\treturn typeof fn === 'function' && toStr.call(fn) === '[object Function]';\n};\n\nvar arePropertyDescriptorsSupported = function () {\n\tvar obj = {};\n\ttry {\n\t\torigDefineProperty(obj, 'x', { enumerable: false, value: obj });\n\t\t// eslint-disable-next-line no-unused-vars, no-restricted-syntax\n\t\tfor (var _ in obj) { // jscs:ignore disallowUnusedVariables\n\t\t\treturn false;\n\t\t}\n\t\treturn obj.x === obj;\n\t} catch (e) { /* this is IE 8. */\n\t\treturn false;\n\t}\n};\nvar supportsDescriptors = origDefineProperty && arePropertyDescriptorsSupported();\n\nvar defineProperty = function (object, name, value, predicate) {\n\tif (name in object && (!isFunction(predicate) || !predicate())) {\n\t\treturn;\n\t}\n\tif (supportsDescriptors) {\n\t\torigDefineProperty(object, name, {\n\t\t\tconfigurable: true,\n\t\t\tenumerable: false,\n\t\t\tvalue: value,\n\t\t\twritable: true\n\t\t});\n\t} else {\n\t\tobject[name] = value;\n\t}\n};\n\nvar defineProperties = function (object, map) {\n\tvar predicates = arguments.length > 2 ? arguments[2] : {};\n\tvar props = keys(map);\n\tif (hasSymbols) {\n\t\tprops = concat.call(props, Object.getOwnPropertySymbols(map));\n\t}\n\tfor (var i = 0; i < props.length; i += 1) {\n\t\tdefineProperty(object, props[i], map[props[i]], predicates[props[i]]);\n\t}\n};\n\ndefineProperties.supportsDescriptors = !!supportsDescriptors;\n\nmodule.exports = defineProperties;\n","'use strict';\n\nvar GetIntrinsic = require('get-intrinsic');\n\nvar $gOPD = GetIntrinsic('%Object.getOwnPropertyDescriptor%');\nif ($gOPD) {\n\ttry {\n\t\t$gOPD([], 'length');\n\t} catch (e) {\n\t\t// IE 8 has a broken gOPD\n\t\t$gOPD = null;\n\t}\n}\n\nmodule.exports = $gOPD;\n","/**\n * Code refactored from Mozilla Developer Network:\n * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/assign\n */\n\n'use strict';\n\nfunction assign(target, firstSource) {\n if (target === undefined || target === null) {\n throw new TypeError('Cannot convert first argument to object');\n }\n\n var to = Object(target);\n for (var i = 1; i < arguments.length; i++) {\n var nextSource = arguments[i];\n if (nextSource === undefined || nextSource === null) {\n continue;\n }\n\n var keysArray = Object.keys(Object(nextSource));\n for (var nextIndex = 0, len = keysArray.length; nextIndex < len; nextIndex++) {\n var nextKey = keysArray[nextIndex];\n var desc = Object.getOwnPropertyDescriptor(nextSource, nextKey);\n if (desc !== undefined && desc.enumerable) {\n to[nextKey] = nextSource[nextKey];\n }\n }\n }\n return to;\n}\n\nfunction polyfill() {\n if (!Object.assign) {\n Object.defineProperty(Object, 'assign', {\n enumerable: false,\n configurable: true,\n writable: true,\n value: assign\n });\n }\n}\n\nmodule.exports = {\n assign: assign,\n polyfill: polyfill\n};\n","\nvar hasOwn = Object.prototype.hasOwnProperty;\nvar toString = Object.prototype.toString;\n\nmodule.exports = function forEach (obj, fn, ctx) {\n if (toString.call(fn) !== '[object Function]') {\n throw new TypeError('iterator must be a function');\n }\n var l = obj.length;\n if (l === +l) {\n for (var i = 0; i < l; i++) {\n fn.call(ctx, obj[i], i, obj);\n }\n } else {\n for (var k in obj) {\n if (hasOwn.call(obj, k)) {\n fn.call(ctx, obj[k], k, obj);\n }\n }\n }\n};\n\n","'use strict';\n\n/* eslint no-invalid-this: 1 */\n\nvar ERROR_MESSAGE = 'Function.prototype.bind called on incompatible ';\nvar slice = Array.prototype.slice;\nvar toStr = Object.prototype.toString;\nvar funcType = '[object Function]';\n\nmodule.exports = function bind(that) {\n var target = this;\n if (typeof target !== 'function' || toStr.call(target) !== funcType) {\n throw new TypeError(ERROR_MESSAGE + target);\n }\n var args = slice.call(arguments, 1);\n\n var bound;\n var binder = function () {\n if (this instanceof bound) {\n var result = target.apply(\n this,\n args.concat(slice.call(arguments))\n );\n if (Object(result) === result) {\n return result;\n }\n return this;\n } else {\n return target.apply(\n that,\n args.concat(slice.call(arguments))\n );\n }\n };\n\n var boundLength = Math.max(0, target.length - args.length);\n var boundArgs = [];\n for (var i = 0; i < boundLength; i++) {\n boundArgs.push('$' + i);\n }\n\n bound = Function('binder', 'return function (' + boundArgs.join(',') + '){ return binder.apply(this,arguments); }')(binder);\n\n if (target.prototype) {\n var Empty = function Empty() {};\n Empty.prototype = target.prototype;\n bound.prototype = new Empty();\n Empty.prototype = null;\n }\n\n return bound;\n};\n","'use strict';\n\nvar implementation = require('./implementation');\n\nmodule.exports = Function.prototype.bind || implementation;\n","'use strict';\n\nvar undefined;\n\nvar $SyntaxError = SyntaxError;\nvar $Function = Function;\nvar $TypeError = TypeError;\n\n// eslint-disable-next-line consistent-return\nvar getEvalledConstructor = function (expressionSyntax) {\n\ttry {\n\t\treturn $Function('\"use strict\"; return (' + expressionSyntax + ').constructor;')();\n\t} catch (e) {}\n};\n\nvar $gOPD = Object.getOwnPropertyDescriptor;\nif ($gOPD) {\n\ttry {\n\t\t$gOPD({}, '');\n\t} catch (e) {\n\t\t$gOPD = null; // this is IE 8, which has a broken gOPD\n\t}\n}\n\nvar throwTypeError = function () {\n\tthrow new $TypeError();\n};\nvar ThrowTypeError = $gOPD\n\t? (function () {\n\t\ttry {\n\t\t\t// eslint-disable-next-line no-unused-expressions, no-caller, no-restricted-properties\n\t\t\targuments.callee; // IE 8 does not throw here\n\t\t\treturn throwTypeError;\n\t\t} catch (calleeThrows) {\n\t\t\ttry {\n\t\t\t\t// IE 8 throws on Object.getOwnPropertyDescriptor(arguments, '')\n\t\t\t\treturn $gOPD(arguments, 'callee').get;\n\t\t\t} catch (gOPDthrows) {\n\t\t\t\treturn throwTypeError;\n\t\t\t}\n\t\t}\n\t}())\n\t: throwTypeError;\n\nvar hasSymbols = require('has-symbols')();\n\nvar getProto = Object.getPrototypeOf || function (x) { return x.__proto__; }; // eslint-disable-line no-proto\n\nvar needsEval = {};\n\nvar TypedArray = typeof Uint8Array === 'undefined' ? undefined : getProto(Uint8Array);\n\nvar INTRINSICS = {\n\t'%AggregateError%': typeof AggregateError === 'undefined' ? undefined : AggregateError,\n\t'%Array%': Array,\n\t'%ArrayBuffer%': typeof ArrayBuffer === 'undefined' ? undefined : ArrayBuffer,\n\t'%ArrayIteratorPrototype%': hasSymbols ? getProto([][Symbol.iterator]()) : undefined,\n\t'%AsyncFromSyncIteratorPrototype%': undefined,\n\t'%AsyncFunction%': needsEval,\n\t'%AsyncGenerator%': needsEval,\n\t'%AsyncGeneratorFunction%': needsEval,\n\t'%AsyncIteratorPrototype%': needsEval,\n\t'%Atomics%': typeof Atomics === 'undefined' ? undefined : Atomics,\n\t'%BigInt%': typeof BigInt === 'undefined' ? undefined : BigInt,\n\t'%Boolean%': Boolean,\n\t'%DataView%': typeof DataView === 'undefined' ? undefined : DataView,\n\t'%Date%': Date,\n\t'%decodeURI%': decodeURI,\n\t'%decodeURIComponent%': decodeURIComponent,\n\t'%encodeURI%': encodeURI,\n\t'%encodeURIComponent%': encodeURIComponent,\n\t'%Error%': Error,\n\t'%eval%': eval, // eslint-disable-line no-eval\n\t'%EvalError%': EvalError,\n\t'%Float32Array%': typeof Float32Array === 'undefined' ? undefined : Float32Array,\n\t'%Float64Array%': typeof Float64Array === 'undefined' ? undefined : Float64Array,\n\t'%FinalizationRegistry%': typeof FinalizationRegistry === 'undefined' ? undefined : FinalizationRegistry,\n\t'%Function%': $Function,\n\t'%GeneratorFunction%': needsEval,\n\t'%Int8Array%': typeof Int8Array === 'undefined' ? undefined : Int8Array,\n\t'%Int16Array%': typeof Int16Array === 'undefined' ? undefined : Int16Array,\n\t'%Int32Array%': typeof Int32Array === 'undefined' ? undefined : Int32Array,\n\t'%isFinite%': isFinite,\n\t'%isNaN%': isNaN,\n\t'%IteratorPrototype%': hasSymbols ? getProto(getProto([][Symbol.iterator]())) : undefined,\n\t'%JSON%': typeof JSON === 'object' ? JSON : undefined,\n\t'%Map%': typeof Map === 'undefined' ? undefined : Map,\n\t'%MapIteratorPrototype%': typeof Map === 'undefined' || !hasSymbols ? undefined : getProto(new Map()[Symbol.iterator]()),\n\t'%Math%': Math,\n\t'%Number%': Number,\n\t'%Object%': Object,\n\t'%parseFloat%': parseFloat,\n\t'%parseInt%': parseInt,\n\t'%Promise%': typeof Promise === 'undefined' ? undefined : Promise,\n\t'%Proxy%': typeof Proxy === 'undefined' ? undefined : Proxy,\n\t'%RangeError%': RangeError,\n\t'%ReferenceError%': ReferenceError,\n\t'%Reflect%': typeof Reflect === 'undefined' ? undefined : Reflect,\n\t'%RegExp%': RegExp,\n\t'%Set%': typeof Set === 'undefined' ? undefined : Set,\n\t'%SetIteratorPrototype%': typeof Set === 'undefined' || !hasSymbols ? undefined : getProto(new Set()[Symbol.iterator]()),\n\t'%SharedArrayBuffer%': typeof SharedArrayBuffer === 'undefined' ? undefined : SharedArrayBuffer,\n\t'%String%': String,\n\t'%StringIteratorPrototype%': hasSymbols ? getProto(''[Symbol.iterator]()) : undefined,\n\t'%Symbol%': hasSymbols ? Symbol : undefined,\n\t'%SyntaxError%': $SyntaxError,\n\t'%ThrowTypeError%': ThrowTypeError,\n\t'%TypedArray%': TypedArray,\n\t'%TypeError%': $TypeError,\n\t'%Uint8Array%': typeof Uint8Array === 'undefined' ? undefined : Uint8Array,\n\t'%Uint8ClampedArray%': typeof Uint8ClampedArray === 'undefined' ? undefined : Uint8ClampedArray,\n\t'%Uint16Array%': typeof Uint16Array === 'undefined' ? undefined : Uint16Array,\n\t'%Uint32Array%': typeof Uint32Array === 'undefined' ? undefined : Uint32Array,\n\t'%URIError%': URIError,\n\t'%WeakMap%': typeof WeakMap === 'undefined' ? undefined : WeakMap,\n\t'%WeakRef%': typeof WeakRef === 'undefined' ? undefined : WeakRef,\n\t'%WeakSet%': typeof WeakSet === 'undefined' ? undefined : WeakSet\n};\n\nvar doEval = function doEval(name) {\n\tvar value;\n\tif (name === '%AsyncFunction%') {\n\t\tvalue = getEvalledConstructor('async function () {}');\n\t} else if (name === '%GeneratorFunction%') {\n\t\tvalue = getEvalledConstructor('function* () {}');\n\t} else if (name === '%AsyncGeneratorFunction%') {\n\t\tvalue = getEvalledConstructor('async function* () {}');\n\t} else if (name === '%AsyncGenerator%') {\n\t\tvar fn = doEval('%AsyncGeneratorFunction%');\n\t\tif (fn) {\n\t\t\tvalue = fn.prototype;\n\t\t}\n\t} else if (name === '%AsyncIteratorPrototype%') {\n\t\tvar gen = doEval('%AsyncGenerator%');\n\t\tif (gen) {\n\t\t\tvalue = getProto(gen.prototype);\n\t\t}\n\t}\n\n\tINTRINSICS[name] = value;\n\n\treturn value;\n};\n\nvar LEGACY_ALIASES = {\n\t'%ArrayBufferPrototype%': ['ArrayBuffer', 'prototype'],\n\t'%ArrayPrototype%': ['Array', 'prototype'],\n\t'%ArrayProto_entries%': ['Array', 'prototype', 'entries'],\n\t'%ArrayProto_forEach%': ['Array', 'prototype', 'forEach'],\n\t'%ArrayProto_keys%': ['Array', 'prototype', 'keys'],\n\t'%ArrayProto_values%': ['Array', 'prototype', 'values'],\n\t'%AsyncFunctionPrototype%': ['AsyncFunction', 'prototype'],\n\t'%AsyncGenerator%': ['AsyncGeneratorFunction', 'prototype'],\n\t'%AsyncGeneratorPrototype%': ['AsyncGeneratorFunction', 'prototype', 'prototype'],\n\t'%BooleanPrototype%': ['Boolean', 'prototype'],\n\t'%DataViewPrototype%': ['DataView', 'prototype'],\n\t'%DatePrototype%': ['Date', 'prototype'],\n\t'%ErrorPrototype%': ['Error', 'prototype'],\n\t'%EvalErrorPrototype%': ['EvalError', 'prototype'],\n\t'%Float32ArrayPrototype%': ['Float32Array', 'prototype'],\n\t'%Float64ArrayPrototype%': ['Float64Array', 'prototype'],\n\t'%FunctionPrototype%': ['Function', 'prototype'],\n\t'%Generator%': ['GeneratorFunction', 'prototype'],\n\t'%GeneratorPrototype%': ['GeneratorFunction', 'prototype', 'prototype'],\n\t'%Int8ArrayPrototype%': ['Int8Array', 'prototype'],\n\t'%Int16ArrayPrototype%': ['Int16Array', 'prototype'],\n\t'%Int32ArrayPrototype%': ['Int32Array', 'prototype'],\n\t'%JSONParse%': ['JSON', 'parse'],\n\t'%JSONStringify%': ['JSON', 'stringify'],\n\t'%MapPrototype%': ['Map', 'prototype'],\n\t'%NumberPrototype%': ['Number', 'prototype'],\n\t'%ObjectPrototype%': ['Object', 'prototype'],\n\t'%ObjProto_toString%': ['Object', 'prototype', 'toString'],\n\t'%ObjProto_valueOf%': ['Object', 'prototype', 'valueOf'],\n\t'%PromisePrototype%': ['Promise', 'prototype'],\n\t'%PromiseProto_then%': ['Promise', 'prototype', 'then'],\n\t'%Promise_all%': ['Promise', 'all'],\n\t'%Promise_reject%': ['Promise', 'reject'],\n\t'%Promise_resolve%': ['Promise', 'resolve'],\n\t'%RangeErrorPrototype%': ['RangeError', 'prototype'],\n\t'%ReferenceErrorPrototype%': ['ReferenceError', 'prototype'],\n\t'%RegExpPrototype%': ['RegExp', 'prototype'],\n\t'%SetPrototype%': ['Set', 'prototype'],\n\t'%SharedArrayBufferPrototype%': ['SharedArrayBuffer', 'prototype'],\n\t'%StringPrototype%': ['String', 'prototype'],\n\t'%SymbolPrototype%': ['Symbol', 'prototype'],\n\t'%SyntaxErrorPrototype%': ['SyntaxError', 'prototype'],\n\t'%TypedArrayPrototype%': ['TypedArray', 'prototype'],\n\t'%TypeErrorPrototype%': ['TypeError', 'prototype'],\n\t'%Uint8ArrayPrototype%': ['Uint8Array', 'prototype'],\n\t'%Uint8ClampedArrayPrototype%': ['Uint8ClampedArray', 'prototype'],\n\t'%Uint16ArrayPrototype%': ['Uint16Array', 'prototype'],\n\t'%Uint32ArrayPrototype%': ['Uint32Array', 'prototype'],\n\t'%URIErrorPrototype%': ['URIError', 'prototype'],\n\t'%WeakMapPrototype%': ['WeakMap', 'prototype'],\n\t'%WeakSetPrototype%': ['WeakSet', 'prototype']\n};\n\nvar bind = require('function-bind');\nvar hasOwn = require('has');\nvar $concat = bind.call(Function.call, Array.prototype.concat);\nvar $spliceApply = bind.call(Function.apply, Array.prototype.splice);\nvar $replace = bind.call(Function.call, String.prototype.replace);\nvar $strSlice = bind.call(Function.call, String.prototype.slice);\n\n/* adapted from https://github.com/lodash/lodash/blob/4.17.15/dist/lodash.js#L6735-L6744 */\nvar rePropName = /[^%.[\\]]+|\\[(?:(-?\\d+(?:\\.\\d+)?)|([\"'])((?:(?!\\2)[^\\\\]|\\\\.)*?)\\2)\\]|(?=(?:\\.|\\[\\])(?:\\.|\\[\\]|%$))/g;\nvar reEscapeChar = /\\\\(\\\\)?/g; /** Used to match backslashes in property paths. */\nvar stringToPath = function stringToPath(string) {\n\tvar first = $strSlice(string, 0, 1);\n\tvar last = $strSlice(string, -1);\n\tif (first === '%' && last !== '%') {\n\t\tthrow new $SyntaxError('invalid intrinsic syntax, expected closing `%`');\n\t} else if (last === '%' && first !== '%') {\n\t\tthrow new $SyntaxError('invalid intrinsic syntax, expected opening `%`');\n\t}\n\tvar result = [];\n\t$replace(string, rePropName, function (match, number, quote, subString) {\n\t\tresult[result.length] = quote ? $replace(subString, reEscapeChar, '$1') : number || match;\n\t});\n\treturn result;\n};\n/* end adaptation */\n\nvar getBaseIntrinsic = function getBaseIntrinsic(name, allowMissing) {\n\tvar intrinsicName = name;\n\tvar alias;\n\tif (hasOwn(LEGACY_ALIASES, intrinsicName)) {\n\t\talias = LEGACY_ALIASES[intrinsicName];\n\t\tintrinsicName = '%' + alias[0] + '%';\n\t}\n\n\tif (hasOwn(INTRINSICS, intrinsicName)) {\n\t\tvar value = INTRINSICS[intrinsicName];\n\t\tif (value === needsEval) {\n\t\t\tvalue = doEval(intrinsicName);\n\t\t}\n\t\tif (typeof value === 'undefined' && !allowMissing) {\n\t\t\tthrow new $TypeError('intrinsic ' + name + ' exists, but is not available. Please file an issue!');\n\t\t}\n\n\t\treturn {\n\t\t\talias: alias,\n\t\t\tname: intrinsicName,\n\t\t\tvalue: value\n\t\t};\n\t}\n\n\tthrow new $SyntaxError('intrinsic ' + name + ' does not exist!');\n};\n\nmodule.exports = function GetIntrinsic(name, allowMissing) {\n\tif (typeof name !== 'string' || name.length === 0) {\n\t\tthrow new $TypeError('intrinsic name must be a non-empty string');\n\t}\n\tif (arguments.length > 1 && typeof allowMissing !== 'boolean') {\n\t\tthrow new $TypeError('\"allowMissing\" argument must be a boolean');\n\t}\n\n\tvar parts = stringToPath(name);\n\tvar intrinsicBaseName = parts.length > 0 ? parts[0] : '';\n\n\tvar intrinsic = getBaseIntrinsic('%' + intrinsicBaseName + '%', allowMissing);\n\tvar intrinsicRealName = intrinsic.name;\n\tvar value = intrinsic.value;\n\tvar skipFurtherCaching = false;\n\n\tvar alias = intrinsic.alias;\n\tif (alias) {\n\t\tintrinsicBaseName = alias[0];\n\t\t$spliceApply(parts, $concat([0, 1], alias));\n\t}\n\n\tfor (var i = 1, isOwn = true; i < parts.length; i += 1) {\n\t\tvar part = parts[i];\n\t\tvar first = $strSlice(part, 0, 1);\n\t\tvar last = $strSlice(part, -1);\n\t\tif (\n\t\t\t(\n\t\t\t\t(first === '\"' || first === \"'\" || first === '`')\n\t\t\t\t|| (last === '\"' || last === \"'\" || last === '`')\n\t\t\t)\n\t\t\t&& first !== last\n\t\t) {\n\t\t\tthrow new $SyntaxError('property names with quotes must have matching quotes');\n\t\t}\n\t\tif (part === 'constructor' || !isOwn) {\n\t\t\tskipFurtherCaching = true;\n\t\t}\n\n\t\tintrinsicBaseName += '.' + part;\n\t\tintrinsicRealName = '%' + intrinsicBaseName + '%';\n\n\t\tif (hasOwn(INTRINSICS, intrinsicRealName)) {\n\t\t\tvalue = INTRINSICS[intrinsicRealName];\n\t\t} else if (value != null) {\n\t\t\tif (!(part in value)) {\n\t\t\t\tif (!allowMissing) {\n\t\t\t\t\tthrow new $TypeError('base intrinsic for ' + name + ' exists, but the property is not available.');\n\t\t\t\t}\n\t\t\t\treturn void undefined;\n\t\t\t}\n\t\t\tif ($gOPD && (i + 1) >= parts.length) {\n\t\t\t\tvar desc = $gOPD(value, part);\n\t\t\t\tisOwn = !!desc;\n\n\t\t\t\t// By convention, when a data property is converted to an accessor\n\t\t\t\t// property to emulate a data property that does not suffer from\n\t\t\t\t// the override mistake, that accessor's getter is marked with\n\t\t\t\t// an `originalValue` property. Here, when we detect this, we\n\t\t\t\t// uphold the illusion by pretending to see that original data\n\t\t\t\t// property, i.e., returning the value rather than the getter\n\t\t\t\t// itself.\n\t\t\t\tif (isOwn && 'get' in desc && !('originalValue' in desc.get)) {\n\t\t\t\t\tvalue = desc.get;\n\t\t\t\t} else {\n\t\t\t\t\tvalue = value[part];\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tisOwn = hasOwn(value, part);\n\t\t\t\tvalue = value[part];\n\t\t\t}\n\n\t\t\tif (isOwn && !skipFurtherCaching) {\n\t\t\t\tINTRINSICS[intrinsicRealName] = value;\n\t\t\t}\n\t\t}\n\t}\n\treturn value;\n};\n","'use strict';\n\nvar origSymbol = typeof Symbol !== 'undefined' && Symbol;\nvar hasSymbolSham = require('./shams');\n\nmodule.exports = function hasNativeSymbols() {\n\tif (typeof origSymbol !== 'function') { return false; }\n\tif (typeof Symbol !== 'function') { return false; }\n\tif (typeof origSymbol('foo') !== 'symbol') { return false; }\n\tif (typeof Symbol('bar') !== 'symbol') { return false; }\n\n\treturn hasSymbolSham();\n};\n","'use strict';\n\n/* eslint complexity: [2, 18], max-statements: [2, 33] */\nmodule.exports = function hasSymbols() {\n\tif (typeof Symbol !== 'function' || typeof Object.getOwnPropertySymbols !== 'function') { return false; }\n\tif (typeof Symbol.iterator === 'symbol') { return true; }\n\n\tvar obj = {};\n\tvar sym = Symbol('test');\n\tvar symObj = Object(sym);\n\tif (typeof sym === 'string') { return false; }\n\n\tif (Object.prototype.toString.call(sym) !== '[object Symbol]') { return false; }\n\tif (Object.prototype.toString.call(symObj) !== '[object Symbol]') { return false; }\n\n\t// temp disabled per https://github.com/ljharb/object.assign/issues/17\n\t// if (sym instanceof Symbol) { return false; }\n\t// temp disabled per https://github.com/WebReflection/get-own-property-symbols/issues/4\n\t// if (!(symObj instanceof Symbol)) { return false; }\n\n\t// if (typeof Symbol.prototype.toString !== 'function') { return false; }\n\t// if (String(sym) !== Symbol.prototype.toString.call(sym)) { return false; }\n\n\tvar symVal = 42;\n\tobj[sym] = symVal;\n\tfor (sym in obj) { return false; } // eslint-disable-line no-restricted-syntax, no-unreachable-loop\n\tif (typeof Object.keys === 'function' && Object.keys(obj).length !== 0) { return false; }\n\n\tif (typeof Object.getOwnPropertyNames === 'function' && Object.getOwnPropertyNames(obj).length !== 0) { return false; }\n\n\tvar syms = Object.getOwnPropertySymbols(obj);\n\tif (syms.length !== 1 || syms[0] !== sym) { return false; }\n\n\tif (!Object.prototype.propertyIsEnumerable.call(obj, sym)) { return false; }\n\n\tif (typeof Object.getOwnPropertyDescriptor === 'function') {\n\t\tvar descriptor = Object.getOwnPropertyDescriptor(obj, sym);\n\t\tif (descriptor.value !== symVal || descriptor.enumerable !== true) { return false; }\n\t}\n\n\treturn true;\n};\n","'use strict';\n\nvar bind = require('function-bind');\n\nmodule.exports = bind.call(Function.call, Object.prototype.hasOwnProperty);\n","if (typeof Object.create === 'function') {\n // implementation from standard node.js 'util' module\n module.exports = function inherits(ctor, superCtor) {\n if (superCtor) {\n ctor.super_ = superCtor\n ctor.prototype = Object.create(superCtor.prototype, {\n constructor: {\n value: ctor,\n enumerable: false,\n writable: true,\n configurable: true\n }\n })\n }\n };\n} else {\n // old school shim for old browsers\n module.exports = function inherits(ctor, superCtor) {\n if (superCtor) {\n ctor.super_ = superCtor\n var TempCtor = function () {}\n TempCtor.prototype = superCtor.prototype\n ctor.prototype = new TempCtor()\n ctor.prototype.constructor = ctor\n }\n }\n}\n","'use strict';\n\nvar hasToStringTag = typeof Symbol === 'function' && typeof Symbol.toStringTag === 'symbol';\nvar callBound = require('call-bind/callBound');\n\nvar $toString = callBound('Object.prototype.toString');\n\nvar isStandardArguments = function isArguments(value) {\n\tif (hasToStringTag && value && typeof value === 'object' && Symbol.toStringTag in value) {\n\t\treturn false;\n\t}\n\treturn $toString(value) === '[object Arguments]';\n};\n\nvar isLegacyArguments = function isArguments(value) {\n\tif (isStandardArguments(value)) {\n\t\treturn true;\n\t}\n\treturn value !== null &&\n\t\ttypeof value === 'object' &&\n\t\ttypeof value.length === 'number' &&\n\t\tvalue.length >= 0 &&\n\t\t$toString(value) !== '[object Array]' &&\n\t\t$toString(value.callee) === '[object Function]';\n};\n\nvar supportsStandardArguments = (function () {\n\treturn isStandardArguments(arguments);\n}());\n\nisStandardArguments.isLegacyArguments = isLegacyArguments; // for tests\n\nmodule.exports = supportsStandardArguments ? isStandardArguments : isLegacyArguments;\n","'use strict';\n\nvar toStr = Object.prototype.toString;\nvar fnToStr = Function.prototype.toString;\nvar isFnRegex = /^\\s*(?:function)?\\*/;\nvar hasToStringTag = typeof Symbol === 'function' && typeof Symbol.toStringTag === 'symbol';\nvar getProto = Object.getPrototypeOf;\nvar getGeneratorFunc = function () { // eslint-disable-line consistent-return\n\tif (!hasToStringTag) {\n\t\treturn false;\n\t}\n\ttry {\n\t\treturn Function('return function*() {}')();\n\t} catch (e) {\n\t}\n};\nvar GeneratorFunction;\n\nmodule.exports = function isGeneratorFunction(fn) {\n\tif (typeof fn !== 'function') {\n\t\treturn false;\n\t}\n\tif (isFnRegex.test(fnToStr.call(fn))) {\n\t\treturn true;\n\t}\n\tif (!hasToStringTag) {\n\t\tvar str = toStr.call(fn);\n\t\treturn str === '[object GeneratorFunction]';\n\t}\n\tif (!getProto) {\n\t\treturn false;\n\t}\n\tif (typeof GeneratorFunction === 'undefined') {\n\t\tvar generatorFunc = getGeneratorFunc();\n\t\tGeneratorFunction = generatorFunc ? getProto(generatorFunc) : false;\n\t}\n\treturn getProto(fn) === GeneratorFunction;\n};\n","'use strict';\n\n/* http://www.ecma-international.org/ecma-262/6.0/#sec-number.isnan */\n\nmodule.exports = function isNaN(value) {\n\treturn value !== value;\n};\n","'use strict';\n\nvar callBind = require('call-bind');\nvar define = require('define-properties');\n\nvar implementation = require('./implementation');\nvar getPolyfill = require('./polyfill');\nvar shim = require('./shim');\n\nvar polyfill = callBind(getPolyfill(), Number);\n\n/* http://www.ecma-international.org/ecma-262/6.0/#sec-number.isnan */\n\ndefine(polyfill, {\n\tgetPolyfill: getPolyfill,\n\timplementation: implementation,\n\tshim: shim\n});\n\nmodule.exports = polyfill;\n","'use strict';\n\nvar implementation = require('./implementation');\n\nmodule.exports = function getPolyfill() {\n\tif (Number.isNaN && Number.isNaN(NaN) && !Number.isNaN('a')) {\n\t\treturn Number.isNaN;\n\t}\n\treturn implementation;\n};\n","'use strict';\n\nvar define = require('define-properties');\nvar getPolyfill = require('./polyfill');\n\n/* http://www.ecma-international.org/ecma-262/6.0/#sec-number.isnan */\n\nmodule.exports = function shimNumberIsNaN() {\n\tvar polyfill = getPolyfill();\n\tdefine(Number, { isNaN: polyfill }, {\n\t\tisNaN: function testIsNaN() {\n\t\t\treturn Number.isNaN !== polyfill;\n\t\t}\n\t});\n\treturn polyfill;\n};\n","'use strict';\n\nvar forEach = require('foreach');\nvar availableTypedArrays = require('available-typed-arrays');\nvar callBound = require('call-bind/callBound');\n\nvar $toString = callBound('Object.prototype.toString');\nvar hasSymbols = require('has-symbols')();\nvar hasToStringTag = hasSymbols && typeof Symbol.toStringTag === 'symbol';\n\nvar typedArrays = availableTypedArrays();\n\nvar $indexOf = callBound('Array.prototype.indexOf', true) || function indexOf(array, value) {\n\tfor (var i = 0; i < array.length; i += 1) {\n\t\tif (array[i] === value) {\n\t\t\treturn i;\n\t\t}\n\t}\n\treturn -1;\n};\nvar $slice = callBound('String.prototype.slice');\nvar toStrTags = {};\nvar gOPD = require('es-abstract/helpers/getOwnPropertyDescriptor');\nvar getPrototypeOf = Object.getPrototypeOf; // require('getprototypeof');\nif (hasToStringTag && gOPD && getPrototypeOf) {\n\tforEach(typedArrays, function (typedArray) {\n\t\tvar arr = new global[typedArray]();\n\t\tif (!(Symbol.toStringTag in arr)) {\n\t\t\tthrow new EvalError('this engine has support for Symbol.toStringTag, but ' + typedArray + ' does not have the property! Please report this.');\n\t\t}\n\t\tvar proto = getPrototypeOf(arr);\n\t\tvar descriptor = gOPD(proto, Symbol.toStringTag);\n\t\tif (!descriptor) {\n\t\t\tvar superProto = getPrototypeOf(proto);\n\t\t\tdescriptor = gOPD(superProto, Symbol.toStringTag);\n\t\t}\n\t\ttoStrTags[typedArray] = descriptor.get;\n\t});\n}\n\nvar tryTypedArrays = function tryAllTypedArrays(value) {\n\tvar anyTrue = false;\n\tforEach(toStrTags, function (getter, typedArray) {\n\t\tif (!anyTrue) {\n\t\t\ttry {\n\t\t\t\tanyTrue = getter.call(value) === typedArray;\n\t\t\t} catch (e) { /**/ }\n\t\t}\n\t});\n\treturn anyTrue;\n};\n\nmodule.exports = function isTypedArray(value) {\n\tif (!value || typeof value !== 'object') { return false; }\n\tif (!hasToStringTag) {\n\t\tvar tag = $slice($toString(value), 8, -1);\n\t\treturn $indexOf(typedArrays, tag) > -1;\n\t}\n\tif (!gOPD) { return false; }\n\treturn tryTypedArrays(value);\n};\n","'use strict';\n\nvar numberIsNaN = function (value) {\n\treturn value !== value;\n};\n\nmodule.exports = function is(a, b) {\n\tif (a === 0 && b === 0) {\n\t\treturn 1 / a === 1 / b;\n\t}\n\tif (a === b) {\n\t\treturn true;\n\t}\n\tif (numberIsNaN(a) && numberIsNaN(b)) {\n\t\treturn true;\n\t}\n\treturn false;\n};\n\n","'use strict';\n\nvar define = require('define-properties');\nvar callBind = require('call-bind');\n\nvar implementation = require('./implementation');\nvar getPolyfill = require('./polyfill');\nvar shim = require('./shim');\n\nvar polyfill = callBind(getPolyfill(), Object);\n\ndefine(polyfill, {\n\tgetPolyfill: getPolyfill,\n\timplementation: implementation,\n\tshim: shim\n});\n\nmodule.exports = polyfill;\n","'use strict';\n\nvar implementation = require('./implementation');\n\nmodule.exports = function getPolyfill() {\n\treturn typeof Object.is === 'function' ? Object.is : implementation;\n};\n","'use strict';\n\nvar getPolyfill = require('./polyfill');\nvar define = require('define-properties');\n\nmodule.exports = function shimObjectIs() {\n\tvar polyfill = getPolyfill();\n\tdefine(Object, { is: polyfill }, {\n\t\tis: function testObjectIs() {\n\t\t\treturn Object.is !== polyfill;\n\t\t}\n\t});\n\treturn polyfill;\n};\n","'use strict';\n\nvar keysShim;\nif (!Object.keys) {\n\t// modified from https://github.com/es-shims/es5-shim\n\tvar has = Object.prototype.hasOwnProperty;\n\tvar toStr = Object.prototype.toString;\n\tvar isArgs = require('./isArguments'); // eslint-disable-line global-require\n\tvar isEnumerable = Object.prototype.propertyIsEnumerable;\n\tvar hasDontEnumBug = !isEnumerable.call({ toString: null }, 'toString');\n\tvar hasProtoEnumBug = isEnumerable.call(function () {}, 'prototype');\n\tvar dontEnums = [\n\t\t'toString',\n\t\t'toLocaleString',\n\t\t'valueOf',\n\t\t'hasOwnProperty',\n\t\t'isPrototypeOf',\n\t\t'propertyIsEnumerable',\n\t\t'constructor'\n\t];\n\tvar equalsConstructorPrototype = function (o) {\n\t\tvar ctor = o.constructor;\n\t\treturn ctor && ctor.prototype === o;\n\t};\n\tvar excludedKeys = {\n\t\t$applicationCache: true,\n\t\t$console: true,\n\t\t$external: true,\n\t\t$frame: true,\n\t\t$frameElement: true,\n\t\t$frames: true,\n\t\t$innerHeight: true,\n\t\t$innerWidth: true,\n\t\t$onmozfullscreenchange: true,\n\t\t$onmozfullscreenerror: true,\n\t\t$outerHeight: true,\n\t\t$outerWidth: true,\n\t\t$pageXOffset: true,\n\t\t$pageYOffset: true,\n\t\t$parent: true,\n\t\t$scrollLeft: true,\n\t\t$scrollTop: true,\n\t\t$scrollX: true,\n\t\t$scrollY: true,\n\t\t$self: true,\n\t\t$webkitIndexedDB: true,\n\t\t$webkitStorageInfo: true,\n\t\t$window: true\n\t};\n\tvar hasAutomationEqualityBug = (function () {\n\t\t/* global window */\n\t\tif (typeof window === 'undefined') { return false; }\n\t\tfor (var k in window) {\n\t\t\ttry {\n\t\t\t\tif (!excludedKeys['$' + k] && has.call(window, k) && window[k] !== null && typeof window[k] === 'object') {\n\t\t\t\t\ttry {\n\t\t\t\t\t\tequalsConstructorPrototype(window[k]);\n\t\t\t\t\t} catch (e) {\n\t\t\t\t\t\treturn true;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} catch (e) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\t\treturn false;\n\t}());\n\tvar equalsConstructorPrototypeIfNotBuggy = function (o) {\n\t\t/* global window */\n\t\tif (typeof window === 'undefined' || !hasAutomationEqualityBug) {\n\t\t\treturn equalsConstructorPrototype(o);\n\t\t}\n\t\ttry {\n\t\t\treturn equalsConstructorPrototype(o);\n\t\t} catch (e) {\n\t\t\treturn false;\n\t\t}\n\t};\n\n\tkeysShim = function keys(object) {\n\t\tvar isObject = object !== null && typeof object === 'object';\n\t\tvar isFunction = toStr.call(object) === '[object Function]';\n\t\tvar isArguments = isArgs(object);\n\t\tvar isString = isObject && toStr.call(object) === '[object String]';\n\t\tvar theKeys = [];\n\n\t\tif (!isObject && !isFunction && !isArguments) {\n\t\t\tthrow new TypeError('Object.keys called on a non-object');\n\t\t}\n\n\t\tvar skipProto = hasProtoEnumBug && isFunction;\n\t\tif (isString && object.length > 0 && !has.call(object, 0)) {\n\t\t\tfor (var i = 0; i < object.length; ++i) {\n\t\t\t\ttheKeys.push(String(i));\n\t\t\t}\n\t\t}\n\n\t\tif (isArguments && object.length > 0) {\n\t\t\tfor (var j = 0; j < object.length; ++j) {\n\t\t\t\ttheKeys.push(String(j));\n\t\t\t}\n\t\t} else {\n\t\t\tfor (var name in object) {\n\t\t\t\tif (!(skipProto && name === 'prototype') && has.call(object, name)) {\n\t\t\t\t\ttheKeys.push(String(name));\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tif (hasDontEnumBug) {\n\t\t\tvar skipConstructor = equalsConstructorPrototypeIfNotBuggy(object);\n\n\t\t\tfor (var k = 0; k < dontEnums.length; ++k) {\n\t\t\t\tif (!(skipConstructor && dontEnums[k] === 'constructor') && has.call(object, dontEnums[k])) {\n\t\t\t\t\ttheKeys.push(dontEnums[k]);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn theKeys;\n\t};\n}\nmodule.exports = keysShim;\n","'use strict';\n\nvar slice = Array.prototype.slice;\nvar isArgs = require('./isArguments');\n\nvar origKeys = Object.keys;\nvar keysShim = origKeys ? function keys(o) { return origKeys(o); } : require('./implementation');\n\nvar originalKeys = Object.keys;\n\nkeysShim.shim = function shimObjectKeys() {\n\tif (Object.keys) {\n\t\tvar keysWorksWithArguments = (function () {\n\t\t\t// Safari 5.0 bug\n\t\t\tvar args = Object.keys(arguments);\n\t\t\treturn args && args.length === arguments.length;\n\t\t}(1, 2));\n\t\tif (!keysWorksWithArguments) {\n\t\t\tObject.keys = function keys(object) { // eslint-disable-line func-name-matching\n\t\t\t\tif (isArgs(object)) {\n\t\t\t\t\treturn originalKeys(slice.call(object));\n\t\t\t\t}\n\t\t\t\treturn originalKeys(object);\n\t\t\t};\n\t\t}\n\t} else {\n\t\tObject.keys = keysShim;\n\t}\n\treturn Object.keys || keysShim;\n};\n\nmodule.exports = keysShim;\n","'use strict';\n\nvar toStr = Object.prototype.toString;\n\nmodule.exports = function isArguments(value) {\n\tvar str = toStr.call(value);\n\tvar isArgs = str === '[object Arguments]';\n\tif (!isArgs) {\n\t\tisArgs = str !== '[object Array]' &&\n\t\t\tvalue !== null &&\n\t\t\ttypeof value === 'object' &&\n\t\t\ttypeof value.length === 'number' &&\n\t\t\tvalue.length >= 0 &&\n\t\t\ttoStr.call(value.callee) === '[object Function]';\n\t}\n\treturn isArgs;\n};\n","// shim for using process in browser\nvar process = module.exports = {};\n\n// cached from whatever global is present so that test runners that stub it\n// don't break things. But we need to wrap it in a try catch in case it is\n// wrapped in strict mode code which doesn't define any globals. It's inside a\n// function because try/catches deoptimize in certain engines.\n\nvar cachedSetTimeout;\nvar cachedClearTimeout;\n\nfunction defaultSetTimout() {\n throw new Error('setTimeout has not been defined');\n}\nfunction defaultClearTimeout () {\n throw new Error('clearTimeout has not been defined');\n}\n(function () {\n try {\n if (typeof setTimeout === 'function') {\n cachedSetTimeout = setTimeout;\n } else {\n cachedSetTimeout = defaultSetTimout;\n }\n } catch (e) {\n cachedSetTimeout = defaultSetTimout;\n }\n try {\n if (typeof clearTimeout === 'function') {\n cachedClearTimeout = clearTimeout;\n } else {\n cachedClearTimeout = defaultClearTimeout;\n }\n } catch (e) {\n cachedClearTimeout = defaultClearTimeout;\n }\n} ())\nfunction runTimeout(fun) {\n if (cachedSetTimeout === setTimeout) {\n //normal enviroments in sane situations\n return setTimeout(fun, 0);\n }\n // if setTimeout wasn't available but was latter defined\n if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {\n cachedSetTimeout = setTimeout;\n return setTimeout(fun, 0);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedSetTimeout(fun, 0);\n } catch(e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedSetTimeout.call(null, fun, 0);\n } catch(e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error\n return cachedSetTimeout.call(this, fun, 0);\n }\n }\n\n\n}\nfunction runClearTimeout(marker) {\n if (cachedClearTimeout === clearTimeout) {\n //normal enviroments in sane situations\n return clearTimeout(marker);\n }\n // if clearTimeout wasn't available but was latter defined\n if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {\n cachedClearTimeout = clearTimeout;\n return clearTimeout(marker);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedClearTimeout(marker);\n } catch (e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedClearTimeout.call(null, marker);\n } catch (e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.\n // Some versions of I.E. have different rules for clearTimeout vs setTimeout\n return cachedClearTimeout.call(this, marker);\n }\n }\n\n\n\n}\nvar queue = [];\nvar draining = false;\nvar currentQueue;\nvar queueIndex = -1;\n\nfunction cleanUpNextTick() {\n if (!draining || !currentQueue) {\n return;\n }\n draining = false;\n if (currentQueue.length) {\n queue = currentQueue.concat(queue);\n } else {\n queueIndex = -1;\n }\n if (queue.length) {\n drainQueue();\n }\n}\n\nfunction drainQueue() {\n if (draining) {\n return;\n }\n var timeout = runTimeout(cleanUpNextTick);\n draining = true;\n\n var len = queue.length;\n while(len) {\n currentQueue = queue;\n queue = [];\n while (++queueIndex < len) {\n if (currentQueue) {\n currentQueue[queueIndex].run();\n }\n }\n queueIndex = -1;\n len = queue.length;\n }\n currentQueue = null;\n draining = false;\n runClearTimeout(timeout);\n}\n\nprocess.nextTick = function (fun) {\n var args = new Array(arguments.length - 1);\n if (arguments.length > 1) {\n for (var i = 1; i < arguments.length; i++) {\n args[i - 1] = arguments[i];\n }\n }\n queue.push(new Item(fun, args));\n if (queue.length === 1 && !draining) {\n runTimeout(drainQueue);\n }\n};\n\n// v8 likes predictible objects\nfunction Item(fun, array) {\n this.fun = fun;\n this.array = array;\n}\nItem.prototype.run = function () {\n this.fun.apply(null, this.array);\n};\nprocess.title = 'browser';\nprocess.browser = true;\nprocess.env = {};\nprocess.argv = [];\nprocess.version = ''; // empty string to avoid regexp issues\nprocess.versions = {};\n\nfunction noop() {}\n\nprocess.on = noop;\nprocess.addListener = noop;\nprocess.once = noop;\nprocess.off = noop;\nprocess.removeListener = noop;\nprocess.removeAllListeners = noop;\nprocess.emit = noop;\nprocess.prependListener = noop;\nprocess.prependOnceListener = noop;\n\nprocess.listeners = function (name) { return [] }\n\nprocess.binding = function (name) {\n throw new Error('process.binding is not supported');\n};\n\nprocess.cwd = function () { return '/' };\nprocess.chdir = function (dir) {\n throw new Error('process.chdir is not supported');\n};\nprocess.umask = function() { return 0; };\n","module.exports = function isBuffer(arg) {\n return arg && typeof arg === 'object'\n && typeof arg.copy === 'function'\n && typeof arg.fill === 'function'\n && typeof arg.readUInt8 === 'function';\n}","// Currently in sync with Node.js lib/internal/util/types.js\n// https://github.com/nodejs/node/commit/112cc7c27551254aa2b17098fb774867f05ed0d9\n\n'use strict';\n\nvar isArgumentsObject = require('is-arguments');\nvar isGeneratorFunction = require('is-generator-function');\nvar whichTypedArray = require('which-typed-array');\nvar isTypedArray = require('is-typed-array');\n\nfunction uncurryThis(f) {\n return f.call.bind(f);\n}\n\nvar BigIntSupported = typeof BigInt !== 'undefined';\nvar SymbolSupported = typeof Symbol !== 'undefined';\n\nvar ObjectToString = uncurryThis(Object.prototype.toString);\n\nvar numberValue = uncurryThis(Number.prototype.valueOf);\nvar stringValue = uncurryThis(String.prototype.valueOf);\nvar booleanValue = uncurryThis(Boolean.prototype.valueOf);\n\nif (BigIntSupported) {\n var bigIntValue = uncurryThis(BigInt.prototype.valueOf);\n}\n\nif (SymbolSupported) {\n var symbolValue = uncurryThis(Symbol.prototype.valueOf);\n}\n\nfunction checkBoxedPrimitive(value, prototypeValueOf) {\n if (typeof value !== 'object') {\n return false;\n }\n try {\n prototypeValueOf(value);\n return true;\n } catch(e) {\n return false;\n }\n}\n\nexports.isArgumentsObject = isArgumentsObject;\nexports.isGeneratorFunction = isGeneratorFunction;\nexports.isTypedArray = isTypedArray;\n\n// Taken from here and modified for better browser support\n// https://github.com/sindresorhus/p-is-promise/blob/cda35a513bda03f977ad5cde3a079d237e82d7ef/index.js\nfunction isPromise(input) {\n\treturn (\n\t\t(\n\t\t\ttypeof Promise !== 'undefined' &&\n\t\t\tinput instanceof Promise\n\t\t) ||\n\t\t(\n\t\t\tinput !== null &&\n\t\t\ttypeof input === 'object' &&\n\t\t\ttypeof input.then === 'function' &&\n\t\t\ttypeof input.catch === 'function'\n\t\t)\n\t);\n}\nexports.isPromise = isPromise;\n\nfunction isArrayBufferView(value) {\n if (typeof ArrayBuffer !== 'undefined' && ArrayBuffer.isView) {\n return ArrayBuffer.isView(value);\n }\n\n return (\n isTypedArray(value) ||\n isDataView(value)\n );\n}\nexports.isArrayBufferView = isArrayBufferView;\n\n\nfunction isUint8Array(value) {\n return whichTypedArray(value) === 'Uint8Array';\n}\nexports.isUint8Array = isUint8Array;\n\nfunction isUint8ClampedArray(value) {\n return whichTypedArray(value) === 'Uint8ClampedArray';\n}\nexports.isUint8ClampedArray = isUint8ClampedArray;\n\nfunction isUint16Array(value) {\n return whichTypedArray(value) === 'Uint16Array';\n}\nexports.isUint16Array = isUint16Array;\n\nfunction isUint32Array(value) {\n return whichTypedArray(value) === 'Uint32Array';\n}\nexports.isUint32Array = isUint32Array;\n\nfunction isInt8Array(value) {\n return whichTypedArray(value) === 'Int8Array';\n}\nexports.isInt8Array = isInt8Array;\n\nfunction isInt16Array(value) {\n return whichTypedArray(value) === 'Int16Array';\n}\nexports.isInt16Array = isInt16Array;\n\nfunction isInt32Array(value) {\n return whichTypedArray(value) === 'Int32Array';\n}\nexports.isInt32Array = isInt32Array;\n\nfunction isFloat32Array(value) {\n return whichTypedArray(value) === 'Float32Array';\n}\nexports.isFloat32Array = isFloat32Array;\n\nfunction isFloat64Array(value) {\n return whichTypedArray(value) === 'Float64Array';\n}\nexports.isFloat64Array = isFloat64Array;\n\nfunction isBigInt64Array(value) {\n return whichTypedArray(value) === 'BigInt64Array';\n}\nexports.isBigInt64Array = isBigInt64Array;\n\nfunction isBigUint64Array(value) {\n return whichTypedArray(value) === 'BigUint64Array';\n}\nexports.isBigUint64Array = isBigUint64Array;\n\nfunction isMapToString(value) {\n return ObjectToString(value) === '[object Map]';\n}\nisMapToString.working = (\n typeof Map !== 'undefined' &&\n isMapToString(new Map())\n);\n\nfunction isMap(value) {\n if (typeof Map === 'undefined') {\n return false;\n }\n\n return isMapToString.working\n ? isMapToString(value)\n : value instanceof Map;\n}\nexports.isMap = isMap;\n\nfunction isSetToString(value) {\n return ObjectToString(value) === '[object Set]';\n}\nisSetToString.working = (\n typeof Set !== 'undefined' &&\n isSetToString(new Set())\n);\nfunction isSet(value) {\n if (typeof Set === 'undefined') {\n return false;\n }\n\n return isSetToString.working\n ? isSetToString(value)\n : value instanceof Set;\n}\nexports.isSet = isSet;\n\nfunction isWeakMapToString(value) {\n return ObjectToString(value) === '[object WeakMap]';\n}\nisWeakMapToString.working = (\n typeof WeakMap !== 'undefined' &&\n isWeakMapToString(new WeakMap())\n);\nfunction isWeakMap(value) {\n if (typeof WeakMap === 'undefined') {\n return false;\n }\n\n return isWeakMapToString.working\n ? isWeakMapToString(value)\n : value instanceof WeakMap;\n}\nexports.isWeakMap = isWeakMap;\n\nfunction isWeakSetToString(value) {\n return ObjectToString(value) === '[object WeakSet]';\n}\nisWeakSetToString.working = (\n typeof WeakSet !== 'undefined' &&\n isWeakSetToString(new WeakSet())\n);\nfunction isWeakSet(value) {\n return isWeakSetToString(value);\n}\nexports.isWeakSet = isWeakSet;\n\nfunction isArrayBufferToString(value) {\n return ObjectToString(value) === '[object ArrayBuffer]';\n}\nisArrayBufferToString.working = (\n typeof ArrayBuffer !== 'undefined' &&\n isArrayBufferToString(new ArrayBuffer())\n);\nfunction isArrayBuffer(value) {\n if (typeof ArrayBuffer === 'undefined') {\n return false;\n }\n\n return isArrayBufferToString.working\n ? isArrayBufferToString(value)\n : value instanceof ArrayBuffer;\n}\nexports.isArrayBuffer = isArrayBuffer;\n\nfunction isDataViewToString(value) {\n return ObjectToString(value) === '[object DataView]';\n}\nisDataViewToString.working = (\n typeof ArrayBuffer !== 'undefined' &&\n typeof DataView !== 'undefined' &&\n isDataViewToString(new DataView(new ArrayBuffer(1), 0, 1))\n);\nfunction isDataView(value) {\n if (typeof DataView === 'undefined') {\n return false;\n }\n\n return isDataViewToString.working\n ? isDataViewToString(value)\n : value instanceof DataView;\n}\nexports.isDataView = isDataView;\n\n// Store a copy of SharedArrayBuffer in case it's deleted elsewhere\nvar SharedArrayBufferCopy = typeof SharedArrayBuffer !== 'undefined' ? SharedArrayBuffer : undefined;\nfunction isSharedArrayBufferToString(value) {\n return ObjectToString(value) === '[object SharedArrayBuffer]';\n}\nfunction isSharedArrayBuffer(value) {\n if (typeof SharedArrayBufferCopy === 'undefined') {\n return false;\n }\n\n if (typeof isSharedArrayBufferToString.working === 'undefined') {\n isSharedArrayBufferToString.working = isSharedArrayBufferToString(new SharedArrayBufferCopy());\n }\n\n return isSharedArrayBufferToString.working\n ? isSharedArrayBufferToString(value)\n : value instanceof SharedArrayBufferCopy;\n}\nexports.isSharedArrayBuffer = isSharedArrayBuffer;\n\nfunction isAsyncFunction(value) {\n return ObjectToString(value) === '[object AsyncFunction]';\n}\nexports.isAsyncFunction = isAsyncFunction;\n\nfunction isMapIterator(value) {\n return ObjectToString(value) === '[object Map Iterator]';\n}\nexports.isMapIterator = isMapIterator;\n\nfunction isSetIterator(value) {\n return ObjectToString(value) === '[object Set Iterator]';\n}\nexports.isSetIterator = isSetIterator;\n\nfunction isGeneratorObject(value) {\n return ObjectToString(value) === '[object Generator]';\n}\nexports.isGeneratorObject = isGeneratorObject;\n\nfunction isWebAssemblyCompiledModule(value) {\n return ObjectToString(value) === '[object WebAssembly.Module]';\n}\nexports.isWebAssemblyCompiledModule = isWebAssemblyCompiledModule;\n\nfunction isNumberObject(value) {\n return checkBoxedPrimitive(value, numberValue);\n}\nexports.isNumberObject = isNumberObject;\n\nfunction isStringObject(value) {\n return checkBoxedPrimitive(value, stringValue);\n}\nexports.isStringObject = isStringObject;\n\nfunction isBooleanObject(value) {\n return checkBoxedPrimitive(value, booleanValue);\n}\nexports.isBooleanObject = isBooleanObject;\n\nfunction isBigIntObject(value) {\n return BigIntSupported && checkBoxedPrimitive(value, bigIntValue);\n}\nexports.isBigIntObject = isBigIntObject;\n\nfunction isSymbolObject(value) {\n return SymbolSupported && checkBoxedPrimitive(value, symbolValue);\n}\nexports.isSymbolObject = isSymbolObject;\n\nfunction isBoxedPrimitive(value) {\n return (\n isNumberObject(value) ||\n isStringObject(value) ||\n isBooleanObject(value) ||\n isBigIntObject(value) ||\n isSymbolObject(value)\n );\n}\nexports.isBoxedPrimitive = isBoxedPrimitive;\n\nfunction isAnyArrayBuffer(value) {\n return typeof Uint8Array !== 'undefined' && (\n isArrayBuffer(value) ||\n isSharedArrayBuffer(value)\n );\n}\nexports.isAnyArrayBuffer = isAnyArrayBuffer;\n\n['isProxy', 'isExternal', 'isModuleNamespaceObject'].forEach(function(method) {\n Object.defineProperty(exports, method, {\n enumerable: false,\n value: function() {\n throw new Error(method + ' is not supported in userland');\n }\n });\n});\n","// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\nvar getOwnPropertyDescriptors = Object.getOwnPropertyDescriptors ||\n function getOwnPropertyDescriptors(obj) {\n var keys = Object.keys(obj);\n var descriptors = {};\n for (var i = 0; i < keys.length; i++) {\n descriptors[keys[i]] = Object.getOwnPropertyDescriptor(obj, keys[i]);\n }\n return descriptors;\n };\n\nvar formatRegExp = /%[sdj%]/g;\nexports.format = function(f) {\n if (!isString(f)) {\n var objects = [];\n for (var i = 0; i < arguments.length; i++) {\n objects.push(inspect(arguments[i]));\n }\n return objects.join(' ');\n }\n\n var i = 1;\n var args = arguments;\n var len = args.length;\n var str = String(f).replace(formatRegExp, function(x) {\n if (x === '%%') return '%';\n if (i >= len) return x;\n switch (x) {\n case '%s': return String(args[i++]);\n case '%d': return Number(args[i++]);\n case '%j':\n try {\n return JSON.stringify(args[i++]);\n } catch (_) {\n return '[Circular]';\n }\n default:\n return x;\n }\n });\n for (var x = args[i]; i < len; x = args[++i]) {\n if (isNull(x) || !isObject(x)) {\n str += ' ' + x;\n } else {\n str += ' ' + inspect(x);\n }\n }\n return str;\n};\n\n\n// Mark that a method should not be used.\n// Returns a modified function which warns once by default.\n// If --no-deprecation is set, then it is a no-op.\nexports.deprecate = function(fn, msg) {\n if (typeof process !== 'undefined' && process.noDeprecation === true) {\n return fn;\n }\n\n // Allow for deprecating things in the process of starting up.\n if (typeof process === 'undefined') {\n return function() {\n return exports.deprecate(fn, msg).apply(this, arguments);\n };\n }\n\n var warned = false;\n function deprecated() {\n if (!warned) {\n if (process.throwDeprecation) {\n throw new Error(msg);\n } else if (process.traceDeprecation) {\n console.trace(msg);\n } else {\n console.error(msg);\n }\n warned = true;\n }\n return fn.apply(this, arguments);\n }\n\n return deprecated;\n};\n\n\nvar debugs = {};\nvar debugEnvRegex = /^$/;\n\nif (process.env.NODE_DEBUG) {\n var debugEnv = process.env.NODE_DEBUG;\n debugEnv = debugEnv.replace(/[|\\\\{}()[\\]^$+?.]/g, '\\\\$&')\n .replace(/\\*/g, '.*')\n .replace(/,/g, '$|^')\n .toUpperCase();\n debugEnvRegex = new RegExp('^' + debugEnv + '$', 'i');\n}\nexports.debuglog = function(set) {\n set = set.toUpperCase();\n if (!debugs[set]) {\n if (debugEnvRegex.test(set)) {\n var pid = process.pid;\n debugs[set] = function() {\n var msg = exports.format.apply(exports, arguments);\n console.error('%s %d: %s', set, pid, msg);\n };\n } else {\n debugs[set] = function() {};\n }\n }\n return debugs[set];\n};\n\n\n/**\n * Echos the value of a value. Trys to print the value out\n * in the best way possible given the different types.\n *\n * @param {Object} obj The object to print out.\n * @param {Object} opts Optional options object that alters the output.\n */\n/* legacy: obj, showHidden, depth, colors*/\nfunction inspect(obj, opts) {\n // default options\n var ctx = {\n seen: [],\n stylize: stylizeNoColor\n };\n // legacy...\n if (arguments.length >= 3) ctx.depth = arguments[2];\n if (arguments.length >= 4) ctx.colors = arguments[3];\n if (isBoolean(opts)) {\n // legacy...\n ctx.showHidden = opts;\n } else if (opts) {\n // got an \"options\" object\n exports._extend(ctx, opts);\n }\n // set default options\n if (isUndefined(ctx.showHidden)) ctx.showHidden = false;\n if (isUndefined(ctx.depth)) ctx.depth = 2;\n if (isUndefined(ctx.colors)) ctx.colors = false;\n if (isUndefined(ctx.customInspect)) ctx.customInspect = true;\n if (ctx.colors) ctx.stylize = stylizeWithColor;\n return formatValue(ctx, obj, ctx.depth);\n}\nexports.inspect = inspect;\n\n\n// http://en.wikipedia.org/wiki/ANSI_escape_code#graphics\ninspect.colors = {\n 'bold' : [1, 22],\n 'italic' : [3, 23],\n 'underline' : [4, 24],\n 'inverse' : [7, 27],\n 'white' : [37, 39],\n 'grey' : [90, 39],\n 'black' : [30, 39],\n 'blue' : [34, 39],\n 'cyan' : [36, 39],\n 'green' : [32, 39],\n 'magenta' : [35, 39],\n 'red' : [31, 39],\n 'yellow' : [33, 39]\n};\n\n// Don't use 'blue' not visible on cmd.exe\ninspect.styles = {\n 'special': 'cyan',\n 'number': 'yellow',\n 'boolean': 'yellow',\n 'undefined': 'grey',\n 'null': 'bold',\n 'string': 'green',\n 'date': 'magenta',\n // \"name\": intentionally not styling\n 'regexp': 'red'\n};\n\n\nfunction stylizeWithColor(str, styleType) {\n var style = inspect.styles[styleType];\n\n if (style) {\n return '\\u001b[' + inspect.colors[style][0] + 'm' + str +\n '\\u001b[' + inspect.colors[style][1] + 'm';\n } else {\n return str;\n }\n}\n\n\nfunction stylizeNoColor(str, styleType) {\n return str;\n}\n\n\nfunction arrayToHash(array) {\n var hash = {};\n\n array.forEach(function(val, idx) {\n hash[val] = true;\n });\n\n return hash;\n}\n\n\nfunction formatValue(ctx, value, recurseTimes) {\n // Provide a hook for user-specified inspect functions.\n // Check that value is an object with an inspect function on it\n if (ctx.customInspect &&\n value &&\n isFunction(value.inspect) &&\n // Filter out the util module, it's inspect function is special\n value.inspect !== exports.inspect &&\n // Also filter out any prototype objects using the circular check.\n !(value.constructor && value.constructor.prototype === value)) {\n var ret = value.inspect(recurseTimes, ctx);\n if (!isString(ret)) {\n ret = formatValue(ctx, ret, recurseTimes);\n }\n return ret;\n }\n\n // Primitive types cannot have properties\n var primitive = formatPrimitive(ctx, value);\n if (primitive) {\n return primitive;\n }\n\n // Look up the keys of the object.\n var keys = Object.keys(value);\n var visibleKeys = arrayToHash(keys);\n\n if (ctx.showHidden) {\n keys = Object.getOwnPropertyNames(value);\n }\n\n // IE doesn't make error fields non-enumerable\n // http://msdn.microsoft.com/en-us/library/ie/dww52sbt(v=vs.94).aspx\n if (isError(value)\n && (keys.indexOf('message') >= 0 || keys.indexOf('description') >= 0)) {\n return formatError(value);\n }\n\n // Some type of object without properties can be shortcutted.\n if (keys.length === 0) {\n if (isFunction(value)) {\n var name = value.name ? ': ' + value.name : '';\n return ctx.stylize('[Function' + name + ']', 'special');\n }\n if (isRegExp(value)) {\n return ctx.stylize(RegExp.prototype.toString.call(value), 'regexp');\n }\n if (isDate(value)) {\n return ctx.stylize(Date.prototype.toString.call(value), 'date');\n }\n if (isError(value)) {\n return formatError(value);\n }\n }\n\n var base = '', array = false, braces = ['{', '}'];\n\n // Make Array say that they are Array\n if (isArray(value)) {\n array = true;\n braces = ['[', ']'];\n }\n\n // Make functions say that they are functions\n if (isFunction(value)) {\n var n = value.name ? ': ' + value.name : '';\n base = ' [Function' + n + ']';\n }\n\n // Make RegExps say that they are RegExps\n if (isRegExp(value)) {\n base = ' ' + RegExp.prototype.toString.call(value);\n }\n\n // Make dates with properties first say the date\n if (isDate(value)) {\n base = ' ' + Date.prototype.toUTCString.call(value);\n }\n\n // Make error with message first say the error\n if (isError(value)) {\n base = ' ' + formatError(value);\n }\n\n if (keys.length === 0 && (!array || value.length == 0)) {\n return braces[0] + base + braces[1];\n }\n\n if (recurseTimes < 0) {\n if (isRegExp(value)) {\n return ctx.stylize(RegExp.prototype.toString.call(value), 'regexp');\n } else {\n return ctx.stylize('[Object]', 'special');\n }\n }\n\n ctx.seen.push(value);\n\n var output;\n if (array) {\n output = formatArray(ctx, value, recurseTimes, visibleKeys, keys);\n } else {\n output = keys.map(function(key) {\n return formatProperty(ctx, value, recurseTimes, visibleKeys, key, array);\n });\n }\n\n ctx.seen.pop();\n\n return reduceToSingleString(output, base, braces);\n}\n\n\nfunction formatPrimitive(ctx, value) {\n if (isUndefined(value))\n return ctx.stylize('undefined', 'undefined');\n if (isString(value)) {\n var simple = '\\'' + JSON.stringify(value).replace(/^\"|\"$/g, '')\n .replace(/'/g, \"\\\\'\")\n .replace(/\\\\\"/g, '\"') + '\\'';\n return ctx.stylize(simple, 'string');\n }\n if (isNumber(value))\n return ctx.stylize('' + value, 'number');\n if (isBoolean(value))\n return ctx.stylize('' + value, 'boolean');\n // For some reason typeof null is \"object\", so special case here.\n if (isNull(value))\n return ctx.stylize('null', 'null');\n}\n\n\nfunction formatError(value) {\n return '[' + Error.prototype.toString.call(value) + ']';\n}\n\n\nfunction formatArray(ctx, value, recurseTimes, visibleKeys, keys) {\n var output = [];\n for (var i = 0, l = value.length; i < l; ++i) {\n if (hasOwnProperty(value, String(i))) {\n output.push(formatProperty(ctx, value, recurseTimes, visibleKeys,\n String(i), true));\n } else {\n output.push('');\n }\n }\n keys.forEach(function(key) {\n if (!key.match(/^\\d+$/)) {\n output.push(formatProperty(ctx, value, recurseTimes, visibleKeys,\n key, true));\n }\n });\n return output;\n}\n\n\nfunction formatProperty(ctx, value, recurseTimes, visibleKeys, key, array) {\n var name, str, desc;\n desc = Object.getOwnPropertyDescriptor(value, key) || { value: value[key] };\n if (desc.get) {\n if (desc.set) {\n str = ctx.stylize('[Getter/Setter]', 'special');\n } else {\n str = ctx.stylize('[Getter]', 'special');\n }\n } else {\n if (desc.set) {\n str = ctx.stylize('[Setter]', 'special');\n }\n }\n if (!hasOwnProperty(visibleKeys, key)) {\n name = '[' + key + ']';\n }\n if (!str) {\n if (ctx.seen.indexOf(desc.value) < 0) {\n if (isNull(recurseTimes)) {\n str = formatValue(ctx, desc.value, null);\n } else {\n str = formatValue(ctx, desc.value, recurseTimes - 1);\n }\n if (str.indexOf('\\n') > -1) {\n if (array) {\n str = str.split('\\n').map(function(line) {\n return ' ' + line;\n }).join('\\n').substr(2);\n } else {\n str = '\\n' + str.split('\\n').map(function(line) {\n return ' ' + line;\n }).join('\\n');\n }\n }\n } else {\n str = ctx.stylize('[Circular]', 'special');\n }\n }\n if (isUndefined(name)) {\n if (array && key.match(/^\\d+$/)) {\n return str;\n }\n name = JSON.stringify('' + key);\n if (name.match(/^\"([a-zA-Z_][a-zA-Z_0-9]*)\"$/)) {\n name = name.substr(1, name.length - 2);\n name = ctx.stylize(name, 'name');\n } else {\n name = name.replace(/'/g, \"\\\\'\")\n .replace(/\\\\\"/g, '\"')\n .replace(/(^\"|\"$)/g, \"'\");\n name = ctx.stylize(name, 'string');\n }\n }\n\n return name + ': ' + str;\n}\n\n\nfunction reduceToSingleString(output, base, braces) {\n var numLinesEst = 0;\n var length = output.reduce(function(prev, cur) {\n numLinesEst++;\n if (cur.indexOf('\\n') >= 0) numLinesEst++;\n return prev + cur.replace(/\\u001b\\[\\d\\d?m/g, '').length + 1;\n }, 0);\n\n if (length > 60) {\n return braces[0] +\n (base === '' ? '' : base + '\\n ') +\n ' ' +\n output.join(',\\n ') +\n ' ' +\n braces[1];\n }\n\n return braces[0] + base + ' ' + output.join(', ') + ' ' + braces[1];\n}\n\n\n// NOTE: These type checking functions intentionally don't use `instanceof`\n// because it is fragile and can be easily faked with `Object.create()`.\nexports.types = require('./support/types');\n\nfunction isArray(ar) {\n return Array.isArray(ar);\n}\nexports.isArray = isArray;\n\nfunction isBoolean(arg) {\n return typeof arg === 'boolean';\n}\nexports.isBoolean = isBoolean;\n\nfunction isNull(arg) {\n return arg === null;\n}\nexports.isNull = isNull;\n\nfunction isNullOrUndefined(arg) {\n return arg == null;\n}\nexports.isNullOrUndefined = isNullOrUndefined;\n\nfunction isNumber(arg) {\n return typeof arg === 'number';\n}\nexports.isNumber = isNumber;\n\nfunction isString(arg) {\n return typeof arg === 'string';\n}\nexports.isString = isString;\n\nfunction isSymbol(arg) {\n return typeof arg === 'symbol';\n}\nexports.isSymbol = isSymbol;\n\nfunction isUndefined(arg) {\n return arg === void 0;\n}\nexports.isUndefined = isUndefined;\n\nfunction isRegExp(re) {\n return isObject(re) && objectToString(re) === '[object RegExp]';\n}\nexports.isRegExp = isRegExp;\nexports.types.isRegExp = isRegExp;\n\nfunction isObject(arg) {\n return typeof arg === 'object' && arg !== null;\n}\nexports.isObject = isObject;\n\nfunction isDate(d) {\n return isObject(d) && objectToString(d) === '[object Date]';\n}\nexports.isDate = isDate;\nexports.types.isDate = isDate;\n\nfunction isError(e) {\n return isObject(e) &&\n (objectToString(e) === '[object Error]' || e instanceof Error);\n}\nexports.isError = isError;\nexports.types.isNativeError = isError;\n\nfunction isFunction(arg) {\n return typeof arg === 'function';\n}\nexports.isFunction = isFunction;\n\nfunction isPrimitive(arg) {\n return arg === null ||\n typeof arg === 'boolean' ||\n typeof arg === 'number' ||\n typeof arg === 'string' ||\n typeof arg === 'symbol' || // ES6 symbol\n typeof arg === 'undefined';\n}\nexports.isPrimitive = isPrimitive;\n\nexports.isBuffer = require('./support/isBuffer');\n\nfunction objectToString(o) {\n return Object.prototype.toString.call(o);\n}\n\n\nfunction pad(n) {\n return n < 10 ? '0' + n.toString(10) : n.toString(10);\n}\n\n\nvar months = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep',\n 'Oct', 'Nov', 'Dec'];\n\n// 26 Feb 16:19:34\nfunction timestamp() {\n var d = new Date();\n var time = [pad(d.getHours()),\n pad(d.getMinutes()),\n pad(d.getSeconds())].join(':');\n return [d.getDate(), months[d.getMonth()], time].join(' ');\n}\n\n\n// log is just a thin wrapper to console.log that prepends a timestamp\nexports.log = function() {\n console.log('%s - %s', timestamp(), exports.format.apply(exports, arguments));\n};\n\n\n/**\n * Inherit the prototype methods from one constructor into another.\n *\n * The Function.prototype.inherits from lang.js rewritten as a standalone\n * function (not on Function.prototype). NOTE: If this file is to be loaded\n * during bootstrapping this function needs to be rewritten using some native\n * functions as prototype setup using normal JavaScript does not work as\n * expected during bootstrapping (see mirror.js in r114903).\n *\n * @param {function} ctor Constructor function which needs to inherit the\n * prototype.\n * @param {function} superCtor Constructor function to inherit prototype from.\n */\nexports.inherits = require('inherits');\n\nexports._extend = function(origin, add) {\n // Don't do anything if add isn't an object\n if (!add || !isObject(add)) return origin;\n\n var keys = Object.keys(add);\n var i = keys.length;\n while (i--) {\n origin[keys[i]] = add[keys[i]];\n }\n return origin;\n};\n\nfunction hasOwnProperty(obj, prop) {\n return Object.prototype.hasOwnProperty.call(obj, prop);\n}\n\nvar kCustomPromisifiedSymbol = typeof Symbol !== 'undefined' ? Symbol('util.promisify.custom') : undefined;\n\nexports.promisify = function promisify(original) {\n if (typeof original !== 'function')\n throw new TypeError('The \"original\" argument must be of type Function');\n\n if (kCustomPromisifiedSymbol && original[kCustomPromisifiedSymbol]) {\n var fn = original[kCustomPromisifiedSymbol];\n if (typeof fn !== 'function') {\n throw new TypeError('The \"util.promisify.custom\" argument must be of type Function');\n }\n Object.defineProperty(fn, kCustomPromisifiedSymbol, {\n value: fn, enumerable: false, writable: false, configurable: true\n });\n return fn;\n }\n\n function fn() {\n var promiseResolve, promiseReject;\n var promise = new Promise(function (resolve, reject) {\n promiseResolve = resolve;\n promiseReject = reject;\n });\n\n var args = [];\n for (var i = 0; i < arguments.length; i++) {\n args.push(arguments[i]);\n }\n args.push(function (err, value) {\n if (err) {\n promiseReject(err);\n } else {\n promiseResolve(value);\n }\n });\n\n try {\n original.apply(this, args);\n } catch (err) {\n promiseReject(err);\n }\n\n return promise;\n }\n\n Object.setPrototypeOf(fn, Object.getPrototypeOf(original));\n\n if (kCustomPromisifiedSymbol) Object.defineProperty(fn, kCustomPromisifiedSymbol, {\n value: fn, enumerable: false, writable: false, configurable: true\n });\n return Object.defineProperties(\n fn,\n getOwnPropertyDescriptors(original)\n );\n}\n\nexports.promisify.custom = kCustomPromisifiedSymbol\n\nfunction callbackifyOnRejected(reason, cb) {\n // `!reason` guard inspired by bluebird (Ref: https://goo.gl/t5IS6M).\n // Because `null` is a special error value in callbacks which means \"no error\n // occurred\", we error-wrap so the callback consumer can distinguish between\n // \"the promise rejected with null\" or \"the promise fulfilled with undefined\".\n if (!reason) {\n var newReason = new Error('Promise was rejected with a falsy value');\n newReason.reason = reason;\n reason = newReason;\n }\n return cb(reason);\n}\n\nfunction callbackify(original) {\n if (typeof original !== 'function') {\n throw new TypeError('The \"original\" argument must be of type Function');\n }\n\n // We DO NOT return the promise as it gives the user a false sense that\n // the promise is actually somehow related to the callback's execution\n // and that the callback throwing will reject the promise.\n function callbackified() {\n var args = [];\n for (var i = 0; i < arguments.length; i++) {\n args.push(arguments[i]);\n }\n\n var maybeCb = args.pop();\n if (typeof maybeCb !== 'function') {\n throw new TypeError('The last argument must be of type Function');\n }\n var self = this;\n var cb = function() {\n return maybeCb.apply(self, arguments);\n };\n // In true node style we process the callback on `nextTick` with all the\n // implications (stack, `uncaughtException`, `async_hooks`)\n original.apply(this, args)\n .then(function(ret) { process.nextTick(cb.bind(null, null, ret)) },\n function(rej) { process.nextTick(callbackifyOnRejected.bind(null, rej, cb)) });\n }\n\n Object.setPrototypeOf(callbackified, Object.getPrototypeOf(original));\n Object.defineProperties(callbackified,\n getOwnPropertyDescriptors(original));\n return callbackified;\n}\nexports.callbackify = callbackify;\n","'use strict';\n\nvar forEach = require('foreach');\nvar availableTypedArrays = require('available-typed-arrays');\nvar callBound = require('call-bind/callBound');\n\nvar $toString = callBound('Object.prototype.toString');\nvar hasSymbols = require('has-symbols')();\nvar hasToStringTag = hasSymbols && typeof Symbol.toStringTag === 'symbol';\n\nvar typedArrays = availableTypedArrays();\n\nvar $slice = callBound('String.prototype.slice');\nvar toStrTags = {};\nvar gOPD = require('es-abstract/helpers/getOwnPropertyDescriptor');\nvar getPrototypeOf = Object.getPrototypeOf; // require('getprototypeof');\nif (hasToStringTag && gOPD && getPrototypeOf) {\n\tforEach(typedArrays, function (typedArray) {\n\t\tif (typeof global[typedArray] === 'function') {\n\t\t\tvar arr = new global[typedArray]();\n\t\t\tif (!(Symbol.toStringTag in arr)) {\n\t\t\t\tthrow new EvalError('this engine has support for Symbol.toStringTag, but ' + typedArray + ' does not have the property! Please report this.');\n\t\t\t}\n\t\t\tvar proto = getPrototypeOf(arr);\n\t\t\tvar descriptor = gOPD(proto, Symbol.toStringTag);\n\t\t\tif (!descriptor) {\n\t\t\t\tvar superProto = getPrototypeOf(proto);\n\t\t\t\tdescriptor = gOPD(superProto, Symbol.toStringTag);\n\t\t\t}\n\t\t\ttoStrTags[typedArray] = descriptor.get;\n\t\t}\n\t});\n}\n\nvar tryTypedArrays = function tryAllTypedArrays(value) {\n\tvar foundName = false;\n\tforEach(toStrTags, function (getter, typedArray) {\n\t\tif (!foundName) {\n\t\t\ttry {\n\t\t\t\tvar name = getter.call(value);\n\t\t\t\tif (name === typedArray) {\n\t\t\t\t\tfoundName = name;\n\t\t\t\t}\n\t\t\t} catch (e) {}\n\t\t}\n\t});\n\treturn foundName;\n};\n\nvar isTypedArray = require('is-typed-array');\n\nmodule.exports = function whichTypedArray(value) {\n\tif (!isTypedArray(value)) { return false; }\n\tif (!hasToStringTag) { return $slice($toString(value), 8, -1); }\n\treturn tryTypedArrays(value);\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](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","\n/**\n * @copyright Copyright (c) 2020 Daniel Calviño Sánchez <danxuliu@gmail.com>\n *\n * @author Daniel Calviño Sánchez <danxuliu@gmail.com>\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n\nimport canDownload from './utils/canDownload'\nimport redirectIfNotIframe from './utils/redirectIfNotIframe'\n\n/**\n * Checks if the page is displayed in an iframe. If not redirect to /.\n **/\nredirectIfNotIframe()\n\n// When \"PDFViewerApplication.webViewerInitialized\" is executed (once\n// \"PDFViewerApplication.initialize\" is done) it opens the PDF file via URL,\n// which requires the PDFViewerApplication to be properly configured, so the\n// custom initialization has to be executed before that. This can be done by\n// listening to the \"webviewerloaded\" event, which is emitted after\n// \"PDFViewerApplication\" and \"PDFViewerApplicationOptions\" are globally set and\n// before \"PDFViewerApplication.initialize\" is executed.\nfunction initializeCustomPDFViewerApplication() {\n\n\t// Preferences override options, so they must be disabled for\n\t// \"externalLinkTarget\" to take effect.\n\tPDFViewerApplicationOptions.set('disablePreferences', true)\n\tPDFViewerApplicationOptions.set('externalLinkTarget', pdfjsLib.LinkTarget.BLANK)\n\tPDFViewerApplicationOptions.set('isEvalSupported', false)\n\tPDFViewerApplicationOptions.set('workerSrc', document.getElementsByTagName('head')[0].getAttribute('data-workersrc'))\n\tPDFViewerApplicationOptions.set('cMapUrl', document.getElementsByTagName('head')[0].getAttribute('data-cmapurl'))\n\tPDFViewerApplicationOptions.set('enablePermissions', true)\n\n\tconsole.debug('Initialized files_pdfviewer', PDFViewerApplicationOptions.getAll())\n\n\t// The download has to be forced to use the URL of the file; by default\n\t// \"PDFViewerApplication.download\" uses a blob, but this causes a CSP error\n\t// (at least, in Firefox) when trying to download it.\n\tPDFViewerApplication.download = function() {\n\t\t// \"isDataSchema()\" and \"getPDFFileNameFromURL()\" are copied from\n\t\t// \"vendor/pdfjs/web/viewer.js\", as the functions defined in that file\n\t\t// can not be accessed from the outside.\n\t\tfunction isDataSchema(url) {\n\t\t\tlet i = 0\n\t\t\tconst ii = url.length\n\t\t\twhile (i < ii && url[i].trim() === '') {\n\t\t\t\ti++\n\t\t\t}\n\t\t\treturn url.substr(i, 5).toLowerCase() === 'data:'\n\t\t}\n\n\t\tfunction getPDFFileNameFromURL(url) {\n\t\t\tconst defaultFilename = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'document.pdf'\n\n\t\t\tif (isDataSchema(url)) {\n\t\t\t\tconsole.warn('getPDFFileNameFromURL: ' + 'ignoring \"data:\" URL for performance reasons.')\n\t\t\t\treturn defaultFilename\n\t\t\t}\n\t\t\tconst reURI = /^(?:(?:[^:]+:)?\\/\\/[^/]+)?([^?#]*)(\\?[^#]*)?(#.*)?$/\n\t\t\tconst reFilename = /[^/?#=]+\\.pdf\\b(?!.*\\.pdf\\b)/i\n\t\t\tconst splitURI = reURI.exec(url)\n\t\t\tlet suggestedFilename = reFilename.exec(splitURI[1]) || reFilename.exec(splitURI[2]) || reFilename.exec(splitURI[3])\n\t\t\tif (suggestedFilename) {\n\t\t\t\tsuggestedFilename = suggestedFilename[0]\n\t\t\t\tif (suggestedFilename.indexOf('%') !== -1) {\n\t\t\t\t\ttry {\n\t\t\t\t\t\tsuggestedFilename = reFilename.exec(decodeURIComponent(suggestedFilename))[0]\n\t\t\t\t\t} catch (e) {\n\t\t\t\t\t\tconsole.debug(e)\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn suggestedFilename || defaultFilename\n\t\t}\n\n\t\tconst url = decodeURIComponent(window.location.search.substr(6))\n\n\t\tthis.downloadManager.downloadUrl(url, getPDFFileNameFromURL(url))\n\t}\n\n\tif (!canDownload()) {\n\t\t// Disable download function when downloads are hidden, as even if the\n\t\t// buttons in the UI are hidden the download could still be triggered\n\t\t// with Ctrl|Meta+S.\n\t\tPDFViewerApplication.download = function() {\n\t\t}\n\t\tconst downloadButton = document.getElementById('toolbarViewerRight').querySelector('button.download')\n\t\tif (downloadButton) {\n\t\t\tdownloadButton.style.display = 'none'\n\t\t}\n\n\t\t// Disable printing service when downloads are hidden, as even if the\n\t\t// buttons in the UI are hidden the printing could still be triggered\n\t\t// with Ctrl|Meta+P.\n\t\t// Abuse the \"supportsPrinting\" parameter, which signals that the\n\t\t// browser does not fully support printing, to make PDFViewer disable\n\t\t// the printing service.\n\t\t// \"supportsPrinting\" is a getter function, so it needs to be deleted\n\t\t// before replacing it with a simple value.\n\t\tdelete PDFViewerApplication.supportsPrinting\n\t\tPDFViewerApplication.supportsPrinting = false\n\n\t\t// When printing is not supported a warning is shown by the default\n\t\t// \"beforePrint\" function when trying to print. That function needs to\n\t\t// be replaced with an empty one to prevent that warning to be shown.\n\t\tPDFViewerApplication.beforePrint = function() {\n\t\t}\n\n\t\t// For css properties\n\t\tdocument.getElementById('viewer').classList.add('disabledTextSelection')\n\n\t\tconsole.debug('Files_PDFViewer, download and print disabled')\n\t}\n}\n\ndocument.addEventListener('DOMContentLoaded', initializeCustomPDFViewerApplication, true)\n"],"sourceRoot":""} \ No newline at end of file