(function webpackUniversalModuleDefinition(root, factory) { if(typeof exports === 'object' && typeof module === 'object') module.exports = factory(); else if(typeof define === 'function' && define.amd) define([], factory); else if(typeof exports === 'object') exports["ReactErrorOverlay"] = factory(); else root["ReactErrorOverlay"] = factory(); })(typeof self !== 'undefined' ? self : this, function() { return /******/ (function(modules) { // webpackBootstrap /******/ // The module cache /******/ var installedModules = {}; /******/ /******/ // The require function /******/ function __webpack_require__(moduleId) { /******/ /******/ // Check if module is in cache /******/ if(installedModules[moduleId]) { /******/ return installedModules[moduleId].exports; /******/ } /******/ // Create a new module (and put it into the cache) /******/ var module = installedModules[moduleId] = { /******/ i: moduleId, /******/ l: false, /******/ exports: {} /******/ }; /******/ /******/ // Execute the module function /******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__); /******/ /******/ // Flag the module as loaded /******/ module.l = true; /******/ /******/ // Return the exports of the module /******/ return module.exports; /******/ } /******/ /******/ /******/ // expose the modules object (__webpack_modules__) /******/ __webpack_require__.m = modules; /******/ /******/ // expose the module cache /******/ __webpack_require__.c = installedModules; /******/ /******/ // define getter function for harmony exports /******/ __webpack_require__.d = function(exports, name, getter) { /******/ if(!__webpack_require__.o(exports, name)) { /******/ Object.defineProperty(exports, name, { /******/ configurable: false, /******/ enumerable: true, /******/ get: getter /******/ }); /******/ } /******/ }; /******/ /******/ // getDefaultExport function for compatibility with non-harmony modules /******/ __webpack_require__.n = function(module) { /******/ var getter = module && module.__esModule ? /******/ function getDefault() { return module['default']; } : /******/ function getModuleExports() { return module; }; /******/ __webpack_require__.d(getter, 'a', getter); /******/ return getter; /******/ }; /******/ /******/ // Object.prototype.hasOwnProperty.call /******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); }; /******/ /******/ // __webpack_public_path__ /******/ __webpack_require__.p = ""; /******/ /******/ // Load entry module and return exports /******/ return __webpack_require__(__webpack_require__.s = 9); /******/ }) /************************************************************************/ /******/ ([ /* 0 */ /***/ (function(module, exports) { /* -*- Mode: js; js-indent-level: 2; -*- */ /* * Copyright 2011 Mozilla Foundation and contributors * Licensed under the New BSD license. See LICENSE or: * http://opensource.org/licenses/BSD-3-Clause */ /** * This is a helper function for getting values from parameter/options * objects. * * @param args The object we are extracting values from * @param name The name of the property we are getting. * @param defaultValue An optional value to return if the property is missing * from the object. If this is not specified and the property is missing, an * error will be thrown. */ function getArg(aArgs, aName, aDefaultValue) { if (aName in aArgs) { return aArgs[aName]; } else if (arguments.length === 3) { return aDefaultValue; } else { throw new Error('"' + aName + '" is a required argument.'); } } exports.getArg = getArg; var urlRegexp = /^(?:([\w+\-.]+):)?\/\/(?:(\w+:\w+)@)?([\w.]*)(?::(\d+))?(\S*)$/; var dataUrlRegexp = /^data:.+\,.+$/; function urlParse(aUrl) { var match = aUrl.match(urlRegexp); if (!match) { return null; } return { scheme: match[1], auth: match[2], host: match[3], port: match[4], path: match[5] }; } exports.urlParse = urlParse; function urlGenerate(aParsedUrl) { var url = ''; if (aParsedUrl.scheme) { url += aParsedUrl.scheme + ':'; } url += '//'; if (aParsedUrl.auth) { url += aParsedUrl.auth + '@'; } if (aParsedUrl.host) { url += aParsedUrl.host; } if (aParsedUrl.port) { url += ":" + aParsedUrl.port } if (aParsedUrl.path) { url += aParsedUrl.path; } return url; } exports.urlGenerate = urlGenerate; /** * Normalizes a path, or the path portion of a URL: * * - Replaces consecutive slashes with one slash. * - Removes unnecessary '.' parts. * - Removes unnecessary '/..' parts. * * Based on code in the Node.js 'path' core module. * * @param aPath The path or url to normalize. */ function normalize(aPath) { var path = aPath; var url = urlParse(aPath); if (url) { if (!url.path) { return aPath; } path = url.path; } var isAbsolute = exports.isAbsolute(path); var parts = path.split(/\/+/); for (var part, up = 0, i = parts.length - 1; i >= 0; i--) { part = parts[i]; if (part === '.') { parts.splice(i, 1); } else if (part === '..') { up++; } else if (up > 0) { if (part === '') { // The first part is blank if the path is absolute. Trying to go // above the root is a no-op. Therefore we can remove all '..' parts // directly after the root. parts.splice(i + 1, up); up = 0; } else { parts.splice(i, 2); up--; } } } path = parts.join('/'); if (path === '') { path = isAbsolute ? '/' : '.'; } if (url) { url.path = path; return urlGenerate(url); } return path; } exports.normalize = normalize; /** * Joins two paths/URLs. * * @param aRoot The root path or URL. * @param aPath The path or URL to be joined with the root. * * - If aPath is a URL or a data URI, aPath is returned, unless aPath is a * scheme-relative URL: Then the scheme of aRoot, if any, is prepended * first. * - Otherwise aPath is a path. If aRoot is a URL, then its path portion * is updated with the result and aRoot is returned. Otherwise the result * is returned. * - If aPath is absolute, the result is aPath. * - Otherwise the two paths are joined with a slash. * - Joining for example 'http://' and 'www.example.com' is also supported. */ function join(aRoot, aPath) { if (aRoot === "") { aRoot = "."; } if (aPath === "") { aPath = "."; } var aPathUrl = urlParse(aPath); var aRootUrl = urlParse(aRoot); if (aRootUrl) { aRoot = aRootUrl.path || '/'; } // `join(foo, '//www.example.org')` if (aPathUrl && !aPathUrl.scheme) { if (aRootUrl) { aPathUrl.scheme = aRootUrl.scheme; } return urlGenerate(aPathUrl); } if (aPathUrl || aPath.match(dataUrlRegexp)) { return aPath; } // `join('http://', 'www.example.com')` if (aRootUrl && !aRootUrl.host && !aRootUrl.path) { aRootUrl.host = aPath; return urlGenerate(aRootUrl); } var joined = aPath.charAt(0) === '/' ? aPath : normalize(aRoot.replace(/\/+$/, '') + '/' + aPath); if (aRootUrl) { aRootUrl.path = joined; return urlGenerate(aRootUrl); } return joined; } exports.join = join; exports.isAbsolute = function (aPath) { return aPath.charAt(0) === '/' || !!aPath.match(urlRegexp); }; /** * Make a path relative to a URL or another path. * * @param aRoot The root path or URL. * @param aPath The path or URL to be made relative to aRoot. */ function relative(aRoot, aPath) { if (aRoot === "") { aRoot = "."; } aRoot = aRoot.replace(/\/$/, ''); // It is possible for the path to be above the root. In this case, simply // checking whether the root is a prefix of the path won't work. Instead, we // need to remove components from the root one by one, until either we find // a prefix that fits, or we run out of components to remove. var level = 0; while (aPath.indexOf(aRoot + '/') !== 0) { var index = aRoot.lastIndexOf("/"); if (index < 0) { return aPath; } // If the only part of the root that is left is the scheme (i.e. http://, // file:///, etc.), one or more slashes (/), or simply nothing at all, we // have exhausted all components, so the path is not relative to the root. aRoot = aRoot.slice(0, index); if (aRoot.match(/^([^\/]+:\/)?\/*$/)) { return aPath; } ++level; } // Make sure we add a "../" for each component we removed from the root. return Array(level + 1).join("../") + aPath.substr(aRoot.length + 1); } exports.relative = relative; var supportsNullProto = (function () { var obj = Object.create(null); return !('__proto__' in obj); }()); function identity (s) { return s; } /** * Because behavior goes wacky when you set `__proto__` on objects, we * have to prefix all the strings in our set with an arbitrary character. * * See https://github.com/mozilla/source-map/pull/31 and * https://github.com/mozilla/source-map/issues/30 * * @param String aStr */ function toSetString(aStr) { if (isProtoString(aStr)) { return '$' + aStr; } return aStr; } exports.toSetString = supportsNullProto ? identity : toSetString; function fromSetString(aStr) { if (isProtoString(aStr)) { return aStr.slice(1); } return aStr; } exports.fromSetString = supportsNullProto ? identity : fromSetString; function isProtoString(s) { if (!s) { return false; } var length = s.length; if (length < 9 /* "__proto__".length */) { return false; } if (s.charCodeAt(length - 1) !== 95 /* '_' */ || s.charCodeAt(length - 2) !== 95 /* '_' */ || s.charCodeAt(length - 3) !== 111 /* 'o' */ || s.charCodeAt(length - 4) !== 116 /* 't' */ || s.charCodeAt(length - 5) !== 111 /* 'o' */ || s.charCodeAt(length - 6) !== 114 /* 'r' */ || s.charCodeAt(length - 7) !== 112 /* 'p' */ || s.charCodeAt(length - 8) !== 95 /* '_' */ || s.charCodeAt(length - 9) !== 95 /* '_' */) { return false; } for (var i = length - 10; i >= 0; i--) { if (s.charCodeAt(i) !== 36 /* '$' */) { return false; } } return true; } /** * Comparator between two mappings where the original positions are compared. * * Optionally pass in `true` as `onlyCompareGenerated` to consider two * mappings with the same original source/line/column, but different generated * line and column the same. Useful when searching for a mapping with a * stubbed out mapping. */ function compareByOriginalPositions(mappingA, mappingB, onlyCompareOriginal) { var cmp = mappingA.source - mappingB.source; if (cmp !== 0) { return cmp; } cmp = mappingA.originalLine - mappingB.originalLine; if (cmp !== 0) { return cmp; } cmp = mappingA.originalColumn - mappingB.originalColumn; if (cmp !== 0 || onlyCompareOriginal) { return cmp; } cmp = mappingA.generatedColumn - mappingB.generatedColumn; if (cmp !== 0) { return cmp; } cmp = mappingA.generatedLine - mappingB.generatedLine; if (cmp !== 0) { return cmp; } return mappingA.name - mappingB.name; } exports.compareByOriginalPositions = compareByOriginalPositions; /** * Comparator between two mappings with deflated source and name indices where * the generated positions are compared. * * Optionally pass in `true` as `onlyCompareGenerated` to consider two * mappings with the same generated line and column, but different * source/name/original line and column the same. Useful when searching for a * mapping with a stubbed out mapping. */ function compareByGeneratedPositionsDeflated(mappingA, mappingB, onlyCompareGenerated) { var cmp = mappingA.generatedLine - mappingB.generatedLine; if (cmp !== 0) { return cmp; } cmp = mappingA.generatedColumn - mappingB.generatedColumn; if (cmp !== 0 || onlyCompareGenerated) { return cmp; } cmp = mappingA.source - mappingB.source; if (cmp !== 0) { return cmp; } cmp = mappingA.originalLine - mappingB.originalLine; if (cmp !== 0) { return cmp; } cmp = mappingA.originalColumn - mappingB.originalColumn; if (cmp !== 0) { return cmp; } return mappingA.name - mappingB.name; } exports.compareByGeneratedPositionsDeflated = compareByGeneratedPositionsDeflated; function strcmp(aStr1, aStr2) { if (aStr1 === aStr2) { return 0; } if (aStr1 > aStr2) { return 1; } return -1; } /** * Comparator between two mappings with inflated source and name strings where * the generated positions are compared. */ function compareByGeneratedPositionsInflated(mappingA, mappingB) { var cmp = mappingA.generatedLine - mappingB.generatedLine; if (cmp !== 0) { return cmp; } cmp = mappingA.generatedColumn - mappingB.generatedColumn; if (cmp !== 0) { return cmp; } cmp = strcmp(mappingA.source, mappingB.source); if (cmp !== 0) { return cmp; } cmp = mappingA.originalLine - mappingB.originalLine; if (cmp !== 0) { return cmp; } cmp = mappingA.originalColumn - mappingB.originalColumn; if (cmp !== 0) { return cmp; } return strcmp(mappingA.name, mappingB.name); } exports.compareByGeneratedPositionsInflated = compareByGeneratedPositionsInflated; /***/ }), /* 1 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* unused harmony export StackFrame */ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return ScriptLine; }); var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }(); function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } /** * Copyright (c) 2015-present, Facebook, Inc. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */ /** A container holding a script line. */ var ScriptLine = /** The content (or value) of this line of source. */ function ScriptLine(lineNumber, content) { var highlight = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false; _classCallCheck(this, ScriptLine); this.lineNumber = lineNumber; this.content = content; this.highlight = highlight; } /** Whether or not this line should be highlighted. Particularly useful for error reporting with context. */ /** The line number of this line of source. */ ; /** * A representation of a stack frame. */ var StackFrame = function () { function StackFrame() { var functionName = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null; var fileName = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null; var lineNumber = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null; var columnNumber = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : null; var scriptCode = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : null; var sourceFunctionName = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : null; var sourceFileName = arguments.length > 6 && arguments[6] !== undefined ? arguments[6] : null; var sourceLineNumber = arguments.length > 7 && arguments[7] !== undefined ? arguments[7] : null; var sourceColumnNumber = arguments.length > 8 && arguments[8] !== undefined ? arguments[8] : null; var sourceScriptCode = arguments.length > 9 && arguments[9] !== undefined ? arguments[9] : null; _classCallCheck(this, StackFrame); if (functionName && functionName.indexOf('Object.') === 0) { functionName = functionName.slice('Object.'.length); } if ( // Chrome has a bug with inferring function.name: // https://github.com/facebookincubator/create-react-app/issues/2097 // Let's ignore a meaningless name we get for top-level modules. functionName === 'friendlySyntaxErrorLabel' || functionName === 'exports.__esModule' || functionName === '' || !functionName) { functionName = null; } this.functionName = functionName; this.fileName = fileName; this.lineNumber = lineNumber; this.columnNumber = columnNumber; this._originalFunctionName = sourceFunctionName; this._originalFileName = sourceFileName; this._originalLineNumber = sourceLineNumber; this._originalColumnNumber = sourceColumnNumber; this._scriptCode = scriptCode; this._originalScriptCode = sourceScriptCode; } /** * Returns the name of this function. */ _createClass(StackFrame, [{ key: 'getFunctionName', value: function getFunctionName() { return this.functionName || '(anonymous function)'; } /** * Returns the source of the frame. * This contains the file name, line number, and column number when available. */ }, { key: 'getSource', value: function getSource() { var str = ''; if (this.fileName != null) { str += this.fileName + ':'; } if (this.lineNumber != null) { str += this.lineNumber + ':'; } if (this.columnNumber != null) { str += this.columnNumber + ':'; } return str.slice(0, -1); } /** * Returns a pretty version of this stack frame. */ }, { key: 'toString', value: function toString() { var functionName = this.getFunctionName(); var source = this.getSource(); return '' + functionName + (source ? ' (' + source + ')' : ''); } }]); return StackFrame; }(); /* harmony default export */ __webpack_exports__["b"] = (StackFrame); /***/ }), /* 2 */ /***/ (function(module, exports, __webpack_require__) { module.exports = __webpack_require__(19); /***/ }), /* 3 */ /***/ (function(module, exports) { // shim for using process in browser var process = module.exports = {}; // cached from whatever global is present so that test runners that stub it // don't break things. But we need to wrap it in a try catch in case it is // wrapped in strict mode code which doesn't define any globals. It's inside a // function because try/catches deoptimize in certain engines. var cachedSetTimeout; var cachedClearTimeout; function defaultSetTimout() { throw new Error('setTimeout has not been defined'); } function defaultClearTimeout () { throw new Error('clearTimeout has not been defined'); } (function () { try { if (typeof setTimeout === 'function') { cachedSetTimeout = setTimeout; } else { cachedSetTimeout = defaultSetTimout; } } catch (e) { cachedSetTimeout = defaultSetTimout; } try { if (typeof clearTimeout === 'function') { cachedClearTimeout = clearTimeout; } else { cachedClearTimeout = defaultClearTimeout; } } catch (e) { cachedClearTimeout = defaultClearTimeout; } } ()) function runTimeout(fun) { if (cachedSetTimeout === setTimeout) { //normal enviroments in sane situations return setTimeout(fun, 0); } // if setTimeout wasn't available but was latter defined if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) { cachedSetTimeout = setTimeout; return setTimeout(fun, 0); } try { // when when somebody has screwed with setTimeout but no I.E. maddness return cachedSetTimeout(fun, 0); } catch(e){ try { // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally return cachedSetTimeout.call(null, fun, 0); } catch(e){ // 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 return cachedSetTimeout.call(this, fun, 0); } } } function runClearTimeout(marker) { if (cachedClearTimeout === clearTimeout) { //normal enviroments in sane situations return clearTimeout(marker); } // if clearTimeout wasn't available but was latter defined if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) { cachedClearTimeout = clearTimeout; return clearTimeout(marker); } try { // when when somebody has screwed with setTimeout but no I.E. maddness return cachedClearTimeout(marker); } catch (e){ try { // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally return cachedClearTimeout.call(null, marker); } catch (e){ // 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. // Some versions of I.E. have different rules for clearTimeout vs setTimeout return cachedClearTimeout.call(this, marker); } } } var queue = []; var draining = false; var currentQueue; var queueIndex = -1; function cleanUpNextTick() { if (!draining || !currentQueue) { return; } draining = false; if (currentQueue.length) { queue = currentQueue.concat(queue); } else { queueIndex = -1; } if (queue.length) { drainQueue(); } } function drainQueue() { if (draining) { return; } var timeout = runTimeout(cleanUpNextTick); draining = true; var len = queue.length; while(len) { currentQueue = queue; queue = []; while (++queueIndex < len) { if (currentQueue) { currentQueue[queueIndex].run(); } } queueIndex = -1; len = queue.length; } currentQueue = null; draining = false; runClearTimeout(timeout); } process.nextTick = function (fun) { var args = new Array(arguments.length - 1); if (arguments.length > 1) { for (var i = 1; i < arguments.length; i++) { args[i - 1] = arguments[i]; } } queue.push(new Item(fun, args)); if (queue.length === 1 && !draining) { runTimeout(drainQueue); } }; // v8 likes predictible objects function Item(fun, array) { this.fun = fun; this.array = array; } Item.prototype.run = function () { this.fun.apply(null, this.array); }; process.title = 'browser'; process.browser = true; process.env = {}; process.argv = []; process.version = ''; // empty string to avoid regexp issues process.versions = {}; function noop() {} process.on = noop; process.addListener = noop; process.once = noop; process.off = noop; process.removeListener = noop; process.removeAllListeners = noop; process.emit = noop; process.prependListener = noop; process.prependOnceListener = noop; process.listeners = function (name) { return [] } process.binding = function (name) { throw new Error('process.binding is not supported'); }; process.cwd = function () { return '/' }; process.chdir = function (dir) { throw new Error('process.chdir is not supported'); }; process.umask = function() { return 0; }; /***/ }), /* 4 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* unused harmony export extractSourceMapUrl */ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return getSourceMap; }); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator__ = __webpack_require__(2); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator__); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_source_map__ = __webpack_require__(21); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_source_map___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_source_map__); var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }(); /** * Returns an instance of {@link SourceMap} for a given fileUri and fileContents. * @param {string} fileUri The URI of the source file. * @param {string} fileContents The contents of the source file. */ var getSourceMap = function () { var _ref = _asyncToGenerator( /*#__PURE__*/__WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default.a.mark(function _callee(fileUri, fileContents) { var sm, base64, match2, index, url, obj; return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default.a.wrap(function _callee$(_context) { while (1) { switch (_context.prev = _context.next) { case 0: _context.next = 2; return extractSourceMapUrl(fileUri, fileContents); case 2: sm = _context.sent; if (!(sm.indexOf('data:') === 0)) { _context.next = 14; break; } base64 = /^data:application\/json;([\w=:"-]+;)*base64,/; match2 = sm.match(base64); if (match2) { _context.next = 8; break; } throw new Error('Sorry, non-base64 inline source-map encoding is not supported.'); case 8: sm = sm.substring(match2[0].length); sm = window.atob(sm); sm = JSON.parse(sm); return _context.abrupt('return', new SourceMap(new __WEBPACK_IMPORTED_MODULE_1_source_map__["SourceMapConsumer"](sm))); case 14: index = fileUri.lastIndexOf('/'); url = fileUri.substring(0, index + 1) + sm; _context.next = 18; return fetch(url).then(function (res) { return res.json(); }); case 18: obj = _context.sent; return _context.abrupt('return', new SourceMap(new __WEBPACK_IMPORTED_MODULE_1_source_map__["SourceMapConsumer"](obj))); case 20: case 'end': return _context.stop(); } } }, _callee, this); })); return function getSourceMap(_x, _x2) { return _ref.apply(this, arguments); }; }(); function _asyncToGenerator(fn) { return function () { var gen = fn.apply(this, arguments); return new Promise(function (resolve, reject) { function step(key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { return Promise.resolve(value).then(function (value) { step("next", value); }, function (err) { step("throw", err); }); } } return step("next"); }); }; } function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } /** * Copyright (c) 2015-present, Facebook, Inc. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */ /** * A wrapped instance of a {@link https://github.com/mozilla/source-map SourceMapConsumer}. * * This exposes methods which will be indifferent to changes made in {@link https://github.com/mozilla/source-map source-map}. */ var SourceMap = function () { function SourceMap(sourceMap) { _classCallCheck(this, SourceMap); this.__source_map = sourceMap; } /** * Returns the original code position for a generated code position. * @param {number} line The line of the generated code position. * @param {number} column The column of the generated code position. */ _createClass(SourceMap, [{ key: 'getOriginalPosition', value: function getOriginalPosition(line, column) { var _source_map$original = this.__source_map.originalPositionFor({ line: line, column: column }), l = _source_map$original.line, c = _source_map$original.column, s = _source_map$original.source; return { line: l, column: c, source: s }; } /** * Returns the generated code position for an original position. * @param {string} source The source file of the original code position. * @param {number} line The line of the original code position. * @param {number} column The column of the original code position. */ }, { key: 'getGeneratedPosition', value: function getGeneratedPosition(source, line, column) { var _source_map$generate = this.__source_map.generatedPositionFor({ source: source, line: line, column: column }), l = _source_map$generate.line, c = _source_map$generate.column; return { line: l, column: c }; } /** * Returns the code for a given source file name. * @param {string} sourceName The name of the source file. */ }, { key: 'getSource', value: function getSource(sourceName) { return this.__source_map.sourceContentFor(sourceName); } }, { key: 'getSources', value: function getSources() { return this.__source_map.sources; } }]); return SourceMap; }(); function extractSourceMapUrl(fileUri, fileContents) { var regex = /\/\/[#@] ?sourceMappingURL=([^\s'"]+)\s*$/gm; var match = null; for (;;) { var next = regex.exec(fileContents); if (next == null) { break; } match = next; } if (!(match && match[1])) { return Promise.reject('Cannot find a source map directive for ' + fileUri + '.'); } return Promise.resolve(match[1].toString()); } /* unused harmony default export */ var _unused_webpack_default_export = (getSourceMap); /***/ }), /* 5 */ /***/ (function(module, exports, __webpack_require__) { /* -*- Mode: js; js-indent-level: 2; -*- */ /* * Copyright 2011 Mozilla Foundation and contributors * Licensed under the New BSD license. See LICENSE or: * http://opensource.org/licenses/BSD-3-Clause */ var base64VLQ = __webpack_require__(6); var util = __webpack_require__(0); var ArraySet = __webpack_require__(7).ArraySet; var MappingList = __webpack_require__(23).MappingList; /** * An instance of the SourceMapGenerator represents a source map which is * being built incrementally. You may pass an object with the following * properties: * * - file: The filename of the generated source. * - sourceRoot: A root for all relative URLs in this source map. */ function SourceMapGenerator(aArgs) { if (!aArgs) { aArgs = {}; } this._file = util.getArg(aArgs, 'file', null); this._sourceRoot = util.getArg(aArgs, 'sourceRoot', null); this._skipValidation = util.getArg(aArgs, 'skipValidation', false); this._sources = new ArraySet(); this._names = new ArraySet(); this._mappings = new MappingList(); this._sourcesContents = null; } SourceMapGenerator.prototype._version = 3; /** * Creates a new SourceMapGenerator based on a SourceMapConsumer * * @param aSourceMapConsumer The SourceMap. */ SourceMapGenerator.fromSourceMap = function SourceMapGenerator_fromSourceMap(aSourceMapConsumer) { var sourceRoot = aSourceMapConsumer.sourceRoot; var generator = new SourceMapGenerator({ file: aSourceMapConsumer.file, sourceRoot: sourceRoot }); aSourceMapConsumer.eachMapping(function (mapping) { var newMapping = { generated: { line: mapping.generatedLine, column: mapping.generatedColumn } }; if (mapping.source != null) { newMapping.source = mapping.source; if (sourceRoot != null) { newMapping.source = util.relative(sourceRoot, newMapping.source); } newMapping.original = { line: mapping.originalLine, column: mapping.originalColumn }; if (mapping.name != null) { newMapping.name = mapping.name; } } generator.addMapping(newMapping); }); aSourceMapConsumer.sources.forEach(function (sourceFile) { var content = aSourceMapConsumer.sourceContentFor(sourceFile); if (content != null) { generator.setSourceContent(sourceFile, content); } }); return generator; }; /** * Add a single mapping from original source line and column to the generated * source's line and column for this source map being created. The mapping * object should have the following properties: * * - generated: An object with the generated line and column positions. * - original: An object with the original line and column positions. * - source: The original source file (relative to the sourceRoot). * - name: An optional original token name for this mapping. */ SourceMapGenerator.prototype.addMapping = function SourceMapGenerator_addMapping(aArgs) { var generated = util.getArg(aArgs, 'generated'); var original = util.getArg(aArgs, 'original', null); var source = util.getArg(aArgs, 'source', null); var name = util.getArg(aArgs, 'name', null); if (!this._skipValidation) { this._validateMapping(generated, original, source, name); } if (source != null) { source = String(source); if (!this._sources.has(source)) { this._sources.add(source); } } if (name != null) { name = String(name); if (!this._names.has(name)) { this._names.add(name); } } this._mappings.add({ generatedLine: generated.line, generatedColumn: generated.column, originalLine: original != null && original.line, originalColumn: original != null && original.column, source: source, name: name }); }; /** * Set the source content for a source file. */ SourceMapGenerator.prototype.setSourceContent = function SourceMapGenerator_setSourceContent(aSourceFile, aSourceContent) { var source = aSourceFile; if (this._sourceRoot != null) { source = util.relative(this._sourceRoot, source); } if (aSourceContent != null) { // Add the source content to the _sourcesContents map. // Create a new _sourcesContents map if the property is null. if (!this._sourcesContents) { this._sourcesContents = Object.create(null); } this._sourcesContents[util.toSetString(source)] = aSourceContent; } else if (this._sourcesContents) { // Remove the source file from the _sourcesContents map. // If the _sourcesContents map is empty, set the property to null. delete this._sourcesContents[util.toSetString(source)]; if (Object.keys(this._sourcesContents).length === 0) { this._sourcesContents = null; } } }; /** * Applies the mappings of a sub-source-map for a specific source file to the * source map being generated. Each mapping to the supplied source file is * rewritten using the supplied source map. Note: The resolution for the * resulting mappings is the minimium of this map and the supplied map. * * @param aSourceMapConsumer The source map to be applied. * @param aSourceFile Optional. The filename of the source file. * If omitted, SourceMapConsumer's file property will be used. * @param aSourceMapPath Optional. The dirname of the path to the source map * to be applied. If relative, it is relative to the SourceMapConsumer. * This parameter is needed when the two source maps aren't in the same * directory, and the source map to be applied contains relative source * paths. If so, those relative source paths need to be rewritten * relative to the SourceMapGenerator. */ SourceMapGenerator.prototype.applySourceMap = function SourceMapGenerator_applySourceMap(aSourceMapConsumer, aSourceFile, aSourceMapPath) { var sourceFile = aSourceFile; // If aSourceFile is omitted, we will use the file property of the SourceMap if (aSourceFile == null) { if (aSourceMapConsumer.file == null) { throw new Error( 'SourceMapGenerator.prototype.applySourceMap requires either an explicit source file, ' + 'or the source map\'s "file" property. Both were omitted.' ); } sourceFile = aSourceMapConsumer.file; } var sourceRoot = this._sourceRoot; // Make "sourceFile" relative if an absolute Url is passed. if (sourceRoot != null) { sourceFile = util.relative(sourceRoot, sourceFile); } // Applying the SourceMap can add and remove items from the sources and // the names array. var newSources = new ArraySet(); var newNames = new ArraySet(); // Find mappings for the "sourceFile" this._mappings.unsortedForEach(function (mapping) { if (mapping.source === sourceFile && mapping.originalLine != null) { // Check if it can be mapped by the source map, then update the mapping. var original = aSourceMapConsumer.originalPositionFor({ line: mapping.originalLine, column: mapping.originalColumn }); if (original.source != null) { // Copy mapping mapping.source = original.source; if (aSourceMapPath != null) { mapping.source = util.join(aSourceMapPath, mapping.source) } if (sourceRoot != null) { mapping.source = util.relative(sourceRoot, mapping.source); } mapping.originalLine = original.line; mapping.originalColumn = original.column; if (original.name != null) { mapping.name = original.name; } } } var source = mapping.source; if (source != null && !newSources.has(source)) { newSources.add(source); } var name = mapping.name; if (name != null && !newNames.has(name)) { newNames.add(name); } }, this); this._sources = newSources; this._names = newNames; // Copy sourcesContents of applied map. aSourceMapConsumer.sources.forEach(function (sourceFile) { var content = aSourceMapConsumer.sourceContentFor(sourceFile); if (content != null) { if (aSourceMapPath != null) { sourceFile = util.join(aSourceMapPath, sourceFile); } if (sourceRoot != null) { sourceFile = util.relative(sourceRoot, sourceFile); } this.setSourceContent(sourceFile, content); } }, this); }; /** * A mapping can have one of the three levels of data: * * 1. Just the generated position. * 2. The Generated position, original position, and original source. * 3. Generated and original position, original source, as well as a name * token. * * To maintain consistency, we validate that any new mapping being added falls * in to one of these categories. */ SourceMapGenerator.prototype._validateMapping = function SourceMapGenerator_validateMapping(aGenerated, aOriginal, aSource, aName) { if (aGenerated && 'line' in aGenerated && 'column' in aGenerated && aGenerated.line > 0 && aGenerated.column >= 0 && !aOriginal && !aSource && !aName) { // Case 1. return; } else if (aGenerated && 'line' in aGenerated && 'column' in aGenerated && aOriginal && 'line' in aOriginal && 'column' in aOriginal && aGenerated.line > 0 && aGenerated.column >= 0 && aOriginal.line > 0 && aOriginal.column >= 0 && aSource) { // Cases 2 and 3. return; } else { throw new Error('Invalid mapping: ' + JSON.stringify({ generated: aGenerated, source: aSource, original: aOriginal, name: aName })); } }; /** * Serialize the accumulated mappings in to the stream of base 64 VLQs * specified by the source map format. */ SourceMapGenerator.prototype._serializeMappings = function SourceMapGenerator_serializeMappings() { var previousGeneratedColumn = 0; var previousGeneratedLine = 1; var previousOriginalColumn = 0; var previousOriginalLine = 0; var previousName = 0; var previousSource = 0; var result = ''; var next; var mapping; var nameIdx; var sourceIdx; var mappings = this._mappings.toArray(); for (var i = 0, len = mappings.length; i < len; i++) { mapping = mappings[i]; next = '' if (mapping.generatedLine !== previousGeneratedLine) { previousGeneratedColumn = 0; while (mapping.generatedLine !== previousGeneratedLine) { next += ';'; previousGeneratedLine++; } } else { if (i > 0) { if (!util.compareByGeneratedPositionsInflated(mapping, mappings[i - 1])) { continue; } next += ','; } } next += base64VLQ.encode(mapping.generatedColumn - previousGeneratedColumn); previousGeneratedColumn = mapping.generatedColumn; if (mapping.source != null) { sourceIdx = this._sources.indexOf(mapping.source); next += base64VLQ.encode(sourceIdx - previousSource); previousSource = sourceIdx; // lines are stored 0-based in SourceMap spec version 3 next += base64VLQ.encode(mapping.originalLine - 1 - previousOriginalLine); previousOriginalLine = mapping.originalLine - 1; next += base64VLQ.encode(mapping.originalColumn - previousOriginalColumn); previousOriginalColumn = mapping.originalColumn; if (mapping.name != null) { nameIdx = this._names.indexOf(mapping.name); next += base64VLQ.encode(nameIdx - previousName); previousName = nameIdx; } } result += next; } return result; }; SourceMapGenerator.prototype._generateSourcesContent = function SourceMapGenerator_generateSourcesContent(aSources, aSourceRoot) { return aSources.map(function (source) { if (!this._sourcesContents) { return null; } if (aSourceRoot != null) { source = util.relative(aSourceRoot, source); } var key = util.toSetString(source); return Object.prototype.hasOwnProperty.call(this._sourcesContents, key) ? this._sourcesContents[key] : null; }, this); }; /** * Externalize the source map. */ SourceMapGenerator.prototype.toJSON = function SourceMapGenerator_toJSON() { var map = { version: this._version, sources: this._sources.toArray(), names: this._names.toArray(), mappings: this._serializeMappings() }; if (this._file != null) { map.file = this._file; } if (this._sourceRoot != null) { map.sourceRoot = this._sourceRoot; } if (this._sourcesContents) { map.sourcesContent = this._generateSourcesContent(map.sources, map.sourceRoot); } return map; }; /** * Render the source map being generated to a string. */ SourceMapGenerator.prototype.toString = function SourceMapGenerator_toString() { return JSON.stringify(this.toJSON()); }; exports.SourceMapGenerator = SourceMapGenerator; /***/ }), /* 6 */ /***/ (function(module, exports, __webpack_require__) { /* -*- Mode: js; js-indent-level: 2; -*- */ /* * Copyright 2011 Mozilla Foundation and contributors * Licensed under the New BSD license. See LICENSE or: * http://opensource.org/licenses/BSD-3-Clause * * Based on the Base 64 VLQ implementation in Closure Compiler: * https://code.google.com/p/closure-compiler/source/browse/trunk/src/com/google/debugging/sourcemap/Base64VLQ.java * * Copyright 2011 The Closure Compiler Authors. All rights reserved. * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions are * met: * * * Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * * Redistributions in binary form must reproduce the above * copyright notice, this list of conditions and the following * disclaimer in the documentation and/or other materials provided * with the distribution. * * Neither the name of Google Inc. nor the names of its * contributors may be used to endorse or promote products derived * from this software without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ var base64 = __webpack_require__(22); // A single base 64 digit can contain 6 bits of data. For the base 64 variable // length quantities we use in the source map spec, the first bit is the sign, // the next four bits are the actual value, and the 6th bit is the // continuation bit. The continuation bit tells us whether there are more // digits in this value following this digit. // // Continuation // | Sign // | | // V V // 101011 var VLQ_BASE_SHIFT = 5; // binary: 100000 var VLQ_BASE = 1 << VLQ_BASE_SHIFT; // binary: 011111 var VLQ_BASE_MASK = VLQ_BASE - 1; // binary: 100000 var VLQ_CONTINUATION_BIT = VLQ_BASE; /** * Converts from a two-complement value to a value where the sign bit is * placed in the least significant bit. For example, as decimals: * 1 becomes 2 (10 binary), -1 becomes 3 (11 binary) * 2 becomes 4 (100 binary), -2 becomes 5 (101 binary) */ function toVLQSigned(aValue) { return aValue < 0 ? ((-aValue) << 1) + 1 : (aValue << 1) + 0; } /** * Converts to a two-complement value from a value where the sign bit is * placed in the least significant bit. For example, as decimals: * 2 (10 binary) becomes 1, 3 (11 binary) becomes -1 * 4 (100 binary) becomes 2, 5 (101 binary) becomes -2 */ function fromVLQSigned(aValue) { var isNegative = (aValue & 1) === 1; var shifted = aValue >> 1; return isNegative ? -shifted : shifted; } /** * Returns the base 64 VLQ encoded value. */ exports.encode = function base64VLQ_encode(aValue) { var encoded = ""; var digit; var vlq = toVLQSigned(aValue); do { digit = vlq & VLQ_BASE_MASK; vlq >>>= VLQ_BASE_SHIFT; if (vlq > 0) { // There are still more digits in this value, so we must make sure the // continuation bit is marked. digit |= VLQ_CONTINUATION_BIT; } encoded += base64.encode(digit); } while (vlq > 0); return encoded; }; /** * Decodes the next base 64 VLQ value from the given string and returns the * value and the rest of the string via the out parameter. */ exports.decode = function base64VLQ_decode(aStr, aIndex, aOutParam) { var strLen = aStr.length; var result = 0; var shift = 0; var continuation, digit; do { if (aIndex >= strLen) { throw new Error("Expected more digits in base 64 VLQ value."); } digit = base64.decode(aStr.charCodeAt(aIndex++)); if (digit === -1) { throw new Error("Invalid base64 digit: " + aStr.charAt(aIndex - 1)); } continuation = !!(digit & VLQ_CONTINUATION_BIT); digit &= VLQ_BASE_MASK; result = result + (digit << shift); shift += VLQ_BASE_SHIFT; } while (continuation); aOutParam.value = fromVLQSigned(result); aOutParam.rest = aIndex; }; /***/ }), /* 7 */ /***/ (function(module, exports, __webpack_require__) { /* -*- Mode: js; js-indent-level: 2; -*- */ /* * Copyright 2011 Mozilla Foundation and contributors * Licensed under the New BSD license. See LICENSE or: * http://opensource.org/licenses/BSD-3-Clause */ var util = __webpack_require__(0); var has = Object.prototype.hasOwnProperty; /** * A data structure which is a combination of an array and a set. Adding a new * member is O(1), testing for membership is O(1), and finding the index of an * element is O(1). Removing elements from the set is not supported. Only * strings are supported for membership. */ function ArraySet() { this._array = []; this._set = Object.create(null); } /** * Static method for creating ArraySet instances from an existing array. */ ArraySet.fromArray = function ArraySet_fromArray(aArray, aAllowDuplicates) { var set = new ArraySet(); for (var i = 0, len = aArray.length; i < len; i++) { set.add(aArray[i], aAllowDuplicates); } return set; }; /** * Return how many unique items are in this ArraySet. If duplicates have been * added, than those do not count towards the size. * * @returns Number */ ArraySet.prototype.size = function ArraySet_size() { return Object.getOwnPropertyNames(this._set).length; }; /** * Add the given string to this set. * * @param String aStr */ ArraySet.prototype.add = function ArraySet_add(aStr, aAllowDuplicates) { var sStr = util.toSetString(aStr); var isDuplicate = has.call(this._set, sStr); var idx = this._array.length; if (!isDuplicate || aAllowDuplicates) { this._array.push(aStr); } if (!isDuplicate) { this._set[sStr] = idx; } }; /** * Is the given string a member of this set? * * @param String aStr */ ArraySet.prototype.has = function ArraySet_has(aStr) { var sStr = util.toSetString(aStr); return has.call(this._set, sStr); }; /** * What is the index of the given string in the array? * * @param String aStr */ ArraySet.prototype.indexOf = function ArraySet_indexOf(aStr) { var sStr = util.toSetString(aStr); if (has.call(this._set, sStr)) { return this._set[sStr]; } throw new Error('"' + aStr + '" is not in the set.'); }; /** * What is the element at the given index? * * @param Number aIdx */ ArraySet.prototype.at = function ArraySet_at(aIdx) { if (aIdx >= 0 && aIdx < this._array.length) { return this._array[aIdx]; } throw new Error('No element indexed by ' + aIdx); }; /** * Returns the array representation of this set (which has the proper indices * indicated by indexOf). Note that this is a copy of the internal array used * for storing the members so that no one can mess with internal state. */ ArraySet.prototype.toArray = function ArraySet_toArray() { return this._array.slice(); }; exports.ArraySet = ArraySet; /***/ }), /* 8 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return getLinesAround; }); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stack_frame__ = __webpack_require__(1); /** * Copyright (c) 2015-present, Facebook, Inc. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */ /** * * @param {number} line The line number to provide context around. * @param {number} count The number of lines you'd like for context. * @param {string[] | string} lines The source code. */ function getLinesAround(line, count, lines) { if (typeof lines === 'string') { lines = lines.split('\n'); } var result = []; for (var index = Math.max(0, line - 1 - count); index <= Math.min(lines.length - 1, line - 1 + count); ++index) { result.push(new __WEBPACK_IMPORTED_MODULE_0__stack_frame__["a" /* ScriptLine */](index + 1, lines[index], index === line - 1)); } return result; } /* unused harmony default export */ var _unused_webpack_default_export = (getLinesAround); /***/ }), /* 9 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; Object.defineProperty(__webpack_exports__, "__esModule", { value: true }); /* WEBPACK VAR INJECTION */(function(process) {/* harmony export (immutable) */ __webpack_exports__["setEditorHandler"] = setEditorHandler; /* harmony export (immutable) */ __webpack_exports__["reportBuildError"] = reportBuildError; /* harmony export (immutable) */ __webpack_exports__["dismissBuildError"] = dismissBuildError; /* harmony export (immutable) */ __webpack_exports__["startReportingRuntimeErrors"] = startReportingRuntimeErrors; /* harmony export (immutable) */ __webpack_exports__["dismissRuntimeErrors"] = dismissRuntimeErrors; /* harmony export (immutable) */ __webpack_exports__["stopReportingRuntimeErrors"] = stopReportingRuntimeErrors; /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__listenToRuntimeErrors__ = __webpack_require__(10); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__styles__ = __webpack_require__(31); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__utils_dom_css__ = __webpack_require__(32); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_iframeScript__ = __webpack_require__(33); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_iframeScript___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_iframeScript__); /** * Copyright (c) 2015-present, Facebook, Inc. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */ // Importing iframe-bundle generated in the pre build step as // a text using webpack raw-loader. See webpack.config.js file. // $FlowFixMe var iframe = null; var isLoadingIframe = false; var isIframeReady = false; var editorHandler = null; var currentBuildError = null; var currentRuntimeErrorRecords = []; var currentRuntimeErrorOptions = null; var stopListeningToRuntimeErrors = null; function setEditorHandler(handler) { editorHandler = handler; if (iframe) { update(); } } function reportBuildError(error) { currentBuildError = error; update(); } function dismissBuildError() { currentBuildError = null; update(); } function startReportingRuntimeErrors(options) { if (stopListeningToRuntimeErrors !== null) { throw new Error('Already listening'); } if (options.launchEditorEndpoint) { console.warn('Warning: `startReportingRuntimeErrors` doesn’t accept ' + '`launchEditorEndpoint` argument anymore. Use `listenToOpenInEditor` ' + 'instead with your own implementation to open errors in editor '); } currentRuntimeErrorOptions = options; stopListeningToRuntimeErrors = Object(__WEBPACK_IMPORTED_MODULE_0__listenToRuntimeErrors__["a" /* listenToRuntimeErrors */])(function (errorRecord) { try { if (typeof options.onError === 'function') { options.onError.call(null); } } finally { handleRuntimeError(errorRecord); } }, options.filename); } function handleRuntimeError(errorRecord) { if (currentRuntimeErrorRecords.some(function (_ref) { var error = _ref.error; return error === errorRecord.error; })) { // Deduplicate identical errors. // This fixes https://github.com/facebookincubator/create-react-app/issues/3011. return; } currentRuntimeErrorRecords = currentRuntimeErrorRecords.concat([errorRecord]); update(); } function dismissRuntimeErrors() { currentRuntimeErrorRecords = []; update(); } function stopReportingRuntimeErrors() { if (stopListeningToRuntimeErrors === null) { throw new Error('Not currently listening'); } currentRuntimeErrorOptions = null; try { stopListeningToRuntimeErrors(); } finally { stopListeningToRuntimeErrors = null; } } function update() { // Loading iframe can be either sync or async depending on the browser. if (isLoadingIframe) { // Iframe is loading. // First render will happen soon--don't need to do anything. return; } if (isIframeReady) { // Iframe is ready. // Just update it. updateIframeContent(); return; } // We need to schedule the first render. isLoadingIframe = true; var loadingIframe = window.document.createElement('iframe'); Object(__WEBPACK_IMPORTED_MODULE_2__utils_dom_css__["a" /* applyStyles */])(loadingIframe, __WEBPACK_IMPORTED_MODULE_1__styles__["a" /* iframeStyle */]); loadingIframe.onload = function () { var iframeDocument = loadingIframe.contentDocument; if (iframeDocument != null && iframeDocument.body != null) { iframe = loadingIframe; var script = loadingIframe.contentWindow.document.createElement('script'); script.type = 'text/javascript'; script.innerHTML = __WEBPACK_IMPORTED_MODULE_3_iframeScript___default.a; iframeDocument.body.appendChild(script); } }; var appDocument = window.document; appDocument.body.appendChild(loadingIframe); } function updateIframeContent() { if (!currentRuntimeErrorOptions) { throw new Error('Expected options to be injected.'); } if (!iframe) { throw new Error('Iframe has not been created yet.'); } var isRendered = iframe.contentWindow.updateContent({ currentBuildError: currentBuildError, currentRuntimeErrorRecords: currentRuntimeErrorRecords, dismissRuntimeErrors: dismissRuntimeErrors, editorHandler: editorHandler }); if (!isRendered) { window.document.body.removeChild(iframe); iframe = null; isIframeReady = false; } } window.__REACT_ERROR_OVERLAY_GLOBAL_HOOK__ = window.__REACT_ERROR_OVERLAY_GLOBAL_HOOK__ || {}; window.__REACT_ERROR_OVERLAY_GLOBAL_HOOK__.iframeReady = function iframeReady() { isIframeReady = true; isLoadingIframe = false; updateIframeContent(); }; if (process.env.NODE_ENV === 'production') { console.warn('react-error-overlay is not meant for use in production. You should ' + 'ensure it is not included in your build to reduce bundle size.'); } /* WEBPACK VAR INJECTION */}.call(__webpack_exports__, __webpack_require__(3))) /***/ }), /* 10 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (immutable) */ __webpack_exports__["a"] = listenToRuntimeErrors; /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__effects_unhandledError__ = __webpack_require__(11); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__effects_unhandledRejection__ = __webpack_require__(12); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__effects_stackTraceLimit__ = __webpack_require__(13); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__effects_proxyConsole__ = __webpack_require__(14); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__utils_warnings__ = __webpack_require__(15); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__utils_getStackFrames__ = __webpack_require__(16); /** * Copyright (c) 2015-present, Facebook, Inc. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */ var CONTEXT_SIZE = 3; function listenToRuntimeErrors(crash) { var filename = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '/static/js/bundle.js'; function crashWithFrames(error) { var unhandledRejection = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false; Object(__WEBPACK_IMPORTED_MODULE_5__utils_getStackFrames__["a" /* default */])(error, unhandledRejection, CONTEXT_SIZE).then(function (stackFrames) { if (stackFrames == null) { return; } crash({ error: error, unhandledRejection: unhandledRejection, contextSize: CONTEXT_SIZE, stackFrames: stackFrames }); }).catch(function (e) { console.log('Could not get the stack frames of error:', e); }); } Object(__WEBPACK_IMPORTED_MODULE_0__effects_unhandledError__["a" /* register */])(window, function (error) { return crashWithFrames(error, false); }); Object(__WEBPACK_IMPORTED_MODULE_1__effects_unhandledRejection__["a" /* register */])(window, function (error) { return crashWithFrames(error, true); }); Object(__WEBPACK_IMPORTED_MODULE_2__effects_stackTraceLimit__["a" /* register */])(); Object(__WEBPACK_IMPORTED_MODULE_3__effects_proxyConsole__["b" /* registerReactStack */])(); Object(__WEBPACK_IMPORTED_MODULE_3__effects_proxyConsole__["a" /* permanentRegister */])('error', function (warning, stack) { var data = Object(__WEBPACK_IMPORTED_MODULE_4__utils_warnings__["a" /* massage */])(warning, stack); crashWithFrames( // $FlowFixMe { message: data.message, stack: data.stack, __unmap_source: filename }, false); }); return function stopListening() { Object(__WEBPACK_IMPORTED_MODULE_2__effects_stackTraceLimit__["b" /* unregister */])(); Object(__WEBPACK_IMPORTED_MODULE_1__effects_unhandledRejection__["b" /* unregister */])(window); Object(__WEBPACK_IMPORTED_MODULE_0__effects_unhandledError__["b" /* unregister */])(window); Object(__WEBPACK_IMPORTED_MODULE_3__effects_proxyConsole__["c" /* unregisterReactStack */])(); }; } /***/ }), /* 11 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return registerUnhandledError; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return unregisterUnhandledError; }); /** * Copyright (c) 2015-present, Facebook, Inc. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */ var boundErrorHandler = null; function errorHandler(callback, e) { if (!e.error) { return; } // $FlowFixMe var error = e.error; if (error instanceof Error) { callback(error); } else { // A non-error was thrown, we don't have a trace. :( // Look in your browser's devtools for more information callback(new Error(error)); } } function registerUnhandledError(target, callback) { if (boundErrorHandler !== null) { return; } boundErrorHandler = errorHandler.bind(undefined, callback); target.addEventListener('error', boundErrorHandler); } function unregisterUnhandledError(target) { if (boundErrorHandler === null) { return; } target.removeEventListener('error', boundErrorHandler); boundErrorHandler = null; } /***/ }), /* 12 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return registerUnhandledRejection; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return unregisterUnhandledRejection; }); /** * Copyright (c) 2015-present, Facebook, Inc. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */ var boundRejectionHandler = null; function rejectionHandler(callback, e) { if (e == null || e.reason == null) { return callback(new Error('Unknown')); } var reason = e.reason; if (reason instanceof Error) { return callback(reason); } // A non-error was rejected, we don't have a trace :( // Look in your browser's devtools for more information return callback(new Error(reason)); } function registerUnhandledRejection(target, callback) { if (boundRejectionHandler !== null) { return; } boundRejectionHandler = rejectionHandler.bind(undefined, callback); // $FlowFixMe target.addEventListener('unhandledrejection', boundRejectionHandler); } function unregisterUnhandledRejection(target) { if (boundRejectionHandler === null) { return; } // $FlowFixMe target.removeEventListener('unhandledrejection', boundRejectionHandler); boundRejectionHandler = null; } /***/ }), /* 13 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return registerStackTraceLimit; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return unregisterStackTraceLimit; }); /** * Copyright (c) 2015-present, Facebook, Inc. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */ var stackTraceRegistered = false; // Default: https://docs.microsoft.com/en-us/scripting/javascript/reference/stacktracelimit-property-error-javascript var restoreStackTraceValue = 10; var MAX_STACK_LENGTH = 50; function registerStackTraceLimit() { var limit = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : MAX_STACK_LENGTH; if (stackTraceRegistered) { return; } try { restoreStackTraceValue = Error.stackTraceLimit; Error.stackTraceLimit = limit; stackTraceRegistered = true; } catch (e) { // Not all browsers support this so we don't care if it errors } } function unregisterStackTraceLimit() { if (!stackTraceRegistered) { return; } try { Error.stackTraceLimit = restoreStackTraceValue; stackTraceRegistered = false; } catch (e) { // Not all browsers support this so we don't care if it errors } } /***/ }), /* 14 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return permanentRegister; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return registerReactStack; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return unregisterReactStack; }); var reactFrameStack = []; /** * Copyright (c) 2015-present, Facebook, Inc. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */ // This is a stripped down barebones version of this proposal: // https://gist.github.com/sebmarkbage/bdefa100f19345229d526d0fdd22830f // We're implementing just enough to get the invalid element type warnings // to display the component stack in React 15.6+: // https://github.com/facebook/react/pull/9679 /// TODO: a more comprehensive implementation. var registerReactStack = function registerReactStack() { if (typeof console !== 'undefined') { // $FlowFixMe console.reactStack = function (frames) { return reactFrameStack.push(frames); }; // $FlowFixMe console.reactStackEnd = function (frames) { return reactFrameStack.pop(); }; } }; var unregisterReactStack = function unregisterReactStack() { if (typeof console !== 'undefined') { // $FlowFixMe console.reactStack = undefined; // $FlowFixMe console.reactStackEnd = undefined; } }; var permanentRegister = function proxyConsole(type, callback) { if (typeof console !== 'undefined') { var orig = console[type]; if (typeof orig === 'function') { console[type] = function __stack_frame_overlay_proxy_console__() { try { var _message = arguments[0]; if (typeof _message === 'string' && reactFrameStack.length > 0) { callback(_message, reactFrameStack[reactFrameStack.length - 1]); } } catch (err) { // Warnings must never crash. Rethrow with a clean stack. setTimeout(function () { throw err; }); } return orig.apply(this, arguments); }; } } }; /***/ }), /* 15 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return massage; }); function stripInlineStacktrace(message) { return message.split('\n').filter(function (line) { return !line.match(/^\s*in/); }).join('\n'); // " in Foo" } /** * Copyright (c) 2015-present, Facebook, Inc. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */ function massage(warning, frames) { var message = stripInlineStacktrace(warning); // Reassemble the stack with full filenames provided by React var stack = ''; var lastFilename = void 0; var lastLineNumber = void 0; for (var index = 0; index < frames.length; ++index) { var _frames$index = frames[index], fileName = _frames$index.fileName, lineNumber = _frames$index.lineNumber; if (fileName == null || lineNumber == null) { continue; } // TODO: instead, collapse them in the UI if (fileName === lastFilename && typeof lineNumber === 'number' && typeof lastLineNumber === 'number' && Math.abs(lineNumber - lastLineNumber) < 3) { continue; } lastFilename = fileName; lastLineNumber = lineNumber; var name = frames[index].name; name = name || '(anonymous function)'; stack += 'in ' + name + ' (at ' + fileName + ':' + lineNumber + ')\n'; } return { message: message, stack: stack }; } /***/ }), /* 16 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* unused harmony export getStackFrames */ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__parser__ = __webpack_require__(17); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__mapper__ = __webpack_require__(18); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__unmapper__ = __webpack_require__(29); /** * Copyright (c) 2015-present, Facebook, Inc. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */ function getStackFrames(error) { var unhandledRejection = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false; var contextSize = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 3; var parsedFrames = Object(__WEBPACK_IMPORTED_MODULE_0__parser__["a" /* parse */])(error); var enhancedFramesPromise = void 0; if (error.__unmap_source) { enhancedFramesPromise = Object(__WEBPACK_IMPORTED_MODULE_2__unmapper__["a" /* unmap */])( // $FlowFixMe error.__unmap_source, parsedFrames, contextSize); } else { enhancedFramesPromise = Object(__WEBPACK_IMPORTED_MODULE_1__mapper__["a" /* map */])(parsedFrames, contextSize); } return enhancedFramesPromise.then(function (enhancedFrames) { if (enhancedFrames.map(function (f) { return f._originalFileName; }).filter(function (f) { return f != null && f.indexOf('node_modules') === -1; }).length === 0) { return null; } return enhancedFrames.filter(function (_ref) { var functionName = _ref.functionName; return functionName == null || functionName.indexOf('__stack_frame_overlay_proxy_console__') === -1; }); }); } /* harmony default export */ __webpack_exports__["a"] = (getStackFrames); /***/ }), /* 17 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return parseError; }); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__stack_frame__ = __webpack_require__(1); function _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } } /** * Copyright (c) 2015-present, Facebook, Inc. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */ var regexExtractLocation = /\(?(.+?)(?::(\d+))?(?::(\d+))?\)?$/; function extractLocation(token) { return regexExtractLocation.exec(token).slice(1).map(function (v) { var p = Number(v); if (!isNaN(p)) { return p; } return v; }); } var regexValidFrame_Chrome = /^\s*(at|in)\s.+(:\d+)/; var regexValidFrame_FireFox = /(^|@)\S+:\d+|.+line\s+\d+\s+>\s+(eval|Function).+/; function parseStack(stack) { var frames = stack.filter(function (e) { return regexValidFrame_Chrome.test(e) || regexValidFrame_FireFox.test(e); }).map(function (e) { if (regexValidFrame_FireFox.test(e)) { // Strip eval, we don't care about it var isEval = false; if (/ > (eval|Function)/.test(e)) { e = e.replace(/ line (\d+)(?: > eval line \d+)* > (eval|Function):\d+:\d+/g, ':$1'); isEval = true; } var data = e.split(/[@]/g); var last = data.pop(); return new (Function.prototype.bind.apply(__WEBPACK_IMPORTED_MODULE_0__stack_frame__["b" /* default */], [null].concat([data.join('@') || (isEval ? 'eval' : null)], _toConsumableArray(extractLocation(last)))))(); } else { // Strip eval, we don't care about it if (e.indexOf('(eval ') !== -1) { e = e.replace(/(\(eval at [^()]*)|(\),.*$)/g, ''); } if (e.indexOf('(at ') !== -1) { e = e.replace(/\(at /, '('); } var _data = e.trim().split(/\s+/g).slice(1); var _last = _data.pop(); return new (Function.prototype.bind.apply(__WEBPACK_IMPORTED_MODULE_0__stack_frame__["b" /* default */], [null].concat([_data.join(' ') || null], _toConsumableArray(extractLocation(_last)))))(); } }); return frames; } /** * Turns an Error, or similar object, into a set of StackFrames. * @alias parse */ function parseError(error) { if (error == null) { throw new Error('You cannot pass a null object.'); } if (typeof error === 'string') { return parseStack(error.split('\n')); } if (Array.isArray(error)) { return parseStack(error); } if (typeof error.stack === 'string') { return parseStack(error.stack.split('\n')); } throw new Error('The error you provided does not contain a stack trace.'); } /* unused harmony default export */ var _unused_webpack_default_export = (parseError); /***/ }), /* 18 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return map; }); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator__ = __webpack_require__(2); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator__); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__stack_frame__ = __webpack_require__(1); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__getSourceMap__ = __webpack_require__(4); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__getLinesAround__ = __webpack_require__(8); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_settle_promise__ = __webpack_require__(28); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_settle_promise___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_settle_promise__); /** * Enhances a set of StackFrames with their original positions and code (when available). * @param {StackFrame[]} frames A set of StackFrames which contain (generated) code positions. * @param {number} [contextLines=3] The number of lines to provide before and after the line specified in the StackFrame. */ var map = function () { var _ref = _asyncToGenerator( /*#__PURE__*/__WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default.a.mark(function _callee2(frames) { var _this = this; var contextLines = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 3; var cache, files; return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default.a.wrap(function _callee2$(_context2) { while (1) { switch (_context2.prev = _context2.next) { case 0: cache = {}; files = []; frames.forEach(function (frame) { var fileName = frame.fileName; if (fileName == null) { return; } if (files.indexOf(fileName) !== -1) { return; } files.push(fileName); }); _context2.next = 5; return Object(__WEBPACK_IMPORTED_MODULE_4_settle_promise__["settle"])(files.map(function () { var _ref2 = _asyncToGenerator( /*#__PURE__*/__WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default.a.mark(function _callee(fileName) { var fileSource, map; return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default.a.wrap(function _callee$(_context) { while (1) { switch (_context.prev = _context.next) { case 0: _context.next = 2; return fetch(fileName).then(function (r) { return r.text(); }); case 2: fileSource = _context.sent; _context.next = 5; return Object(__WEBPACK_IMPORTED_MODULE_2__getSourceMap__["a" /* getSourceMap */])(fileName, fileSource); case 5: map = _context.sent; cache[fileName] = { fileSource: fileSource, map: map }; case 7: case 'end': return _context.stop(); } } }, _callee, _this); })); return function (_x3) { return _ref2.apply(this, arguments); }; }())); case 5: return _context2.abrupt('return', frames.map(function (frame) { var functionName = frame.functionName, fileName = frame.fileName, lineNumber = frame.lineNumber, columnNumber = frame.columnNumber; var _ref3 = cache[fileName] || {}, map = _ref3.map, fileSource = _ref3.fileSource; if (map == null || lineNumber == null) { return frame; } var _map$getOriginalPosit = map.getOriginalPosition(lineNumber, columnNumber), source = _map$getOriginalPosit.source, line = _map$getOriginalPosit.line, column = _map$getOriginalPosit.column; var originalSource = source == null ? [] : map.getSource(source); return new __WEBPACK_IMPORTED_MODULE_1__stack_frame__["b" /* default */](functionName, fileName, lineNumber, columnNumber, Object(__WEBPACK_IMPORTED_MODULE_3__getLinesAround__["a" /* getLinesAround */])(lineNumber, contextLines, fileSource), functionName, source, line, column, Object(__WEBPACK_IMPORTED_MODULE_3__getLinesAround__["a" /* getLinesAround */])(line, contextLines, originalSource)); })); case 6: case 'end': return _context2.stop(); } } }, _callee2, this); })); return function map(_x2) { return _ref.apply(this, arguments); }; }(); function _asyncToGenerator(fn) { return function () { var gen = fn.apply(this, arguments); return new Promise(function (resolve, reject) { function step(key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { return Promise.resolve(value).then(function (value) { step("next", value); }, function (err) { step("throw", err); }); } } return step("next"); }); }; } /** * Copyright (c) 2015-present, Facebook, Inc. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */ /* unused harmony default export */ var _unused_webpack_default_export = (map); /***/ }), /* 19 */ /***/ (function(module, exports, __webpack_require__) { /** * Copyright (c) 2014-present, Facebook, Inc. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */ // This method of obtaining a reference to the global object needs to be // kept identical to the way it is obtained in runtime.js var g = (function() { return this })() || Function("return this")(); // Use `getOwnPropertyNames` because not all browsers support calling // `hasOwnProperty` on the global `self` object in a worker. See #183. var hadRuntime = g.regeneratorRuntime && Object.getOwnPropertyNames(g).indexOf("regeneratorRuntime") >= 0; // Save the old regeneratorRuntime in case it needs to be restored later. var oldRuntime = hadRuntime && g.regeneratorRuntime; // Force reevalutation of runtime.js. g.regeneratorRuntime = undefined; module.exports = __webpack_require__(20); if (hadRuntime) { // Restore the original runtime. g.regeneratorRuntime = oldRuntime; } else { // Remove the global property added by runtime.js. try { delete g.regeneratorRuntime; } catch(e) { g.regeneratorRuntime = undefined; } } /***/ }), /* 20 */ /***/ (function(module, exports) { /** * Copyright (c) 2014-present, Facebook, Inc. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */ !(function(global) { "use strict"; var Op = Object.prototype; var hasOwn = Op.hasOwnProperty; var undefined; // More compressible than void 0. var $Symbol = typeof Symbol === "function" ? Symbol : {}; var iteratorSymbol = $Symbol.iterator || "@@iterator"; var asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator"; var toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; var inModule = typeof module === "object"; var runtime = global.regeneratorRuntime; if (runtime) { if (inModule) { // If regeneratorRuntime is defined globally and we're in a module, // make the exports object identical to regeneratorRuntime. module.exports = runtime; } // Don't bother evaluating the rest of this file if the runtime was // already defined globally. return; } // Define the runtime globally (as expected by generated code) as either // module.exports (if we're in a module) or a new, empty object. runtime = global.regeneratorRuntime = inModule ? module.exports : {}; function wrap(innerFn, outerFn, self, tryLocsList) { // If outerFn provided and outerFn.prototype is a Generator, then outerFn.prototype instanceof Generator. var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator; var generator = Object.create(protoGenerator.prototype); var context = new Context(tryLocsList || []); // The ._invoke method unifies the implementations of the .next, // .throw, and .return methods. generator._invoke = makeInvokeMethod(innerFn, self, context); return generator; } runtime.wrap = wrap; // Try/catch helper to minimize deoptimizations. Returns a completion // record like context.tryEntries[i].completion. This interface could // have been (and was previously) designed to take a closure to be // invoked without arguments, but in all the cases we care about we // already have an existing method we want to call, so there's no need // to create a new function object. We can even get away with assuming // the method takes exactly one argument, since that happens to be true // in every case, so we don't have to touch the arguments object. The // only additional allocation required is the completion record, which // has a stable shape and so hopefully should be cheap to allocate. function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } var GenStateSuspendedStart = "suspendedStart"; var GenStateSuspendedYield = "suspendedYield"; var GenStateExecuting = "executing"; var GenStateCompleted = "completed"; // Returning this object from the innerFn has the same effect as // breaking out of the dispatch switch statement. var ContinueSentinel = {}; // Dummy constructor functions that we use as the .constructor and // .constructor.prototype properties for functions that return Generator // objects. For full spec compliance, you may wish to configure your // minifier not to mangle the names of these two functions. function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} // This is a polyfill for %IteratorPrototype% for environments that // don't natively support it. var IteratorPrototype = {}; IteratorPrototype[iteratorSymbol] = function () { return this; }; var getProto = Object.getPrototypeOf; var NativeIteratorPrototype = getProto && getProto(getProto(values([]))); if (NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol)) { // This environment has a native %IteratorPrototype%; use it instead // of the polyfill. IteratorPrototype = NativeIteratorPrototype; } var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); GeneratorFunction.prototype = Gp.constructor = GeneratorFunctionPrototype; GeneratorFunctionPrototype.constructor = GeneratorFunction; GeneratorFunctionPrototype[toStringTagSymbol] = GeneratorFunction.displayName = "GeneratorFunction"; // Helper for defining the .next, .throw, and .return methods of the // Iterator interface in terms of a single ._invoke method. function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function(method) { prototype[method] = function(arg) { return this._invoke(method, arg); }; }); } runtime.isGeneratorFunction = function(genFun) { var ctor = typeof genFun === "function" && genFun.constructor; return ctor ? ctor === GeneratorFunction || // For the native GeneratorFunction constructor, the best we can // do is to check its .name property. (ctor.displayName || ctor.name) === "GeneratorFunction" : false; }; runtime.mark = function(genFun) { if (Object.setPrototypeOf) { Object.setPrototypeOf(genFun, GeneratorFunctionPrototype); } else { genFun.__proto__ = GeneratorFunctionPrototype; if (!(toStringTagSymbol in genFun)) { genFun[toStringTagSymbol] = "GeneratorFunction"; } } genFun.prototype = Object.create(Gp); return genFun; }; // Within the body of any async function, `await x` is transformed to // `yield regeneratorRuntime.awrap(x)`, so that the runtime can test // `hasOwn.call(value, "__await")` to determine if the yielded value is // meant to be awaited. runtime.awrap = function(arg) { return { __await: arg }; }; function AsyncIterator(generator) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if (record.type === "throw") { reject(record.arg); } else { var result = record.arg; var value = result.value; if (value && typeof value === "object" && hasOwn.call(value, "__await")) { return Promise.resolve(value.__await).then(function(value) { invoke("next", value, resolve, reject); }, function(err) { invoke("throw", err, resolve, reject); }); } return Promise.resolve(value).then(function(unwrapped) { // When a yielded Promise is resolved, its final value becomes // the .value of the Promise<{value,done}> result for the // current iteration. If the Promise is rejected, however, the // result for this iteration will be rejected with the same // reason. Note that rejections of yielded Promises are not // thrown back into the generator function, as is the case // when an awaited Promise is rejected. This difference in // behavior between yield and await is important, because it // allows the consumer to decide what to do with the yielded // rejection (swallow it and continue, manually .throw it back // into the generator, abandon iteration, whatever). With // await, by contrast, there is no opportunity to examine the // rejection reason outside the generator function, so the // only option is to throw it from the await expression, and // let the generator function handle the exception. result.value = unwrapped; resolve(result); }, reject); } } var previousPromise; function enqueue(method, arg) { function callInvokeWithMethodAndArg() { return new Promise(function(resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = // If enqueue has been called before, then we want to wait until // all previous Promises have been resolved before calling invoke, // so that results are always delivered in the correct order. If // enqueue has not been called before, then it is important to // call invoke immediately, without waiting on a callback to fire, // so that the async generator function has the opportunity to do // any necessary setup in a predictable way. This predictability // is why the Promise constructor synchronously invokes its // executor callback, and why async functions synchronously // execute code before the first await. Since we implement simple // async functions in terms of async generators, it is especially // important to get this right, even though it requires care. previousPromise ? previousPromise.then( callInvokeWithMethodAndArg, // Avoid propagating failures to Promises returned by later // invocations of the iterator. callInvokeWithMethodAndArg ) : callInvokeWithMethodAndArg(); } // Define the unified helper method that is used to implement .next, // .throw, and .return (see defineIteratorMethods). this._invoke = enqueue; } defineIteratorMethods(AsyncIterator.prototype); AsyncIterator.prototype[asyncIteratorSymbol] = function () { return this; }; runtime.AsyncIterator = AsyncIterator; // Note that simple async functions are implemented on top of // AsyncIterator objects; they just return a Promise for the value of // the final result produced by the iterator. runtime.async = function(innerFn, outerFn, self, tryLocsList) { var iter = new AsyncIterator( wrap(innerFn, outerFn, self, tryLocsList) ); return runtime.isGeneratorFunction(outerFn) ? iter // If outerFn is a generator, return the full iterator. : iter.next().then(function(result) { return result.done ? result.value : iter.next(); }); }; function makeInvokeMethod(innerFn, self, context) { var state = GenStateSuspendedStart; return function invoke(method, arg) { if (state === GenStateExecuting) { throw new Error("Generator is already running"); } if (state === GenStateCompleted) { if (method === "throw") { throw arg; } // Be forgiving, per 25.3.3.3.3 of the spec: // https://people.mozilla.org/~jorendorff/es6-draft.html#sec-generatorresume return doneResult(); } context.method = method; context.arg = arg; while (true) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if (context.method === "next") { // Setting context._sent for legacy support of Babel's // function.sent implementation. context.sent = context._sent = context.arg; } else if (context.method === "throw") { if (state === GenStateSuspendedStart) { state = GenStateCompleted; throw context.arg; } context.dispatchException(context.arg); } else if (context.method === "return") { context.abrupt("return", context.arg); } state = GenStateExecuting; var record = tryCatch(innerFn, self, context); if (record.type === "normal") { // If an exception is thrown from innerFn, we leave state === // GenStateExecuting and loop back for another invocation. state = context.done ? GenStateCompleted : GenStateSuspendedYield; if (record.arg === ContinueSentinel) { continue; } return { value: record.arg, done: context.done }; } else if (record.type === "throw") { state = GenStateCompleted; // Dispatch the exception by looping back around to the // context.dispatchException(context.arg) call above. context.method = "throw"; context.arg = record.arg; } } }; } // Call delegate.iterator[context.method](context.arg) and handle the // result, either by returning a { value, done } result from the // delegate iterator, or by modifying context.method and context.arg, // setting context.delegate to null, and returning the ContinueSentinel. function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (method === undefined) { // A .throw or .return when the delegate iterator has no .throw // method always terminates the yield* loop. context.delegate = null; if (context.method === "throw") { if (delegate.iterator.return) { // If the delegate iterator has a return method, give it a // chance to clean up. context.method = "return"; context.arg = undefined; maybeInvokeDelegate(delegate, context); if (context.method === "throw") { // If maybeInvokeDelegate(context) changed context.method from // "return" to "throw", let that override the TypeError below. return ContinueSentinel; } } context.method = "throw"; context.arg = new TypeError( "The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if (record.type === "throw") { context.method = "throw"; context.arg = record.arg; context.delegate = null; return ContinueSentinel; } var info = record.arg; if (! info) { context.method = "throw"; context.arg = new TypeError("iterator result is not an object"); context.delegate = null; return ContinueSentinel; } if (info.done) { // Assign the result of the finished delegate to the temporary // variable specified by delegate.resultName (see delegateYield). context[delegate.resultName] = info.value; // Resume execution at the desired location (see delegateYield). context.next = delegate.nextLoc; // If context.method was "throw" but the delegate handled the // exception, let the outer generator proceed normally. If // context.method was "next", forget context.arg since it has been // "consumed" by the delegate iterator. If context.method was // "return", allow the original .return call to continue in the // outer generator. if (context.method !== "return") { context.method = "next"; context.arg = undefined; } } else { // Re-yield the result returned by the delegate method. return info; } // The delegate iterator is finished, so forget it and continue with // the outer generator. context.delegate = null; return ContinueSentinel; } // Define Generator.prototype.{next,throw,return} in terms of the // unified ._invoke helper method. defineIteratorMethods(Gp); Gp[toStringTagSymbol] = "Generator"; // A Generator should always return itself as the iterator object when the // @@iterator function is called on it. Some browsers' implementations of the // iterator prototype chain incorrectly implement this, causing the Generator // object to not be returned from this call. This ensures that doesn't happen. // See https://github.com/facebook/regenerator/issues/274 for more details. Gp[iteratorSymbol] = function() { return this; }; Gp.toString = function() { return "[object Generator]"; }; function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; if (1 in locs) { entry.catchLoc = locs[1]; } if (2 in locs) { entry.finallyLoc = locs[2]; entry.afterLoc = locs[3]; } this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal"; delete record.arg; entry.completion = record; } function Context(tryLocsList) { // The root entry object (effectively a try statement without a catch // or a finally block) gives us a place to store values thrown from // locations where there is no enclosing try statement. this.tryEntries = [{ tryLoc: "root" }]; tryLocsList.forEach(pushTryEntry, this); this.reset(true); } runtime.keys = function(object) { var keys = []; for (var key in object) { keys.push(key); } keys.reverse(); // Rather than returning an object with a next method, we keep // things simple and return the next function itself. return function next() { while (keys.length) { var key = keys.pop(); if (key in object) { next.value = key; next.done = false; return next; } } // To avoid creating an additional object, we just hang the .value // and .done properties off the next function object itself. This // also ensures that the minifier will not anonymize the function. next.done = true; return next; }; }; function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) { return iteratorMethod.call(iterable); } if (typeof iterable.next === "function") { return iterable; } if (!isNaN(iterable.length)) { var i = -1, next = function next() { while (++i < iterable.length) { if (hasOwn.call(iterable, i)) { next.value = iterable[i]; next.done = false; return next; } } next.value = undefined; next.done = true; return next; }; return next.next = next; } } // Return an iterator with no values. return { next: doneResult }; } runtime.values = values; function doneResult() { return { value: undefined, done: true }; } Context.prototype = { constructor: Context, reset: function(skipTempReset) { this.prev = 0; this.next = 0; // Resetting context._sent for legacy support of Babel's // function.sent implementation. this.sent = this._sent = undefined; this.done = false; this.delegate = null; this.method = "next"; this.arg = undefined; this.tryEntries.forEach(resetTryEntry); if (!skipTempReset) { for (var name in this) { // Not sure about the optimal order of these conditions: if (name.charAt(0) === "t" && hasOwn.call(this, name) && !isNaN(+name.slice(1))) { this[name] = undefined; } } } }, stop: function() { this.done = true; var rootEntry = this.tryEntries[0]; var rootRecord = rootEntry.completion; if (rootRecord.type === "throw") { throw rootRecord.arg; } return this.rval; }, dispatchException: function(exception) { if (this.done) { throw exception; } var context = this; function handle(loc, caught) { record.type = "throw"; record.arg = exception; context.next = loc; if (caught) { // If the dispatched exception was caught by a catch block, // then let that catch block handle the exception normally. context.method = "next"; context.arg = undefined; } return !! caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; var record = entry.completion; if (entry.tryLoc === "root") { // Exception thrown outside of any try block that could handle // it, so set the completion value of the entire function to // throw the exception. return handle("end"); } if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"); var hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) { return handle(entry.catchLoc, true); } else if (this.prev < entry.finallyLoc) { return handle(entry.finallyLoc); } } else if (hasCatch) { if (this.prev < entry.catchLoc) { return handle(entry.catchLoc, true); } } else if (hasFinally) { if (this.prev < entry.finallyLoc) { return handle(entry.finallyLoc); } } else { throw new Error("try statement without catch or finally"); } } } }, abrupt: function(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } if (finallyEntry && (type === "break" || type === "continue") && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc) { // Ignore the finally entry if control is not jumping to a // location outside the try/catch block. finallyEntry = null; } var record = finallyEntry ? finallyEntry.completion : {}; record.type = type; record.arg = arg; if (finallyEntry) { this.method = "next"; this.next = finallyEntry.finallyLoc; return ContinueSentinel; } return this.complete(record); }, complete: function(record, afterLoc) { if (record.type === "throw") { throw record.arg; } if (record.type === "break" || record.type === "continue") { this.next = record.arg; } else if (record.type === "return") { this.rval = this.arg = record.arg; this.method = "return"; this.next = "end"; } else if (record.type === "normal" && afterLoc) { this.next = afterLoc; } return ContinueSentinel; }, finish: function(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) { this.complete(entry.completion, entry.afterLoc); resetTryEntry(entry); return ContinueSentinel; } } }, "catch": function(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if (record.type === "throw") { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } // The context.catch method must only be called with a location // argument that corresponds to a known catch block. throw new Error("illegal catch attempt"); }, delegateYield: function(iterable, resultName, nextLoc) { this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }; if (this.method === "next") { // Deliberately forget the last sent value so that we don't // accidentally pass it on to the delegate. this.arg = undefined; } return ContinueSentinel; } }; })( // In sloppy mode, unbound `this` refers to the global object, fallback to // Function constructor if we're in global strict mode. That is sadly a form // of indirect eval which violates Content Security Policy. (function() { return this })() || Function("return this")() ); /***/ }), /* 21 */ /***/ (function(module, exports, __webpack_require__) { /* * Copyright 2009-2011 Mozilla Foundation and contributors * Licensed under the New BSD license. See LICENSE.txt or: * http://opensource.org/licenses/BSD-3-Clause */ exports.SourceMapGenerator = __webpack_require__(5).SourceMapGenerator; exports.SourceMapConsumer = __webpack_require__(24).SourceMapConsumer; exports.SourceNode = __webpack_require__(27).SourceNode; /***/ }), /* 22 */ /***/ (function(module, exports) { /* -*- Mode: js; js-indent-level: 2; -*- */ /* * Copyright 2011 Mozilla Foundation and contributors * Licensed under the New BSD license. See LICENSE or: * http://opensource.org/licenses/BSD-3-Clause */ var intToCharMap = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'.split(''); /** * Encode an integer in the range of 0 to 63 to a single base 64 digit. */ exports.encode = function (number) { if (0 <= number && number < intToCharMap.length) { return intToCharMap[number]; } throw new TypeError("Must be between 0 and 63: " + number); }; /** * Decode a single base 64 character code digit to an integer. Returns -1 on * failure. */ exports.decode = function (charCode) { var bigA = 65; // 'A' var bigZ = 90; // 'Z' var littleA = 97; // 'a' var littleZ = 122; // 'z' var zero = 48; // '0' var nine = 57; // '9' var plus = 43; // '+' var slash = 47; // '/' var littleOffset = 26; var numberOffset = 52; // 0 - 25: ABCDEFGHIJKLMNOPQRSTUVWXYZ if (bigA <= charCode && charCode <= bigZ) { return (charCode - bigA); } // 26 - 51: abcdefghijklmnopqrstuvwxyz if (littleA <= charCode && charCode <= littleZ) { return (charCode - littleA + littleOffset); } // 52 - 61: 0123456789 if (zero <= charCode && charCode <= nine) { return (charCode - zero + numberOffset); } // 62: + if (charCode == plus) { return 62; } // 63: / if (charCode == slash) { return 63; } // Invalid base64 digit. return -1; }; /***/ }), /* 23 */ /***/ (function(module, exports, __webpack_require__) { /* -*- Mode: js; js-indent-level: 2; -*- */ /* * Copyright 2014 Mozilla Foundation and contributors * Licensed under the New BSD license. See LICENSE or: * http://opensource.org/licenses/BSD-3-Clause */ var util = __webpack_require__(0); /** * Determine whether mappingB is after mappingA with respect to generated * position. */ function generatedPositionAfter(mappingA, mappingB) { // Optimized for most common case var lineA = mappingA.generatedLine; var lineB = mappingB.generatedLine; var columnA = mappingA.generatedColumn; var columnB = mappingB.generatedColumn; return lineB > lineA || lineB == lineA && columnB >= columnA || util.compareByGeneratedPositionsInflated(mappingA, mappingB) <= 0; } /** * A data structure to provide a sorted view of accumulated mappings in a * performance conscious manner. It trades a neglibable overhead in general * case for a large speedup in case of mappings being added in order. */ function MappingList() { this._array = []; this._sorted = true; // Serves as infimum this._last = {generatedLine: -1, generatedColumn: 0}; } /** * Iterate through internal items. This method takes the same arguments that * `Array.prototype.forEach` takes. * * NOTE: The order of the mappings is NOT guaranteed. */ MappingList.prototype.unsortedForEach = function MappingList_forEach(aCallback, aThisArg) { this._array.forEach(aCallback, aThisArg); }; /** * Add the given source mapping. * * @param Object aMapping */ MappingList.prototype.add = function MappingList_add(aMapping) { if (generatedPositionAfter(this._last, aMapping)) { this._last = aMapping; this._array.push(aMapping); } else { this._sorted = false; this._array.push(aMapping); } }; /** * Returns the flat, sorted array of mappings. The mappings are sorted by * generated position. * * WARNING: This method returns internal data without copying, for * performance. The return value must NOT be mutated, and should be treated as * an immutable borrow. If you want to take ownership, you must make your own * copy. */ MappingList.prototype.toArray = function MappingList_toArray() { if (!this._sorted) { this._array.sort(util.compareByGeneratedPositionsInflated); this._sorted = true; } return this._array; }; exports.MappingList = MappingList; /***/ }), /* 24 */ /***/ (function(module, exports, __webpack_require__) { /* -*- Mode: js; js-indent-level: 2; -*- */ /* * Copyright 2011 Mozilla Foundation and contributors * Licensed under the New BSD license. See LICENSE or: * http://opensource.org/licenses/BSD-3-Clause */ var util = __webpack_require__(0); var binarySearch = __webpack_require__(25); var ArraySet = __webpack_require__(7).ArraySet; var base64VLQ = __webpack_require__(6); var quickSort = __webpack_require__(26).quickSort; function SourceMapConsumer(aSourceMap) { var sourceMap = aSourceMap; if (typeof aSourceMap === 'string') { sourceMap = JSON.parse(aSourceMap.replace(/^\)\]\}'/, '')); } return sourceMap.sections != null ? new IndexedSourceMapConsumer(sourceMap) : new BasicSourceMapConsumer(sourceMap); } SourceMapConsumer.fromSourceMap = function(aSourceMap) { return BasicSourceMapConsumer.fromSourceMap(aSourceMap); } /** * The version of the source mapping spec that we are consuming. */ SourceMapConsumer.prototype._version = 3; // `__generatedMappings` and `__originalMappings` are arrays that hold the // parsed mapping coordinates from the source map's "mappings" attribute. They // are lazily instantiated, accessed via the `_generatedMappings` and // `_originalMappings` getters respectively, and we only parse the mappings // and create these arrays once queried for a source location. We jump through // these hoops because there can be many thousands of mappings, and parsing // them is expensive, so we only want to do it if we must. // // Each object in the arrays is of the form: // // { // generatedLine: The line number in the generated code, // generatedColumn: The column number in the generated code, // source: The path to the original source file that generated this // chunk of code, // originalLine: The line number in the original source that // corresponds to this chunk of generated code, // originalColumn: The column number in the original source that // corresponds to this chunk of generated code, // name: The name of the original symbol which generated this chunk of // code. // } // // All properties except for `generatedLine` and `generatedColumn` can be // `null`. // // `_generatedMappings` is ordered by the generated positions. // // `_originalMappings` is ordered by the original positions. SourceMapConsumer.prototype.__generatedMappings = null; Object.defineProperty(SourceMapConsumer.prototype, '_generatedMappings', { get: function () { if (!this.__generatedMappings) { this._parseMappings(this._mappings, this.sourceRoot); } return this.__generatedMappings; } }); SourceMapConsumer.prototype.__originalMappings = null; Object.defineProperty(SourceMapConsumer.prototype, '_originalMappings', { get: function () { if (!this.__originalMappings) { this._parseMappings(this._mappings, this.sourceRoot); } return this.__originalMappings; } }); SourceMapConsumer.prototype._charIsMappingSeparator = function SourceMapConsumer_charIsMappingSeparator(aStr, index) { var c = aStr.charAt(index); return c === ";" || c === ","; }; /** * Parse the mappings in a string in to a data structure which we can easily * query (the ordered arrays in the `this.__generatedMappings` and * `this.__originalMappings` properties). */ SourceMapConsumer.prototype._parseMappings = function SourceMapConsumer_parseMappings(aStr, aSourceRoot) { throw new Error("Subclasses must implement _parseMappings"); }; SourceMapConsumer.GENERATED_ORDER = 1; SourceMapConsumer.ORIGINAL_ORDER = 2; SourceMapConsumer.GREATEST_LOWER_BOUND = 1; SourceMapConsumer.LEAST_UPPER_BOUND = 2; /** * Iterate over each mapping between an original source/line/column and a * generated line/column in this source map. * * @param Function aCallback * The function that is called with each mapping. * @param Object aContext * Optional. If specified, this object will be the value of `this` every * time that `aCallback` is called. * @param aOrder * Either `SourceMapConsumer.GENERATED_ORDER` or * `SourceMapConsumer.ORIGINAL_ORDER`. Specifies whether you want to * iterate over the mappings sorted by the generated file's line/column * order or the original's source/line/column order, respectively. Defaults to * `SourceMapConsumer.GENERATED_ORDER`. */ SourceMapConsumer.prototype.eachMapping = function SourceMapConsumer_eachMapping(aCallback, aContext, aOrder) { var context = aContext || null; var order = aOrder || SourceMapConsumer.GENERATED_ORDER; var mappings; switch (order) { case SourceMapConsumer.GENERATED_ORDER: mappings = this._generatedMappings; break; case SourceMapConsumer.ORIGINAL_ORDER: mappings = this._originalMappings; break; default: throw new Error("Unknown order of iteration."); } var sourceRoot = this.sourceRoot; mappings.map(function (mapping) { var source = mapping.source === null ? null : this._sources.at(mapping.source); if (source != null && sourceRoot != null) { source = util.join(sourceRoot, source); } return { source: source, generatedLine: mapping.generatedLine, generatedColumn: mapping.generatedColumn, originalLine: mapping.originalLine, originalColumn: mapping.originalColumn, name: mapping.name === null ? null : this._names.at(mapping.name) }; }, this).forEach(aCallback, context); }; /** * Returns all generated line and column information for the original source, * line, and column provided. If no column is provided, returns all mappings * corresponding to a either the line we are searching for or the next * closest line that has any mappings. Otherwise, returns all mappings * corresponding to the given line and either the column we are searching for * or the next closest column that has any offsets. * * The only argument is an object with the following properties: * * - source: The filename of the original source. * - line: The line number in the original source. * - column: Optional. the column number in the original source. * * and an array of objects is returned, each with the following properties: * * - line: The line number in the generated source, or null. * - column: The column number in the generated source, or null. */ SourceMapConsumer.prototype.allGeneratedPositionsFor = function SourceMapConsumer_allGeneratedPositionsFor(aArgs) { var line = util.getArg(aArgs, 'line'); // When there is no exact match, BasicSourceMapConsumer.prototype._findMapping // returns the index of the closest mapping less than the needle. By // setting needle.originalColumn to 0, we thus find the last mapping for // the given line, provided such a mapping exists. var needle = { source: util.getArg(aArgs, 'source'), originalLine: line, originalColumn: util.getArg(aArgs, 'column', 0) }; if (this.sourceRoot != null) { needle.source = util.relative(this.sourceRoot, needle.source); } if (!this._sources.has(needle.source)) { return []; } needle.source = this._sources.indexOf(needle.source); var mappings = []; var index = this._findMapping(needle, this._originalMappings, "originalLine", "originalColumn", util.compareByOriginalPositions, binarySearch.LEAST_UPPER_BOUND); if (index >= 0) { var mapping = this._originalMappings[index]; if (aArgs.column === undefined) { var originalLine = mapping.originalLine; // Iterate until either we run out of mappings, or we run into // a mapping for a different line than the one we found. Since // mappings are sorted, this is guaranteed to find all mappings for // the line we found. while (mapping && mapping.originalLine === originalLine) { mappings.push({ line: util.getArg(mapping, 'generatedLine', null), column: util.getArg(mapping, 'generatedColumn', null), lastColumn: util.getArg(mapping, 'lastGeneratedColumn', null) }); mapping = this._originalMappings[++index]; } } else { var originalColumn = mapping.originalColumn; // Iterate until either we run out of mappings, or we run into // a mapping for a different line than the one we were searching for. // Since mappings are sorted, this is guaranteed to find all mappings for // the line we are searching for. while (mapping && mapping.originalLine === line && mapping.originalColumn == originalColumn) { mappings.push({ line: util.getArg(mapping, 'generatedLine', null), column: util.getArg(mapping, 'generatedColumn', null), lastColumn: util.getArg(mapping, 'lastGeneratedColumn', null) }); mapping = this._originalMappings[++index]; } } } return mappings; }; exports.SourceMapConsumer = SourceMapConsumer; /** * A BasicSourceMapConsumer instance represents a parsed source map which we can * query for information about the original file positions by giving it a file * position in the generated source. * * The only parameter is the raw source map (either as a JSON string, or * already parsed to an object). According to the spec, source maps have the * following attributes: * * - version: Which version of the source map spec this map is following. * - sources: An array of URLs to the original source files. * - names: An array of identifiers which can be referrenced by individual mappings. * - sourceRoot: Optional. The URL root from which all sources are relative. * - sourcesContent: Optional. An array of contents of the original source files. * - mappings: A string of base64 VLQs which contain the actual mappings. * - file: Optional. The generated file this source map is associated with. * * Here is an example source map, taken from the source map spec[0]: * * { * version : 3, * file: "out.js", * sourceRoot : "", * sources: ["foo.js", "bar.js"], * names: ["src", "maps", "are", "fun"], * mappings: "AA,AB;;ABCDE;" * } * * [0]: https://docs.google.com/document/d/1U1RGAehQwRypUTovF1KRlpiOFze0b-_2gc6fAH0KY0k/edit?pli=1# */ function BasicSourceMapConsumer(aSourceMap) { var sourceMap = aSourceMap; if (typeof aSourceMap === 'string') { sourceMap = JSON.parse(aSourceMap.replace(/^\)\]\}'/, '')); } var version = util.getArg(sourceMap, 'version'); var sources = util.getArg(sourceMap, 'sources'); // Sass 3.3 leaves out the 'names' array, so we deviate from the spec (which // requires the array) to play nice here. var names = util.getArg(sourceMap, 'names', []); var sourceRoot = util.getArg(sourceMap, 'sourceRoot', null); var sourcesContent = util.getArg(sourceMap, 'sourcesContent', null); var mappings = util.getArg(sourceMap, 'mappings'); var file = util.getArg(sourceMap, 'file', null); // Once again, Sass deviates from the spec and supplies the version as a // string rather than a number, so we use loose equality checking here. if (version != this._version) { throw new Error('Unsupported version: ' + version); } sources = sources .map(String) // Some source maps produce relative source paths like "./foo.js" instead of // "foo.js". Normalize these first so that future comparisons will succeed. // See bugzil.la/1090768. .map(util.normalize) // Always ensure that absolute sources are internally stored relative to // the source root, if the source root is absolute. Not doing this would // be particularly problematic when the source root is a prefix of the // source (valid, but why??). See github issue #199 and bugzil.la/1188982. .map(function (source) { return sourceRoot && util.isAbsolute(sourceRoot) && util.isAbsolute(source) ? util.relative(sourceRoot, source) : source; }); // Pass `true` below to allow duplicate names and sources. While source maps // are intended to be compressed and deduplicated, the TypeScript compiler // sometimes generates source maps with duplicates in them. See Github issue // #72 and bugzil.la/889492. this._names = ArraySet.fromArray(names.map(String), true); this._sources = ArraySet.fromArray(sources, true); this.sourceRoot = sourceRoot; this.sourcesContent = sourcesContent; this._mappings = mappings; this.file = file; } BasicSourceMapConsumer.prototype = Object.create(SourceMapConsumer.prototype); BasicSourceMapConsumer.prototype.consumer = SourceMapConsumer; /** * Create a BasicSourceMapConsumer from a SourceMapGenerator. * * @param SourceMapGenerator aSourceMap * The source map that will be consumed. * @returns BasicSourceMapConsumer */ BasicSourceMapConsumer.fromSourceMap = function SourceMapConsumer_fromSourceMap(aSourceMap) { var smc = Object.create(BasicSourceMapConsumer.prototype); var names = smc._names = ArraySet.fromArray(aSourceMap._names.toArray(), true); var sources = smc._sources = ArraySet.fromArray(aSourceMap._sources.toArray(), true); smc.sourceRoot = aSourceMap._sourceRoot; smc.sourcesContent = aSourceMap._generateSourcesContent(smc._sources.toArray(), smc.sourceRoot); smc.file = aSourceMap._file; // Because we are modifying the entries (by converting string sources and // names to indices into the sources and names ArraySets), we have to make // a copy of the entry or else bad things happen. Shared mutable state // strikes again! See github issue #191. var generatedMappings = aSourceMap._mappings.toArray().slice(); var destGeneratedMappings = smc.__generatedMappings = []; var destOriginalMappings = smc.__originalMappings = []; for (var i = 0, length = generatedMappings.length; i < length; i++) { var srcMapping = generatedMappings[i]; var destMapping = new Mapping; destMapping.generatedLine = srcMapping.generatedLine; destMapping.generatedColumn = srcMapping.generatedColumn; if (srcMapping.source) { destMapping.source = sources.indexOf(srcMapping.source); destMapping.originalLine = srcMapping.originalLine; destMapping.originalColumn = srcMapping.originalColumn; if (srcMapping.name) { destMapping.name = names.indexOf(srcMapping.name); } destOriginalMappings.push(destMapping); } destGeneratedMappings.push(destMapping); } quickSort(smc.__originalMappings, util.compareByOriginalPositions); return smc; }; /** * The version of the source mapping spec that we are consuming. */ BasicSourceMapConsumer.prototype._version = 3; /** * The list of original sources. */ Object.defineProperty(BasicSourceMapConsumer.prototype, 'sources', { get: function () { return this._sources.toArray().map(function (s) { return this.sourceRoot != null ? util.join(this.sourceRoot, s) : s; }, this); } }); /** * Provide the JIT with a nice shape / hidden class. */ function Mapping() { this.generatedLine = 0; this.generatedColumn = 0; this.source = null; this.originalLine = null; this.originalColumn = null; this.name = null; } /** * Parse the mappings in a string in to a data structure which we can easily * query (the ordered arrays in the `this.__generatedMappings` and * `this.__originalMappings` properties). */ BasicSourceMapConsumer.prototype._parseMappings = function SourceMapConsumer_parseMappings(aStr, aSourceRoot) { var generatedLine = 1; var previousGeneratedColumn = 0; var previousOriginalLine = 0; var previousOriginalColumn = 0; var previousSource = 0; var previousName = 0; var length = aStr.length; var index = 0; var cachedSegments = {}; var temp = {}; var originalMappings = []; var generatedMappings = []; var mapping, str, segment, end, value; while (index < length) { if (aStr.charAt(index) === ';') { generatedLine++; index++; previousGeneratedColumn = 0; } else if (aStr.charAt(index) === ',') { index++; } else { mapping = new Mapping(); mapping.generatedLine = generatedLine; // Because each offset is encoded relative to the previous one, // many segments often have the same encoding. We can exploit this // fact by caching the parsed variable length fields of each segment, // allowing us to avoid a second parse if we encounter the same // segment again. for (end = index; end < length; end++) { if (this._charIsMappingSeparator(aStr, end)) { break; } } str = aStr.slice(index, end); segment = cachedSegments[str]; if (segment) { index += str.length; } else { segment = []; while (index < end) { base64VLQ.decode(aStr, index, temp); value = temp.value; index = temp.rest; segment.push(value); } if (segment.length === 2) { throw new Error('Found a source, but no line and column'); } if (segment.length === 3) { throw new Error('Found a source and line, but no column'); } cachedSegments[str] = segment; } // Generated column. mapping.generatedColumn = previousGeneratedColumn + segment[0]; previousGeneratedColumn = mapping.generatedColumn; if (segment.length > 1) { // Original source. mapping.source = previousSource + segment[1]; previousSource += segment[1]; // Original line. mapping.originalLine = previousOriginalLine + segment[2]; previousOriginalLine = mapping.originalLine; // Lines are stored 0-based mapping.originalLine += 1; // Original column. mapping.originalColumn = previousOriginalColumn + segment[3]; previousOriginalColumn = mapping.originalColumn; if (segment.length > 4) { // Original name. mapping.name = previousName + segment[4]; previousName += segment[4]; } } generatedMappings.push(mapping); if (typeof mapping.originalLine === 'number') { originalMappings.push(mapping); } } } quickSort(generatedMappings, util.compareByGeneratedPositionsDeflated); this.__generatedMappings = generatedMappings; quickSort(originalMappings, util.compareByOriginalPositions); this.__originalMappings = originalMappings; }; /** * Find the mapping that best matches the hypothetical "needle" mapping that * we are searching for in the given "haystack" of mappings. */ BasicSourceMapConsumer.prototype._findMapping = function SourceMapConsumer_findMapping(aNeedle, aMappings, aLineName, aColumnName, aComparator, aBias) { // To return the position we are searching for, we must first find the // mapping for the given position and then return the opposite position it // points to. Because the mappings are sorted, we can use binary search to // find the best mapping. if (aNeedle[aLineName] <= 0) { throw new TypeError('Line must be greater than or equal to 1, got ' + aNeedle[aLineName]); } if (aNeedle[aColumnName] < 0) { throw new TypeError('Column must be greater than or equal to 0, got ' + aNeedle[aColumnName]); } return binarySearch.search(aNeedle, aMappings, aComparator, aBias); }; /** * Compute the last column for each generated mapping. The last column is * inclusive. */ BasicSourceMapConsumer.prototype.computeColumnSpans = function SourceMapConsumer_computeColumnSpans() { for (var index = 0; index < this._generatedMappings.length; ++index) { var mapping = this._generatedMappings[index]; // Mappings do not contain a field for the last generated columnt. We // can come up with an optimistic estimate, however, by assuming that // mappings are contiguous (i.e. given two consecutive mappings, the // first mapping ends where the second one starts). if (index + 1 < this._generatedMappings.length) { var nextMapping = this._generatedMappings[index + 1]; if (mapping.generatedLine === nextMapping.generatedLine) { mapping.lastGeneratedColumn = nextMapping.generatedColumn - 1; continue; } } // The last mapping for each line spans the entire line. mapping.lastGeneratedColumn = Infinity; } }; /** * Returns the original source, line, and column information for the generated * source's line and column positions provided. The only argument is an object * with the following properties: * * - line: The line number in the generated source. * - column: The column number in the generated source. * - bias: Either 'SourceMapConsumer.GREATEST_LOWER_BOUND' or * 'SourceMapConsumer.LEAST_UPPER_BOUND'. Specifies whether to return the * closest element that is smaller than or greater than the one we are * searching for, respectively, if the exact element cannot be found. * Defaults to 'SourceMapConsumer.GREATEST_LOWER_BOUND'. * * and an object is returned with the following properties: * * - source: The original source file, or null. * - line: The line number in the original source, or null. * - column: The column number in the original source, or null. * - name: The original identifier, or null. */ BasicSourceMapConsumer.prototype.originalPositionFor = function SourceMapConsumer_originalPositionFor(aArgs) { var needle = { generatedLine: util.getArg(aArgs, 'line'), generatedColumn: util.getArg(aArgs, 'column') }; var index = this._findMapping( needle, this._generatedMappings, "generatedLine", "generatedColumn", util.compareByGeneratedPositionsDeflated, util.getArg(aArgs, 'bias', SourceMapConsumer.GREATEST_LOWER_BOUND) ); if (index >= 0) { var mapping = this._generatedMappings[index]; if (mapping.generatedLine === needle.generatedLine) { var source = util.getArg(mapping, 'source', null); if (source !== null) { source = this._sources.at(source); if (this.sourceRoot != null) { source = util.join(this.sourceRoot, source); } } var name = util.getArg(mapping, 'name', null); if (name !== null) { name = this._names.at(name); } return { source: source, line: util.getArg(mapping, 'originalLine', null), column: util.getArg(mapping, 'originalColumn', null), name: name }; } } return { source: null, line: null, column: null, name: null }; }; /** * Return true if we have the source content for every source in the source * map, false otherwise. */ BasicSourceMapConsumer.prototype.hasContentsOfAllSources = function BasicSourceMapConsumer_hasContentsOfAllSources() { if (!this.sourcesContent) { return false; } return this.sourcesContent.length >= this._sources.size() && !this.sourcesContent.some(function (sc) { return sc == null; }); }; /** * Returns the original source content. The only argument is the url of the * original source file. Returns null if no original source content is * available. */ BasicSourceMapConsumer.prototype.sourceContentFor = function SourceMapConsumer_sourceContentFor(aSource, nullOnMissing) { if (!this.sourcesContent) { return null; } if (this.sourceRoot != null) { aSource = util.relative(this.sourceRoot, aSource); } if (this._sources.has(aSource)) { return this.sourcesContent[this._sources.indexOf(aSource)]; } var url; if (this.sourceRoot != null && (url = util.urlParse(this.sourceRoot))) { // XXX: file:// URIs and absolute paths lead to unexpected behavior for // many users. We can help them out when they expect file:// URIs to // behave like it would if they were running a local HTTP server. See // https://bugzilla.mozilla.org/show_bug.cgi?id=885597. var fileUriAbsPath = aSource.replace(/^file:\/\//, ""); if (url.scheme == "file" && this._sources.has(fileUriAbsPath)) { return this.sourcesContent[this._sources.indexOf(fileUriAbsPath)] } if ((!url.path || url.path == "/") && this._sources.has("/" + aSource)) { return this.sourcesContent[this._sources.indexOf("/" + aSource)]; } } // This function is used recursively from // IndexedSourceMapConsumer.prototype.sourceContentFor. In that case, we // don't want to throw if we can't find the source - we just want to // return null, so we provide a flag to exit gracefully. if (nullOnMissing) { return null; } else { throw new Error('"' + aSource + '" is not in the SourceMap.'); } }; /** * Returns the generated line and column information for the original source, * line, and column positions provided. The only argument is an object with * the following properties: * * - source: The filename of the original source. * - line: The line number in the original source. * - column: The column number in the original source. * - bias: Either 'SourceMapConsumer.GREATEST_LOWER_BOUND' or * 'SourceMapConsumer.LEAST_UPPER_BOUND'. Specifies whether to return the * closest element that is smaller than or greater than the one we are * searching for, respectively, if the exact element cannot be found. * Defaults to 'SourceMapConsumer.GREATEST_LOWER_BOUND'. * * and an object is returned with the following properties: * * - line: The line number in the generated source, or null. * - column: The column number in the generated source, or null. */ BasicSourceMapConsumer.prototype.generatedPositionFor = function SourceMapConsumer_generatedPositionFor(aArgs) { var source = util.getArg(aArgs, 'source'); if (this.sourceRoot != null) { source = util.relative(this.sourceRoot, source); } if (!this._sources.has(source)) { return { line: null, column: null, lastColumn: null }; } source = this._sources.indexOf(source); var needle = { source: source, originalLine: util.getArg(aArgs, 'line'), originalColumn: util.getArg(aArgs, 'column') }; var index = this._findMapping( needle, this._originalMappings, "originalLine", "originalColumn", util.compareByOriginalPositions, util.getArg(aArgs, 'bias', SourceMapConsumer.GREATEST_LOWER_BOUND) ); if (index >= 0) { var mapping = this._originalMappings[index]; if (mapping.source === needle.source) { return { line: util.getArg(mapping, 'generatedLine', null), column: util.getArg(mapping, 'generatedColumn', null), lastColumn: util.getArg(mapping, 'lastGeneratedColumn', null) }; } } return { line: null, column: null, lastColumn: null }; }; exports.BasicSourceMapConsumer = BasicSourceMapConsumer; /** * An IndexedSourceMapConsumer instance represents a parsed source map which * we can query for information. It differs from BasicSourceMapConsumer in * that it takes "indexed" source maps (i.e. ones with a "sections" field) as * input. * * The only parameter is a raw source map (either as a JSON string, or already * parsed to an object). According to the spec for indexed source maps, they * have the following attributes: * * - version: Which version of the source map spec this map is following. * - file: Optional. The generated file this source map is associated with. * - sections: A list of section definitions. * * Each value under the "sections" field has two fields: * - offset: The offset into the original specified at which this section * begins to apply, defined as an object with a "line" and "column" * field. * - map: A source map definition. This source map could also be indexed, * but doesn't have to be. * * Instead of the "map" field, it's also possible to have a "url" field * specifying a URL to retrieve a source map from, but that's currently * unsupported. * * Here's an example source map, taken from the source map spec[0], but * modified to omit a section which uses the "url" field. * * { * version : 3, * file: "app.js", * sections: [{ * offset: {line:100, column:10}, * map: { * version : 3, * file: "section.js", * sources: ["foo.js", "bar.js"], * names: ["src", "maps", "are", "fun"], * mappings: "AAAA,E;;ABCDE;" * } * }], * } * * [0]: https://docs.google.com/document/d/1U1RGAehQwRypUTovF1KRlpiOFze0b-_2gc6fAH0KY0k/edit#heading=h.535es3xeprgt */ function IndexedSourceMapConsumer(aSourceMap) { var sourceMap = aSourceMap; if (typeof aSourceMap === 'string') { sourceMap = JSON.parse(aSourceMap.replace(/^\)\]\}'/, '')); } var version = util.getArg(sourceMap, 'version'); var sections = util.getArg(sourceMap, 'sections'); if (version != this._version) { throw new Error('Unsupported version: ' + version); } this._sources = new ArraySet(); this._names = new ArraySet(); var lastOffset = { line: -1, column: 0 }; this._sections = sections.map(function (s) { if (s.url) { // The url field will require support for asynchronicity. // See https://github.com/mozilla/source-map/issues/16 throw new Error('Support for url field in sections not implemented.'); } var offset = util.getArg(s, 'offset'); var offsetLine = util.getArg(offset, 'line'); var offsetColumn = util.getArg(offset, 'column'); if (offsetLine < lastOffset.line || (offsetLine === lastOffset.line && offsetColumn < lastOffset.column)) { throw new Error('Section offsets must be ordered and non-overlapping.'); } lastOffset = offset; return { generatedOffset: { // The offset fields are 0-based, but we use 1-based indices when // encoding/decoding from VLQ. generatedLine: offsetLine + 1, generatedColumn: offsetColumn + 1 }, consumer: new SourceMapConsumer(util.getArg(s, 'map')) } }); } IndexedSourceMapConsumer.prototype = Object.create(SourceMapConsumer.prototype); IndexedSourceMapConsumer.prototype.constructor = SourceMapConsumer; /** * The version of the source mapping spec that we are consuming. */ IndexedSourceMapConsumer.prototype._version = 3; /** * The list of original sources. */ Object.defineProperty(IndexedSourceMapConsumer.prototype, 'sources', { get: function () { var sources = []; for (var i = 0; i < this._sections.length; i++) { for (var j = 0; j < this._sections[i].consumer.sources.length; j++) { sources.push(this._sections[i].consumer.sources[j]); } } return sources; } }); /** * Returns the original source, line, and column information for the generated * source's line and column positions provided. The only argument is an object * with the following properties: * * - line: The line number in the generated source. * - column: The column number in the generated source. * * and an object is returned with the following properties: * * - source: The original source file, or null. * - line: The line number in the original source, or null. * - column: The column number in the original source, or null. * - name: The original identifier, or null. */ IndexedSourceMapConsumer.prototype.originalPositionFor = function IndexedSourceMapConsumer_originalPositionFor(aArgs) { var needle = { generatedLine: util.getArg(aArgs, 'line'), generatedColumn: util.getArg(aArgs, 'column') }; // Find the section containing the generated position we're trying to map // to an original position. var sectionIndex = binarySearch.search(needle, this._sections, function(needle, section) { var cmp = needle.generatedLine - section.generatedOffset.generatedLine; if (cmp) { return cmp; } return (needle.generatedColumn - section.generatedOffset.generatedColumn); }); var section = this._sections[sectionIndex]; if (!section) { return { source: null, line: null, column: null, name: null }; } return section.consumer.originalPositionFor({ line: needle.generatedLine - (section.generatedOffset.generatedLine - 1), column: needle.generatedColumn - (section.generatedOffset.generatedLine === needle.generatedLine ? section.generatedOffset.generatedColumn - 1 : 0), bias: aArgs.bias }); }; /** * Return true if we have the source content for every source in the source * map, false otherwise. */ IndexedSourceMapConsumer.prototype.hasContentsOfAllSources = function IndexedSourceMapConsumer_hasContentsOfAllSources() { return this._sections.every(function (s) { return s.consumer.hasContentsOfAllSources(); }); }; /** * Returns the original source content. The only argument is the url of the * original source file. Returns null if no original source content is * available. */ IndexedSourceMapConsumer.prototype.sourceContentFor = function IndexedSourceMapConsumer_sourceContentFor(aSource, nullOnMissing) { for (var i = 0; i < this._sections.length; i++) { var section = this._sections[i]; var content = section.consumer.sourceContentFor(aSource, true); if (content) { return content; } } if (nullOnMissing) { return null; } else { throw new Error('"' + aSource + '" is not in the SourceMap.'); } }; /** * Returns the generated line and column information for the original source, * line, and column positions provided. The only argument is an object with * the following properties: * * - source: The filename of the original source. * - line: The line number in the original source. * - column: The column number in the original source. * * and an object is returned with the following properties: * * - line: The line number in the generated source, or null. * - column: The column number in the generated source, or null. */ IndexedSourceMapConsumer.prototype.generatedPositionFor = function IndexedSourceMapConsumer_generatedPositionFor(aArgs) { for (var i = 0; i < this._sections.length; i++) { var section = this._sections[i]; // Only consider this section if the requested source is in the list of // sources of the consumer. if (section.consumer.sources.indexOf(util.getArg(aArgs, 'source')) === -1) { continue; } var generatedPosition = section.consumer.generatedPositionFor(aArgs); if (generatedPosition) { var ret = { line: generatedPosition.line + (section.generatedOffset.generatedLine - 1), column: generatedPosition.column + (section.generatedOffset.generatedLine === generatedPosition.line ? section.generatedOffset.generatedColumn - 1 : 0) }; return ret; } } return { line: null, column: null }; }; /** * Parse the mappings in a string in to a data structure which we can easily * query (the ordered arrays in the `this.__generatedMappings` and * `this.__originalMappings` properties). */ IndexedSourceMapConsumer.prototype._parseMappings = function IndexedSourceMapConsumer_parseMappings(aStr, aSourceRoot) { this.__generatedMappings = []; this.__originalMappings = []; for (var i = 0; i < this._sections.length; i++) { var section = this._sections[i]; var sectionMappings = section.consumer._generatedMappings; for (var j = 0; j < sectionMappings.length; j++) { var mapping = sectionMappings[j]; var source = section.consumer._sources.at(mapping.source); if (section.consumer.sourceRoot !== null) { source = util.join(section.consumer.sourceRoot, source); } this._sources.add(source); source = this._sources.indexOf(source); var name = section.consumer._names.at(mapping.name); this._names.add(name); name = this._names.indexOf(name); // The mappings coming from the consumer for the section have // generated positions relative to the start of the section, so we // need to offset them to be relative to the start of the concatenated // generated file. var adjustedMapping = { source: source, generatedLine: mapping.generatedLine + (section.generatedOffset.generatedLine - 1), generatedColumn: mapping.generatedColumn + (section.generatedOffset.generatedLine === mapping.generatedLine ? section.generatedOffset.generatedColumn - 1 : 0), originalLine: mapping.originalLine, originalColumn: mapping.originalColumn, name: name }; this.__generatedMappings.push(adjustedMapping); if (typeof adjustedMapping.originalLine === 'number') { this.__originalMappings.push(adjustedMapping); } } } quickSort(this.__generatedMappings, util.compareByGeneratedPositionsDeflated); quickSort(this.__originalMappings, util.compareByOriginalPositions); }; exports.IndexedSourceMapConsumer = IndexedSourceMapConsumer; /***/ }), /* 25 */ /***/ (function(module, exports) { /* -*- Mode: js; js-indent-level: 2; -*- */ /* * Copyright 2011 Mozilla Foundation and contributors * Licensed under the New BSD license. See LICENSE or: * http://opensource.org/licenses/BSD-3-Clause */ exports.GREATEST_LOWER_BOUND = 1; exports.LEAST_UPPER_BOUND = 2; /** * Recursive implementation of binary search. * * @param aLow Indices here and lower do not contain the needle. * @param aHigh Indices here and higher do not contain the needle. * @param aNeedle The element being searched for. * @param aHaystack The non-empty array being searched. * @param aCompare Function which takes two elements and returns -1, 0, or 1. * @param aBias Either 'binarySearch.GREATEST_LOWER_BOUND' or * 'binarySearch.LEAST_UPPER_BOUND'. Specifies whether to return the * closest element that is smaller than or greater than the one we are * searching for, respectively, if the exact element cannot be found. */ function recursiveSearch(aLow, aHigh, aNeedle, aHaystack, aCompare, aBias) { // This function terminates when one of the following is true: // // 1. We find the exact element we are looking for. // // 2. We did not find the exact element, but we can return the index of // the next-closest element. // // 3. We did not find the exact element, and there is no next-closest // element than the one we are searching for, so we return -1. var mid = Math.floor((aHigh - aLow) / 2) + aLow; var cmp = aCompare(aNeedle, aHaystack[mid], true); if (cmp === 0) { // Found the element we are looking for. return mid; } else if (cmp > 0) { // Our needle is greater than aHaystack[mid]. if (aHigh - mid > 1) { // The element is in the upper half. return recursiveSearch(mid, aHigh, aNeedle, aHaystack, aCompare, aBias); } // The exact needle element was not found in this haystack. Determine if // we are in termination case (3) or (2) and return the appropriate thing. if (aBias == exports.LEAST_UPPER_BOUND) { return aHigh < aHaystack.length ? aHigh : -1; } else { return mid; } } else { // Our needle is less than aHaystack[mid]. if (mid - aLow > 1) { // The element is in the lower half. return recursiveSearch(aLow, mid, aNeedle, aHaystack, aCompare, aBias); } // we are in termination case (3) or (2) and return the appropriate thing. if (aBias == exports.LEAST_UPPER_BOUND) { return mid; } else { return aLow < 0 ? -1 : aLow; } } } /** * This is an implementation of binary search which will always try and return * the index of the closest element if there is no exact hit. This is because * mappings between original and generated line/col pairs are single points, * and there is an implicit region between each of them, so a miss just means * that you aren't on the very start of a region. * * @param aNeedle The element you are looking for. * @param aHaystack The array that is being searched. * @param aCompare A function which takes the needle and an element in the * array and returns -1, 0, or 1 depending on whether the needle is less * than, equal to, or greater than the element, respectively. * @param aBias Either 'binarySearch.GREATEST_LOWER_BOUND' or * 'binarySearch.LEAST_UPPER_BOUND'. Specifies whether to return the * closest element that is smaller than or greater than the one we are * searching for, respectively, if the exact element cannot be found. * Defaults to 'binarySearch.GREATEST_LOWER_BOUND'. */ exports.search = function search(aNeedle, aHaystack, aCompare, aBias) { if (aHaystack.length === 0) { return -1; } var index = recursiveSearch(-1, aHaystack.length, aNeedle, aHaystack, aCompare, aBias || exports.GREATEST_LOWER_BOUND); if (index < 0) { return -1; } // We have found either the exact element, or the next-closest element than // the one we are searching for. However, there may be more than one such // element. Make sure we always return the smallest of these. while (index - 1 >= 0) { if (aCompare(aHaystack[index], aHaystack[index - 1], true) !== 0) { break; } --index; } return index; }; /***/ }), /* 26 */ /***/ (function(module, exports) { /* -*- Mode: js; js-indent-level: 2; -*- */ /* * Copyright 2011 Mozilla Foundation and contributors * Licensed under the New BSD license. See LICENSE or: * http://opensource.org/licenses/BSD-3-Clause */ // It turns out that some (most?) JavaScript engines don't self-host // `Array.prototype.sort`. This makes sense because C++ will likely remain // faster than JS when doing raw CPU-intensive sorting. However, when using a // custom comparator function, calling back and forth between the VM's C++ and // JIT'd JS is rather slow *and* loses JIT type information, resulting in // worse generated code for the comparator function than would be optimal. In // fact, when sorting with a comparator, these costs outweigh the benefits of // sorting in C++. By using our own JS-implemented Quick Sort (below), we get // a ~3500ms mean speed-up in `bench/bench.html`. /** * Swap the elements indexed by `x` and `y` in the array `ary`. * * @param {Array} ary * The array. * @param {Number} x * The index of the first item. * @param {Number} y * The index of the second item. */ function swap(ary, x, y) { var temp = ary[x]; ary[x] = ary[y]; ary[y] = temp; } /** * Returns a random integer within the range `low .. high` inclusive. * * @param {Number} low * The lower bound on the range. * @param {Number} high * The upper bound on the range. */ function randomIntInRange(low, high) { return Math.round(low + (Math.random() * (high - low))); } /** * The Quick Sort algorithm. * * @param {Array} ary * An array to sort. * @param {function} comparator * Function to use to compare two items. * @param {Number} p * Start index of the array * @param {Number} r * End index of the array */ function doQuickSort(ary, comparator, p, r) { // If our lower bound is less than our upper bound, we (1) partition the // array into two pieces and (2) recurse on each half. If it is not, this is // the empty array and our base case. if (p < r) { // (1) Partitioning. // // The partitioning chooses a pivot between `p` and `r` and moves all // elements that are less than or equal to the pivot to the before it, and // all the elements that are greater than it after it. The effect is that // once partition is done, the pivot is in the exact place it will be when // the array is put in sorted order, and it will not need to be moved // again. This runs in O(n) time. // Always choose a random pivot so that an input array which is reverse // sorted does not cause O(n^2) running time. var pivotIndex = randomIntInRange(p, r); var i = p - 1; swap(ary, pivotIndex, r); var pivot = ary[r]; // Immediately after `j` is incremented in this loop, the following hold // true: // // * Every element in `ary[p .. i]` is less than or equal to the pivot. // // * Every element in `ary[i+1 .. j-1]` is greater than the pivot. for (var j = p; j < r; j++) { if (comparator(ary[j], pivot) <= 0) { i += 1; swap(ary, i, j); } } swap(ary, i + 1, j); var q = i + 1; // (2) Recurse on each half. doQuickSort(ary, comparator, p, q - 1); doQuickSort(ary, comparator, q + 1, r); } } /** * Sort the given array in-place with the given comparator function. * * @param {Array} ary * An array to sort. * @param {function} comparator * Function to use to compare two items. */ exports.quickSort = function (ary, comparator) { doQuickSort(ary, comparator, 0, ary.length - 1); }; /***/ }), /* 27 */ /***/ (function(module, exports, __webpack_require__) { /* -*- Mode: js; js-indent-level: 2; -*- */ /* * Copyright 2011 Mozilla Foundation and contributors * Licensed under the New BSD license. See LICENSE or: * http://opensource.org/licenses/BSD-3-Clause */ var SourceMapGenerator = __webpack_require__(5).SourceMapGenerator; var util = __webpack_require__(0); // Matches a Windows-style `\r\n` newline or a `\n` newline used by all other // operating systems these days (capturing the result). var REGEX_NEWLINE = /(\r?\n)/; // Newline character code for charCodeAt() comparisons var NEWLINE_CODE = 10; // Private symbol for identifying `SourceNode`s when multiple versions of // the source-map library are loaded. This MUST NOT CHANGE across // versions! var isSourceNode = "$$$isSourceNode$$$"; /** * SourceNodes provide a way to abstract over interpolating/concatenating * snippets of generated JavaScript source code while maintaining the line and * column information associated with the original source code. * * @param aLine The original line number. * @param aColumn The original column number. * @param aSource The original source's filename. * @param aChunks Optional. An array of strings which are snippets of * generated JS, or other SourceNodes. * @param aName The original identifier. */ function SourceNode(aLine, aColumn, aSource, aChunks, aName) { this.children = []; this.sourceContents = {}; this.line = aLine == null ? null : aLine; this.column = aColumn == null ? null : aColumn; this.source = aSource == null ? null : aSource; this.name = aName == null ? null : aName; this[isSourceNode] = true; if (aChunks != null) this.add(aChunks); } /** * Creates a SourceNode from generated code and a SourceMapConsumer. * * @param aGeneratedCode The generated code * @param aSourceMapConsumer The SourceMap for the generated code * @param aRelativePath Optional. The path that relative sources in the * SourceMapConsumer should be relative to. */ SourceNode.fromStringWithSourceMap = function SourceNode_fromStringWithSourceMap(aGeneratedCode, aSourceMapConsumer, aRelativePath) { // The SourceNode we want to fill with the generated code // and the SourceMap var node = new SourceNode(); // All even indices of this array are one line of the generated code, // while all odd indices are the newlines between two adjacent lines // (since `REGEX_NEWLINE` captures its match). // Processed fragments are removed from this array, by calling `shiftNextLine`. var remainingLines = aGeneratedCode.split(REGEX_NEWLINE); var shiftNextLine = function() { var lineContents = remainingLines.shift(); // The last line of a file might not have a newline. var newLine = remainingLines.shift() || ""; return lineContents + newLine; }; // We need to remember the position of "remainingLines" var lastGeneratedLine = 1, lastGeneratedColumn = 0; // The generate SourceNodes we need a code range. // To extract it current and last mapping is used. // Here we store the last mapping. var lastMapping = null; aSourceMapConsumer.eachMapping(function (mapping) { if (lastMapping !== null) { // We add the code from "lastMapping" to "mapping": // First check if there is a new line in between. if (lastGeneratedLine < mapping.generatedLine) { // Associate first line with "lastMapping" addMappingWithCode(lastMapping, shiftNextLine()); lastGeneratedLine++; lastGeneratedColumn = 0; // The remaining code is added without mapping } else { // There is no new line in between. // Associate the code between "lastGeneratedColumn" and // "mapping.generatedColumn" with "lastMapping" var nextLine = remainingLines[0]; var code = nextLine.substr(0, mapping.generatedColumn - lastGeneratedColumn); remainingLines[0] = nextLine.substr(mapping.generatedColumn - lastGeneratedColumn); lastGeneratedColumn = mapping.generatedColumn; addMappingWithCode(lastMapping, code); // No more remaining code, continue lastMapping = mapping; return; } } // We add the generated code until the first mapping // to the SourceNode without any mapping. // Each line is added as separate string. while (lastGeneratedLine < mapping.generatedLine) { node.add(shiftNextLine()); lastGeneratedLine++; } if (lastGeneratedColumn < mapping.generatedColumn) { var nextLine = remainingLines[0]; node.add(nextLine.substr(0, mapping.generatedColumn)); remainingLines[0] = nextLine.substr(mapping.generatedColumn); lastGeneratedColumn = mapping.generatedColumn; } lastMapping = mapping; }, this); // We have processed all mappings. if (remainingLines.length > 0) { if (lastMapping) { // Associate the remaining code in the current line with "lastMapping" addMappingWithCode(lastMapping, shiftNextLine()); } // and add the remaining lines without any mapping node.add(remainingLines.join("")); } // Copy sourcesContent into SourceNode aSourceMapConsumer.sources.forEach(function (sourceFile) { var content = aSourceMapConsumer.sourceContentFor(sourceFile); if (content != null) { if (aRelativePath != null) { sourceFile = util.join(aRelativePath, sourceFile); } node.setSourceContent(sourceFile, content); } }); return node; function addMappingWithCode(mapping, code) { if (mapping === null || mapping.source === undefined) { node.add(code); } else { var source = aRelativePath ? util.join(aRelativePath, mapping.source) : mapping.source; node.add(new SourceNode(mapping.originalLine, mapping.originalColumn, source, code, mapping.name)); } } }; /** * Add a chunk of generated JS to this source node. * * @param aChunk A string snippet of generated JS code, another instance of * SourceNode, or an array where each member is one of those things. */ SourceNode.prototype.add = function SourceNode_add(aChunk) { if (Array.isArray(aChunk)) { aChunk.forEach(function (chunk) { this.add(chunk); }, this); } else if (aChunk[isSourceNode] || typeof aChunk === "string") { if (aChunk) { this.children.push(aChunk); } } else { throw new TypeError( "Expected a SourceNode, string, or an array of SourceNodes and strings. Got " + aChunk ); } return this; }; /** * Add a chunk of generated JS to the beginning of this source node. * * @param aChunk A string snippet of generated JS code, another instance of * SourceNode, or an array where each member is one of those things. */ SourceNode.prototype.prepend = function SourceNode_prepend(aChunk) { if (Array.isArray(aChunk)) { for (var i = aChunk.length-1; i >= 0; i--) { this.prepend(aChunk[i]); } } else if (aChunk[isSourceNode] || typeof aChunk === "string") { this.children.unshift(aChunk); } else { throw new TypeError( "Expected a SourceNode, string, or an array of SourceNodes and strings. Got " + aChunk ); } return this; }; /** * Walk over the tree of JS snippets in this node and its children. The * walking function is called once for each snippet of JS and is passed that * snippet and the its original associated source's line/column location. * * @param aFn The traversal function. */ SourceNode.prototype.walk = function SourceNode_walk(aFn) { var chunk; for (var i = 0, len = this.children.length; i < len; i++) { chunk = this.children[i]; if (chunk[isSourceNode]) { chunk.walk(aFn); } else { if (chunk !== '') { aFn(chunk, { source: this.source, line: this.line, column: this.column, name: this.name }); } } } }; /** * Like `String.prototype.join` except for SourceNodes. Inserts `aStr` between * each of `this.children`. * * @param aSep The separator. */ SourceNode.prototype.join = function SourceNode_join(aSep) { var newChildren; var i; var len = this.children.length; if (len > 0) { newChildren = []; for (i = 0; i < len-1; i++) { newChildren.push(this.children[i]); newChildren.push(aSep); } newChildren.push(this.children[i]); this.children = newChildren; } return this; }; /** * Call String.prototype.replace on the very right-most source snippet. Useful * for trimming whitespace from the end of a source node, etc. * * @param aPattern The pattern to replace. * @param aReplacement The thing to replace the pattern with. */ SourceNode.prototype.replaceRight = function SourceNode_replaceRight(aPattern, aReplacement) { var lastChild = this.children[this.children.length - 1]; if (lastChild[isSourceNode]) { lastChild.replaceRight(aPattern, aReplacement); } else if (typeof lastChild === 'string') { this.children[this.children.length - 1] = lastChild.replace(aPattern, aReplacement); } else { this.children.push(''.replace(aPattern, aReplacement)); } return this; }; /** * Set the source content for a source file. This will be added to the SourceMapGenerator * in the sourcesContent field. * * @param aSourceFile The filename of the source file * @param aSourceContent The content of the source file */ SourceNode.prototype.setSourceContent = function SourceNode_setSourceContent(aSourceFile, aSourceContent) { this.sourceContents[util.toSetString(aSourceFile)] = aSourceContent; }; /** * Walk over the tree of SourceNodes. The walking function is called for each * source file content and is passed the filename and source content. * * @param aFn The traversal function. */ SourceNode.prototype.walkSourceContents = function SourceNode_walkSourceContents(aFn) { for (var i = 0, len = this.children.length; i < len; i++) { if (this.children[i][isSourceNode]) { this.children[i].walkSourceContents(aFn); } } var sources = Object.keys(this.sourceContents); for (var i = 0, len = sources.length; i < len; i++) { aFn(util.fromSetString(sources[i]), this.sourceContents[sources[i]]); } }; /** * Return the string representation of this source node. Walks over the tree * and concatenates all the various snippets together to one string. */ SourceNode.prototype.toString = function SourceNode_toString() { var str = ""; this.walk(function (chunk) { str += chunk; }); return str; }; /** * Returns the string representation of this source node along with a source * map. */ SourceNode.prototype.toStringWithSourceMap = function SourceNode_toStringWithSourceMap(aArgs) { var generated = { code: "", line: 1, column: 0 }; var map = new SourceMapGenerator(aArgs); var sourceMappingActive = false; var lastOriginalSource = null; var lastOriginalLine = null; var lastOriginalColumn = null; var lastOriginalName = null; this.walk(function (chunk, original) { generated.code += chunk; if (original.source !== null && original.line !== null && original.column !== null) { if(lastOriginalSource !== original.source || lastOriginalLine !== original.line || lastOriginalColumn !== original.column || lastOriginalName !== original.name) { map.addMapping({ source: original.source, original: { line: original.line, column: original.column }, generated: { line: generated.line, column: generated.column }, name: original.name }); } lastOriginalSource = original.source; lastOriginalLine = original.line; lastOriginalColumn = original.column; lastOriginalName = original.name; sourceMappingActive = true; } else if (sourceMappingActive) { map.addMapping({ generated: { line: generated.line, column: generated.column } }); lastOriginalSource = null; sourceMappingActive = false; } for (var idx = 0, length = chunk.length; idx < length; idx++) { if (chunk.charCodeAt(idx) === NEWLINE_CODE) { generated.line++; generated.column = 0; // Mappings end at eol if (idx + 1 === length) { lastOriginalSource = null; sourceMappingActive = false; } else if (sourceMappingActive) { map.addMapping({ source: original.source, original: { line: original.line, column: original.column }, generated: { line: generated.line, column: generated.column }, name: original.name }); } } else { generated.column++; } } }); this.walkSourceContents(function (sourceFile, sourceContent) { map.setSourceContent(sourceFile, sourceContent); }); return { code: generated.code, map: map }; }; exports.SourceNode = SourceNode; /***/ }), /* 28 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); function settle(val) { if (!Array.isArray(val)) val = [val]; return Promise.all(val.map(function (p) { return p.then(function (value) { return { isFulfilled: true, isRejected: false, value: value }; }).catch(function (reason) { return { isFulfilled: false, isRejected: true, reason: reason }; }); })); } exports.settle = settle; exports.default = settle; /***/ }), /* 29 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return unmap; }); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator__ = __webpack_require__(2); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator__); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__stack_frame__ = __webpack_require__(1); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__getSourceMap__ = __webpack_require__(4); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__getLinesAround__ = __webpack_require__(8); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_path__ = __webpack_require__(30); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_path___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_path__); var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; /** * Turns a set of mapped StackFrames back into their generated code position and enhances them with code. * @param {string} fileUri The URI of the bundle.js file. * @param {StackFrame[]} frames A set of StackFrames which are already mapped and missing their generated positions. * @param {number} [fileContents=3] The number of lines to provide before and after the line specified in the StackFrame. */ var unmap = function () { var _ref = _asyncToGenerator( /*#__PURE__*/__WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default.a.mark(function _callee(_fileUri, frames) { var contextLines = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 3; var fileContents, fileUri, map; return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default.a.wrap(function _callee$(_context) { while (1) { switch (_context.prev = _context.next) { case 0: fileContents = (typeof _fileUri === 'undefined' ? 'undefined' : _typeof(_fileUri)) === 'object' ? _fileUri.contents : null; fileUri = (typeof _fileUri === 'undefined' ? 'undefined' : _typeof(_fileUri)) === 'object' ? _fileUri.uri : _fileUri; if (!(fileContents == null)) { _context.next = 6; break; } _context.next = 5; return fetch(fileUri).then(function (res) { return res.text(); }); case 5: fileContents = _context.sent; case 6: _context.next = 8; return Object(__WEBPACK_IMPORTED_MODULE_2__getSourceMap__["a" /* getSourceMap */])(fileUri, fileContents); case 8: map = _context.sent; return _context.abrupt('return', frames.map(function (frame) { var functionName = frame.functionName, lineNumber = frame.lineNumber, columnNumber = frame.columnNumber, _originalLineNumber = frame._originalLineNumber; if (_originalLineNumber != null) { return frame; } var fileName = frame.fileName; if (fileName) { // The web version of this module only provides POSIX support, so Windows // paths like C:\foo\\baz\..\\bar\ cannot be normalized. // A simple solution to this is to replace all `\` with `/`, then // normalize afterwards. fileName = __WEBPACK_IMPORTED_MODULE_4_path___default.a.normalize(fileName.replace(/[\\]+/g, '/')); } if (fileName == null) { return frame; } var fN = fileName; var source = map.getSources() // Prepare path for normalization; see comment above for reasoning. .map(function (s) { return s.replace(/[\\]+/g, '/'); }).filter(function (p) { p = __WEBPACK_IMPORTED_MODULE_4_path___default.a.normalize(p); var i = p.lastIndexOf(fN); return i !== -1 && i === p.length - fN.length; }).map(function (p) { return { token: p, seps: count(__WEBPACK_IMPORTED_MODULE_4_path___default.a.sep, __WEBPACK_IMPORTED_MODULE_4_path___default.a.normalize(p)), penalties: count('node_modules', p) + count('~', p) }; }).sort(function (a, b) { var s = Math.sign(a.seps - b.seps); if (s !== 0) { return s; } return Math.sign(a.penalties - b.penalties); }); if (source.length < 1 || lineNumber == null) { return new __WEBPACK_IMPORTED_MODULE_1__stack_frame__["b" /* default */](null, null, null, null, null, functionName, fN, lineNumber, columnNumber, null); } var sourceT = source[0].token; var _map$getGeneratedPosi = map.getGeneratedPosition(sourceT, lineNumber, // $FlowFixMe columnNumber), line = _map$getGeneratedPosi.line, column = _map$getGeneratedPosi.column; var originalSource = map.getSource(sourceT); return new __WEBPACK_IMPORTED_MODULE_1__stack_frame__["b" /* default */](functionName, fileUri, line, column || null, Object(__WEBPACK_IMPORTED_MODULE_3__getLinesAround__["a" /* getLinesAround */])(line, contextLines, fileContents || []), functionName, fN, lineNumber, columnNumber, Object(__WEBPACK_IMPORTED_MODULE_3__getLinesAround__["a" /* getLinesAround */])(lineNumber, contextLines, originalSource)); })); case 10: case 'end': return _context.stop(); } } }, _callee, this); })); return function unmap(_x2, _x3) { return _ref.apply(this, arguments); }; }(); function _asyncToGenerator(fn) { return function () { var gen = fn.apply(this, arguments); return new Promise(function (resolve, reject) { function step(key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { return Promise.resolve(value).then(function (value) { step("next", value); }, function (err) { step("throw", err); }); } } return step("next"); }); }; } /** * Copyright (c) 2015-present, Facebook, Inc. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */ function count(search, string) { // Count starts at -1 becuse a do-while loop always runs at least once var count = -1, index = -1; do { // First call or the while case evaluated true, meaning we have to make // count 0 or we found a character ++count; // Find the index of our search string, starting after the previous index index = string.indexOf(search, index + 1); } while (index !== -1); return count; } /* unused harmony default export */ var _unused_webpack_default_export = (unmap); /***/ }), /* 30 */ /***/ (function(module, exports, __webpack_require__) { /* WEBPACK VAR INJECTION */(function(process) {// Copyright Joyent, Inc. and other Node contributors. // // Permission is hereby granted, free of charge, to any person obtaining a // copy of this software and associated documentation files (the // "Software"), to deal in the Software without restriction, including // without limitation the rights to use, copy, modify, merge, publish, // distribute, sublicense, and/or sell copies of the Software, and to permit // persons to whom the Software is furnished to do so, subject to the // following conditions: // // The above copyright notice and this permission notice shall be included // in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS // OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN // NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, // DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR // OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE // USE OR OTHER DEALINGS IN THE SOFTWARE. // resolves . and .. elements in a path array with directory names there // must be no slashes, empty elements, or device names (c:\) in the array // (so also no leading and trailing slashes - it does not distinguish // relative and absolute paths) function normalizeArray(parts, allowAboveRoot) { // if the path tries to go above the root, `up` ends up > 0 var up = 0; for (var i = parts.length - 1; i >= 0; i--) { var last = parts[i]; if (last === '.') { parts.splice(i, 1); } else if (last === '..') { parts.splice(i, 1); up++; } else if (up) { parts.splice(i, 1); up--; } } // if the path is allowed to go above the root, restore leading ..s if (allowAboveRoot) { for (; up--; up) { parts.unshift('..'); } } return parts; } // Split a filename into [root, dir, basename, ext], unix version // 'root' is just a slash, or nothing. var splitPathRe = /^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/; var splitPath = function(filename) { return splitPathRe.exec(filename).slice(1); }; // path.resolve([from ...], to) // posix version exports.resolve = function() { var resolvedPath = '', resolvedAbsolute = false; for (var i = arguments.length - 1; i >= -1 && !resolvedAbsolute; i--) { var path = (i >= 0) ? arguments[i] : process.cwd(); // Skip empty and invalid entries if (typeof path !== 'string') { throw new TypeError('Arguments to path.resolve must be strings'); } else if (!path) { continue; } resolvedPath = path + '/' + resolvedPath; resolvedAbsolute = path.charAt(0) === '/'; } // At this point the path should be resolved to a full absolute path, but // handle relative paths to be safe (might happen when process.cwd() fails) // Normalize the path resolvedPath = normalizeArray(filter(resolvedPath.split('/'), function(p) { return !!p; }), !resolvedAbsolute).join('/'); return ((resolvedAbsolute ? '/' : '') + resolvedPath) || '.'; }; // path.normalize(path) // posix version exports.normalize = function(path) { var isAbsolute = exports.isAbsolute(path), trailingSlash = substr(path, -1) === '/'; // Normalize the path path = normalizeArray(filter(path.split('/'), function(p) { return !!p; }), !isAbsolute).join('/'); if (!path && !isAbsolute) { path = '.'; } if (path && trailingSlash) { path += '/'; } return (isAbsolute ? '/' : '') + path; }; // posix version exports.isAbsolute = function(path) { return path.charAt(0) === '/'; }; // posix version exports.join = function() { var paths = Array.prototype.slice.call(arguments, 0); return exports.normalize(filter(paths, function(p, index) { if (typeof p !== 'string') { throw new TypeError('Arguments to path.join must be strings'); } return p; }).join('/')); }; // path.relative(from, to) // posix version exports.relative = function(from, to) { from = exports.resolve(from).substr(1); to = exports.resolve(to).substr(1); function trim(arr) { var start = 0; for (; start < arr.length; start++) { if (arr[start] !== '') break; } var end = arr.length - 1; for (; end >= 0; end--) { if (arr[end] !== '') break; } if (start > end) return []; return arr.slice(start, end - start + 1); } var fromParts = trim(from.split('/')); var toParts = trim(to.split('/')); var length = Math.min(fromParts.length, toParts.length); var samePartsLength = length; for (var i = 0; i < length; i++) { if (fromParts[i] !== toParts[i]) { samePartsLength = i; break; } } var outputParts = []; for (var i = samePartsLength; i < fromParts.length; i++) { outputParts.push('..'); } outputParts = outputParts.concat(toParts.slice(samePartsLength)); return outputParts.join('/'); }; exports.sep = '/'; exports.delimiter = ':'; exports.dirname = function(path) { var result = splitPath(path), root = result[0], dir = result[1]; if (!root && !dir) { // No dirname whatsoever return '.'; } if (dir) { // It has a dirname, strip trailing slash dir = dir.substr(0, dir.length - 1); } return root + dir; }; exports.basename = function(path, ext) { var f = splitPath(path)[2]; // TODO: make this comparison case-insensitive on windows? if (ext && f.substr(-1 * ext.length) === ext) { f = f.substr(0, f.length - ext.length); } return f; }; exports.extname = function(path) { return splitPath(path)[3]; }; function filter (xs, f) { if (xs.filter) return xs.filter(f); var res = []; for (var i = 0; i < xs.length; i++) { if (f(xs[i], i, xs)) res.push(xs[i]); } return res; } // String.prototype.substr - negative index don't work in IE8 var substr = 'ab'.substr(-1) === 'b' ? function (str, start, len) { return str.substr(start, len) } : function (str, start, len) { if (start < 0) start = str.length + start; return str.substr(start, len); } ; /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3))) /***/ }), /* 31 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return iframeStyle; }); /* unused harmony export overlayStyle */ /* unused harmony export primaryErrorStyle */ /* unused harmony export secondaryErrorStyle */ /* unused harmony export black */ /* unused harmony export darkGray */ /* unused harmony export red */ /* unused harmony export redTransparent */ /* unused harmony export yellowTransparent */ /** * Copyright (c) 2015-present, Facebook, Inc. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */ var black = '#293238', darkGray = '#878e91', red = '#ce1126', redTransparent = 'rgba(206, 17, 38, 0.05)', lightRed = '#fccfcf', yellow = '#fbf5b4', yellowTransparent = 'rgba(251, 245, 180, 0.3)', white = '#ffffff'; var iframeStyle = { position: 'fixed', top: '0', left: '0', width: '100%', height: '100%', border: 'none', 'z-index': 2147483647 }; var overlayStyle = { width: '100%', height: '100%', 'box-sizing': 'border-box', 'text-align': 'center', 'background-color': white }; var primaryErrorStyle = { 'background-color': lightRed }; var secondaryErrorStyle = { 'background-color': yellow }; /***/ }), /* 32 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* unused harmony export getHead */ /* unused harmony export injectCss */ /* unused harmony export removeCss */ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return applyStyles; }); /** * Copyright (c) 2015-present, Facebook, Inc. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */ var injectedCount = 0; var injectedCache = {}; function getHead(document) { return document.head || document.getElementsByTagName('head')[0]; } function injectCss(document, css) { var head = getHead(document); var style = document.createElement('style'); style.type = 'text/css'; style.appendChild(document.createTextNode(css)); head.appendChild(style); injectedCache[++injectedCount] = style; return injectedCount; } function removeCss(document, ref) { if (injectedCache[ref] == null) { return; } var head = getHead(document); head.removeChild(injectedCache[ref]); delete injectedCache[ref]; } function applyStyles(element, styles) { element.setAttribute('style', ''); for (var key in styles) { if (!styles.hasOwnProperty(key)) { continue; } // $FlowFixMe element.style[key] = styles[key]; } } /***/ }), /* 33 */ /***/ (function(module, exports) { module.exports = "!function(e){function t(n){if(u[n])return u[n].exports;var r=u[n]={i:n,l:!1,exports:{}};return e[n].call(r.exports,r,r.exports,t),r.l=!0,r.exports}var u={};t.m=e,t.c=u,t.d=function(e,u,n){t.o(e,u)||Object.defineProperty(e,u,{configurable:!1,enumerable:!0,get:n})},t.n=function(e){var u=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(u,\"a\",u),u},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p=\"\",t(t.s=17)}([function(e,t,u){\"use strict\";e.exports=u(23)},function(e,t,u){\"use strict\";u.d(t,\"c\",function(){return l}),u.d(t,\"d\",function(){return c}),u.d(t,\"g\",function(){return s}),u.d(t,\"a\",function(){return n}),u.d(t,\"b\",function(){return r}),u.d(t,\"e\",function(){return o}),u.d(t,\"f\",function(){return a}),u.d(t,\"h\",function(){return i});var n=\"#293238\",r=\"#878e91\",o=\"#ce1126\",a=\"rgba(206, 17, 38, 0.05)\",i=\"rgba(251, 245, 180, 0.3)\",l={width:\"100%\",height:\"100%\",\"box-sizing\":\"border-box\",\"text-align\":\"center\",\"background-color\":\"#ffffff\"},c={\"background-color\":\"#fccfcf\"},s={\"background-color\":\"#fbf5b4\"}},function(e,t,u){\"use strict\";function n(e){if(null===e||void 0===e)throw new TypeError(\"Object.assign cannot be called with null or undefined\");return Object(e)}var r=Object.getOwnPropertySymbols,o=Object.prototype.hasOwnProperty,a=Object.prototype.propertyIsEnumerable;e.exports=function(){try{if(!Object.assign)return!1;var e=new String(\"abc\");if(e[5]=\"de\",\"5\"===Object.getOwnPropertyNames(e)[0])return!1;for(var t={},u=0;u<10;u++)t[\"_\"+String.fromCharCode(u)]=u;if(\"0123456789\"!==Object.getOwnPropertyNames(t).map(function(e){return t[e]}).join(\"\"))return!1;var n={};return\"abcdefghijklmnopqrst\".split(\"\").forEach(function(e){n[e]=e}),\"abcdefghijklmnopqrst\"===Object.keys(Object.assign({},n)).join(\"\")}catch(e){return!1}}()?Object.assign:function(e,t){for(var u,i,l=n(e),c=1;c',n=!0);var D=p[d].replace(\"\\r\",\"\"),h=l[c[f]];null!=h?u+=''+D+\"\":(null!=f&&console.log(\"Missing color mapping: \",f),u+=\"\"+D+\"\"),d\",n=!1,u+=\"
\")}return n&&(u+=\"\",n=!1),u}var r=u(11),o=u.n(r),a=u(35),i=(u.n(a),new a.AllHtmlEntities),l={reset:[\"333333\",\"transparent\"],black:\"333333\",red:\"881280\",green:\"1155cc\",yellow:\"881280\",blue:\"994500\",magenta:\"994500\",cyan:\"c80000\",gray:\"6e6e6e\",lightgrey:\"f5f5f5\",darkgrey:\"6e6e6e\"},c={\"ansi-bright-black\":\"black\",\"ansi-bright-yellow\":\"yellow\",\"ansi-yellow\":\"yellow\",\"ansi-bright-green\":\"green\",\"ansi-green\":\"green\",\"ansi-bright-cyan\":\"cyan\",\"ansi-cyan\":\"cyan\",\"ansi-bright-red\":\"red\",\"ansi-red\":\"red\",\"ansi-bright-magenta\":\"magenta\",\"ansi-magenta\":\"magenta\",\"ansi-white\":\"darkgrey\"};t.a=n},function(e,t,u){\"use strict\";function n(e,t){if(!(e instanceof t))throw new TypeError(\"Cannot call a class as a function\")}var r=function(){function e(e,t){for(var u=0;u]/gm,function(e){return\"&\"==e?\"&\":\"<\"==e?\"<\":\">\"==e?\">\":\"\"})}},{key:\"linkify\",value:function(e){return e.replace(/(https?:\\/\\/[^\\s]+)/gm,function(e){return''+e+\"\"})}},{key:\"ansiToHtml\",value:function(e,t){return this.process(e,t,!0)}},{key:\"ansiToJson\",value:function(e,t){return t=t||{},t.json=!0,t.clearLine=!1,this.process(e,t,!0)}},{key:\"ansiToText\",value:function(e){return this.process(e,{},!1)}},{key:\"process\",value:function(e,t,u){var n=this,r=this,o=e.split(/\\033\\[/),a=o.shift();void 0!==t&&null!==t||(t={}),t.clearLine=/\\r/.test(e);var i=o.map(function(e){return n.processChunk(e,t,u)});if(t&&t.json){var l=r.processChunkJson(\"\");return l.content=a,l.clearLine=t.clearLine,i.unshift(l),t.remove_empty&&(i=i.filter(function(e){return!e.isEmpty()})),i}return i.unshift(a),i.join(\"\")}},{key:\"processChunkJson\",value:function(e,t,u){t=\"undefined\"==typeof t?{}:t;var n=t.use_classes=\"undefined\"!=typeof t.use_classes&&t.use_classes,r=t.key=n?\"class\":\"color\",a={content:e,fg:null,bg:null,fg_truecolor:null,bg_truecolor:null,clearLine:t.clearLine,decoration:null,was_processed:!1,isEmpty:function(){return!a.content}},i=e.match(/^([!\\x3c-\\x3f]*)([\\d;]*)([\\x20-\\x2c]*[\\x40-\\x7e])([\\s\\S]*)/m);if(!i)return a;var l=(a.content=i[4],i[2].split(\";\"));if(\"\"!==i[1]||\"m\"!==i[3])return a;if(!u)return a;var c=this;for(c.decoration=null;l.length>0;){var s=l.shift(),f=parseInt(s);if(isNaN(f)||0===f)c.fg=c.bg=c.decoration=null;else if(1===f)c.decoration=\"bold\";else if(2===f)c.decoration=\"dim\";else if(3==f)c.decoration=\"italic\";else if(4==f)c.decoration=\"underline\";else if(5==f)c.decoration=\"blink\";else if(7===f)c.decoration=\"reverse\";else if(8===f)c.decoration=\"hidden\";else if(9===f)c.decoration=\"strikethrough\";else if(39==f)c.fg=null;else if(49==f)c.bg=null;else if(f>=30&&f<38)c.fg=o[0][f%10][r];else if(f>=90&&f<98)c.fg=o[1][f%10][r];else if(f>=40&&f<48)c.bg=o[0][f%10][r];else if(f>=100&&f<108)c.bg=o[1][f%10][r];else if(38===f||48===f){var p=38===f;if(l.length>=1){var d=l.shift();if(\"5\"===d&&l.length>=1){var D=parseInt(l.shift());if(D>=0&&D<=255)if(n){var h=D>=16?\"ansi-palette-\"+D:o[D>7?1:0][D%8].class;p?c.fg=h:c.bg=h}else this.PALETTE_COLORS||c.setupPalette(),p?c.fg=this.PALETTE_COLORS[D]:c.bg=this.PALETTE_COLORS[D]}else if(\"2\"===d&&l.length>=3){var m=parseInt(l.shift()),g=parseInt(l.shift()),C=parseInt(l.shift());if(m>=0&&m<=255&&g>=0&&g<=255&&C>=0&&C<=255){var A=m+\", \"+g+\", \"+C;n?p?(c.fg=\"ansi-truecolor\",c.fg_truecolor=A):(c.bg=\"ansi-truecolor\",c.bg_truecolor=A):p?c.fg=A:c.bg=A}}}}}if(null===c.fg&&null===c.bg&&null===c.decoration)return a;return a.fg=c.fg,a.bg=c.bg,a.fg_truecolor=c.fg_truecolor,a.bg_truecolor=c.bg_truecolor,a.decoration=c.decoration,a.was_processed=!0,a}},{key:\"processChunk\",value:function(e,t,u){var n=this;t=t||{};var r=this.processChunkJson(e,t,u);if(t.json)return r;if(r.isEmpty())return\"\";if(!r.was_processed)return r.content;var o=t.use_classes,a=[],i=[],l={},c=function(e){var t=[],u=void 0;for(u in e)e.hasOwnProperty(u)&&t.push(\"data-\"+u+'=\"'+n.escapeForHtml(e[u])+'\"');return t.length>0?\" \"+t.join(\" \"):\"\"};return r.fg&&(o?(i.push(r.fg+\"-fg\"),null!==r.fg_truecolor&&(l[\"ansi-truecolor-fg\"]=r.fg_truecolor,r.fg_truecolor=null)):a.push(\"color:rgb(\"+r.fg+\")\")),r.bg&&(o?(i.push(r.bg+\"-bg\"),null!==r.bg_truecolor&&(l[\"ansi-truecolor-bg\"]=r.bg_truecolor,r.bg_truecolor=null)):a.push(\"background-color:rgb(\"+r.bg+\")\")),r.decoration&&(o?i.push(\"ansi-\"+r.decoration):\"bold\"===r.decoration?a.push(\"font-weight:bold\"):\"dim\"===r.decoration?a.push(\"opacity:0.5\"):\"italic\"===r.decoration?a.push(\"font-style:italic\"):\"reverse\"===r.decoration?a.push(\"filter:invert(100%)\"):\"hidden\"===r.decoration?a.push(\"visibility:hidden\"):\"strikethrough\"===r.decoration?a.push(\"text-decoration:line-through\"):a.push(\"text-decoration:\"+r.decoration)),o?'\"+r.content+\"\":'\"+r.content+\"\"}}]),e}();e.exports=a},function(e,t){function u(){}var n=[[\"Aacute\",[193]],[\"aacute\",[225]],[\"Abreve\",[258]],[\"abreve\",[259]],[\"ac\",[8766]],[\"acd\",[8767]],[\"acE\",[8766,819]],[\"Acirc\",[194]],[\"acirc\",[226]],[\"acute\",[180]],[\"Acy\",[1040]],[\"acy\",[1072]],[\"AElig\",[198]],[\"aelig\",[230]],[\"af\",[8289]],[\"Afr\",[120068]],[\"afr\",[120094]],[\"Agrave\",[192]],[\"agrave\",[224]],[\"alefsym\",[8501]],[\"aleph\",[8501]],[\"Alpha\",[913]],[\"alpha\",[945]],[\"Amacr\",[256]],[\"amacr\",[257]],[\"amalg\",[10815]],[\"amp\",[38]],[\"AMP\",[38]],[\"andand\",[10837]],[\"And\",[10835]],[\"and\",[8743]],[\"andd\",[10844]],[\"andslope\",[10840]],[\"andv\",[10842]],[\"ang\",[8736]],[\"ange\",[10660]],[\"angle\",[8736]],[\"angmsdaa\",[10664]],[\"angmsdab\",[10665]],[\"angmsdac\",[10666]],[\"angmsdad\",[10667]],[\"angmsdae\",[10668]],[\"angmsdaf\",[10669]],[\"angmsdag\",[10670]],[\"angmsdah\",[10671]],[\"angmsd\",[8737]],[\"angrt\",[8735]],[\"angrtvb\",[8894]],[\"angrtvbd\",[10653]],[\"angsph\",[8738]],[\"angst\",[197]],[\"angzarr\",[9084]],[\"Aogon\",[260]],[\"aogon\",[261]],[\"Aopf\",[120120]],[\"aopf\",[120146]],[\"apacir\",[10863]],[\"ap\",[8776]],[\"apE\",[10864]],[\"ape\",[8778]],[\"apid\",[8779]],[\"apos\",[39]],[\"ApplyFunction\",[8289]],[\"approx\",[8776]],[\"approxeq\",[8778]],[\"Aring\",[197]],[\"aring\",[229]],[\"Ascr\",[119964]],[\"ascr\",[119990]],[\"Assign\",[8788]],[\"ast\",[42]],[\"asymp\",[8776]],[\"asympeq\",[8781]],[\"Atilde\",[195]],[\"atilde\",[227]],[\"Auml\",[196]],[\"auml\",[228]],[\"awconint\",[8755]],[\"awint\",[10769]],[\"backcong\",[8780]],[\"backepsilon\",[1014]],[\"backprime\",[8245]],[\"backsim\",[8765]],[\"backsimeq\",[8909]],[\"Backslash\",[8726]],[\"Barv\",[10983]],[\"barvee\",[8893]],[\"barwed\",[8965]],[\"Barwed\",[8966]],[\"barwedge\",[8965]],[\"bbrk\",[9141]],[\"bbrktbrk\",[9142]],[\"bcong\",[8780]],[\"Bcy\",[1041]],[\"bcy\",[1073]],[\"bdquo\",[8222]],[\"becaus\",[8757]],[\"because\",[8757]],[\"Because\",[8757]],[\"bemptyv\",[10672]],[\"bepsi\",[1014]],[\"bernou\",[8492]],[\"Bernoullis\",[8492]],[\"Beta\",[914]],[\"beta\",[946]],[\"beth\",[8502]],[\"between\",[8812]],[\"Bfr\",[120069]],[\"bfr\",[120095]],[\"bigcap\",[8898]],[\"bigcirc\",[9711]],[\"bigcup\",[8899]],[\"bigodot\",[10752]],[\"bigoplus\",[10753]],[\"bigotimes\",[10754]],[\"bigsqcup\",[10758]],[\"bigstar\",[9733]],[\"bigtriangledown\",[9661]],[\"bigtriangleup\",[9651]],[\"biguplus\",[10756]],[\"bigvee\",[8897]],[\"bigwedge\",[8896]],[\"bkarow\",[10509]],[\"blacklozenge\",[10731]],[\"blacksquare\",[9642]],[\"blacktriangle\",[9652]],[\"blacktriangledown\",[9662]],[\"blacktriangleleft\",[9666]],[\"blacktriangleright\",[9656]],[\"blank\",[9251]],[\"blk12\",[9618]],[\"blk14\",[9617]],[\"blk34\",[9619]],[\"block\",[9608]],[\"bne\",[61,8421]],[\"bnequiv\",[8801,8421]],[\"bNot\",[10989]],[\"bnot\",[8976]],[\"Bopf\",[120121]],[\"bopf\",[120147]],[\"bot\",[8869]],[\"bottom\",[8869]],[\"bowtie\",[8904]],[\"boxbox\",[10697]],[\"boxdl\",[9488]],[\"boxdL\",[9557]],[\"boxDl\",[9558]],[\"boxDL\",[9559]],[\"boxdr\",[9484]],[\"boxdR\",[9554]],[\"boxDr\",[9555]],[\"boxDR\",[9556]],[\"boxh\",[9472]],[\"boxH\",[9552]],[\"boxhd\",[9516]],[\"boxHd\",[9572]],[\"boxhD\",[9573]],[\"boxHD\",[9574]],[\"boxhu\",[9524]],[\"boxHu\",[9575]],[\"boxhU\",[9576]],[\"boxHU\",[9577]],[\"boxminus\",[8863]],[\"boxplus\",[8862]],[\"boxtimes\",[8864]],[\"boxul\",[9496]],[\"boxuL\",[9563]],[\"boxUl\",[9564]],[\"boxUL\",[9565]],[\"boxur\",[9492]],[\"boxuR\",[9560]],[\"boxUr\",[9561]],[\"boxUR\",[9562]],[\"boxv\",[9474]],[\"boxV\",[9553]],[\"boxvh\",[9532]],[\"boxvH\",[9578]],[\"boxVh\",[9579]],[\"boxVH\",[9580]],[\"boxvl\",[9508]],[\"boxvL\",[9569]],[\"boxVl\",[9570]],[\"boxVL\",[9571]],[\"boxvr\",[9500]],[\"boxvR\",[9566]],[\"boxVr\",[9567]],[\"boxVR\",[9568]],[\"bprime\",[8245]],[\"breve\",[728]],[\"Breve\",[728]],[\"brvbar\",[166]],[\"bscr\",[119991]],[\"Bscr\",[8492]],[\"bsemi\",[8271]],[\"bsim\",[8765]],[\"bsime\",[8909]],[\"bsolb\",[10693]],[\"bsol\",[92]],[\"bsolhsub\",[10184]],[\"bull\",[8226]],[\"bullet\",[8226]],[\"bump\",[8782]],[\"bumpE\",[10926]],[\"bumpe\",[8783]],[\"Bumpeq\",[8782]],[\"bumpeq\",[8783]],[\"Cacute\",[262]],[\"cacute\",[263]],[\"capand\",[10820]],[\"capbrcup\",[10825]],[\"capcap\",[10827]],[\"cap\",[8745]],[\"Cap\",[8914]],[\"capcup\",[10823]],[\"capdot\",[10816]],[\"CapitalDifferentialD\",[8517]],[\"caps\",[8745,65024]],[\"caret\",[8257]],[\"caron\",[711]],[\"Cayleys\",[8493]],[\"ccaps\",[10829]],[\"Ccaron\",[268]],[\"ccaron\",[269]],[\"Ccedil\",[199]],[\"ccedil\",[231]],[\"Ccirc\",[264]],[\"ccirc\",[265]],[\"Cconint\",[8752]],[\"ccups\",[10828]],[\"ccupssm\",[10832]],[\"Cdot\",[266]],[\"cdot\",[267]],[\"cedil\",[184]],[\"Cedilla\",[184]],[\"cemptyv\",[10674]],[\"cent\",[162]],[\"centerdot\",[183]],[\"CenterDot\",[183]],[\"cfr\",[120096]],[\"Cfr\",[8493]],[\"CHcy\",[1063]],[\"chcy\",[1095]],[\"check\",[10003]],[\"checkmark\",[10003]],[\"Chi\",[935]],[\"chi\",[967]],[\"circ\",[710]],[\"circeq\",[8791]],[\"circlearrowleft\",[8634]],[\"circlearrowright\",[8635]],[\"circledast\",[8859]],[\"circledcirc\",[8858]],[\"circleddash\",[8861]],[\"CircleDot\",[8857]],[\"circledR\",[174]],[\"circledS\",[9416]],[\"CircleMinus\",[8854]],[\"CirclePlus\",[8853]],[\"CircleTimes\",[8855]],[\"cir\",[9675]],[\"cirE\",[10691]],[\"cire\",[8791]],[\"cirfnint\",[10768]],[\"cirmid\",[10991]],[\"cirscir\",[10690]],[\"ClockwiseContourIntegral\",[8754]],[\"clubs\",[9827]],[\"clubsuit\",[9827]],[\"colon\",[58]],[\"Colon\",[8759]],[\"Colone\",[10868]],[\"colone\",[8788]],[\"coloneq\",[8788]],[\"comma\",[44]],[\"commat\",[64]],[\"comp\",[8705]],[\"compfn\",[8728]],[\"complement\",[8705]],[\"complexes\",[8450]],[\"cong\",[8773]],[\"congdot\",[10861]],[\"Congruent\",[8801]],[\"conint\",[8750]],[\"Conint\",[8751]],[\"ContourIntegral\",[8750]],[\"copf\",[120148]],[\"Copf\",[8450]],[\"coprod\",[8720]],[\"Coproduct\",[8720]],[\"copy\",[169]],[\"COPY\",[169]],[\"copysr\",[8471]],[\"CounterClockwiseContourIntegral\",[8755]],[\"crarr\",[8629]],[\"cross\",[10007]],[\"Cross\",[10799]],[\"Cscr\",[119966]],[\"cscr\",[119992]],[\"csub\",[10959]],[\"csube\",[10961]],[\"csup\",[10960]],[\"csupe\",[10962]],[\"ctdot\",[8943]],[\"cudarrl\",[10552]],[\"cudarrr\",[10549]],[\"cuepr\",[8926]],[\"cuesc\",[8927]],[\"cularr\",[8630]],[\"cularrp\",[10557]],[\"cupbrcap\",[10824]],[\"cupcap\",[10822]],[\"CupCap\",[8781]],[\"cup\",[8746]],[\"Cup\",[8915]],[\"cupcup\",[10826]],[\"cupdot\",[8845]],[\"cupor\",[10821]],[\"cups\",[8746,65024]],[\"curarr\",[8631]],[\"curarrm\",[10556]],[\"curlyeqprec\",[8926]],[\"curlyeqsucc\",[8927]],[\"curlyvee\",[8910]],[\"curlywedge\",[8911]],[\"curren\",[164]],[\"curvearrowleft\",[8630]],[\"curvearrowright\",[8631]],[\"cuvee\",[8910]],[\"cuwed\",[8911]],[\"cwconint\",[8754]],[\"cwint\",[8753]],[\"cylcty\",[9005]],[\"dagger\",[8224]],[\"Dagger\",[8225]],[\"daleth\",[8504]],[\"darr\",[8595]],[\"Darr\",[8609]],[\"dArr\",[8659]],[\"dash\",[8208]],[\"Dashv\",[10980]],[\"dashv\",[8867]],[\"dbkarow\",[10511]],[\"dblac\",[733]],[\"Dcaron\",[270]],[\"dcaron\",[271]],[\"Dcy\",[1044]],[\"dcy\",[1076]],[\"ddagger\",[8225]],[\"ddarr\",[8650]],[\"DD\",[8517]],[\"dd\",[8518]],[\"DDotrahd\",[10513]],[\"ddotseq\",[10871]],[\"deg\",[176]],[\"Del\",[8711]],[\"Delta\",[916]],[\"delta\",[948]],[\"demptyv\",[10673]],[\"dfisht\",[10623]],[\"Dfr\",[120071]],[\"dfr\",[120097]],[\"dHar\",[10597]],[\"dharl\",[8643]],[\"dharr\",[8642]],[\"DiacriticalAcute\",[180]],[\"DiacriticalDot\",[729]],[\"DiacriticalDoubleAcute\",[733]],[\"DiacriticalGrave\",[96]],[\"DiacriticalTilde\",[732]],[\"diam\",[8900]],[\"diamond\",[8900]],[\"Diamond\",[8900]],[\"diamondsuit\",[9830]],[\"diams\",[9830]],[\"die\",[168]],[\"DifferentialD\",[8518]],[\"digamma\",[989]],[\"disin\",[8946]],[\"div\",[247]],[\"divide\",[247]],[\"divideontimes\",[8903]],[\"divonx\",[8903]],[\"DJcy\",[1026]],[\"djcy\",[1106]],[\"dlcorn\",[8990]],[\"dlcrop\",[8973]],[\"dollar\",[36]],[\"Dopf\",[120123]],[\"dopf\",[120149]],[\"Dot\",[168]],[\"dot\",[729]],[\"DotDot\",[8412]],[\"doteq\",[8784]],[\"doteqdot\",[8785]],[\"DotEqual\",[8784]],[\"dotminus\",[8760]],[\"dotplus\",[8724]],[\"dotsquare\",[8865]],[\"doublebarwedge\",[8966]],[\"DoubleContourIntegral\",[8751]],[\"DoubleDot\",[168]],[\"DoubleDownArrow\",[8659]],[\"DoubleLeftArrow\",[8656]],[\"DoubleLeftRightArrow\",[8660]],[\"DoubleLeftTee\",[10980]],[\"DoubleLongLeftArrow\",[10232]],[\"DoubleLongLeftRightArrow\",[10234]],[\"DoubleLongRightArrow\",[10233]],[\"DoubleRightArrow\",[8658]],[\"DoubleRightTee\",[8872]],[\"DoubleUpArrow\",[8657]],[\"DoubleUpDownArrow\",[8661]],[\"DoubleVerticalBar\",[8741]],[\"DownArrowBar\",[10515]],[\"downarrow\",[8595]],[\"DownArrow\",[8595]],[\"Downarrow\",[8659]],[\"DownArrowUpArrow\",[8693]],[\"DownBreve\",[785]],[\"downdownarrows\",[8650]],[\"downharpoonleft\",[8643]],[\"downharpoonright\",[8642]],[\"DownLeftRightVector\",[10576]],[\"DownLeftTeeVector\",[10590]],[\"DownLeftVectorBar\",[10582]],[\"DownLeftVector\",[8637]],[\"DownRightTeeVector\",[10591]],[\"DownRightVectorBar\",[10583]],[\"DownRightVector\",[8641]],[\"DownTeeArrow\",[8615]],[\"DownTee\",[8868]],[\"drbkarow\",[10512]],[\"drcorn\",[8991]],[\"drcrop\",[8972]],[\"Dscr\",[119967]],[\"dscr\",[119993]],[\"DScy\",[1029]],[\"dscy\",[1109]],[\"dsol\",[10742]],[\"Dstrok\",[272]],[\"dstrok\",[273]],[\"dtdot\",[8945]],[\"dtri\",[9663]],[\"dtrif\",[9662]],[\"duarr\",[8693]],[\"duhar\",[10607]],[\"dwangle\",[10662]],[\"DZcy\",[1039]],[\"dzcy\",[1119]],[\"dzigrarr\",[10239]],[\"Eacute\",[201]],[\"eacute\",[233]],[\"easter\",[10862]],[\"Ecaron\",[282]],[\"ecaron\",[283]],[\"Ecirc\",[202]],[\"ecirc\",[234]],[\"ecir\",[8790]],[\"ecolon\",[8789]],[\"Ecy\",[1069]],[\"ecy\",[1101]],[\"eDDot\",[10871]],[\"Edot\",[278]],[\"edot\",[279]],[\"eDot\",[8785]],[\"ee\",[8519]],[\"efDot\",[8786]],[\"Efr\",[120072]],[\"efr\",[120098]],[\"eg\",[10906]],[\"Egrave\",[200]],[\"egrave\",[232]],[\"egs\",[10902]],[\"egsdot\",[10904]],[\"el\",[10905]],[\"Element\",[8712]],[\"elinters\",[9191]],[\"ell\",[8467]],[\"els\",[10901]],[\"elsdot\",[10903]],[\"Emacr\",[274]],[\"emacr\",[275]],[\"empty\",[8709]],[\"emptyset\",[8709]],[\"EmptySmallSquare\",[9723]],[\"emptyv\",[8709]],[\"EmptyVerySmallSquare\",[9643]],[\"emsp13\",[8196]],[\"emsp14\",[8197]],[\"emsp\",[8195]],[\"ENG\",[330]],[\"eng\",[331]],[\"ensp\",[8194]],[\"Eogon\",[280]],[\"eogon\",[281]],[\"Eopf\",[120124]],[\"eopf\",[120150]],[\"epar\",[8917]],[\"eparsl\",[10723]],[\"eplus\",[10865]],[\"epsi\",[949]],[\"Epsilon\",[917]],[\"epsilon\",[949]],[\"epsiv\",[1013]],[\"eqcirc\",[8790]],[\"eqcolon\",[8789]],[\"eqsim\",[8770]],[\"eqslantgtr\",[10902]],[\"eqslantless\",[10901]],[\"Equal\",[10869]],[\"equals\",[61]],[\"EqualTilde\",[8770]],[\"equest\",[8799]],[\"Equilibrium\",[8652]],[\"equiv\",[8801]],[\"equivDD\",[10872]],[\"eqvparsl\",[10725]],[\"erarr\",[10609]],[\"erDot\",[8787]],[\"escr\",[8495]],[\"Escr\",[8496]],[\"esdot\",[8784]],[\"Esim\",[10867]],[\"esim\",[8770]],[\"Eta\",[919]],[\"eta\",[951]],[\"ETH\",[208]],[\"eth\",[240]],[\"Euml\",[203]],[\"euml\",[235]],[\"euro\",[8364]],[\"excl\",[33]],[\"exist\",[8707]],[\"Exists\",[8707]],[\"expectation\",[8496]],[\"exponentiale\",[8519]],[\"ExponentialE\",[8519]],[\"fallingdotseq\",[8786]],[\"Fcy\",[1060]],[\"fcy\",[1092]],[\"female\",[9792]],[\"ffilig\",[64259]],[\"fflig\",[64256]],[\"ffllig\",[64260]],[\"Ffr\",[120073]],[\"ffr\",[120099]],[\"filig\",[64257]],[\"FilledSmallSquare\",[9724]],[\"FilledVerySmallSquare\",[9642]],[\"fjlig\",[102,106]],[\"flat\",[9837]],[\"fllig\",[64258]],[\"fltns\",[9649]],[\"fnof\",[402]],[\"Fopf\",[120125]],[\"fopf\",[120151]],[\"forall\",[8704]],[\"ForAll\",[8704]],[\"fork\",[8916]],[\"forkv\",[10969]],[\"Fouriertrf\",[8497]],[\"fpartint\",[10765]],[\"frac12\",[189]],[\"frac13\",[8531]],[\"frac14\",[188]],[\"frac15\",[8533]],[\"frac16\",[8537]],[\"frac18\",[8539]],[\"frac23\",[8532]],[\"frac25\",[8534]],[\"frac34\",[190]],[\"frac35\",[8535]],[\"frac38\",[8540]],[\"frac45\",[8536]],[\"frac56\",[8538]],[\"frac58\",[8541]],[\"frac78\",[8542]],[\"frasl\",[8260]],[\"frown\",[8994]],[\"fscr\",[119995]],[\"Fscr\",[8497]],[\"gacute\",[501]],[\"Gamma\",[915]],[\"gamma\",[947]],[\"Gammad\",[988]],[\"gammad\",[989]],[\"gap\",[10886]],[\"Gbreve\",[286]],[\"gbreve\",[287]],[\"Gcedil\",[290]],[\"Gcirc\",[284]],[\"gcirc\",[285]],[\"Gcy\",[1043]],[\"gcy\",[1075]],[\"Gdot\",[288]],[\"gdot\",[289]],[\"ge\",[8805]],[\"gE\",[8807]],[\"gEl\",[10892]],[\"gel\",[8923]],[\"geq\",[8805]],[\"geqq\",[8807]],[\"geqslant\",[10878]],[\"gescc\",[10921]],[\"ges\",[10878]],[\"gesdot\",[10880]],[\"gesdoto\",[10882]],[\"gesdotol\",[10884]],[\"gesl\",[8923,65024]],[\"gesles\",[10900]],[\"Gfr\",[120074]],[\"gfr\",[120100]],[\"gg\",[8811]],[\"Gg\",[8921]],[\"ggg\",[8921]],[\"gimel\",[8503]],[\"GJcy\",[1027]],[\"gjcy\",[1107]],[\"gla\",[10917]],[\"gl\",[8823]],[\"glE\",[10898]],[\"glj\",[10916]],[\"gnap\",[10890]],[\"gnapprox\",[10890]],[\"gne\",[10888]],[\"gnE\",[8809]],[\"gneq\",[10888]],[\"gneqq\",[8809]],[\"gnsim\",[8935]],[\"Gopf\",[120126]],[\"gopf\",[120152]],[\"grave\",[96]],[\"GreaterEqual\",[8805]],[\"GreaterEqualLess\",[8923]],[\"GreaterFullEqual\",[8807]],[\"GreaterGreater\",[10914]],[\"GreaterLess\",[8823]],[\"GreaterSlantEqual\",[10878]],[\"GreaterTilde\",[8819]],[\"Gscr\",[119970]],[\"gscr\",[8458]],[\"gsim\",[8819]],[\"gsime\",[10894]],[\"gsiml\",[10896]],[\"gtcc\",[10919]],[\"gtcir\",[10874]],[\"gt\",[62]],[\"GT\",[62]],[\"Gt\",[8811]],[\"gtdot\",[8919]],[\"gtlPar\",[10645]],[\"gtquest\",[10876]],[\"gtrapprox\",[10886]],[\"gtrarr\",[10616]],[\"gtrdot\",[8919]],[\"gtreqless\",[8923]],[\"gtreqqless\",[10892]],[\"gtrless\",[8823]],[\"gtrsim\",[8819]],[\"gvertneqq\",[8809,65024]],[\"gvnE\",[8809,65024]],[\"Hacek\",[711]],[\"hairsp\",[8202]],[\"half\",[189]],[\"hamilt\",[8459]],[\"HARDcy\",[1066]],[\"hardcy\",[1098]],[\"harrcir\",[10568]],[\"harr\",[8596]],[\"hArr\",[8660]],[\"harrw\",[8621]],[\"Hat\",[94]],[\"hbar\",[8463]],[\"Hcirc\",[292]],[\"hcirc\",[293]],[\"hearts\",[9829]],[\"heartsuit\",[9829]],[\"hellip\",[8230]],[\"hercon\",[8889]],[\"hfr\",[120101]],[\"Hfr\",[8460]],[\"HilbertSpace\",[8459]],[\"hksearow\",[10533]],[\"hkswarow\",[10534]],[\"hoarr\",[8703]],[\"homtht\",[8763]],[\"hookleftarrow\",[8617]],[\"hookrightarrow\",[8618]],[\"hopf\",[120153]],[\"Hopf\",[8461]],[\"horbar\",[8213]],[\"HorizontalLine\",[9472]],[\"hscr\",[119997]],[\"Hscr\",[8459]],[\"hslash\",[8463]],[\"Hstrok\",[294]],[\"hstrok\",[295]],[\"HumpDownHump\",[8782]],[\"HumpEqual\",[8783]],[\"hybull\",[8259]],[\"hyphen\",[8208]],[\"Iacute\",[205]],[\"iacute\",[237]],[\"ic\",[8291]],[\"Icirc\",[206]],[\"icirc\",[238]],[\"Icy\",[1048]],[\"icy\",[1080]],[\"Idot\",[304]],[\"IEcy\",[1045]],[\"iecy\",[1077]],[\"iexcl\",[161]],[\"iff\",[8660]],[\"ifr\",[120102]],[\"Ifr\",[8465]],[\"Igrave\",[204]],[\"igrave\",[236]],[\"ii\",[8520]],[\"iiiint\",[10764]],[\"iiint\",[8749]],[\"iinfin\",[10716]],[\"iiota\",[8489]],[\"IJlig\",[306]],[\"ijlig\",[307]],[\"Imacr\",[298]],[\"imacr\",[299]],[\"image\",[8465]],[\"ImaginaryI\",[8520]],[\"imagline\",[8464]],[\"imagpart\",[8465]],[\"imath\",[305]],[\"Im\",[8465]],[\"imof\",[8887]],[\"imped\",[437]],[\"Implies\",[8658]],[\"incare\",[8453]],[\"in\",[8712]],[\"infin\",[8734]],[\"infintie\",[10717]],[\"inodot\",[305]],[\"intcal\",[8890]],[\"int\",[8747]],[\"Int\",[8748]],[\"integers\",[8484]],[\"Integral\",[8747]],[\"intercal\",[8890]],[\"Intersection\",[8898]],[\"intlarhk\",[10775]],[\"intprod\",[10812]],[\"InvisibleComma\",[8291]],[\"InvisibleTimes\",[8290]],[\"IOcy\",[1025]],[\"iocy\",[1105]],[\"Iogon\",[302]],[\"iogon\",[303]],[\"Iopf\",[120128]],[\"iopf\",[120154]],[\"Iota\",[921]],[\"iota\",[953]],[\"iprod\",[10812]],[\"iquest\",[191]],[\"iscr\",[119998]],[\"Iscr\",[8464]],[\"isin\",[8712]],[\"isindot\",[8949]],[\"isinE\",[8953]],[\"isins\",[8948]],[\"isinsv\",[8947]],[\"isinv\",[8712]],[\"it\",[8290]],[\"Itilde\",[296]],[\"itilde\",[297]],[\"Iukcy\",[1030]],[\"iukcy\",[1110]],[\"Iuml\",[207]],[\"iuml\",[239]],[\"Jcirc\",[308]],[\"jcirc\",[309]],[\"Jcy\",[1049]],[\"jcy\",[1081]],[\"Jfr\",[120077]],[\"jfr\",[120103]],[\"jmath\",[567]],[\"Jopf\",[120129]],[\"jopf\",[120155]],[\"Jscr\",[119973]],[\"jscr\",[119999]],[\"Jsercy\",[1032]],[\"jsercy\",[1112]],[\"Jukcy\",[1028]],[\"jukcy\",[1108]],[\"Kappa\",[922]],[\"kappa\",[954]],[\"kappav\",[1008]],[\"Kcedil\",[310]],[\"kcedil\",[311]],[\"Kcy\",[1050]],[\"kcy\",[1082]],[\"Kfr\",[120078]],[\"kfr\",[120104]],[\"kgreen\",[312]],[\"KHcy\",[1061]],[\"khcy\",[1093]],[\"KJcy\",[1036]],[\"kjcy\",[1116]],[\"Kopf\",[120130]],[\"kopf\",[120156]],[\"Kscr\",[119974]],[\"kscr\",[12e4]],[\"lAarr\",[8666]],[\"Lacute\",[313]],[\"lacute\",[314]],[\"laemptyv\",[10676]],[\"lagran\",[8466]],[\"Lambda\",[923]],[\"lambda\",[955]],[\"lang\",[10216]],[\"Lang\",[10218]],[\"langd\",[10641]],[\"langle\",[10216]],[\"lap\",[10885]],[\"Laplacetrf\",[8466]],[\"laquo\",[171]],[\"larrb\",[8676]],[\"larrbfs\",[10527]],[\"larr\",[8592]],[\"Larr\",[8606]],[\"lArr\",[8656]],[\"larrfs\",[10525]],[\"larrhk\",[8617]],[\"larrlp\",[8619]],[\"larrpl\",[10553]],[\"larrsim\",[10611]],[\"larrtl\",[8610]],[\"latail\",[10521]],[\"lAtail\",[10523]],[\"lat\",[10923]],[\"late\",[10925]],[\"lates\",[10925,65024]],[\"lbarr\",[10508]],[\"lBarr\",[10510]],[\"lbbrk\",[10098]],[\"lbrace\",[123]],[\"lbrack\",[91]],[\"lbrke\",[10635]],[\"lbrksld\",[10639]],[\"lbrkslu\",[10637]],[\"Lcaron\",[317]],[\"lcaron\",[318]],[\"Lcedil\",[315]],[\"lcedil\",[316]],[\"lceil\",[8968]],[\"lcub\",[123]],[\"Lcy\",[1051]],[\"lcy\",[1083]],[\"ldca\",[10550]],[\"ldquo\",[8220]],[\"ldquor\",[8222]],[\"ldrdhar\",[10599]],[\"ldrushar\",[10571]],[\"ldsh\",[8626]],[\"le\",[8804]],[\"lE\",[8806]],[\"LeftAngleBracket\",[10216]],[\"LeftArrowBar\",[8676]],[\"leftarrow\",[8592]],[\"LeftArrow\",[8592]],[\"Leftarrow\",[8656]],[\"LeftArrowRightArrow\",[8646]],[\"leftarrowtail\",[8610]],[\"LeftCeiling\",[8968]],[\"LeftDoubleBracket\",[10214]],[\"LeftDownTeeVector\",[10593]],[\"LeftDownVectorBar\",[10585]],[\"LeftDownVector\",[8643]],[\"LeftFloor\",[8970]],[\"leftharpoondown\",[8637]],[\"leftharpoonup\",[8636]],[\"leftleftarrows\",[8647]],[\"leftrightarrow\",[8596]],[\"LeftRightArrow\",[8596]],[\"Leftrightarrow\",[8660]],[\"leftrightarrows\",[8646]],[\"leftrightharpoons\",[8651]],[\"leftrightsquigarrow\",[8621]],[\"LeftRightVector\",[10574]],[\"LeftTeeArrow\",[8612]],[\"LeftTee\",[8867]],[\"LeftTeeVector\",[10586]],[\"leftthreetimes\",[8907]],[\"LeftTriangleBar\",[10703]],[\"LeftTriangle\",[8882]],[\"LeftTriangleEqual\",[8884]],[\"LeftUpDownVector\",[10577]],[\"LeftUpTeeVector\",[10592]],[\"LeftUpVectorBar\",[10584]],[\"LeftUpVector\",[8639]],[\"LeftVectorBar\",[10578]],[\"LeftVector\",[8636]],[\"lEg\",[10891]],[\"leg\",[8922]],[\"leq\",[8804]],[\"leqq\",[8806]],[\"leqslant\",[10877]],[\"lescc\",[10920]],[\"les\",[10877]],[\"lesdot\",[10879]],[\"lesdoto\",[10881]],[\"lesdotor\",[10883]],[\"lesg\",[8922,65024]],[\"lesges\",[10899]],[\"lessapprox\",[10885]],[\"lessdot\",[8918]],[\"lesseqgtr\",[8922]],[\"lesseqqgtr\",[10891]],[\"LessEqualGreater\",[8922]],[\"LessFullEqual\",[8806]],[\"LessGreater\",[8822]],[\"lessgtr\",[8822]],[\"LessLess\",[10913]],[\"lesssim\",[8818]],[\"LessSlantEqual\",[10877]],[\"LessTilde\",[8818]],[\"lfisht\",[10620]],[\"lfloor\",[8970]],[\"Lfr\",[120079]],[\"lfr\",[120105]],[\"lg\",[8822]],[\"lgE\",[10897]],[\"lHar\",[10594]],[\"lhard\",[8637]],[\"lharu\",[8636]],[\"lharul\",[10602]],[\"lhblk\",[9604]],[\"LJcy\",[1033]],[\"ljcy\",[1113]],[\"llarr\",[8647]],[\"ll\",[8810]],[\"Ll\",[8920]],[\"llcorner\",[8990]],[\"Lleftarrow\",[8666]],[\"llhard\",[10603]],[\"lltri\",[9722]],[\"Lmidot\",[319]],[\"lmidot\",[320]],[\"lmoustache\",[9136]],[\"lmoust\",[9136]],[\"lnap\",[10889]],[\"lnapprox\",[10889]],[\"lne\",[10887]],[\"lnE\",[8808]],[\"lneq\",[10887]],[\"lneqq\",[8808]],[\"lnsim\",[8934]],[\"loang\",[10220]],[\"loarr\",[8701]],[\"lobrk\",[10214]],[\"longleftarrow\",[10229]],[\"LongLeftArrow\",[10229]],[\"Longleftarrow\",[10232]],[\"longleftrightarrow\",[10231]],[\"LongLeftRightArrow\",[10231]],[\"Longleftrightarrow\",[10234]],[\"longmapsto\",[10236]],[\"longrightarrow\",[10230]],[\"LongRightArrow\",[10230]],[\"Longrightarrow\",[10233]],[\"looparrowleft\",[8619]],[\"looparrowright\",[8620]],[\"lopar\",[10629]],[\"Lopf\",[120131]],[\"lopf\",[120157]],[\"loplus\",[10797]],[\"lotimes\",[10804]],[\"lowast\",[8727]],[\"lowbar\",[95]],[\"LowerLeftArrow\",[8601]],[\"LowerRightArrow\",[8600]],[\"loz\",[9674]],[\"lozenge\",[9674]],[\"lozf\",[10731]],[\"lpar\",[40]],[\"lparlt\",[10643]],[\"lrarr\",[8646]],[\"lrcorner\",[8991]],[\"lrhar\",[8651]],[\"lrhard\",[10605]],[\"lrm\",[8206]],[\"lrtri\",[8895]],[\"lsaquo\",[8249]],[\"lscr\",[120001]],[\"Lscr\",[8466]],[\"lsh\",[8624]],[\"Lsh\",[8624]],[\"lsim\",[8818]],[\"lsime\",[10893]],[\"lsimg\",[10895]],[\"lsqb\",[91]],[\"lsquo\",[8216]],[\"lsquor\",[8218]],[\"Lstrok\",[321]],[\"lstrok\",[322]],[\"ltcc\",[10918]],[\"ltcir\",[10873]],[\"lt\",[60]],[\"LT\",[60]],[\"Lt\",[8810]],[\"ltdot\",[8918]],[\"lthree\",[8907]],[\"ltimes\",[8905]],[\"ltlarr\",[10614]],[\"ltquest\",[10875]],[\"ltri\",[9667]],[\"ltrie\",[8884]],[\"ltrif\",[9666]],[\"ltrPar\",[10646]],[\"lurdshar\",[10570]],[\"luruhar\",[10598]],[\"lvertneqq\",[8808,65024]],[\"lvnE\",[8808,65024]],[\"macr\",[175]],[\"male\",[9794]],[\"malt\",[10016]],[\"maltese\",[10016]],[\"Map\",[10501]],[\"map\",[8614]],[\"mapsto\",[8614]],[\"mapstodown\",[8615]],[\"mapstoleft\",[8612]],[\"mapstoup\",[8613]],[\"marker\",[9646]],[\"mcomma\",[10793]],[\"Mcy\",[1052]],[\"mcy\",[1084]],[\"mdash\",[8212]],[\"mDDot\",[8762]],[\"measuredangle\",[8737]],[\"MediumSpace\",[8287]],[\"Mellintrf\",[8499]],[\"Mfr\",[120080]],[\"mfr\",[120106]],[\"mho\",[8487]],[\"micro\",[181]],[\"midast\",[42]],[\"midcir\",[10992]],[\"mid\",[8739]],[\"middot\",[183]],[\"minusb\",[8863]],[\"minus\",[8722]],[\"minusd\",[8760]],[\"minusdu\",[10794]],[\"MinusPlus\",[8723]],[\"mlcp\",[10971]],[\"mldr\",[8230]],[\"mnplus\",[8723]],[\"models\",[8871]],[\"Mopf\",[120132]],[\"mopf\",[120158]],[\"mp\",[8723]],[\"mscr\",[120002]],[\"Mscr\",[8499]],[\"mstpos\",[8766]],[\"Mu\",[924]],[\"mu\",[956]],[\"multimap\",[8888]],[\"mumap\",[8888]],[\"nabla\",[8711]],[\"Nacute\",[323]],[\"nacute\",[324]],[\"nang\",[8736,8402]],[\"nap\",[8777]],[\"napE\",[10864,824]],[\"napid\",[8779,824]],[\"napos\",[329]],[\"napprox\",[8777]],[\"natural\",[9838]],[\"naturals\",[8469]],[\"natur\",[9838]],[\"nbsp\",[160]],[\"nbump\",[8782,824]],[\"nbumpe\",[8783,824]],[\"ncap\",[10819]],[\"Ncaron\",[327]],[\"ncaron\",[328]],[\"Ncedil\",[325]],[\"ncedil\",[326]],[\"ncong\",[8775]],[\"ncongdot\",[10861,824]],[\"ncup\",[10818]],[\"Ncy\",[1053]],[\"ncy\",[1085]],[\"ndash\",[8211]],[\"nearhk\",[10532]],[\"nearr\",[8599]],[\"neArr\",[8663]],[\"nearrow\",[8599]],[\"ne\",[8800]],[\"nedot\",[8784,824]],[\"NegativeMediumSpace\",[8203]],[\"NegativeThickSpace\",[8203]],[\"NegativeThinSpace\",[8203]],[\"NegativeVeryThinSpace\",[8203]],[\"nequiv\",[8802]],[\"nesear\",[10536]],[\"nesim\",[8770,824]],[\"NestedGreaterGreater\",[8811]],[\"NestedLessLess\",[8810]],[\"nexist\",[8708]],[\"nexists\",[8708]],[\"Nfr\",[120081]],[\"nfr\",[120107]],[\"ngE\",[8807,824]],[\"nge\",[8817]],[\"ngeq\",[8817]],[\"ngeqq\",[8807,824]],[\"ngeqslant\",[10878,824]],[\"nges\",[10878,824]],[\"nGg\",[8921,824]],[\"ngsim\",[8821]],[\"nGt\",[8811,8402]],[\"ngt\",[8815]],[\"ngtr\",[8815]],[\"nGtv\",[8811,824]],[\"nharr\",[8622]],[\"nhArr\",[8654]],[\"nhpar\",[10994]],[\"ni\",[8715]],[\"nis\",[8956]],[\"nisd\",[8954]],[\"niv\",[8715]],[\"NJcy\",[1034]],[\"njcy\",[1114]],[\"nlarr\",[8602]],[\"nlArr\",[8653]],[\"nldr\",[8229]],[\"nlE\",[8806,824]],[\"nle\",[8816]],[\"nleftarrow\",[8602]],[\"nLeftarrow\",[8653]],[\"nleftrightarrow\",[8622]],[\"nLeftrightarrow\",[8654]],[\"nleq\",[8816]],[\"nleqq\",[8806,824]],[\"nleqslant\",[10877,824]],[\"nles\",[10877,824]],[\"nless\",[8814]],[\"nLl\",[8920,824]],[\"nlsim\",[8820]],[\"nLt\",[8810,8402]],[\"nlt\",[8814]],[\"nltri\",[8938]],[\"nltrie\",[8940]],[\"nLtv\",[8810,824]],[\"nmid\",[8740]],[\"NoBreak\",[8288]],[\"NonBreakingSpace\",[160]],[\"nopf\",[120159]],[\"Nopf\",[8469]],[\"Not\",[10988]],[\"not\",[172]],[\"NotCongruent\",[8802]],[\"NotCupCap\",[8813]],[\"NotDoubleVerticalBar\",[8742]],[\"NotElement\",[8713]],[\"NotEqual\",[8800]],[\"NotEqualTilde\",[8770,824]],[\"NotExists\",[8708]],[\"NotGreater\",[8815]],[\"NotGreaterEqual\",[8817]],[\"NotGreaterFullEqual\",[8807,824]],[\"NotGreaterGreater\",[8811,824]],[\"NotGreaterLess\",[8825]],[\"NotGreaterSlantEqual\",[10878,824]],[\"NotGreaterTilde\",[8821]],[\"NotHumpDownHump\",[8782,824]],[\"NotHumpEqual\",[8783,824]],[\"notin\",[8713]],[\"notindot\",[8949,824]],[\"notinE\",[8953,824]],[\"notinva\",[8713]],[\"notinvb\",[8951]],[\"notinvc\",[8950]],[\"NotLeftTriangleBar\",[10703,824]],[\"NotLeftTriangle\",[8938]],[\"NotLeftTriangleEqual\",[8940]],[\"NotLess\",[8814]],[\"NotLessEqual\",[8816]],[\"NotLessGreater\",[8824]],[\"NotLessLess\",[8810,824]],[\"NotLessSlantEqual\",[10877,824]],[\"NotLessTilde\",[8820]],[\"NotNestedGreaterGreater\",[10914,824]],[\"NotNestedLessLess\",[10913,824]],[\"notni\",[8716]],[\"notniva\",[8716]],[\"notnivb\",[8958]],[\"notnivc\",[8957]],[\"NotPrecedes\",[8832]],[\"NotPrecedesEqual\",[10927,824]],[\"NotPrecedesSlantEqual\",[8928]],[\"NotReverseElement\",[8716]],[\"NotRightTriangleBar\",[10704,824]],[\"NotRightTriangle\",[8939]],[\"NotRightTriangleEqual\",[8941]],[\"NotSquareSubset\",[8847,824]],[\"NotSquareSubsetEqual\",[8930]],[\"NotSquareSuperset\",[8848,824]],[\"NotSquareSupersetEqual\",[8931]],[\"NotSubset\",[8834,8402]],[\"NotSubsetEqual\",[8840]],[\"NotSucceeds\",[8833]],[\"NotSucceedsEqual\",[10928,824]],[\"NotSucceedsSlantEqual\",[8929]],[\"NotSucceedsTilde\",[8831,824]],[\"NotSuperset\",[8835,8402]],[\"NotSupersetEqual\",[8841]],[\"NotTilde\",[8769]],[\"NotTildeEqual\",[8772]],[\"NotTildeFullEqual\",[8775]],[\"NotTildeTilde\",[8777]],[\"NotVerticalBar\",[8740]],[\"nparallel\",[8742]],[\"npar\",[8742]],[\"nparsl\",[11005,8421]],[\"npart\",[8706,824]],[\"npolint\",[10772]],[\"npr\",[8832]],[\"nprcue\",[8928]],[\"nprec\",[8832]],[\"npreceq\",[10927,824]],[\"npre\",[10927,824]],[\"nrarrc\",[10547,824]],[\"nrarr\",[8603]],[\"nrArr\",[8655]],[\"nrarrw\",[8605,824]],[\"nrightarrow\",[8603]],[\"nRightarrow\",[8655]],[\"nrtri\",[8939]],[\"nrtrie\",[8941]],[\"nsc\",[8833]],[\"nsccue\",[8929]],[\"nsce\",[10928,824]],[\"Nscr\",[119977]],[\"nscr\",[120003]],[\"nshortmid\",[8740]],[\"nshortparallel\",[8742]],[\"nsim\",[8769]],[\"nsime\",[8772]],[\"nsimeq\",[8772]],[\"nsmid\",[8740]],[\"nspar\",[8742]],[\"nsqsube\",[8930]],[\"nsqsupe\",[8931]],[\"nsub\",[8836]],[\"nsubE\",[10949,824]],[\"nsube\",[8840]],[\"nsubset\",[8834,8402]],[\"nsubseteq\",[8840]],[\"nsubseteqq\",[10949,824]],[\"nsucc\",[8833]],[\"nsucceq\",[10928,824]],[\"nsup\",[8837]],[\"nsupE\",[10950,824]],[\"nsupe\",[8841]],[\"nsupset\",[8835,8402]],[\"nsupseteq\",[8841]],[\"nsupseteqq\",[10950,824]],[\"ntgl\",[8825]],[\"Ntilde\",[209]],[\"ntilde\",[241]],[\"ntlg\",[8824]],[\"ntriangleleft\",[8938]],[\"ntrianglelefteq\",[8940]],[\"ntriangleright\",[8939]],[\"ntrianglerighteq\",[8941]],[\"Nu\",[925]],[\"nu\",[957]],[\"num\",[35]],[\"numero\",[8470]],[\"numsp\",[8199]],[\"nvap\",[8781,8402]],[\"nvdash\",[8876]],[\"nvDash\",[8877]],[\"nVdash\",[8878]],[\"nVDash\",[8879]],[\"nvge\",[8805,8402]],[\"nvgt\",[62,8402]],[\"nvHarr\",[10500]],[\"nvinfin\",[10718]],[\"nvlArr\",[10498]],[\"nvle\",[8804,8402]],[\"nvlt\",[60,8402]],[\"nvltrie\",[8884,8402]],[\"nvrArr\",[10499]],[\"nvrtrie\",[8885,8402]],[\"nvsim\",[8764,8402]],[\"nwarhk\",[10531]],[\"nwarr\",[8598]],[\"nwArr\",[8662]],[\"nwarrow\",[8598]],[\"nwnear\",[10535]],[\"Oacute\",[211]],[\"oacute\",[243]],[\"oast\",[8859]],[\"Ocirc\",[212]],[\"ocirc\",[244]],[\"ocir\",[8858]],[\"Ocy\",[1054]],[\"ocy\",[1086]],[\"odash\",[8861]],[\"Odblac\",[336]],[\"odblac\",[337]],[\"odiv\",[10808]],[\"odot\",[8857]],[\"odsold\",[10684]],[\"OElig\",[338]],[\"oelig\",[339]],[\"ofcir\",[10687]],[\"Ofr\",[120082]],[\"ofr\",[120108]],[\"ogon\",[731]],[\"Ograve\",[210]],[\"ograve\",[242]],[\"ogt\",[10689]],[\"ohbar\",[10677]],[\"ohm\",[937]],[\"oint\",[8750]],[\"olarr\",[8634]],[\"olcir\",[10686]],[\"olcross\",[10683]],[\"oline\",[8254]],[\"olt\",[10688]],[\"Omacr\",[332]],[\"omacr\",[333]],[\"Omega\",[937]],[\"omega\",[969]],[\"Omicron\",[927]],[\"omicron\",[959]],[\"omid\",[10678]],[\"ominus\",[8854]],[\"Oopf\",[120134]],[\"oopf\",[120160]],[\"opar\",[10679]],[\"OpenCurlyDoubleQuote\",[8220]],[\"OpenCurlyQuote\",[8216]],[\"operp\",[10681]],[\"oplus\",[8853]],[\"orarr\",[8635]],[\"Or\",[10836]],[\"or\",[8744]],[\"ord\",[10845]],[\"order\",[8500]],[\"orderof\",[8500]],[\"ordf\",[170]],[\"ordm\",[186]],[\"origof\",[8886]],[\"oror\",[10838]],[\"orslope\",[10839]],[\"orv\",[10843]],[\"oS\",[9416]],[\"Oscr\",[119978]],[\"oscr\",[8500]],[\"Oslash\",[216]],[\"oslash\",[248]],[\"osol\",[8856]],[\"Otilde\",[213]],[\"otilde\",[245]],[\"otimesas\",[10806]],[\"Otimes\",[10807]],[\"otimes\",[8855]],[\"Ouml\",[214]],[\"ouml\",[246]],[\"ovbar\",[9021]],[\"OverBar\",[8254]],[\"OverBrace\",[9182]],[\"OverBracket\",[9140]],[\"OverParenthesis\",[9180]],[\"para\",[182]],[\"parallel\",[8741]],[\"par\",[8741]],[\"parsim\",[10995]],[\"parsl\",[11005]],[\"part\",[8706]],[\"PartialD\",[8706]],[\"Pcy\",[1055]],[\"pcy\",[1087]],[\"percnt\",[37]],[\"period\",[46]],[\"permil\",[8240]],[\"perp\",[8869]],[\"pertenk\",[8241]],[\"Pfr\",[120083]],[\"pfr\",[120109]],[\"Phi\",[934]],[\"phi\",[966]],[\"phiv\",[981]],[\"phmmat\",[8499]],[\"phone\",[9742]],[\"Pi\",[928]],[\"pi\",[960]],[\"pitchfork\",[8916]],[\"piv\",[982]],[\"planck\",[8463]],[\"planckh\",[8462]],[\"plankv\",[8463]],[\"plusacir\",[10787]],[\"plusb\",[8862]],[\"pluscir\",[10786]],[\"plus\",[43]],[\"plusdo\",[8724]],[\"plusdu\",[10789]],[\"pluse\",[10866]],[\"PlusMinus\",[177]],[\"plusmn\",[177]],[\"plussim\",[10790]],[\"plustwo\",[10791]],[\"pm\",[177]],[\"Poincareplane\",[8460]],[\"pointint\",[10773]],[\"popf\",[120161]],[\"Popf\",[8473]],[\"pound\",[163]],[\"prap\",[10935]],[\"Pr\",[10939]],[\"pr\",[8826]],[\"prcue\",[8828]],[\"precapprox\",[10935]],[\"prec\",[8826]],[\"preccurlyeq\",[8828]],[\"Precedes\",[8826]],[\"PrecedesEqual\",[10927]],[\"PrecedesSlantEqual\",[8828]],[\"PrecedesTilde\",[8830]],[\"preceq\",[10927]],[\"precnapprox\",[10937]],[\"precneqq\",[10933]],[\"precnsim\",[8936]],[\"pre\",[10927]],[\"prE\",[10931]],[\"precsim\",[8830]],[\"prime\",[8242]],[\"Prime\",[8243]],[\"primes\",[8473]],[\"prnap\",[10937]],[\"prnE\",[10933]],[\"prnsim\",[8936]],[\"prod\",[8719]],[\"Product\",[8719]],[\"profalar\",[9006]],[\"profline\",[8978]],[\"profsurf\",[8979]],[\"prop\",[8733]],[\"Proportional\",[8733]],[\"Proportion\",[8759]],[\"propto\",[8733]],[\"prsim\",[8830]],[\"prurel\",[8880]],[\"Pscr\",[119979]],[\"pscr\",[120005]],[\"Psi\",[936]],[\"psi\",[968]],[\"puncsp\",[8200]],[\"Qfr\",[120084]],[\"qfr\",[120110]],[\"qint\",[10764]],[\"qopf\",[120162]],[\"Qopf\",[8474]],[\"qprime\",[8279]],[\"Qscr\",[119980]],[\"qscr\",[120006]],[\"quaternions\",[8461]],[\"quatint\",[10774]],[\"quest\",[63]],[\"questeq\",[8799]],[\"quot\",[34]],[\"QUOT\",[34]],[\"rAarr\",[8667]],[\"race\",[8765,817]],[\"Racute\",[340]],[\"racute\",[341]],[\"radic\",[8730]],[\"raemptyv\",[10675]],[\"rang\",[10217]],[\"Rang\",[10219]],[\"rangd\",[10642]],[\"range\",[10661]],[\"rangle\",[10217]],[\"raquo\",[187]],[\"rarrap\",[10613]],[\"rarrb\",[8677]],[\"rarrbfs\",[10528]],[\"rarrc\",[10547]],[\"rarr\",[8594]],[\"Rarr\",[8608]],[\"rArr\",[8658]],[\"rarrfs\",[10526]],[\"rarrhk\",[8618]],[\"rarrlp\",[8620]],[\"rarrpl\",[10565]],[\"rarrsim\",[10612]],[\"Rarrtl\",[10518]],[\"rarrtl\",[8611]],[\"rarrw\",[8605]],[\"ratail\",[10522]],[\"rAtail\",[10524]],[\"ratio\",[8758]],[\"rationals\",[8474]],[\"rbarr\",[10509]],[\"rBarr\",[10511]],[\"RBarr\",[10512]],[\"rbbrk\",[10099]],[\"rbrace\",[125]],[\"rbrack\",[93]],[\"rbrke\",[10636]],[\"rbrksld\",[10638]],[\"rbrkslu\",[10640]],[\"Rcaron\",[344]],[\"rcaron\",[345]],[\"Rcedil\",[342]],[\"rcedil\",[343]],[\"rceil\",[8969]],[\"rcub\",[125]],[\"Rcy\",[1056]],[\"rcy\",[1088]],[\"rdca\",[10551]],[\"rdldhar\",[10601]],[\"rdquo\",[8221]],[\"rdquor\",[8221]],[\"CloseCurlyDoubleQuote\",[8221]],[\"rdsh\",[8627]],[\"real\",[8476]],[\"realine\",[8475]],[\"realpart\",[8476]],[\"reals\",[8477]],[\"Re\",[8476]],[\"rect\",[9645]],[\"reg\",[174]],[\"REG\",[174]],[\"ReverseElement\",[8715]],[\"ReverseEquilibrium\",[8651]],[\"ReverseUpEquilibrium\",[10607]],[\"rfisht\",[10621]],[\"rfloor\",[8971]],[\"rfr\",[120111]],[\"Rfr\",[8476]],[\"rHar\",[10596]],[\"rhard\",[8641]],[\"rharu\",[8640]],[\"rharul\",[10604]],[\"Rho\",[929]],[\"rho\",[961]],[\"rhov\",[1009]],[\"RightAngleBracket\",[10217]],[\"RightArrowBar\",[8677]],[\"rightarrow\",[8594]],[\"RightArrow\",[8594]],[\"Rightarrow\",[8658]],[\"RightArrowLeftArrow\",[8644]],[\"rightarrowtail\",[8611]],[\"RightCeiling\",[8969]],[\"RightDoubleBracket\",[10215]],[\"RightDownTeeVector\",[10589]],[\"RightDownVectorBar\",[10581]],[\"RightDownVector\",[8642]],[\"RightFloor\",[8971]],[\"rightharpoondown\",[8641]],[\"rightharpoonup\",[8640]],[\"rightleftarrows\",[8644]],[\"rightleftharpoons\",[8652]],[\"rightrightarrows\",[8649]],[\"rightsquigarrow\",[8605]],[\"RightTeeArrow\",[8614]],[\"RightTee\",[8866]],[\"RightTeeVector\",[10587]],[\"rightthreetimes\",[8908]],[\"RightTriangleBar\",[10704]],[\"RightTriangle\",[8883]],[\"RightTriangleEqual\",[8885]],[\"RightUpDownVector\",[10575]],[\"RightUpTeeVector\",[10588]],[\"RightUpVectorBar\",[10580]],[\"RightUpVector\",[8638]],[\"RightVectorBar\",[10579]],[\"RightVector\",[8640]],[\"ring\",[730]],[\"risingdotseq\",[8787]],[\"rlarr\",[8644]],[\"rlhar\",[8652]],[\"rlm\",[8207]],[\"rmoustache\",[9137]],[\"rmoust\",[9137]],[\"rnmid\",[10990]],[\"roang\",[10221]],[\"roarr\",[8702]],[\"robrk\",[10215]],[\"ropar\",[10630]],[\"ropf\",[120163]],[\"Ropf\",[8477]],[\"roplus\",[10798]],[\"rotimes\",[10805]],[\"RoundImplies\",[10608]],[\"rpar\",[41]],[\"rpargt\",[10644]],[\"rppolint\",[10770]],[\"rrarr\",[8649]],[\"Rrightarrow\",[8667]],[\"rsaquo\",[8250]],[\"rscr\",[120007]],[\"Rscr\",[8475]],[\"rsh\",[8625]],[\"Rsh\",[8625]],[\"rsqb\",[93]],[\"rsquo\",[8217]],[\"rsquor\",[8217]],[\"CloseCurlyQuote\",[8217]],[\"rthree\",[8908]],[\"rtimes\",[8906]],[\"rtri\",[9657]],[\"rtrie\",[8885]],[\"rtrif\",[9656]],[\"rtriltri\",[10702]],[\"RuleDelayed\",[10740]],[\"ruluhar\",[10600]],[\"rx\",[8478]],[\"Sacute\",[346]],[\"sacute\",[347]],[\"sbquo\",[8218]],[\"scap\",[10936]],[\"Scaron\",[352]],[\"scaron\",[353]],[\"Sc\",[10940]],[\"sc\",[8827]],[\"sccue\",[8829]],[\"sce\",[10928]],[\"scE\",[10932]],[\"Scedil\",[350]],[\"scedil\",[351]],[\"Scirc\",[348]],[\"scirc\",[349]],[\"scnap\",[10938]],[\"scnE\",[10934]],[\"scnsim\",[8937]],[\"scpolint\",[10771]],[\"scsim\",[8831]],[\"Scy\",[1057]],[\"scy\",[1089]],[\"sdotb\",[8865]],[\"sdot\",[8901]],[\"sdote\",[10854]],[\"searhk\",[10533]],[\"searr\",[8600]],[\"seArr\",[8664]],[\"searrow\",[8600]],[\"sect\",[167]],[\"semi\",[59]],[\"seswar\",[10537]],[\"setminus\",[8726]],[\"setmn\",[8726]],[\"sext\",[10038]],[\"Sfr\",[120086]],[\"sfr\",[120112]],[\"sfrown\",[8994]],[\"sharp\",[9839]],[\"SHCHcy\",[1065]],[\"shchcy\",[1097]],[\"SHcy\",[1064]],[\"shcy\",[1096]],[\"ShortDownArrow\",[8595]],[\"ShortLeftArrow\",[8592]],[\"shortmid\",[8739]],[\"shortparallel\",[8741]],[\"ShortRightArrow\",[8594]],[\"ShortUpArrow\",[8593]],[\"shy\",[173]],[\"Sigma\",[931]],[\"sigma\",[963]],[\"sigmaf\",[962]],[\"sigmav\",[962]],[\"sim\",[8764]],[\"simdot\",[10858]],[\"sime\",[8771]],[\"simeq\",[8771]],[\"simg\",[10910]],[\"simgE\",[10912]],[\"siml\",[10909]],[\"simlE\",[10911]],[\"simne\",[8774]],[\"simplus\",[10788]],[\"simrarr\",[10610]],[\"slarr\",[8592]],[\"SmallCircle\",[8728]],[\"smallsetminus\",[8726]],[\"smashp\",[10803]],[\"smeparsl\",[10724]],[\"smid\",[8739]],[\"smile\",[8995]],[\"smt\",[10922]],[\"smte\",[10924]],[\"smtes\",[10924,65024]],[\"SOFTcy\",[1068]],[\"softcy\",[1100]],[\"solbar\",[9023]],[\"solb\",[10692]],[\"sol\",[47]],[\"Sopf\",[120138]],[\"sopf\",[120164]],[\"spades\",[9824]],[\"spadesuit\",[9824]],[\"spar\",[8741]],[\"sqcap\",[8851]],[\"sqcaps\",[8851,65024]],[\"sqcup\",[8852]],[\"sqcups\",[8852,65024]],[\"Sqrt\",[8730]],[\"sqsub\",[8847]],[\"sqsube\",[8849]],[\"sqsubset\",[8847]],[\"sqsubseteq\",[8849]],[\"sqsup\",[8848]],[\"sqsupe\",[8850]],[\"sqsupset\",[8848]],[\"sqsupseteq\",[8850]],[\"square\",[9633]],[\"Square\",[9633]],[\"SquareIntersection\",[8851]],[\"SquareSubset\",[8847]],[\"SquareSubsetEqual\",[8849]],[\"SquareSuperset\",[8848]],[\"SquareSupersetEqual\",[8850]],[\"SquareUnion\",[8852]],[\"squarf\",[9642]],[\"squ\",[9633]],[\"squf\",[9642]],[\"srarr\",[8594]],[\"Sscr\",[119982]],[\"sscr\",[120008]],[\"ssetmn\",[8726]],[\"ssmile\",[8995]],[\"sstarf\",[8902]],[\"Star\",[8902]],[\"star\",[9734]],[\"starf\",[9733]],[\"straightepsilon\",[1013]],[\"straightphi\",[981]],[\"strns\",[175]],[\"sub\",[8834]],[\"Sub\",[8912]],[\"subdot\",[10941]],[\"subE\",[10949]],[\"sube\",[8838]],[\"subedot\",[10947]],[\"submult\",[10945]],[\"subnE\",[10955]],[\"subne\",[8842]],[\"subplus\",[10943]],[\"subrarr\",[10617]],[\"subset\",[8834]],[\"Subset\",[8912]],[\"subseteq\",[8838]],[\"subseteqq\",[10949]],[\"SubsetEqual\",[8838]],[\"subsetneq\",[8842]],[\"subsetneqq\",[10955]],[\"subsim\",[10951]],[\"subsub\",[10965]],[\"subsup\",[10963]],[\"succapprox\",[10936]],[\"succ\",[8827]],[\"succcurlyeq\",[8829]],[\"Succeeds\",[8827]],[\"SucceedsEqual\",[10928]],[\"SucceedsSlantEqual\",[8829]],[\"SucceedsTilde\",[8831]],[\"succeq\",[10928]],[\"succnapprox\",[10938]],[\"succneqq\",[10934]],[\"succnsim\",[8937]],[\"succsim\",[8831]],[\"SuchThat\",[8715]],[\"sum\",[8721]],[\"Sum\",[8721]],[\"sung\",[9834]],[\"sup1\",[185]],[\"sup2\",[178]],[\"sup3\",[179]],[\"sup\",[8835]],[\"Sup\",[8913]],[\"supdot\",[10942]],[\"supdsub\",[10968]],[\"supE\",[10950]],[\"supe\",[8839]],[\"supedot\",[10948]],[\"Superset\",[8835]],[\"SupersetEqual\",[8839]],[\"suphsol\",[10185]],[\"suphsub\",[10967]],[\"suplarr\",[10619]],[\"supmult\",[10946]],[\"supnE\",[10956]],[\"supne\",[8843]],[\"supplus\",[10944]],[\"supset\",[8835]],[\"Supset\",[8913]],[\"supseteq\",[8839]],[\"supseteqq\",[10950]],[\"supsetneq\",[8843]],[\"supsetneqq\",[10956]],[\"supsim\",[10952]],[\"supsub\",[10964]],[\"supsup\",[10966]],[\"swarhk\",[10534]],[\"swarr\",[8601]],[\"swArr\",[8665]],[\"swarrow\",[8601]],[\"swnwar\",[10538]],[\"szlig\",[223]],[\"Tab\",[9]],[\"target\",[8982]],[\"Tau\",[932]],[\"tau\",[964]],[\"tbrk\",[9140]],[\"Tcaron\",[356]],[\"tcaron\",[357]],[\"Tcedil\",[354]],[\"tcedil\",[355]],[\"Tcy\",[1058]],[\"tcy\",[1090]],[\"tdot\",[8411]],[\"telrec\",[8981]],[\"Tfr\",[120087]],[\"tfr\",[120113]],[\"there4\",[8756]],[\"therefore\",[8756]],[\"Therefore\",[8756]],[\"Theta\",[920]],[\"theta\",[952]],[\"thetasym\",[977]],[\"thetav\",[977]],[\"thickapprox\",[8776]],[\"thicksim\",[8764]],[\"ThickSpace\",[8287,8202]],[\"ThinSpace\",[8201]],[\"thinsp\",[8201]],[\"thkap\",[8776]],[\"thksim\",[8764]],[\"THORN\",[222]],[\"thorn\",[254]],[\"tilde\",[732]],[\"Tilde\",[8764]],[\"TildeEqual\",[8771]],[\"TildeFullEqual\",[8773]],[\"TildeTilde\",[8776]],[\"timesbar\",[10801]],[\"timesb\",[8864]],[\"times\",[215]],[\"timesd\",[10800]],[\"tint\",[8749]],[\"toea\",[10536]],[\"topbot\",[9014]],[\"topcir\",[10993]],[\"top\",[8868]],[\"Topf\",[120139]],[\"topf\",[120165]],[\"topfork\",[10970]],[\"tosa\",[10537]],[\"tprime\",[8244]],[\"trade\",[8482]],[\"TRADE\",[8482]],[\"triangle\",[9653]],[\"triangledown\",[9663]],[\"triangleleft\",[9667]],[\"trianglelefteq\",[8884]],[\"triangleq\",[8796]],[\"triangleright\",[9657]],[\"trianglerighteq\",[8885]],[\"tridot\",[9708]],[\"trie\",[8796]],[\"triminus\",[10810]],[\"TripleDot\",[8411]],[\"triplus\",[10809]],[\"trisb\",[10701]],[\"tritime\",[10811]],[\"trpezium\",[9186]],[\"Tscr\",[119983]],[\"tscr\",[120009]],[\"TScy\",[1062]],[\"tscy\",[1094]],[\"TSHcy\",[1035]],[\"tshcy\",[1115]],[\"Tstrok\",[358]],[\"tstrok\",[359]],[\"twixt\",[8812]],[\"twoheadleftarrow\",[8606]],[\"twoheadrightarrow\",[8608]],[\"Uacute\",[218]],[\"uacute\",[250]],[\"uarr\",[8593]],[\"Uarr\",[8607]],[\"uArr\",[8657]],[\"Uarrocir\",[10569]],[\"Ubrcy\",[1038]],[\"ubrcy\",[1118]],[\"Ubreve\",[364]],[\"ubreve\",[365]],[\"Ucirc\",[219]],[\"ucirc\",[251]],[\"Ucy\",[1059]],[\"ucy\",[1091]],[\"udarr\",[8645]],[\"Udblac\",[368]],[\"udblac\",[369]],[\"udhar\",[10606]],[\"ufisht\",[10622]],[\"Ufr\",[120088]],[\"ufr\",[120114]],[\"Ugrave\",[217]],[\"ugrave\",[249]],[\"uHar\",[10595]],[\"uharl\",[8639]],[\"uharr\",[8638]],[\"uhblk\",[9600]],[\"ulcorn\",[8988]],[\"ulcorner\",[8988]],[\"ulcrop\",[8975]],[\"ultri\",[9720]],[\"Umacr\",[362]],[\"umacr\",[363]],[\"uml\",[168]],[\"UnderBar\",[95]],[\"UnderBrace\",[9183]],[\"UnderBracket\",[9141]],[\"UnderParenthesis\",[9181]],[\"Union\",[8899]],[\"UnionPlus\",[8846]],[\"Uogon\",[370]],[\"uogon\",[371]],[\"Uopf\",[120140]],[\"uopf\",[120166]],[\"UpArrowBar\",[10514]],[\"uparrow\",[8593]],[\"UpArrow\",[8593]],[\"Uparrow\",[8657]],[\"UpArrowDownArrow\",[8645]],[\"updownarrow\",[8597]],[\"UpDownArrow\",[8597]],[\"Updownarrow\",[8661]],[\"UpEquilibrium\",[10606]],[\"upharpoonleft\",[8639]],[\"upharpoonright\",[8638]],[\"uplus\",[8846]],[\"UpperLeftArrow\",[8598]],[\"UpperRightArrow\",[8599]],[\"upsi\",[965]],[\"Upsi\",[978]],[\"upsih\",[978]],[\"Upsilon\",[933]],[\"upsilon\",[965]],[\"UpTeeArrow\",[8613]],[\"UpTee\",[8869]],[\"upuparrows\",[8648]],[\"urcorn\",[8989]],[\"urcorner\",[8989]],[\"urcrop\",[8974]],[\"Uring\",[366]],[\"uring\",[367]],[\"urtri\",[9721]],[\"Uscr\",[119984]],[\"uscr\",[120010]],[\"utdot\",[8944]],[\"Utilde\",[360]],[\"utilde\",[361]],[\"utri\",[9653]],[\"utrif\",[9652]],[\"uuarr\",[8648]],[\"Uuml\",[220]],[\"uuml\",[252]],[\"uwangle\",[10663]],[\"vangrt\",[10652]],[\"varepsilon\",[1013]],[\"varkappa\",[1008]],[\"varnothing\",[8709]],[\"varphi\",[981]],[\"varpi\",[982]],[\"varpropto\",[8733]],[\"varr\",[8597]],[\"vArr\",[8661]],[\"varrho\",[1009]],[\"varsigma\",[962]],[\"varsubsetneq\",[8842,65024]],[\"varsubsetneqq\",[10955,65024]],[\"varsupsetneq\",[8843,65024]],[\"varsupsetneqq\",[10956,65024]],[\"vartheta\",[977]],[\"vartriangleleft\",[8882]],[\"vartriangleright\",[8883]],[\"vBar\",[10984]],[\"Vbar\",[10987]],[\"vBarv\",[10985]],[\"Vcy\",[1042]],[\"vcy\",[1074]],[\"vdash\",[8866]],[\"vDash\",[8872]],[\"Vdash\",[8873]],[\"VDash\",[8875]],[\"Vdashl\",[10982]],[\"veebar\",[8891]],[\"vee\",[8744]],[\"Vee\",[8897]],[\"veeeq\",[8794]],[\"vellip\",[8942]],[\"verbar\",[124]],[\"Verbar\",[8214]],[\"vert\",[124]],[\"Vert\",[8214]],[\"VerticalBar\",[8739]],[\"VerticalLine\",[124]],[\"VerticalSeparator\",[10072]],[\"VerticalTilde\",[8768]],[\"VeryThinSpace\",[8202]],[\"Vfr\",[120089]],[\"vfr\",[120115]],[\"vltri\",[8882]],[\"vnsub\",[8834,8402]],[\"vnsup\",[8835,8402]],[\"Vopf\",[120141]],[\"vopf\",[120167]],[\"vprop\",[8733]],[\"vrtri\",[8883]],[\"Vscr\",[119985]],[\"vscr\",[120011]],[\"vsubnE\",[10955,65024]],[\"vsubne\",[8842,65024]],[\"vsupnE\",[10956,65024]],[\"vsupne\",[8843,65024]],[\"Vvdash\",[8874]],[\"vzigzag\",[10650]],[\"Wcirc\",[372]],[\"wcirc\",[373]],[\"wedbar\",[10847]],[\"wedge\",[8743]],[\"Wedge\",[8896]],[\"wedgeq\",[8793]],[\"weierp\",[8472]],[\"Wfr\",[120090]],[\"wfr\",[120116]],[\"Wopf\",[120142]],[\"wopf\",[120168]],[\"wp\",[8472]],[\"wr\",[8768]],[\"wreath\",[8768]],[\"Wscr\",[119986]],[\"wscr\",[120012]],[\"xcap\",[8898]],[\"xcirc\",[9711]],[\"xcup\",[8899]],[\"xdtri\",[9661]],[\"Xfr\",[120091]],[\"xfr\",[120117]],[\"xharr\",[10231]],[\"xhArr\",[10234]],[\"Xi\",[926]],[\"xi\",[958]],[\"xlarr\",[10229]],[\"xlArr\",[10232]],[\"xmap\",[10236]],[\"xnis\",[8955]],[\"xodot\",[10752]],[\"Xopf\",[120143]],[\"xopf\",[120169]],[\"xoplus\",[10753]],[\"xotime\",[10754]],[\"xrarr\",[10230]],[\"xrArr\",[10233]],[\"Xscr\",[119987]],[\"xscr\",[120013]],[\"xsqcup\",[10758]],[\"xuplus\",[10756]],[\"xutri\",[9651]],[\"xvee\",[8897]],[\"xwedge\",[8896]],[\"Yacute\",[221]],[\"yacute\",[253]],[\"YAcy\",[1071]],[\"yacy\",[1103]],[\"Ycirc\",[374]],[\"ycirc\",[375]],[\"Ycy\",[1067]],[\"ycy\",[1099]],[\"yen\",[165]],[\"Yfr\",[120092]],[\"yfr\",[120118]],[\"YIcy\",[1031]],[\"yicy\",[1111]],[\"Yopf\",[120144]],[\"yopf\",[120170]],[\"Yscr\",[119988]],[\"yscr\",[120014]],[\"YUcy\",[1070]],[\"yucy\",[1102]],[\"yuml\",[255]],[\"Yuml\",[376]],[\"Zacute\",[377]],[\"zacute\",[378]],[\"Zcaron\",[381]],[\"zcaron\",[382]],[\"Zcy\",[1047]],[\"zcy\",[1079]],[\"Zdot\",[379]],[\"zdot\",[380]],[\"zeetrf\",[8488]],[\"ZeroWidthSpace\",[8203]],[\"Zeta\",[918]],[\"zeta\",[950]],[\"zfr\",[120119]],[\"Zfr\",[8488]],[\"ZHcy\",[1046]],[\"zhcy\",[1078]],[\"zigrarr\",[8669]],[\"zopf\",[120171]],[\"Zopf\",[8484]],[\"Zscr\",[119989]],[\"zscr\",[120015]],[\"zwj\",[8205]],[\"zwnj\",[8204]]],r={},o={};!function(e,t){for(var u=n.length,r=[];u--;){var o,a=n[u],i=a[0],l=a[1],c=l[0],s=c<32||c>126||62===c||60===c||38===c||34===c||39===c;if(s&&(o=t[c]=t[c]||{}),l[1]){var f=l[1];e[i]=String.fromCharCode(c)+String.fromCharCode(f),r.push(s&&(o[f]=i))}else e[i]=String.fromCharCode(c),r.push(s&&(o[\"\"]=i))}}(r,o),u.prototype.decode=function(e){return e&&e.length?e.replace(/&(#?[\\w\\d]+);?/g,function(e,t){var u;if(\"#\"===t.charAt(0)){var n=\"x\"===t.charAt(1)?parseInt(t.substr(2).toLowerCase(),16):parseInt(t.substr(1));isNaN(n)||n<-32768||n>65535||(u=String.fromCharCode(n))}else u=r[t];return u||e}):\"\"},u.decode=function(e){return(new u).decode(e)},u.prototype.encode=function(e){if(!e||!e.length)return\"\";for(var t=e.length,u=\"\",n=0;n126?\"&#\"+r+\";\":e.charAt(n),n++}return u},u.encodeNonUTF=function(e){return(new u).encodeNonUTF(e)},u.prototype.encodeNonASCII=function(e){if(!e||!e.length)return\"\";for(var t=e.length,u=\"\",n=0;n=48&&e<=55}function r(e){return 32===e||9===e||11===e||12===e||160===e||e>=5760&&d.indexOf(e)>=0}function o(e){return 10===e||13===e||8232===e||8233===e}function a(e){return e<=65535?String.fromCharCode(e):String.fromCharCode(Math.floor((e-65536)/1024)+55296)+String.fromCharCode((e-65536)%1024+56320)}function i(e){return e<128?D[e]:p.NonAsciiIdentifierStart.test(a(e))}function l(e){return e<128?h[e]:p.NonAsciiIdentifierPart.test(a(e))}function c(e){return e<128?D[e]:f.NonAsciiIdentifierStart.test(a(e))}function s(e){return e<128?h[e]:f.NonAsciiIdentifierPart.test(a(e))}var f,p,d,D,h,m;for(p={NonAsciiIdentifierStart:/[\\xAA\\xB5\\xBA\\xC0-\\xD6\\xD8-\\xF6\\xF8-\\u02C1\\u02C6-\\u02D1\\u02E0-\\u02E4\\u02EC\\u02EE\\u0370-\\u0374\\u0376\\u0377\\u037A-\\u037D\\u037F\\u0386\\u0388-\\u038A\\u038C\\u038E-\\u03A1\\u03A3-\\u03F5\\u03F7-\\u0481\\u048A-\\u052F\\u0531-\\u0556\\u0559\\u0561-\\u0587\\u05D0-\\u05EA\\u05F0-\\u05F2\\u0620-\\u064A\\u066E\\u066F\\u0671-\\u06D3\\u06D5\\u06E5\\u06E6\\u06EE\\u06EF\\u06FA-\\u06FC\\u06FF\\u0710\\u0712-\\u072F\\u074D-\\u07A5\\u07B1\\u07CA-\\u07EA\\u07F4\\u07F5\\u07FA\\u0800-\\u0815\\u081A\\u0824\\u0828\\u0840-\\u0858\\u08A0-\\u08B2\\u0904-\\u0939\\u093D\\u0950\\u0958-\\u0961\\u0971-\\u0980\\u0985-\\u098C\\u098F\\u0990\\u0993-\\u09A8\\u09AA-\\u09B0\\u09B2\\u09B6-\\u09B9\\u09BD\\u09CE\\u09DC\\u09DD\\u09DF-\\u09E1\\u09F0\\u09F1\\u0A05-\\u0A0A\\u0A0F\\u0A10\\u0A13-\\u0A28\\u0A2A-\\u0A30\\u0A32\\u0A33\\u0A35\\u0A36\\u0A38\\u0A39\\u0A59-\\u0A5C\\u0A5E\\u0A72-\\u0A74\\u0A85-\\u0A8D\\u0A8F-\\u0A91\\u0A93-\\u0AA8\\u0AAA-\\u0AB0\\u0AB2\\u0AB3\\u0AB5-\\u0AB9\\u0ABD\\u0AD0\\u0AE0\\u0AE1\\u0B05-\\u0B0C\\u0B0F\\u0B10\\u0B13-\\u0B28\\u0B2A-\\u0B30\\u0B32\\u0B33\\u0B35-\\u0B39\\u0B3D\\u0B5C\\u0B5D\\u0B5F-\\u0B61\\u0B71\\u0B83\\u0B85-\\u0B8A\\u0B8E-\\u0B90\\u0B92-\\u0B95\\u0B99\\u0B9A\\u0B9C\\u0B9E\\u0B9F\\u0BA3\\u0BA4\\u0BA8-\\u0BAA\\u0BAE-\\u0BB9\\u0BD0\\u0C05-\\u0C0C\\u0C0E-\\u0C10\\u0C12-\\u0C28\\u0C2A-\\u0C39\\u0C3D\\u0C58\\u0C59\\u0C60\\u0C61\\u0C85-\\u0C8C\\u0C8E-\\u0C90\\u0C92-\\u0CA8\\u0CAA-\\u0CB3\\u0CB5-\\u0CB9\\u0CBD\\u0CDE\\u0CE0\\u0CE1\\u0CF1\\u0CF2\\u0D05-\\u0D0C\\u0D0E-\\u0D10\\u0D12-\\u0D3A\\u0D3D\\u0D4E\\u0D60\\u0D61\\u0D7A-\\u0D7F\\u0D85-\\u0D96\\u0D9A-\\u0DB1\\u0DB3-\\u0DBB\\u0DBD\\u0DC0-\\u0DC6\\u0E01-\\u0E30\\u0E32\\u0E33\\u0E40-\\u0E46\\u0E81\\u0E82\\u0E84\\u0E87\\u0E88\\u0E8A\\u0E8D\\u0E94-\\u0E97\\u0E99-\\u0E9F\\u0EA1-\\u0EA3\\u0EA5\\u0EA7\\u0EAA\\u0EAB\\u0EAD-\\u0EB0\\u0EB2\\u0EB3\\u0EBD\\u0EC0-\\u0EC4\\u0EC6\\u0EDC-\\u0EDF\\u0F00\\u0F40-\\u0F47\\u0F49-\\u0F6C\\u0F88-\\u0F8C\\u1000-\\u102A\\u103F\\u1050-\\u1055\\u105A-\\u105D\\u1061\\u1065\\u1066\\u106E-\\u1070\\u1075-\\u1081\\u108E\\u10A0-\\u10C5\\u10C7\\u10CD\\u10D0-\\u10FA\\u10FC-\\u1248\\u124A-\\u124D\\u1250-\\u1256\\u1258\\u125A-\\u125D\\u1260-\\u1288\\u128A-\\u128D\\u1290-\\u12B0\\u12B2-\\u12B5\\u12B8-\\u12BE\\u12C0\\u12C2-\\u12C5\\u12C8-\\u12D6\\u12D8-\\u1310\\u1312-\\u1315\\u1318-\\u135A\\u1380-\\u138F\\u13A0-\\u13F4\\u1401-\\u166C\\u166F-\\u167F\\u1681-\\u169A\\u16A0-\\u16EA\\u16EE-\\u16F8\\u1700-\\u170C\\u170E-\\u1711\\u1720-\\u1731\\u1740-\\u1751\\u1760-\\u176C\\u176E-\\u1770\\u1780-\\u17B3\\u17D7\\u17DC\\u1820-\\u1877\\u1880-\\u18A8\\u18AA\\u18B0-\\u18F5\\u1900-\\u191E\\u1950-\\u196D\\u1970-\\u1974\\u1980-\\u19AB\\u19C1-\\u19C7\\u1A00-\\u1A16\\u1A20-\\u1A54\\u1AA7\\u1B05-\\u1B33\\u1B45-\\u1B4B\\u1B83-\\u1BA0\\u1BAE\\u1BAF\\u1BBA-\\u1BE5\\u1C00-\\u1C23\\u1C4D-\\u1C4F\\u1C5A-\\u1C7D\\u1CE9-\\u1CEC\\u1CEE-\\u1CF1\\u1CF5\\u1CF6\\u1D00-\\u1DBF\\u1E00-\\u1F15\\u1F18-\\u1F1D\\u1F20-\\u1F45\\u1F48-\\u1F4D\\u1F50-\\u1F57\\u1F59\\u1F5B\\u1F5D\\u1F5F-\\u1F7D\\u1F80-\\u1FB4\\u1FB6-\\u1FBC\\u1FBE\\u1FC2-\\u1FC4\\u1FC6-\\u1FCC\\u1FD0-\\u1FD3\\u1FD6-\\u1FDB\\u1FE0-\\u1FEC\\u1FF2-\\u1FF4\\u1FF6-\\u1FFC\\u2071\\u207F\\u2090-\\u209C\\u2102\\u2107\\u210A-\\u2113\\u2115\\u2119-\\u211D\\u2124\\u2126\\u2128\\u212A-\\u212D\\u212F-\\u2139\\u213C-\\u213F\\u2145-\\u2149\\u214E\\u2160-\\u2188\\u2C00-\\u2C2E\\u2C30-\\u2C5E\\u2C60-\\u2CE4\\u2CEB-\\u2CEE\\u2CF2\\u2CF3\\u2D00-\\u2D25\\u2D27\\u2D2D\\u2D30-\\u2D67\\u2D6F\\u2D80-\\u2D96\\u2DA0-\\u2DA6\\u2DA8-\\u2DAE\\u2DB0-\\u2DB6\\u2DB8-\\u2DBE\\u2DC0-\\u2DC6\\u2DC8-\\u2DCE\\u2DD0-\\u2DD6\\u2DD8-\\u2DDE\\u2E2F\\u3005-\\u3007\\u3021-\\u3029\\u3031-\\u3035\\u3038-\\u303C\\u3041-\\u3096\\u309D-\\u309F\\u30A1-\\u30FA\\u30FC-\\u30FF\\u3105-\\u312D\\u3131-\\u318E\\u31A0-\\u31BA\\u31F0-\\u31FF\\u3400-\\u4DB5\\u4E00-\\u9FCC\\uA000-\\uA48C\\uA4D0-\\uA4FD\\uA500-\\uA60C\\uA610-\\uA61F\\uA62A\\uA62B\\uA640-\\uA66E\\uA67F-\\uA69D\\uA6A0-\\uA6EF\\uA717-\\uA71F\\uA722-\\uA788\\uA78B-\\uA78E\\uA790-\\uA7AD\\uA7B0\\uA7B1\\uA7F7-\\uA801\\uA803-\\uA805\\uA807-\\uA80A\\uA80C-\\uA822\\uA840-\\uA873\\uA882-\\uA8B3\\uA8F2-\\uA8F7\\uA8FB\\uA90A-\\uA925\\uA930-\\uA946\\uA960-\\uA97C\\uA984-\\uA9B2\\uA9CF\\uA9E0-\\uA9E4\\uA9E6-\\uA9EF\\uA9FA-\\uA9FE\\uAA00-\\uAA28\\uAA40-\\uAA42\\uAA44-\\uAA4B\\uAA60-\\uAA76\\uAA7A\\uAA7E-\\uAAAF\\uAAB1\\uAAB5\\uAAB6\\uAAB9-\\uAABD\\uAAC0\\uAAC2\\uAADB-\\uAADD\\uAAE0-\\uAAEA\\uAAF2-\\uAAF4\\uAB01-\\uAB06\\uAB09-\\uAB0E\\uAB11-\\uAB16\\uAB20-\\uAB26\\uAB28-\\uAB2E\\uAB30-\\uAB5A\\uAB5C-\\uAB5F\\uAB64\\uAB65\\uABC0-\\uABE2\\uAC00-\\uD7A3\\uD7B0-\\uD7C6\\uD7CB-\\uD7FB\\uF900-\\uFA6D\\uFA70-\\uFAD9\\uFB00-\\uFB06\\uFB13-\\uFB17\\uFB1D\\uFB1F-\\uFB28\\uFB2A-\\uFB36\\uFB38-\\uFB3C\\uFB3E\\uFB40\\uFB41\\uFB43\\uFB44\\uFB46-\\uFBB1\\uFBD3-\\uFD3D\\uFD50-\\uFD8F\\uFD92-\\uFDC7\\uFDF0-\\uFDFB\\uFE70-\\uFE74\\uFE76-\\uFEFC\\uFF21-\\uFF3A\\uFF41-\\uFF5A\\uFF66-\\uFFBE\\uFFC2-\\uFFC7\\uFFCA-\\uFFCF\\uFFD2-\\uFFD7\\uFFDA-\\uFFDC]/,NonAsciiIdentifierPart:/[\\xAA\\xB5\\xBA\\xC0-\\xD6\\xD8-\\xF6\\xF8-\\u02C1\\u02C6-\\u02D1\\u02E0-\\u02E4\\u02EC\\u02EE\\u0300-\\u0374\\u0376\\u0377\\u037A-\\u037D\\u037F\\u0386\\u0388-\\u038A\\u038C\\u038E-\\u03A1\\u03A3-\\u03F5\\u03F7-\\u0481\\u0483-\\u0487\\u048A-\\u052F\\u0531-\\u0556\\u0559\\u0561-\\u0587\\u0591-\\u05BD\\u05BF\\u05C1\\u05C2\\u05C4\\u05C5\\u05C7\\u05D0-\\u05EA\\u05F0-\\u05F2\\u0610-\\u061A\\u0620-\\u0669\\u066E-\\u06D3\\u06D5-\\u06DC\\u06DF-\\u06E8\\u06EA-\\u06FC\\u06FF\\u0710-\\u074A\\u074D-\\u07B1\\u07C0-\\u07F5\\u07FA\\u0800-\\u082D\\u0840-\\u085B\\u08A0-\\u08B2\\u08E4-\\u0963\\u0966-\\u096F\\u0971-\\u0983\\u0985-\\u098C\\u098F\\u0990\\u0993-\\u09A8\\u09AA-\\u09B0\\u09B2\\u09B6-\\u09B9\\u09BC-\\u09C4\\u09C7\\u09C8\\u09CB-\\u09CE\\u09D7\\u09DC\\u09DD\\u09DF-\\u09E3\\u09E6-\\u09F1\\u0A01-\\u0A03\\u0A05-\\u0A0A\\u0A0F\\u0A10\\u0A13-\\u0A28\\u0A2A-\\u0A30\\u0A32\\u0A33\\u0A35\\u0A36\\u0A38\\u0A39\\u0A3C\\u0A3E-\\u0A42\\u0A47\\u0A48\\u0A4B-\\u0A4D\\u0A51\\u0A59-\\u0A5C\\u0A5E\\u0A66-\\u0A75\\u0A81-\\u0A83\\u0A85-\\u0A8D\\u0A8F-\\u0A91\\u0A93-\\u0AA8\\u0AAA-\\u0AB0\\u0AB2\\u0AB3\\u0AB5-\\u0AB9\\u0ABC-\\u0AC5\\u0AC7-\\u0AC9\\u0ACB-\\u0ACD\\u0AD0\\u0AE0-\\u0AE3\\u0AE6-\\u0AEF\\u0B01-\\u0B03\\u0B05-\\u0B0C\\u0B0F\\u0B10\\u0B13-\\u0B28\\u0B2A-\\u0B30\\u0B32\\u0B33\\u0B35-\\u0B39\\u0B3C-\\u0B44\\u0B47\\u0B48\\u0B4B-\\u0B4D\\u0B56\\u0B57\\u0B5C\\u0B5D\\u0B5F-\\u0B63\\u0B66-\\u0B6F\\u0B71\\u0B82\\u0B83\\u0B85-\\u0B8A\\u0B8E-\\u0B90\\u0B92-\\u0B95\\u0B99\\u0B9A\\u0B9C\\u0B9E\\u0B9F\\u0BA3\\u0BA4\\u0BA8-\\u0BAA\\u0BAE-\\u0BB9\\u0BBE-\\u0BC2\\u0BC6-\\u0BC8\\u0BCA-\\u0BCD\\u0BD0\\u0BD7\\u0BE6-\\u0BEF\\u0C00-\\u0C03\\u0C05-\\u0C0C\\u0C0E-\\u0C10\\u0C12-\\u0C28\\u0C2A-\\u0C39\\u0C3D-\\u0C44\\u0C46-\\u0C48\\u0C4A-\\u0C4D\\u0C55\\u0C56\\u0C58\\u0C59\\u0C60-\\u0C63\\u0C66-\\u0C6F\\u0C81-\\u0C83\\u0C85-\\u0C8C\\u0C8E-\\u0C90\\u0C92-\\u0CA8\\u0CAA-\\u0CB3\\u0CB5-\\u0CB9\\u0CBC-\\u0CC4\\u0CC6-\\u0CC8\\u0CCA-\\u0CCD\\u0CD5\\u0CD6\\u0CDE\\u0CE0-\\u0CE3\\u0CE6-\\u0CEF\\u0CF1\\u0CF2\\u0D01-\\u0D03\\u0D05-\\u0D0C\\u0D0E-\\u0D10\\u0D12-\\u0D3A\\u0D3D-\\u0D44\\u0D46-\\u0D48\\u0D4A-\\u0D4E\\u0D57\\u0D60-\\u0D63\\u0D66-\\u0D6F\\u0D7A-\\u0D7F\\u0D82\\u0D83\\u0D85-\\u0D96\\u0D9A-\\u0DB1\\u0DB3-\\u0DBB\\u0DBD\\u0DC0-\\u0DC6\\u0DCA\\u0DCF-\\u0DD4\\u0DD6\\u0DD8-\\u0DDF\\u0DE6-\\u0DEF\\u0DF2\\u0DF3\\u0E01-\\u0E3A\\u0E40-\\u0E4E\\u0E50-\\u0E59\\u0E81\\u0E82\\u0E84\\u0E87\\u0E88\\u0E8A\\u0E8D\\u0E94-\\u0E97\\u0E99-\\u0E9F\\u0EA1-\\u0EA3\\u0EA5\\u0EA7\\u0EAA\\u0EAB\\u0EAD-\\u0EB9\\u0EBB-\\u0EBD\\u0EC0-\\u0EC4\\u0EC6\\u0EC8-\\u0ECD\\u0ED0-\\u0ED9\\u0EDC-\\u0EDF\\u0F00\\u0F18\\u0F19\\u0F20-\\u0F29\\u0F35\\u0F37\\u0F39\\u0F3E-\\u0F47\\u0F49-\\u0F6C\\u0F71-\\u0F84\\u0F86-\\u0F97\\u0F99-\\u0FBC\\u0FC6\\u1000-\\u1049\\u1050-\\u109D\\u10A0-\\u10C5\\u10C7\\u10CD\\u10D0-\\u10FA\\u10FC-\\u1248\\u124A-\\u124D\\u1250-\\u1256\\u1258\\u125A-\\u125D\\u1260-\\u1288\\u128A-\\u128D\\u1290-\\u12B0\\u12B2-\\u12B5\\u12B8-\\u12BE\\u12C0\\u12C2-\\u12C5\\u12C8-\\u12D6\\u12D8-\\u1310\\u1312-\\u1315\\u1318-\\u135A\\u135D-\\u135F\\u1380-\\u138F\\u13A0-\\u13F4\\u1401-\\u166C\\u166F-\\u167F\\u1681-\\u169A\\u16A0-\\u16EA\\u16EE-\\u16F8\\u1700-\\u170C\\u170E-\\u1714\\u1720-\\u1734\\u1740-\\u1753\\u1760-\\u176C\\u176E-\\u1770\\u1772\\u1773\\u1780-\\u17D3\\u17D7\\u17DC\\u17DD\\u17E0-\\u17E9\\u180B-\\u180D\\u1810-\\u1819\\u1820-\\u1877\\u1880-\\u18AA\\u18B0-\\u18F5\\u1900-\\u191E\\u1920-\\u192B\\u1930-\\u193B\\u1946-\\u196D\\u1970-\\u1974\\u1980-\\u19AB\\u19B0-\\u19C9\\u19D0-\\u19D9\\u1A00-\\u1A1B\\u1A20-\\u1A5E\\u1A60-\\u1A7C\\u1A7F-\\u1A89\\u1A90-\\u1A99\\u1AA7\\u1AB0-\\u1ABD\\u1B00-\\u1B4B\\u1B50-\\u1B59\\u1B6B-\\u1B73\\u1B80-\\u1BF3\\u1C00-\\u1C37\\u1C40-\\u1C49\\u1C4D-\\u1C7D\\u1CD0-\\u1CD2\\u1CD4-\\u1CF6\\u1CF8\\u1CF9\\u1D00-\\u1DF5\\u1DFC-\\u1F15\\u1F18-\\u1F1D\\u1F20-\\u1F45\\u1F48-\\u1F4D\\u1F50-\\u1F57\\u1F59\\u1F5B\\u1F5D\\u1F5F-\\u1F7D\\u1F80-\\u1FB4\\u1FB6-\\u1FBC\\u1FBE\\u1FC2-\\u1FC4\\u1FC6-\\u1FCC\\u1FD0-\\u1FD3\\u1FD6-\\u1FDB\\u1FE0-\\u1FEC\\u1FF2-\\u1FF4\\u1FF6-\\u1FFC\\u200C\\u200D\\u203F\\u2040\\u2054\\u2071\\u207F\\u2090-\\u209C\\u20D0-\\u20DC\\u20E1\\u20E5-\\u20F0\\u2102\\u2107\\u210A-\\u2113\\u2115\\u2119-\\u211D\\u2124\\u2126\\u2128\\u212A-\\u212D\\u212F-\\u2139\\u213C-\\u213F\\u2145-\\u2149\\u214E\\u2160-\\u2188\\u2C00-\\u2C2E\\u2C30-\\u2C5E\\u2C60-\\u2CE4\\u2CEB-\\u2CF3\\u2D00-\\u2D25\\u2D27\\u2D2D\\u2D30-\\u2D67\\u2D6F\\u2D7F-\\u2D96\\u2DA0-\\u2DA6\\u2DA8-\\u2DAE\\u2DB0-\\u2DB6\\u2DB8-\\u2DBE\\u2DC0-\\u2DC6\\u2DC8-\\u2DCE\\u2DD0-\\u2DD6\\u2DD8-\\u2DDE\\u2DE0-\\u2DFF\\u2E2F\\u3005-\\u3007\\u3021-\\u302F\\u3031-\\u3035\\u3038-\\u303C\\u3041-\\u3096\\u3099\\u309A\\u309D-\\u309F\\u30A1-\\u30FA\\u30FC-\\u30FF\\u3105-\\u312D\\u3131-\\u318E\\u31A0-\\u31BA\\u31F0-\\u31FF\\u3400-\\u4DB5\\u4E00-\\u9FCC\\uA000-\\uA48C\\uA4D0-\\uA4FD\\uA500-\\uA60C\\uA610-\\uA62B\\uA640-\\uA66F\\uA674-\\uA67D\\uA67F-\\uA69D\\uA69F-\\uA6F1\\uA717-\\uA71F\\uA722-\\uA788\\uA78B-\\uA78E\\uA790-\\uA7AD\\uA7B0\\uA7B1\\uA7F7-\\uA827\\uA840-\\uA873\\uA880-\\uA8C4\\uA8D0-\\uA8D9\\uA8E0-\\uA8F7\\uA8FB\\uA900-\\uA92D\\uA930-\\uA953\\uA960-\\uA97C\\uA980-\\uA9C0\\uA9CF-\\uA9D9\\uA9E0-\\uA9FE\\uAA00-\\uAA36\\uAA40-\\uAA4D\\uAA50-\\uAA59\\uAA60-\\uAA76\\uAA7A-\\uAAC2\\uAADB-\\uAADD\\uAAE0-\\uAAEF\\uAAF2-\\uAAF6\\uAB01-\\uAB06\\uAB09-\\uAB0E\\uAB11-\\uAB16\\uAB20-\\uAB26\\uAB28-\\uAB2E\\uAB30-\\uAB5A\\uAB5C-\\uAB5F\\uAB64\\uAB65\\uABC0-\\uABEA\\uABEC\\uABED\\uABF0-\\uABF9\\uAC00-\\uD7A3\\uD7B0-\\uD7C6\\uD7CB-\\uD7FB\\uF900-\\uFA6D\\uFA70-\\uFAD9\\uFB00-\\uFB06\\uFB13-\\uFB17\\uFB1D-\\uFB28\\uFB2A-\\uFB36\\uFB38-\\uFB3C\\uFB3E\\uFB40\\uFB41\\uFB43\\uFB44\\uFB46-\\uFBB1\\uFBD3-\\uFD3D\\uFD50-\\uFD8F\\uFD92-\\uFDC7\\uFDF0-\\uFDFB\\uFE00-\\uFE0F\\uFE20-\\uFE2D\\uFE33\\uFE34\\uFE4D-\\uFE4F\\uFE70-\\uFE74\\uFE76-\\uFEFC\\uFF10-\\uFF19\\uFF21-\\uFF3A\\uFF3F\\uFF41-\\uFF5A\\uFF66-\\uFFBE\\uFFC2-\\uFFC7\\uFFCA-\\uFFCF\\uFFD2-\\uFFD7\\uFFDA-\\uFFDC]/},f={NonAsciiIdentifierStart:/[\\xAA\\xB5\\xBA\\xC0-\\xD6\\xD8-\\xF6\\xF8-\\u02C1\\u02C6-\\u02D1\\u02E0-\\u02E4\\u02EC\\u02EE\\u0370-\\u0374\\u0376\\u0377\\u037A-\\u037D\\u037F\\u0386\\u0388-\\u038A\\u038C\\u038E-\\u03A1\\u03A3-\\u03F5\\u03F7-\\u0481\\u048A-\\u052F\\u0531-\\u0556\\u0559\\u0561-\\u0587\\u05D0-\\u05EA\\u05F0-\\u05F2\\u0620-\\u064A\\u066E\\u066F\\u0671-\\u06D3\\u06D5\\u06E5\\u06E6\\u06EE\\u06EF\\u06FA-\\u06FC\\u06FF\\u0710\\u0712-\\u072F\\u074D-\\u07A5\\u07B1\\u07CA-\\u07EA\\u07F4\\u07F5\\u07FA\\u0800-\\u0815\\u081A\\u0824\\u0828\\u0840-\\u0858\\u08A0-\\u08B2\\u0904-\\u0939\\u093D\\u0950\\u0958-\\u0961\\u0971-\\u0980\\u0985-\\u098C\\u098F\\u0990\\u0993-\\u09A8\\u09AA-\\u09B0\\u09B2\\u09B6-\\u09B9\\u09BD\\u09CE\\u09DC\\u09DD\\u09DF-\\u09E1\\u09F0\\u09F1\\u0A05-\\u0A0A\\u0A0F\\u0A10\\u0A13-\\u0A28\\u0A2A-\\u0A30\\u0A32\\u0A33\\u0A35\\u0A36\\u0A38\\u0A39\\u0A59-\\u0A5C\\u0A5E\\u0A72-\\u0A74\\u0A85-\\u0A8D\\u0A8F-\\u0A91\\u0A93-\\u0AA8\\u0AAA-\\u0AB0\\u0AB2\\u0AB3\\u0AB5-\\u0AB9\\u0ABD\\u0AD0\\u0AE0\\u0AE1\\u0B05-\\u0B0C\\u0B0F\\u0B10\\u0B13-\\u0B28\\u0B2A-\\u0B30\\u0B32\\u0B33\\u0B35-\\u0B39\\u0B3D\\u0B5C\\u0B5D\\u0B5F-\\u0B61\\u0B71\\u0B83\\u0B85-\\u0B8A\\u0B8E-\\u0B90\\u0B92-\\u0B95\\u0B99\\u0B9A\\u0B9C\\u0B9E\\u0B9F\\u0BA3\\u0BA4\\u0BA8-\\u0BAA\\u0BAE-\\u0BB9\\u0BD0\\u0C05-\\u0C0C\\u0C0E-\\u0C10\\u0C12-\\u0C28\\u0C2A-\\u0C39\\u0C3D\\u0C58\\u0C59\\u0C60\\u0C61\\u0C85-\\u0C8C\\u0C8E-\\u0C90\\u0C92-\\u0CA8\\u0CAA-\\u0CB3\\u0CB5-\\u0CB9\\u0CBD\\u0CDE\\u0CE0\\u0CE1\\u0CF1\\u0CF2\\u0D05-\\u0D0C\\u0D0E-\\u0D10\\u0D12-\\u0D3A\\u0D3D\\u0D4E\\u0D60\\u0D61\\u0D7A-\\u0D7F\\u0D85-\\u0D96\\u0D9A-\\u0DB1\\u0DB3-\\u0DBB\\u0DBD\\u0DC0-\\u0DC6\\u0E01-\\u0E30\\u0E32\\u0E33\\u0E40-\\u0E46\\u0E81\\u0E82\\u0E84\\u0E87\\u0E88\\u0E8A\\u0E8D\\u0E94-\\u0E97\\u0E99-\\u0E9F\\u0EA1-\\u0EA3\\u0EA5\\u0EA7\\u0EAA\\u0EAB\\u0EAD-\\u0EB0\\u0EB2\\u0EB3\\u0EBD\\u0EC0-\\u0EC4\\u0EC6\\u0EDC-\\u0EDF\\u0F00\\u0F40-\\u0F47\\u0F49-\\u0F6C\\u0F88-\\u0F8C\\u1000-\\u102A\\u103F\\u1050-\\u1055\\u105A-\\u105D\\u1061\\u1065\\u1066\\u106E-\\u1070\\u1075-\\u1081\\u108E\\u10A0-\\u10C5\\u10C7\\u10CD\\u10D0-\\u10FA\\u10FC-\\u1248\\u124A-\\u124D\\u1250-\\u1256\\u1258\\u125A-\\u125D\\u1260-\\u1288\\u128A-\\u128D\\u1290-\\u12B0\\u12B2-\\u12B5\\u12B8-\\u12BE\\u12C0\\u12C2-\\u12C5\\u12C8-\\u12D6\\u12D8-\\u1310\\u1312-\\u1315\\u1318-\\u135A\\u1380-\\u138F\\u13A0-\\u13F4\\u1401-\\u166C\\u166F-\\u167F\\u1681-\\u169A\\u16A0-\\u16EA\\u16EE-\\u16F8\\u1700-\\u170C\\u170E-\\u1711\\u1720-\\u1731\\u1740-\\u1751\\u1760-\\u176C\\u176E-\\u1770\\u1780-\\u17B3\\u17D7\\u17DC\\u1820-\\u1877\\u1880-\\u18A8\\u18AA\\u18B0-\\u18F5\\u1900-\\u191E\\u1950-\\u196D\\u1970-\\u1974\\u1980-\\u19AB\\u19C1-\\u19C7\\u1A00-\\u1A16\\u1A20-\\u1A54\\u1AA7\\u1B05-\\u1B33\\u1B45-\\u1B4B\\u1B83-\\u1BA0\\u1BAE\\u1BAF\\u1BBA-\\u1BE5\\u1C00-\\u1C23\\u1C4D-\\u1C4F\\u1C5A-\\u1C7D\\u1CE9-\\u1CEC\\u1CEE-\\u1CF1\\u1CF5\\u1CF6\\u1D00-\\u1DBF\\u1E00-\\u1F15\\u1F18-\\u1F1D\\u1F20-\\u1F45\\u1F48-\\u1F4D\\u1F50-\\u1F57\\u1F59\\u1F5B\\u1F5D\\u1F5F-\\u1F7D\\u1F80-\\u1FB4\\u1FB6-\\u1FBC\\u1FBE\\u1FC2-\\u1FC4\\u1FC6-\\u1FCC\\u1FD0-\\u1FD3\\u1FD6-\\u1FDB\\u1FE0-\\u1FEC\\u1FF2-\\u1FF4\\u1FF6-\\u1FFC\\u2071\\u207F\\u2090-\\u209C\\u2102\\u2107\\u210A-\\u2113\\u2115\\u2118-\\u211D\\u2124\\u2126\\u2128\\u212A-\\u2139\\u213C-\\u213F\\u2145-\\u2149\\u214E\\u2160-\\u2188\\u2C00-\\u2C2E\\u2C30-\\u2C5E\\u2C60-\\u2CE4\\u2CEB-\\u2CEE\\u2CF2\\u2CF3\\u2D00-\\u2D25\\u2D27\\u2D2D\\u2D30-\\u2D67\\u2D6F\\u2D80-\\u2D96\\u2DA0-\\u2DA6\\u2DA8-\\u2DAE\\u2DB0-\\u2DB6\\u2DB8-\\u2DBE\\u2DC0-\\u2DC6\\u2DC8-\\u2DCE\\u2DD0-\\u2DD6\\u2DD8-\\u2DDE\\u3005-\\u3007\\u3021-\\u3029\\u3031-\\u3035\\u3038-\\u303C\\u3041-\\u3096\\u309B-\\u309F\\u30A1-\\u30FA\\u30FC-\\u30FF\\u3105-\\u312D\\u3131-\\u318E\\u31A0-\\u31BA\\u31F0-\\u31FF\\u3400-\\u4DB5\\u4E00-\\u9FCC\\uA000-\\uA48C\\uA4D0-\\uA4FD\\uA500-\\uA60C\\uA610-\\uA61F\\uA62A\\uA62B\\uA640-\\uA66E\\uA67F-\\uA69D\\uA6A0-\\uA6EF\\uA717-\\uA71F\\uA722-\\uA788\\uA78B-\\uA78E\\uA790-\\uA7AD\\uA7B0\\uA7B1\\uA7F7-\\uA801\\uA803-\\uA805\\uA807-\\uA80A\\uA80C-\\uA822\\uA840-\\uA873\\uA882-\\uA8B3\\uA8F2-\\uA8F7\\uA8FB\\uA90A-\\uA925\\uA930-\\uA946\\uA960-\\uA97C\\uA984-\\uA9B2\\uA9CF\\uA9E0-\\uA9E4\\uA9E6-\\uA9EF\\uA9FA-\\uA9FE\\uAA00-\\uAA28\\uAA40-\\uAA42\\uAA44-\\uAA4B\\uAA60-\\uAA76\\uAA7A\\uAA7E-\\uAAAF\\uAAB1\\uAAB5\\uAAB6\\uAAB9-\\uAABD\\uAAC0\\uAAC2\\uAADB-\\uAADD\\uAAE0-\\uAAEA\\uAAF2-\\uAAF4\\uAB01-\\uAB06\\uAB09-\\uAB0E\\uAB11-\\uAB16\\uAB20-\\uAB26\\uAB28-\\uAB2E\\uAB30-\\uAB5A\\uAB5C-\\uAB5F\\uAB64\\uAB65\\uABC0-\\uABE2\\uAC00-\\uD7A3\\uD7B0-\\uD7C6\\uD7CB-\\uD7FB\\uF900-\\uFA6D\\uFA70-\\uFAD9\\uFB00-\\uFB06\\uFB13-\\uFB17\\uFB1D\\uFB1F-\\uFB28\\uFB2A-\\uFB36\\uFB38-\\uFB3C\\uFB3E\\uFB40\\uFB41\\uFB43\\uFB44\\uFB46-\\uFBB1\\uFBD3-\\uFD3D\\uFD50-\\uFD8F\\uFD92-\\uFDC7\\uFDF0-\\uFDFB\\uFE70-\\uFE74\\uFE76-\\uFEFC\\uFF21-\\uFF3A\\uFF41-\\uFF5A\\uFF66-\\uFFBE\\uFFC2-\\uFFC7\\uFFCA-\\uFFCF\\uFFD2-\\uFFD7\\uFFDA-\\uFFDC]|\\uD800[\\uDC00-\\uDC0B\\uDC0D-\\uDC26\\uDC28-\\uDC3A\\uDC3C\\uDC3D\\uDC3F-\\uDC4D\\uDC50-\\uDC5D\\uDC80-\\uDCFA\\uDD40-\\uDD74\\uDE80-\\uDE9C\\uDEA0-\\uDED0\\uDF00-\\uDF1F\\uDF30-\\uDF4A\\uDF50-\\uDF75\\uDF80-\\uDF9D\\uDFA0-\\uDFC3\\uDFC8-\\uDFCF\\uDFD1-\\uDFD5]|\\uD801[\\uDC00-\\uDC9D\\uDD00-\\uDD27\\uDD30-\\uDD63\\uDE00-\\uDF36\\uDF40-\\uDF55\\uDF60-\\uDF67]|\\uD802[\\uDC00-\\uDC05\\uDC08\\uDC0A-\\uDC35\\uDC37\\uDC38\\uDC3C\\uDC3F-\\uDC55\\uDC60-\\uDC76\\uDC80-\\uDC9E\\uDD00-\\uDD15\\uDD20-\\uDD39\\uDD80-\\uDDB7\\uDDBE\\uDDBF\\uDE00\\uDE10-\\uDE13\\uDE15-\\uDE17\\uDE19-\\uDE33\\uDE60-\\uDE7C\\uDE80-\\uDE9C\\uDEC0-\\uDEC7\\uDEC9-\\uDEE4\\uDF00-\\uDF35\\uDF40-\\uDF55\\uDF60-\\uDF72\\uDF80-\\uDF91]|\\uD803[\\uDC00-\\uDC48]|\\uD804[\\uDC03-\\uDC37\\uDC83-\\uDCAF\\uDCD0-\\uDCE8\\uDD03-\\uDD26\\uDD50-\\uDD72\\uDD76\\uDD83-\\uDDB2\\uDDC1-\\uDDC4\\uDDDA\\uDE00-\\uDE11\\uDE13-\\uDE2B\\uDEB0-\\uDEDE\\uDF05-\\uDF0C\\uDF0F\\uDF10\\uDF13-\\uDF28\\uDF2A-\\uDF30\\uDF32\\uDF33\\uDF35-\\uDF39\\uDF3D\\uDF5D-\\uDF61]|\\uD805[\\uDC80-\\uDCAF\\uDCC4\\uDCC5\\uDCC7\\uDD80-\\uDDAE\\uDE00-\\uDE2F\\uDE44\\uDE80-\\uDEAA]|\\uD806[\\uDCA0-\\uDCDF\\uDCFF\\uDEC0-\\uDEF8]|\\uD808[\\uDC00-\\uDF98]|\\uD809[\\uDC00-\\uDC6E]|[\\uD80C\\uD840-\\uD868\\uD86A-\\uD86C][\\uDC00-\\uDFFF]|\\uD80D[\\uDC00-\\uDC2E]|\\uD81A[\\uDC00-\\uDE38\\uDE40-\\uDE5E\\uDED0-\\uDEED\\uDF00-\\uDF2F\\uDF40-\\uDF43\\uDF63-\\uDF77\\uDF7D-\\uDF8F]|\\uD81B[\\uDF00-\\uDF44\\uDF50\\uDF93-\\uDF9F]|\\uD82C[\\uDC00\\uDC01]|\\uD82F[\\uDC00-\\uDC6A\\uDC70-\\uDC7C\\uDC80-\\uDC88\\uDC90-\\uDC99]|\\uD835[\\uDC00-\\uDC54\\uDC56-\\uDC9C\\uDC9E\\uDC9F\\uDCA2\\uDCA5\\uDCA6\\uDCA9-\\uDCAC\\uDCAE-\\uDCB9\\uDCBB\\uDCBD-\\uDCC3\\uDCC5-\\uDD05\\uDD07-\\uDD0A\\uDD0D-\\uDD14\\uDD16-\\uDD1C\\uDD1E-\\uDD39\\uDD3B-\\uDD3E\\uDD40-\\uDD44\\uDD46\\uDD4A-\\uDD50\\uDD52-\\uDEA5\\uDEA8-\\uDEC0\\uDEC2-\\uDEDA\\uDEDC-\\uDEFA\\uDEFC-\\uDF14\\uDF16-\\uDF34\\uDF36-\\uDF4E\\uDF50-\\uDF6E\\uDF70-\\uDF88\\uDF8A-\\uDFA8\\uDFAA-\\uDFC2\\uDFC4-\\uDFCB]|\\uD83A[\\uDC00-\\uDCC4]|\\uD83B[\\uDE00-\\uDE03\\uDE05-\\uDE1F\\uDE21\\uDE22\\uDE24\\uDE27\\uDE29-\\uDE32\\uDE34-\\uDE37\\uDE39\\uDE3B\\uDE42\\uDE47\\uDE49\\uDE4B\\uDE4D-\\uDE4F\\uDE51\\uDE52\\uDE54\\uDE57\\uDE59\\uDE5B\\uDE5D\\uDE5F\\uDE61\\uDE62\\uDE64\\uDE67-\\uDE6A\\uDE6C-\\uDE72\\uDE74-\\uDE77\\uDE79-\\uDE7C\\uDE7E\\uDE80-\\uDE89\\uDE8B-\\uDE9B\\uDEA1-\\uDEA3\\uDEA5-\\uDEA9\\uDEAB-\\uDEBB]|\\uD869[\\uDC00-\\uDED6\\uDF00-\\uDFFF]|\\uD86D[\\uDC00-\\uDF34\\uDF40-\\uDFFF]|\\uD86E[\\uDC00-\\uDC1D]|\\uD87E[\\uDC00-\\uDE1D]/,NonAsciiIdentifierPart:/[\\xAA\\xB5\\xB7\\xBA\\xC0-\\xD6\\xD8-\\xF6\\xF8-\\u02C1\\u02C6-\\u02D1\\u02E0-\\u02E4\\u02EC\\u02EE\\u0300-\\u0374\\u0376\\u0377\\u037A-\\u037D\\u037F\\u0386-\\u038A\\u038C\\u038E-\\u03A1\\u03A3-\\u03F5\\u03F7-\\u0481\\u0483-\\u0487\\u048A-\\u052F\\u0531-\\u0556\\u0559\\u0561-\\u0587\\u0591-\\u05BD\\u05BF\\u05C1\\u05C2\\u05C4\\u05C5\\u05C7\\u05D0-\\u05EA\\u05F0-\\u05F2\\u0610-\\u061A\\u0620-\\u0669\\u066E-\\u06D3\\u06D5-\\u06DC\\u06DF-\\u06E8\\u06EA-\\u06FC\\u06FF\\u0710-\\u074A\\u074D-\\u07B1\\u07C0-\\u07F5\\u07FA\\u0800-\\u082D\\u0840-\\u085B\\u08A0-\\u08B2\\u08E4-\\u0963\\u0966-\\u096F\\u0971-\\u0983\\u0985-\\u098C\\u098F\\u0990\\u0993-\\u09A8\\u09AA-\\u09B0\\u09B2\\u09B6-\\u09B9\\u09BC-\\u09C4\\u09C7\\u09C8\\u09CB-\\u09CE\\u09D7\\u09DC\\u09DD\\u09DF-\\u09E3\\u09E6-\\u09F1\\u0A01-\\u0A03\\u0A05-\\u0A0A\\u0A0F\\u0A10\\u0A13-\\u0A28\\u0A2A-\\u0A30\\u0A32\\u0A33\\u0A35\\u0A36\\u0A38\\u0A39\\u0A3C\\u0A3E-\\u0A42\\u0A47\\u0A48\\u0A4B-\\u0A4D\\u0A51\\u0A59-\\u0A5C\\u0A5E\\u0A66-\\u0A75\\u0A81-\\u0A83\\u0A85-\\u0A8D\\u0A8F-\\u0A91\\u0A93-\\u0AA8\\u0AAA-\\u0AB0\\u0AB2\\u0AB3\\u0AB5-\\u0AB9\\u0ABC-\\u0AC5\\u0AC7-\\u0AC9\\u0ACB-\\u0ACD\\u0AD0\\u0AE0-\\u0AE3\\u0AE6-\\u0AEF\\u0B01-\\u0B03\\u0B05-\\u0B0C\\u0B0F\\u0B10\\u0B13-\\u0B28\\u0B2A-\\u0B30\\u0B32\\u0B33\\u0B35-\\u0B39\\u0B3C-\\u0B44\\u0B47\\u0B48\\u0B4B-\\u0B4D\\u0B56\\u0B57\\u0B5C\\u0B5D\\u0B5F-\\u0B63\\u0B66-\\u0B6F\\u0B71\\u0B82\\u0B83\\u0B85-\\u0B8A\\u0B8E-\\u0B90\\u0B92-\\u0B95\\u0B99\\u0B9A\\u0B9C\\u0B9E\\u0B9F\\u0BA3\\u0BA4\\u0BA8-\\u0BAA\\u0BAE-\\u0BB9\\u0BBE-\\u0BC2\\u0BC6-\\u0BC8\\u0BCA-\\u0BCD\\u0BD0\\u0BD7\\u0BE6-\\u0BEF\\u0C00-\\u0C03\\u0C05-\\u0C0C\\u0C0E-\\u0C10\\u0C12-\\u0C28\\u0C2A-\\u0C39\\u0C3D-\\u0C44\\u0C46-\\u0C48\\u0C4A-\\u0C4D\\u0C55\\u0C56\\u0C58\\u0C59\\u0C60-\\u0C63\\u0C66-\\u0C6F\\u0C81-\\u0C83\\u0C85-\\u0C8C\\u0C8E-\\u0C90\\u0C92-\\u0CA8\\u0CAA-\\u0CB3\\u0CB5-\\u0CB9\\u0CBC-\\u0CC4\\u0CC6-\\u0CC8\\u0CCA-\\u0CCD\\u0CD5\\u0CD6\\u0CDE\\u0CE0-\\u0CE3\\u0CE6-\\u0CEF\\u0CF1\\u0CF2\\u0D01-\\u0D03\\u0D05-\\u0D0C\\u0D0E-\\u0D10\\u0D12-\\u0D3A\\u0D3D-\\u0D44\\u0D46-\\u0D48\\u0D4A-\\u0D4E\\u0D57\\u0D60-\\u0D63\\u0D66-\\u0D6F\\u0D7A-\\u0D7F\\u0D82\\u0D83\\u0D85-\\u0D96\\u0D9A-\\u0DB1\\u0DB3-\\u0DBB\\u0DBD\\u0DC0-\\u0DC6\\u0DCA\\u0DCF-\\u0DD4\\u0DD6\\u0DD8-\\u0DDF\\u0DE6-\\u0DEF\\u0DF2\\u0DF3\\u0E01-\\u0E3A\\u0E40-\\u0E4E\\u0E50-\\u0E59\\u0E81\\u0E82\\u0E84\\u0E87\\u0E88\\u0E8A\\u0E8D\\u0E94-\\u0E97\\u0E99-\\u0E9F\\u0EA1-\\u0EA3\\u0EA5\\u0EA7\\u0EAA\\u0EAB\\u0EAD-\\u0EB9\\u0EBB-\\u0EBD\\u0EC0-\\u0EC4\\u0EC6\\u0EC8-\\u0ECD\\u0ED0-\\u0ED9\\u0EDC-\\u0EDF\\u0F00\\u0F18\\u0F19\\u0F20-\\u0F29\\u0F35\\u0F37\\u0F39\\u0F3E-\\u0F47\\u0F49-\\u0F6C\\u0F71-\\u0F84\\u0F86-\\u0F97\\u0F99-\\u0FBC\\u0FC6\\u1000-\\u1049\\u1050-\\u109D\\u10A0-\\u10C5\\u10C7\\u10CD\\u10D0-\\u10FA\\u10FC-\\u1248\\u124A-\\u124D\\u1250-\\u1256\\u1258\\u125A-\\u125D\\u1260-\\u1288\\u128A-\\u128D\\u1290-\\u12B0\\u12B2-\\u12B5\\u12B8-\\u12BE\\u12C0\\u12C2-\\u12C5\\u12C8-\\u12D6\\u12D8-\\u1310\\u1312-\\u1315\\u1318-\\u135A\\u135D-\\u135F\\u1369-\\u1371\\u1380-\\u138F\\u13A0-\\u13F4\\u1401-\\u166C\\u166F-\\u167F\\u1681-\\u169A\\u16A0-\\u16EA\\u16EE-\\u16F8\\u1700-\\u170C\\u170E-\\u1714\\u1720-\\u1734\\u1740-\\u1753\\u1760-\\u176C\\u176E-\\u1770\\u1772\\u1773\\u1780-\\u17D3\\u17D7\\u17DC\\u17DD\\u17E0-\\u17E9\\u180B-\\u180D\\u1810-\\u1819\\u1820-\\u1877\\u1880-\\u18AA\\u18B0-\\u18F5\\u1900-\\u191E\\u1920-\\u192B\\u1930-\\u193B\\u1946-\\u196D\\u1970-\\u1974\\u1980-\\u19AB\\u19B0-\\u19C9\\u19D0-\\u19DA\\u1A00-\\u1A1B\\u1A20-\\u1A5E\\u1A60-\\u1A7C\\u1A7F-\\u1A89\\u1A90-\\u1A99\\u1AA7\\u1AB0-\\u1ABD\\u1B00-\\u1B4B\\u1B50-\\u1B59\\u1B6B-\\u1B73\\u1B80-\\u1BF3\\u1C00-\\u1C37\\u1C40-\\u1C49\\u1C4D-\\u1C7D\\u1CD0-\\u1CD2\\u1CD4-\\u1CF6\\u1CF8\\u1CF9\\u1D00-\\u1DF5\\u1DFC-\\u1F15\\u1F18-\\u1F1D\\u1F20-\\u1F45\\u1F48-\\u1F4D\\u1F50-\\u1F57\\u1F59\\u1F5B\\u1F5D\\u1F5F-\\u1F7D\\u1F80-\\u1FB4\\u1FB6-\\u1FBC\\u1FBE\\u1FC2-\\u1FC4\\u1FC6-\\u1FCC\\u1FD0-\\u1FD3\\u1FD6-\\u1FDB\\u1FE0-\\u1FEC\\u1FF2-\\u1FF4\\u1FF6-\\u1FFC\\u200C\\u200D\\u203F\\u2040\\u2054\\u2071\\u207F\\u2090-\\u209C\\u20D0-\\u20DC\\u20E1\\u20E5-\\u20F0\\u2102\\u2107\\u210A-\\u2113\\u2115\\u2118-\\u211D\\u2124\\u2126\\u2128\\u212A-\\u2139\\u213C-\\u213F\\u2145-\\u2149\\u214E\\u2160-\\u2188\\u2C00-\\u2C2E\\u2C30-\\u2C5E\\u2C60-\\u2CE4\\u2CEB-\\u2CF3\\u2D00-\\u2D25\\u2D27\\u2D2D\\u2D30-\\u2D67\\u2D6F\\u2D7F-\\u2D96\\u2DA0-\\u2DA6\\u2DA8-\\u2DAE\\u2DB0-\\u2DB6\\u2DB8-\\u2DBE\\u2DC0-\\u2DC6\\u2DC8-\\u2DCE\\u2DD0-\\u2DD6\\u2DD8-\\u2DDE\\u2DE0-\\u2DFF\\u3005-\\u3007\\u3021-\\u302F\\u3031-\\u3035\\u3038-\\u303C\\u3041-\\u3096\\u3099-\\u309F\\u30A1-\\u30FA\\u30FC-\\u30FF\\u3105-\\u312D\\u3131-\\u318E\\u31A0-\\u31BA\\u31F0-\\u31FF\\u3400-\\u4DB5\\u4E00-\\u9FCC\\uA000-\\uA48C\\uA4D0-\\uA4FD\\uA500-\\uA60C\\uA610-\\uA62B\\uA640-\\uA66F\\uA674-\\uA67D\\uA67F-\\uA69D\\uA69F-\\uA6F1\\uA717-\\uA71F\\uA722-\\uA788\\uA78B-\\uA78E\\uA790-\\uA7AD\\uA7B0\\uA7B1\\uA7F7-\\uA827\\uA840-\\uA873\\uA880-\\uA8C4\\uA8D0-\\uA8D9\\uA8E0-\\uA8F7\\uA8FB\\uA900-\\uA92D\\uA930-\\uA953\\uA960-\\uA97C\\uA980-\\uA9C0\\uA9CF-\\uA9D9\\uA9E0-\\uA9FE\\uAA00-\\uAA36\\uAA40-\\uAA4D\\uAA50-\\uAA59\\uAA60-\\uAA76\\uAA7A-\\uAAC2\\uAADB-\\uAADD\\uAAE0-\\uAAEF\\uAAF2-\\uAAF6\\uAB01-\\uAB06\\uAB09-\\uAB0E\\uAB11-\\uAB16\\uAB20-\\uAB26\\uAB28-\\uAB2E\\uAB30-\\uAB5A\\uAB5C-\\uAB5F\\uAB64\\uAB65\\uABC0-\\uABEA\\uABEC\\uABED\\uABF0-\\uABF9\\uAC00-\\uD7A3\\uD7B0-\\uD7C6\\uD7CB-\\uD7FB\\uF900-\\uFA6D\\uFA70-\\uFAD9\\uFB00-\\uFB06\\uFB13-\\uFB17\\uFB1D-\\uFB28\\uFB2A-\\uFB36\\uFB38-\\uFB3C\\uFB3E\\uFB40\\uFB41\\uFB43\\uFB44\\uFB46-\\uFBB1\\uFBD3-\\uFD3D\\uFD50-\\uFD8F\\uFD92-\\uFDC7\\uFDF0-\\uFDFB\\uFE00-\\uFE0F\\uFE20-\\uFE2D\\uFE33\\uFE34\\uFE4D-\\uFE4F\\uFE70-\\uFE74\\uFE76-\\uFEFC\\uFF10-\\uFF19\\uFF21-\\uFF3A\\uFF3F\\uFF41-\\uFF5A\\uFF66-\\uFFBE\\uFFC2-\\uFFC7\\uFFCA-\\uFFCF\\uFFD2-\\uFFD7\\uFFDA-\\uFFDC]|\\uD800[\\uDC00-\\uDC0B\\uDC0D-\\uDC26\\uDC28-\\uDC3A\\uDC3C\\uDC3D\\uDC3F-\\uDC4D\\uDC50-\\uDC5D\\uDC80-\\uDCFA\\uDD40-\\uDD74\\uDDFD\\uDE80-\\uDE9C\\uDEA0-\\uDED0\\uDEE0\\uDF00-\\uDF1F\\uDF30-\\uDF4A\\uDF50-\\uDF7A\\uDF80-\\uDF9D\\uDFA0-\\uDFC3\\uDFC8-\\uDFCF\\uDFD1-\\uDFD5]|\\uD801[\\uDC00-\\uDC9D\\uDCA0-\\uDCA9\\uDD00-\\uDD27\\uDD30-\\uDD63\\uDE00-\\uDF36\\uDF40-\\uDF55\\uDF60-\\uDF67]|\\uD802[\\uDC00-\\uDC05\\uDC08\\uDC0A-\\uDC35\\uDC37\\uDC38\\uDC3C\\uDC3F-\\uDC55\\uDC60-\\uDC76\\uDC80-\\uDC9E\\uDD00-\\uDD15\\uDD20-\\uDD39\\uDD80-\\uDDB7\\uDDBE\\uDDBF\\uDE00-\\uDE03\\uDE05\\uDE06\\uDE0C-\\uDE13\\uDE15-\\uDE17\\uDE19-\\uDE33\\uDE38-\\uDE3A\\uDE3F\\uDE60-\\uDE7C\\uDE80-\\uDE9C\\uDEC0-\\uDEC7\\uDEC9-\\uDEE6\\uDF00-\\uDF35\\uDF40-\\uDF55\\uDF60-\\uDF72\\uDF80-\\uDF91]|\\uD803[\\uDC00-\\uDC48]|\\uD804[\\uDC00-\\uDC46\\uDC66-\\uDC6F\\uDC7F-\\uDCBA\\uDCD0-\\uDCE8\\uDCF0-\\uDCF9\\uDD00-\\uDD34\\uDD36-\\uDD3F\\uDD50-\\uDD73\\uDD76\\uDD80-\\uDDC4\\uDDD0-\\uDDDA\\uDE00-\\uDE11\\uDE13-\\uDE37\\uDEB0-\\uDEEA\\uDEF0-\\uDEF9\\uDF01-\\uDF03\\uDF05-\\uDF0C\\uDF0F\\uDF10\\uDF13-\\uDF28\\uDF2A-\\uDF30\\uDF32\\uDF33\\uDF35-\\uDF39\\uDF3C-\\uDF44\\uDF47\\uDF48\\uDF4B-\\uDF4D\\uDF57\\uDF5D-\\uDF63\\uDF66-\\uDF6C\\uDF70-\\uDF74]|\\uD805[\\uDC80-\\uDCC5\\uDCC7\\uDCD0-\\uDCD9\\uDD80-\\uDDB5\\uDDB8-\\uDDC0\\uDE00-\\uDE40\\uDE44\\uDE50-\\uDE59\\uDE80-\\uDEB7\\uDEC0-\\uDEC9]|\\uD806[\\uDCA0-\\uDCE9\\uDCFF\\uDEC0-\\uDEF8]|\\uD808[\\uDC00-\\uDF98]|\\uD809[\\uDC00-\\uDC6E]|[\\uD80C\\uD840-\\uD868\\uD86A-\\uD86C][\\uDC00-\\uDFFF]|\\uD80D[\\uDC00-\\uDC2E]|\\uD81A[\\uDC00-\\uDE38\\uDE40-\\uDE5E\\uDE60-\\uDE69\\uDED0-\\uDEED\\uDEF0-\\uDEF4\\uDF00-\\uDF36\\uDF40-\\uDF43\\uDF50-\\uDF59\\uDF63-\\uDF77\\uDF7D-\\uDF8F]|\\uD81B[\\uDF00-\\uDF44\\uDF50-\\uDF7E\\uDF8F-\\uDF9F]|\\uD82C[\\uDC00\\uDC01]|\\uD82F[\\uDC00-\\uDC6A\\uDC70-\\uDC7C\\uDC80-\\uDC88\\uDC90-\\uDC99\\uDC9D\\uDC9E]|\\uD834[\\uDD65-\\uDD69\\uDD6D-\\uDD72\\uDD7B-\\uDD82\\uDD85-\\uDD8B\\uDDAA-\\uDDAD\\uDE42-\\uDE44]|\\uD835[\\uDC00-\\uDC54\\uDC56-\\uDC9C\\uDC9E\\uDC9F\\uDCA2\\uDCA5\\uDCA6\\uDCA9-\\uDCAC\\uDCAE-\\uDCB9\\uDCBB\\uDCBD-\\uDCC3\\uDCC5-\\uDD05\\uDD07-\\uDD0A\\uDD0D-\\uDD14\\uDD16-\\uDD1C\\uDD1E-\\uDD39\\uDD3B-\\uDD3E\\uDD40-\\uDD44\\uDD46\\uDD4A-\\uDD50\\uDD52-\\uDEA5\\uDEA8-\\uDEC0\\uDEC2-\\uDEDA\\uDEDC-\\uDEFA\\uDEFC-\\uDF14\\uDF16-\\uDF34\\uDF36-\\uDF4E\\uDF50-\\uDF6E\\uDF70-\\uDF88\\uDF8A-\\uDFA8\\uDFAA-\\uDFC2\\uDFC4-\\uDFCB\\uDFCE-\\uDFFF]|\\uD83A[\\uDC00-\\uDCC4\\uDCD0-\\uDCD6]|\\uD83B[\\uDE00-\\uDE03\\uDE05-\\uDE1F\\uDE21\\uDE22\\uDE24\\uDE27\\uDE29-\\uDE32\\uDE34-\\uDE37\\uDE39\\uDE3B\\uDE42\\uDE47\\uDE49\\uDE4B\\uDE4D-\\uDE4F\\uDE51\\uDE52\\uDE54\\uDE57\\uDE59\\uDE5B\\uDE5D\\uDE5F\\uDE61\\uDE62\\uDE64\\uDE67-\\uDE6A\\uDE6C-\\uDE72\\uDE74-\\uDE77\\uDE79-\\uDE7C\\uDE7E\\uDE80-\\uDE89\\uDE8B-\\uDE9B\\uDEA1-\\uDEA3\\uDEA5-\\uDEA9\\uDEAB-\\uDEBB]|\\uD869[\\uDC00-\\uDED6\\uDF00-\\uDFFF]|\\uD86D[\\uDC00-\\uDF34\\uDF40-\\uDFFF]|\\uD86E[\\uDC00-\\uDC1D]|\\uD87E[\\uDC00-\\uDE1D]|\\uDB40[\\uDD00-\\uDDEF]/},d=[5760,6158,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8239,8287,12288,65279],D=new Array(128),m=0;m<128;++m)D[m]=m>=97&&m<=122||m>=65&&m<=90||36===m||95===m;for(h=new Array(128),m=0;m<128;++m)h[m]=m>=97&&m<=122||m>=65&&m<=90||m>=48&&m<=57||36===m||95===m;e.exports={isDecimalDigit:t,isHexDigit:u,isOctalDigit:n,isWhiteSpace:r,isLineTerminator:o,isIdentifierStartES5:i,isIdentifierPartES5:l,isIdentifierStartES6:c,isIdentifierPartES6:s}}()},function(e,t){function u(){throw new Error(\"setTimeout has not been defined\")}function n(){throw new Error(\"clearTimeout has not been defined\")}function r(e){if(s===setTimeout)return setTimeout(e,0);if((s===u||!s)&&setTimeout)return s=setTimeout,setTimeout(e,0);try{return s(e,0)}catch(t){try{return s.call(null,e,0)}catch(t){return s.call(this,e,0)}}}function o(e){if(f===clearTimeout)return clearTimeout(e);if((f===n||!f)&&clearTimeout)return f=clearTimeout,clearTimeout(e);try{return f(e)}catch(t){try{return f.call(null,e)}catch(t){return f.call(this,e)}}}function a(){h&&d&&(h=!1,d.length?D=d.concat(D):m=-1,D.length&&i())}function i(){if(!h){var e=r(a);h=!0;for(var t=D.length;t;){for(d=D,D=[];++m1)for(var u=1;u<]/g}},function(e,t,u){\"use strict\";function n(e){var t=e.currentBuildError,u=e.currentRuntimeErrorRecords,n=e.dismissRuntimeErrors,r=e.editorHandler;return t?a.a.createElement(c.a,{error:t,editorHandler:r}):u.length>0?a.a.createElement(s.a,{errorRecords:u,close:n,editorHandler:r}):null}Object.defineProperty(t,\"__esModule\",{value:!0});var r=u(18),o=(u.n(r),u(0)),a=u.n(o),i=u(24),l=u.n(i),c=u(34),s=u(39),f=u(1),p=u(13),d=null;window.updateContent=function(e){var t=n(e);return null===t?(l.a.unmountComponentAtNode(d),!1):(l.a.render(t,d),!0)},document.body.style.margin=\"0\",document.body.style[\"max-width\"]=\"100vw\",d=document.createElement(\"div\"),Object(p.a)(d,f.c),document.body.appendChild(d),window.parent.__REACT_ERROR_OVERLAY_GLOBAL_HOOK__.iframeReady()},function(e,t,u){\"undefined\"===typeof Promise&&(u(19).enable(),window.Promise=u(22)),Object.assign=u(2)},function(e,t,u){\"use strict\";function n(){c=!1,i._47=null,i._71=null}function r(e){function t(t){(e.allRejections||a(f[t].error,e.whitelist||l))&&(f[t].displayId=s++,e.onUnhandled?(f[t].logged=!0,e.onUnhandled(f[t].displayId,f[t].error)):(f[t].logged=!0,o(f[t].displayId,f[t].error)))}function u(t){f[t].logged&&(e.onHandled?e.onHandled(f[t].displayId,f[t].error):f[t].onUnhandled||(console.warn(\"Promise Rejection Handled (id: \"+f[t].displayId+\"):\"),console.warn(' This means you can ignore any previous messages of the form \"Possible Unhandled Promise Rejection\" with id '+f[t].displayId+\".\")))}e=e||{},c&&n(),c=!0;var r=0,s=0,f={};i._47=function(e){2===e._83&&f[e._56]&&(f[e._56].logged?u(e._56):clearTimeout(f[e._56].timeout),delete f[e._56])},i._71=function(e,u){0===e._75&&(e._56=r++,f[e._56]={displayId:null,error:u,timeout:setTimeout(t.bind(null,e._56),a(u,l)?100:2e3),logged:!1})}}function o(e,t){console.warn(\"Possible Unhandled Promise Rejection (id: \"+e+\"):\"),((t&&(t.stack||t))+\"\").split(\"\\n\").forEach(function(e){console.warn(\" \"+e)})}function a(e,t){return t.some(function(t){return e instanceof t})}var i=u(4),l=[ReferenceError,TypeError,RangeError],c=!1;t.disable=n,t.enable=r},function(e,t,u){\"use strict\";(function(t){function u(e){a.length||(o(),i=!0),a[a.length]=e}function n(){for(;lc){for(var t=0,u=a.length-l;tI.length&&I.push(e)}function d(e,t,u,r){var o=typeof e;\"undefined\"!==o&&\"boolean\"!==o||(e=null);var a=!1;if(null===e)a=!0;else switch(o){case\"string\":case\"number\":a=!0;break;case\"object\":switch(e.$$typeof){case y:case b:case v:case B:a=!0}}if(a)return u(r,e,\"\"===t?\".\"+D(e,0):t),1;if(a=0,t=\"\"===t?\".\":t+\":\",Array.isArray(e))for(var i=0;ithis.eventPool.length&&this.eventPool.push(e)}function H(e){e.eventPool=[],e.getPooled=M,e.release=j}function V(e,t,u,n){return U.call(this,e,t,u,n)}function z(e,t,u,n){return U.call(this,e,t,u,n)}function W(e,t){switch(e){case\"topKeyUp\":return-1!==dn.indexOf(t.keyCode);case\"topKeyDown\":return 229!==t.keyCode;case\"topKeyPress\":case\"topMouseDown\":case\"topBlur\":return!0;default:return!1}}function K(e){return e=e.detail,\"object\"===typeof e&&\"data\"in e?e.data:null}function G(e,t){switch(e){case\"topCompositionEnd\":return K(t);case\"topKeyPress\":return 32!==t.which?null:(bn=!0,Fn);case\"topTextInput\":return e=t.data,e===Fn&&bn?null:e;default:return null}}function $(e,t){if(vn)return\"topCompositionEnd\"===e||!Dn&&W(e,t)?(e=L(),sn._root=null,sn._startText=null,sn._fallbackText=null,vn=!1,e):null;switch(e){case\"topPaste\":return null;case\"topKeyPress\":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1Hn.length&&Hn.push(e)}}}function Oe(e,t){var u={};return u[e.toLowerCase()]=t.toLowerCase(),u[\"Webkit\"+e]=\"webkit\"+t,u[\"Moz\"+e]=\"moz\"+t,u[\"ms\"+e]=\"MS\"+t,u[\"O\"+e]=\"o\"+t.toLowerCase(),u}function Pe(e){if(Gn[e])return Gn[e];if(!Kn[e])return e;var t,u=Kn[e];for(t in u)if(u.hasOwnProperty(t)&&t in $n)return Gn[e]=u[t];return\"\"}function Ie(e){return Object.prototype.hasOwnProperty.call(e,Xn)||(e[Xn]=Jn++,Yn[e[Xn]]={}),Yn[e[Xn]]}function Re(e){for(;e&&e.firstChild;)e=e.firstChild;return e}function Le(e,t){var u=Re(e);e=0;for(var n;u;){if(3===u.nodeType){if(n=e+u.textContent.length,e<=t&&n>=t)return{node:u,offset:t-e};e=n}e:{for(;u;){if(u.nextSibling){u=u.nextSibling;break e}u=u.parentNode}u=void 0}u=Re(u)}}function qe(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(\"input\"===t&&\"text\"===e.type||\"textarea\"===t||\"true\"===e.contentEditable)}function Ue(e,t){if(rr||null==tr||tr!==bu())return null;var u=tr;return\"selectionStart\"in u&&qe(u)?u={start:u.selectionStart,end:u.selectionEnd}:window.getSelection?(u=window.getSelection(),u={anchorNode:u.anchorNode,anchorOffset:u.anchorOffset,focusNode:u.focusNode,focusOffset:u.focusOffset}):u=void 0,nr&&vu(nr,u)?null:(nr=u,e=U.getPooled(er.select,ur,e,t),e.type=\"select\",e.target=tr,P(e),e)}function Me(e,t,u,n){return U.call(this,e,t,u,n)}function je(e,t,u,n){return U.call(this,e,t,u,n)}function He(e,t,u,n){return U.call(this,e,t,u,n)}function Ve(e){var t=e.keyCode;return\"charCode\"in e?0===(e=e.charCode)&&13===t&&(e=13):e=t,32<=e||13===e?e:0}function ze(e,t,u,n){return U.call(this,e,t,u,n)}function We(e,t,u,n){return U.call(this,e,t,u,n)}function Ke(e,t,u,n){return U.call(this,e,t,u,n)}function Ge(e,t,u,n){return U.call(this,e,t,u,n)}function $e(e,t,u,n){return U.call(this,e,t,u,n)}function Qe(e){0>pr||(e.current=fr[pr],fr[pr]=null,pr--)}function Ye(e,t){pr++,fr[pr]=e.current,e.current=t}function Je(e){return Ze(e)?hr:dr.current}function Xe(e,t){var u=e.type.contextTypes;if(!u)return xu;var n=e.stateNode;if(n&&n.__reactInternalMemoizedUnmaskedChildContext===t)return n.__reactInternalMemoizedMaskedChildContext;var r,o={};for(r in u)o[r]=t[r];return n&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=t,e.__reactInternalMemoizedMaskedChildContext=o),o}function Ze(e){return 2===e.tag&&null!=e.type.childContextTypes}function et(e){Ze(e)&&(Qe(Dr,e),Qe(dr,e))}function tt(e,t,u){null!=dr.cursor&&n(\"168\"),Ye(dr,t,e),Ye(Dr,u,e)}function ut(e,t){var u=e.stateNode,r=e.type.childContextTypes;if(\"function\"!==typeof u.getChildContext)return t;u=u.getChildContext();for(var o in u)o in r||n(\"108\",Fe(e)||\"Unknown\",o);return Eu({},t,u)}function nt(e){if(!Ze(e))return!1;var t=e.stateNode;return t=t&&t.__reactInternalMemoizedMergedChildContext||xu,hr=dr.current,Ye(dr,t,e),Ye(Dr,Dr.current,e),!0}function rt(e,t){var u=e.stateNode;if(u||n(\"169\"),t){var r=ut(e,hr);u.__reactInternalMemoizedMergedChildContext=r,Qe(Dr,e),Qe(dr,e),Ye(dr,r,e)}else Qe(Dr,e);Ye(Dr,t,e)}function ot(e,t,u){this.tag=e,this.key=t,this.stateNode=this.type=null,this.sibling=this.child=this.return=null,this.index=0,this.memoizedState=this.updateQueue=this.memoizedProps=this.pendingProps=this.ref=null,this.internalContextTag=u,this.effectTag=0,this.lastEffect=this.firstEffect=this.nextEffect=null,this.expirationTime=0,this.alternate=null}function at(e,t,u){var n=e.alternate;return null===n?(n=new ot(e.tag,e.key,e.internalContextTag),n.type=e.type,n.stateNode=e.stateNode,n.alternate=e,e.alternate=n):(n.effectTag=0,n.nextEffect=null,n.firstEffect=null,n.lastEffect=null),n.expirationTime=u,n.pendingProps=t,n.child=e.child,n.memoizedProps=e.memoizedProps,n.memoizedState=e.memoizedState,n.updateQueue=e.updateQueue,n.sibling=e.sibling,n.index=e.index,n.ref=e.ref,n}function it(e,t,u){var r=void 0,o=e.type,a=e.key;return\"function\"===typeof o?(r=o.prototype&&o.prototype.isReactComponent?new ot(2,a,t):new ot(0,a,t),r.type=o,r.pendingProps=e.props):\"string\"===typeof o?(r=new ot(5,a,t),r.type=o,r.pendingProps=e.props):\"object\"===typeof o&&null!==o&&\"number\"===typeof o.tag?(r=o,r.pendingProps=e.props):n(\"130\",null==o?o:typeof o,\"\"),r.expirationTime=u,r}function lt(e,t,u,n){return t=new ot(10,n,t),t.pendingProps=e,t.expirationTime=u,t}function ct(e,t,u){return t=new ot(6,null,t),t.pendingProps=e,t.expirationTime=u,t}function st(e,t,u){return t=new ot(7,e.key,t),t.type=e.handler,t.pendingProps=e,t.expirationTime=u,t}function ft(e,t,u){return e=new ot(9,null,t),e.expirationTime=u,e}function pt(e,t,u){return t=new ot(4,e.key,t),t.pendingProps=e.children||[],t.expirationTime=u,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function dt(e){return function(t){try{return e(t)}catch(e){}}}function Dt(e){if(\"undefined\"===typeof{})return!1;var t={};if(t.isDisabled||!t.supportsFiber)return!0;try{var u=t.inject(e);mr=dt(function(e){return t.onCommitFiberRoot(u,e)}),gr=dt(function(e){return t.onCommitFiberUnmount(u,e)})}catch(e){}return!0}function ht(e){\"function\"===typeof mr&&mr(e)}function mt(e){\"function\"===typeof gr&&gr(e)}function gt(e){return{baseState:e,expirationTime:0,first:null,last:null,callbackList:null,hasForceUpdate:!1,isInitialized:!1}}function Ct(e,t){null===e.last?e.first=e.last=t:(e.last.next=t,e.last=t),(0===e.expirationTime||e.expirationTime>t.expirationTime)&&(e.expirationTime=t.expirationTime)}function At(e,t){var u=e.alternate,n=e.updateQueue;null===n&&(n=e.updateQueue=gt(null)),null!==u?null===(e=u.updateQueue)&&(e=u.updateQueue=gt(null)):e=null,e=e!==n?e:null,null===e?Ct(n,t):null===n.last||null===e.last?(Ct(n,t),Ct(e,t)):(Ct(n,t),e.last=t)}function Et(e,t,u,n){return e=e.partialState,\"function\"===typeof e?e.call(t,u,n):e}function Ft(e,t,u,n,r,o){null!==e&&e.updateQueue===u&&(u=t.updateQueue={baseState:u.baseState,expirationTime:u.expirationTime,first:u.first,last:u.last,isInitialized:u.isInitialized,callbackList:null,hasForceUpdate:!1}),u.expirationTime=0,u.isInitialized?e=u.baseState:(e=u.baseState=t.memoizedState,u.isInitialized=!0);for(var a=!0,i=u.first,l=!1;null!==i;){var c=i.expirationTime;if(c>o){var s=u.expirationTime;(0===s||s>c)&&(u.expirationTime=c),l||(l=!0,u.baseState=e)}else l||(u.first=i.next,null===u.first&&(u.last=null)),i.isReplace?(e=Et(i,n,e,r),a=!0):(c=Et(i,n,e,r))&&(e=a?Eu({},e,c):Eu(e,c),a=!1),i.isForced&&(u.hasForceUpdate=!0),null!==i.callback&&(c=u.callbackList,null===c&&(c=u.callbackList=[]),c.push(i));i=i.next}return null!==u.callbackList?t.effectTag|=32:null!==u.first||u.hasForceUpdate||(t.updateQueue=null),l||(u.baseState=e),e}function yt(e,t){var u=e.callbackList;if(null!==u)for(e.callbackList=null,e=0;ep?(d=f,f=null):d=f.sibling;var g=h(n,f,i[p],l);if(null===g){null===f&&(f=d);break}e&&f&&null===g.alternate&&t(n,f),o=a(g,o,p),null===s?c=g:s.sibling=g,s=g,f=d}if(p===i.length)return u(n,f),c;if(null===f){for(;pd?(g=p,p=null):g=p.sibling;var A=h(o,p,C.value,c);if(null===A){p||(p=g);break}e&&p&&null===A.alternate&&t(o,p),i=a(A,i,d),null===f?s=A:f.sibling=A,f=A,p=g}if(C.done)return u(o,p),s;if(null===p){for(;!C.done;d++,C=l.next())null!==(C=D(o,C.value,c))&&(i=a(C,i,d),null===f?s=C:f.sibling=C,f=C);return s}for(p=r(o,p);!C.done;d++,C=l.next())null!==(C=m(p,o,d,C.value,c))&&(e&&null!==C.alternate&&p.delete(null===C.key?d:C.key),i=a(C,i,d),null===f?s=C:f.sibling=C,f=C);return e&&p.forEach(function(e){return t(o,e)}),s}return function(e,r,a,l){\"object\"===typeof a&&null!==a&&a.type===br&&null===a.key&&(a=a.props.children);var c=\"object\"===typeof a&&null!==a;if(c)switch(a.$$typeof){case Ar:e:{var s=a.key;for(c=r;null!==c;){if(c.key===s){if(10===c.tag?a.type===br:c.type===a.type){u(e,c.sibling),r=o(c,a.type===br?a.props.children:a.props,l),r.ref=Bt(c,a),r.return=e,e=r;break e}u(e,c);break}t(e,c),c=c.sibling}a.type===br?(r=lt(a.props.children,e.internalContextTag,l,a.key),r.return=e,e=r):(l=it(a,e.internalContextTag,l),l.ref=Bt(r,a),l.return=e,e=l)}return i(e);case Er:e:{for(c=a.key;null!==r;){if(r.key===c){if(7===r.tag){u(e,r.sibling),r=o(r,a,l),r.return=e,e=r;break e}u(e,r);break}t(e,r),r=r.sibling}r=st(a,e.internalContextTag,l),r.return=e,e=r}return i(e);case Fr:e:{if(null!==r){if(9===r.tag){u(e,r.sibling),r=o(r,null,l),r.type=a.value,r.return=e,e=r;break e}u(e,r)}r=ft(a,e.internalContextTag,l),r.type=a.value,r.return=e,e=r}return i(e);case yr:e:{for(c=a.key;null!==r;){if(r.key===c){if(4===r.tag&&r.stateNode.containerInfo===a.containerInfo&&r.stateNode.implementation===a.implementation){u(e,r.sibling),r=o(r,a.children||[],l),r.return=e,e=r;break e}u(e,r);break}t(e,r),r=r.sibling}r=pt(a,e.internalContextTag,l),r.return=e,e=r}return i(e)}if(\"string\"===typeof a||\"number\"===typeof a)return a=\"\"+a,null!==r&&6===r.tag?(u(e,r.sibling),r=o(r,a,l)):(u(e,r),r=ct(a,e.internalContextTag,l)),r.return=e,e=r,i(e);if(Br(a))return g(e,r,a,l);if(vt(a))return C(e,r,a,l);if(c&&wt(e,a),\"undefined\"===typeof a)switch(e.tag){case 2:case 1:l=e.type,n(\"152\",l.displayName||l.name||\"Component\")}return u(e,r)}}function kt(e,t,u,r,o){function a(e,t,u){var n=t.expirationTime;t.child=null===e?xr(t,null,u,n):wr(t,e.child,u,n)}function i(e,t){var u=t.ref;null===u||e&&e.ref===u||(t.effectTag|=128)}function l(e,t,u,n){if(i(e,t),!u)return n&&rt(t,!1),s(e,t);u=t.stateNode,jn.current=t;var r=u.render();return t.effectTag|=1,a(e,t,r),t.memoizedState=u.state,t.memoizedProps=u.props,n&&rt(t,!0),t.child}function c(e){var t=e.stateNode;t.pendingContext?tt(e,t.pendingContext,t.pendingContext!==t.context):t.context&&tt(e,t.context,!1),m(e,t.containerInfo)}function s(e,t){if(null!==e&&t.child!==e.child&&n(\"153\"),null!==t.child){e=t.child;var u=at(e,e.pendingProps,e.expirationTime);for(t.child=u,u.return=t;null!==e.sibling;)e=e.sibling,u=u.sibling=at(e,e.pendingProps,e.expirationTime),u.return=t;u.sibling=null}return t.child}function f(e,t){switch(t.tag){case 3:c(t);break;case 2:nt(t);break;case 4:m(t,t.stateNode.containerInfo)}return null}var p=e.shouldSetTextContent,d=e.useSyncScheduling,D=e.shouldDeprioritizeSubtree,h=t.pushHostContext,m=t.pushHostContainer,g=u.enterHydrationState,C=u.resetHydrationState,A=u.tryToClaimNextHydratableInstance;e=bt(r,o,function(e,t){e.memoizedProps=t},function(e,t){e.memoizedState=t});var E=e.adoptClassInstance,F=e.constructClassInstance,y=e.mountClassInstance,b=e.updateClassInstance;return{beginWork:function(e,t,u){if(0===t.expirationTime||t.expirationTime>u)return f(e,t);switch(t.tag){case 0:null!==e&&n(\"155\");var r=t.type,o=t.pendingProps,v=Je(t);return v=Xe(t,v),r=r(o,v),t.effectTag|=1,\"object\"===typeof r&&null!==r&&\"function\"===typeof r.render?(t.tag=2,o=nt(t),E(t,r),y(t,u),t=l(e,t,!0,o)):(t.tag=1,a(e,t,r),t.memoizedProps=o,t=t.child),t;case 1:e:{if(o=t.type,u=t.pendingProps,r=t.memoizedProps,Dr.current)null===u&&(u=r);else if(null===u||r===u){t=s(e,t);break e}r=Je(t),r=Xe(t,r),o=o(u,r),t.effectTag|=1,a(e,t,o),t.memoizedProps=u,t=t.child}return t;case 2:return o=nt(t),r=void 0,null===e?t.stateNode?n(\"153\"):(F(t,t.pendingProps),y(t,u),r=!0):r=b(e,t,u),l(e,t,r,o);case 3:return c(t),o=t.updateQueue,null!==o?(r=t.memoizedState,o=Ft(e,t,o,null,null,u),r===o?(C(),t=s(e,t)):(r=o.element,v=t.stateNode,(null===e||null===e.child)&&v.hydrate&&g(t)?(t.effectTag|=2,t.child=xr(t,null,r,u)):(C(),a(e,t,r)),t.memoizedState=o,t=t.child)):(C(),t=s(e,t)),t;case 5:h(t),null===e&&A(t),o=t.type;var B=t.memoizedProps;return r=t.pendingProps,null===r&&null===(r=B)&&n(\"154\"),v=null!==e?e.memoizedProps:null,Dr.current||null!==r&&B!==r?(B=r.children,p(o,r)?B=null:v&&p(o,v)&&(t.effectTag|=16),i(e,t),2147483647!==u&&!d&&D(o,r)?(t.expirationTime=2147483647,t=null):(a(e,t,B),t.memoizedProps=r,t=t.child)):t=s(e,t),t;case 6:return null===e&&A(t),e=t.pendingProps,null===e&&(e=t.memoizedProps),t.memoizedProps=e,null;case 8:t.tag=7;case 7:return o=t.pendingProps,Dr.current?null===o&&null===(o=e&&e.memoizedProps)&&n(\"154\"):null!==o&&t.memoizedProps!==o||(o=t.memoizedProps),r=o.children,t.stateNode=null===e?xr(t,t.stateNode,r,u):wr(t,t.stateNode,r,u),t.memoizedProps=o,t.stateNode;case 9:return null;case 4:e:{if(m(t,t.stateNode.containerInfo),o=t.pendingProps,Dr.current)null===o&&null==(o=e&&e.memoizedProps)&&n(\"154\");else if(null===o||t.memoizedProps===o){t=s(e,t);break e}null===e?t.child=wr(t,null,o,u):a(e,t,o),t.memoizedProps=o,t=t.child}return t;case 10:e:{if(u=t.pendingProps,Dr.current)null===u&&(u=t.memoizedProps);else if(null===u||t.memoizedProps===u){t=s(e,t);break e}a(e,t,u),t.memoizedProps=u,t=t.child}return t;default:n(\"156\")}},beginFailedWork:function(e,t,u){switch(t.tag){case 2:nt(t);break;case 3:c(t);break;default:n(\"157\")}return t.effectTag|=64,null===e?t.child=null:t.child!==e.child&&(t.child=e.child),0===t.expirationTime||t.expirationTime>u?f(e,t):(t.firstEffect=null,t.lastEffect=null,t.child=null===e?xr(t,null,null,u):wr(t,e.child,null,u),2===t.tag&&(e=t.stateNode,t.memoizedProps=e.props,t.memoizedState=e.state),t.child)}}}function Tt(e,t,u){function r(e){e.effectTag|=4}var o=e.createInstance,a=e.createTextInstance,i=e.appendInitialChild,l=e.finalizeInitialChildren,c=e.prepareUpdate,s=e.persistence,f=t.getRootHostContainer,p=t.popHostContext,d=t.getHostContext,D=t.popHostContainer,h=u.prepareToHydrateHostInstance,m=u.prepareToHydrateHostTextInstance,g=u.popHydrationState,C=void 0,A=void 0,E=void 0;return e.mutation?(C=function(){},A=function(e,t,u){(t.updateQueue=u)&&r(t)},E=function(e,t,u,n){u!==n&&r(t)}):n(s?\"235\":\"236\"),{completeWork:function(e,t,u){var s=t.pendingProps;switch(null===s?s=t.memoizedProps:2147483647===t.expirationTime&&2147483647!==u||(t.pendingProps=null),t.tag){case 1:return null;case 2:return et(t),null;case 3:return D(t),Qe(Dr,t),Qe(dr,t),s=t.stateNode,s.pendingContext&&(s.context=s.pendingContext,s.pendingContext=null),null!==e&&null!==e.child||(g(t),t.effectTag&=-3),C(t),null;case 5:p(t),u=f();var F=t.type;if(null!==e&&null!=t.stateNode){var y=e.memoizedProps,b=t.stateNode,v=d();b=c(b,F,y,s,u,v),A(e,t,b,F,y,s,u),e.ref!==t.ref&&(t.effectTag|=128)}else{if(!s)return null===t.stateNode&&n(\"166\"),null;if(e=d(),g(t))h(t,u,e)&&r(t);else{e=o(F,s,u,e,t);e:for(y=t.child;null!==y;){if(5===y.tag||6===y.tag)i(e,y.stateNode);else if(4!==y.tag&&null!==y.child){y.child.return=y,y=y.child;continue}if(y===t)break;for(;null===y.sibling;){if(null===y.return||y.return===t)break e;y=y.return}y.sibling.return=y.return,y=y.sibling}l(e,F,s,u)&&r(t),t.stateNode=e}null!==t.ref&&(t.effectTag|=128)}return null;case 6:if(e&&null!=t.stateNode)E(e,t,e.memoizedProps,s);else{if(\"string\"!==typeof s)return null===t.stateNode&&n(\"166\"),null;e=f(),u=d(),g(t)?m(t)&&r(t):t.stateNode=a(s,e,u,t)}return null;case 7:(s=t.memoizedProps)||n(\"165\"),t.tag=8,F=[];e:for((y=t.stateNode)&&(y.return=t);null!==y;){if(5===y.tag||6===y.tag||4===y.tag)n(\"247\");else if(9===y.tag)F.push(y.type);else if(null!==y.child){y.child.return=y,y=y.child;continue}for(;null===y.sibling;){if(null===y.return||y.return===t)break e;y=y.return}y.sibling.return=y.return,y=y.sibling}return y=s.handler,s=y(s.props,F),t.child=wr(t,null!==e?e.child:null,s,u),t.child;case 8:return t.tag=7,null;case 9:case 10:return null;case 4:return D(t),C(t),null;case 0:n(\"167\");default:n(\"156\")}}}}function St(e,t){function u(e){var u=e.ref;if(null!==u)try{u(null)}catch(u){t(e,u)}}function r(e){switch(\"function\"===typeof mt&&mt(e),e.tag){case 2:u(e);var n=e.stateNode;if(\"function\"===typeof n.componentWillUnmount)try{n.props=e.memoizedProps,n.state=e.memoizedState,n.componentWillUnmount()}catch(u){t(e,u)}break;case 5:u(e);break;case 7:o(e.stateNode);break;case 4:c&&i(e)}}function o(e){for(var t=e;;)if(r(t),null===t.child||c&&4===t.tag){if(t===e)break;for(;null===t.sibling;){if(null===t.return||t.return===e)return;t=t.return}t.sibling.return=t.return,t=t.sibling}else t.child.return=t,t=t.child}function a(e){return 5===e.tag||3===e.tag||4===e.tag}function i(e){for(var t=e,u=!1,a=void 0,i=void 0;;){if(!u){u=t.return;e:for(;;){switch(null===u&&n(\"160\"),u.tag){case 5:a=u.stateNode,i=!1;break e;case 3:case 4:a=u.stateNode.containerInfo,i=!0;break e}u=u.return}u=!0}if(5===t.tag||6===t.tag)o(t),i?A(a,t.stateNode):C(a,t.stateNode);else if(4===t.tag?a=t.stateNode.containerInfo:r(t),null!==t.child){t.child.return=t,t=t.child;continue}if(t===e)break;for(;null===t.sibling;){if(null===t.return||t.return===e)return;t=t.return,4===t.tag&&(u=!1)}t.sibling.return=t.return,t=t.sibling}}var l=e.getPublicInstance,c=e.mutation;e=e.persistence,c||n(e?\"235\":\"236\");var s=c.commitMount,f=c.commitUpdate,p=c.resetTextContent,d=c.commitTextUpdate,D=c.appendChild,h=c.appendChildToContainer,m=c.insertBefore,g=c.insertInContainerBefore,C=c.removeChild,A=c.removeChildFromContainer;return{commitResetTextContent:function(e){p(e.stateNode)},commitPlacement:function(e){e:{for(var t=e.return;null!==t;){if(a(t)){var u=t;break e}t=t.return}n(\"160\"),u=void 0}var r=t=void 0;switch(u.tag){case 5:t=u.stateNode,r=!1;break;case 3:case 4:t=u.stateNode.containerInfo,r=!0;break;default:n(\"161\")}16&u.effectTag&&(p(t),u.effectTag&=-17);e:t:for(u=e;;){for(;null===u.sibling;){if(null===u.return||a(u.return)){u=null;break e}u=u.return}for(u.sibling.return=u.return,u=u.sibling;5!==u.tag&&6!==u.tag;){if(2&u.effectTag)continue t;if(null===u.child||4===u.tag)continue t;u.child.return=u,u=u.child}if(!(2&u.effectTag)){u=u.stateNode;break e}}for(var o=e;;){if(5===o.tag||6===o.tag)u?r?g(t,o.stateNode,u):m(t,o.stateNode,u):r?h(t,o.stateNode):D(t,o.stateNode);else if(4!==o.tag&&null!==o.child){o.child.return=o,o=o.child;continue}if(o===e)break;for(;null===o.sibling;){if(null===o.return||o.return===e)return;o=o.return}o.sibling.return=o.return,o=o.sibling}},commitDeletion:function(e){i(e),e.return=null,e.child=null,e.alternate&&(e.alternate.child=null,e.alternate.return=null)},commitWork:function(e,t){switch(t.tag){case 2:break;case 5:var u=t.stateNode;if(null!=u){var r=t.memoizedProps;e=null!==e?e.memoizedProps:r;var o=t.type,a=t.updateQueue;t.updateQueue=null,null!==a&&f(u,a,o,e,r,t)}break;case 6:null===t.stateNode&&n(\"162\"),u=t.memoizedProps,d(t.stateNode,null!==e?e.memoizedProps:u,u);break;case 3:break;default:n(\"163\")}},commitLifeCycles:function(e,t){switch(t.tag){case 2:var u=t.stateNode;if(4&t.effectTag)if(null===e)u.props=t.memoizedProps,u.state=t.memoizedState,u.componentDidMount();else{var r=e.memoizedProps;e=e.memoizedState,u.props=t.memoizedProps,u.state=t.memoizedState,u.componentDidUpdate(r,e)}t=t.updateQueue,null!==t&&yt(t,u);break;case 3:u=t.updateQueue,null!==u&&yt(u,null!==t.child?t.child.stateNode:null);break;case 5:u=t.stateNode,null===e&&4&t.effectTag&&s(u,t.type,t.memoizedProps,t);break;case 6:case 4:break;default:n(\"163\")}},commitAttachRef:function(e){var t=e.ref;if(null!==t){var u=e.stateNode;switch(e.tag){case 5:t(l(u));break;default:t(u)}}},commitDetachRef:function(e){null!==(e=e.ref)&&e(null)}}}function _t(e){function t(e){return e===kr&&n(\"174\"),e}var u=e.getChildHostContext,r=e.getRootHostContext,o={current:kr},a={current:kr},i={current:kr};return{getHostContext:function(){return t(o.current)},getRootHostContainer:function(){return t(i.current)},popHostContainer:function(e){Qe(o,e),Qe(a,e),Qe(i,e)},popHostContext:function(e){a.current===e&&(Qe(o,e),Qe(a,e))},pushHostContainer:function(e,t){Ye(i,t,e),t=r(t),Ye(a,e,e),Ye(o,t,e)},pushHostContext:function(e){var n=t(i.current),r=t(o.current);n=u(r,e.type,n),r!==n&&(Ye(a,e,e),Ye(o,n,e))},resetHostContainer:function(){o.current=kr,i.current=kr}}}function Nt(e){function t(e,t){var u=new ot(5,null,0);u.type=\"DELETED\",u.stateNode=t,u.return=e,u.effectTag=8,null!==e.lastEffect?(e.lastEffect.nextEffect=u,e.lastEffect=u):e.firstEffect=e.lastEffect=u}function u(e,t){switch(e.tag){case 5:return null!==(t=a(t,e.type,e.pendingProps))&&(e.stateNode=t,!0);case 6:return null!==(t=i(t,e.pendingProps))&&(e.stateNode=t,!0);default:return!1}}function r(e){for(e=e.return;null!==e&&5!==e.tag&&3!==e.tag;)e=e.return;p=e}var o=e.shouldSetTextContent;if(!(e=e.hydration))return{enterHydrationState:function(){return!1},resetHydrationState:function(){},tryToClaimNextHydratableInstance:function(){},prepareToHydrateHostInstance:function(){n(\"175\")},prepareToHydrateHostTextInstance:function(){n(\"176\")},popHydrationState:function(){return!1}};var a=e.canHydrateInstance,i=e.canHydrateTextInstance,l=e.getNextHydratableSibling,c=e.getFirstHydratableChild,s=e.hydrateInstance,f=e.hydrateTextInstance,p=null,d=null,D=!1;return{enterHydrationState:function(e){return d=c(e.stateNode.containerInfo),p=e,D=!0},resetHydrationState:function(){d=p=null,D=!1},tryToClaimNextHydratableInstance:function(e){if(D){var n=d;if(n){if(!u(e,n)){if(!(n=l(n))||!u(e,n))return e.effectTag|=2,D=!1,void(p=e);t(p,d)}p=e,d=c(n)}else e.effectTag|=2,D=!1,p=e}},prepareToHydrateHostInstance:function(e,t,u){return t=s(e.stateNode,e.type,e.memoizedProps,t,u,e),e.updateQueue=t,null!==t},prepareToHydrateHostTextInstance:function(e){return f(e.stateNode,e.memoizedProps,e)},popHydrationState:function(e){if(e!==p)return!1;if(!D)return r(e),D=!0,!1;var u=e.type;if(5!==e.tag||\"head\"!==u&&\"body\"!==u&&!o(u,e.memoizedProps))for(u=d;u;)t(e,u),u=l(u);return r(e),d=p?l(e.stateNode):null,!0}}}function Ot(e){function t(e){oe=Q=!0;var t=e.stateNode;if(t.current===e&&n(\"177\"),t.isReadyForCommit=!1,jn.current=null,1a.expirationTime)&&(o=a.expirationTime),a=a.sibling;r.expirationTime=o}if(null!==t)return t;if(null!==u&&(null===u.firstEffect&&(u.firstEffect=e.firstEffect),null!==e.lastEffect&&(null!==u.lastEffect&&(u.lastEffect.nextEffect=e.firstEffect),u.lastEffect=e.lastEffect),1e))if(X<=G)for(;null!==Y;)Y=c(Y)?o(Y):r(Y);else for(;null!==Y&&!y();)Y=c(Y)?o(Y):r(Y)}else if(!(0===X||X>e))if(X<=G)for(;null!==Y;)Y=r(Y);else for(;null!==Y&&!y();)Y=r(Y)}function i(e,t){if(Q&&n(\"243\"),Q=!0,e.isReadyForCommit=!1,e!==J||t!==X||null===Y){for(;-1t)&&(e.expirationTime=t),null!==e.alternate&&(0===e.alternate.expirationTime||e.alternate.expirationTime>t)&&(e.alternate.expirationTime=t),null===e.return){if(3!==e.tag)break;var u=e.stateNode;!Q&&u===J&&tEe&&n(\"185\"),null===r.nextScheduledRoot)r.remainingExpirationTime=o,null===le?(ie=le=r,r.nextScheduledRoot=r):(le=le.nextScheduledRoot=r,le.nextScheduledRoot=ie);else{var a=r.remainingExpirationTime;(0===a||oce)return;H(se)}var t=M()-K;ce=e,se=j(A,{timeout:10*(e-2)-t})}function C(){var e=0,t=null;if(null!==le)for(var u=le,r=ie;null!==r;){var o=r.remainingExpirationTime;if(0===o){if((null===u||null===le)&&n(\"244\"),r===r.nextScheduledRoot){ie=le=r.nextScheduledRoot=null;break}if(r===ie)ie=o=r.nextScheduledRoot,le.nextScheduledRoot=o,r.nextScheduledRoot=null;else{if(r===le){le=u,le.nextScheduledRoot=ie,r.nextScheduledRoot=null;break}u.nextScheduledRoot=r.nextScheduledRoot,r.nextScheduledRoot=null}r=u.nextScheduledRoot}else{if((0===e||obe)&&(De=!0)}function b(e){null===pe&&n(\"246\"),pe.remainingExpirationTime=0,he||(he=!0,me=e)}var v=_t(e),B=Nt(e),w=v.popHostContainer,x=v.popHostContext,k=v.resetHostContainer,T=kt(e,v,B,d,p),S=T.beginWork,_=T.beginFailedWork,N=Tt(e,v,B).completeWork;v=St(e,l);var O=v.commitResetTextContent,P=v.commitPlacement,I=v.commitDeletion,R=v.commitWork,L=v.commitLifeCycles,q=v.commitAttachRef,U=v.commitDetachRef,M=e.now,j=e.scheduleDeferredCallback,H=e.cancelDeferredCallback,V=e.useSyncScheduling,z=e.prepareForCommit,W=e.resetAfterCommit,K=M(),G=2,$=0,Q=!1,Y=null,J=null,X=0,Z=null,ee=null,te=null,ue=null,ne=null,re=!1,oe=!1,ae=!1,ie=null,le=null,ce=0,se=-1,fe=!1,pe=null,de=0,De=!1,he=!1,me=null,ge=null,Ce=!1,Ae=!1,Ee=1e3,ye=0,be=1;return{computeAsyncExpiration:f,computeExpirationForFiber:p,scheduleWork:d,batchedUpdates:function(e,t){var u=Ce;Ce=!0;try{return e(t)}finally{(Ce=u)||fe||E(1,null)}},unbatchedUpdates:function(e){if(Ce&&!Ae){Ae=!0;try{return e()}finally{Ae=!1}}return e()},flushSync:function(e){var t=Ce;Ce=!0;try{e:{var u=$;$=1;try{var r=e();break e}finally{$=u}r=void 0}return r}finally{Ce=t,fe&&n(\"187\"),E(1,null)}},deferredUpdates:function(e){var t=$;$=f();try{return e()}finally{$=t}}}}function Pt(e){function t(e){return e=we(e),null===e?null:e.stateNode}var u=e.getPublicInstance;e=Ot(e);var r=e.computeAsyncExpiration,o=e.computeExpirationForFiber,a=e.scheduleWork;return{createContainer:function(e,t){var u=new ot(3,null,0);return e={current:u,containerInfo:e,pendingChildren:null,remainingExpirationTime:0,isReadyForCommit:!1,finishedWork:null,context:null,pendingContext:null,hydrate:t,nextScheduledRoot:null},u.stateNode=e},updateContainer:function(e,t,u,i){var l=t.current;if(u){u=u._reactInternalFiber;var c;e:{for(2===ye(u)&&2===u.tag||n(\"170\"),c=u;3!==c.tag;){if(Ze(c)){c=c.stateNode.__reactInternalMemoizedMergedChildContext;break e}(c=c.return)||n(\"171\")}c=c.stateNode.context}u=Ze(u)?ut(u,c):c}else u=xu;null===t.context?t.context=u:t.pendingContext=u,t=i,t=void 0===t?null:t,i=null!=e&&null!=e.type&&null!=e.type.prototype&&!0===e.type.prototype.unstable_isAsyncReactComponent?r():o(l),At(l,{expirationTime:i,partialState:{element:e},callback:t,isReplace:!1,isForced:!1,nextCallback:null,next:null}),a(l,i)},batchedUpdates:e.batchedUpdates,unbatchedUpdates:e.unbatchedUpdates,deferredUpdates:e.deferredUpdates,flushSync:e.flushSync,getPublicRootInstance:function(e){if(e=e.current,!e.child)return null;switch(e.child.tag){case 5:return u(e.child.stateNode);default:return e.child.stateNode}},findHostInstance:t,findHostInstanceWithNoPortals:function(e){return e=xe(e),null===e?null:e.stateNode},injectIntoDevTools:function(e){var u=e.findFiberByHostInstance;return Dt(Eu({},e,{findHostInstanceByFiber:function(e){return t(e)},findFiberByHostInstance:function(e){return u?u(e):null}}))}}}function It(e,t,u){var n=3u||n.hasOverloadedBooleanValue&&!1===u?Ut(e,t):n.mustUseProperty?e[n.propertyName]=u:(t=n.attributeName,(r=n.attributeNamespace)?e.setAttributeNS(r,t,\"\"+u):n.hasBooleanValue||n.hasOverloadedBooleanValue&&!0===u?e.setAttribute(t,\"\"):e.setAttribute(t,\"\"+u))}else qt(e,t,o(t,u)?u:null)}function qt(e,t,u){Rt(t)&&(null==u?e.removeAttribute(t):e.setAttribute(t,\"\"+u))}function Ut(e,t){var u=a(t);u?(t=u.mutationMethod)?t(e,void 0):u.mustUseProperty?e[u.propertyName]=!u.hasBooleanValue&&\"\":e.removeAttribute(u.attributeName):e.removeAttribute(t)}function Mt(e,t){var u=t.value,n=t.checked;return Eu({type:void 0,step:void 0,min:void 0,max:void 0},t,{defaultChecked:void 0,defaultValue:void 0,value:null!=u?u:e._wrapperState.initialValue,checked:null!=n?n:e._wrapperState.initialChecked})}function jt(e,t){var u=t.defaultValue;e._wrapperState={initialChecked:null!=t.checked?t.checked:t.defaultChecked,initialValue:null!=t.value?t.value:u,controlled:\"checkbox\"===t.type||\"radio\"===t.type?null!=t.checked:null!=t.value}}function Ht(e,t){null!=(t=t.checked)&&Lt(e,\"checked\",t)}function Vt(e,t){Ht(e,t);var u=t.value;null!=u?0===u&&\"\"===e.value?e.value=\"0\":\"number\"===t.type?(t=parseFloat(e.value)||0,(u!=t||u==t&&e.value!=u)&&(e.value=\"\"+u)):e.value!==\"\"+u&&(e.value=\"\"+u):(null==t.value&&null!=t.defaultValue&&e.defaultValue!==\"\"+t.defaultValue&&(e.defaultValue=\"\"+t.defaultValue),null==t.checked&&null!=t.defaultChecked&&(e.defaultChecked=!!t.defaultChecked))}function zt(e,t){switch(t.type){case\"submit\":case\"reset\":break;case\"color\":case\"date\":case\"datetime\":case\"datetime-local\":case\"month\":case\"time\":case\"week\":e.value=\"\",e.value=e.defaultValue;break;default:e.value=e.value}t=e.name,\"\"!==t&&(e.name=\"\"),e.defaultChecked=!e.defaultChecked,e.defaultChecked=!e.defaultChecked,\"\"!==t&&(e.name=t)}function Wt(e){var t=\"\";return Cu.Children.forEach(e,function(e){null==e||\"string\"!==typeof e&&\"number\"!==typeof e||(t+=e)}),t}function Kt(e,t){return e=Eu({children:void 0},t),(t=Wt(t.children))&&(e.children=t),e}function Gt(e,t,u,n){if(e=e.options,t){t={};for(var r=0;r=t.length||n(\"93\"),t=t[0]),u=\"\"+t),null==u&&(u=\"\")),e._wrapperState={initialValue:\"\"+u}}function Jt(e,t){var u=t.value;null!=u&&(u=\"\"+u,u!==e.value&&(e.value=u),null==t.defaultValue&&(e.defaultValue=u)),null!=t.defaultValue&&(e.defaultValue=t.defaultValue)}function Xt(e){var t=e.textContent;t===e._wrapperState.initialValue&&(e.value=t)}function Zt(e){switch(e){case\"svg\":return\"http://www.w3.org/2000/svg\";case\"math\":return\"http://www.w3.org/1998/Math/MathML\";default:return\"http://www.w3.org/1999/xhtml\"}}function eu(e,t){return null==e||\"http://www.w3.org/1999/xhtml\"===e?Zt(t):\"http://www.w3.org/2000/svg\"===e&&\"foreignObject\"===t?\"http://www.w3.org/1999/xhtml\":e}function tu(e,t){if(t){var u=e.firstChild;if(u&&u===e.lastChild&&3===u.nodeType)return void(u.nodeValue=t)}e.textContent=t}function uu(e,t){e=e.style;for(var u in t)if(t.hasOwnProperty(u)){var n=0===u.indexOf(\"--\"),r=u,o=t[u];r=null==o||\"boolean\"===typeof o||\"\"===o?\"\":n||\"number\"!==typeof o||0===o||Xr.hasOwnProperty(r)&&Xr[r]?(\"\"+o).trim():o+\"px\",\"float\"===u&&(u=\"cssFloat\"),n?e.setProperty(u,r):e[u]=r}}function nu(e,t,u){t&&(eo[e]&&(null!=t.children||null!=t.dangerouslySetInnerHTML)&&n(\"137\",e,u()),null!=t.dangerouslySetInnerHTML&&(null!=t.children&&n(\"60\"),\"object\"===typeof t.dangerouslySetInnerHTML&&\"__html\"in t.dangerouslySetInnerHTML||n(\"61\")),null!=t.style&&\"object\"!==typeof t.style&&n(\"62\",u()))}function ru(e,t){if(-1===e.indexOf(\"-\"))return\"string\"===typeof t.is;switch(e){case\"annotation-xml\":case\"color-profile\":case\"font-face\":case\"font-face-src\":case\"font-face-uri\":case\"font-face-format\":case\"font-face-name\":case\"missing-glyph\":return!1;default:return!0}}function ou(e,t){e=9===e.nodeType||11===e.nodeType?e:e.ownerDocument;var u=Ie(e);t=Qu[t];for(var n=0;n<\\/script>\",e=e.removeChild(e.firstChild)):e=\"string\"===typeof t.is?u.createElement(e,{is:t.is}):u.createElement(e):e=u.createElementNS(n,e),e}function iu(e,t){return(9===t.nodeType?t:t.ownerDocument).createTextNode(e)}function lu(e,t,u,n){var r=ru(t,u);switch(t){case\"iframe\":case\"object\":Se(\"topLoad\",\"load\",e);var o=u;break;case\"video\":case\"audio\":for(o in no)no.hasOwnProperty(o)&&Se(o,no[o],e);o=u;break;case\"source\":Se(\"topError\",\"error\",e),o=u;break;case\"img\":case\"image\":Se(\"topError\",\"error\",e),Se(\"topLoad\",\"load\",e),o=u;break;case\"form\":Se(\"topReset\",\"reset\",e),Se(\"topSubmit\",\"submit\",e),o=u;break;case\"details\":Se(\"topToggle\",\"toggle\",e),o=u;break;case\"input\":jt(e,u),o=Mt(e,u),Se(\"topInvalid\",\"invalid\",e),ou(n,\"onChange\");break;case\"option\":o=Kt(e,u);break;case\"select\":$t(e,u),o=Eu({},u,{value:void 0}),Se(\"topInvalid\",\"invalid\",e),ou(n,\"onChange\");break;case\"textarea\":Yt(e,u),o=Qt(e,u),Se(\"topInvalid\",\"invalid\",e),ou(n,\"onChange\");break;default:o=u}nu(t,o,uo);var a,i=o;for(a in i)if(i.hasOwnProperty(a)){var l=i[a];\"style\"===a?uu(e,l,uo):\"dangerouslySetInnerHTML\"===a?null!=(l=l?l.__html:void 0)&&Jr(e,l):\"children\"===a?\"string\"===typeof l?(\"textarea\"!==t||\"\"!==l)&&tu(e,l):\"number\"===typeof l&&tu(e,\"\"+l):\"suppressContentEditableWarning\"!==a&&\"suppressHydrationWarning\"!==a&&\"autoFocus\"!==a&&($u.hasOwnProperty(a)?null!=l&&ou(n,a):r?qt(e,a,l):null!=l&&Lt(e,a,l))}switch(t){case\"input\":oe(e),zt(e,u);break;case\"textarea\":oe(e),Xt(e,u);break;case\"option\":null!=u.value&&e.setAttribute(\"value\",u.value);break;case\"select\":e.multiple=!!u.multiple,t=u.value,null!=t?Gt(e,!!u.multiple,t,!1):null!=u.defaultValue&&Gt(e,!!u.multiple,u.defaultValue,!0);break;default:\"function\"===typeof o.onClick&&(e.onclick=Fu)}}function cu(e,t,u,n,r){var o=null;switch(t){case\"input\":u=Mt(e,u),n=Mt(e,n),o=[];break;case\"option\":u=Kt(e,u),n=Kt(e,n),o=[];break;case\"select\":u=Eu({},u,{value:void 0}),n=Eu({},n,{value:void 0}),o=[];break;case\"textarea\":u=Qt(e,u),n=Qt(e,n),o=[];break;default:\"function\"!==typeof u.onClick&&\"function\"===typeof n.onClick&&(e.onclick=Fu)}nu(t,n,uo);var a,i;e=null;for(a in u)if(!n.hasOwnProperty(a)&&u.hasOwnProperty(a)&&null!=u[a])if(\"style\"===a)for(i in t=u[a])t.hasOwnProperty(i)&&(e||(e={}),e[i]=\"\");else\"dangerouslySetInnerHTML\"!==a&&\"children\"!==a&&\"suppressContentEditableWarning\"!==a&&\"suppressHydrationWarning\"!==a&&\"autoFocus\"!==a&&($u.hasOwnProperty(a)?o||(o=[]):(o=o||[]).push(a,null));for(a in n){var l=n[a];if(t=null!=u?u[a]:void 0,n.hasOwnProperty(a)&&l!==t&&(null!=l||null!=t))if(\"style\"===a)if(t){for(i in t)!t.hasOwnProperty(i)||l&&l.hasOwnProperty(i)||(e||(e={}),e[i]=\"\");for(i in l)l.hasOwnProperty(i)&&t[i]!==l[i]&&(e||(e={}),e[i]=l[i])}else e||(o||(o=[]),o.push(a,e)),e=l;else\"dangerouslySetInnerHTML\"===a?(l=l?l.__html:void 0,t=t?t.__html:void 0,null!=l&&t!==l&&(o=o||[]).push(a,\"\"+l)):\"children\"===a?t===l||\"string\"!==typeof l&&\"number\"!==typeof l||(o=o||[]).push(a,\"\"+l):\"suppressContentEditableWarning\"!==a&&\"suppressHydrationWarning\"!==a&&($u.hasOwnProperty(a)?(null!=l&&ou(r,a),o||t===l||(o=[])):(o=o||[]).push(a,l))}return e&&(o=o||[]).push(\"style\",e),o}function su(e,t,u,n,r){\"input\"===u&&\"radio\"===r.type&&null!=r.name&&Ht(e,r),ru(u,n),n=ru(u,r);for(var o=0;o=l.hasBooleanValue+l.hasNumericValue+l.hasOverloadedBooleanValue||n(\"50\",i),a.hasOwnProperty(i)&&(l.attributeName=a[i]),o.hasOwnProperty(i)&&(l.attributeNamespace=o[i]),e.hasOwnProperty(i)&&(l.mutationMethod=e[i]),Su[i]=l}}},Su={},_u=Tu,Nu=_u.MUST_USE_PROPERTY,Ou=_u.HAS_BOOLEAN_VALUE,Pu=_u.HAS_NUMERIC_VALUE,Iu=_u.HAS_POSITIVE_NUMERIC_VALUE,Ru=_u.HAS_OVERLOADED_BOOLEAN_VALUE,Lu=_u.HAS_STRING_BOOLEAN_VALUE,qu={Properties:{allowFullScreen:Ou,async:Ou,autoFocus:Ou,autoPlay:Ou,capture:Ru,checked:Nu|Ou,cols:Iu,contentEditable:Lu,controls:Ou,default:Ou,defer:Ou,disabled:Ou,download:Ru,draggable:Lu,formNoValidate:Ou,hidden:Ou,loop:Ou,multiple:Nu|Ou,muted:Nu|Ou,noValidate:Ou,open:Ou,playsInline:Ou,readOnly:Ou,required:Ou,reversed:Ou,rows:Iu,rowSpan:Pu,scoped:Ou,seamless:Ou,selected:Nu|Ou,size:Iu,start:Pu,span:Iu,spellCheck:Lu,style:0,tabIndex:0,itemScope:Ou,acceptCharset:0,className:0,htmlFor:0,httpEquiv:0,value:Lu},DOMAttributeNames:{acceptCharset:\"accept-charset\",className:\"class\",htmlFor:\"for\",httpEquiv:\"http-equiv\"},DOMMutationMethods:{value:function(e,t){if(null==t)return e.removeAttribute(\"value\");\"number\"!==e.type||!1===e.hasAttribute(\"value\")?e.setAttribute(\"value\",\"\"+t):e.validity&&!e.validity.badInput&&e.ownerDocument.activeElement!==e&&e.setAttribute(\"value\",\"\"+t)}}},Uu=_u.HAS_STRING_BOOLEAN_VALUE,Mu={xlink:\"http://www.w3.org/1999/xlink\",xml:\"http://www.w3.org/XML/1998/namespace\"},ju={Properties:{autoReverse:Uu,externalResourcesRequired:Uu,preserveAlpha:Uu},DOMAttributeNames:{autoReverse:\"autoReverse\",externalResourcesRequired:\"externalResourcesRequired\",preserveAlpha:\"preserveAlpha\"},DOMAttributeNamespaces:{xlinkActuate:Mu.xlink,xlinkArcrole:Mu.xlink,xlinkHref:Mu.xlink,xlinkRole:Mu.xlink,xlinkShow:Mu.xlink,xlinkTitle:Mu.xlink,xlinkType:Mu.xlink,xmlBase:Mu.xml,xmlLang:Mu.xml,xmlSpace:Mu.xml}},Hu=/[\\-\\:]([a-z])/g;\"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode x-height xlink:actuate xlink:arcrole xlink:href xlink:role xlink:show xlink:title xlink:type xml:base xmlns:xlink xml:lang xml:space\".split(\" \").forEach(function(e){var t=e.replace(Hu,i);ju.Properties[t]=0,ju.DOMAttributeNames[t]=e}),_u.injectDOMPropertyConfig(qu),_u.injectDOMPropertyConfig(ju);var Vu={_caughtError:null,_hasCaughtError:!1,_rethrowError:null,_hasRethrowError:!1,injection:{injectErrorUtils:function(e){\"function\"!==typeof e.invokeGuardedCallback&&n(\"197\"),l=e.invokeGuardedCallback}},invokeGuardedCallback:function(e,t,u,n,r,o,a,i,c){l.apply(Vu,arguments)},invokeGuardedCallbackAndCatchFirstError:function(e,t,u,n,r,o,a,i,l){if(Vu.invokeGuardedCallback.apply(this,arguments),Vu.hasCaughtError()){var c=Vu.clearCaughtError();Vu._hasRethrowError||(Vu._hasRethrowError=!0,Vu._rethrowError=c)}},rethrowCaughtError:function(){return c.apply(Vu,arguments)},hasCaughtError:function(){return Vu._hasCaughtError},clearCaughtError:function(){if(Vu._hasCaughtError){var e=Vu._caughtError;return Vu._caughtError=null,Vu._hasCaughtError=!1,e}n(\"198\")}},zu=null,Wu={},Ku=[],Gu={},$u={},Qu={},Yu=Object.freeze({plugins:Ku,eventNameDispatchConfigs:Gu,registrationNameModules:$u,registrationNameDependencies:Qu,possibleRegistrationNames:null,injectEventPluginOrder:p,injectEventPluginsByName:d}),Ju=null,Xu=null,Zu=null,en=null,tn={injectEventPluginOrder:p,injectEventPluginsByName:d},un=Object.freeze({injection:tn,getListener:E,extractEvents:F,enqueueEvents:y,processEventQueue:b}),nn=Math.random().toString(36).slice(2),rn=\"__reactInternalInstance$\"+nn,on=\"__reactEventHandlers$\"+nn,an=Object.freeze({precacheFiberNode:function(e,t){t[rn]=e},getClosestInstanceFromNode:v,getInstanceFromNode:function(e){return e=e[rn],!e||5!==e.tag&&6!==e.tag?null:e},getNodeFromInstance:B,getFiberCurrentPropsFromNode:w,updateFiberProps:function(e,t){e[on]=t}}),ln=Object.freeze({accumulateTwoPhaseDispatches:P,accumulateTwoPhaseDispatchesSkipTarget:function(e){m(e,_)},accumulateEnterLeaveDispatches:I,accumulateDirectDispatches:function(e){m(e,O)}}),cn=null,sn={_root:null,_startText:null,_fallbackText:null},fn=\"dispatchConfig _targetInst nativeEvent isDefaultPrevented isPropagationStopped _dispatchListeners _dispatchInstances\".split(\" \"),pn={type:null,target:null,currentTarget:Fu.thatReturnsNull,eventPhase:null,bubbles:null,cancelable:null,timeStamp:function(e){return e.timeStamp||Date.now()},defaultPrevented:null,isTrusted:null};Eu(U.prototype,{preventDefault:function(){this.defaultPrevented=!0;var e=this.nativeEvent;e&&(e.preventDefault?e.preventDefault():\"unknown\"!==typeof e.returnValue&&(e.returnValue=!1),this.isDefaultPrevented=Fu.thatReturnsTrue)},stopPropagation:function(){var e=this.nativeEvent;e&&(e.stopPropagation?e.stopPropagation():\"unknown\"!==typeof e.cancelBubble&&(e.cancelBubble=!0),this.isPropagationStopped=Fu.thatReturnsTrue)},persist:function(){this.isPersistent=Fu.thatReturnsTrue},isPersistent:Fu.thatReturnsFalse,destructor:function(){var e,t=this.constructor.Interface;for(e in t)this[e]=null;for(t=0;t=parseInt(gn.version(),10))}var Cn,An=mn,En=Au.canUseDOM&&(!Dn||hn&&8=hn),Fn=String.fromCharCode(32),yn={beforeInput:{phasedRegistrationNames:{bubbled:\"onBeforeInput\",captured:\"onBeforeInputCapture\"},dependencies:[\"topCompositionEnd\",\"topKeyPress\",\"topTextInput\",\"topPaste\"]},compositionEnd:{phasedRegistrationNames:{bubbled:\"onCompositionEnd\",captured:\"onCompositionEndCapture\"},dependencies:\"topBlur topCompositionEnd topKeyDown topKeyPress topKeyUp topMouseDown\".split(\" \")},compositionStart:{phasedRegistrationNames:{bubbled:\"onCompositionStart\",captured:\"onCompositionStartCapture\"},dependencies:\"topBlur topCompositionStart topKeyDown topKeyPress topKeyUp topMouseDown\".split(\" \")},compositionUpdate:{phasedRegistrationNames:{bubbled:\"onCompositionUpdate\",captured:\"onCompositionUpdateCapture\"},dependencies:\"topBlur topCompositionUpdate topKeyDown topKeyPress topKeyUp topMouseDown\".split(\" \")}},bn=!1,vn=!1,Bn={eventTypes:yn,extractEvents:function(e,t,u,n){var r;if(Dn)e:{switch(e){case\"topCompositionStart\":var o=yn.compositionStart;break e;case\"topCompositionEnd\":o=yn.compositionEnd;break e;case\"topCompositionUpdate\":o=yn.compositionUpdate;break e}o=void 0}else vn?W(e,u)&&(o=yn.compositionEnd):\"topKeyDown\"===e&&229===u.keyCode&&(o=yn.compositionStart);return o?(En&&(vn||o!==yn.compositionStart?o===yn.compositionEnd&&vn&&(r=L()):(sn._root=n,sn._startText=q(),vn=!0)),o=V.getPooled(o,t,u,n),r?o.data=r:null!==(r=K(u))&&(o.data=r),P(o),r=o):r=null,(e=An?G(e,u):$(e,u))?(t=z.getPooled(yn.beforeInput,t,u,n),t.data=e,P(t)):t=null,[r,t]}},wn=null,xn=null,kn=null,Tn={injectFiberControlledHostComponent:function(e){wn=e}},Sn=Object.freeze({injection:Tn,enqueueStateRestore:Y,restoreStateIfNeeded:J}),_n=!1,Nn={color:!0,date:!0,datetime:!0,\"datetime-local\":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};Au.canUseDOM&&(Cn=document.implementation&&document.implementation.hasFeature&&!0!==document.implementation.hasFeature(\"\",\"\"));var On={change:{phasedRegistrationNames:{bubbled:\"onChange\",captured:\"onChangeCapture\"},dependencies:\"topBlur topChange topClick topFocus topInput topKeyDown topKeyUp topSelectionChange\".split(\" \")}},Pn=null,In=null,Rn=!1;Au.canUseDOM&&(Rn=ue(\"input\")&&(!document.documentMode||9=document.documentMode,er={select:{phasedRegistrationNames:{bubbled:\"onSelect\",captured:\"onSelectCapture\"},dependencies:\"topBlur topContextMenu topFocus topKeyDown topKeyUp topMouseDown topMouseUp topSelectionChange\".split(\" \")}},tr=null,ur=null,nr=null,rr=!1,or={eventTypes:er,extractEvents:function(e,t,u,n){var r,o=n.window===n?n.document:9===n.nodeType?n:n.ownerDocument;if(!(r=!o)){e:{o=Ie(o),r=Qu.onSelect;for(var a=0;a=jr-e){if(!(-1!==Ur&&Ur<=e))return void(Mr||(Mr=!0,requestAnimationFrame(Wr)));Rr.didTimeout=!0}else Rr.didTimeout=!1;Ur=-1,e=Lr,Lr=null,null!==e&&e(Rr)}},!1);var Wr=function(e){Mr=!1;var t=e-jr+Vr;tt&&(t=8),Vr=t\"+t+\"\",t=Yr.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;t.firstChild;)e.appendChild(t.firstChild)}}),Xr={animationIterationCount:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},Zr=[\"Webkit\",\"ms\",\"Moz\",\"O\"];Object.keys(Xr).forEach(function(e){Zr.forEach(function(t){t=t+e.charAt(0).toUpperCase()+e.substring(1),Xr[t]=Xr[e]})});var eo=Eu({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0}),to=Qr.html,uo=Fu.thatReturns(\"\"),no={topAbort:\"abort\",topCanPlay:\"canplay\",topCanPlayThrough:\"canplaythrough\",topDurationChange:\"durationchange\",topEmptied:\"emptied\",topEncrypted:\"encrypted\",topEnded:\"ended\",topError:\"error\",topLoadedData:\"loadeddata\",topLoadedMetadata:\"loadedmetadata\",topLoadStart:\"loadstart\",topPause:\"pause\",topPlay:\"play\",topPlaying:\"playing\",topProgress:\"progress\",topRateChange:\"ratechange\",topSeeked:\"seeked\",topSeeking:\"seeking\",topStalled:\"stalled\",topSuspend:\"suspend\",topTimeUpdate:\"timeupdate\",topVolumeChange:\"volumechange\",topWaiting:\"waiting\"},ro=Object.freeze({createElement:au,createTextNode:iu,setInitialProperties:lu,diffProperties:cu,updateProperties:su,diffHydratedProperties:fu,diffHydratedText:pu,warnForUnmatchedText:function(){},warnForDeletedHydratableElement:function(){},warnForDeletedHydratableText:function(){},warnForInsertedHydratedElement:function(){},warnForInsertedHydratedText:function(){},restoreControlledState:function(e,t,u){switch(t){case\"input\":if(Vt(e,u),t=u.name,\"radio\"===u.type&&null!=t){for(u=e;u.parentNode;)u=u.parentNode;for(u=u.querySelectorAll(\"input[name=\"+JSON.stringify(\"\"+t)+'][type=\"radio\"]'),t=0;tn&&(r=n,n=e,e=r),r=Le(u,e);var o=Le(u,n);if(r&&o&&(1!==t.rangeCount||t.anchorNode!==r.node||t.anchorOffset!==r.offset||t.focusNode!==o.node||t.focusOffset!==o.offset)){var a=document.createRange();a.setStart(r.node,r.offset),t.removeAllRanges(),e>n?(t.addRange(a),t.extend(o.node,o.offset)):(a.setEnd(o.node,o.offset),t.addRange(a))}}for(t=[],e=u;e=e.parentNode;)1===e.nodeType&&t.push({element:e,left:e.scrollLeft,top:e.scrollTop});for(wu(u),u=0;u\",\""\":'\"',\"&apos\":\"'\",\"&\":\"&\",\"<\":\"<\",\">\":\">\",\""\":'\"',\"'\":\"'\",\"&\":\"&\"},r={60:\"lt\",62:\"gt\",34:\"quot\",39:\"apos\",38:\"amp\"},o={\"<\":\"<\",\">\":\">\",'\"':\""\",\"'\":\"'\",\"&\":\"&\"};u.prototype.encode=function(e){return e&&e.length?e.replace(/<|>|\"|'|&/g,function(e){return o[e]}):\"\"},u.encode=function(e){return(new u).encode(e)},u.prototype.decode=function(e){return e&&e.length?e.replace(/&#?[0-9a-zA-Z]+;?/g,function(e){if(\"#\"===e.charAt(1)){var t=\"x\"===e.charAt(2).toLowerCase()?parseInt(e.substr(3),16):parseInt(e.substr(2));return isNaN(t)||t<-32768||t>65535?\"\":String.fromCharCode(t)}return n[e]||e}):\"\"},u.decode=function(e){return(new u).decode(e)},u.prototype.encodeNonUTF=function(e){if(!e||!e.length)return\"\";for(var t=e.length,u=\"\",n=0;n126?\"&#\"+o+\";\":e.charAt(n),n++)}return u},u.encodeNonUTF=function(e){return(new u).encodeNonUTF(e)},u.prototype.encodeNonASCII=function(e){if(!e||!e.length)return\"\";for(var t=e.length,u=\"\",n=0;n65535||(u=String.fromCharCode(n))}else u=o[t];return u||e}):\"\"},u.decode=function(e){return(new u).decode(e)},u.prototype.encode=function(e){if(!e||!e.length)return\"\";for(var t=e.length,u=\"\",n=0;n126?\"&#\"+r+\";\":e.charAt(n),n++}return u},u.encodeNonUTF=function(e){return(new u).encodeNonUTF(e)},u.prototype.encodeNonASCII=function(e){if(!e||!e.length)return\"\";for(var t=e.length,u=\"\",n=0;n0?e.currentIndex-1:t.errorRecords.length-1}})},o.next=function(){o.setState(function(e,t){return{currentIndex:e.currentIndex1&&i.a.createElement(s.a,{currentError:this.state.currentIndex+1,totalErrors:n,previous:this.previous,next:this.next}),i.a.createElement(f.a,{errorRecord:t[this.state.currentIndex],editorHandler:this.props.editorHandler}),i.a.createElement(p.a,{line1:\"This screen is visible only in development. It will not appear if the app crashes in production.\",line2:\"Open your browser’s developer console to further inspect this error.\"}))}}]),t}(a.PureComponent);t.a=D},function(e,t,u){\"use strict\";function n(e){var t=e.close;return o.a.createElement(\"span\",{title:\"Click or press Escape to dismiss.\",onClick:t,style:i},\"×\")}var r=u(0),o=u.n(r),a=u(1),i={color:a.a,lineHeight:\"1rem\",fontSize:\"1.5rem\",padding:\"1rem\",cursor:\"pointer\",position:\"absolute\",right:0,top:0};t.a=n},function(e,t,u){\"use strict\";function n(e){var t=e.currentError,u=e.totalErrors,n=e.previous,r=e.next;return o.a.createElement(\"div\",{style:i},o.a.createElement(\"span\",{style:l},o.a.createElement(\"button\",{onClick:n,style:s},\"←\"),o.a.createElement(\"button\",{onClick:r,style:f},\"→\")),t+\" of \"+u+\" errors on the page\")}var r=u(0),o=u.n(r),a=u(1),i={marginBottom:\"0.5rem\"},l={marginRight:\"1em\"},c={backgroundColor:a.f,color:a.e,border:\"none\",borderRadius:\"4px\",padding:\"3px 6px\",cursor:\"pointer\"},s=Object.assign({},c,{borderTopRightRadius:\"0px\",borderBottomRightRadius:\"0px\",marginRight:\"1px\"}),f=Object.assign({},c,{borderTopLeftRadius:\"0px\",borderBottomLeftRadius:\"0px\"});t.a=n},function(e,t,u){\"use strict\";function n(e){var t=e.errorRecord,u=e.editorHandler,n=t.error,r=t.unhandledRejection,c=t.contextSize,s=t.stackFrames,f=r?\"Unhandled Rejection (\"+n.name+\")\":n.name,p=n.message,d=p.match(/^\\w*:/)||!f?p:f+\": \"+p;return d=d.replace(/^Invariant Violation:\\s*/,\"\").replace(/^Warning:\\s*/,\"\").replace(\" Check the render method\",\"\\n\\nCheck the render method\").replace(\" Check your code at\",\"\\n\\nCheck your code at\"),o.a.createElement(\"div\",{style:l},o.a.createElement(a.a,{headerText:d}),o.a.createElement(i.a,{stackFrames:s,errorName:f,contextSize:c,editorHandler:u}))}var r=u(0),o=u.n(r),a=u(8),i=u(43),l={display:\"flex\",flexDirection:\"column\"};t.a=n},function(e,t,u){\"use strict\";function n(e,t){if(!(e instanceof t))throw new TypeError(\"Cannot call a class as a function\")}function r(e,t){if(!e)throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");return!t||\"object\"!==typeof t&&\"function\"!==typeof t?e:t}function o(e,t){if(\"function\"!==typeof t&&null!==t)throw new TypeError(\"Super expression must either be null or a function, not \"+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}var a=u(0),i=u.n(a),l=u(44),c=u(60),s=u(61),f=u(62),p=function(){function e(e,t){for(var u=0;u1&&(d++,o.push(i.a.createElement(c.a,{key:\"bundle-\"+d},p))),p=[]),A||o.push(E)}),o}},{key:\"render\",value:function(){return i.a.createElement(\"div\",{style:d},this.renderFrames())}}]),t}(a.Component);t.a=D},function(e,t,u){\"use strict\";function n(e,t){if(!(e instanceof t))throw new TypeError(\"Cannot call a class as a function\")}function r(e,t){if(!e)throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");return!t||\"object\"!==typeof t&&\"function\"!==typeof t?e:t}function o(e,t){if(\"function\"!==typeof t&&null!==t)throw new TypeError(\"Super expression must either be null or a function, not \"+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}var a=u(0),i=u.n(a),l=u(45),c=u(59),s=u(1),f=function(){function e(e,t){for(var u=0;u3&&void 0!==arguments[3]?arguments[3]:{};u=Math.max(u,0);var o=n.highlightCode&&p.default.supportsColor||n.forceColor,i=p.default;n.forceColor&&(i=new p.default.constructor({enabled:!0}));var l=function(e,t){return o?e(t):t},c=r(i);o&&(e=a(c,e));var s=n.linesAbove||2,f=n.linesBelow||3,D=e.split(d),h=Math.max(t-(s+1),0),m=Math.min(D.length,t+f);t||u||(h=0,m=D.length);var g=String(m).length,C=D.slice(h,m).map(function(e,n){var r=h+1+n,o=(\" \"+r).slice(-g),a=\" \"+o+\" | \";if(r===t){var i=\"\";if(u){var s=e.slice(0,u-1).replace(/[^\\t]/g,\" \");i=[\"\\n \",l(c.gutter,a.replace(/\\d/g,\" \")),s,l(c.marker,\"^\")].join(\"\")}return[l(c.marker,\">\"),l(c.gutter,a),e,i].join(\"\")}return\" \"+l(c.gutter,a)+e}).join(\"\\n\");return o?i.reset(C):C};var i=u(48),l=n(i),c=u(49),s=n(c),f=u(52),p=n(f),d=/\\r\\n|[\\n\\r\\u2028\\u2029]/,D=/^[a-z][\\w-]*$/i,h=/^[()\\[\\]{}]$/;e.exports=t.default},function(e,t){Object.defineProperty(t,\"__esModule\",{value:!0}),t.default=/((['\"])(?:(?!\\2|\\\\).|\\\\(?:\\r\\n|[\\s\\S]))*(\\2)?|`(?:[^`\\\\$]|\\\\[\\s\\S]|\\$(?!\\{)|\\$\\{(?:[^{}]|\\{[^}]*\\}?)*\\}?)*(`)?)|(\\/\\/.*)|(\\/\\*(?:[^*]|\\*(?!\\/))*(\\*\\/)?)|(\\/(?!\\*)(?:\\[(?:(?![\\]\\\\]).|\\\\.)*\\]|(?![\\/\\]\\\\]).|\\\\.)+\\/(?:(?!\\s*(?:\\b|[\\u0080-\\uFFFF$\\\\'\"~({]|[+\\-!](?!=)|\\.?\\d))|[gmiyu]{1,5}\\b(?![\\u0080-\\uFFFF$\\\\]|\\s*(?:[+\\-*%&|^<>!=?({]|\\/(?![\\/*])))))|(0[xX][\\da-fA-F]+|0[oO][0-7]+|0[bB][01]+|(?:\\d*\\.\\d+|\\d+\\.?)(?:[eE][+-]?\\d+)?)|((?!\\d)(?:(?!\\s)[$\\w\\u0080-\\uFFFF]|\\\\u[\\da-fA-F]{4}|\\\\u\\{[\\da-fA-F]+\\})+)|(--|\\+\\+|&&|\\|\\||=>|\\.{3}|(?:[+\\-\\/%&|^]|\\*{1,2}|<{1,2}|>{1,3}|!=?|={1,2})=?|[?~.,:;[\\](){}])|(\\s+)|(^$|[\\s\\S])/g,t.matchToToken=function(e){var t={type:\"invalid\",value:e[0]};return e[1]?(t.type=\"string\",t.closed=!(!e[3]&&!e[4])):e[5]?t.type=\"comment\":e[6]?(t.type=\"comment\",t.closed=!!e[7]):e[8]?t.type=\"regex\":e[9]?t.type=\"number\":e[10]?t.type=\"name\":e[11]?t.type=\"punctuator\":e[12]&&(t.type=\"whitespace\"),t}},function(e,t,u){!function(){\"use strict\";t.ast=u(50),t.code=u(14),t.keyword=u(51)}()},function(e,t){!function(){\"use strict\";function t(e){if(null==e)return!1;switch(e.type){case\"ArrayExpression\":case\"AssignmentExpression\":case\"BinaryExpression\":case\"CallExpression\":case\"ConditionalExpression\":case\"FunctionExpression\":case\"Identifier\":case\"Literal\":case\"LogicalExpression\":case\"MemberExpression\":case\"NewExpression\":case\"ObjectExpression\":case\"SequenceExpression\":case\"ThisExpression\":case\"UnaryExpression\":case\"UpdateExpression\":return!0}return!1}function u(e){if(null==e)return!1;switch(e.type){case\"DoWhileStatement\":case\"ForInStatement\":case\"ForStatement\":case\"WhileStatement\":return!0}return!1}function n(e){if(null==e)return!1;switch(e.type){case\"BlockStatement\":case\"BreakStatement\":case\"ContinueStatement\":case\"DebuggerStatement\":case\"DoWhileStatement\":case\"EmptyStatement\":case\"ExpressionStatement\":case\"ForInStatement\":case\"ForStatement\":case\"IfStatement\":case\"LabeledStatement\":case\"ReturnStatement\":case\"SwitchStatement\":case\"ThrowStatement\":case\"TryStatement\":case\"VariableDeclaration\":case\"WhileStatement\":case\"WithStatement\":return!0}return!1}function r(e){return n(e)||null!=e&&\"FunctionDeclaration\"===e.type}function o(e){switch(e.type){case\"IfStatement\":return null!=e.alternate?e.alternate:e.consequent;case\"LabeledStatement\":case\"ForStatement\":case\"ForInStatement\":case\"WhileStatement\":case\"WithStatement\":return e.body}return null}function a(e){var t;if(\"IfStatement\"!==e.type)return!1;if(null==e.alternate)return!1;t=e.consequent;do{if(\"IfStatement\"===t.type&&null==t.alternate)return!0;t=o(t)}while(t);return!1}e.exports={isExpression:t,isStatement:n,isIterationStatement:u,isSourceElement:r,isProblematicIfStatement:a,trailingStatement:o}}()},function(e,t,u){!function(){\"use strict\";function t(e){switch(e){case\"implements\":case\"interface\":case\"package\":case\"private\":case\"protected\":case\"public\":case\"static\":case\"let\":return!0;default:return!1}}function n(e,t){return!(!t&&\"yield\"===e)&&r(e,t)}function r(e,u){if(u&&t(e))return!0;switch(e.length){case 2:return\"if\"===e||\"in\"===e||\"do\"===e;case 3:return\"var\"===e||\"for\"===e||\"new\"===e||\"try\"===e;case 4:return\"this\"===e||\"else\"===e||\"case\"===e||\"void\"===e||\"with\"===e||\"enum\"===e;case 5:return\"while\"===e||\"break\"===e||\"catch\"===e||\"throw\"===e||\"const\"===e||\"yield\"===e||\"class\"===e||\"super\"===e;case 6:return\"return\"===e||\"typeof\"===e||\"delete\"===e||\"switch\"===e||\"export\"===e||\"import\"===e;case 7:return\"default\"===e||\"finally\"===e||\"extends\"===e;case 8:return\"function\"===e||\"continue\"===e||\"debugger\"===e;case 10:return\"instanceof\"===e;default:return!1}}function o(e,t){return\"null\"===e||\"true\"===e||\"false\"===e||n(e,t)}function a(e,t){return\"null\"===e||\"true\"===e||\"false\"===e||r(e,t)}function i(e){return\"eval\"===e||\"arguments\"===e}function l(e){var t,u,n;if(0===e.length)return!1;if(n=e.charCodeAt(0),!d.isIdentifierStartES5(n))return!1;for(t=1,u=e.length;t=u)return!1;if(!(56320<=(r=e.charCodeAt(t))&&r<=57343))return!1;n=c(n,r)}if(!o(n))return!1;o=d.isIdentifierPartES6}return!0}function f(e,t){return l(e)&&!o(e,t)}function p(e,t){return s(e)&&!a(e,t)}var d=u(14);e.exports={isKeywordES5:n,isKeywordES6:r,isReservedWordES5:o,isReservedWordES6:a,isRestrictedWord:i,isIdentifierNameES5:l,isIdentifierNameES6:s,isIdentifierES5:f,isIdentifierES6:p}}()},function(e,t,u){\"use strict\";(function(t){function n(e){this.enabled=e&&void 0!==e.enabled?e.enabled:s}function r(e){var t=function(){return o.apply(t,arguments)};return t._styles=e,t.enabled=this.enabled,t.__proto__=D,t}function o(){var e=arguments,t=e.length,u=0!==t&&String(arguments[0]);if(t>1)for(var n=1;n