From 39bdec506d25464a63af993d744af5785da51fd3 Mon Sep 17 00:00:00 2001 From: Nasir Amin Date: Wed, 14 Apr 2021 16:12:50 +0100 Subject: [PATCH] Handle zero unit tests (#138) * Handle zero unit tests * Fixed badge text * Updated README #138 --- README.md | 8 +- __tests__/markup.test.ts | 36 + dist/index.js | 179 +- dist/index.js.map | 2 +- docs/trx-check-failing.png | Bin 149577 -> 149695 bytes docs/trx-check-passing.png | Bin 197698 -> 91001 bytes package-lock.json | 13393 +++++++++++++++++- package.json | 8 +- src/main.ts | 2 +- src/markup.ts | 46 +- src/types/types.ts | 13 + src/utils.ts | 42 +- test-data/failing-tests/no-tests.trx | 23 + test-data/failing-tests/test-host-error.trx | 26 + 14 files changed, 13681 insertions(+), 97 deletions(-) create mode 100644 test-data/failing-tests/no-tests.trx create mode 100644 test-data/failing-tests/test-host-error.trx diff --git a/README.md b/README.md index 9a2770be..49a875df 100644 --- a/README.md +++ b/README.md @@ -41,13 +41,19 @@ jobs: dotnet test -c Release --no-restore --no-build --loger trx --results-directory ./TestResults # Using the trx-parser action - name: Parse Trx files - uses: NasAmin/trx-parser@v0.0.3 + uses: NasAmin/trx-parser@v0.1 id: trx-parser with: TRX_PATH: ${{ github.workspace }}/TestResults #This should be the path to your TRX files REPO_TOKEN: ${{ secrets.GITHUB_TOKEN }} ``` +### ⚠️ GitHub Actions Limitations ⚠️ +- The GitHub Checks API has a [limit](https://github.com/github/docs/issues/3765) of `65535` characters. So if the test report exceeds this limit, GitHub will fail to create a check and fail your workflow. +This was mitigated on #103 and #138 to only report details about failing tests. +- If you have multiple workflows triggered by the same event, currently GitHub Actions will randomly associate a check run to one of the workflows. This is because currently there is no Check Suite API. [Only GitHub apps](https://docs.github.com/en/rest/reference/checks#check-suites) are allowed to create a Check Suite. There is also no way to associate a custom check run with an existing check suite. +GitHub actions automatically creates a check suite for each workflow run. However, since check runs are associated with a commit and event, any custom check runs are randomly linked under one of the triggered workflows for the same commit. + ## Contributing Anyone is welcome to contribute and make this action better. Please fork the repository and create a pull request with proposed changes. diff --git a/__tests__/markup.test.ts b/__tests__/markup.test.ts index 4f411a7f..20202efc 100644 --- a/__tests__/markup.test.ts +++ b/__tests__/markup.test.ts @@ -58,3 +58,39 @@ describe('When generating markup for trx', () => { expect(duration).toEqual(111.407) }) }) + +describe('When reading invalid trx file', () => { + test('Load trx with test host error', async () => { + const data = await transformTrxToJson( + './test-data/failing-tests/test-host-error.trx' + ) + const testData = getMarkupForTrx(data) + expect(data.TrxData.TestRun.ResultSummary._outcome).toEqual('Failed') + expect(testData).toContain( + `Test Results - ${data.ReportMetaData.ReportTitle}` + ) + expect(testData).toContain( + `Total Tests: ${data.TrxData.TestRun.ResultSummary.Counters._total}` + ) + expect(testData).toContain( + `Failed: ${data.TrxData.TestRun.ResultSummary.Counters._failed}` + ) + }) + + test('Parse trx with zero unit tests', async () => { + const data = await transformTrxToJson( + './test-data/failing-tests/no-tests.trx' + ) + const testData = getMarkupForTrx(data) + expect(data.TrxData.TestRun.ResultSummary._outcome).toEqual('Completed') + expect(testData).toContain( + `Test Results - ${data.ReportMetaData.ReportTitle}` + ) + expect(testData).toContain( + `Total Tests: ${data.TrxData.TestRun.ResultSummary.Counters._total}` + ) + expect(testData).toContain( + `Failed: ${data.TrxData.TestRun.ResultSummary.Counters._failed}` + ) + }) +}) diff --git a/dist/index.js b/dist/index.js index d24be83b..f1f58bca 100644 --- a/dist/index.js +++ b/dist/index.js @@ -151,7 +151,7 @@ function run() { core.warning(`Workflow configured to ignore test failures`); } else { - core.error(`At least one failing test was found`); + core.setFailed('At least one failing test was found'); } } core.setOutput('test-outcome', failingTestsFound ? 'Failed' : 'Passed'); @@ -179,11 +179,12 @@ function getMarkupForTrx(testData) { const failedCount = testData.TrxData.TestRun.ResultSummary.Counters._failed; const passedCount = testData.TrxData.TestRun.ResultSummary.Counters._passed; const totalCount = testData.TrxData.TestRun.ResultSummary.Counters._total; + const testOutcome = testData.TrxData.TestRun.ResultSummary._outcome; const badgeCountText = failedCount > 0 ? `${`${failedCount}/${totalCount}`}` : `${`${passedCount}/${totalCount}`}`; - const badgeStatusText = failedCount > 0 ? 'FAILED' : 'PASSED'; - const badgeColor = failedCount > 0 ? 'red' : 'brightgreen'; + const badgeStatusText = failedCount > 0 || testOutcome === 'Failed' ? 'FAILED' : 'PASSED'; + const badgeColor = failedCount > 0 || testOutcome === 'Failed' ? 'red' : 'brightgreen'; return ` ![Generic badge](https://img.shields.io/badge/${badgeCountText}-${badgeStatusText}-${badgeColor}.svg) # Test Results - ${testData.ReportMetaData.ReportTitle} @@ -307,17 +308,39 @@ function getTestCounters(testData) { } function getTestResultsMarkup(testData) { let resultsMarkup = ''; - const unittests = testData.TrxData.TestRun.TestDefinitions.UnitTest; - if (Array.isArray(unittests)) { - for (const data of unittests) { - resultsMarkup += getSingletestMarkup(data, testData); - } - return resultsMarkup.trim(); + if (testData.IsEmpty) { + return getNoResultsMarkup(testData); } else { - return getSingletestMarkup(unittests, testData); + const unittests = testData.TrxData.TestRun.TestDefinitions.UnitTest; + if (Array.isArray(unittests)) { + for (const data of unittests) { + resultsMarkup += getSingletestMarkup(data, testData); + } + return resultsMarkup.trim(); + } + else { + return getSingletestMarkup(unittests, testData); + } } } +function getNoResultsMarkup(testData) { + const runInfo = testData.TrxData.TestRun.ResultSummary.RunInfos.RunInfo; + const testResultIcon = getTestOutcomeIcon(runInfo._outcome); + const resultsMarkup = ` +
+ ${testResultIcon} ${runInfo._computerName} + + + + + + +
Run Info${runInfo.Text}
+
+`; + return resultsMarkup; +} function getSingletestMarkup(data, testData) { var _a, _b; let resultsMarkup = ''; @@ -407,7 +430,7 @@ function getUnitTestResult(unitTestId, testResults) { function getTestOutcomeIcon(testOutcome) { if (testOutcome === 'Passed') return ':heavy_check_mark:'; - if (testOutcome === 'Failed') + if (testOutcome === 'Failed' || testOutcome === 'Error') return ':x:'; if (testOutcome === 'NotExecuted') return ':radio_button:'; @@ -510,9 +533,15 @@ function transformTrxToJson(filePath) { }; if (xmlParser.validate(xmlData.toString()) === true) { const jsonString = xmlParser.parse(xmlData, options, true); - const reportHeaders = getReportHeaders(jsonString); + const testData = jsonString; + const runInfos = testData.TestRun.ResultSummary.RunInfos; + if (runInfos && runInfos.RunInfo._outcome === 'Failed') { + core.warning('There is trouble'); + } + const reportHeaders = getReportHeaders(testData); trxDataWrapper = { TrxData: jsonString, + IsEmpty: IsEmpty(testData), ReportMetaData: { TrxFilePath: filePath, ReportName: `${reportHeaders.reportName}-check`, @@ -530,6 +559,9 @@ function transformTrxToJson(filePath) { }); } exports.transformTrxToJson = transformTrxToJson; +function IsEmpty(testData) { + return testData.TestRun.TestDefinitions ? false : true; +} function readTrxFile(filePath) { return __awaiter(this, void 0, void 0, function* () { return yield fs_1.promises.readFile(filePath, 'utf8'); @@ -556,26 +588,39 @@ function areThereAnyFailingTests(trxJsonReports) { } exports.areThereAnyFailingTests = areThereAnyFailingTests; function getReportHeaders(data) { + var _a, _b; let reportTitle = ''; let reportName = ''; - const unittests = data.TestRun.TestDefinitions.UnitTest; - const storage = getAssemblyName(unittests); - const dllName = storage.split('/').pop(); - if (dllName) { - reportTitle = dllName.replace('.dll', '').toUpperCase().replace('.', ' '); - reportName = dllName.replace('.dll', '').toUpperCase(); + const isEmpty = IsEmpty(data); + if (isEmpty) { + reportTitle = data.TestRun.ResultSummary.RunInfos.RunInfo._computerName; + reportName = data.TestRun.ResultSummary.RunInfos.RunInfo._computerName.toUpperCase(); + } + else { + const unittests = (_b = (_a = data.TestRun) === null || _a === void 0 ? void 0 : _a.TestDefinitions) === null || _b === void 0 ? void 0 : _b.UnitTest; + const storage = getAssemblyName(unittests); + const dllName = storage.split('/').pop(); + if (dllName) { + reportTitle = dllName.replace('.dll', '').toUpperCase().replace('.', ' '); + reportName = dllName.replace('.dll', '').toUpperCase(); + } } return { reportName, reportTitle }; } function getAssemblyName(unittests) { if (Array.isArray(unittests)) { - core.info('Its an array'); + core.debug('Its an array'); return unittests[0]._storage; } else { const ut = unittests; - core.info(`Its not an array: ${ut._storage}`); - return ut._storage; + if (ut) { + core.debug(`Its not an array: ${ut._storage}`); + return ut._storage; + } + else { + return 'NOT FOUND'; + } } } @@ -4749,48 +4794,36 @@ exports.convert2nimn = convert2nimn; const util = __nccwpck_require__(8280); -const convertToJson = function(node, options) { +const convertToJson = function(node, options, parentTagName) { const jObj = {}; - //when no child node or attr is present + // when no child node or attr is present if ((!node.child || util.isEmptyObject(node.child)) && (!node.attrsMap || util.isEmptyObject(node.attrsMap))) { return util.isExist(node.val) ? node.val : ''; - } else { - //otherwise create a textnode if node has some text - if (util.isExist(node.val)) { - if (!(typeof node.val === 'string' && (node.val === '' || node.val === options.cdataPositionChar))) { - if(options.arrayMode === "strict"){ - jObj[options.textNodeName] = [ node.val ]; - }else{ - jObj[options.textNodeName] = node.val; - } - } - } + } + + // otherwise create a textnode if node has some text + if (util.isExist(node.val) && !(typeof node.val === 'string' && (node.val === '' || node.val === options.cdataPositionChar))) { + const asArray = util.isTagNameInArrayMode(node.tagname, options.arrayMode, parentTagName) + jObj[options.textNodeName] = asArray ? [node.val] : node.val; } util.merge(jObj, node.attrsMap, options.arrayMode); const keys = Object.keys(node.child); for (let index = 0; index < keys.length; index++) { - var tagname = keys[index]; - if (node.child[tagname] && node.child[tagname].length > 1) { - jObj[tagname] = []; - for (var tag in node.child[tagname]) { - if (node.child[tagname].hasOwnProperty(tag)){ - jObj[tagname].push(convertToJson(node.child[tagname][tag], options));} + const tagName = keys[index]; + if (node.child[tagName] && node.child[tagName].length > 1) { + jObj[tagName] = []; + for (let tag in node.child[tagName]) { + if (node.child[tagName].hasOwnProperty(tag)) { + jObj[tagName].push(convertToJson(node.child[tagName][tag], options, tagName)); } - } else { - if(options.arrayMode === true){ - const result = convertToJson(node.child[tagname][0], options) - if(typeof result === 'object') - jObj[tagname] = [ result ]; - else - jObj[tagname] = result; - }else if(options.arrayMode === "strict"){ - jObj[tagname] = [convertToJson(node.child[tagname][0], options) ]; - }else{ - jObj[tagname] = convertToJson(node.child[tagname][0], options); } + } else { + const result = convertToJson(node.child[tagName][0], options, tagName); + const asArray = (options.arrayMode === true && typeof result === 'object') || util.isTagNameInArrayMode(tagName, options.arrayMode, parentTagName); + jObj[tagName] = asArray ? [result] : result; } } @@ -4997,9 +5030,9 @@ exports.merge = function(target, a, arrayMode) { const keys = Object.keys(a); // will return an array of own properties const len = keys.length; //don't make it inline for (let i = 0; i < len; i++) { - if(arrayMode === 'strict'){ + if (arrayMode === 'strict') { target[keys[i]] = [ a[keys[i]] ]; - }else{ + } else { target[keys[i]] = a[keys[i]]; } } @@ -5036,6 +5069,26 @@ exports.buildOptions = function(options, defaultOptions, props) { return newOptions; }; +/** + * Check if a tag name should be treated as array + * + * @param tagName the node tagname + * @param arrayMode the array mode option + * @param parentTagName the parent tag name + * @returns {boolean} true if node should be parsed as array + */ +exports.isTagNameInArrayMode = function (tagName, arrayMode, parentTagName) { + if (arrayMode === false) { + return false; + } else if (arrayMode instanceof RegExp) { + return arrayMode.test(tagName); + } else if (typeof arrayMode === 'function') { + return !!arrayMode(tagName, parentTagName); + } + + return arrayMode === "strict"; +} + exports.isName = isName; exports.getAllMatches = getAllMatches; exports.nameRegexp = nameRegexp; @@ -5076,17 +5129,18 @@ exports.validate = function (xmlData, options) { } for (let i = 0; i < xmlData.length; i++) { - if (xmlData[i] === '<') { + + if (xmlData[i] === '<' && xmlData[i+1] === '?') { + i+=2; + i = readPI(xmlData,i); + if (i.err) return i; + }else if (xmlData[i] === '<') { //starting of tag //read until you reach to '>' avoiding any '>' in attribute value i++; - if (xmlData[i] === '?') { - i = readPI(xmlData, ++i); - if (i.err) { - return i; - } - } else if (xmlData[i] === '!') { + + if (xmlData[i] === '!') { i = readCommentAndCDATA(xmlData, i); continue; } else { @@ -5189,7 +5243,10 @@ exports.validate = function (xmlData, options) { i++; i = readCommentAndCDATA(xmlData, i); continue; - } else { + } else if (xmlData[i+1] === '?') { + i = readPI(xmlData, ++i); + if (i.err) return i; + } else{ break; } } else if (xmlData[i] === '&') { diff --git a/dist/index.js.map b/dist/index.js.map index 0a845a05..c90d8eeb 100644 --- a/dist/index.js.map +++ b/dist/index.js.map @@ -1 +1 @@ -{"version":3,"file":"index.js","sources":["../webpack://trx-parser/./lib/github.js","../webpack://trx-parser/./lib/main.js","../webpack://trx-parser/./lib/markup.js","../webpack://trx-parser/./lib/utils.js","../webpack://trx-parser/./node_modules/@actions/core/lib/command.js","../webpack://trx-parser/./node_modules/@actions/core/lib/core.js","../webpack://trx-parser/./node_modules/@actions/core/lib/file-command.js","../webpack://trx-parser/./node_modules/@actions/core/lib/utils.js","../webpack://trx-parser/./node_modules/@actions/github/lib/context.js","../webpack://trx-parser/./node_modules/@actions/github/lib/github.js","../webpack://trx-parser/./node_modules/@actions/github/lib/internal/utils.js","../webpack://trx-parser/./node_modules/@actions/github/lib/utils.js","../webpack://trx-parser/./node_modules/@actions/http-client/index.js","../webpack://trx-parser/./node_modules/@actions/http-client/proxy.js","../webpack://trx-parser/./node_modules/@octokit/auth-token/dist-node/index.js","../webpack://trx-parser/./node_modules/@octokit/core/dist-node/index.js","../webpack://trx-parser/./node_modules/@octokit/endpoint/dist-node/index.js","../webpack://trx-parser/./node_modules/@octokit/endpoint/node_modules/is-plain-object/dist/is-plain-object.js","../webpack://trx-parser/./node_modules/@octokit/graphql/dist-node/index.js","../webpack://trx-parser/./node_modules/@octokit/plugin-paginate-rest/dist-node/index.js","../webpack://trx-parser/./node_modules/@octokit/plugin-rest-endpoint-methods/dist-node/index.js","../webpack://trx-parser/./node_modules/@octokit/request-error/dist-node/index.js","../webpack://trx-parser/./node_modules/@octokit/request/dist-node/index.js","../webpack://trx-parser/./node_modules/@octokit/request/node_modules/is-plain-object/dist/is-plain-object.js","../webpack://trx-parser/./node_modules/before-after-hook/index.js","../webpack://trx-parser/./node_modules/before-after-hook/lib/add.js","../webpack://trx-parser/./node_modules/before-after-hook/lib/register.js","../webpack://trx-parser/./node_modules/before-after-hook/lib/remove.js","../webpack://trx-parser/./node_modules/deprecation/dist-node/index.js","../webpack://trx-parser/./node_modules/fast-xml-parser/src/json2xml.js","../webpack://trx-parser/./node_modules/fast-xml-parser/src/nimndata.js","../webpack://trx-parser/./node_modules/fast-xml-parser/src/node2json.js","../webpack://trx-parser/./node_modules/fast-xml-parser/src/node2json_str.js","../webpack://trx-parser/./node_modules/fast-xml-parser/src/parser.js","../webpack://trx-parser/./node_modules/fast-xml-parser/src/util.js","../webpack://trx-parser/./node_modules/fast-xml-parser/src/validator.js","../webpack://trx-parser/./node_modules/fast-xml-parser/src/xmlNode.js","../webpack://trx-parser/./node_modules/fast-xml-parser/src/xmlstr2xmlnode.js","../webpack://trx-parser/./node_modules/he/he.js","../webpack://trx-parser/./node_modules/node-fetch/lib/index.js","../webpack://trx-parser/./node_modules/once/once.js","../webpack://trx-parser/./node_modules/tunnel/index.js","../webpack://trx-parser/./node_modules/tunnel/lib/tunnel.js","../webpack://trx-parser/./node_modules/universal-user-agent/dist-node/index.js","../webpack://trx-parser/./node_modules/wrappy/wrappy.js","../webpack://trx-parser/./node_modules/@vercel/ncc/dist/ncc/@@notfound.js","../webpack://trx-parser/external \"assert\"","../webpack://trx-parser/external \"events\"","../webpack://trx-parser/external \"fs\"","../webpack://trx-parser/external \"http\"","../webpack://trx-parser/external \"https\"","../webpack://trx-parser/external \"net\"","../webpack://trx-parser/external \"os\"","../webpack://trx-parser/external \"path\"","../webpack://trx-parser/external \"stream\"","../webpack://trx-parser/external \"tls\"","../webpack://trx-parser/external \"url\"","../webpack://trx-parser/external \"util\"","../webpack://trx-parser/external \"zlib\"","../webpack://trx-parser/webpack/bootstrap","../webpack://trx-parser/webpack/runtime/node module decorator","../webpack://trx-parser/webpack/runtime/compat","../webpack://trx-parser/webpack/startup"],"sourcesContent":["\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.createCheckRun = void 0;\nconst github = __importStar(require(\"@actions/github\"));\nconst core = __importStar(require(\"@actions/core\"));\nconst markup_1 = require(\"./markup\");\nfunction createCheckRun(repoToken, ignoreTestFailures, reportData) {\n return __awaiter(this, void 0, void 0, function* () {\n try {\n core.info(`Creating PR check for ${reportData.ReportMetaData.ReportTitle}`);\n const octokit = github.getOctokit(repoToken);\n let git_sha = github.context.sha;\n if (github.context.eventName === 'push') {\n core.info(`Creating status check for GitSha: ${git_sha} on a push event`);\n }\n if (github.context.eventName === 'pull_request') {\n const prPayload = github.context\n .payload;\n git_sha = prPayload.pull_request.head.sha;\n core.info(`Creating status check for GitSha: ${git_sha} on a pull request event`);\n }\n const markupData = markup_1.getMarkupForTrx(reportData);\n const checkTime = new Date().toUTCString();\n core.info(`Check time is: ${checkTime}`);\n const response = yield octokit.checks.create({\n owner: github.context.repo.owner,\n repo: github.context.repo.repo,\n name: reportData.ReportMetaData.ReportName.toLowerCase(),\n head_sha: git_sha,\n status: 'completed',\n conclusion: reportData.TrxData.TestRun.ResultSummary._outcome === 'Failed'\n ? ignoreTestFailures\n ? 'neutral'\n : 'failure'\n : 'success',\n output: {\n title: reportData.ReportMetaData.ReportTitle,\n summary: `This test run completed at \\`${checkTime}\\``,\n // text: reportData.ReportMetaData.TrxJSonString\n text: markupData\n }\n });\n if (response.status !== 201) {\n throw new Error(`Failed to create status check. Error code: ${response.status}`);\n }\n else {\n core.info(`Created check: ${response.data.name} with response status ${response.status}`);\n }\n }\n catch (error) {\n core.setFailed(error.message);\n }\n });\n}\nexports.createCheckRun = createCheckRun;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.run = void 0;\nconst core = __importStar(require(\"@actions/core\"));\nconst github_1 = require(\"./github\");\nconst utils_1 = require(\"./utils\");\nfunction run() {\n return __awaiter(this, void 0, void 0, function* () {\n try {\n const token = core.getInput('REPO_TOKEN');\n const trxPath = core.getInput('TRX_PATH');\n const ignoreTestFailures = core.getInput('IGNORE_FAILURE', { required: false }) === 'true';\n core.info(`Finding Trx files in: ${trxPath}`);\n const trxFiles = yield utils_1.getTrxFiles(trxPath);\n core.info(`Processing ${trxFiles.length} trx files`);\n const trxToJson = yield utils_1.transformAllTrxToJson(trxFiles);\n core.info(`Checking for failing tests`);\n const failingTestsFound = utils_1.areThereAnyFailingTests(trxToJson);\n for (const data of trxToJson) {\n yield github_1.createCheckRun(token, ignoreTestFailures, data);\n }\n if (failingTestsFound) {\n if (ignoreTestFailures) {\n core.warning(`Workflow configured to ignore test failures`);\n }\n else {\n core.error(`At least one failing test was found`);\n }\n }\n core.setOutput('test-outcome', failingTestsFound ? 'Failed' : 'Passed');\n core.setOutput('trx-files', trxFiles);\n }\n catch (error) {\n core.setFailed(error.message);\n }\n });\n}\nexports.run = run;\nrun();\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getTestRunDuration = exports.getMarkupForTrx = void 0;\nfunction getMarkupForTrx(testData) {\n const failedCount = testData.TrxData.TestRun.ResultSummary.Counters._failed;\n const passedCount = testData.TrxData.TestRun.ResultSummary.Counters._passed;\n const totalCount = testData.TrxData.TestRun.ResultSummary.Counters._total;\n const badgeCountText = failedCount > 0\n ? `${`${failedCount}/${totalCount}`}`\n : `${`${passedCount}/${totalCount}`}`;\n const badgeStatusText = failedCount > 0 ? 'FAILED' : 'PASSED';\n const badgeColor = failedCount > 0 ? 'red' : 'brightgreen';\n return `\n![Generic badge](https://img.shields.io/badge/${badgeCountText}-${badgeStatusText}-${badgeColor}.svg)\n# Test Results - ${testData.ReportMetaData.ReportTitle}\n${getTestTimes(testData)}\n${getTestCounters(testData)}\n${getTestResultsMarkup(testData)}\n`;\n}\nexports.getMarkupForTrx = getMarkupForTrx;\nfunction getTestRunDuration(startTime, endTime) {\n const startTimeSeconds = new Date(startTime).valueOf();\n const endTimeSeconds = new Date(endTime).valueOf();\n const duration = endTimeSeconds - startTimeSeconds;\n return duration / 1000;\n}\nexports.getTestRunDuration = getTestRunDuration;\nfunction getTestTimes(testData) {\n const duration = getTestRunDuration(testData.TrxData.TestRun.Times._start, testData.TrxData.TestRun.Times._finish);\n return `\n

Expand the following summaries for more details:

\n
\n Duration: ${duration} seconds \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n
Started:${testData.TrxData.TestRun.Times._start}
Creation:${testData.TrxData.TestRun.Times._finish}
Queuing:${testData.TrxData.TestRun.Times._queuing}
Finished:${testData.TrxData.TestRun.Times._finish}
Duration:${duration} seconds
\n
\n`;\n}\nfunction getTestCounters(testData) {\n return `\n
\n Outcome: ${testData.TrxData.TestRun.ResultSummary._outcome} | Total Tests: ${testData.TrxData.TestRun.ResultSummary.Counters._total} | Passed: ${testData.TrxData.TestRun.ResultSummary.Counters._passed} | Failed: ${testData.TrxData.TestRun.ResultSummary.Counters._failed} \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
Total:${testData.TrxData.TestRun.ResultSummary.Counters._total}
Executed:${testData.TrxData.TestRun.ResultSummary.Counters._executed}
Passed:${testData.TrxData.TestRun.ResultSummary.Counters._passed}
Failed:${testData.TrxData.TestRun.ResultSummary.Counters._failed}
Error:${testData.TrxData.TestRun.ResultSummary.Counters._error}
Timeout:${testData.TrxData.TestRun.ResultSummary.Counters._timeout}
Aborted:${testData.TrxData.TestRun.ResultSummary.Counters._aborted}
Inconclusive:${testData.TrxData.TestRun.ResultSummary.Counters._inconclusive}
PassedButRunAborted:${testData.TrxData.TestRun.ResultSummary.Counters._passedButRunAborted}
NotRunnable:${testData.TrxData.TestRun.ResultSummary.Counters._notRunnable}
NotExecuted:${testData.TrxData.TestRun.ResultSummary.Counters._notExecuted}
Disconnected:${testData.TrxData.TestRun.ResultSummary.Counters._disconnected}
Warning:${testData.TrxData.TestRun.ResultSummary.Counters._warning}
Completed:${testData.TrxData.TestRun.ResultSummary.Counters._completed}
InProgress:${testData.TrxData.TestRun.ResultSummary.Counters._inProgress}
Pending:${testData.TrxData.TestRun.ResultSummary.Counters._pending}
\n
\n`;\n}\nfunction getTestResultsMarkup(testData) {\n let resultsMarkup = '';\n const unittests = testData.TrxData.TestRun.TestDefinitions.UnitTest;\n if (Array.isArray(unittests)) {\n for (const data of unittests) {\n resultsMarkup += getSingletestMarkup(data, testData);\n }\n return resultsMarkup.trim();\n }\n else {\n return getSingletestMarkup(unittests, testData);\n }\n}\nfunction getSingletestMarkup(data, testData) {\n var _a, _b;\n let resultsMarkup = '';\n const testResult = getUnitTestResult(data._id, testData.TrxData.TestRun.Results);\n if (testResult && (testResult === null || testResult === void 0 ? void 0 : testResult._outcome) === 'Failed') {\n const testResultIcon = getTestOutcomeIcon(testResult === null || testResult === void 0 ? void 0 : testResult._outcome);\n let testMarkup = `\n
\n ${testResultIcon} ${data._name} \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
ID:${data._id}
Name:${data._name}
Outcome:${testResult._outcome}
Computer Name:${testResult._computerName}
Start:${testResult._startTime}
End:${testResult._endTime}
Duration:${testResult._duration}
\n\n
\n Test Method Details: \n \n \n \n \n \n \n \n \n \n \n \n \n \n
Code Base${data.TestMethod._codeBase}
Class Name${data.TestMethod._className}
Method Name${data.TestMethod._name}
\n
\n`;\n if (testResult._outcome === 'Failed') {\n const failedTestDetails = `\n
\n Error Message:\n
${(_a = testResult.Output) === null || _a === void 0 ? void 0 : _a.ErrorInfo.Message}
\n
\n
\n Stack Trace:\n
${(_b = testResult.Output) === null || _b === void 0 ? void 0 : _b.ErrorInfo.StackTrace}
\n
\n `;\n testMarkup += failedTestDetails;\n }\n resultsMarkup += testMarkup;\n resultsMarkup += `\n
\n`;\n }\n return resultsMarkup.trim();\n}\nfunction getUnitTestResult(unitTestId, testResults) {\n const unitTestResults = testResults.UnitTestResult;\n if (Array.isArray(unitTestResults)) {\n return testResults.UnitTestResult.find(x => x._testId === unitTestId);\n }\n const result = unitTestResults;\n return result;\n}\nfunction getTestOutcomeIcon(testOutcome) {\n if (testOutcome === 'Passed')\n return ':heavy_check_mark:';\n if (testOutcome === 'Failed')\n return ':x:';\n if (testOutcome === 'NotExecuted')\n return ':radio_button:';\n return ':grey_question:';\n}\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.areThereAnyFailingTests = exports.transformAllTrxToJson = exports.readTrxFile = exports.transformTrxToJson = exports.getAbsoluteFilePaths = exports.getTrxFiles = void 0;\n/* eslint-disable @typescript-eslint/no-explicit-any */\nconst fs = __importStar(require(\"fs\"));\nconst path = __importStar(require(\"path\"));\nconst uitl = __importStar(require(\"util\"));\nconst core = __importStar(require(\"@actions/core\"));\nconst xmlParser = __importStar(require(\"fast-xml-parser\"));\nconst he = __importStar(require(\"he\"));\nconst fs_1 = require(\"fs\");\nfunction getTrxFiles(trxPath) {\n return __awaiter(this, void 0, void 0, function* () {\n if (!fs.existsSync(trxPath))\n return [];\n const readdir = uitl.promisify(fs.readdir);\n const fileNames = yield readdir(trxPath);\n const trxFiles = fileNames.filter(f => f.endsWith('.trx'));\n core.info(`Files count: ${fileNames.length}`);\n const filesWithAbsolutePaths = getAbsoluteFilePaths(trxFiles, trxPath);\n return filesWithAbsolutePaths;\n });\n}\nexports.getTrxFiles = getTrxFiles;\nfunction getAbsoluteFilePaths(fileNames, directoryName) {\n const absolutePaths = [];\n for (const file of fileNames) {\n const absolutePath = path.join(directoryName, file);\n absolutePaths.push(absolutePath);\n }\n return absolutePaths;\n}\nexports.getAbsoluteFilePaths = getAbsoluteFilePaths;\nfunction transformTrxToJson(filePath) {\n return __awaiter(this, void 0, void 0, function* () {\n let trxDataWrapper;\n if (fs.existsSync(filePath)) {\n core.info(`Transforming file ${filePath}`);\n const xmlData = yield readTrxFile(filePath);\n const options = {\n attributeNamePrefix: '_',\n // attrNodeName: 'attr', //default is 'false'\n textNodeName: '#text',\n ignoreAttributes: false,\n ignoreNameSpace: false,\n allowBooleanAttributes: true,\n parseNodeValue: true,\n parseAttributeValue: true,\n trimValues: true,\n cdataTagName: '__cdata',\n cdataPositionChar: '\\\\c',\n parseTrueNumberOnly: false,\n arrayMode: false,\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n attrValueProcessor: (val, _attrName) => he.decode(val, { isAttributeValue: true }),\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n tagValueProcessor: (val, _tagName) => he.decode(val),\n stopNodes: ['parse-me-as-string']\n };\n if (xmlParser.validate(xmlData.toString()) === true) {\n const jsonString = xmlParser.parse(xmlData, options, true);\n const reportHeaders = getReportHeaders(jsonString);\n trxDataWrapper = {\n TrxData: jsonString,\n ReportMetaData: {\n TrxFilePath: filePath,\n ReportName: `${reportHeaders.reportName}-check`,\n ReportTitle: reportHeaders.reportTitle,\n TrxJSonString: JSON.stringify(jsonString),\n TrxXmlString: xmlData\n }\n };\n }\n }\n else {\n core.warning(`Trx file ${filePath} does not exist`);\n }\n return trxDataWrapper;\n });\n}\nexports.transformTrxToJson = transformTrxToJson;\nfunction readTrxFile(filePath) {\n return __awaiter(this, void 0, void 0, function* () {\n return yield fs_1.promises.readFile(filePath, 'utf8');\n });\n}\nexports.readTrxFile = readTrxFile;\nfunction transformAllTrxToJson(trxFiles) {\n return __awaiter(this, void 0, void 0, function* () {\n const transformedTrxReports = [];\n for (const trx of trxFiles) {\n transformedTrxReports.push(yield transformTrxToJson(trx));\n }\n return transformedTrxReports;\n });\n}\nexports.transformAllTrxToJson = transformAllTrxToJson;\nfunction areThereAnyFailingTests(trxJsonReports) {\n for (const trxData of trxJsonReports) {\n if (trxData.TrxData.TestRun.ResultSummary._outcome === 'Failed') {\n return true;\n }\n }\n return false;\n}\nexports.areThereAnyFailingTests = areThereAnyFailingTests;\nfunction getReportHeaders(data) {\n let reportTitle = '';\n let reportName = '';\n const unittests = data.TestRun.TestDefinitions.UnitTest;\n const storage = getAssemblyName(unittests);\n const dllName = storage.split('/').pop();\n if (dllName) {\n reportTitle = dllName.replace('.dll', '').toUpperCase().replace('.', ' ');\n reportName = dllName.replace('.dll', '').toUpperCase();\n }\n return { reportName, reportTitle };\n}\nfunction getAssemblyName(unittests) {\n if (Array.isArray(unittests)) {\n core.info('Its an array');\n return unittests[0]._storage;\n }\n else {\n const ut = unittests;\n core.info(`Its not an array: ${ut._storage}`);\n return ut._storage;\n }\n}\n","\"use strict\";\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\n result[\"default\"] = mod;\n return result;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst os = __importStar(require(\"os\"));\nconst utils_1 = require(\"./utils\");\n/**\n * Commands\n *\n * Command Format:\n * ::name key=value,key=value::message\n *\n * Examples:\n * ::warning::This is the message\n * ::set-env name=MY_VAR::some value\n */\nfunction issueCommand(command, properties, message) {\n const cmd = new Command(command, properties, message);\n process.stdout.write(cmd.toString() + os.EOL);\n}\nexports.issueCommand = issueCommand;\nfunction issue(name, message = '') {\n issueCommand(name, {}, message);\n}\nexports.issue = issue;\nconst CMD_STRING = '::';\nclass Command {\n constructor(command, properties, message) {\n if (!command) {\n command = 'missing.command';\n }\n this.command = command;\n this.properties = properties;\n this.message = message;\n }\n toString() {\n let cmdStr = CMD_STRING + this.command;\n if (this.properties && Object.keys(this.properties).length > 0) {\n cmdStr += ' ';\n let first = true;\n for (const key in this.properties) {\n if (this.properties.hasOwnProperty(key)) {\n const val = this.properties[key];\n if (val) {\n if (first) {\n first = false;\n }\n else {\n cmdStr += ',';\n }\n cmdStr += `${key}=${escapeProperty(val)}`;\n }\n }\n }\n }\n cmdStr += `${CMD_STRING}${escapeData(this.message)}`;\n return cmdStr;\n }\n}\nfunction escapeData(s) {\n return utils_1.toCommandValue(s)\n .replace(/%/g, '%25')\n .replace(/\\r/g, '%0D')\n .replace(/\\n/g, '%0A');\n}\nfunction escapeProperty(s) {\n return utils_1.toCommandValue(s)\n .replace(/%/g, '%25')\n .replace(/\\r/g, '%0D')\n .replace(/\\n/g, '%0A')\n .replace(/:/g, '%3A')\n .replace(/,/g, '%2C');\n}\n//# sourceMappingURL=command.js.map","\"use strict\";\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\n result[\"default\"] = mod;\n return result;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst command_1 = require(\"./command\");\nconst file_command_1 = require(\"./file-command\");\nconst utils_1 = require(\"./utils\");\nconst os = __importStar(require(\"os\"));\nconst path = __importStar(require(\"path\"));\n/**\n * The code to exit an action\n */\nvar ExitCode;\n(function (ExitCode) {\n /**\n * A code indicating that the action was successful\n */\n ExitCode[ExitCode[\"Success\"] = 0] = \"Success\";\n /**\n * A code indicating that the action was a failure\n */\n ExitCode[ExitCode[\"Failure\"] = 1] = \"Failure\";\n})(ExitCode = exports.ExitCode || (exports.ExitCode = {}));\n//-----------------------------------------------------------------------\n// Variables\n//-----------------------------------------------------------------------\n/**\n * Sets env variable for this action and future actions in the job\n * @param name the name of the variable to set\n * @param val the value of the variable. Non-string values will be converted to a string via JSON.stringify\n */\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nfunction exportVariable(name, val) {\n const convertedVal = utils_1.toCommandValue(val);\n process.env[name] = convertedVal;\n const filePath = process.env['GITHUB_ENV'] || '';\n if (filePath) {\n const delimiter = '_GitHubActionsFileCommandDelimeter_';\n const commandValue = `${name}<<${delimiter}${os.EOL}${convertedVal}${os.EOL}${delimiter}`;\n file_command_1.issueCommand('ENV', commandValue);\n }\n else {\n command_1.issueCommand('set-env', { name }, convertedVal);\n }\n}\nexports.exportVariable = exportVariable;\n/**\n * Registers a secret which will get masked from logs\n * @param secret value of the secret\n */\nfunction setSecret(secret) {\n command_1.issueCommand('add-mask', {}, secret);\n}\nexports.setSecret = setSecret;\n/**\n * Prepends inputPath to the PATH (for this action and future actions)\n * @param inputPath\n */\nfunction addPath(inputPath) {\n const filePath = process.env['GITHUB_PATH'] || '';\n if (filePath) {\n file_command_1.issueCommand('PATH', inputPath);\n }\n else {\n command_1.issueCommand('add-path', {}, inputPath);\n }\n process.env['PATH'] = `${inputPath}${path.delimiter}${process.env['PATH']}`;\n}\nexports.addPath = addPath;\n/**\n * Gets the value of an input. The value is also trimmed.\n *\n * @param name name of the input to get\n * @param options optional. See InputOptions.\n * @returns string\n */\nfunction getInput(name, options) {\n const val = process.env[`INPUT_${name.replace(/ /g, '_').toUpperCase()}`] || '';\n if (options && options.required && !val) {\n throw new Error(`Input required and not supplied: ${name}`);\n }\n return val.trim();\n}\nexports.getInput = getInput;\n/**\n * Sets the value of an output.\n *\n * @param name name of the output to set\n * @param value value to store. Non-string values will be converted to a string via JSON.stringify\n */\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nfunction setOutput(name, value) {\n command_1.issueCommand('set-output', { name }, value);\n}\nexports.setOutput = setOutput;\n/**\n * Enables or disables the echoing of commands into stdout for the rest of the step.\n * Echoing is disabled by default if ACTIONS_STEP_DEBUG is not set.\n *\n */\nfunction setCommandEcho(enabled) {\n command_1.issue('echo', enabled ? 'on' : 'off');\n}\nexports.setCommandEcho = setCommandEcho;\n//-----------------------------------------------------------------------\n// Results\n//-----------------------------------------------------------------------\n/**\n * Sets the action status to failed.\n * When the action exits it will be with an exit code of 1\n * @param message add error issue message\n */\nfunction setFailed(message) {\n process.exitCode = ExitCode.Failure;\n error(message);\n}\nexports.setFailed = setFailed;\n//-----------------------------------------------------------------------\n// Logging Commands\n//-----------------------------------------------------------------------\n/**\n * Gets whether Actions Step Debug is on or not\n */\nfunction isDebug() {\n return process.env['RUNNER_DEBUG'] === '1';\n}\nexports.isDebug = isDebug;\n/**\n * Writes debug message to user log\n * @param message debug message\n */\nfunction debug(message) {\n command_1.issueCommand('debug', {}, message);\n}\nexports.debug = debug;\n/**\n * Adds an error issue\n * @param message error issue message. Errors will be converted to string via toString()\n */\nfunction error(message) {\n command_1.issue('error', message instanceof Error ? message.toString() : message);\n}\nexports.error = error;\n/**\n * Adds an warning issue\n * @param message warning issue message. Errors will be converted to string via toString()\n */\nfunction warning(message) {\n command_1.issue('warning', message instanceof Error ? message.toString() : message);\n}\nexports.warning = warning;\n/**\n * Writes info to log with console.log.\n * @param message info message\n */\nfunction info(message) {\n process.stdout.write(message + os.EOL);\n}\nexports.info = info;\n/**\n * Begin an output group.\n *\n * Output until the next `groupEnd` will be foldable in this group\n *\n * @param name The name of the output group\n */\nfunction startGroup(name) {\n command_1.issue('group', name);\n}\nexports.startGroup = startGroup;\n/**\n * End an output group.\n */\nfunction endGroup() {\n command_1.issue('endgroup');\n}\nexports.endGroup = endGroup;\n/**\n * Wrap an asynchronous function call in a group.\n *\n * Returns the same type as the function itself.\n *\n * @param name The name of the group\n * @param fn The function to wrap in the group\n */\nfunction group(name, fn) {\n return __awaiter(this, void 0, void 0, function* () {\n startGroup(name);\n let result;\n try {\n result = yield fn();\n }\n finally {\n endGroup();\n }\n return result;\n });\n}\nexports.group = group;\n//-----------------------------------------------------------------------\n// Wrapper action state\n//-----------------------------------------------------------------------\n/**\n * Saves state for current action, the state can only be retrieved by this action's post job execution.\n *\n * @param name name of the state to store\n * @param value value to store. Non-string values will be converted to a string via JSON.stringify\n */\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nfunction saveState(name, value) {\n command_1.issueCommand('save-state', { name }, value);\n}\nexports.saveState = saveState;\n/**\n * Gets the value of an state set by this action's main execution.\n *\n * @param name name of the state to get\n * @returns string\n */\nfunction getState(name) {\n return process.env[`STATE_${name}`] || '';\n}\nexports.getState = getState;\n//# sourceMappingURL=core.js.map","\"use strict\";\n// For internal use, subject to change.\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\n result[\"default\"] = mod;\n return result;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\n// We use any as a valid input type\n/* eslint-disable @typescript-eslint/no-explicit-any */\nconst fs = __importStar(require(\"fs\"));\nconst os = __importStar(require(\"os\"));\nconst utils_1 = require(\"./utils\");\nfunction issueCommand(command, message) {\n const filePath = process.env[`GITHUB_${command}`];\n if (!filePath) {\n throw new Error(`Unable to find environment variable for file command ${command}`);\n }\n if (!fs.existsSync(filePath)) {\n throw new Error(`Missing file at path: ${filePath}`);\n }\n fs.appendFileSync(filePath, `${utils_1.toCommandValue(message)}${os.EOL}`, {\n encoding: 'utf8'\n });\n}\nexports.issueCommand = issueCommand;\n//# sourceMappingURL=file-command.js.map","\"use strict\";\n// We use any as a valid input type\n/* eslint-disable @typescript-eslint/no-explicit-any */\nObject.defineProperty(exports, \"__esModule\", { value: true });\n/**\n * Sanitizes an input into a string so it can be passed into issueCommand safely\n * @param input input to sanitize into a string\n */\nfunction toCommandValue(input) {\n if (input === null || input === undefined) {\n return '';\n }\n else if (typeof input === 'string' || input instanceof String) {\n return input;\n }\n return JSON.stringify(input);\n}\nexports.toCommandValue = toCommandValue;\n//# sourceMappingURL=utils.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.Context = void 0;\nconst fs_1 = require(\"fs\");\nconst os_1 = require(\"os\");\nclass Context {\n /**\n * Hydrate the context from the environment\n */\n constructor() {\n this.payload = {};\n if (process.env.GITHUB_EVENT_PATH) {\n if (fs_1.existsSync(process.env.GITHUB_EVENT_PATH)) {\n this.payload = JSON.parse(fs_1.readFileSync(process.env.GITHUB_EVENT_PATH, { encoding: 'utf8' }));\n }\n else {\n const path = process.env.GITHUB_EVENT_PATH;\n process.stdout.write(`GITHUB_EVENT_PATH ${path} does not exist${os_1.EOL}`);\n }\n }\n this.eventName = process.env.GITHUB_EVENT_NAME;\n this.sha = process.env.GITHUB_SHA;\n this.ref = process.env.GITHUB_REF;\n this.workflow = process.env.GITHUB_WORKFLOW;\n this.action = process.env.GITHUB_ACTION;\n this.actor = process.env.GITHUB_ACTOR;\n this.job = process.env.GITHUB_JOB;\n this.runNumber = parseInt(process.env.GITHUB_RUN_NUMBER, 10);\n this.runId = parseInt(process.env.GITHUB_RUN_ID, 10);\n }\n get issue() {\n const payload = this.payload;\n return Object.assign(Object.assign({}, this.repo), { number: (payload.issue || payload.pull_request || payload).number });\n }\n get repo() {\n if (process.env.GITHUB_REPOSITORY) {\n const [owner, repo] = process.env.GITHUB_REPOSITORY.split('/');\n return { owner, repo };\n }\n if (this.payload.repository) {\n return {\n owner: this.payload.repository.owner.login,\n repo: this.payload.repository.name\n };\n }\n throw new Error(\"context.repo requires a GITHUB_REPOSITORY environment variable like 'owner/repo'\");\n }\n}\nexports.Context = Context;\n//# sourceMappingURL=context.js.map","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getOctokit = exports.context = void 0;\nconst Context = __importStar(require(\"./context\"));\nconst utils_1 = require(\"./utils\");\nexports.context = new Context.Context();\n/**\n * Returns a hydrated octokit ready to use for GitHub Actions\n *\n * @param token the repo PAT or GITHUB_TOKEN\n * @param options other options to set\n */\nfunction getOctokit(token, options) {\n return new utils_1.GitHub(utils_1.getOctokitOptions(token, options));\n}\nexports.getOctokit = getOctokit;\n//# sourceMappingURL=github.js.map","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getApiBaseUrl = exports.getProxyAgent = exports.getAuthString = void 0;\nconst httpClient = __importStar(require(\"@actions/http-client\"));\nfunction getAuthString(token, options) {\n if (!token && !options.auth) {\n throw new Error('Parameter token or opts.auth is required');\n }\n else if (token && options.auth) {\n throw new Error('Parameters token and opts.auth may not both be specified');\n }\n return typeof options.auth === 'string' ? options.auth : `token ${token}`;\n}\nexports.getAuthString = getAuthString;\nfunction getProxyAgent(destinationUrl) {\n const hc = new httpClient.HttpClient();\n return hc.getAgent(destinationUrl);\n}\nexports.getProxyAgent = getProxyAgent;\nfunction getApiBaseUrl() {\n return process.env['GITHUB_API_URL'] || 'https://api.github.com';\n}\nexports.getApiBaseUrl = getApiBaseUrl;\n//# sourceMappingURL=utils.js.map","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getOctokitOptions = exports.GitHub = exports.context = void 0;\nconst Context = __importStar(require(\"./context\"));\nconst Utils = __importStar(require(\"./internal/utils\"));\n// octokit + plugins\nconst core_1 = require(\"@octokit/core\");\nconst plugin_rest_endpoint_methods_1 = require(\"@octokit/plugin-rest-endpoint-methods\");\nconst plugin_paginate_rest_1 = require(\"@octokit/plugin-paginate-rest\");\nexports.context = new Context.Context();\nconst baseUrl = Utils.getApiBaseUrl();\nconst defaults = {\n baseUrl,\n request: {\n agent: Utils.getProxyAgent(baseUrl)\n }\n};\nexports.GitHub = core_1.Octokit.plugin(plugin_rest_endpoint_methods_1.restEndpointMethods, plugin_paginate_rest_1.paginateRest).defaults(defaults);\n/**\n * Convience function to correctly format Octokit Options to pass into the constructor.\n *\n * @param token the repo PAT or GITHUB_TOKEN\n * @param options other options to set\n */\nfunction getOctokitOptions(token, options) {\n const opts = Object.assign({}, options || {}); // Shallow clone - don't mutate the object provided by the caller\n // Auth\n const auth = Utils.getAuthString(token, opts);\n if (auth) {\n opts.auth = auth;\n }\n return opts;\n}\nexports.getOctokitOptions = getOctokitOptions;\n//# sourceMappingURL=utils.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst http = require(\"http\");\nconst https = require(\"https\");\nconst pm = require(\"./proxy\");\nlet tunnel;\nvar HttpCodes;\n(function (HttpCodes) {\n HttpCodes[HttpCodes[\"OK\"] = 200] = \"OK\";\n HttpCodes[HttpCodes[\"MultipleChoices\"] = 300] = \"MultipleChoices\";\n HttpCodes[HttpCodes[\"MovedPermanently\"] = 301] = \"MovedPermanently\";\n HttpCodes[HttpCodes[\"ResourceMoved\"] = 302] = \"ResourceMoved\";\n HttpCodes[HttpCodes[\"SeeOther\"] = 303] = \"SeeOther\";\n HttpCodes[HttpCodes[\"NotModified\"] = 304] = \"NotModified\";\n HttpCodes[HttpCodes[\"UseProxy\"] = 305] = \"UseProxy\";\n HttpCodes[HttpCodes[\"SwitchProxy\"] = 306] = \"SwitchProxy\";\n HttpCodes[HttpCodes[\"TemporaryRedirect\"] = 307] = \"TemporaryRedirect\";\n HttpCodes[HttpCodes[\"PermanentRedirect\"] = 308] = \"PermanentRedirect\";\n HttpCodes[HttpCodes[\"BadRequest\"] = 400] = \"BadRequest\";\n HttpCodes[HttpCodes[\"Unauthorized\"] = 401] = \"Unauthorized\";\n HttpCodes[HttpCodes[\"PaymentRequired\"] = 402] = \"PaymentRequired\";\n HttpCodes[HttpCodes[\"Forbidden\"] = 403] = \"Forbidden\";\n HttpCodes[HttpCodes[\"NotFound\"] = 404] = \"NotFound\";\n HttpCodes[HttpCodes[\"MethodNotAllowed\"] = 405] = \"MethodNotAllowed\";\n HttpCodes[HttpCodes[\"NotAcceptable\"] = 406] = \"NotAcceptable\";\n HttpCodes[HttpCodes[\"ProxyAuthenticationRequired\"] = 407] = \"ProxyAuthenticationRequired\";\n HttpCodes[HttpCodes[\"RequestTimeout\"] = 408] = \"RequestTimeout\";\n HttpCodes[HttpCodes[\"Conflict\"] = 409] = \"Conflict\";\n HttpCodes[HttpCodes[\"Gone\"] = 410] = \"Gone\";\n HttpCodes[HttpCodes[\"TooManyRequests\"] = 429] = \"TooManyRequests\";\n HttpCodes[HttpCodes[\"InternalServerError\"] = 500] = \"InternalServerError\";\n HttpCodes[HttpCodes[\"NotImplemented\"] = 501] = \"NotImplemented\";\n HttpCodes[HttpCodes[\"BadGateway\"] = 502] = \"BadGateway\";\n HttpCodes[HttpCodes[\"ServiceUnavailable\"] = 503] = \"ServiceUnavailable\";\n HttpCodes[HttpCodes[\"GatewayTimeout\"] = 504] = \"GatewayTimeout\";\n})(HttpCodes = exports.HttpCodes || (exports.HttpCodes = {}));\nvar Headers;\n(function (Headers) {\n Headers[\"Accept\"] = \"accept\";\n Headers[\"ContentType\"] = \"content-type\";\n})(Headers = exports.Headers || (exports.Headers = {}));\nvar MediaTypes;\n(function (MediaTypes) {\n MediaTypes[\"ApplicationJson\"] = \"application/json\";\n})(MediaTypes = exports.MediaTypes || (exports.MediaTypes = {}));\n/**\n * Returns the proxy URL, depending upon the supplied url and proxy environment variables.\n * @param serverUrl The server URL where the request will be sent. For example, https://api.github.com\n */\nfunction getProxyUrl(serverUrl) {\n let proxyUrl = pm.getProxyUrl(new URL(serverUrl));\n return proxyUrl ? proxyUrl.href : '';\n}\nexports.getProxyUrl = getProxyUrl;\nconst HttpRedirectCodes = [\n HttpCodes.MovedPermanently,\n HttpCodes.ResourceMoved,\n HttpCodes.SeeOther,\n HttpCodes.TemporaryRedirect,\n HttpCodes.PermanentRedirect\n];\nconst HttpResponseRetryCodes = [\n HttpCodes.BadGateway,\n HttpCodes.ServiceUnavailable,\n HttpCodes.GatewayTimeout\n];\nconst RetryableHttpVerbs = ['OPTIONS', 'GET', 'DELETE', 'HEAD'];\nconst ExponentialBackoffCeiling = 10;\nconst ExponentialBackoffTimeSlice = 5;\nclass HttpClientError extends Error {\n constructor(message, statusCode) {\n super(message);\n this.name = 'HttpClientError';\n this.statusCode = statusCode;\n Object.setPrototypeOf(this, HttpClientError.prototype);\n }\n}\nexports.HttpClientError = HttpClientError;\nclass HttpClientResponse {\n constructor(message) {\n this.message = message;\n }\n readBody() {\n return new Promise(async (resolve, reject) => {\n let output = Buffer.alloc(0);\n this.message.on('data', (chunk) => {\n output = Buffer.concat([output, chunk]);\n });\n this.message.on('end', () => {\n resolve(output.toString());\n });\n });\n }\n}\nexports.HttpClientResponse = HttpClientResponse;\nfunction isHttps(requestUrl) {\n let parsedUrl = new URL(requestUrl);\n return parsedUrl.protocol === 'https:';\n}\nexports.isHttps = isHttps;\nclass HttpClient {\n constructor(userAgent, handlers, requestOptions) {\n this._ignoreSslError = false;\n this._allowRedirects = true;\n this._allowRedirectDowngrade = false;\n this._maxRedirects = 50;\n this._allowRetries = false;\n this._maxRetries = 1;\n this._keepAlive = false;\n this._disposed = false;\n this.userAgent = userAgent;\n this.handlers = handlers || [];\n this.requestOptions = requestOptions;\n if (requestOptions) {\n if (requestOptions.ignoreSslError != null) {\n this._ignoreSslError = requestOptions.ignoreSslError;\n }\n this._socketTimeout = requestOptions.socketTimeout;\n if (requestOptions.allowRedirects != null) {\n this._allowRedirects = requestOptions.allowRedirects;\n }\n if (requestOptions.allowRedirectDowngrade != null) {\n this._allowRedirectDowngrade = requestOptions.allowRedirectDowngrade;\n }\n if (requestOptions.maxRedirects != null) {\n this._maxRedirects = Math.max(requestOptions.maxRedirects, 0);\n }\n if (requestOptions.keepAlive != null) {\n this._keepAlive = requestOptions.keepAlive;\n }\n if (requestOptions.allowRetries != null) {\n this._allowRetries = requestOptions.allowRetries;\n }\n if (requestOptions.maxRetries != null) {\n this._maxRetries = requestOptions.maxRetries;\n }\n }\n }\n options(requestUrl, additionalHeaders) {\n return this.request('OPTIONS', requestUrl, null, additionalHeaders || {});\n }\n get(requestUrl, additionalHeaders) {\n return this.request('GET', requestUrl, null, additionalHeaders || {});\n }\n del(requestUrl, additionalHeaders) {\n return this.request('DELETE', requestUrl, null, additionalHeaders || {});\n }\n post(requestUrl, data, additionalHeaders) {\n return this.request('POST', requestUrl, data, additionalHeaders || {});\n }\n patch(requestUrl, data, additionalHeaders) {\n return this.request('PATCH', requestUrl, data, additionalHeaders || {});\n }\n put(requestUrl, data, additionalHeaders) {\n return this.request('PUT', requestUrl, data, additionalHeaders || {});\n }\n head(requestUrl, additionalHeaders) {\n return this.request('HEAD', requestUrl, null, additionalHeaders || {});\n }\n sendStream(verb, requestUrl, stream, additionalHeaders) {\n return this.request(verb, requestUrl, stream, additionalHeaders);\n }\n /**\n * Gets a typed object from an endpoint\n * Be aware that not found returns a null. Other errors (4xx, 5xx) reject the promise\n */\n async getJson(requestUrl, additionalHeaders = {}) {\n additionalHeaders[Headers.Accept] = this._getExistingOrDefaultHeader(additionalHeaders, Headers.Accept, MediaTypes.ApplicationJson);\n let res = await this.get(requestUrl, additionalHeaders);\n return this._processResponse(res, this.requestOptions);\n }\n async postJson(requestUrl, obj, additionalHeaders = {}) {\n let data = JSON.stringify(obj, null, 2);\n additionalHeaders[Headers.Accept] = this._getExistingOrDefaultHeader(additionalHeaders, Headers.Accept, MediaTypes.ApplicationJson);\n additionalHeaders[Headers.ContentType] = this._getExistingOrDefaultHeader(additionalHeaders, Headers.ContentType, MediaTypes.ApplicationJson);\n let res = await this.post(requestUrl, data, additionalHeaders);\n return this._processResponse(res, this.requestOptions);\n }\n async putJson(requestUrl, obj, additionalHeaders = {}) {\n let data = JSON.stringify(obj, null, 2);\n additionalHeaders[Headers.Accept] = this._getExistingOrDefaultHeader(additionalHeaders, Headers.Accept, MediaTypes.ApplicationJson);\n additionalHeaders[Headers.ContentType] = this._getExistingOrDefaultHeader(additionalHeaders, Headers.ContentType, MediaTypes.ApplicationJson);\n let res = await this.put(requestUrl, data, additionalHeaders);\n return this._processResponse(res, this.requestOptions);\n }\n async patchJson(requestUrl, obj, additionalHeaders = {}) {\n let data = JSON.stringify(obj, null, 2);\n additionalHeaders[Headers.Accept] = this._getExistingOrDefaultHeader(additionalHeaders, Headers.Accept, MediaTypes.ApplicationJson);\n additionalHeaders[Headers.ContentType] = this._getExistingOrDefaultHeader(additionalHeaders, Headers.ContentType, MediaTypes.ApplicationJson);\n let res = await this.patch(requestUrl, data, additionalHeaders);\n return this._processResponse(res, this.requestOptions);\n }\n /**\n * Makes a raw http request.\n * All other methods such as get, post, patch, and request ultimately call this.\n * Prefer get, del, post and patch\n */\n async request(verb, requestUrl, data, headers) {\n if (this._disposed) {\n throw new Error('Client has already been disposed.');\n }\n let parsedUrl = new URL(requestUrl);\n let info = this._prepareRequest(verb, parsedUrl, headers);\n // Only perform retries on reads since writes may not be idempotent.\n let maxTries = this._allowRetries && RetryableHttpVerbs.indexOf(verb) != -1\n ? this._maxRetries + 1\n : 1;\n let numTries = 0;\n let response;\n while (numTries < maxTries) {\n response = await this.requestRaw(info, data);\n // Check if it's an authentication challenge\n if (response &&\n response.message &&\n response.message.statusCode === HttpCodes.Unauthorized) {\n let authenticationHandler;\n for (let i = 0; i < this.handlers.length; i++) {\n if (this.handlers[i].canHandleAuthentication(response)) {\n authenticationHandler = this.handlers[i];\n break;\n }\n }\n if (authenticationHandler) {\n return authenticationHandler.handleAuthentication(this, info, data);\n }\n else {\n // We have received an unauthorized response but have no handlers to handle it.\n // Let the response return to the caller.\n return response;\n }\n }\n let redirectsRemaining = this._maxRedirects;\n while (HttpRedirectCodes.indexOf(response.message.statusCode) != -1 &&\n this._allowRedirects &&\n redirectsRemaining > 0) {\n const redirectUrl = response.message.headers['location'];\n if (!redirectUrl) {\n // if there's no location to redirect to, we won't\n break;\n }\n let parsedRedirectUrl = new URL(redirectUrl);\n if (parsedUrl.protocol == 'https:' &&\n parsedUrl.protocol != parsedRedirectUrl.protocol &&\n !this._allowRedirectDowngrade) {\n throw new Error('Redirect from HTTPS to HTTP protocol. This downgrade is not allowed for security reasons. If you want to allow this behavior, set the allowRedirectDowngrade option to true.');\n }\n // we need to finish reading the response before reassigning response\n // which will leak the open socket.\n await response.readBody();\n // strip authorization header if redirected to a different hostname\n if (parsedRedirectUrl.hostname !== parsedUrl.hostname) {\n for (let header in headers) {\n // header names are case insensitive\n if (header.toLowerCase() === 'authorization') {\n delete headers[header];\n }\n }\n }\n // let's make the request with the new redirectUrl\n info = this._prepareRequest(verb, parsedRedirectUrl, headers);\n response = await this.requestRaw(info, data);\n redirectsRemaining--;\n }\n if (HttpResponseRetryCodes.indexOf(response.message.statusCode) == -1) {\n // If not a retry code, return immediately instead of retrying\n return response;\n }\n numTries += 1;\n if (numTries < maxTries) {\n await response.readBody();\n await this._performExponentialBackoff(numTries);\n }\n }\n return response;\n }\n /**\n * Needs to be called if keepAlive is set to true in request options.\n */\n dispose() {\n if (this._agent) {\n this._agent.destroy();\n }\n this._disposed = true;\n }\n /**\n * Raw request.\n * @param info\n * @param data\n */\n requestRaw(info, data) {\n return new Promise((resolve, reject) => {\n let callbackForResult = function (err, res) {\n if (err) {\n reject(err);\n }\n resolve(res);\n };\n this.requestRawWithCallback(info, data, callbackForResult);\n });\n }\n /**\n * Raw request with callback.\n * @param info\n * @param data\n * @param onResult\n */\n requestRawWithCallback(info, data, onResult) {\n let socket;\n if (typeof data === 'string') {\n info.options.headers['Content-Length'] = Buffer.byteLength(data, 'utf8');\n }\n let callbackCalled = false;\n let handleResult = (err, res) => {\n if (!callbackCalled) {\n callbackCalled = true;\n onResult(err, res);\n }\n };\n let req = info.httpModule.request(info.options, (msg) => {\n let res = new HttpClientResponse(msg);\n handleResult(null, res);\n });\n req.on('socket', sock => {\n socket = sock;\n });\n // If we ever get disconnected, we want the socket to timeout eventually\n req.setTimeout(this._socketTimeout || 3 * 60000, () => {\n if (socket) {\n socket.end();\n }\n handleResult(new Error('Request timeout: ' + info.options.path), null);\n });\n req.on('error', function (err) {\n // err has statusCode property\n // res should have headers\n handleResult(err, null);\n });\n if (data && typeof data === 'string') {\n req.write(data, 'utf8');\n }\n if (data && typeof data !== 'string') {\n data.on('close', function () {\n req.end();\n });\n data.pipe(req);\n }\n else {\n req.end();\n }\n }\n /**\n * Gets an http agent. This function is useful when you need an http agent that handles\n * routing through a proxy server - depending upon the url and proxy environment variables.\n * @param serverUrl The server URL where the request will be sent. For example, https://api.github.com\n */\n getAgent(serverUrl) {\n let parsedUrl = new URL(serverUrl);\n return this._getAgent(parsedUrl);\n }\n _prepareRequest(method, requestUrl, headers) {\n const info = {};\n info.parsedUrl = requestUrl;\n const usingSsl = info.parsedUrl.protocol === 'https:';\n info.httpModule = usingSsl ? https : http;\n const defaultPort = usingSsl ? 443 : 80;\n info.options = {};\n info.options.host = info.parsedUrl.hostname;\n info.options.port = info.parsedUrl.port\n ? parseInt(info.parsedUrl.port)\n : defaultPort;\n info.options.path =\n (info.parsedUrl.pathname || '') + (info.parsedUrl.search || '');\n info.options.method = method;\n info.options.headers = this._mergeHeaders(headers);\n if (this.userAgent != null) {\n info.options.headers['user-agent'] = this.userAgent;\n }\n info.options.agent = this._getAgent(info.parsedUrl);\n // gives handlers an opportunity to participate\n if (this.handlers) {\n this.handlers.forEach(handler => {\n handler.prepareRequest(info.options);\n });\n }\n return info;\n }\n _mergeHeaders(headers) {\n const lowercaseKeys = obj => Object.keys(obj).reduce((c, k) => ((c[k.toLowerCase()] = obj[k]), c), {});\n if (this.requestOptions && this.requestOptions.headers) {\n return Object.assign({}, lowercaseKeys(this.requestOptions.headers), lowercaseKeys(headers));\n }\n return lowercaseKeys(headers || {});\n }\n _getExistingOrDefaultHeader(additionalHeaders, header, _default) {\n const lowercaseKeys = obj => Object.keys(obj).reduce((c, k) => ((c[k.toLowerCase()] = obj[k]), c), {});\n let clientHeader;\n if (this.requestOptions && this.requestOptions.headers) {\n clientHeader = lowercaseKeys(this.requestOptions.headers)[header];\n }\n return additionalHeaders[header] || clientHeader || _default;\n }\n _getAgent(parsedUrl) {\n let agent;\n let proxyUrl = pm.getProxyUrl(parsedUrl);\n let useProxy = proxyUrl && proxyUrl.hostname;\n if (this._keepAlive && useProxy) {\n agent = this._proxyAgent;\n }\n if (this._keepAlive && !useProxy) {\n agent = this._agent;\n }\n // if agent is already assigned use that agent.\n if (!!agent) {\n return agent;\n }\n const usingSsl = parsedUrl.protocol === 'https:';\n let maxSockets = 100;\n if (!!this.requestOptions) {\n maxSockets = this.requestOptions.maxSockets || http.globalAgent.maxSockets;\n }\n if (useProxy) {\n // If using proxy, need tunnel\n if (!tunnel) {\n tunnel = require('tunnel');\n }\n const agentOptions = {\n maxSockets: maxSockets,\n keepAlive: this._keepAlive,\n proxy: {\n proxyAuth: `${proxyUrl.username}:${proxyUrl.password}`,\n host: proxyUrl.hostname,\n port: proxyUrl.port\n }\n };\n let tunnelAgent;\n const overHttps = proxyUrl.protocol === 'https:';\n if (usingSsl) {\n tunnelAgent = overHttps ? tunnel.httpsOverHttps : tunnel.httpsOverHttp;\n }\n else {\n tunnelAgent = overHttps ? tunnel.httpOverHttps : tunnel.httpOverHttp;\n }\n agent = tunnelAgent(agentOptions);\n this._proxyAgent = agent;\n }\n // if reusing agent across request and tunneling agent isn't assigned create a new agent\n if (this._keepAlive && !agent) {\n const options = { keepAlive: this._keepAlive, maxSockets: maxSockets };\n agent = usingSsl ? new https.Agent(options) : new http.Agent(options);\n this._agent = agent;\n }\n // if not using private agent and tunnel agent isn't setup then use global agent\n if (!agent) {\n agent = usingSsl ? https.globalAgent : http.globalAgent;\n }\n if (usingSsl && this._ignoreSslError) {\n // we don't want to set NODE_TLS_REJECT_UNAUTHORIZED=0 since that will affect request for entire process\n // http.RequestOptions doesn't expose a way to modify RequestOptions.agent.options\n // we have to cast it to any and change it directly\n agent.options = Object.assign(agent.options || {}, {\n rejectUnauthorized: false\n });\n }\n return agent;\n }\n _performExponentialBackoff(retryNumber) {\n retryNumber = Math.min(ExponentialBackoffCeiling, retryNumber);\n const ms = ExponentialBackoffTimeSlice * Math.pow(2, retryNumber);\n return new Promise(resolve => setTimeout(() => resolve(), ms));\n }\n static dateTimeDeserializer(key, value) {\n if (typeof value === 'string') {\n let a = new Date(value);\n if (!isNaN(a.valueOf())) {\n return a;\n }\n }\n return value;\n }\n async _processResponse(res, options) {\n return new Promise(async (resolve, reject) => {\n const statusCode = res.message.statusCode;\n const response = {\n statusCode: statusCode,\n result: null,\n headers: {}\n };\n // not found leads to null obj returned\n if (statusCode == HttpCodes.NotFound) {\n resolve(response);\n }\n let obj;\n let contents;\n // get the result from the body\n try {\n contents = await res.readBody();\n if (contents && contents.length > 0) {\n if (options && options.deserializeDates) {\n obj = JSON.parse(contents, HttpClient.dateTimeDeserializer);\n }\n else {\n obj = JSON.parse(contents);\n }\n response.result = obj;\n }\n response.headers = res.message.headers;\n }\n catch (err) {\n // Invalid resource (contents not json); leaving result obj null\n }\n // note that 3xx redirects are handled by the http layer.\n if (statusCode > 299) {\n let msg;\n // if exception/error in body, attempt to get better error\n if (obj && obj.message) {\n msg = obj.message;\n }\n else if (contents && contents.length > 0) {\n // it may be the case that the exception is in the body message as string\n msg = contents;\n }\n else {\n msg = 'Failed request: (' + statusCode + ')';\n }\n let err = new HttpClientError(msg, statusCode);\n err.result = response.result;\n reject(err);\n }\n else {\n resolve(response);\n }\n });\n }\n}\nexports.HttpClient = HttpClient;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nfunction getProxyUrl(reqUrl) {\n let usingSsl = reqUrl.protocol === 'https:';\n let proxyUrl;\n if (checkBypass(reqUrl)) {\n return proxyUrl;\n }\n let proxyVar;\n if (usingSsl) {\n proxyVar = process.env['https_proxy'] || process.env['HTTPS_PROXY'];\n }\n else {\n proxyVar = process.env['http_proxy'] || process.env['HTTP_PROXY'];\n }\n if (proxyVar) {\n proxyUrl = new URL(proxyVar);\n }\n return proxyUrl;\n}\nexports.getProxyUrl = getProxyUrl;\nfunction checkBypass(reqUrl) {\n if (!reqUrl.hostname) {\n return false;\n }\n let noProxy = process.env['no_proxy'] || process.env['NO_PROXY'] || '';\n if (!noProxy) {\n return false;\n }\n // Determine the request port\n let reqPort;\n if (reqUrl.port) {\n reqPort = Number(reqUrl.port);\n }\n else if (reqUrl.protocol === 'http:') {\n reqPort = 80;\n }\n else if (reqUrl.protocol === 'https:') {\n reqPort = 443;\n }\n // Format the request hostname and hostname with port\n let upperReqHosts = [reqUrl.hostname.toUpperCase()];\n if (typeof reqPort === 'number') {\n upperReqHosts.push(`${upperReqHosts[0]}:${reqPort}`);\n }\n // Compare request host against noproxy\n for (let upperNoProxyItem of noProxy\n .split(',')\n .map(x => x.trim().toUpperCase())\n .filter(x => x)) {\n if (upperReqHosts.some(x => x === upperNoProxyItem)) {\n return true;\n }\n }\n return false;\n}\nexports.checkBypass = checkBypass;\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nasync function auth(token) {\n const tokenType = token.split(/\\./).length === 3 ? \"app\" : /^v\\d+\\./.test(token) ? \"installation\" : \"oauth\";\n return {\n type: \"token\",\n token: token,\n tokenType\n };\n}\n\n/**\n * Prefix token for usage in the Authorization header\n *\n * @param token OAuth token or JSON Web Token\n */\nfunction withAuthorizationPrefix(token) {\n if (token.split(/\\./).length === 3) {\n return `bearer ${token}`;\n }\n\n return `token ${token}`;\n}\n\nasync function hook(token, request, route, parameters) {\n const endpoint = request.endpoint.merge(route, parameters);\n endpoint.headers.authorization = withAuthorizationPrefix(token);\n return request(endpoint);\n}\n\nconst createTokenAuth = function createTokenAuth(token) {\n if (!token) {\n throw new Error(\"[@octokit/auth-token] No token passed to createTokenAuth\");\n }\n\n if (typeof token !== \"string\") {\n throw new Error(\"[@octokit/auth-token] Token passed to createTokenAuth is not a string\");\n }\n\n token = token.replace(/^(token|bearer) +/i, \"\");\n return Object.assign(auth.bind(null, token), {\n hook: hook.bind(null, token)\n });\n};\n\nexports.createTokenAuth = createTokenAuth;\n//# sourceMappingURL=index.js.map\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar universalUserAgent = require('universal-user-agent');\nvar beforeAfterHook = require('before-after-hook');\nvar request = require('@octokit/request');\nvar graphql = require('@octokit/graphql');\nvar authToken = require('@octokit/auth-token');\n\nconst VERSION = \"3.1.3\";\n\nclass Octokit {\n constructor(options = {}) {\n const hook = new beforeAfterHook.Collection();\n const requestDefaults = {\n baseUrl: request.request.endpoint.DEFAULTS.baseUrl,\n headers: {},\n request: Object.assign({}, options.request, {\n hook: hook.bind(null, \"request\")\n }),\n mediaType: {\n previews: [],\n format: \"\"\n }\n }; // prepend default user agent with `options.userAgent` if set\n\n requestDefaults.headers[\"user-agent\"] = [options.userAgent, `octokit-core.js/${VERSION} ${universalUserAgent.getUserAgent()}`].filter(Boolean).join(\" \");\n\n if (options.baseUrl) {\n requestDefaults.baseUrl = options.baseUrl;\n }\n\n if (options.previews) {\n requestDefaults.mediaType.previews = options.previews;\n }\n\n if (options.timeZone) {\n requestDefaults.headers[\"time-zone\"] = options.timeZone;\n }\n\n this.request = request.request.defaults(requestDefaults);\n this.graphql = graphql.withCustomRequest(this.request).defaults(requestDefaults);\n this.log = Object.assign({\n debug: () => {},\n info: () => {},\n warn: console.warn.bind(console),\n error: console.error.bind(console)\n }, options.log);\n this.hook = hook; // (1) If neither `options.authStrategy` nor `options.auth` are set, the `octokit` instance\n // is unauthenticated. The `this.auth()` method is a no-op and no request hook is registered.\n // (2) If only `options.auth` is set, use the default token authentication strategy.\n // (3) If `options.authStrategy` is set then use it and pass in `options.auth`. Always pass own request as many strategies accept a custom request instance.\n // TODO: type `options.auth` based on `options.authStrategy`.\n\n if (!options.authStrategy) {\n if (!options.auth) {\n // (1)\n this.auth = async () => ({\n type: \"unauthenticated\"\n });\n } else {\n // (2)\n const auth = authToken.createTokenAuth(options.auth); // @ts-ignore ¯\\_(ツ)_/¯\n\n hook.wrap(\"request\", auth.hook);\n this.auth = auth;\n }\n } else {\n const auth = options.authStrategy(Object.assign({\n request: this.request\n }, options.auth)); // @ts-ignore ¯\\_(ツ)_/¯\n\n hook.wrap(\"request\", auth.hook);\n this.auth = auth;\n } // apply plugins\n // https://stackoverflow.com/a/16345172\n\n\n const classConstructor = this.constructor;\n classConstructor.plugins.forEach(plugin => {\n Object.assign(this, plugin(this, options));\n });\n }\n\n static defaults(defaults) {\n const OctokitWithDefaults = class extends this {\n constructor(...args) {\n const options = args[0] || {};\n\n if (typeof defaults === \"function\") {\n super(defaults(options));\n return;\n }\n\n super(Object.assign({}, defaults, options, options.userAgent && defaults.userAgent ? {\n userAgent: `${options.userAgent} ${defaults.userAgent}`\n } : null));\n }\n\n };\n return OctokitWithDefaults;\n }\n /**\n * Attach a plugin (or many) to your Octokit instance.\n *\n * @example\n * const API = Octokit.plugin(plugin1, plugin2, plugin3, ...)\n */\n\n\n static plugin(...newPlugins) {\n var _a;\n\n const currentPlugins = this.plugins;\n const NewOctokit = (_a = class extends this {}, _a.plugins = currentPlugins.concat(newPlugins.filter(plugin => !currentPlugins.includes(plugin))), _a);\n return NewOctokit;\n }\n\n}\nOctokit.VERSION = VERSION;\nOctokit.plugins = [];\n\nexports.Octokit = Octokit;\n//# sourceMappingURL=index.js.map\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar isPlainObject = require('is-plain-object');\nvar universalUserAgent = require('universal-user-agent');\n\nfunction lowercaseKeys(object) {\n if (!object) {\n return {};\n }\n\n return Object.keys(object).reduce((newObj, key) => {\n newObj[key.toLowerCase()] = object[key];\n return newObj;\n }, {});\n}\n\nfunction mergeDeep(defaults, options) {\n const result = Object.assign({}, defaults);\n Object.keys(options).forEach(key => {\n if (isPlainObject.isPlainObject(options[key])) {\n if (!(key in defaults)) Object.assign(result, {\n [key]: options[key]\n });else result[key] = mergeDeep(defaults[key], options[key]);\n } else {\n Object.assign(result, {\n [key]: options[key]\n });\n }\n });\n return result;\n}\n\nfunction removeUndefinedProperties(obj) {\n for (const key in obj) {\n if (obj[key] === undefined) {\n delete obj[key];\n }\n }\n\n return obj;\n}\n\nfunction merge(defaults, route, options) {\n if (typeof route === \"string\") {\n let [method, url] = route.split(\" \");\n options = Object.assign(url ? {\n method,\n url\n } : {\n url: method\n }, options);\n } else {\n options = Object.assign({}, route);\n } // lowercase header names before merging with defaults to avoid duplicates\n\n\n options.headers = lowercaseKeys(options.headers); // remove properties with undefined values before merging\n\n removeUndefinedProperties(options);\n removeUndefinedProperties(options.headers);\n const mergedOptions = mergeDeep(defaults || {}, options); // mediaType.previews arrays are merged, instead of overwritten\n\n if (defaults && defaults.mediaType.previews.length) {\n mergedOptions.mediaType.previews = defaults.mediaType.previews.filter(preview => !mergedOptions.mediaType.previews.includes(preview)).concat(mergedOptions.mediaType.previews);\n }\n\n mergedOptions.mediaType.previews = mergedOptions.mediaType.previews.map(preview => preview.replace(/-preview/, \"\"));\n return mergedOptions;\n}\n\nfunction addQueryParameters(url, parameters) {\n const separator = /\\?/.test(url) ? \"&\" : \"?\";\n const names = Object.keys(parameters);\n\n if (names.length === 0) {\n return url;\n }\n\n return url + separator + names.map(name => {\n if (name === \"q\") {\n return \"q=\" + parameters.q.split(\"+\").map(encodeURIComponent).join(\"+\");\n }\n\n return `${name}=${encodeURIComponent(parameters[name])}`;\n }).join(\"&\");\n}\n\nconst urlVariableRegex = /\\{[^}]+\\}/g;\n\nfunction removeNonChars(variableName) {\n return variableName.replace(/^\\W+|\\W+$/g, \"\").split(/,/);\n}\n\nfunction extractUrlVariableNames(url) {\n const matches = url.match(urlVariableRegex);\n\n if (!matches) {\n return [];\n }\n\n return matches.map(removeNonChars).reduce((a, b) => a.concat(b), []);\n}\n\nfunction omit(object, keysToOmit) {\n return Object.keys(object).filter(option => !keysToOmit.includes(option)).reduce((obj, key) => {\n obj[key] = object[key];\n return obj;\n }, {});\n}\n\n// Based on https://github.com/bramstein/url-template, licensed under BSD\n// TODO: create separate package.\n//\n// Copyright (c) 2012-2014, Bram Stein\n// All rights reserved.\n// Redistribution and use in source and binary forms, with or without\n// modification, are permitted provided that the following conditions\n// are met:\n// 1. Redistributions of source code must retain the above copyright\n// notice, this list of conditions and the following disclaimer.\n// 2. Redistributions in binary form must reproduce the above copyright\n// notice, this list of conditions and the following disclaimer in the\n// documentation and/or other materials provided with the distribution.\n// 3. The name of the author may not be used to endorse or promote products\n// derived from this software without specific prior written permission.\n// THIS SOFTWARE IS PROVIDED BY THE AUTHOR \"AS IS\" AND ANY EXPRESS OR IMPLIED\n// WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF\n// MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO\n// EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,\n// INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,\n// BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,\n// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY\n// OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING\n// NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,\n// EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n\n/* istanbul ignore file */\nfunction encodeReserved(str) {\n return str.split(/(%[0-9A-Fa-f]{2})/g).map(function (part) {\n if (!/%[0-9A-Fa-f]/.test(part)) {\n part = encodeURI(part).replace(/%5B/g, \"[\").replace(/%5D/g, \"]\");\n }\n\n return part;\n }).join(\"\");\n}\n\nfunction encodeUnreserved(str) {\n return encodeURIComponent(str).replace(/[!'()*]/g, function (c) {\n return \"%\" + c.charCodeAt(0).toString(16).toUpperCase();\n });\n}\n\nfunction encodeValue(operator, value, key) {\n value = operator === \"+\" || operator === \"#\" ? encodeReserved(value) : encodeUnreserved(value);\n\n if (key) {\n return encodeUnreserved(key) + \"=\" + value;\n } else {\n return value;\n }\n}\n\nfunction isDefined(value) {\n return value !== undefined && value !== null;\n}\n\nfunction isKeyOperator(operator) {\n return operator === \";\" || operator === \"&\" || operator === \"?\";\n}\n\nfunction getValues(context, operator, key, modifier) {\n var value = context[key],\n result = [];\n\n if (isDefined(value) && value !== \"\") {\n if (typeof value === \"string\" || typeof value === \"number\" || typeof value === \"boolean\") {\n value = value.toString();\n\n if (modifier && modifier !== \"*\") {\n value = value.substring(0, parseInt(modifier, 10));\n }\n\n result.push(encodeValue(operator, value, isKeyOperator(operator) ? key : \"\"));\n } else {\n if (modifier === \"*\") {\n if (Array.isArray(value)) {\n value.filter(isDefined).forEach(function (value) {\n result.push(encodeValue(operator, value, isKeyOperator(operator) ? key : \"\"));\n });\n } else {\n Object.keys(value).forEach(function (k) {\n if (isDefined(value[k])) {\n result.push(encodeValue(operator, value[k], k));\n }\n });\n }\n } else {\n const tmp = [];\n\n if (Array.isArray(value)) {\n value.filter(isDefined).forEach(function (value) {\n tmp.push(encodeValue(operator, value));\n });\n } else {\n Object.keys(value).forEach(function (k) {\n if (isDefined(value[k])) {\n tmp.push(encodeUnreserved(k));\n tmp.push(encodeValue(operator, value[k].toString()));\n }\n });\n }\n\n if (isKeyOperator(operator)) {\n result.push(encodeUnreserved(key) + \"=\" + tmp.join(\",\"));\n } else if (tmp.length !== 0) {\n result.push(tmp.join(\",\"));\n }\n }\n }\n } else {\n if (operator === \";\") {\n if (isDefined(value)) {\n result.push(encodeUnreserved(key));\n }\n } else if (value === \"\" && (operator === \"&\" || operator === \"?\")) {\n result.push(encodeUnreserved(key) + \"=\");\n } else if (value === \"\") {\n result.push(\"\");\n }\n }\n\n return result;\n}\n\nfunction parseUrl(template) {\n return {\n expand: expand.bind(null, template)\n };\n}\n\nfunction expand(template, context) {\n var operators = [\"+\", \"#\", \".\", \"/\", \";\", \"?\", \"&\"];\n return template.replace(/\\{([^\\{\\}]+)\\}|([^\\{\\}]+)/g, function (_, expression, literal) {\n if (expression) {\n let operator = \"\";\n const values = [];\n\n if (operators.indexOf(expression.charAt(0)) !== -1) {\n operator = expression.charAt(0);\n expression = expression.substr(1);\n }\n\n expression.split(/,/g).forEach(function (variable) {\n var tmp = /([^:\\*]*)(?::(\\d+)|(\\*))?/.exec(variable);\n values.push(getValues(context, operator, tmp[1], tmp[2] || tmp[3]));\n });\n\n if (operator && operator !== \"+\") {\n var separator = \",\";\n\n if (operator === \"?\") {\n separator = \"&\";\n } else if (operator !== \"#\") {\n separator = operator;\n }\n\n return (values.length !== 0 ? operator : \"\") + values.join(separator);\n } else {\n return values.join(\",\");\n }\n } else {\n return encodeReserved(literal);\n }\n });\n}\n\nfunction parse(options) {\n // https://fetch.spec.whatwg.org/#methods\n let method = options.method.toUpperCase(); // replace :varname with {varname} to make it RFC 6570 compatible\n\n let url = (options.url || \"/\").replace(/:([a-z]\\w+)/g, \"{$1}\");\n let headers = Object.assign({}, options.headers);\n let body;\n let parameters = omit(options, [\"method\", \"baseUrl\", \"url\", \"headers\", \"request\", \"mediaType\"]); // extract variable names from URL to calculate remaining variables later\n\n const urlVariableNames = extractUrlVariableNames(url);\n url = parseUrl(url).expand(parameters);\n\n if (!/^http/.test(url)) {\n url = options.baseUrl + url;\n }\n\n const omittedParameters = Object.keys(options).filter(option => urlVariableNames.includes(option)).concat(\"baseUrl\");\n const remainingParameters = omit(parameters, omittedParameters);\n const isBinaryRequest = /application\\/octet-stream/i.test(headers.accept);\n\n if (!isBinaryRequest) {\n if (options.mediaType.format) {\n // e.g. application/vnd.github.v3+json => application/vnd.github.v3.raw\n headers.accept = headers.accept.split(/,/).map(preview => preview.replace(/application\\/vnd(\\.\\w+)(\\.v3)?(\\.\\w+)?(\\+json)?$/, `application/vnd$1$2.${options.mediaType.format}`)).join(\",\");\n }\n\n if (options.mediaType.previews.length) {\n const previewsFromAcceptHeader = headers.accept.match(/[\\w-]+(?=-preview)/g) || [];\n headers.accept = previewsFromAcceptHeader.concat(options.mediaType.previews).map(preview => {\n const format = options.mediaType.format ? `.${options.mediaType.format}` : \"+json\";\n return `application/vnd.github.${preview}-preview${format}`;\n }).join(\",\");\n }\n } // for GET/HEAD requests, set URL query parameters from remaining parameters\n // for PATCH/POST/PUT/DELETE requests, set request body from remaining parameters\n\n\n if ([\"GET\", \"HEAD\"].includes(method)) {\n url = addQueryParameters(url, remainingParameters);\n } else {\n if (\"data\" in remainingParameters) {\n body = remainingParameters.data;\n } else {\n if (Object.keys(remainingParameters).length) {\n body = remainingParameters;\n } else {\n headers[\"content-length\"] = 0;\n }\n }\n } // default content-type for JSON if body is set\n\n\n if (!headers[\"content-type\"] && typeof body !== \"undefined\") {\n headers[\"content-type\"] = \"application/json; charset=utf-8\";\n } // GitHub expects 'content-length: 0' header for PUT/PATCH requests without body.\n // fetch does not allow to set `content-length` header, but we can set body to an empty string\n\n\n if ([\"PATCH\", \"PUT\"].includes(method) && typeof body === \"undefined\") {\n body = \"\";\n } // Only return body/request keys if present\n\n\n return Object.assign({\n method,\n url,\n headers\n }, typeof body !== \"undefined\" ? {\n body\n } : null, options.request ? {\n request: options.request\n } : null);\n}\n\nfunction endpointWithDefaults(defaults, route, options) {\n return parse(merge(defaults, route, options));\n}\n\nfunction withDefaults(oldDefaults, newDefaults) {\n const DEFAULTS = merge(oldDefaults, newDefaults);\n const endpoint = endpointWithDefaults.bind(null, DEFAULTS);\n return Object.assign(endpoint, {\n DEFAULTS,\n defaults: withDefaults.bind(null, DEFAULTS),\n merge: merge.bind(null, DEFAULTS),\n parse\n });\n}\n\nconst VERSION = \"6.0.8\";\n\nconst userAgent = `octokit-endpoint.js/${VERSION} ${universalUserAgent.getUserAgent()}`; // DEFAULTS has all properties set that EndpointOptions has, except url.\n// So we use RequestParameters and add method as additional required property.\n\nconst DEFAULTS = {\n method: \"GET\",\n baseUrl: \"https://api.github.com\",\n headers: {\n accept: \"application/vnd.github.v3+json\",\n \"user-agent\": userAgent\n },\n mediaType: {\n format: \"\",\n previews: []\n }\n};\n\nconst endpoint = withDefaults(null, DEFAULTS);\n\nexports.endpoint = endpoint;\n//# sourceMappingURL=index.js.map\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\n/*!\n * is-plain-object \n *\n * Copyright (c) 2014-2017, Jon Schlinkert.\n * Released under the MIT License.\n */\n\nfunction isObject(o) {\n return Object.prototype.toString.call(o) === '[object Object]';\n}\n\nfunction isPlainObject(o) {\n var ctor,prot;\n\n if (isObject(o) === false) return false;\n\n // If has modified constructor\n ctor = o.constructor;\n if (ctor === undefined) return true;\n\n // If has modified prototype\n prot = ctor.prototype;\n if (isObject(prot) === false) return false;\n\n // If constructor does not have an Object-specific method\n if (prot.hasOwnProperty('isPrototypeOf') === false) {\n return false;\n }\n\n // Most likely a plain Object\n return true;\n}\n\nexports.isPlainObject = isPlainObject;\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar request = require('@octokit/request');\nvar universalUserAgent = require('universal-user-agent');\n\nconst VERSION = \"4.5.6\";\n\nclass GraphqlError extends Error {\n constructor(request, response) {\n const message = response.data.errors[0].message;\n super(message);\n Object.assign(this, response.data);\n Object.assign(this, {\n headers: response.headers\n });\n this.name = \"GraphqlError\";\n this.request = request; // Maintains proper stack trace (only available on V8)\n\n /* istanbul ignore next */\n\n if (Error.captureStackTrace) {\n Error.captureStackTrace(this, this.constructor);\n }\n }\n\n}\n\nconst NON_VARIABLE_OPTIONS = [\"method\", \"baseUrl\", \"url\", \"headers\", \"request\", \"query\", \"mediaType\"];\nconst GHES_V3_SUFFIX_REGEX = /\\/api\\/v3\\/?$/;\nfunction graphql(request, query, options) {\n if (typeof query === \"string\" && options && \"query\" in options) {\n return Promise.reject(new Error(`[@octokit/graphql] \"query\" cannot be used as variable name`));\n }\n\n const parsedOptions = typeof query === \"string\" ? Object.assign({\n query\n }, options) : query;\n const requestOptions = Object.keys(parsedOptions).reduce((result, key) => {\n if (NON_VARIABLE_OPTIONS.includes(key)) {\n result[key] = parsedOptions[key];\n return result;\n }\n\n if (!result.variables) {\n result.variables = {};\n }\n\n result.variables[key] = parsedOptions[key];\n return result;\n }, {}); // workaround for GitHub Enterprise baseUrl set with /api/v3 suffix\n // https://github.com/octokit/auth-app.js/issues/111#issuecomment-657610451\n\n const baseUrl = parsedOptions.baseUrl || request.endpoint.DEFAULTS.baseUrl;\n\n if (GHES_V3_SUFFIX_REGEX.test(baseUrl)) {\n requestOptions.url = baseUrl.replace(GHES_V3_SUFFIX_REGEX, \"/api/graphql\");\n }\n\n return request(requestOptions).then(response => {\n if (response.data.errors) {\n const headers = {};\n\n for (const key of Object.keys(response.headers)) {\n headers[key] = response.headers[key];\n }\n\n throw new GraphqlError(requestOptions, {\n headers,\n data: response.data\n });\n }\n\n return response.data.data;\n });\n}\n\nfunction withDefaults(request$1, newDefaults) {\n const newRequest = request$1.defaults(newDefaults);\n\n const newApi = (query, options) => {\n return graphql(newRequest, query, options);\n };\n\n return Object.assign(newApi, {\n defaults: withDefaults.bind(null, newRequest),\n endpoint: request.request.endpoint\n });\n}\n\nconst graphql$1 = withDefaults(request.request, {\n headers: {\n \"user-agent\": `octokit-graphql.js/${VERSION} ${universalUserAgent.getUserAgent()}`\n },\n method: \"POST\",\n url: \"/graphql\"\n});\nfunction withCustomRequest(customRequest) {\n return withDefaults(customRequest, {\n method: \"POST\",\n url: \"/graphql\"\n });\n}\n\nexports.graphql = graphql$1;\nexports.withCustomRequest = withCustomRequest;\n//# sourceMappingURL=index.js.map\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nconst VERSION = \"2.4.0\";\n\n/**\n * Some “list” response that can be paginated have a different response structure\n *\n * They have a `total_count` key in the response (search also has `incomplete_results`,\n * /installation/repositories also has `repository_selection`), as well as a key with\n * the list of the items which name varies from endpoint to endpoint.\n *\n * Octokit normalizes these responses so that paginated results are always returned following\n * the same structure. One challenge is that if the list response has only one page, no Link\n * header is provided, so this header alone is not sufficient to check wether a response is\n * paginated or not.\n *\n * We check if a \"total_count\" key is present in the response data, but also make sure that\n * a \"url\" property is not, as the \"Get the combined status for a specific ref\" endpoint would\n * otherwise match: https://developer.github.com/v3/repos/statuses/#get-the-combined-status-for-a-specific-ref\n */\nfunction normalizePaginatedListResponse(response) {\n const responseNeedsNormalization = \"total_count\" in response.data && !(\"url\" in response.data);\n if (!responseNeedsNormalization) return response; // keep the additional properties intact as there is currently no other way\n // to retrieve the same information.\n\n const incompleteResults = response.data.incomplete_results;\n const repositorySelection = response.data.repository_selection;\n const totalCount = response.data.total_count;\n delete response.data.incomplete_results;\n delete response.data.repository_selection;\n delete response.data.total_count;\n const namespaceKey = Object.keys(response.data)[0];\n const data = response.data[namespaceKey];\n response.data = data;\n\n if (typeof incompleteResults !== \"undefined\") {\n response.data.incomplete_results = incompleteResults;\n }\n\n if (typeof repositorySelection !== \"undefined\") {\n response.data.repository_selection = repositorySelection;\n }\n\n response.data.total_count = totalCount;\n return response;\n}\n\nfunction iterator(octokit, route, parameters) {\n const options = typeof route === \"function\" ? route.endpoint(parameters) : octokit.request.endpoint(route, parameters);\n const requestMethod = typeof route === \"function\" ? route : octokit.request;\n const method = options.method;\n const headers = options.headers;\n let url = options.url;\n return {\n [Symbol.asyncIterator]: () => ({\n next() {\n if (!url) {\n return Promise.resolve({\n done: true\n });\n }\n\n return requestMethod({\n method,\n url,\n headers\n }).then(normalizePaginatedListResponse).then(response => {\n // `response.headers.link` format:\n // '; rel=\"next\", ; rel=\"last\"'\n // sets `url` to undefined if \"next\" URL is not present or `link` header is not set\n url = ((response.headers.link || \"\").match(/<([^>]+)>;\\s*rel=\"next\"/) || [])[1];\n return {\n value: response\n };\n });\n }\n\n })\n };\n}\n\nfunction paginate(octokit, route, parameters, mapFn) {\n if (typeof parameters === \"function\") {\n mapFn = parameters;\n parameters = undefined;\n }\n\n return gather(octokit, [], iterator(octokit, route, parameters)[Symbol.asyncIterator](), mapFn);\n}\n\nfunction gather(octokit, results, iterator, mapFn) {\n return iterator.next().then(result => {\n if (result.done) {\n return results;\n }\n\n let earlyExit = false;\n\n function done() {\n earlyExit = true;\n }\n\n results = results.concat(mapFn ? mapFn(result.value, done) : result.value.data);\n\n if (earlyExit) {\n return results;\n }\n\n return gather(octokit, results, iterator, mapFn);\n });\n}\n\n/**\n * @param octokit Octokit instance\n * @param options Options passed to Octokit constructor\n */\n\nfunction paginateRest(octokit) {\n return {\n paginate: Object.assign(paginate.bind(null, octokit), {\n iterator: iterator.bind(null, octokit)\n })\n };\n}\npaginateRest.VERSION = VERSION;\n\nexports.paginateRest = paginateRest;\n//# sourceMappingURL=index.js.map\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nconst Endpoints = {\n actions: {\n addSelectedRepoToOrgSecret: [\"PUT /orgs/{org}/actions/secrets/{secret_name}/repositories/{repository_id}\"],\n cancelWorkflowRun: [\"POST /repos/{owner}/{repo}/actions/runs/{run_id}/cancel\"],\n createOrUpdateOrgSecret: [\"PUT /orgs/{org}/actions/secrets/{secret_name}\"],\n createOrUpdateRepoSecret: [\"PUT /repos/{owner}/{repo}/actions/secrets/{secret_name}\"],\n createRegistrationTokenForOrg: [\"POST /orgs/{org}/actions/runners/registration-token\"],\n createRegistrationTokenForRepo: [\"POST /repos/{owner}/{repo}/actions/runners/registration-token\"],\n createRemoveTokenForOrg: [\"POST /orgs/{org}/actions/runners/remove-token\"],\n createRemoveTokenForRepo: [\"POST /repos/{owner}/{repo}/actions/runners/remove-token\"],\n createWorkflowDispatch: [\"POST /repos/{owner}/{repo}/actions/workflows/{workflow_id}/dispatches\"],\n deleteArtifact: [\"DELETE /repos/{owner}/{repo}/actions/artifacts/{artifact_id}\"],\n deleteOrgSecret: [\"DELETE /orgs/{org}/actions/secrets/{secret_name}\"],\n deleteRepoSecret: [\"DELETE /repos/{owner}/{repo}/actions/secrets/{secret_name}\"],\n deleteSelfHostedRunnerFromOrg: [\"DELETE /orgs/{org}/actions/runners/{runner_id}\"],\n deleteSelfHostedRunnerFromRepo: [\"DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}\"],\n deleteWorkflowRun: [\"DELETE /repos/{owner}/{repo}/actions/runs/{run_id}\"],\n deleteWorkflowRunLogs: [\"DELETE /repos/{owner}/{repo}/actions/runs/{run_id}/logs\"],\n downloadArtifact: [\"GET /repos/{owner}/{repo}/actions/artifacts/{artifact_id}/{archive_format}\"],\n downloadJobLogsForWorkflowRun: [\"GET /repos/{owner}/{repo}/actions/jobs/{job_id}/logs\"],\n downloadWorkflowRunLogs: [\"GET /repos/{owner}/{repo}/actions/runs/{run_id}/logs\"],\n getArtifact: [\"GET /repos/{owner}/{repo}/actions/artifacts/{artifact_id}\"],\n getJobForWorkflowRun: [\"GET /repos/{owner}/{repo}/actions/jobs/{job_id}\"],\n getOrgPublicKey: [\"GET /orgs/{org}/actions/secrets/public-key\"],\n getOrgSecret: [\"GET /orgs/{org}/actions/secrets/{secret_name}\"],\n getRepoPublicKey: [\"GET /repos/{owner}/{repo}/actions/secrets/public-key\"],\n getRepoSecret: [\"GET /repos/{owner}/{repo}/actions/secrets/{secret_name}\"],\n getSelfHostedRunnerForOrg: [\"GET /orgs/{org}/actions/runners/{runner_id}\"],\n getSelfHostedRunnerForRepo: [\"GET /repos/{owner}/{repo}/actions/runners/{runner_id}\"],\n getWorkflow: [\"GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}\"],\n getWorkflowRun: [\"GET /repos/{owner}/{repo}/actions/runs/{run_id}\"],\n getWorkflowRunUsage: [\"GET /repos/{owner}/{repo}/actions/runs/{run_id}/timing\"],\n getWorkflowUsage: [\"GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/timing\"],\n listArtifactsForRepo: [\"GET /repos/{owner}/{repo}/actions/artifacts\"],\n listJobsForWorkflowRun: [\"GET /repos/{owner}/{repo}/actions/runs/{run_id}/jobs\"],\n listOrgSecrets: [\"GET /orgs/{org}/actions/secrets\"],\n listRepoSecrets: [\"GET /repos/{owner}/{repo}/actions/secrets\"],\n listRepoWorkflows: [\"GET /repos/{owner}/{repo}/actions/workflows\"],\n listRunnerApplicationsForOrg: [\"GET /orgs/{org}/actions/runners/downloads\"],\n listRunnerApplicationsForRepo: [\"GET /repos/{owner}/{repo}/actions/runners/downloads\"],\n listSelectedReposForOrgSecret: [\"GET /orgs/{org}/actions/secrets/{secret_name}/repositories\"],\n listSelfHostedRunnersForOrg: [\"GET /orgs/{org}/actions/runners\"],\n listSelfHostedRunnersForRepo: [\"GET /repos/{owner}/{repo}/actions/runners\"],\n listWorkflowRunArtifacts: [\"GET /repos/{owner}/{repo}/actions/runs/{run_id}/artifacts\"],\n listWorkflowRuns: [\"GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/runs\"],\n listWorkflowRunsForRepo: [\"GET /repos/{owner}/{repo}/actions/runs\"],\n reRunWorkflow: [\"POST /repos/{owner}/{repo}/actions/runs/{run_id}/rerun\"],\n removeSelectedRepoFromOrgSecret: [\"DELETE /orgs/{org}/actions/secrets/{secret_name}/repositories/{repository_id}\"],\n setSelectedReposForOrgSecret: [\"PUT /orgs/{org}/actions/secrets/{secret_name}/repositories\"]\n },\n activity: {\n checkRepoIsStarredByAuthenticatedUser: [\"GET /user/starred/{owner}/{repo}\"],\n deleteRepoSubscription: [\"DELETE /repos/{owner}/{repo}/subscription\"],\n deleteThreadSubscription: [\"DELETE /notifications/threads/{thread_id}/subscription\"],\n getFeeds: [\"GET /feeds\"],\n getRepoSubscription: [\"GET /repos/{owner}/{repo}/subscription\"],\n getThread: [\"GET /notifications/threads/{thread_id}\"],\n getThreadSubscriptionForAuthenticatedUser: [\"GET /notifications/threads/{thread_id}/subscription\"],\n listEventsForAuthenticatedUser: [\"GET /users/{username}/events\"],\n listNotificationsForAuthenticatedUser: [\"GET /notifications\"],\n listOrgEventsForAuthenticatedUser: [\"GET /users/{username}/events/orgs/{org}\"],\n listPublicEvents: [\"GET /events\"],\n listPublicEventsForRepoNetwork: [\"GET /networks/{owner}/{repo}/events\"],\n listPublicEventsForUser: [\"GET /users/{username}/events/public\"],\n listPublicOrgEvents: [\"GET /orgs/{org}/events\"],\n listReceivedEventsForUser: [\"GET /users/{username}/received_events\"],\n listReceivedPublicEventsForUser: [\"GET /users/{username}/received_events/public\"],\n listRepoEvents: [\"GET /repos/{owner}/{repo}/events\"],\n listRepoNotificationsForAuthenticatedUser: [\"GET /repos/{owner}/{repo}/notifications\"],\n listReposStarredByAuthenticatedUser: [\"GET /user/starred\"],\n listReposStarredByUser: [\"GET /users/{username}/starred\"],\n listReposWatchedByUser: [\"GET /users/{username}/subscriptions\"],\n listStargazersForRepo: [\"GET /repos/{owner}/{repo}/stargazers\"],\n listWatchedReposForAuthenticatedUser: [\"GET /user/subscriptions\"],\n listWatchersForRepo: [\"GET /repos/{owner}/{repo}/subscribers\"],\n markNotificationsAsRead: [\"PUT /notifications\"],\n markRepoNotificationsAsRead: [\"PUT /repos/{owner}/{repo}/notifications\"],\n markThreadAsRead: [\"PATCH /notifications/threads/{thread_id}\"],\n setRepoSubscription: [\"PUT /repos/{owner}/{repo}/subscription\"],\n setThreadSubscription: [\"PUT /notifications/threads/{thread_id}/subscription\"],\n starRepoForAuthenticatedUser: [\"PUT /user/starred/{owner}/{repo}\"],\n unstarRepoForAuthenticatedUser: [\"DELETE /user/starred/{owner}/{repo}\"]\n },\n apps: {\n addRepoToInstallation: [\"PUT /user/installations/{installation_id}/repositories/{repository_id}\"],\n checkToken: [\"POST /applications/{client_id}/token\"],\n createContentAttachment: [\"POST /content_references/{content_reference_id}/attachments\", {\n mediaType: {\n previews: [\"corsair\"]\n }\n }],\n createFromManifest: [\"POST /app-manifests/{code}/conversions\"],\n createInstallationAccessToken: [\"POST /app/installations/{installation_id}/access_tokens\"],\n deleteAuthorization: [\"DELETE /applications/{client_id}/grant\"],\n deleteInstallation: [\"DELETE /app/installations/{installation_id}\"],\n deleteToken: [\"DELETE /applications/{client_id}/token\"],\n getAuthenticated: [\"GET /app\"],\n getBySlug: [\"GET /apps/{app_slug}\"],\n getInstallation: [\"GET /app/installations/{installation_id}\"],\n getOrgInstallation: [\"GET /orgs/{org}/installation\"],\n getRepoInstallation: [\"GET /repos/{owner}/{repo}/installation\"],\n getSubscriptionPlanForAccount: [\"GET /marketplace_listing/accounts/{account_id}\"],\n getSubscriptionPlanForAccountStubbed: [\"GET /marketplace_listing/stubbed/accounts/{account_id}\"],\n getUserInstallation: [\"GET /users/{username}/installation\"],\n listAccountsForPlan: [\"GET /marketplace_listing/plans/{plan_id}/accounts\"],\n listAccountsForPlanStubbed: [\"GET /marketplace_listing/stubbed/plans/{plan_id}/accounts\"],\n listInstallationReposForAuthenticatedUser: [\"GET /user/installations/{installation_id}/repositories\"],\n listInstallations: [\"GET /app/installations\"],\n listInstallationsForAuthenticatedUser: [\"GET /user/installations\"],\n listPlans: [\"GET /marketplace_listing/plans\"],\n listPlansStubbed: [\"GET /marketplace_listing/stubbed/plans\"],\n listReposAccessibleToInstallation: [\"GET /installation/repositories\"],\n listSubscriptionsForAuthenticatedUser: [\"GET /user/marketplace_purchases\"],\n listSubscriptionsForAuthenticatedUserStubbed: [\"GET /user/marketplace_purchases/stubbed\"],\n removeRepoFromInstallation: [\"DELETE /user/installations/{installation_id}/repositories/{repository_id}\"],\n resetToken: [\"PATCH /applications/{client_id}/token\"],\n revokeInstallationAccessToken: [\"DELETE /installation/token\"],\n suspendInstallation: [\"PUT /app/installations/{installation_id}/suspended\"],\n unsuspendInstallation: [\"DELETE /app/installations/{installation_id}/suspended\"]\n },\n billing: {\n getGithubActionsBillingOrg: [\"GET /orgs/{org}/settings/billing/actions\"],\n getGithubActionsBillingUser: [\"GET /users/{username}/settings/billing/actions\"],\n getGithubPackagesBillingOrg: [\"GET /orgs/{org}/settings/billing/packages\"],\n getGithubPackagesBillingUser: [\"GET /users/{username}/settings/billing/packages\"],\n getSharedStorageBillingOrg: [\"GET /orgs/{org}/settings/billing/shared-storage\"],\n getSharedStorageBillingUser: [\"GET /users/{username}/settings/billing/shared-storage\"]\n },\n checks: {\n create: [\"POST /repos/{owner}/{repo}/check-runs\", {\n mediaType: {\n previews: [\"antiope\"]\n }\n }],\n createSuite: [\"POST /repos/{owner}/{repo}/check-suites\", {\n mediaType: {\n previews: [\"antiope\"]\n }\n }],\n get: [\"GET /repos/{owner}/{repo}/check-runs/{check_run_id}\", {\n mediaType: {\n previews: [\"antiope\"]\n }\n }],\n getSuite: [\"GET /repos/{owner}/{repo}/check-suites/{check_suite_id}\", {\n mediaType: {\n previews: [\"antiope\"]\n }\n }],\n listAnnotations: [\"GET /repos/{owner}/{repo}/check-runs/{check_run_id}/annotations\", {\n mediaType: {\n previews: [\"antiope\"]\n }\n }],\n listForRef: [\"GET /repos/{owner}/{repo}/commits/{ref}/check-runs\", {\n mediaType: {\n previews: [\"antiope\"]\n }\n }],\n listForSuite: [\"GET /repos/{owner}/{repo}/check-suites/{check_suite_id}/check-runs\", {\n mediaType: {\n previews: [\"antiope\"]\n }\n }],\n listSuitesForRef: [\"GET /repos/{owner}/{repo}/commits/{ref}/check-suites\", {\n mediaType: {\n previews: [\"antiope\"]\n }\n }],\n rerequestSuite: [\"POST /repos/{owner}/{repo}/check-suites/{check_suite_id}/rerequest\", {\n mediaType: {\n previews: [\"antiope\"]\n }\n }],\n setSuitesPreferences: [\"PATCH /repos/{owner}/{repo}/check-suites/preferences\", {\n mediaType: {\n previews: [\"antiope\"]\n }\n }],\n update: [\"PATCH /repos/{owner}/{repo}/check-runs/{check_run_id}\", {\n mediaType: {\n previews: [\"antiope\"]\n }\n }]\n },\n codeScanning: {\n getAlert: [\"GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}\", {}, {\n renamedParameters: {\n alert_id: \"alert_number\"\n }\n }],\n listAlertsForRepo: [\"GET /repos/{owner}/{repo}/code-scanning/alerts\"],\n listRecentAnalyses: [\"GET /repos/{owner}/{repo}/code-scanning/analyses\"],\n updateAlert: [\"PATCH /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}\"],\n uploadSarif: [\"POST /repos/{owner}/{repo}/code-scanning/sarifs\"]\n },\n codesOfConduct: {\n getAllCodesOfConduct: [\"GET /codes_of_conduct\", {\n mediaType: {\n previews: [\"scarlet-witch\"]\n }\n }],\n getConductCode: [\"GET /codes_of_conduct/{key}\", {\n mediaType: {\n previews: [\"scarlet-witch\"]\n }\n }],\n getForRepo: [\"GET /repos/{owner}/{repo}/community/code_of_conduct\", {\n mediaType: {\n previews: [\"scarlet-witch\"]\n }\n }]\n },\n emojis: {\n get: [\"GET /emojis\"]\n },\n gists: {\n checkIsStarred: [\"GET /gists/{gist_id}/star\"],\n create: [\"POST /gists\"],\n createComment: [\"POST /gists/{gist_id}/comments\"],\n delete: [\"DELETE /gists/{gist_id}\"],\n deleteComment: [\"DELETE /gists/{gist_id}/comments/{comment_id}\"],\n fork: [\"POST /gists/{gist_id}/forks\"],\n get: [\"GET /gists/{gist_id}\"],\n getComment: [\"GET /gists/{gist_id}/comments/{comment_id}\"],\n getRevision: [\"GET /gists/{gist_id}/{sha}\"],\n list: [\"GET /gists\"],\n listComments: [\"GET /gists/{gist_id}/comments\"],\n listCommits: [\"GET /gists/{gist_id}/commits\"],\n listForUser: [\"GET /users/{username}/gists\"],\n listForks: [\"GET /gists/{gist_id}/forks\"],\n listPublic: [\"GET /gists/public\"],\n listStarred: [\"GET /gists/starred\"],\n star: [\"PUT /gists/{gist_id}/star\"],\n unstar: [\"DELETE /gists/{gist_id}/star\"],\n update: [\"PATCH /gists/{gist_id}\"],\n updateComment: [\"PATCH /gists/{gist_id}/comments/{comment_id}\"]\n },\n git: {\n createBlob: [\"POST /repos/{owner}/{repo}/git/blobs\"],\n createCommit: [\"POST /repos/{owner}/{repo}/git/commits\"],\n createRef: [\"POST /repos/{owner}/{repo}/git/refs\"],\n createTag: [\"POST /repos/{owner}/{repo}/git/tags\"],\n createTree: [\"POST /repos/{owner}/{repo}/git/trees\"],\n deleteRef: [\"DELETE /repos/{owner}/{repo}/git/refs/{ref}\"],\n getBlob: [\"GET /repos/{owner}/{repo}/git/blobs/{file_sha}\"],\n getCommit: [\"GET /repos/{owner}/{repo}/git/commits/{commit_sha}\"],\n getRef: [\"GET /repos/{owner}/{repo}/git/ref/{ref}\"],\n getTag: [\"GET /repos/{owner}/{repo}/git/tags/{tag_sha}\"],\n getTree: [\"GET /repos/{owner}/{repo}/git/trees/{tree_sha}\"],\n listMatchingRefs: [\"GET /repos/{owner}/{repo}/git/matching-refs/{ref}\"],\n updateRef: [\"PATCH /repos/{owner}/{repo}/git/refs/{ref}\"]\n },\n gitignore: {\n getAllTemplates: [\"GET /gitignore/templates\"],\n getTemplate: [\"GET /gitignore/templates/{name}\"]\n },\n interactions: {\n getRestrictionsForOrg: [\"GET /orgs/{org}/interaction-limits\", {\n mediaType: {\n previews: [\"sombra\"]\n }\n }],\n getRestrictionsForRepo: [\"GET /repos/{owner}/{repo}/interaction-limits\", {\n mediaType: {\n previews: [\"sombra\"]\n }\n }],\n removeRestrictionsForOrg: [\"DELETE /orgs/{org}/interaction-limits\", {\n mediaType: {\n previews: [\"sombra\"]\n }\n }],\n removeRestrictionsForRepo: [\"DELETE /repos/{owner}/{repo}/interaction-limits\", {\n mediaType: {\n previews: [\"sombra\"]\n }\n }],\n setRestrictionsForOrg: [\"PUT /orgs/{org}/interaction-limits\", {\n mediaType: {\n previews: [\"sombra\"]\n }\n }],\n setRestrictionsForRepo: [\"PUT /repos/{owner}/{repo}/interaction-limits\", {\n mediaType: {\n previews: [\"sombra\"]\n }\n }]\n },\n issues: {\n addAssignees: [\"POST /repos/{owner}/{repo}/issues/{issue_number}/assignees\"],\n addLabels: [\"POST /repos/{owner}/{repo}/issues/{issue_number}/labels\"],\n checkUserCanBeAssigned: [\"GET /repos/{owner}/{repo}/assignees/{assignee}\"],\n create: [\"POST /repos/{owner}/{repo}/issues\"],\n createComment: [\"POST /repos/{owner}/{repo}/issues/{issue_number}/comments\"],\n createLabel: [\"POST /repos/{owner}/{repo}/labels\"],\n createMilestone: [\"POST /repos/{owner}/{repo}/milestones\"],\n deleteComment: [\"DELETE /repos/{owner}/{repo}/issues/comments/{comment_id}\"],\n deleteLabel: [\"DELETE /repos/{owner}/{repo}/labels/{name}\"],\n deleteMilestone: [\"DELETE /repos/{owner}/{repo}/milestones/{milestone_number}\"],\n get: [\"GET /repos/{owner}/{repo}/issues/{issue_number}\"],\n getComment: [\"GET /repos/{owner}/{repo}/issues/comments/{comment_id}\"],\n getEvent: [\"GET /repos/{owner}/{repo}/issues/events/{event_id}\"],\n getLabel: [\"GET /repos/{owner}/{repo}/labels/{name}\"],\n getMilestone: [\"GET /repos/{owner}/{repo}/milestones/{milestone_number}\"],\n list: [\"GET /issues\"],\n listAssignees: [\"GET /repos/{owner}/{repo}/assignees\"],\n listComments: [\"GET /repos/{owner}/{repo}/issues/{issue_number}/comments\"],\n listCommentsForRepo: [\"GET /repos/{owner}/{repo}/issues/comments\"],\n listEvents: [\"GET /repos/{owner}/{repo}/issues/{issue_number}/events\"],\n listEventsForRepo: [\"GET /repos/{owner}/{repo}/issues/events\"],\n listEventsForTimeline: [\"GET /repos/{owner}/{repo}/issues/{issue_number}/timeline\", {\n mediaType: {\n previews: [\"mockingbird\"]\n }\n }],\n listForAuthenticatedUser: [\"GET /user/issues\"],\n listForOrg: [\"GET /orgs/{org}/issues\"],\n listForRepo: [\"GET /repos/{owner}/{repo}/issues\"],\n listLabelsForMilestone: [\"GET /repos/{owner}/{repo}/milestones/{milestone_number}/labels\"],\n listLabelsForRepo: [\"GET /repos/{owner}/{repo}/labels\"],\n listLabelsOnIssue: [\"GET /repos/{owner}/{repo}/issues/{issue_number}/labels\"],\n listMilestones: [\"GET /repos/{owner}/{repo}/milestones\"],\n lock: [\"PUT /repos/{owner}/{repo}/issues/{issue_number}/lock\"],\n removeAllLabels: [\"DELETE /repos/{owner}/{repo}/issues/{issue_number}/labels\"],\n removeAssignees: [\"DELETE /repos/{owner}/{repo}/issues/{issue_number}/assignees\"],\n removeLabel: [\"DELETE /repos/{owner}/{repo}/issues/{issue_number}/labels/{name}\"],\n setLabels: [\"PUT /repos/{owner}/{repo}/issues/{issue_number}/labels\"],\n unlock: [\"DELETE /repos/{owner}/{repo}/issues/{issue_number}/lock\"],\n update: [\"PATCH /repos/{owner}/{repo}/issues/{issue_number}\"],\n updateComment: [\"PATCH /repos/{owner}/{repo}/issues/comments/{comment_id}\"],\n updateLabel: [\"PATCH /repos/{owner}/{repo}/labels/{name}\"],\n updateMilestone: [\"PATCH /repos/{owner}/{repo}/milestones/{milestone_number}\"]\n },\n licenses: {\n get: [\"GET /licenses/{license}\"],\n getAllCommonlyUsed: [\"GET /licenses\"],\n getForRepo: [\"GET /repos/{owner}/{repo}/license\"]\n },\n markdown: {\n render: [\"POST /markdown\"],\n renderRaw: [\"POST /markdown/raw\", {\n headers: {\n \"content-type\": \"text/plain; charset=utf-8\"\n }\n }]\n },\n meta: {\n get: [\"GET /meta\"]\n },\n migrations: {\n cancelImport: [\"DELETE /repos/{owner}/{repo}/import\"],\n deleteArchiveForAuthenticatedUser: [\"DELETE /user/migrations/{migration_id}/archive\", {\n mediaType: {\n previews: [\"wyandotte\"]\n }\n }],\n deleteArchiveForOrg: [\"DELETE /orgs/{org}/migrations/{migration_id}/archive\", {\n mediaType: {\n previews: [\"wyandotte\"]\n }\n }],\n downloadArchiveForOrg: [\"GET /orgs/{org}/migrations/{migration_id}/archive\", {\n mediaType: {\n previews: [\"wyandotte\"]\n }\n }],\n getArchiveForAuthenticatedUser: [\"GET /user/migrations/{migration_id}/archive\", {\n mediaType: {\n previews: [\"wyandotte\"]\n }\n }],\n getCommitAuthors: [\"GET /repos/{owner}/{repo}/import/authors\"],\n getImportStatus: [\"GET /repos/{owner}/{repo}/import\"],\n getLargeFiles: [\"GET /repos/{owner}/{repo}/import/large_files\"],\n getStatusForAuthenticatedUser: [\"GET /user/migrations/{migration_id}\", {\n mediaType: {\n previews: [\"wyandotte\"]\n }\n }],\n getStatusForOrg: [\"GET /orgs/{org}/migrations/{migration_id}\", {\n mediaType: {\n previews: [\"wyandotte\"]\n }\n }],\n listForAuthenticatedUser: [\"GET /user/migrations\", {\n mediaType: {\n previews: [\"wyandotte\"]\n }\n }],\n listForOrg: [\"GET /orgs/{org}/migrations\", {\n mediaType: {\n previews: [\"wyandotte\"]\n }\n }],\n listReposForOrg: [\"GET /orgs/{org}/migrations/{migration_id}/repositories\", {\n mediaType: {\n previews: [\"wyandotte\"]\n }\n }],\n listReposForUser: [\"GET /user/migrations/{migration_id}/repositories\", {\n mediaType: {\n previews: [\"wyandotte\"]\n }\n }],\n mapCommitAuthor: [\"PATCH /repos/{owner}/{repo}/import/authors/{author_id}\"],\n setLfsPreference: [\"PATCH /repos/{owner}/{repo}/import/lfs\"],\n startForAuthenticatedUser: [\"POST /user/migrations\"],\n startForOrg: [\"POST /orgs/{org}/migrations\"],\n startImport: [\"PUT /repos/{owner}/{repo}/import\"],\n unlockRepoForAuthenticatedUser: [\"DELETE /user/migrations/{migration_id}/repos/{repo_name}/lock\", {\n mediaType: {\n previews: [\"wyandotte\"]\n }\n }],\n unlockRepoForOrg: [\"DELETE /orgs/{org}/migrations/{migration_id}/repos/{repo_name}/lock\", {\n mediaType: {\n previews: [\"wyandotte\"]\n }\n }],\n updateImport: [\"PATCH /repos/{owner}/{repo}/import\"]\n },\n orgs: {\n blockUser: [\"PUT /orgs/{org}/blocks/{username}\"],\n checkBlockedUser: [\"GET /orgs/{org}/blocks/{username}\"],\n checkMembershipForUser: [\"GET /orgs/{org}/members/{username}\"],\n checkPublicMembershipForUser: [\"GET /orgs/{org}/public_members/{username}\"],\n convertMemberToOutsideCollaborator: [\"PUT /orgs/{org}/outside_collaborators/{username}\"],\n createInvitation: [\"POST /orgs/{org}/invitations\"],\n createWebhook: [\"POST /orgs/{org}/hooks\"],\n deleteWebhook: [\"DELETE /orgs/{org}/hooks/{hook_id}\"],\n get: [\"GET /orgs/{org}\"],\n getMembershipForAuthenticatedUser: [\"GET /user/memberships/orgs/{org}\"],\n getMembershipForUser: [\"GET /orgs/{org}/memberships/{username}\"],\n getWebhook: [\"GET /orgs/{org}/hooks/{hook_id}\"],\n list: [\"GET /organizations\"],\n listAppInstallations: [\"GET /orgs/{org}/installations\"],\n listBlockedUsers: [\"GET /orgs/{org}/blocks\"],\n listForAuthenticatedUser: [\"GET /user/orgs\"],\n listForUser: [\"GET /users/{username}/orgs\"],\n listInvitationTeams: [\"GET /orgs/{org}/invitations/{invitation_id}/teams\"],\n listMembers: [\"GET /orgs/{org}/members\"],\n listMembershipsForAuthenticatedUser: [\"GET /user/memberships/orgs\"],\n listOutsideCollaborators: [\"GET /orgs/{org}/outside_collaborators\"],\n listPendingInvitations: [\"GET /orgs/{org}/invitations\"],\n listPublicMembers: [\"GET /orgs/{org}/public_members\"],\n listWebhooks: [\"GET /orgs/{org}/hooks\"],\n pingWebhook: [\"POST /orgs/{org}/hooks/{hook_id}/pings\"],\n removeMember: [\"DELETE /orgs/{org}/members/{username}\"],\n removeMembershipForUser: [\"DELETE /orgs/{org}/memberships/{username}\"],\n removeOutsideCollaborator: [\"DELETE /orgs/{org}/outside_collaborators/{username}\"],\n removePublicMembershipForAuthenticatedUser: [\"DELETE /orgs/{org}/public_members/{username}\"],\n setMembershipForUser: [\"PUT /orgs/{org}/memberships/{username}\"],\n setPublicMembershipForAuthenticatedUser: [\"PUT /orgs/{org}/public_members/{username}\"],\n unblockUser: [\"DELETE /orgs/{org}/blocks/{username}\"],\n update: [\"PATCH /orgs/{org}\"],\n updateMembershipForAuthenticatedUser: [\"PATCH /user/memberships/orgs/{org}\"],\n updateWebhook: [\"PATCH /orgs/{org}/hooks/{hook_id}\"]\n },\n projects: {\n addCollaborator: [\"PUT /projects/{project_id}/collaborators/{username}\", {\n mediaType: {\n previews: [\"inertia\"]\n }\n }],\n createCard: [\"POST /projects/columns/{column_id}/cards\", {\n mediaType: {\n previews: [\"inertia\"]\n }\n }],\n createColumn: [\"POST /projects/{project_id}/columns\", {\n mediaType: {\n previews: [\"inertia\"]\n }\n }],\n createForAuthenticatedUser: [\"POST /user/projects\", {\n mediaType: {\n previews: [\"inertia\"]\n }\n }],\n createForOrg: [\"POST /orgs/{org}/projects\", {\n mediaType: {\n previews: [\"inertia\"]\n }\n }],\n createForRepo: [\"POST /repos/{owner}/{repo}/projects\", {\n mediaType: {\n previews: [\"inertia\"]\n }\n }],\n delete: [\"DELETE /projects/{project_id}\", {\n mediaType: {\n previews: [\"inertia\"]\n }\n }],\n deleteCard: [\"DELETE /projects/columns/cards/{card_id}\", {\n mediaType: {\n previews: [\"inertia\"]\n }\n }],\n deleteColumn: [\"DELETE /projects/columns/{column_id}\", {\n mediaType: {\n previews: [\"inertia\"]\n }\n }],\n get: [\"GET /projects/{project_id}\", {\n mediaType: {\n previews: [\"inertia\"]\n }\n }],\n getCard: [\"GET /projects/columns/cards/{card_id}\", {\n mediaType: {\n previews: [\"inertia\"]\n }\n }],\n getColumn: [\"GET /projects/columns/{column_id}\", {\n mediaType: {\n previews: [\"inertia\"]\n }\n }],\n getPermissionForUser: [\"GET /projects/{project_id}/collaborators/{username}/permission\", {\n mediaType: {\n previews: [\"inertia\"]\n }\n }],\n listCards: [\"GET /projects/columns/{column_id}/cards\", {\n mediaType: {\n previews: [\"inertia\"]\n }\n }],\n listCollaborators: [\"GET /projects/{project_id}/collaborators\", {\n mediaType: {\n previews: [\"inertia\"]\n }\n }],\n listColumns: [\"GET /projects/{project_id}/columns\", {\n mediaType: {\n previews: [\"inertia\"]\n }\n }],\n listForOrg: [\"GET /orgs/{org}/projects\", {\n mediaType: {\n previews: [\"inertia\"]\n }\n }],\n listForRepo: [\"GET /repos/{owner}/{repo}/projects\", {\n mediaType: {\n previews: [\"inertia\"]\n }\n }],\n listForUser: [\"GET /users/{username}/projects\", {\n mediaType: {\n previews: [\"inertia\"]\n }\n }],\n moveCard: [\"POST /projects/columns/cards/{card_id}/moves\", {\n mediaType: {\n previews: [\"inertia\"]\n }\n }],\n moveColumn: [\"POST /projects/columns/{column_id}/moves\", {\n mediaType: {\n previews: [\"inertia\"]\n }\n }],\n removeCollaborator: [\"DELETE /projects/{project_id}/collaborators/{username}\", {\n mediaType: {\n previews: [\"inertia\"]\n }\n }],\n update: [\"PATCH /projects/{project_id}\", {\n mediaType: {\n previews: [\"inertia\"]\n }\n }],\n updateCard: [\"PATCH /projects/columns/cards/{card_id}\", {\n mediaType: {\n previews: [\"inertia\"]\n }\n }],\n updateColumn: [\"PATCH /projects/columns/{column_id}\", {\n mediaType: {\n previews: [\"inertia\"]\n }\n }]\n },\n pulls: {\n checkIfMerged: [\"GET /repos/{owner}/{repo}/pulls/{pull_number}/merge\"],\n create: [\"POST /repos/{owner}/{repo}/pulls\"],\n createReplyForReviewComment: [\"POST /repos/{owner}/{repo}/pulls/{pull_number}/comments/{comment_id}/replies\"],\n createReview: [\"POST /repos/{owner}/{repo}/pulls/{pull_number}/reviews\"],\n createReviewComment: [\"POST /repos/{owner}/{repo}/pulls/{pull_number}/comments\"],\n deletePendingReview: [\"DELETE /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}\"],\n deleteReviewComment: [\"DELETE /repos/{owner}/{repo}/pulls/comments/{comment_id}\"],\n dismissReview: [\"PUT /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/dismissals\"],\n get: [\"GET /repos/{owner}/{repo}/pulls/{pull_number}\"],\n getReview: [\"GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}\"],\n getReviewComment: [\"GET /repos/{owner}/{repo}/pulls/comments/{comment_id}\"],\n list: [\"GET /repos/{owner}/{repo}/pulls\"],\n listCommentsForReview: [\"GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/comments\"],\n listCommits: [\"GET /repos/{owner}/{repo}/pulls/{pull_number}/commits\"],\n listFiles: [\"GET /repos/{owner}/{repo}/pulls/{pull_number}/files\"],\n listRequestedReviewers: [\"GET /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers\"],\n listReviewComments: [\"GET /repos/{owner}/{repo}/pulls/{pull_number}/comments\"],\n listReviewCommentsForRepo: [\"GET /repos/{owner}/{repo}/pulls/comments\"],\n listReviews: [\"GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews\"],\n merge: [\"PUT /repos/{owner}/{repo}/pulls/{pull_number}/merge\"],\n removeRequestedReviewers: [\"DELETE /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers\"],\n requestReviewers: [\"POST /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers\"],\n submitReview: [\"POST /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/events\"],\n update: [\"PATCH /repos/{owner}/{repo}/pulls/{pull_number}\"],\n updateBranch: [\"PUT /repos/{owner}/{repo}/pulls/{pull_number}/update-branch\", {\n mediaType: {\n previews: [\"lydian\"]\n }\n }],\n updateReview: [\"PUT /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}\"],\n updateReviewComment: [\"PATCH /repos/{owner}/{repo}/pulls/comments/{comment_id}\"]\n },\n rateLimit: {\n get: [\"GET /rate_limit\"]\n },\n reactions: {\n createForCommitComment: [\"POST /repos/{owner}/{repo}/comments/{comment_id}/reactions\", {\n mediaType: {\n previews: [\"squirrel-girl\"]\n }\n }],\n createForIssue: [\"POST /repos/{owner}/{repo}/issues/{issue_number}/reactions\", {\n mediaType: {\n previews: [\"squirrel-girl\"]\n }\n }],\n createForIssueComment: [\"POST /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions\", {\n mediaType: {\n previews: [\"squirrel-girl\"]\n }\n }],\n createForPullRequestReviewComment: [\"POST /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions\", {\n mediaType: {\n previews: [\"squirrel-girl\"]\n }\n }],\n createForTeamDiscussionCommentInOrg: [\"POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions\", {\n mediaType: {\n previews: [\"squirrel-girl\"]\n }\n }],\n createForTeamDiscussionInOrg: [\"POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions\", {\n mediaType: {\n previews: [\"squirrel-girl\"]\n }\n }],\n deleteForCommitComment: [\"DELETE /repos/{owner}/{repo}/comments/{comment_id}/reactions/{reaction_id}\", {\n mediaType: {\n previews: [\"squirrel-girl\"]\n }\n }],\n deleteForIssue: [\"DELETE /repos/{owner}/{repo}/issues/{issue_number}/reactions/{reaction_id}\", {\n mediaType: {\n previews: [\"squirrel-girl\"]\n }\n }],\n deleteForIssueComment: [\"DELETE /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions/{reaction_id}\", {\n mediaType: {\n previews: [\"squirrel-girl\"]\n }\n }],\n deleteForPullRequestComment: [\"DELETE /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions/{reaction_id}\", {\n mediaType: {\n previews: [\"squirrel-girl\"]\n }\n }],\n deleteForTeamDiscussion: [\"DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions/{reaction_id}\", {\n mediaType: {\n previews: [\"squirrel-girl\"]\n }\n }],\n deleteForTeamDiscussionComment: [\"DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions/{reaction_id}\", {\n mediaType: {\n previews: [\"squirrel-girl\"]\n }\n }],\n deleteLegacy: [\"DELETE /reactions/{reaction_id}\", {\n mediaType: {\n previews: [\"squirrel-girl\"]\n }\n }, {\n deprecated: \"octokit.reactions.deleteLegacy() is deprecated, see https://developer.github.com/v3/reactions/#delete-a-reaction-legacy\"\n }],\n listForCommitComment: [\"GET /repos/{owner}/{repo}/comments/{comment_id}/reactions\", {\n mediaType: {\n previews: [\"squirrel-girl\"]\n }\n }],\n listForIssue: [\"GET /repos/{owner}/{repo}/issues/{issue_number}/reactions\", {\n mediaType: {\n previews: [\"squirrel-girl\"]\n }\n }],\n listForIssueComment: [\"GET /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions\", {\n mediaType: {\n previews: [\"squirrel-girl\"]\n }\n }],\n listForPullRequestReviewComment: [\"GET /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions\", {\n mediaType: {\n previews: [\"squirrel-girl\"]\n }\n }],\n listForTeamDiscussionCommentInOrg: [\"GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions\", {\n mediaType: {\n previews: [\"squirrel-girl\"]\n }\n }],\n listForTeamDiscussionInOrg: [\"GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions\", {\n mediaType: {\n previews: [\"squirrel-girl\"]\n }\n }]\n },\n repos: {\n acceptInvitation: [\"PATCH /user/repository_invitations/{invitation_id}\"],\n addAppAccessRestrictions: [\"POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps\", {}, {\n mapToData: \"apps\"\n }],\n addCollaborator: [\"PUT /repos/{owner}/{repo}/collaborators/{username}\"],\n addStatusCheckContexts: [\"POST /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts\", {}, {\n mapToData: \"contexts\"\n }],\n addTeamAccessRestrictions: [\"POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams\", {}, {\n mapToData: \"teams\"\n }],\n addUserAccessRestrictions: [\"POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users\", {}, {\n mapToData: \"users\"\n }],\n checkCollaborator: [\"GET /repos/{owner}/{repo}/collaborators/{username}\"],\n checkVulnerabilityAlerts: [\"GET /repos/{owner}/{repo}/vulnerability-alerts\", {\n mediaType: {\n previews: [\"dorian\"]\n }\n }],\n compareCommits: [\"GET /repos/{owner}/{repo}/compare/{base}...{head}\"],\n createCommitComment: [\"POST /repos/{owner}/{repo}/commits/{commit_sha}/comments\"],\n createCommitSignatureProtection: [\"POST /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures\", {\n mediaType: {\n previews: [\"zzzax\"]\n }\n }],\n createCommitStatus: [\"POST /repos/{owner}/{repo}/statuses/{sha}\"],\n createDeployKey: [\"POST /repos/{owner}/{repo}/keys\"],\n createDeployment: [\"POST /repos/{owner}/{repo}/deployments\"],\n createDeploymentStatus: [\"POST /repos/{owner}/{repo}/deployments/{deployment_id}/statuses\"],\n createDispatchEvent: [\"POST /repos/{owner}/{repo}/dispatches\"],\n createForAuthenticatedUser: [\"POST /user/repos\"],\n createFork: [\"POST /repos/{owner}/{repo}/forks\"],\n createInOrg: [\"POST /orgs/{org}/repos\"],\n createOrUpdateFileContents: [\"PUT /repos/{owner}/{repo}/contents/{path}\"],\n createPagesSite: [\"POST /repos/{owner}/{repo}/pages\", {\n mediaType: {\n previews: [\"switcheroo\"]\n }\n }],\n createRelease: [\"POST /repos/{owner}/{repo}/releases\"],\n createUsingTemplate: [\"POST /repos/{template_owner}/{template_repo}/generate\", {\n mediaType: {\n previews: [\"baptiste\"]\n }\n }],\n createWebhook: [\"POST /repos/{owner}/{repo}/hooks\"],\n declineInvitation: [\"DELETE /user/repository_invitations/{invitation_id}\"],\n delete: [\"DELETE /repos/{owner}/{repo}\"],\n deleteAccessRestrictions: [\"DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions\"],\n deleteAdminBranchProtection: [\"DELETE /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins\"],\n deleteBranchProtection: [\"DELETE /repos/{owner}/{repo}/branches/{branch}/protection\"],\n deleteCommitComment: [\"DELETE /repos/{owner}/{repo}/comments/{comment_id}\"],\n deleteCommitSignatureProtection: [\"DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures\", {\n mediaType: {\n previews: [\"zzzax\"]\n }\n }],\n deleteDeployKey: [\"DELETE /repos/{owner}/{repo}/keys/{key_id}\"],\n deleteDeployment: [\"DELETE /repos/{owner}/{repo}/deployments/{deployment_id}\"],\n deleteFile: [\"DELETE /repos/{owner}/{repo}/contents/{path}\"],\n deleteInvitation: [\"DELETE /repos/{owner}/{repo}/invitations/{invitation_id}\"],\n deletePagesSite: [\"DELETE /repos/{owner}/{repo}/pages\", {\n mediaType: {\n previews: [\"switcheroo\"]\n }\n }],\n deletePullRequestReviewProtection: [\"DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews\"],\n deleteRelease: [\"DELETE /repos/{owner}/{repo}/releases/{release_id}\"],\n deleteReleaseAsset: [\"DELETE /repos/{owner}/{repo}/releases/assets/{asset_id}\"],\n deleteWebhook: [\"DELETE /repos/{owner}/{repo}/hooks/{hook_id}\"],\n disableAutomatedSecurityFixes: [\"DELETE /repos/{owner}/{repo}/automated-security-fixes\", {\n mediaType: {\n previews: [\"london\"]\n }\n }],\n disableVulnerabilityAlerts: [\"DELETE /repos/{owner}/{repo}/vulnerability-alerts\", {\n mediaType: {\n previews: [\"dorian\"]\n }\n }],\n downloadArchive: [\"GET /repos/{owner}/{repo}/{archive_format}/{ref}\"],\n enableAutomatedSecurityFixes: [\"PUT /repos/{owner}/{repo}/automated-security-fixes\", {\n mediaType: {\n previews: [\"london\"]\n }\n }],\n enableVulnerabilityAlerts: [\"PUT /repos/{owner}/{repo}/vulnerability-alerts\", {\n mediaType: {\n previews: [\"dorian\"]\n }\n }],\n get: [\"GET /repos/{owner}/{repo}\"],\n getAccessRestrictions: [\"GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions\"],\n getAdminBranchProtection: [\"GET /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins\"],\n getAllStatusCheckContexts: [\"GET /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts\"],\n getAllTopics: [\"GET /repos/{owner}/{repo}/topics\", {\n mediaType: {\n previews: [\"mercy\"]\n }\n }],\n getAppsWithAccessToProtectedBranch: [\"GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps\"],\n getBranch: [\"GET /repos/{owner}/{repo}/branches/{branch}\"],\n getBranchProtection: [\"GET /repos/{owner}/{repo}/branches/{branch}/protection\"],\n getClones: [\"GET /repos/{owner}/{repo}/traffic/clones\"],\n getCodeFrequencyStats: [\"GET /repos/{owner}/{repo}/stats/code_frequency\"],\n getCollaboratorPermissionLevel: [\"GET /repos/{owner}/{repo}/collaborators/{username}/permission\"],\n getCombinedStatusForRef: [\"GET /repos/{owner}/{repo}/commits/{ref}/status\"],\n getCommit: [\"GET /repos/{owner}/{repo}/commits/{ref}\"],\n getCommitActivityStats: [\"GET /repos/{owner}/{repo}/stats/commit_activity\"],\n getCommitComment: [\"GET /repos/{owner}/{repo}/comments/{comment_id}\"],\n getCommitSignatureProtection: [\"GET /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures\", {\n mediaType: {\n previews: [\"zzzax\"]\n }\n }],\n getCommunityProfileMetrics: [\"GET /repos/{owner}/{repo}/community/profile\", {\n mediaType: {\n previews: [\"black-panther\"]\n }\n }],\n getContent: [\"GET /repos/{owner}/{repo}/contents/{path}\"],\n getContributorsStats: [\"GET /repos/{owner}/{repo}/stats/contributors\"],\n getDeployKey: [\"GET /repos/{owner}/{repo}/keys/{key_id}\"],\n getDeployment: [\"GET /repos/{owner}/{repo}/deployments/{deployment_id}\"],\n getDeploymentStatus: [\"GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses/{status_id}\"],\n getLatestPagesBuild: [\"GET /repos/{owner}/{repo}/pages/builds/latest\"],\n getLatestRelease: [\"GET /repos/{owner}/{repo}/releases/latest\"],\n getPages: [\"GET /repos/{owner}/{repo}/pages\"],\n getPagesBuild: [\"GET /repos/{owner}/{repo}/pages/builds/{build_id}\"],\n getParticipationStats: [\"GET /repos/{owner}/{repo}/stats/participation\"],\n getPullRequestReviewProtection: [\"GET /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews\"],\n getPunchCardStats: [\"GET /repos/{owner}/{repo}/stats/punch_card\"],\n getReadme: [\"GET /repos/{owner}/{repo}/readme\"],\n getRelease: [\"GET /repos/{owner}/{repo}/releases/{release_id}\"],\n getReleaseAsset: [\"GET /repos/{owner}/{repo}/releases/assets/{asset_id}\"],\n getReleaseByTag: [\"GET /repos/{owner}/{repo}/releases/tags/{tag}\"],\n getStatusChecksProtection: [\"GET /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks\"],\n getTeamsWithAccessToProtectedBranch: [\"GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams\"],\n getTopPaths: [\"GET /repos/{owner}/{repo}/traffic/popular/paths\"],\n getTopReferrers: [\"GET /repos/{owner}/{repo}/traffic/popular/referrers\"],\n getUsersWithAccessToProtectedBranch: [\"GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users\"],\n getViews: [\"GET /repos/{owner}/{repo}/traffic/views\"],\n getWebhook: [\"GET /repos/{owner}/{repo}/hooks/{hook_id}\"],\n listBranches: [\"GET /repos/{owner}/{repo}/branches\"],\n listBranchesForHeadCommit: [\"GET /repos/{owner}/{repo}/commits/{commit_sha}/branches-where-head\", {\n mediaType: {\n previews: [\"groot\"]\n }\n }],\n listCollaborators: [\"GET /repos/{owner}/{repo}/collaborators\"],\n listCommentsForCommit: [\"GET /repos/{owner}/{repo}/commits/{commit_sha}/comments\"],\n listCommitCommentsForRepo: [\"GET /repos/{owner}/{repo}/comments\"],\n listCommitStatusesForRef: [\"GET /repos/{owner}/{repo}/commits/{ref}/statuses\"],\n listCommits: [\"GET /repos/{owner}/{repo}/commits\"],\n listContributors: [\"GET /repos/{owner}/{repo}/contributors\"],\n listDeployKeys: [\"GET /repos/{owner}/{repo}/keys\"],\n listDeploymentStatuses: [\"GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses\"],\n listDeployments: [\"GET /repos/{owner}/{repo}/deployments\"],\n listForAuthenticatedUser: [\"GET /user/repos\"],\n listForOrg: [\"GET /orgs/{org}/repos\"],\n listForUser: [\"GET /users/{username}/repos\"],\n listForks: [\"GET /repos/{owner}/{repo}/forks\"],\n listInvitations: [\"GET /repos/{owner}/{repo}/invitations\"],\n listInvitationsForAuthenticatedUser: [\"GET /user/repository_invitations\"],\n listLanguages: [\"GET /repos/{owner}/{repo}/languages\"],\n listPagesBuilds: [\"GET /repos/{owner}/{repo}/pages/builds\"],\n listPublic: [\"GET /repositories\"],\n listPullRequestsAssociatedWithCommit: [\"GET /repos/{owner}/{repo}/commits/{commit_sha}/pulls\", {\n mediaType: {\n previews: [\"groot\"]\n }\n }],\n listReleaseAssets: [\"GET /repos/{owner}/{repo}/releases/{release_id}/assets\"],\n listReleases: [\"GET /repos/{owner}/{repo}/releases\"],\n listTags: [\"GET /repos/{owner}/{repo}/tags\"],\n listTeams: [\"GET /repos/{owner}/{repo}/teams\"],\n listWebhooks: [\"GET /repos/{owner}/{repo}/hooks\"],\n merge: [\"POST /repos/{owner}/{repo}/merges\"],\n pingWebhook: [\"POST /repos/{owner}/{repo}/hooks/{hook_id}/pings\"],\n removeAppAccessRestrictions: [\"DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps\", {}, {\n mapToData: \"apps\"\n }],\n removeCollaborator: [\"DELETE /repos/{owner}/{repo}/collaborators/{username}\"],\n removeStatusCheckContexts: [\"DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts\", {}, {\n mapToData: \"contexts\"\n }],\n removeStatusCheckProtection: [\"DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks\"],\n removeTeamAccessRestrictions: [\"DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams\", {}, {\n mapToData: \"teams\"\n }],\n removeUserAccessRestrictions: [\"DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users\", {}, {\n mapToData: \"users\"\n }],\n replaceAllTopics: [\"PUT /repos/{owner}/{repo}/topics\", {\n mediaType: {\n previews: [\"mercy\"]\n }\n }],\n requestPagesBuild: [\"POST /repos/{owner}/{repo}/pages/builds\"],\n setAdminBranchProtection: [\"POST /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins\"],\n setAppAccessRestrictions: [\"PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps\", {}, {\n mapToData: \"apps\"\n }],\n setStatusCheckContexts: [\"PUT /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts\", {}, {\n mapToData: \"contexts\"\n }],\n setTeamAccessRestrictions: [\"PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams\", {}, {\n mapToData: \"teams\"\n }],\n setUserAccessRestrictions: [\"PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users\", {}, {\n mapToData: \"users\"\n }],\n testPushWebhook: [\"POST /repos/{owner}/{repo}/hooks/{hook_id}/tests\"],\n transfer: [\"POST /repos/{owner}/{repo}/transfer\"],\n update: [\"PATCH /repos/{owner}/{repo}\"],\n updateBranchProtection: [\"PUT /repos/{owner}/{repo}/branches/{branch}/protection\"],\n updateCommitComment: [\"PATCH /repos/{owner}/{repo}/comments/{comment_id}\"],\n updateInformationAboutPagesSite: [\"PUT /repos/{owner}/{repo}/pages\"],\n updateInvitation: [\"PATCH /repos/{owner}/{repo}/invitations/{invitation_id}\"],\n updatePullRequestReviewProtection: [\"PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews\"],\n updateRelease: [\"PATCH /repos/{owner}/{repo}/releases/{release_id}\"],\n updateReleaseAsset: [\"PATCH /repos/{owner}/{repo}/releases/assets/{asset_id}\"],\n updateStatusCheckPotection: [\"PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks\"],\n updateWebhook: [\"PATCH /repos/{owner}/{repo}/hooks/{hook_id}\"],\n uploadReleaseAsset: [\"POST /repos/{owner}/{repo}/releases/{release_id}/assets{?name,label}\", {\n baseUrl: \"https://uploads.github.com\"\n }]\n },\n search: {\n code: [\"GET /search/code\"],\n commits: [\"GET /search/commits\", {\n mediaType: {\n previews: [\"cloak\"]\n }\n }],\n issuesAndPullRequests: [\"GET /search/issues\"],\n labels: [\"GET /search/labels\"],\n repos: [\"GET /search/repositories\"],\n topics: [\"GET /search/topics\", {\n mediaType: {\n previews: [\"mercy\"]\n }\n }],\n users: [\"GET /search/users\"]\n },\n teams: {\n addOrUpdateMembershipForUserInOrg: [\"PUT /orgs/{org}/teams/{team_slug}/memberships/{username}\"],\n addOrUpdateProjectPermissionsInOrg: [\"PUT /orgs/{org}/teams/{team_slug}/projects/{project_id}\", {\n mediaType: {\n previews: [\"inertia\"]\n }\n }],\n addOrUpdateRepoPermissionsInOrg: [\"PUT /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}\"],\n checkPermissionsForProjectInOrg: [\"GET /orgs/{org}/teams/{team_slug}/projects/{project_id}\", {\n mediaType: {\n previews: [\"inertia\"]\n }\n }],\n checkPermissionsForRepoInOrg: [\"GET /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}\"],\n create: [\"POST /orgs/{org}/teams\"],\n createDiscussionCommentInOrg: [\"POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments\"],\n createDiscussionInOrg: [\"POST /orgs/{org}/teams/{team_slug}/discussions\"],\n deleteDiscussionCommentInOrg: [\"DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}\"],\n deleteDiscussionInOrg: [\"DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}\"],\n deleteInOrg: [\"DELETE /orgs/{org}/teams/{team_slug}\"],\n getByName: [\"GET /orgs/{org}/teams/{team_slug}\"],\n getDiscussionCommentInOrg: [\"GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}\"],\n getDiscussionInOrg: [\"GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}\"],\n getMembershipForUserInOrg: [\"GET /orgs/{org}/teams/{team_slug}/memberships/{username}\"],\n list: [\"GET /orgs/{org}/teams\"],\n listChildInOrg: [\"GET /orgs/{org}/teams/{team_slug}/teams\"],\n listDiscussionCommentsInOrg: [\"GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments\"],\n listDiscussionsInOrg: [\"GET /orgs/{org}/teams/{team_slug}/discussions\"],\n listForAuthenticatedUser: [\"GET /user/teams\"],\n listMembersInOrg: [\"GET /orgs/{org}/teams/{team_slug}/members\"],\n listPendingInvitationsInOrg: [\"GET /orgs/{org}/teams/{team_slug}/invitations\"],\n listProjectsInOrg: [\"GET /orgs/{org}/teams/{team_slug}/projects\", {\n mediaType: {\n previews: [\"inertia\"]\n }\n }],\n listReposInOrg: [\"GET /orgs/{org}/teams/{team_slug}/repos\"],\n removeMembershipForUserInOrg: [\"DELETE /orgs/{org}/teams/{team_slug}/memberships/{username}\"],\n removeProjectInOrg: [\"DELETE /orgs/{org}/teams/{team_slug}/projects/{project_id}\"],\n removeRepoInOrg: [\"DELETE /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}\"],\n updateDiscussionCommentInOrg: [\"PATCH /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}\"],\n updateDiscussionInOrg: [\"PATCH /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}\"],\n updateInOrg: [\"PATCH /orgs/{org}/teams/{team_slug}\"]\n },\n users: {\n addEmailForAuthenticated: [\"POST /user/emails\"],\n block: [\"PUT /user/blocks/{username}\"],\n checkBlocked: [\"GET /user/blocks/{username}\"],\n checkFollowingForUser: [\"GET /users/{username}/following/{target_user}\"],\n checkPersonIsFollowedByAuthenticated: [\"GET /user/following/{username}\"],\n createGpgKeyForAuthenticated: [\"POST /user/gpg_keys\"],\n createPublicSshKeyForAuthenticated: [\"POST /user/keys\"],\n deleteEmailForAuthenticated: [\"DELETE /user/emails\"],\n deleteGpgKeyForAuthenticated: [\"DELETE /user/gpg_keys/{gpg_key_id}\"],\n deletePublicSshKeyForAuthenticated: [\"DELETE /user/keys/{key_id}\"],\n follow: [\"PUT /user/following/{username}\"],\n getAuthenticated: [\"GET /user\"],\n getByUsername: [\"GET /users/{username}\"],\n getContextForUser: [\"GET /users/{username}/hovercard\"],\n getGpgKeyForAuthenticated: [\"GET /user/gpg_keys/{gpg_key_id}\"],\n getPublicSshKeyForAuthenticated: [\"GET /user/keys/{key_id}\"],\n list: [\"GET /users\"],\n listBlockedByAuthenticated: [\"GET /user/blocks\"],\n listEmailsForAuthenticated: [\"GET /user/emails\"],\n listFollowedByAuthenticated: [\"GET /user/following\"],\n listFollowersForAuthenticatedUser: [\"GET /user/followers\"],\n listFollowersForUser: [\"GET /users/{username}/followers\"],\n listFollowingForUser: [\"GET /users/{username}/following\"],\n listGpgKeysForAuthenticated: [\"GET /user/gpg_keys\"],\n listGpgKeysForUser: [\"GET /users/{username}/gpg_keys\"],\n listPublicEmailsForAuthenticated: [\"GET /user/public_emails\"],\n listPublicKeysForUser: [\"GET /users/{username}/keys\"],\n listPublicSshKeysForAuthenticated: [\"GET /user/keys\"],\n setPrimaryEmailVisibilityForAuthenticated: [\"PATCH /user/email/visibility\"],\n unblock: [\"DELETE /user/blocks/{username}\"],\n unfollow: [\"DELETE /user/following/{username}\"],\n updateAuthenticated: [\"PATCH /user\"]\n }\n};\n\nconst VERSION = \"4.2.0\";\n\nfunction endpointsToMethods(octokit, endpointsMap) {\n const newMethods = {};\n\n for (const [scope, endpoints] of Object.entries(endpointsMap)) {\n for (const [methodName, endpoint] of Object.entries(endpoints)) {\n const [route, defaults, decorations] = endpoint;\n const [method, url] = route.split(/ /);\n const endpointDefaults = Object.assign({\n method,\n url\n }, defaults);\n\n if (!newMethods[scope]) {\n newMethods[scope] = {};\n }\n\n const scopeMethods = newMethods[scope];\n\n if (decorations) {\n scopeMethods[methodName] = decorate(octokit, scope, methodName, endpointDefaults, decorations);\n continue;\n }\n\n scopeMethods[methodName] = octokit.request.defaults(endpointDefaults);\n }\n }\n\n return newMethods;\n}\n\nfunction decorate(octokit, scope, methodName, defaults, decorations) {\n const requestWithDefaults = octokit.request.defaults(defaults);\n /* istanbul ignore next */\n\n function withDecorations(...args) {\n // @ts-ignore https://github.com/microsoft/TypeScript/issues/25488\n let options = requestWithDefaults.endpoint.merge(...args); // There are currently no other decorations than `.mapToData`\n\n if (decorations.mapToData) {\n options = Object.assign({}, options, {\n data: options[decorations.mapToData],\n [decorations.mapToData]: undefined\n });\n return requestWithDefaults(options);\n }\n\n if (decorations.renamed) {\n const [newScope, newMethodName] = decorations.renamed;\n octokit.log.warn(`octokit.${scope}.${methodName}() has been renamed to octokit.${newScope}.${newMethodName}()`);\n }\n\n if (decorations.deprecated) {\n octokit.log.warn(decorations.deprecated);\n }\n\n if (decorations.renamedParameters) {\n // @ts-ignore https://github.com/microsoft/TypeScript/issues/25488\n const options = requestWithDefaults.endpoint.merge(...args);\n\n for (const [name, alias] of Object.entries(decorations.renamedParameters)) {\n if (name in options) {\n octokit.log.warn(`\"${name}\" parameter is deprecated for \"octokit.${scope}.${methodName}()\". Use \"${alias}\" instead`);\n\n if (!(alias in options)) {\n options[alias] = options[name];\n }\n\n delete options[name];\n }\n }\n\n return requestWithDefaults(options);\n } // @ts-ignore https://github.com/microsoft/TypeScript/issues/25488\n\n\n return requestWithDefaults(...args);\n }\n\n return Object.assign(withDecorations, requestWithDefaults);\n}\n\n/**\n * This plugin is a 1:1 copy of internal @octokit/rest plugins. The primary\n * goal is to rebuild @octokit/rest on top of @octokit/core. Once that is\n * done, we will remove the registerEndpoints methods and return the methods\n * directly as with the other plugins. At that point we will also remove the\n * legacy workarounds and deprecations.\n *\n * See the plan at\n * https://github.com/octokit/plugin-rest-endpoint-methods.js/pull/1\n */\n\nfunction restEndpointMethods(octokit) {\n return endpointsToMethods(octokit, Endpoints);\n}\nrestEndpointMethods.VERSION = VERSION;\n\nexports.restEndpointMethods = restEndpointMethods;\n//# sourceMappingURL=index.js.map\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nfunction _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; }\n\nvar deprecation = require('deprecation');\nvar once = _interopDefault(require('once'));\n\nconst logOnce = once(deprecation => console.warn(deprecation));\n/**\n * Error with extra properties to help with debugging\n */\n\nclass RequestError extends Error {\n constructor(message, statusCode, options) {\n super(message); // Maintains proper stack trace (only available on V8)\n\n /* istanbul ignore next */\n\n if (Error.captureStackTrace) {\n Error.captureStackTrace(this, this.constructor);\n }\n\n this.name = \"HttpError\";\n this.status = statusCode;\n Object.defineProperty(this, \"code\", {\n get() {\n logOnce(new deprecation.Deprecation(\"[@octokit/request-error] `error.code` is deprecated, use `error.status`.\"));\n return statusCode;\n }\n\n });\n this.headers = options.headers || {}; // redact request credentials without mutating original request options\n\n const requestCopy = Object.assign({}, options.request);\n\n if (options.request.headers.authorization) {\n requestCopy.headers = Object.assign({}, options.request.headers, {\n authorization: options.request.headers.authorization.replace(/ .*$/, \" [REDACTED]\")\n });\n }\n\n requestCopy.url = requestCopy.url // client_id & client_secret can be passed as URL query parameters to increase rate limit\n // see https://developer.github.com/v3/#increasing-the-unauthenticated-rate-limit-for-oauth-applications\n .replace(/\\bclient_secret=\\w+/g, \"client_secret=[REDACTED]\") // OAuth tokens can be passed as URL query parameters, although it is not recommended\n // see https://developer.github.com/v3/#oauth2-token-sent-in-a-header\n .replace(/\\baccess_token=\\w+/g, \"access_token=[REDACTED]\");\n this.request = requestCopy;\n }\n\n}\n\nexports.RequestError = RequestError;\n//# sourceMappingURL=index.js.map\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nfunction _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; }\n\nvar endpoint = require('@octokit/endpoint');\nvar universalUserAgent = require('universal-user-agent');\nvar isPlainObject = require('is-plain-object');\nvar nodeFetch = _interopDefault(require('node-fetch'));\nvar requestError = require('@octokit/request-error');\n\nconst VERSION = \"5.4.9\";\n\nfunction getBufferResponse(response) {\n return response.arrayBuffer();\n}\n\nfunction fetchWrapper(requestOptions) {\n if (isPlainObject.isPlainObject(requestOptions.body) || Array.isArray(requestOptions.body)) {\n requestOptions.body = JSON.stringify(requestOptions.body);\n }\n\n let headers = {};\n let status;\n let url;\n const fetch = requestOptions.request && requestOptions.request.fetch || nodeFetch;\n return fetch(requestOptions.url, Object.assign({\n method: requestOptions.method,\n body: requestOptions.body,\n headers: requestOptions.headers,\n redirect: requestOptions.redirect\n }, requestOptions.request)).then(response => {\n url = response.url;\n status = response.status;\n\n for (const keyAndValue of response.headers) {\n headers[keyAndValue[0]] = keyAndValue[1];\n }\n\n if (status === 204 || status === 205) {\n return;\n } // GitHub API returns 200 for HEAD requests\n\n\n if (requestOptions.method === \"HEAD\") {\n if (status < 400) {\n return;\n }\n\n throw new requestError.RequestError(response.statusText, status, {\n headers,\n request: requestOptions\n });\n }\n\n if (status === 304) {\n throw new requestError.RequestError(\"Not modified\", status, {\n headers,\n request: requestOptions\n });\n }\n\n if (status >= 400) {\n return response.text().then(message => {\n const error = new requestError.RequestError(message, status, {\n headers,\n request: requestOptions\n });\n\n try {\n let responseBody = JSON.parse(error.message);\n Object.assign(error, responseBody);\n let errors = responseBody.errors; // Assumption `errors` would always be in Array format\n\n error.message = error.message + \": \" + errors.map(JSON.stringify).join(\", \");\n } catch (e) {// ignore, see octokit/rest.js#684\n }\n\n throw error;\n });\n }\n\n const contentType = response.headers.get(\"content-type\");\n\n if (/application\\/json/.test(contentType)) {\n return response.json();\n }\n\n if (!contentType || /^text\\/|charset=utf-8$/.test(contentType)) {\n return response.text();\n }\n\n return getBufferResponse(response);\n }).then(data => {\n return {\n status,\n url,\n headers,\n data\n };\n }).catch(error => {\n if (error instanceof requestError.RequestError) {\n throw error;\n }\n\n throw new requestError.RequestError(error.message, 500, {\n headers,\n request: requestOptions\n });\n });\n}\n\nfunction withDefaults(oldEndpoint, newDefaults) {\n const endpoint = oldEndpoint.defaults(newDefaults);\n\n const newApi = function (route, parameters) {\n const endpointOptions = endpoint.merge(route, parameters);\n\n if (!endpointOptions.request || !endpointOptions.request.hook) {\n return fetchWrapper(endpoint.parse(endpointOptions));\n }\n\n const request = (route, parameters) => {\n return fetchWrapper(endpoint.parse(endpoint.merge(route, parameters)));\n };\n\n Object.assign(request, {\n endpoint,\n defaults: withDefaults.bind(null, endpoint)\n });\n return endpointOptions.request.hook(request, endpointOptions);\n };\n\n return Object.assign(newApi, {\n endpoint,\n defaults: withDefaults.bind(null, endpoint)\n });\n}\n\nconst request = withDefaults(endpoint.endpoint, {\n headers: {\n \"user-agent\": `octokit-request.js/${VERSION} ${universalUserAgent.getUserAgent()}`\n }\n});\n\nexports.request = request;\n//# sourceMappingURL=index.js.map\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\n/*!\n * is-plain-object \n *\n * Copyright (c) 2014-2017, Jon Schlinkert.\n * Released under the MIT License.\n */\n\nfunction isObject(o) {\n return Object.prototype.toString.call(o) === '[object Object]';\n}\n\nfunction isPlainObject(o) {\n var ctor,prot;\n\n if (isObject(o) === false) return false;\n\n // If has modified constructor\n ctor = o.constructor;\n if (ctor === undefined) return true;\n\n // If has modified prototype\n prot = ctor.prototype;\n if (isObject(prot) === false) return false;\n\n // If constructor does not have an Object-specific method\n if (prot.hasOwnProperty('isPrototypeOf') === false) {\n return false;\n }\n\n // Most likely a plain Object\n return true;\n}\n\nexports.isPlainObject = isPlainObject;\n","var register = require('./lib/register')\nvar addHook = require('./lib/add')\nvar removeHook = require('./lib/remove')\n\n// bind with array of arguments: https://stackoverflow.com/a/21792913\nvar bind = Function.bind\nvar bindable = bind.bind(bind)\n\nfunction bindApi (hook, state, name) {\n var removeHookRef = bindable(removeHook, null).apply(null, name ? [state, name] : [state])\n hook.api = { remove: removeHookRef }\n hook.remove = removeHookRef\n\n ;['before', 'error', 'after', 'wrap'].forEach(function (kind) {\n var args = name ? [state, kind, name] : [state, kind]\n hook[kind] = hook.api[kind] = bindable(addHook, null).apply(null, args)\n })\n}\n\nfunction HookSingular () {\n var singularHookName = 'h'\n var singularHookState = {\n registry: {}\n }\n var singularHook = register.bind(null, singularHookState, singularHookName)\n bindApi(singularHook, singularHookState, singularHookName)\n return singularHook\n}\n\nfunction HookCollection () {\n var state = {\n registry: {}\n }\n\n var hook = register.bind(null, state)\n bindApi(hook, state)\n\n return hook\n}\n\nvar collectionHookDeprecationMessageDisplayed = false\nfunction Hook () {\n if (!collectionHookDeprecationMessageDisplayed) {\n console.warn('[before-after-hook]: \"Hook()\" repurposing warning, use \"Hook.Collection()\". Read more: https://git.io/upgrade-before-after-hook-to-1.4')\n collectionHookDeprecationMessageDisplayed = true\n }\n return HookCollection()\n}\n\nHook.Singular = HookSingular.bind()\nHook.Collection = HookCollection.bind()\n\nmodule.exports = Hook\n// expose constructors as a named property for TypeScript\nmodule.exports.Hook = Hook\nmodule.exports.Singular = Hook.Singular\nmodule.exports.Collection = Hook.Collection\n","module.exports = addHook\n\nfunction addHook (state, kind, name, hook) {\n var orig = hook\n if (!state.registry[name]) {\n state.registry[name] = []\n }\n\n if (kind === 'before') {\n hook = function (method, options) {\n return Promise.resolve()\n .then(orig.bind(null, options))\n .then(method.bind(null, options))\n }\n }\n\n if (kind === 'after') {\n hook = function (method, options) {\n var result\n return Promise.resolve()\n .then(method.bind(null, options))\n .then(function (result_) {\n result = result_\n return orig(result, options)\n })\n .then(function () {\n return result\n })\n }\n }\n\n if (kind === 'error') {\n hook = function (method, options) {\n return Promise.resolve()\n .then(method.bind(null, options))\n .catch(function (error) {\n return orig(error, options)\n })\n }\n }\n\n state.registry[name].push({\n hook: hook,\n orig: orig\n })\n}\n","module.exports = register\n\nfunction register (state, name, method, options) {\n if (typeof method !== 'function') {\n throw new Error('method for before hook must be a function')\n }\n\n if (!options) {\n options = {}\n }\n\n if (Array.isArray(name)) {\n return name.reverse().reduce(function (callback, name) {\n return register.bind(null, state, name, callback, options)\n }, method)()\n }\n\n return Promise.resolve()\n .then(function () {\n if (!state.registry[name]) {\n return method(options)\n }\n\n return (state.registry[name]).reduce(function (method, registered) {\n return registered.hook.bind(null, method, options)\n }, method)()\n })\n}\n","module.exports = removeHook\n\nfunction removeHook (state, name, method) {\n if (!state.registry[name]) {\n return\n }\n\n var index = state.registry[name]\n .map(function (registered) { return registered.orig })\n .indexOf(method)\n\n if (index === -1) {\n return\n }\n\n state.registry[name].splice(index, 1)\n}\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nclass Deprecation extends Error {\n constructor(message) {\n super(message); // Maintains proper stack trace (only available on V8)\n\n /* istanbul ignore next */\n\n if (Error.captureStackTrace) {\n Error.captureStackTrace(this, this.constructor);\n }\n\n this.name = 'Deprecation';\n }\n\n}\n\nexports.Deprecation = Deprecation;\n","'use strict';\n//parse Empty Node as self closing node\nconst buildOptions = require('./util').buildOptions;\n\nconst defaultOptions = {\n attributeNamePrefix: '@_',\n attrNodeName: false,\n textNodeName: '#text',\n ignoreAttributes: true,\n cdataTagName: false,\n cdataPositionChar: '\\\\c',\n format: false,\n indentBy: ' ',\n supressEmptyNode: false,\n tagValueProcessor: function(a) {\n return a;\n },\n attrValueProcessor: function(a) {\n return a;\n },\n};\n\nconst props = [\n 'attributeNamePrefix',\n 'attrNodeName',\n 'textNodeName',\n 'ignoreAttributes',\n 'cdataTagName',\n 'cdataPositionChar',\n 'format',\n 'indentBy',\n 'supressEmptyNode',\n 'tagValueProcessor',\n 'attrValueProcessor',\n];\n\nfunction Parser(options) {\n this.options = buildOptions(options, defaultOptions, props);\n if (this.options.ignoreAttributes || this.options.attrNodeName) {\n this.isAttribute = function(/*a*/) {\n return false;\n };\n } else {\n this.attrPrefixLen = this.options.attributeNamePrefix.length;\n this.isAttribute = isAttribute;\n }\n if (this.options.cdataTagName) {\n this.isCDATA = isCDATA;\n } else {\n this.isCDATA = function(/*a*/) {\n return false;\n };\n }\n this.replaceCDATAstr = replaceCDATAstr;\n this.replaceCDATAarr = replaceCDATAarr;\n\n if (this.options.format) {\n this.indentate = indentate;\n this.tagEndChar = '>\\n';\n this.newLine = '\\n';\n } else {\n this.indentate = function() {\n return '';\n };\n this.tagEndChar = '>';\n this.newLine = '';\n }\n\n if (this.options.supressEmptyNode) {\n this.buildTextNode = buildEmptyTextNode;\n this.buildObjNode = buildEmptyObjNode;\n } else {\n this.buildTextNode = buildTextValNode;\n this.buildObjNode = buildObjectNode;\n }\n\n this.buildTextValNode = buildTextValNode;\n this.buildObjectNode = buildObjectNode;\n}\n\nParser.prototype.parse = function(jObj) {\n return this.j2x(jObj, 0).val;\n};\n\nParser.prototype.j2x = function(jObj, level) {\n let attrStr = '';\n let val = '';\n const keys = Object.keys(jObj);\n const len = keys.length;\n for (let i = 0; i < len; i++) {\n const key = keys[i];\n if (typeof jObj[key] === 'undefined') {\n // supress undefined node\n } else if (jObj[key] === null) {\n val += this.indentate(level) + '<' + key + '/' + this.tagEndChar;\n } else if (jObj[key] instanceof Date) {\n val += this.buildTextNode(jObj[key], key, '', level);\n } else if (typeof jObj[key] !== 'object') {\n //premitive type\n const attr = this.isAttribute(key);\n if (attr) {\n attrStr += ' ' + attr + '=\"' + this.options.attrValueProcessor('' + jObj[key]) + '\"';\n } else if (this.isCDATA(key)) {\n if (jObj[this.options.textNodeName]) {\n val += this.replaceCDATAstr(jObj[this.options.textNodeName], jObj[key]);\n } else {\n val += this.replaceCDATAstr('', jObj[key]);\n }\n } else {\n //tag value\n if (key === this.options.textNodeName) {\n if (jObj[this.options.cdataTagName]) {\n //value will added while processing cdata\n } else {\n val += this.options.tagValueProcessor('' + jObj[key]);\n }\n } else {\n val += this.buildTextNode(jObj[key], key, '', level);\n }\n }\n } else if (Array.isArray(jObj[key])) {\n //repeated nodes\n if (this.isCDATA(key)) {\n val += this.indentate(level);\n if (jObj[this.options.textNodeName]) {\n val += this.replaceCDATAarr(jObj[this.options.textNodeName], jObj[key]);\n } else {\n val += this.replaceCDATAarr('', jObj[key]);\n }\n } else {\n //nested nodes\n const arrLen = jObj[key].length;\n for (let j = 0; j < arrLen; j++) {\n const item = jObj[key][j];\n if (typeof item === 'undefined') {\n // supress undefined node\n } else if (item === null) {\n val += this.indentate(level) + '<' + key + '/' + this.tagEndChar;\n } else if (typeof item === 'object') {\n const result = this.j2x(item, level + 1);\n val += this.buildObjNode(result.val, key, result.attrStr, level);\n } else {\n val += this.buildTextNode(item, key, '', level);\n }\n }\n }\n } else {\n //nested node\n if (this.options.attrNodeName && key === this.options.attrNodeName) {\n const Ks = Object.keys(jObj[key]);\n const L = Ks.length;\n for (let j = 0; j < L; j++) {\n attrStr += ' ' + Ks[j] + '=\"' + this.options.attrValueProcessor('' + jObj[key][Ks[j]]) + '\"';\n }\n } else {\n const result = this.j2x(jObj[key], level + 1);\n val += this.buildObjNode(result.val, key, result.attrStr, level);\n }\n }\n }\n return {attrStr: attrStr, val: val};\n};\n\nfunction replaceCDATAstr(str, cdata) {\n str = this.options.tagValueProcessor('' + str);\n if (this.options.cdataPositionChar === '' || str === '') {\n return str + '');\n }\n return str + this.newLine;\n }\n}\n\nfunction buildObjectNode(val, key, attrStr, level) {\n if (attrStr && !val.includes('<')) {\n return (\n this.indentate(level) +\n '<' +\n key +\n attrStr +\n '>' +\n val +\n //+ this.newLine\n // + this.indentate(level)\n '' +\n this.options.tagValueProcessor(val) +\n ' 1) {\n jObj[tagname] = [];\n for (var tag in node.child[tagname]) {\n if (node.child[tagname].hasOwnProperty(tag)){\n jObj[tagname].push(convertToJson(node.child[tagname][tag], options));}\n }\n } else {\n if(options.arrayMode === true){\n const result = convertToJson(node.child[tagname][0], options)\n if(typeof result === 'object')\n jObj[tagname] = [ result ];\n else\n jObj[tagname] = result;\n }else if(options.arrayMode === \"strict\"){\n jObj[tagname] = [convertToJson(node.child[tagname][0], options) ];\n }else{\n jObj[tagname] = convertToJson(node.child[tagname][0], options);\n }\n }\n }\n\n //add value\n return jObj;\n};\n\nexports.convertToJson = convertToJson;\n","'use strict';\n\nconst util = require('./util');\nconst buildOptions = require('./util').buildOptions;\nconst x2j = require('./xmlstr2xmlnode');\n\n//TODO: do it later\nconst convertToJsonString = function(node, options) {\n options = buildOptions(options, x2j.defaultOptions, x2j.props);\n\n options.indentBy = options.indentBy || '';\n return _cToJsonStr(node, options, 0);\n};\n\nconst _cToJsonStr = function(node, options, level) {\n let jObj = '{';\n\n //traver through all the children\n const keys = Object.keys(node.child);\n\n for (let index = 0; index < keys.length; index++) {\n var tagname = keys[index];\n if (node.child[tagname] && node.child[tagname].length > 1) {\n jObj += '\"' + tagname + '\" : [ ';\n for (var tag in node.child[tagname]) {\n jObj += _cToJsonStr(node.child[tagname][tag], options) + ' , ';\n }\n jObj = jObj.substr(0, jObj.length - 1) + ' ] '; //remove extra comma in last\n } else {\n jObj += '\"' + tagname + '\" : ' + _cToJsonStr(node.child[tagname][0], options) + ' ,';\n }\n }\n util.merge(jObj, node.attrsMap);\n //add attrsMap as new children\n if (util.isEmptyObject(jObj)) {\n return util.isExist(node.val) ? node.val : '';\n } else {\n if (util.isExist(node.val)) {\n if (!(typeof node.val === 'string' && (node.val === '' || node.val === options.cdataPositionChar))) {\n jObj += '\"' + options.textNodeName + '\" : ' + stringval(node.val);\n }\n }\n }\n //add value\n if (jObj[jObj.length - 1] === ',') {\n jObj = jObj.substr(0, jObj.length - 2);\n }\n return jObj + '}';\n};\n\nfunction stringval(v) {\n if (v === true || v === false || !isNaN(v)) {\n return v;\n } else {\n return '\"' + v + '\"';\n }\n}\n\nfunction indentate(options, level) {\n return options.indentBy.repeat(level);\n}\n\nexports.convertToJsonString = convertToJsonString;\n","'use strict';\n\nconst nodeToJson = require('./node2json');\nconst xmlToNodeobj = require('./xmlstr2xmlnode');\nconst x2xmlnode = require('./xmlstr2xmlnode');\nconst buildOptions = require('./util').buildOptions;\nconst validator = require('./validator');\n\nexports.parse = function(xmlData, options, validationOption) {\n if( validationOption){\n if(validationOption === true) validationOption = {}\n \n const result = validator.validate(xmlData, validationOption);\n if (result !== true) {\n throw Error( result.err.msg)\n }\n }\n options = buildOptions(options, x2xmlnode.defaultOptions, x2xmlnode.props);\n const traversableObj = xmlToNodeobj.getTraversalObj(xmlData, options)\n //print(traversableObj, \" \");\n return nodeToJson.convertToJson(traversableObj, options);\n};\nexports.convertTonimn = require('../src/nimndata').convert2nimn;\nexports.getTraversalObj = xmlToNodeobj.getTraversalObj;\nexports.convertToJson = nodeToJson.convertToJson;\nexports.convertToJsonString = require('./node2json_str').convertToJsonString;\nexports.validate = validator.validate;\nexports.j2xParser = require('./json2xml');\nexports.parseToNimn = function(xmlData, schema, options) {\n return exports.convertTonimn(exports.getTraversalObj(xmlData, options), schema, options);\n};\n\n\nfunction print(xmlNode, indentation){\n if(xmlNode){\n console.log(indentation + \"{\")\n console.log(indentation + \" \\\"tagName\\\": \\\"\" + xmlNode.tagname + \"\\\", \");\n if(xmlNode.parent){\n console.log(indentation + \" \\\"parent\\\": \\\"\" + xmlNode.parent.tagname + \"\\\", \");\n }\n console.log(indentation + \" \\\"val\\\": \\\"\" + xmlNode.val + \"\\\", \");\n console.log(indentation + \" \\\"attrs\\\": \" + JSON.stringify(xmlNode.attrsMap,null,4) + \", \");\n\n if(xmlNode.child){\n console.log(indentation + \"\\\"child\\\": {\")\n const indentation2 = indentation + indentation;\n Object.keys(xmlNode.child).forEach( function(key) {\n const node = xmlNode.child[key];\n\n if(Array.isArray(node)){\n console.log(indentation + \"\\\"\"+key+\"\\\" :[\")\n node.forEach( function(item,index) {\n //console.log(indentation + \" \\\"\"+index+\"\\\" : [\")\n print(item, indentation2);\n })\n console.log(indentation + \"],\") \n }else{\n console.log(indentation + \" \\\"\"+key+\"\\\" : {\")\n print(node, indentation2);\n console.log(indentation + \"},\") \n }\n });\n console.log(indentation + \"},\")\n }\n console.log(indentation + \"},\")\n }\n}","'use strict';\n\nconst nameStartChar = ':A-Za-z_\\\\u00C0-\\\\u00D6\\\\u00D8-\\\\u00F6\\\\u00F8-\\\\u02FF\\\\u0370-\\\\u037D\\\\u037F-\\\\u1FFF\\\\u200C-\\\\u200D\\\\u2070-\\\\u218F\\\\u2C00-\\\\u2FEF\\\\u3001-\\\\uD7FF\\\\uF900-\\\\uFDCF\\\\uFDF0-\\\\uFFFD';\nconst nameChar = nameStartChar + '\\\\-.\\\\d\\\\u00B7\\\\u0300-\\\\u036F\\\\u203F-\\\\u2040';\nconst nameRegexp = '[' + nameStartChar + '][' + nameChar + ']*'\nconst regexName = new RegExp('^' + nameRegexp + '$');\n\nconst getAllMatches = function(string, regex) {\n const matches = [];\n let match = regex.exec(string);\n while (match) {\n const allmatches = [];\n const len = match.length;\n for (let index = 0; index < len; index++) {\n allmatches.push(match[index]);\n }\n matches.push(allmatches);\n match = regex.exec(string);\n }\n return matches;\n};\n\nconst isName = function(string) {\n const match = regexName.exec(string);\n return !(match === null || typeof match === 'undefined');\n};\n\nexports.isExist = function(v) {\n return typeof v !== 'undefined';\n};\n\nexports.isEmptyObject = function(obj) {\n return Object.keys(obj).length === 0;\n};\n\n/**\n * Copy all the properties of a into b.\n * @param {*} target\n * @param {*} a\n */\nexports.merge = function(target, a, arrayMode) {\n if (a) {\n const keys = Object.keys(a); // will return an array of own properties\n const len = keys.length; //don't make it inline\n for (let i = 0; i < len; i++) {\n if(arrayMode === 'strict'){\n target[keys[i]] = [ a[keys[i]] ];\n }else{\n target[keys[i]] = a[keys[i]];\n }\n }\n }\n};\n/* exports.merge =function (b,a){\n return Object.assign(b,a);\n} */\n\nexports.getValue = function(v) {\n if (exports.isExist(v)) {\n return v;\n } else {\n return '';\n }\n};\n\n// const fakeCall = function(a) {return a;};\n// const fakeCallNoReturn = function() {};\n\nexports.buildOptions = function(options, defaultOptions, props) {\n var newOptions = {};\n if (!options) {\n return defaultOptions; //if there are not options\n }\n\n for (let i = 0; i < props.length; i++) {\n if (options[props[i]] !== undefined) {\n newOptions[props[i]] = options[props[i]];\n } else {\n newOptions[props[i]] = defaultOptions[props[i]];\n }\n }\n return newOptions;\n};\n\nexports.isName = isName;\nexports.getAllMatches = getAllMatches;\nexports.nameRegexp = nameRegexp;\n","'use strict';\n\nconst util = require('./util');\n\nconst defaultOptions = {\n allowBooleanAttributes: false, //A tag can have attributes without any value\n};\n\nconst props = ['allowBooleanAttributes'];\n\n//const tagsPattern = new RegExp(\"<\\\\/?([\\\\w:\\\\-_\\.]+)\\\\s*\\/?>\",\"g\");\nexports.validate = function (xmlData, options) {\n options = util.buildOptions(options, defaultOptions, props);\n\n //xmlData = xmlData.replace(/(\\r\\n|\\n|\\r)/gm,\"\");//make it single line\n //xmlData = xmlData.replace(/(^\\s*<\\?xml.*?\\?>)/g,\"\");//Remove XML starting tag\n //xmlData = xmlData.replace(/()/g,\"\");//Remove DOCTYPE\n const tags = [];\n let tagFound = false;\n\n //indicates that the root tag has been closed (aka. depth 0 has been reached)\n let reachedRoot = false;\n\n if (xmlData[0] === '\\ufeff') {\n // check for byte order mark (BOM)\n xmlData = xmlData.substr(1);\n }\n\n for (let i = 0; i < xmlData.length; i++) {\n if (xmlData[i] === '<') {\n //starting of tag\n //read until you reach to '>' avoiding any '>' in attribute value\n\n i++;\n if (xmlData[i] === '?') {\n i = readPI(xmlData, ++i);\n if (i.err) {\n return i;\n }\n } else if (xmlData[i] === '!') {\n i = readCommentAndCDATA(xmlData, i);\n continue;\n } else {\n let closingTag = false;\n if (xmlData[i] === '/') {\n //closing tag\n closingTag = true;\n i++;\n }\n //read tagname\n let tagName = '';\n for (; i < xmlData.length &&\n xmlData[i] !== '>' &&\n xmlData[i] !== ' ' &&\n xmlData[i] !== '\\t' &&\n xmlData[i] !== '\\n' &&\n xmlData[i] !== '\\r'; i++\n ) {\n tagName += xmlData[i];\n }\n tagName = tagName.trim();\n //console.log(tagName);\n\n if (tagName[tagName.length - 1] === '/') {\n //self closing tag without attributes\n tagName = tagName.substring(0, tagName.length - 1);\n //continue;\n i--;\n }\n if (!validateTagName(tagName)) {\n let msg;\n if (tagName.trim().length === 0) {\n msg = \"There is an unnecessary space between tag name and backward slash ' 0) {\n return getErrorObject('InvalidTag', \"Closing tag '\"+tagName+\"' can't have attributes or invalid starting.\", getLineNumberForPosition(xmlData, i));\n } else {\n const otg = tags.pop();\n if (tagName !== otg) {\n return getErrorObject('InvalidTag', \"Closing tag '\"+otg+\"' is expected inplace of '\"+tagName+\"'.\", getLineNumberForPosition(xmlData, i));\n }\n\n //when there are no more tags, we reached the root level.\n if (tags.length == 0) {\n reachedRoot = true;\n }\n }\n } else {\n const isValid = validateAttributeString(attrStr, options);\n if (isValid !== true) {\n //the result from the nested function returns the position of the error within the attribute\n //in order to get the 'true' error line, we need to calculate the position where the attribute begins (i - attrStr.length) and then add the position within the attribute\n //this gives us the absolute index in the entire xml, which we can use to find the line at last\n return getErrorObject(isValid.err.code, isValid.err.msg, getLineNumberForPosition(xmlData, i - attrStr.length + isValid.err.line));\n }\n\n //if the root level has been reached before ...\n if (reachedRoot === true) {\n return getErrorObject('InvalidXml', 'Multiple possible root nodes found.', getLineNumberForPosition(xmlData, i));\n } else {\n tags.push(tagName);\n }\n tagFound = true;\n }\n\n //skip tag text value\n //It may include comments and CDATA value\n for (i++; i < xmlData.length; i++) {\n if (xmlData[i] === '<') {\n if (xmlData[i + 1] === '!') {\n //comment or CADATA\n i++;\n i = readCommentAndCDATA(xmlData, i);\n continue;\n } else {\n break;\n }\n } else if (xmlData[i] === '&') {\n const afterAmp = validateAmpersand(xmlData, i);\n if (afterAmp == -1)\n return getErrorObject('InvalidChar', \"char '&' is not expected.\", getLineNumberForPosition(xmlData, i));\n i = afterAmp;\n }\n } //end of reading tag text value\n if (xmlData[i] === '<') {\n i--;\n }\n }\n } else {\n if (xmlData[i] === ' ' || xmlData[i] === '\\t' || xmlData[i] === '\\n' || xmlData[i] === '\\r') {\n continue;\n }\n return getErrorObject('InvalidChar', \"char '\"+xmlData[i]+\"' is not expected.\", getLineNumberForPosition(xmlData, i));\n }\n }\n\n if (!tagFound) {\n return getErrorObject('InvalidXml', 'Start tag expected.', 1);\n } else if (tags.length > 0) {\n return getErrorObject('InvalidXml', \"Invalid '\"+JSON.stringify(tags, null, 4).replace(/\\r?\\n/g, '')+\"' found.\", 1);\n }\n\n return true;\n};\n\n/**\n * Read Processing insstructions and skip\n * @param {*} xmlData\n * @param {*} i\n */\nfunction readPI(xmlData, i) {\n var start = i;\n for (; i < xmlData.length; i++) {\n if (xmlData[i] == '?' || xmlData[i] == ' ') {\n //tagname\n var tagname = xmlData.substr(start, i - start);\n if (i > 5 && tagname === 'xml') {\n return getErrorObject('InvalidXml', 'XML declaration allowed only at the start of the document.', getLineNumberForPosition(xmlData, i));\n } else if (xmlData[i] == '?' && xmlData[i + 1] == '>') {\n //check if valid attribut string\n i++;\n break;\n } else {\n continue;\n }\n }\n }\n return i;\n}\n\nfunction readCommentAndCDATA(xmlData, i) {\n if (xmlData.length > i + 5 && xmlData[i + 1] === '-' && xmlData[i + 2] === '-') {\n //comment\n for (i += 3; i < xmlData.length; i++) {\n if (xmlData[i] === '-' && xmlData[i + 1] === '-' && xmlData[i + 2] === '>') {\n i += 2;\n break;\n }\n }\n } else if (\n xmlData.length > i + 8 &&\n xmlData[i + 1] === 'D' &&\n xmlData[i + 2] === 'O' &&\n xmlData[i + 3] === 'C' &&\n xmlData[i + 4] === 'T' &&\n xmlData[i + 5] === 'Y' &&\n xmlData[i + 6] === 'P' &&\n xmlData[i + 7] === 'E'\n ) {\n let angleBracketsCount = 1;\n for (i += 8; i < xmlData.length; i++) {\n if (xmlData[i] === '<') {\n angleBracketsCount++;\n } else if (xmlData[i] === '>') {\n angleBracketsCount--;\n if (angleBracketsCount === 0) {\n break;\n }\n }\n }\n } else if (\n xmlData.length > i + 9 &&\n xmlData[i + 1] === '[' &&\n xmlData[i + 2] === 'C' &&\n xmlData[i + 3] === 'D' &&\n xmlData[i + 4] === 'A' &&\n xmlData[i + 5] === 'T' &&\n xmlData[i + 6] === 'A' &&\n xmlData[i + 7] === '['\n ) {\n for (i += 8; i < xmlData.length; i++) {\n if (xmlData[i] === ']' && xmlData[i + 1] === ']' && xmlData[i + 2] === '>') {\n i += 2;\n break;\n }\n }\n }\n\n return i;\n}\n\nvar doubleQuote = '\"';\nvar singleQuote = \"'\";\n\n/**\n * Keep reading xmlData until '<' is found outside the attribute value.\n * @param {string} xmlData\n * @param {number} i\n */\nfunction readAttributeStr(xmlData, i) {\n let attrStr = '';\n let startChar = '';\n let tagClosed = false;\n for (; i < xmlData.length; i++) {\n if (xmlData[i] === doubleQuote || xmlData[i] === singleQuote) {\n if (startChar === '') {\n startChar = xmlData[i];\n } else if (startChar !== xmlData[i]) {\n //if vaue is enclosed with double quote then single quotes are allowed inside the value and vice versa\n continue;\n } else {\n startChar = '';\n }\n } else if (xmlData[i] === '>') {\n if (startChar === '') {\n tagClosed = true;\n break;\n }\n }\n attrStr += xmlData[i];\n }\n if (startChar !== '') {\n return false;\n }\n\n return {\n value: attrStr,\n index: i,\n tagClosed: tagClosed\n };\n}\n\n/**\n * Select all the attributes whether valid or invalid.\n */\nconst validAttrStrRegxp = new RegExp('(\\\\s*)([^\\\\s=]+)(\\\\s*=)?(\\\\s*([\\'\"])(([\\\\s\\\\S])*?)\\\\5)?', 'g');\n\n//attr, =\"sd\", a=\"amit's\", a=\"sd\"b=\"saf\", ab cd=\"\"\n\nfunction validateAttributeString(attrStr, options) {\n //console.log(\"start:\"+attrStr+\":end\");\n\n //if(attrStr.trim().length === 0) return true; //empty string\n\n const matches = util.getAllMatches(attrStr, validAttrStrRegxp);\n const attrNames = {};\n\n for (let i = 0; i < matches.length; i++) {\n if (matches[i][1].length === 0) {\n //nospace before attribute name: a=\"sd\"b=\"saf\"\n return getErrorObject('InvalidAttr', \"Attribute '\"+matches[i][2]+\"' has no space in starting.\", getPositionFromMatch(attrStr, matches[i][0]))\n } else if (matches[i][3] === undefined && !options.allowBooleanAttributes) {\n //independent attribute: ab\n return getErrorObject('InvalidAttr', \"boolean attribute '\"+matches[i][2]+\"' is not allowed.\", getPositionFromMatch(attrStr, matches[i][0]));\n }\n /* else if(matches[i][6] === undefined){//attribute without value: ab=\n return { err: { code:\"InvalidAttr\",msg:\"attribute \" + matches[i][2] + \" has no value assigned.\"}};\n } */\n const attrName = matches[i][2];\n if (!validateAttrName(attrName)) {\n return getErrorObject('InvalidAttr', \"Attribute '\"+attrName+\"' is an invalid name.\", getPositionFromMatch(attrStr, matches[i][0]));\n }\n if (!attrNames.hasOwnProperty(attrName)) {\n //check for duplicate attribute.\n attrNames[attrName] = 1;\n } else {\n return getErrorObject('InvalidAttr', \"Attribute '\"+attrName+\"' is repeated.\", getPositionFromMatch(attrStr, matches[i][0]));\n }\n }\n\n return true;\n}\n\nfunction validateNumberAmpersand(xmlData, i) {\n let re = /\\d/;\n if (xmlData[i] === 'x') {\n i++;\n re = /[\\da-fA-F]/;\n }\n for (; i < xmlData.length; i++) {\n if (xmlData[i] === ';')\n return i;\n if (!xmlData[i].match(re))\n break;\n }\n return -1;\n}\n\nfunction validateAmpersand(xmlData, i) {\n // https://www.w3.org/TR/xml/#dt-charref\n i++;\n if (xmlData[i] === ';')\n return -1;\n if (xmlData[i] === '#') {\n i++;\n return validateNumberAmpersand(xmlData, i);\n }\n let count = 0;\n for (; i < xmlData.length; i++, count++) {\n if (xmlData[i].match(/\\w/) && count < 20)\n continue;\n if (xmlData[i] === ';')\n break;\n return -1;\n }\n return i;\n}\n\nfunction getErrorObject(code, message, lineNumber) {\n return {\n err: {\n code: code,\n msg: message,\n line: lineNumber,\n },\n };\n}\n\nfunction validateAttrName(attrName) {\n return util.isName(attrName);\n}\n\n// const startsWithXML = /^xml/i;\n\nfunction validateTagName(tagname) {\n return util.isName(tagname) /* && !tagname.match(startsWithXML) */;\n}\n\n//this function returns the line number for the character at the given index\nfunction getLineNumberForPosition(xmlData, index) {\n var lines = xmlData.substring(0, index).split(/\\r?\\n/);\n return lines.length;\n}\n\n//this function returns the position of the last character of match within attrStr\nfunction getPositionFromMatch(attrStr, match) {\n return attrStr.indexOf(match) + match.length;\n}\n","'use strict';\n\nmodule.exports = function(tagname, parent, val) {\n this.tagname = tagname;\n this.parent = parent;\n this.child = {}; //child tags\n this.attrsMap = {}; //attributes map\n this.val = val; //text only\n this.addChild = function(child) {\n if (Array.isArray(this.child[child.tagname])) {\n //already presents\n this.child[child.tagname].push(child);\n } else {\n this.child[child.tagname] = [child];\n }\n };\n};\n","'use strict';\n\nconst util = require('./util');\nconst buildOptions = require('./util').buildOptions;\nconst xmlNode = require('./xmlNode');\nconst regx =\n '<((!\\\\[CDATA\\\\[([\\\\s\\\\S]*?)(]]>))|((NAME:)?(NAME))([^>]*)>|((\\\\/)(NAME)\\\\s*>))([^<]*)'\n .replace(/NAME/g, util.nameRegexp);\n\n//const tagsRegx = new RegExp(\"<(\\\\/?[\\\\w:\\\\-\\._]+)([^>]*)>(\\\\s*\"+cdataRegx+\")*([^<]+)?\",\"g\");\n//const tagsRegx = new RegExp(\"<(\\\\/?)((\\\\w*:)?([\\\\w:\\\\-\\._]+))([^>]*)>([^<]*)(\"+cdataRegx+\"([^<]*))*([^<]+)?\",\"g\");\n\n//polyfill\nif (!Number.parseInt && window.parseInt) {\n Number.parseInt = window.parseInt;\n}\nif (!Number.parseFloat && window.parseFloat) {\n Number.parseFloat = window.parseFloat;\n}\n\nconst defaultOptions = {\n attributeNamePrefix: '@_',\n attrNodeName: false,\n textNodeName: '#text',\n ignoreAttributes: true,\n ignoreNameSpace: false,\n allowBooleanAttributes: false, //a tag can have attributes without any value\n //ignoreRootElement : false,\n parseNodeValue: true,\n parseAttributeValue: false,\n arrayMode: false,\n trimValues: true, //Trim string values of tag and attributes\n cdataTagName: false,\n cdataPositionChar: '\\\\c',\n tagValueProcessor: function(a, tagName) {\n return a;\n },\n attrValueProcessor: function(a, attrName) {\n return a;\n },\n stopNodes: []\n //decodeStrict: false,\n};\n\nexports.defaultOptions = defaultOptions;\n\nconst props = [\n 'attributeNamePrefix',\n 'attrNodeName',\n 'textNodeName',\n 'ignoreAttributes',\n 'ignoreNameSpace',\n 'allowBooleanAttributes',\n 'parseNodeValue',\n 'parseAttributeValue',\n 'arrayMode',\n 'trimValues',\n 'cdataTagName',\n 'cdataPositionChar',\n 'tagValueProcessor',\n 'attrValueProcessor',\n 'parseTrueNumberOnly',\n 'stopNodes'\n];\nexports.props = props;\n\n/**\n * Trim -> valueProcessor -> parse value\n * @param {string} tagName\n * @param {string} val\n * @param {object} options\n */\nfunction processTagValue(tagName, val, options) {\n if (val) {\n if (options.trimValues) {\n val = val.trim();\n }\n val = options.tagValueProcessor(val, tagName);\n val = parseValue(val, options.parseNodeValue, options.parseTrueNumberOnly);\n }\n\n return val;\n}\n\nfunction resolveNameSpace(tagname, options) {\n if (options.ignoreNameSpace) {\n const tags = tagname.split(':');\n const prefix = tagname.charAt(0) === '/' ? '/' : '';\n if (tags[0] === 'xmlns') {\n return '';\n }\n if (tags.length === 2) {\n tagname = prefix + tags[1];\n }\n }\n return tagname;\n}\n\nfunction parseValue(val, shouldParse, parseTrueNumberOnly) {\n if (shouldParse && typeof val === 'string') {\n let parsed;\n if (val.trim() === '' || isNaN(val)) {\n parsed = val === 'true' ? true : val === 'false' ? false : val;\n } else {\n if (val.indexOf('0x') !== -1) {\n //support hexa decimal\n parsed = Number.parseInt(val, 16);\n } else if (val.indexOf('.') !== -1) {\n parsed = Number.parseFloat(val);\n val = val.replace(/\\.?0+$/, \"\");\n } else {\n parsed = Number.parseInt(val, 10);\n }\n if (parseTrueNumberOnly) {\n parsed = String(parsed) === val ? parsed : val;\n }\n }\n return parsed;\n } else {\n if (util.isExist(val)) {\n return val;\n } else {\n return '';\n }\n }\n}\n\n//TODO: change regex to capture NS\n//const attrsRegx = new RegExp(\"([\\\\w\\\\-\\\\.\\\\:]+)\\\\s*=\\\\s*(['\\\"])((.|\\n)*?)\\\\2\",\"gm\");\nconst attrsRegx = new RegExp('([^\\\\s=]+)\\\\s*(=\\\\s*([\\'\"])(.*?)\\\\3)?', 'g');\n\nfunction buildAttributesMap(attrStr, options) {\n if (!options.ignoreAttributes && typeof attrStr === 'string') {\n attrStr = attrStr.replace(/\\r?\\n/g, ' ');\n //attrStr = attrStr || attrStr.trim();\n\n const matches = util.getAllMatches(attrStr, attrsRegx);\n const len = matches.length; //don't make it inline\n const attrs = {};\n for (let i = 0; i < len; i++) {\n const attrName = resolveNameSpace(matches[i][1], options);\n if (attrName.length) {\n if (matches[i][4] !== undefined) {\n if (options.trimValues) {\n matches[i][4] = matches[i][4].trim();\n }\n matches[i][4] = options.attrValueProcessor(matches[i][4], attrName);\n attrs[options.attributeNamePrefix + attrName] = parseValue(\n matches[i][4],\n options.parseAttributeValue,\n options.parseTrueNumberOnly\n );\n } else if (options.allowBooleanAttributes) {\n attrs[options.attributeNamePrefix + attrName] = true;\n }\n }\n }\n if (!Object.keys(attrs).length) {\n return;\n }\n if (options.attrNodeName) {\n const attrCollection = {};\n attrCollection[options.attrNodeName] = attrs;\n return attrCollection;\n }\n return attrs;\n }\n}\n\nconst getTraversalObj = function(xmlData, options) {\n xmlData = xmlData.replace(/\\r\\n?/g, \"\\n\");\n options = buildOptions(options, defaultOptions, props);\n const xmlObj = new xmlNode('!xml');\n let currentNode = xmlObj;\n let textData = \"\";\n\n//function match(xmlData){\n for(let i=0; i< xmlData.length; i++){\n const ch = xmlData[i];\n if(ch === '<'){\n if( xmlData[i+1] === '/') {//Closing Tag\n const closeIndex = findClosingIndex(xmlData, \">\", i, \"Closing Tag is not closed.\")\n let tagName = xmlData.substring(i+2,closeIndex).trim();\n\n if(options.ignoreNameSpace){\n const colonIndex = tagName.indexOf(\":\");\n if(colonIndex !== -1){\n tagName = tagName.substr(colonIndex+1);\n }\n }\n\n /* if (currentNode.parent) {\n currentNode.parent.val = util.getValue(currentNode.parent.val) + '' + processTagValue2(tagName, textData , options);\n } */\n if(currentNode){\n if(currentNode.val){\n currentNode.val = util.getValue(currentNode.val) + '' + processTagValue(tagName, textData , options);\n }else{\n currentNode.val = processTagValue(tagName, textData , options);\n }\n }\n\n if (options.stopNodes.length && options.stopNodes.includes(currentNode.tagname)) {\n currentNode.child = []\n if (currentNode.attrsMap == undefined) { currentNode.attrsMap = {}}\n currentNode.val = xmlData.substr(currentNode.startIndex + 1, i - currentNode.startIndex - 1)\n }\n currentNode = currentNode.parent;\n textData = \"\";\n i = closeIndex;\n } else if( xmlData[i+1] === '?') {\n i = findClosingIndex(xmlData, \"?>\", i, \"Pi Tag is not closed.\")\n } else if(xmlData.substr(i + 1, 3) === '!--') {\n i = findClosingIndex(xmlData, \"-->\", i, \"Comment is not closed.\")\n } else if( xmlData.substr(i + 1, 2) === '!D') {\n const closeIndex = findClosingIndex(xmlData, \">\", i, \"DOCTYPE is not closed.\")\n const tagExp = xmlData.substring(i, closeIndex);\n if(tagExp.indexOf(\"[\") >= 0){\n i = xmlData.indexOf(\"]>\", i) + 1;\n }else{\n i = closeIndex;\n }\n }else if(xmlData.substr(i + 1, 2) === '![') {\n const closeIndex = findClosingIndex(xmlData, \"]]>\", i, \"CDATA is not closed.\") - 2\n const tagExp = xmlData.substring(i + 9,closeIndex);\n\n //considerations\n //1. CDATA will always have parent node\n //2. A tag with CDATA is not a leaf node so it's value would be string type.\n if(textData){\n currentNode.val = util.getValue(currentNode.val) + '' + processTagValue(currentNode.tagname, textData , options);\n textData = \"\";\n }\n\n if (options.cdataTagName) {\n //add cdata node\n const childNode = new xmlNode(options.cdataTagName, currentNode, tagExp);\n currentNode.addChild(childNode);\n //for backtracking\n currentNode.val = util.getValue(currentNode.val) + options.cdataPositionChar;\n //add rest value to parent node\n if (tagExp) {\n childNode.val = tagExp;\n }\n } else {\n currentNode.val = (currentNode.val || '') + (tagExp || '');\n }\n\n i = closeIndex + 2;\n }else {//Opening tag\n const result = closingIndexForOpeningTag(xmlData, i+1)\n let tagExp = result.data;\n const closeIndex = result.index;\n const separatorIndex = tagExp.indexOf(\" \");\n let tagName = tagExp;\n if(separatorIndex !== -1){\n tagName = tagExp.substr(0, separatorIndex).replace(/\\s\\s*$/, '');\n tagExp = tagExp.substr(separatorIndex + 1);\n }\n\n if(options.ignoreNameSpace){\n const colonIndex = tagName.indexOf(\":\");\n if(colonIndex !== -1){\n tagName = tagName.substr(colonIndex+1);\n }\n }\n\n //save text to parent node\n if (currentNode && textData) {\n if(currentNode.tagname !== '!xml'){\n currentNode.val = util.getValue(currentNode.val) + '' + processTagValue( currentNode.tagname, textData, options);\n }\n }\n\n if(tagExp.length > 0 && tagExp.lastIndexOf(\"/\") === tagExp.length - 1){//selfClosing tag\n\n if(tagName[tagName.length - 1] === \"/\"){ //remove trailing '/'\n tagName = tagName.substr(0, tagName.length - 1);\n tagExp = tagName;\n }else{\n tagExp = tagExp.substr(0, tagExp.length - 1);\n }\n\n const childNode = new xmlNode(tagName, currentNode, '');\n if(tagName !== tagExp){\n childNode.attrsMap = buildAttributesMap(tagExp, options);\n }\n currentNode.addChild(childNode);\n }else{//opening tag\n\n const childNode = new xmlNode( tagName, currentNode );\n if (options.stopNodes.length && options.stopNodes.includes(childNode.tagname)) {\n childNode.startIndex=closeIndex;\n }\n if(tagName !== tagExp){\n childNode.attrsMap = buildAttributesMap(tagExp, options);\n }\n currentNode.addChild(childNode);\n currentNode = childNode;\n }\n textData = \"\";\n i = closeIndex;\n }\n }else{\n textData += xmlData[i];\n }\n }\n return xmlObj;\n}\n\nfunction closingIndexForOpeningTag(data, i){\n let attrBoundary;\n let tagExp = \"\";\n for (let index = i; index < data.length; index++) {\n let ch = data[index];\n if (attrBoundary) {\n if (ch === attrBoundary) attrBoundary = \"\";//reset\n } else if (ch === '\"' || ch === \"'\") {\n attrBoundary = ch;\n } else if (ch === '>') {\n return {\n data: tagExp,\n index: index\n }\n } else if (ch === '\\t') {\n ch = \" \"\n }\n tagExp += ch;\n }\n}\n\nfunction findClosingIndex(xmlData, str, i, errMsg){\n const closingIndex = xmlData.indexOf(str, i);\n if(closingIndex === -1){\n throw new Error(errMsg)\n }else{\n return closingIndex + str.length - 1;\n }\n}\n\nexports.getTraversalObj = getTraversalObj;\n","/*! https://mths.be/he v1.2.0 by @mathias | MIT license */\n;(function(root) {\n\n\t// Detect free variables `exports`.\n\tvar freeExports = typeof exports == 'object' && exports;\n\n\t// Detect free variable `module`.\n\tvar freeModule = typeof module == 'object' && module &&\n\t\tmodule.exports == freeExports && module;\n\n\t// Detect free variable `global`, from Node.js or Browserified code,\n\t// and use it as `root`.\n\tvar freeGlobal = typeof global == 'object' && global;\n\tif (freeGlobal.global === freeGlobal || freeGlobal.window === freeGlobal) {\n\t\troot = freeGlobal;\n\t}\n\n\t/*--------------------------------------------------------------------------*/\n\n\t// All astral symbols.\n\tvar regexAstralSymbols = /[\\uD800-\\uDBFF][\\uDC00-\\uDFFF]/g;\n\t// All ASCII symbols (not just printable ASCII) except those listed in the\n\t// first column of the overrides table.\n\t// https://html.spec.whatwg.org/multipage/syntax.html#table-charref-overrides\n\tvar regexAsciiWhitelist = /[\\x01-\\x7F]/g;\n\t// All BMP symbols that are not ASCII newlines, printable ASCII symbols, or\n\t// code points listed in the first column of the overrides table on\n\t// https://html.spec.whatwg.org/multipage/syntax.html#table-charref-overrides.\n\tvar regexBmpWhitelist = /[\\x01-\\t\\x0B\\f\\x0E-\\x1F\\x7F\\x81\\x8D\\x8F\\x90\\x9D\\xA0-\\uFFFF]/g;\n\n\tvar regexEncodeNonAscii = /<\\u20D2|=\\u20E5|>\\u20D2|\\u205F\\u200A|\\u219D\\u0338|\\u2202\\u0338|\\u2220\\u20D2|\\u2229\\uFE00|\\u222A\\uFE00|\\u223C\\u20D2|\\u223D\\u0331|\\u223E\\u0333|\\u2242\\u0338|\\u224B\\u0338|\\u224D\\u20D2|\\u224E\\u0338|\\u224F\\u0338|\\u2250\\u0338|\\u2261\\u20E5|\\u2264\\u20D2|\\u2265\\u20D2|\\u2266\\u0338|\\u2267\\u0338|\\u2268\\uFE00|\\u2269\\uFE00|\\u226A\\u0338|\\u226A\\u20D2|\\u226B\\u0338|\\u226B\\u20D2|\\u227F\\u0338|\\u2282\\u20D2|\\u2283\\u20D2|\\u228A\\uFE00|\\u228B\\uFE00|\\u228F\\u0338|\\u2290\\u0338|\\u2293\\uFE00|\\u2294\\uFE00|\\u22B4\\u20D2|\\u22B5\\u20D2|\\u22D8\\u0338|\\u22D9\\u0338|\\u22DA\\uFE00|\\u22DB\\uFE00|\\u22F5\\u0338|\\u22F9\\u0338|\\u2933\\u0338|\\u29CF\\u0338|\\u29D0\\u0338|\\u2A6D\\u0338|\\u2A70\\u0338|\\u2A7D\\u0338|\\u2A7E\\u0338|\\u2AA1\\u0338|\\u2AA2\\u0338|\\u2AAC\\uFE00|\\u2AAD\\uFE00|\\u2AAF\\u0338|\\u2AB0\\u0338|\\u2AC5\\u0338|\\u2AC6\\u0338|\\u2ACB\\uFE00|\\u2ACC\\uFE00|\\u2AFD\\u20E5|[\\xA0-\\u0113\\u0116-\\u0122\\u0124-\\u012B\\u012E-\\u014D\\u0150-\\u017E\\u0192\\u01B5\\u01F5\\u0237\\u02C6\\u02C7\\u02D8-\\u02DD\\u0311\\u0391-\\u03A1\\u03A3-\\u03A9\\u03B1-\\u03C9\\u03D1\\u03D2\\u03D5\\u03D6\\u03DC\\u03DD\\u03F0\\u03F1\\u03F5\\u03F6\\u0401-\\u040C\\u040E-\\u044F\\u0451-\\u045C\\u045E\\u045F\\u2002-\\u2005\\u2007-\\u2010\\u2013-\\u2016\\u2018-\\u201A\\u201C-\\u201E\\u2020-\\u2022\\u2025\\u2026\\u2030-\\u2035\\u2039\\u203A\\u203E\\u2041\\u2043\\u2044\\u204F\\u2057\\u205F-\\u2063\\u20AC\\u20DB\\u20DC\\u2102\\u2105\\u210A-\\u2113\\u2115-\\u211E\\u2122\\u2124\\u2127-\\u2129\\u212C\\u212D\\u212F-\\u2131\\u2133-\\u2138\\u2145-\\u2148\\u2153-\\u215E\\u2190-\\u219B\\u219D-\\u21A7\\u21A9-\\u21AE\\u21B0-\\u21B3\\u21B5-\\u21B7\\u21BA-\\u21DB\\u21DD\\u21E4\\u21E5\\u21F5\\u21FD-\\u2205\\u2207-\\u2209\\u220B\\u220C\\u220F-\\u2214\\u2216-\\u2218\\u221A\\u221D-\\u2238\\u223A-\\u2257\\u2259\\u225A\\u225C\\u225F-\\u2262\\u2264-\\u228B\\u228D-\\u229B\\u229D-\\u22A5\\u22A7-\\u22B0\\u22B2-\\u22BB\\u22BD-\\u22DB\\u22DE-\\u22E3\\u22E6-\\u22F7\\u22F9-\\u22FE\\u2305\\u2306\\u2308-\\u2310\\u2312\\u2313\\u2315\\u2316\\u231C-\\u231F\\u2322\\u2323\\u232D\\u232E\\u2336\\u233D\\u233F\\u237C\\u23B0\\u23B1\\u23B4-\\u23B6\\u23DC-\\u23DF\\u23E2\\u23E7\\u2423\\u24C8\\u2500\\u2502\\u250C\\u2510\\u2514\\u2518\\u251C\\u2524\\u252C\\u2534\\u253C\\u2550-\\u256C\\u2580\\u2584\\u2588\\u2591-\\u2593\\u25A1\\u25AA\\u25AB\\u25AD\\u25AE\\u25B1\\u25B3-\\u25B5\\u25B8\\u25B9\\u25BD-\\u25BF\\u25C2\\u25C3\\u25CA\\u25CB\\u25EC\\u25EF\\u25F8-\\u25FC\\u2605\\u2606\\u260E\\u2640\\u2642\\u2660\\u2663\\u2665\\u2666\\u266A\\u266D-\\u266F\\u2713\\u2717\\u2720\\u2736\\u2758\\u2772\\u2773\\u27C8\\u27C9\\u27E6-\\u27ED\\u27F5-\\u27FA\\u27FC\\u27FF\\u2902-\\u2905\\u290C-\\u2913\\u2916\\u2919-\\u2920\\u2923-\\u292A\\u2933\\u2935-\\u2939\\u293C\\u293D\\u2945\\u2948-\\u294B\\u294E-\\u2976\\u2978\\u2979\\u297B-\\u297F\\u2985\\u2986\\u298B-\\u2996\\u299A\\u299C\\u299D\\u29A4-\\u29B7\\u29B9\\u29BB\\u29BC\\u29BE-\\u29C5\\u29C9\\u29CD-\\u29D0\\u29DC-\\u29DE\\u29E3-\\u29E5\\u29EB\\u29F4\\u29F6\\u2A00-\\u2A02\\u2A04\\u2A06\\u2A0C\\u2A0D\\u2A10-\\u2A17\\u2A22-\\u2A27\\u2A29\\u2A2A\\u2A2D-\\u2A31\\u2A33-\\u2A3C\\u2A3F\\u2A40\\u2A42-\\u2A4D\\u2A50\\u2A53-\\u2A58\\u2A5A-\\u2A5D\\u2A5F\\u2A66\\u2A6A\\u2A6D-\\u2A75\\u2A77-\\u2A9A\\u2A9D-\\u2AA2\\u2AA4-\\u2AB0\\u2AB3-\\u2AC8\\u2ACB\\u2ACC\\u2ACF-\\u2ADB\\u2AE4\\u2AE6-\\u2AE9\\u2AEB-\\u2AF3\\u2AFD\\uFB00-\\uFB04]|\\uD835[\\uDC9C\\uDC9E\\uDC9F\\uDCA2\\uDCA5\\uDCA6\\uDCA9-\\uDCAC\\uDCAE-\\uDCB9\\uDCBB\\uDCBD-\\uDCC3\\uDCC5-\\uDCCF\\uDD04\\uDD05\\uDD07-\\uDD0A\\uDD0D-\\uDD14\\uDD16-\\uDD1C\\uDD1E-\\uDD39\\uDD3B-\\uDD3E\\uDD40-\\uDD44\\uDD46\\uDD4A-\\uDD50\\uDD52-\\uDD6B]/g;\n\tvar encodeMap = {'\\xAD':'shy','\\u200C':'zwnj','\\u200D':'zwj','\\u200E':'lrm','\\u2063':'ic','\\u2062':'it','\\u2061':'af','\\u200F':'rlm','\\u200B':'ZeroWidthSpace','\\u2060':'NoBreak','\\u0311':'DownBreve','\\u20DB':'tdot','\\u20DC':'DotDot','\\t':'Tab','\\n':'NewLine','\\u2008':'puncsp','\\u205F':'MediumSpace','\\u2009':'thinsp','\\u200A':'hairsp','\\u2004':'emsp13','\\u2002':'ensp','\\u2005':'emsp14','\\u2003':'emsp','\\u2007':'numsp','\\xA0':'nbsp','\\u205F\\u200A':'ThickSpace','\\u203E':'oline','_':'lowbar','\\u2010':'dash','\\u2013':'ndash','\\u2014':'mdash','\\u2015':'horbar',',':'comma',';':'semi','\\u204F':'bsemi',':':'colon','\\u2A74':'Colone','!':'excl','\\xA1':'iexcl','?':'quest','\\xBF':'iquest','.':'period','\\u2025':'nldr','\\u2026':'mldr','\\xB7':'middot','\\'':'apos','\\u2018':'lsquo','\\u2019':'rsquo','\\u201A':'sbquo','\\u2039':'lsaquo','\\u203A':'rsaquo','\"':'quot','\\u201C':'ldquo','\\u201D':'rdquo','\\u201E':'bdquo','\\xAB':'laquo','\\xBB':'raquo','(':'lpar',')':'rpar','[':'lsqb',']':'rsqb','{':'lcub','}':'rcub','\\u2308':'lceil','\\u2309':'rceil','\\u230A':'lfloor','\\u230B':'rfloor','\\u2985':'lopar','\\u2986':'ropar','\\u298B':'lbrke','\\u298C':'rbrke','\\u298D':'lbrkslu','\\u298E':'rbrksld','\\u298F':'lbrksld','\\u2990':'rbrkslu','\\u2991':'langd','\\u2992':'rangd','\\u2993':'lparlt','\\u2994':'rpargt','\\u2995':'gtlPar','\\u2996':'ltrPar','\\u27E6':'lobrk','\\u27E7':'robrk','\\u27E8':'lang','\\u27E9':'rang','\\u27EA':'Lang','\\u27EB':'Rang','\\u27EC':'loang','\\u27ED':'roang','\\u2772':'lbbrk','\\u2773':'rbbrk','\\u2016':'Vert','\\xA7':'sect','\\xB6':'para','@':'commat','*':'ast','/':'sol','undefined':null,'&':'amp','#':'num','%':'percnt','\\u2030':'permil','\\u2031':'pertenk','\\u2020':'dagger','\\u2021':'Dagger','\\u2022':'bull','\\u2043':'hybull','\\u2032':'prime','\\u2033':'Prime','\\u2034':'tprime','\\u2057':'qprime','\\u2035':'bprime','\\u2041':'caret','`':'grave','\\xB4':'acute','\\u02DC':'tilde','^':'Hat','\\xAF':'macr','\\u02D8':'breve','\\u02D9':'dot','\\xA8':'die','\\u02DA':'ring','\\u02DD':'dblac','\\xB8':'cedil','\\u02DB':'ogon','\\u02C6':'circ','\\u02C7':'caron','\\xB0':'deg','\\xA9':'copy','\\xAE':'reg','\\u2117':'copysr','\\u2118':'wp','\\u211E':'rx','\\u2127':'mho','\\u2129':'iiota','\\u2190':'larr','\\u219A':'nlarr','\\u2192':'rarr','\\u219B':'nrarr','\\u2191':'uarr','\\u2193':'darr','\\u2194':'harr','\\u21AE':'nharr','\\u2195':'varr','\\u2196':'nwarr','\\u2197':'nearr','\\u2198':'searr','\\u2199':'swarr','\\u219D':'rarrw','\\u219D\\u0338':'nrarrw','\\u219E':'Larr','\\u219F':'Uarr','\\u21A0':'Rarr','\\u21A1':'Darr','\\u21A2':'larrtl','\\u21A3':'rarrtl','\\u21A4':'mapstoleft','\\u21A5':'mapstoup','\\u21A6':'map','\\u21A7':'mapstodown','\\u21A9':'larrhk','\\u21AA':'rarrhk','\\u21AB':'larrlp','\\u21AC':'rarrlp','\\u21AD':'harrw','\\u21B0':'lsh','\\u21B1':'rsh','\\u21B2':'ldsh','\\u21B3':'rdsh','\\u21B5':'crarr','\\u21B6':'cularr','\\u21B7':'curarr','\\u21BA':'olarr','\\u21BB':'orarr','\\u21BC':'lharu','\\u21BD':'lhard','\\u21BE':'uharr','\\u21BF':'uharl','\\u21C0':'rharu','\\u21C1':'rhard','\\u21C2':'dharr','\\u21C3':'dharl','\\u21C4':'rlarr','\\u21C5':'udarr','\\u21C6':'lrarr','\\u21C7':'llarr','\\u21C8':'uuarr','\\u21C9':'rrarr','\\u21CA':'ddarr','\\u21CB':'lrhar','\\u21CC':'rlhar','\\u21D0':'lArr','\\u21CD':'nlArr','\\u21D1':'uArr','\\u21D2':'rArr','\\u21CF':'nrArr','\\u21D3':'dArr','\\u21D4':'iff','\\u21CE':'nhArr','\\u21D5':'vArr','\\u21D6':'nwArr','\\u21D7':'neArr','\\u21D8':'seArr','\\u21D9':'swArr','\\u21DA':'lAarr','\\u21DB':'rAarr','\\u21DD':'zigrarr','\\u21E4':'larrb','\\u21E5':'rarrb','\\u21F5':'duarr','\\u21FD':'loarr','\\u21FE':'roarr','\\u21FF':'hoarr','\\u2200':'forall','\\u2201':'comp','\\u2202':'part','\\u2202\\u0338':'npart','\\u2203':'exist','\\u2204':'nexist','\\u2205':'empty','\\u2207':'Del','\\u2208':'in','\\u2209':'notin','\\u220B':'ni','\\u220C':'notni','\\u03F6':'bepsi','\\u220F':'prod','\\u2210':'coprod','\\u2211':'sum','+':'plus','\\xB1':'pm','\\xF7':'div','\\xD7':'times','<':'lt','\\u226E':'nlt','<\\u20D2':'nvlt','=':'equals','\\u2260':'ne','=\\u20E5':'bne','\\u2A75':'Equal','>':'gt','\\u226F':'ngt','>\\u20D2':'nvgt','\\xAC':'not','|':'vert','\\xA6':'brvbar','\\u2212':'minus','\\u2213':'mp','\\u2214':'plusdo','\\u2044':'frasl','\\u2216':'setmn','\\u2217':'lowast','\\u2218':'compfn','\\u221A':'Sqrt','\\u221D':'prop','\\u221E':'infin','\\u221F':'angrt','\\u2220':'ang','\\u2220\\u20D2':'nang','\\u2221':'angmsd','\\u2222':'angsph','\\u2223':'mid','\\u2224':'nmid','\\u2225':'par','\\u2226':'npar','\\u2227':'and','\\u2228':'or','\\u2229':'cap','\\u2229\\uFE00':'caps','\\u222A':'cup','\\u222A\\uFE00':'cups','\\u222B':'int','\\u222C':'Int','\\u222D':'tint','\\u2A0C':'qint','\\u222E':'oint','\\u222F':'Conint','\\u2230':'Cconint','\\u2231':'cwint','\\u2232':'cwconint','\\u2233':'awconint','\\u2234':'there4','\\u2235':'becaus','\\u2236':'ratio','\\u2237':'Colon','\\u2238':'minusd','\\u223A':'mDDot','\\u223B':'homtht','\\u223C':'sim','\\u2241':'nsim','\\u223C\\u20D2':'nvsim','\\u223D':'bsim','\\u223D\\u0331':'race','\\u223E':'ac','\\u223E\\u0333':'acE','\\u223F':'acd','\\u2240':'wr','\\u2242':'esim','\\u2242\\u0338':'nesim','\\u2243':'sime','\\u2244':'nsime','\\u2245':'cong','\\u2247':'ncong','\\u2246':'simne','\\u2248':'ap','\\u2249':'nap','\\u224A':'ape','\\u224B':'apid','\\u224B\\u0338':'napid','\\u224C':'bcong','\\u224D':'CupCap','\\u226D':'NotCupCap','\\u224D\\u20D2':'nvap','\\u224E':'bump','\\u224E\\u0338':'nbump','\\u224F':'bumpe','\\u224F\\u0338':'nbumpe','\\u2250':'doteq','\\u2250\\u0338':'nedot','\\u2251':'eDot','\\u2252':'efDot','\\u2253':'erDot','\\u2254':'colone','\\u2255':'ecolon','\\u2256':'ecir','\\u2257':'cire','\\u2259':'wedgeq','\\u225A':'veeeq','\\u225C':'trie','\\u225F':'equest','\\u2261':'equiv','\\u2262':'nequiv','\\u2261\\u20E5':'bnequiv','\\u2264':'le','\\u2270':'nle','\\u2264\\u20D2':'nvle','\\u2265':'ge','\\u2271':'nge','\\u2265\\u20D2':'nvge','\\u2266':'lE','\\u2266\\u0338':'nlE','\\u2267':'gE','\\u2267\\u0338':'ngE','\\u2268\\uFE00':'lvnE','\\u2268':'lnE','\\u2269':'gnE','\\u2269\\uFE00':'gvnE','\\u226A':'ll','\\u226A\\u0338':'nLtv','\\u226A\\u20D2':'nLt','\\u226B':'gg','\\u226B\\u0338':'nGtv','\\u226B\\u20D2':'nGt','\\u226C':'twixt','\\u2272':'lsim','\\u2274':'nlsim','\\u2273':'gsim','\\u2275':'ngsim','\\u2276':'lg','\\u2278':'ntlg','\\u2277':'gl','\\u2279':'ntgl','\\u227A':'pr','\\u2280':'npr','\\u227B':'sc','\\u2281':'nsc','\\u227C':'prcue','\\u22E0':'nprcue','\\u227D':'sccue','\\u22E1':'nsccue','\\u227E':'prsim','\\u227F':'scsim','\\u227F\\u0338':'NotSucceedsTilde','\\u2282':'sub','\\u2284':'nsub','\\u2282\\u20D2':'vnsub','\\u2283':'sup','\\u2285':'nsup','\\u2283\\u20D2':'vnsup','\\u2286':'sube','\\u2288':'nsube','\\u2287':'supe','\\u2289':'nsupe','\\u228A\\uFE00':'vsubne','\\u228A':'subne','\\u228B\\uFE00':'vsupne','\\u228B':'supne','\\u228D':'cupdot','\\u228E':'uplus','\\u228F':'sqsub','\\u228F\\u0338':'NotSquareSubset','\\u2290':'sqsup','\\u2290\\u0338':'NotSquareSuperset','\\u2291':'sqsube','\\u22E2':'nsqsube','\\u2292':'sqsupe','\\u22E3':'nsqsupe','\\u2293':'sqcap','\\u2293\\uFE00':'sqcaps','\\u2294':'sqcup','\\u2294\\uFE00':'sqcups','\\u2295':'oplus','\\u2296':'ominus','\\u2297':'otimes','\\u2298':'osol','\\u2299':'odot','\\u229A':'ocir','\\u229B':'oast','\\u229D':'odash','\\u229E':'plusb','\\u229F':'minusb','\\u22A0':'timesb','\\u22A1':'sdotb','\\u22A2':'vdash','\\u22AC':'nvdash','\\u22A3':'dashv','\\u22A4':'top','\\u22A5':'bot','\\u22A7':'models','\\u22A8':'vDash','\\u22AD':'nvDash','\\u22A9':'Vdash','\\u22AE':'nVdash','\\u22AA':'Vvdash','\\u22AB':'VDash','\\u22AF':'nVDash','\\u22B0':'prurel','\\u22B2':'vltri','\\u22EA':'nltri','\\u22B3':'vrtri','\\u22EB':'nrtri','\\u22B4':'ltrie','\\u22EC':'nltrie','\\u22B4\\u20D2':'nvltrie','\\u22B5':'rtrie','\\u22ED':'nrtrie','\\u22B5\\u20D2':'nvrtrie','\\u22B6':'origof','\\u22B7':'imof','\\u22B8':'mumap','\\u22B9':'hercon','\\u22BA':'intcal','\\u22BB':'veebar','\\u22BD':'barvee','\\u22BE':'angrtvb','\\u22BF':'lrtri','\\u22C0':'Wedge','\\u22C1':'Vee','\\u22C2':'xcap','\\u22C3':'xcup','\\u22C4':'diam','\\u22C5':'sdot','\\u22C6':'Star','\\u22C7':'divonx','\\u22C8':'bowtie','\\u22C9':'ltimes','\\u22CA':'rtimes','\\u22CB':'lthree','\\u22CC':'rthree','\\u22CD':'bsime','\\u22CE':'cuvee','\\u22CF':'cuwed','\\u22D0':'Sub','\\u22D1':'Sup','\\u22D2':'Cap','\\u22D3':'Cup','\\u22D4':'fork','\\u22D5':'epar','\\u22D6':'ltdot','\\u22D7':'gtdot','\\u22D8':'Ll','\\u22D8\\u0338':'nLl','\\u22D9':'Gg','\\u22D9\\u0338':'nGg','\\u22DA\\uFE00':'lesg','\\u22DA':'leg','\\u22DB':'gel','\\u22DB\\uFE00':'gesl','\\u22DE':'cuepr','\\u22DF':'cuesc','\\u22E6':'lnsim','\\u22E7':'gnsim','\\u22E8':'prnsim','\\u22E9':'scnsim','\\u22EE':'vellip','\\u22EF':'ctdot','\\u22F0':'utdot','\\u22F1':'dtdot','\\u22F2':'disin','\\u22F3':'isinsv','\\u22F4':'isins','\\u22F5':'isindot','\\u22F5\\u0338':'notindot','\\u22F6':'notinvc','\\u22F7':'notinvb','\\u22F9':'isinE','\\u22F9\\u0338':'notinE','\\u22FA':'nisd','\\u22FB':'xnis','\\u22FC':'nis','\\u22FD':'notnivc','\\u22FE':'notnivb','\\u2305':'barwed','\\u2306':'Barwed','\\u230C':'drcrop','\\u230D':'dlcrop','\\u230E':'urcrop','\\u230F':'ulcrop','\\u2310':'bnot','\\u2312':'profline','\\u2313':'profsurf','\\u2315':'telrec','\\u2316':'target','\\u231C':'ulcorn','\\u231D':'urcorn','\\u231E':'dlcorn','\\u231F':'drcorn','\\u2322':'frown','\\u2323':'smile','\\u232D':'cylcty','\\u232E':'profalar','\\u2336':'topbot','\\u233D':'ovbar','\\u233F':'solbar','\\u237C':'angzarr','\\u23B0':'lmoust','\\u23B1':'rmoust','\\u23B4':'tbrk','\\u23B5':'bbrk','\\u23B6':'bbrktbrk','\\u23DC':'OverParenthesis','\\u23DD':'UnderParenthesis','\\u23DE':'OverBrace','\\u23DF':'UnderBrace','\\u23E2':'trpezium','\\u23E7':'elinters','\\u2423':'blank','\\u2500':'boxh','\\u2502':'boxv','\\u250C':'boxdr','\\u2510':'boxdl','\\u2514':'boxur','\\u2518':'boxul','\\u251C':'boxvr','\\u2524':'boxvl','\\u252C':'boxhd','\\u2534':'boxhu','\\u253C':'boxvh','\\u2550':'boxH','\\u2551':'boxV','\\u2552':'boxdR','\\u2553':'boxDr','\\u2554':'boxDR','\\u2555':'boxdL','\\u2556':'boxDl','\\u2557':'boxDL','\\u2558':'boxuR','\\u2559':'boxUr','\\u255A':'boxUR','\\u255B':'boxuL','\\u255C':'boxUl','\\u255D':'boxUL','\\u255E':'boxvR','\\u255F':'boxVr','\\u2560':'boxVR','\\u2561':'boxvL','\\u2562':'boxVl','\\u2563':'boxVL','\\u2564':'boxHd','\\u2565':'boxhD','\\u2566':'boxHD','\\u2567':'boxHu','\\u2568':'boxhU','\\u2569':'boxHU','\\u256A':'boxvH','\\u256B':'boxVh','\\u256C':'boxVH','\\u2580':'uhblk','\\u2584':'lhblk','\\u2588':'block','\\u2591':'blk14','\\u2592':'blk12','\\u2593':'blk34','\\u25A1':'squ','\\u25AA':'squf','\\u25AB':'EmptyVerySmallSquare','\\u25AD':'rect','\\u25AE':'marker','\\u25B1':'fltns','\\u25B3':'xutri','\\u25B4':'utrif','\\u25B5':'utri','\\u25B8':'rtrif','\\u25B9':'rtri','\\u25BD':'xdtri','\\u25BE':'dtrif','\\u25BF':'dtri','\\u25C2':'ltrif','\\u25C3':'ltri','\\u25CA':'loz','\\u25CB':'cir','\\u25EC':'tridot','\\u25EF':'xcirc','\\u25F8':'ultri','\\u25F9':'urtri','\\u25FA':'lltri','\\u25FB':'EmptySmallSquare','\\u25FC':'FilledSmallSquare','\\u2605':'starf','\\u2606':'star','\\u260E':'phone','\\u2640':'female','\\u2642':'male','\\u2660':'spades','\\u2663':'clubs','\\u2665':'hearts','\\u2666':'diams','\\u266A':'sung','\\u2713':'check','\\u2717':'cross','\\u2720':'malt','\\u2736':'sext','\\u2758':'VerticalSeparator','\\u27C8':'bsolhsub','\\u27C9':'suphsol','\\u27F5':'xlarr','\\u27F6':'xrarr','\\u27F7':'xharr','\\u27F8':'xlArr','\\u27F9':'xrArr','\\u27FA':'xhArr','\\u27FC':'xmap','\\u27FF':'dzigrarr','\\u2902':'nvlArr','\\u2903':'nvrArr','\\u2904':'nvHarr','\\u2905':'Map','\\u290C':'lbarr','\\u290D':'rbarr','\\u290E':'lBarr','\\u290F':'rBarr','\\u2910':'RBarr','\\u2911':'DDotrahd','\\u2912':'UpArrowBar','\\u2913':'DownArrowBar','\\u2916':'Rarrtl','\\u2919':'latail','\\u291A':'ratail','\\u291B':'lAtail','\\u291C':'rAtail','\\u291D':'larrfs','\\u291E':'rarrfs','\\u291F':'larrbfs','\\u2920':'rarrbfs','\\u2923':'nwarhk','\\u2924':'nearhk','\\u2925':'searhk','\\u2926':'swarhk','\\u2927':'nwnear','\\u2928':'toea','\\u2929':'tosa','\\u292A':'swnwar','\\u2933':'rarrc','\\u2933\\u0338':'nrarrc','\\u2935':'cudarrr','\\u2936':'ldca','\\u2937':'rdca','\\u2938':'cudarrl','\\u2939':'larrpl','\\u293C':'curarrm','\\u293D':'cularrp','\\u2945':'rarrpl','\\u2948':'harrcir','\\u2949':'Uarrocir','\\u294A':'lurdshar','\\u294B':'ldrushar','\\u294E':'LeftRightVector','\\u294F':'RightUpDownVector','\\u2950':'DownLeftRightVector','\\u2951':'LeftUpDownVector','\\u2952':'LeftVectorBar','\\u2953':'RightVectorBar','\\u2954':'RightUpVectorBar','\\u2955':'RightDownVectorBar','\\u2956':'DownLeftVectorBar','\\u2957':'DownRightVectorBar','\\u2958':'LeftUpVectorBar','\\u2959':'LeftDownVectorBar','\\u295A':'LeftTeeVector','\\u295B':'RightTeeVector','\\u295C':'RightUpTeeVector','\\u295D':'RightDownTeeVector','\\u295E':'DownLeftTeeVector','\\u295F':'DownRightTeeVector','\\u2960':'LeftUpTeeVector','\\u2961':'LeftDownTeeVector','\\u2962':'lHar','\\u2963':'uHar','\\u2964':'rHar','\\u2965':'dHar','\\u2966':'luruhar','\\u2967':'ldrdhar','\\u2968':'ruluhar','\\u2969':'rdldhar','\\u296A':'lharul','\\u296B':'llhard','\\u296C':'rharul','\\u296D':'lrhard','\\u296E':'udhar','\\u296F':'duhar','\\u2970':'RoundImplies','\\u2971':'erarr','\\u2972':'simrarr','\\u2973':'larrsim','\\u2974':'rarrsim','\\u2975':'rarrap','\\u2976':'ltlarr','\\u2978':'gtrarr','\\u2979':'subrarr','\\u297B':'suplarr','\\u297C':'lfisht','\\u297D':'rfisht','\\u297E':'ufisht','\\u297F':'dfisht','\\u299A':'vzigzag','\\u299C':'vangrt','\\u299D':'angrtvbd','\\u29A4':'ange','\\u29A5':'range','\\u29A6':'dwangle','\\u29A7':'uwangle','\\u29A8':'angmsdaa','\\u29A9':'angmsdab','\\u29AA':'angmsdac','\\u29AB':'angmsdad','\\u29AC':'angmsdae','\\u29AD':'angmsdaf','\\u29AE':'angmsdag','\\u29AF':'angmsdah','\\u29B0':'bemptyv','\\u29B1':'demptyv','\\u29B2':'cemptyv','\\u29B3':'raemptyv','\\u29B4':'laemptyv','\\u29B5':'ohbar','\\u29B6':'omid','\\u29B7':'opar','\\u29B9':'operp','\\u29BB':'olcross','\\u29BC':'odsold','\\u29BE':'olcir','\\u29BF':'ofcir','\\u29C0':'olt','\\u29C1':'ogt','\\u29C2':'cirscir','\\u29C3':'cirE','\\u29C4':'solb','\\u29C5':'bsolb','\\u29C9':'boxbox','\\u29CD':'trisb','\\u29CE':'rtriltri','\\u29CF':'LeftTriangleBar','\\u29CF\\u0338':'NotLeftTriangleBar','\\u29D0':'RightTriangleBar','\\u29D0\\u0338':'NotRightTriangleBar','\\u29DC':'iinfin','\\u29DD':'infintie','\\u29DE':'nvinfin','\\u29E3':'eparsl','\\u29E4':'smeparsl','\\u29E5':'eqvparsl','\\u29EB':'lozf','\\u29F4':'RuleDelayed','\\u29F6':'dsol','\\u2A00':'xodot','\\u2A01':'xoplus','\\u2A02':'xotime','\\u2A04':'xuplus','\\u2A06':'xsqcup','\\u2A0D':'fpartint','\\u2A10':'cirfnint','\\u2A11':'awint','\\u2A12':'rppolint','\\u2A13':'scpolint','\\u2A14':'npolint','\\u2A15':'pointint','\\u2A16':'quatint','\\u2A17':'intlarhk','\\u2A22':'pluscir','\\u2A23':'plusacir','\\u2A24':'simplus','\\u2A25':'plusdu','\\u2A26':'plussim','\\u2A27':'plustwo','\\u2A29':'mcomma','\\u2A2A':'minusdu','\\u2A2D':'loplus','\\u2A2E':'roplus','\\u2A2F':'Cross','\\u2A30':'timesd','\\u2A31':'timesbar','\\u2A33':'smashp','\\u2A34':'lotimes','\\u2A35':'rotimes','\\u2A36':'otimesas','\\u2A37':'Otimes','\\u2A38':'odiv','\\u2A39':'triplus','\\u2A3A':'triminus','\\u2A3B':'tritime','\\u2A3C':'iprod','\\u2A3F':'amalg','\\u2A40':'capdot','\\u2A42':'ncup','\\u2A43':'ncap','\\u2A44':'capand','\\u2A45':'cupor','\\u2A46':'cupcap','\\u2A47':'capcup','\\u2A48':'cupbrcap','\\u2A49':'capbrcup','\\u2A4A':'cupcup','\\u2A4B':'capcap','\\u2A4C':'ccups','\\u2A4D':'ccaps','\\u2A50':'ccupssm','\\u2A53':'And','\\u2A54':'Or','\\u2A55':'andand','\\u2A56':'oror','\\u2A57':'orslope','\\u2A58':'andslope','\\u2A5A':'andv','\\u2A5B':'orv','\\u2A5C':'andd','\\u2A5D':'ord','\\u2A5F':'wedbar','\\u2A66':'sdote','\\u2A6A':'simdot','\\u2A6D':'congdot','\\u2A6D\\u0338':'ncongdot','\\u2A6E':'easter','\\u2A6F':'apacir','\\u2A70':'apE','\\u2A70\\u0338':'napE','\\u2A71':'eplus','\\u2A72':'pluse','\\u2A73':'Esim','\\u2A77':'eDDot','\\u2A78':'equivDD','\\u2A79':'ltcir','\\u2A7A':'gtcir','\\u2A7B':'ltquest','\\u2A7C':'gtquest','\\u2A7D':'les','\\u2A7D\\u0338':'nles','\\u2A7E':'ges','\\u2A7E\\u0338':'nges','\\u2A7F':'lesdot','\\u2A80':'gesdot','\\u2A81':'lesdoto','\\u2A82':'gesdoto','\\u2A83':'lesdotor','\\u2A84':'gesdotol','\\u2A85':'lap','\\u2A86':'gap','\\u2A87':'lne','\\u2A88':'gne','\\u2A89':'lnap','\\u2A8A':'gnap','\\u2A8B':'lEg','\\u2A8C':'gEl','\\u2A8D':'lsime','\\u2A8E':'gsime','\\u2A8F':'lsimg','\\u2A90':'gsiml','\\u2A91':'lgE','\\u2A92':'glE','\\u2A93':'lesges','\\u2A94':'gesles','\\u2A95':'els','\\u2A96':'egs','\\u2A97':'elsdot','\\u2A98':'egsdot','\\u2A99':'el','\\u2A9A':'eg','\\u2A9D':'siml','\\u2A9E':'simg','\\u2A9F':'simlE','\\u2AA0':'simgE','\\u2AA1':'LessLess','\\u2AA1\\u0338':'NotNestedLessLess','\\u2AA2':'GreaterGreater','\\u2AA2\\u0338':'NotNestedGreaterGreater','\\u2AA4':'glj','\\u2AA5':'gla','\\u2AA6':'ltcc','\\u2AA7':'gtcc','\\u2AA8':'lescc','\\u2AA9':'gescc','\\u2AAA':'smt','\\u2AAB':'lat','\\u2AAC':'smte','\\u2AAC\\uFE00':'smtes','\\u2AAD':'late','\\u2AAD\\uFE00':'lates','\\u2AAE':'bumpE','\\u2AAF':'pre','\\u2AAF\\u0338':'npre','\\u2AB0':'sce','\\u2AB0\\u0338':'nsce','\\u2AB3':'prE','\\u2AB4':'scE','\\u2AB5':'prnE','\\u2AB6':'scnE','\\u2AB7':'prap','\\u2AB8':'scap','\\u2AB9':'prnap','\\u2ABA':'scnap','\\u2ABB':'Pr','\\u2ABC':'Sc','\\u2ABD':'subdot','\\u2ABE':'supdot','\\u2ABF':'subplus','\\u2AC0':'supplus','\\u2AC1':'submult','\\u2AC2':'supmult','\\u2AC3':'subedot','\\u2AC4':'supedot','\\u2AC5':'subE','\\u2AC5\\u0338':'nsubE','\\u2AC6':'supE','\\u2AC6\\u0338':'nsupE','\\u2AC7':'subsim','\\u2AC8':'supsim','\\u2ACB\\uFE00':'vsubnE','\\u2ACB':'subnE','\\u2ACC\\uFE00':'vsupnE','\\u2ACC':'supnE','\\u2ACF':'csub','\\u2AD0':'csup','\\u2AD1':'csube','\\u2AD2':'csupe','\\u2AD3':'subsup','\\u2AD4':'supsub','\\u2AD5':'subsub','\\u2AD6':'supsup','\\u2AD7':'suphsub','\\u2AD8':'supdsub','\\u2AD9':'forkv','\\u2ADA':'topfork','\\u2ADB':'mlcp','\\u2AE4':'Dashv','\\u2AE6':'Vdashl','\\u2AE7':'Barv','\\u2AE8':'vBar','\\u2AE9':'vBarv','\\u2AEB':'Vbar','\\u2AEC':'Not','\\u2AED':'bNot','\\u2AEE':'rnmid','\\u2AEF':'cirmid','\\u2AF0':'midcir','\\u2AF1':'topcir','\\u2AF2':'nhpar','\\u2AF3':'parsim','\\u2AFD':'parsl','\\u2AFD\\u20E5':'nparsl','\\u266D':'flat','\\u266E':'natur','\\u266F':'sharp','\\xA4':'curren','\\xA2':'cent','$':'dollar','\\xA3':'pound','\\xA5':'yen','\\u20AC':'euro','\\xB9':'sup1','\\xBD':'half','\\u2153':'frac13','\\xBC':'frac14','\\u2155':'frac15','\\u2159':'frac16','\\u215B':'frac18','\\xB2':'sup2','\\u2154':'frac23','\\u2156':'frac25','\\xB3':'sup3','\\xBE':'frac34','\\u2157':'frac35','\\u215C':'frac38','\\u2158':'frac45','\\u215A':'frac56','\\u215D':'frac58','\\u215E':'frac78','\\uD835\\uDCB6':'ascr','\\uD835\\uDD52':'aopf','\\uD835\\uDD1E':'afr','\\uD835\\uDD38':'Aopf','\\uD835\\uDD04':'Afr','\\uD835\\uDC9C':'Ascr','\\xAA':'ordf','\\xE1':'aacute','\\xC1':'Aacute','\\xE0':'agrave','\\xC0':'Agrave','\\u0103':'abreve','\\u0102':'Abreve','\\xE2':'acirc','\\xC2':'Acirc','\\xE5':'aring','\\xC5':'angst','\\xE4':'auml','\\xC4':'Auml','\\xE3':'atilde','\\xC3':'Atilde','\\u0105':'aogon','\\u0104':'Aogon','\\u0101':'amacr','\\u0100':'Amacr','\\xE6':'aelig','\\xC6':'AElig','\\uD835\\uDCB7':'bscr','\\uD835\\uDD53':'bopf','\\uD835\\uDD1F':'bfr','\\uD835\\uDD39':'Bopf','\\u212C':'Bscr','\\uD835\\uDD05':'Bfr','\\uD835\\uDD20':'cfr','\\uD835\\uDCB8':'cscr','\\uD835\\uDD54':'copf','\\u212D':'Cfr','\\uD835\\uDC9E':'Cscr','\\u2102':'Copf','\\u0107':'cacute','\\u0106':'Cacute','\\u0109':'ccirc','\\u0108':'Ccirc','\\u010D':'ccaron','\\u010C':'Ccaron','\\u010B':'cdot','\\u010A':'Cdot','\\xE7':'ccedil','\\xC7':'Ccedil','\\u2105':'incare','\\uD835\\uDD21':'dfr','\\u2146':'dd','\\uD835\\uDD55':'dopf','\\uD835\\uDCB9':'dscr','\\uD835\\uDC9F':'Dscr','\\uD835\\uDD07':'Dfr','\\u2145':'DD','\\uD835\\uDD3B':'Dopf','\\u010F':'dcaron','\\u010E':'Dcaron','\\u0111':'dstrok','\\u0110':'Dstrok','\\xF0':'eth','\\xD0':'ETH','\\u2147':'ee','\\u212F':'escr','\\uD835\\uDD22':'efr','\\uD835\\uDD56':'eopf','\\u2130':'Escr','\\uD835\\uDD08':'Efr','\\uD835\\uDD3C':'Eopf','\\xE9':'eacute','\\xC9':'Eacute','\\xE8':'egrave','\\xC8':'Egrave','\\xEA':'ecirc','\\xCA':'Ecirc','\\u011B':'ecaron','\\u011A':'Ecaron','\\xEB':'euml','\\xCB':'Euml','\\u0117':'edot','\\u0116':'Edot','\\u0119':'eogon','\\u0118':'Eogon','\\u0113':'emacr','\\u0112':'Emacr','\\uD835\\uDD23':'ffr','\\uD835\\uDD57':'fopf','\\uD835\\uDCBB':'fscr','\\uD835\\uDD09':'Ffr','\\uD835\\uDD3D':'Fopf','\\u2131':'Fscr','\\uFB00':'fflig','\\uFB03':'ffilig','\\uFB04':'ffllig','\\uFB01':'filig','fj':'fjlig','\\uFB02':'fllig','\\u0192':'fnof','\\u210A':'gscr','\\uD835\\uDD58':'gopf','\\uD835\\uDD24':'gfr','\\uD835\\uDCA2':'Gscr','\\uD835\\uDD3E':'Gopf','\\uD835\\uDD0A':'Gfr','\\u01F5':'gacute','\\u011F':'gbreve','\\u011E':'Gbreve','\\u011D':'gcirc','\\u011C':'Gcirc','\\u0121':'gdot','\\u0120':'Gdot','\\u0122':'Gcedil','\\uD835\\uDD25':'hfr','\\u210E':'planckh','\\uD835\\uDCBD':'hscr','\\uD835\\uDD59':'hopf','\\u210B':'Hscr','\\u210C':'Hfr','\\u210D':'Hopf','\\u0125':'hcirc','\\u0124':'Hcirc','\\u210F':'hbar','\\u0127':'hstrok','\\u0126':'Hstrok','\\uD835\\uDD5A':'iopf','\\uD835\\uDD26':'ifr','\\uD835\\uDCBE':'iscr','\\u2148':'ii','\\uD835\\uDD40':'Iopf','\\u2110':'Iscr','\\u2111':'Im','\\xED':'iacute','\\xCD':'Iacute','\\xEC':'igrave','\\xCC':'Igrave','\\xEE':'icirc','\\xCE':'Icirc','\\xEF':'iuml','\\xCF':'Iuml','\\u0129':'itilde','\\u0128':'Itilde','\\u0130':'Idot','\\u012F':'iogon','\\u012E':'Iogon','\\u012B':'imacr','\\u012A':'Imacr','\\u0133':'ijlig','\\u0132':'IJlig','\\u0131':'imath','\\uD835\\uDCBF':'jscr','\\uD835\\uDD5B':'jopf','\\uD835\\uDD27':'jfr','\\uD835\\uDCA5':'Jscr','\\uD835\\uDD0D':'Jfr','\\uD835\\uDD41':'Jopf','\\u0135':'jcirc','\\u0134':'Jcirc','\\u0237':'jmath','\\uD835\\uDD5C':'kopf','\\uD835\\uDCC0':'kscr','\\uD835\\uDD28':'kfr','\\uD835\\uDCA6':'Kscr','\\uD835\\uDD42':'Kopf','\\uD835\\uDD0E':'Kfr','\\u0137':'kcedil','\\u0136':'Kcedil','\\uD835\\uDD29':'lfr','\\uD835\\uDCC1':'lscr','\\u2113':'ell','\\uD835\\uDD5D':'lopf','\\u2112':'Lscr','\\uD835\\uDD0F':'Lfr','\\uD835\\uDD43':'Lopf','\\u013A':'lacute','\\u0139':'Lacute','\\u013E':'lcaron','\\u013D':'Lcaron','\\u013C':'lcedil','\\u013B':'Lcedil','\\u0142':'lstrok','\\u0141':'Lstrok','\\u0140':'lmidot','\\u013F':'Lmidot','\\uD835\\uDD2A':'mfr','\\uD835\\uDD5E':'mopf','\\uD835\\uDCC2':'mscr','\\uD835\\uDD10':'Mfr','\\uD835\\uDD44':'Mopf','\\u2133':'Mscr','\\uD835\\uDD2B':'nfr','\\uD835\\uDD5F':'nopf','\\uD835\\uDCC3':'nscr','\\u2115':'Nopf','\\uD835\\uDCA9':'Nscr','\\uD835\\uDD11':'Nfr','\\u0144':'nacute','\\u0143':'Nacute','\\u0148':'ncaron','\\u0147':'Ncaron','\\xF1':'ntilde','\\xD1':'Ntilde','\\u0146':'ncedil','\\u0145':'Ncedil','\\u2116':'numero','\\u014B':'eng','\\u014A':'ENG','\\uD835\\uDD60':'oopf','\\uD835\\uDD2C':'ofr','\\u2134':'oscr','\\uD835\\uDCAA':'Oscr','\\uD835\\uDD12':'Ofr','\\uD835\\uDD46':'Oopf','\\xBA':'ordm','\\xF3':'oacute','\\xD3':'Oacute','\\xF2':'ograve','\\xD2':'Ograve','\\xF4':'ocirc','\\xD4':'Ocirc','\\xF6':'ouml','\\xD6':'Ouml','\\u0151':'odblac','\\u0150':'Odblac','\\xF5':'otilde','\\xD5':'Otilde','\\xF8':'oslash','\\xD8':'Oslash','\\u014D':'omacr','\\u014C':'Omacr','\\u0153':'oelig','\\u0152':'OElig','\\uD835\\uDD2D':'pfr','\\uD835\\uDCC5':'pscr','\\uD835\\uDD61':'popf','\\u2119':'Popf','\\uD835\\uDD13':'Pfr','\\uD835\\uDCAB':'Pscr','\\uD835\\uDD62':'qopf','\\uD835\\uDD2E':'qfr','\\uD835\\uDCC6':'qscr','\\uD835\\uDCAC':'Qscr','\\uD835\\uDD14':'Qfr','\\u211A':'Qopf','\\u0138':'kgreen','\\uD835\\uDD2F':'rfr','\\uD835\\uDD63':'ropf','\\uD835\\uDCC7':'rscr','\\u211B':'Rscr','\\u211C':'Re','\\u211D':'Ropf','\\u0155':'racute','\\u0154':'Racute','\\u0159':'rcaron','\\u0158':'Rcaron','\\u0157':'rcedil','\\u0156':'Rcedil','\\uD835\\uDD64':'sopf','\\uD835\\uDCC8':'sscr','\\uD835\\uDD30':'sfr','\\uD835\\uDD4A':'Sopf','\\uD835\\uDD16':'Sfr','\\uD835\\uDCAE':'Sscr','\\u24C8':'oS','\\u015B':'sacute','\\u015A':'Sacute','\\u015D':'scirc','\\u015C':'Scirc','\\u0161':'scaron','\\u0160':'Scaron','\\u015F':'scedil','\\u015E':'Scedil','\\xDF':'szlig','\\uD835\\uDD31':'tfr','\\uD835\\uDCC9':'tscr','\\uD835\\uDD65':'topf','\\uD835\\uDCAF':'Tscr','\\uD835\\uDD17':'Tfr','\\uD835\\uDD4B':'Topf','\\u0165':'tcaron','\\u0164':'Tcaron','\\u0163':'tcedil','\\u0162':'Tcedil','\\u2122':'trade','\\u0167':'tstrok','\\u0166':'Tstrok','\\uD835\\uDCCA':'uscr','\\uD835\\uDD66':'uopf','\\uD835\\uDD32':'ufr','\\uD835\\uDD4C':'Uopf','\\uD835\\uDD18':'Ufr','\\uD835\\uDCB0':'Uscr','\\xFA':'uacute','\\xDA':'Uacute','\\xF9':'ugrave','\\xD9':'Ugrave','\\u016D':'ubreve','\\u016C':'Ubreve','\\xFB':'ucirc','\\xDB':'Ucirc','\\u016F':'uring','\\u016E':'Uring','\\xFC':'uuml','\\xDC':'Uuml','\\u0171':'udblac','\\u0170':'Udblac','\\u0169':'utilde','\\u0168':'Utilde','\\u0173':'uogon','\\u0172':'Uogon','\\u016B':'umacr','\\u016A':'Umacr','\\uD835\\uDD33':'vfr','\\uD835\\uDD67':'vopf','\\uD835\\uDCCB':'vscr','\\uD835\\uDD19':'Vfr','\\uD835\\uDD4D':'Vopf','\\uD835\\uDCB1':'Vscr','\\uD835\\uDD68':'wopf','\\uD835\\uDCCC':'wscr','\\uD835\\uDD34':'wfr','\\uD835\\uDCB2':'Wscr','\\uD835\\uDD4E':'Wopf','\\uD835\\uDD1A':'Wfr','\\u0175':'wcirc','\\u0174':'Wcirc','\\uD835\\uDD35':'xfr','\\uD835\\uDCCD':'xscr','\\uD835\\uDD69':'xopf','\\uD835\\uDD4F':'Xopf','\\uD835\\uDD1B':'Xfr','\\uD835\\uDCB3':'Xscr','\\uD835\\uDD36':'yfr','\\uD835\\uDCCE':'yscr','\\uD835\\uDD6A':'yopf','\\uD835\\uDCB4':'Yscr','\\uD835\\uDD1C':'Yfr','\\uD835\\uDD50':'Yopf','\\xFD':'yacute','\\xDD':'Yacute','\\u0177':'ycirc','\\u0176':'Ycirc','\\xFF':'yuml','\\u0178':'Yuml','\\uD835\\uDCCF':'zscr','\\uD835\\uDD37':'zfr','\\uD835\\uDD6B':'zopf','\\u2128':'Zfr','\\u2124':'Zopf','\\uD835\\uDCB5':'Zscr','\\u017A':'zacute','\\u0179':'Zacute','\\u017E':'zcaron','\\u017D':'Zcaron','\\u017C':'zdot','\\u017B':'Zdot','\\u01B5':'imped','\\xFE':'thorn','\\xDE':'THORN','\\u0149':'napos','\\u03B1':'alpha','\\u0391':'Alpha','\\u03B2':'beta','\\u0392':'Beta','\\u03B3':'gamma','\\u0393':'Gamma','\\u03B4':'delta','\\u0394':'Delta','\\u03B5':'epsi','\\u03F5':'epsiv','\\u0395':'Epsilon','\\u03DD':'gammad','\\u03DC':'Gammad','\\u03B6':'zeta','\\u0396':'Zeta','\\u03B7':'eta','\\u0397':'Eta','\\u03B8':'theta','\\u03D1':'thetav','\\u0398':'Theta','\\u03B9':'iota','\\u0399':'Iota','\\u03BA':'kappa','\\u03F0':'kappav','\\u039A':'Kappa','\\u03BB':'lambda','\\u039B':'Lambda','\\u03BC':'mu','\\xB5':'micro','\\u039C':'Mu','\\u03BD':'nu','\\u039D':'Nu','\\u03BE':'xi','\\u039E':'Xi','\\u03BF':'omicron','\\u039F':'Omicron','\\u03C0':'pi','\\u03D6':'piv','\\u03A0':'Pi','\\u03C1':'rho','\\u03F1':'rhov','\\u03A1':'Rho','\\u03C3':'sigma','\\u03A3':'Sigma','\\u03C2':'sigmaf','\\u03C4':'tau','\\u03A4':'Tau','\\u03C5':'upsi','\\u03A5':'Upsilon','\\u03D2':'Upsi','\\u03C6':'phi','\\u03D5':'phiv','\\u03A6':'Phi','\\u03C7':'chi','\\u03A7':'Chi','\\u03C8':'psi','\\u03A8':'Psi','\\u03C9':'omega','\\u03A9':'ohm','\\u0430':'acy','\\u0410':'Acy','\\u0431':'bcy','\\u0411':'Bcy','\\u0432':'vcy','\\u0412':'Vcy','\\u0433':'gcy','\\u0413':'Gcy','\\u0453':'gjcy','\\u0403':'GJcy','\\u0434':'dcy','\\u0414':'Dcy','\\u0452':'djcy','\\u0402':'DJcy','\\u0435':'iecy','\\u0415':'IEcy','\\u0451':'iocy','\\u0401':'IOcy','\\u0454':'jukcy','\\u0404':'Jukcy','\\u0436':'zhcy','\\u0416':'ZHcy','\\u0437':'zcy','\\u0417':'Zcy','\\u0455':'dscy','\\u0405':'DScy','\\u0438':'icy','\\u0418':'Icy','\\u0456':'iukcy','\\u0406':'Iukcy','\\u0457':'yicy','\\u0407':'YIcy','\\u0439':'jcy','\\u0419':'Jcy','\\u0458':'jsercy','\\u0408':'Jsercy','\\u043A':'kcy','\\u041A':'Kcy','\\u045C':'kjcy','\\u040C':'KJcy','\\u043B':'lcy','\\u041B':'Lcy','\\u0459':'ljcy','\\u0409':'LJcy','\\u043C':'mcy','\\u041C':'Mcy','\\u043D':'ncy','\\u041D':'Ncy','\\u045A':'njcy','\\u040A':'NJcy','\\u043E':'ocy','\\u041E':'Ocy','\\u043F':'pcy','\\u041F':'Pcy','\\u0440':'rcy','\\u0420':'Rcy','\\u0441':'scy','\\u0421':'Scy','\\u0442':'tcy','\\u0422':'Tcy','\\u045B':'tshcy','\\u040B':'TSHcy','\\u0443':'ucy','\\u0423':'Ucy','\\u045E':'ubrcy','\\u040E':'Ubrcy','\\u0444':'fcy','\\u0424':'Fcy','\\u0445':'khcy','\\u0425':'KHcy','\\u0446':'tscy','\\u0426':'TScy','\\u0447':'chcy','\\u0427':'CHcy','\\u045F':'dzcy','\\u040F':'DZcy','\\u0448':'shcy','\\u0428':'SHcy','\\u0449':'shchcy','\\u0429':'SHCHcy','\\u044A':'hardcy','\\u042A':'HARDcy','\\u044B':'ycy','\\u042B':'Ycy','\\u044C':'softcy','\\u042C':'SOFTcy','\\u044D':'ecy','\\u042D':'Ecy','\\u044E':'yucy','\\u042E':'YUcy','\\u044F':'yacy','\\u042F':'YAcy','\\u2135':'aleph','\\u2136':'beth','\\u2137':'gimel','\\u2138':'daleth'};\n\n\tvar regexEscape = /[\"&'<>`]/g;\n\tvar escapeMap = {\n\t\t'\"': '"',\n\t\t'&': '&',\n\t\t'\\'': ''',\n\t\t'<': '<',\n\t\t// See https://mathiasbynens.be/notes/ambiguous-ampersands: in HTML, the\n\t\t// following is not strictly necessary unless it’s part of a tag or an\n\t\t// unquoted attribute value. We’re only escaping it to support those\n\t\t// situations, and for XML support.\n\t\t'>': '>',\n\t\t// In Internet Explorer ≤ 8, the backtick character can be used\n\t\t// to break out of (un)quoted attribute values or HTML comments.\n\t\t// See http://html5sec.org/#102, http://html5sec.org/#108, and\n\t\t// http://html5sec.org/#133.\n\t\t'`': '`'\n\t};\n\n\tvar regexInvalidEntity = /&#(?:[xX][^a-fA-F0-9]|[^0-9xX])/;\n\tvar regexInvalidRawCodePoint = /[\\0-\\x08\\x0B\\x0E-\\x1F\\x7F-\\x9F\\uFDD0-\\uFDEF\\uFFFE\\uFFFF]|[\\uD83F\\uD87F\\uD8BF\\uD8FF\\uD93F\\uD97F\\uD9BF\\uD9FF\\uDA3F\\uDA7F\\uDABF\\uDAFF\\uDB3F\\uDB7F\\uDBBF\\uDBFF][\\uDFFE\\uDFFF]|[\\uD800-\\uDBFF](?![\\uDC00-\\uDFFF])|(?:[^\\uD800-\\uDBFF]|^)[\\uDC00-\\uDFFF]/;\n\tvar regexDecode = /&(CounterClockwiseContourIntegral|DoubleLongLeftRightArrow|ClockwiseContourIntegral|NotNestedGreaterGreater|NotSquareSupersetEqual|DiacriticalDoubleAcute|NotRightTriangleEqual|NotSucceedsSlantEqual|NotPrecedesSlantEqual|CloseCurlyDoubleQuote|NegativeVeryThinSpace|DoubleContourIntegral|FilledVerySmallSquare|CapitalDifferentialD|OpenCurlyDoubleQuote|EmptyVerySmallSquare|NestedGreaterGreater|DoubleLongRightArrow|NotLeftTriangleEqual|NotGreaterSlantEqual|ReverseUpEquilibrium|DoubleLeftRightArrow|NotSquareSubsetEqual|NotDoubleVerticalBar|RightArrowLeftArrow|NotGreaterFullEqual|NotRightTriangleBar|SquareSupersetEqual|DownLeftRightVector|DoubleLongLeftArrow|leftrightsquigarrow|LeftArrowRightArrow|NegativeMediumSpace|blacktriangleright|RightDownVectorBar|PrecedesSlantEqual|RightDoubleBracket|SucceedsSlantEqual|NotLeftTriangleBar|RightTriangleEqual|SquareIntersection|RightDownTeeVector|ReverseEquilibrium|NegativeThickSpace|longleftrightarrow|Longleftrightarrow|LongLeftRightArrow|DownRightTeeVector|DownRightVectorBar|GreaterSlantEqual|SquareSubsetEqual|LeftDownVectorBar|LeftDoubleBracket|VerticalSeparator|rightleftharpoons|NotGreaterGreater|NotSquareSuperset|blacktriangleleft|blacktriangledown|NegativeThinSpace|LeftDownTeeVector|NotLessSlantEqual|leftrightharpoons|DoubleUpDownArrow|DoubleVerticalBar|LeftTriangleEqual|FilledSmallSquare|twoheadrightarrow|NotNestedLessLess|DownLeftTeeVector|DownLeftVectorBar|RightAngleBracket|NotTildeFullEqual|NotReverseElement|RightUpDownVector|DiacriticalTilde|NotSucceedsTilde|circlearrowright|NotPrecedesEqual|rightharpoondown|DoubleRightArrow|NotSucceedsEqual|NonBreakingSpace|NotRightTriangle|LessEqualGreater|RightUpTeeVector|LeftAngleBracket|GreaterFullEqual|DownArrowUpArrow|RightUpVectorBar|twoheadleftarrow|GreaterEqualLess|downharpoonright|RightTriangleBar|ntrianglerighteq|NotSupersetEqual|LeftUpDownVector|DiacriticalAcute|rightrightarrows|vartriangleright|UpArrowDownArrow|DiacriticalGrave|UnderParenthesis|EmptySmallSquare|LeftUpVectorBar|leftrightarrows|DownRightVector|downharpoonleft|trianglerighteq|ShortRightArrow|OverParenthesis|DoubleLeftArrow|DoubleDownArrow|NotSquareSubset|bigtriangledown|ntrianglelefteq|UpperRightArrow|curvearrowright|vartriangleleft|NotLeftTriangle|nleftrightarrow|LowerRightArrow|NotHumpDownHump|NotGreaterTilde|rightthreetimes|LeftUpTeeVector|NotGreaterEqual|straightepsilon|LeftTriangleBar|rightsquigarrow|ContourIntegral|rightleftarrows|CloseCurlyQuote|RightDownVector|LeftRightVector|nLeftrightarrow|leftharpoondown|circlearrowleft|SquareSuperset|OpenCurlyQuote|hookrightarrow|HorizontalLine|DiacriticalDot|NotLessGreater|ntriangleright|DoubleRightTee|InvisibleComma|InvisibleTimes|LowerLeftArrow|DownLeftVector|NotSubsetEqual|curvearrowleft|trianglelefteq|NotVerticalBar|TildeFullEqual|downdownarrows|NotGreaterLess|RightTeeVector|ZeroWidthSpace|looparrowright|LongRightArrow|doublebarwedge|ShortLeftArrow|ShortDownArrow|RightVectorBar|GreaterGreater|ReverseElement|rightharpoonup|LessSlantEqual|leftthreetimes|upharpoonright|rightarrowtail|LeftDownVector|Longrightarrow|NestedLessLess|UpperLeftArrow|nshortparallel|leftleftarrows|leftrightarrow|Leftrightarrow|LeftRightArrow|longrightarrow|upharpoonleft|RightArrowBar|ApplyFunction|LeftTeeVector|leftarrowtail|NotEqualTilde|varsubsetneqq|varsupsetneqq|RightTeeArrow|SucceedsEqual|SucceedsTilde|LeftVectorBar|SupersetEqual|hookleftarrow|DifferentialD|VerticalTilde|VeryThinSpace|blacktriangle|bigtriangleup|LessFullEqual|divideontimes|leftharpoonup|UpEquilibrium|ntriangleleft|RightTriangle|measuredangle|shortparallel|longleftarrow|Longleftarrow|LongLeftArrow|DoubleLeftTee|Poincareplane|PrecedesEqual|triangleright|DoubleUpArrow|RightUpVector|fallingdotseq|looparrowleft|PrecedesTilde|NotTildeEqual|NotTildeTilde|smallsetminus|Proportional|triangleleft|triangledown|UnderBracket|NotHumpEqual|exponentiale|ExponentialE|NotLessTilde|HilbertSpace|RightCeiling|blacklozenge|varsupsetneq|HumpDownHump|GreaterEqual|VerticalLine|LeftTeeArrow|NotLessEqual|DownTeeArrow|LeftTriangle|varsubsetneq|Intersection|NotCongruent|DownArrowBar|LeftUpVector|LeftArrowBar|risingdotseq|GreaterTilde|RoundImplies|SquareSubset|ShortUpArrow|NotSuperset|quaternions|precnapprox|backepsilon|preccurlyeq|OverBracket|blacksquare|MediumSpace|VerticalBar|circledcirc|circleddash|CircleMinus|CircleTimes|LessGreater|curlyeqprec|curlyeqsucc|diamondsuit|UpDownArrow|Updownarrow|RuleDelayed|Rrightarrow|updownarrow|RightVector|nRightarrow|nrightarrow|eqslantless|LeftCeiling|Equilibrium|SmallCircle|expectation|NotSucceeds|thickapprox|GreaterLess|SquareUnion|NotPrecedes|NotLessLess|straightphi|succnapprox|succcurlyeq|SubsetEqual|sqsupseteq|Proportion|Laplacetrf|ImaginaryI|supsetneqq|NotGreater|gtreqqless|NotElement|ThickSpace|TildeEqual|TildeTilde|Fouriertrf|rmoustache|EqualTilde|eqslantgtr|UnderBrace|LeftVector|UpArrowBar|nLeftarrow|nsubseteqq|subsetneqq|nsupseteqq|nleftarrow|succapprox|lessapprox|UpTeeArrow|upuparrows|curlywedge|lesseqqgtr|varepsilon|varnothing|RightFloor|complement|CirclePlus|sqsubseteq|Lleftarrow|circledast|RightArrow|Rightarrow|rightarrow|lmoustache|Bernoullis|precapprox|mapstoleft|mapstodown|longmapsto|dotsquare|downarrow|DoubleDot|nsubseteq|supsetneq|leftarrow|nsupseteq|subsetneq|ThinSpace|ngeqslant|subseteqq|HumpEqual|NotSubset|triangleq|NotCupCap|lesseqgtr|heartsuit|TripleDot|Leftarrow|Coproduct|Congruent|varpropto|complexes|gvertneqq|LeftArrow|LessTilde|supseteqq|MinusPlus|CircleDot|nleqslant|NotExists|gtreqless|nparallel|UnionPlus|LeftFloor|checkmark|CenterDot|centerdot|Mellintrf|gtrapprox|bigotimes|OverBrace|spadesuit|therefore|pitchfork|rationals|PlusMinus|Backslash|Therefore|DownBreve|backsimeq|backprime|DownArrow|nshortmid|Downarrow|lvertneqq|eqvparsl|imagline|imagpart|infintie|integers|Integral|intercal|LessLess|Uarrocir|intlarhk|sqsupset|angmsdaf|sqsubset|llcorner|vartheta|cupbrcap|lnapprox|Superset|SuchThat|succnsim|succneqq|angmsdag|biguplus|curlyvee|trpezium|Succeeds|NotTilde|bigwedge|angmsdah|angrtvbd|triminus|cwconint|fpartint|lrcorner|smeparsl|subseteq|urcorner|lurdshar|laemptyv|DDotrahd|approxeq|ldrushar|awconint|mapstoup|backcong|shortmid|triangle|geqslant|gesdotol|timesbar|circledR|circledS|setminus|multimap|naturals|scpolint|ncongdot|RightTee|boxminus|gnapprox|boxtimes|andslope|thicksim|angmsdaa|varsigma|cirfnint|rtriltri|angmsdab|rppolint|angmsdac|barwedge|drbkarow|clubsuit|thetasym|bsolhsub|capbrcup|dzigrarr|doteqdot|DotEqual|dotminus|UnderBar|NotEqual|realpart|otimesas|ulcorner|hksearow|hkswarow|parallel|PartialD|elinters|emptyset|plusacir|bbrktbrk|angmsdad|pointint|bigoplus|angmsdae|Precedes|bigsqcup|varkappa|notindot|supseteq|precneqq|precnsim|profalar|profline|profsurf|leqslant|lesdotor|raemptyv|subplus|notnivb|notnivc|subrarr|zigrarr|vzigzag|submult|subedot|Element|between|cirscir|larrbfs|larrsim|lotimes|lbrksld|lbrkslu|lozenge|ldrdhar|dbkarow|bigcirc|epsilon|simrarr|simplus|ltquest|Epsilon|luruhar|gtquest|maltese|npolint|eqcolon|npreceq|bigodot|ddagger|gtrless|bnequiv|harrcir|ddotseq|equivDD|backsim|demptyv|nsqsube|nsqsupe|Upsilon|nsubset|upsilon|minusdu|nsucceq|swarrow|nsupset|coloneq|searrow|boxplus|napprox|natural|asympeq|alefsym|congdot|nearrow|bigstar|diamond|supplus|tritime|LeftTee|nvinfin|triplus|NewLine|nvltrie|nvrtrie|nwarrow|nexists|Diamond|ruluhar|Implies|supmult|angzarr|suplarr|suphsub|questeq|because|digamma|Because|olcross|bemptyv|omicron|Omicron|rotimes|NoBreak|intprod|angrtvb|orderof|uwangle|suphsol|lesdoto|orslope|DownTee|realine|cudarrl|rdldhar|OverBar|supedot|lessdot|supdsub|topfork|succsim|rbrkslu|rbrksld|pertenk|cudarrr|isindot|planckh|lessgtr|pluscir|gesdoto|plussim|plustwo|lesssim|cularrp|rarrsim|Cayleys|notinva|notinvb|notinvc|UpArrow|Uparrow|uparrow|NotLess|dwangle|precsim|Product|curarrm|Cconint|dotplus|rarrbfs|ccupssm|Cedilla|cemptyv|notniva|quatint|frac35|frac38|frac45|frac56|frac58|frac78|tridot|xoplus|gacute|gammad|Gammad|lfisht|lfloor|bigcup|sqsupe|gbreve|Gbreve|lharul|sqsube|sqcups|Gcedil|apacir|llhard|lmidot|Lmidot|lmoust|andand|sqcaps|approx|Abreve|spades|circeq|tprime|divide|topcir|Assign|topbot|gesdot|divonx|xuplus|timesd|gesles|atilde|solbar|SOFTcy|loplus|timesb|lowast|lowbar|dlcorn|dlcrop|softcy|dollar|lparlt|thksim|lrhard|Atilde|lsaquo|smashp|bigvee|thinsp|wreath|bkarow|lsquor|lstrok|Lstrok|lthree|ltimes|ltlarr|DotDot|simdot|ltrPar|weierp|xsqcup|angmsd|sigmav|sigmaf|zeetrf|Zcaron|zcaron|mapsto|vsupne|thetav|cirmid|marker|mcomma|Zacute|vsubnE|there4|gtlPar|vsubne|bottom|gtrarr|SHCHcy|shchcy|midast|midcir|middot|minusb|minusd|gtrdot|bowtie|sfrown|mnplus|models|colone|seswar|Colone|mstpos|searhk|gtrsim|nacute|Nacute|boxbox|telrec|hairsp|Tcedil|nbumpe|scnsim|ncaron|Ncaron|ncedil|Ncedil|hamilt|Scedil|nearhk|hardcy|HARDcy|tcedil|Tcaron|commat|nequiv|nesear|tcaron|target|hearts|nexist|varrho|scedil|Scaron|scaron|hellip|Sacute|sacute|hercon|swnwar|compfn|rtimes|rthree|rsquor|rsaquo|zacute|wedgeq|homtht|barvee|barwed|Barwed|rpargt|horbar|conint|swarhk|roplus|nltrie|hslash|hstrok|Hstrok|rmoust|Conint|bprime|hybull|hyphen|iacute|Iacute|supsup|supsub|supsim|varphi|coprod|brvbar|agrave|Supset|supset|igrave|Igrave|notinE|Agrave|iiiint|iinfin|copysr|wedbar|Verbar|vangrt|becaus|incare|verbar|inodot|bullet|drcorn|intcal|drcrop|cularr|vellip|Utilde|bumpeq|cupcap|dstrok|Dstrok|CupCap|cupcup|cupdot|eacute|Eacute|supdot|iquest|easter|ecaron|Ecaron|ecolon|isinsv|utilde|itilde|Itilde|curarr|succeq|Bumpeq|cacute|ulcrop|nparsl|Cacute|nprcue|egrave|Egrave|nrarrc|nrarrw|subsup|subsub|nrtrie|jsercy|nsccue|Jsercy|kappav|kcedil|Kcedil|subsim|ulcorn|nsimeq|egsdot|veebar|kgreen|capand|elsdot|Subset|subset|curren|aacute|lacute|Lacute|emptyv|ntilde|Ntilde|lagran|lambda|Lambda|capcap|Ugrave|langle|subdot|emsp13|numero|emsp14|nvdash|nvDash|nVdash|nVDash|ugrave|ufisht|nvHarr|larrfs|nvlArr|larrhk|larrlp|larrpl|nvrArr|Udblac|nwarhk|larrtl|nwnear|oacute|Oacute|latail|lAtail|sstarf|lbrace|odblac|Odblac|lbrack|udblac|odsold|eparsl|lcaron|Lcaron|ograve|Ograve|lcedil|Lcedil|Aacute|ssmile|ssetmn|squarf|ldquor|capcup|ominus|cylcty|rharul|eqcirc|dagger|rfloor|rfisht|Dagger|daleth|equals|origof|capdot|equest|dcaron|Dcaron|rdquor|oslash|Oslash|otilde|Otilde|otimes|Otimes|urcrop|Ubreve|ubreve|Yacute|Uacute|uacute|Rcedil|rcedil|urcorn|parsim|Rcaron|Vdashl|rcaron|Tstrok|percnt|period|permil|Exists|yacute|rbrack|rbrace|phmmat|ccaron|Ccaron|planck|ccedil|plankv|tstrok|female|plusdo|plusdu|ffilig|plusmn|ffllig|Ccedil|rAtail|dfisht|bernou|ratail|Rarrtl|rarrtl|angsph|rarrpl|rarrlp|rarrhk|xwedge|xotime|forall|ForAll|Vvdash|vsupnE|preceq|bigcap|frac12|frac13|frac14|primes|rarrfs|prnsim|frac15|Square|frac16|square|lesdot|frac18|frac23|propto|prurel|rarrap|rangle|puncsp|frac25|Racute|qprime|racute|lesges|frac34|abreve|AElig|eqsim|utdot|setmn|urtri|Equal|Uring|seArr|uring|searr|dashv|Dashv|mumap|nabla|iogon|Iogon|sdote|sdotb|scsim|napid|napos|equiv|natur|Acirc|dblac|erarr|nbump|iprod|erDot|ucirc|awint|esdot|angrt|ncong|isinE|scnap|Scirc|scirc|ndash|isins|Ubrcy|nearr|neArr|isinv|nedot|ubrcy|acute|Ycirc|iukcy|Iukcy|xutri|nesim|caret|jcirc|Jcirc|caron|twixt|ddarr|sccue|exist|jmath|sbquo|ngeqq|angst|ccaps|lceil|ngsim|UpTee|delta|Delta|rtrif|nharr|nhArr|nhpar|rtrie|jukcy|Jukcy|kappa|rsquo|Kappa|nlarr|nlArr|TSHcy|rrarr|aogon|Aogon|fflig|xrarr|tshcy|ccirc|nleqq|filig|upsih|nless|dharl|nlsim|fjlig|ropar|nltri|dharr|robrk|roarr|fllig|fltns|roang|rnmid|subnE|subne|lAarr|trisb|Ccirc|acirc|ccups|blank|VDash|forkv|Vdash|langd|cedil|blk12|blk14|laquo|strns|diams|notin|vDash|larrb|blk34|block|disin|uplus|vdash|vBarv|aelig|starf|Wedge|check|xrArr|lates|lbarr|lBarr|notni|lbbrk|bcong|frasl|lbrke|frown|vrtri|vprop|vnsup|gamma|Gamma|wedge|xodot|bdquo|srarr|doteq|ldquo|boxdl|boxdL|gcirc|Gcirc|boxDl|boxDL|boxdr|boxdR|boxDr|TRADE|trade|rlhar|boxDR|vnsub|npart|vltri|rlarr|boxhd|boxhD|nprec|gescc|nrarr|nrArr|boxHd|boxHD|boxhu|boxhU|nrtri|boxHu|clubs|boxHU|times|colon|Colon|gimel|xlArr|Tilde|nsime|tilde|nsmid|nspar|THORN|thorn|xlarr|nsube|nsubE|thkap|xhArr|comma|nsucc|boxul|boxuL|nsupe|nsupE|gneqq|gnsim|boxUl|boxUL|grave|boxur|boxuR|boxUr|boxUR|lescc|angle|bepsi|boxvh|varpi|boxvH|numsp|Theta|gsime|gsiml|theta|boxVh|boxVH|boxvl|gtcir|gtdot|boxvL|boxVl|boxVL|crarr|cross|Cross|nvsim|boxvr|nwarr|nwArr|sqsup|dtdot|Uogon|lhard|lharu|dtrif|ocirc|Ocirc|lhblk|duarr|odash|sqsub|Hacek|sqcup|llarr|duhar|oelig|OElig|ofcir|boxvR|uogon|lltri|boxVr|csube|uuarr|ohbar|csupe|ctdot|olarr|olcir|harrw|oline|sqcap|omacr|Omacr|omega|Omega|boxVR|aleph|lneqq|lnsim|loang|loarr|rharu|lobrk|hcirc|operp|oplus|rhard|Hcirc|orarr|Union|order|ecirc|Ecirc|cuepr|szlig|cuesc|breve|reals|eDDot|Breve|hoarr|lopar|utrif|rdquo|Umacr|umacr|efDot|swArr|ultri|alpha|rceil|ovbar|swarr|Wcirc|wcirc|smtes|smile|bsemi|lrarr|aring|parsl|lrhar|bsime|uhblk|lrtri|cupor|Aring|uharr|uharl|slarr|rbrke|bsolb|lsime|rbbrk|RBarr|lsimg|phone|rBarr|rbarr|icirc|lsquo|Icirc|emacr|Emacr|ratio|simne|plusb|simlE|simgE|simeq|pluse|ltcir|ltdot|empty|xharr|xdtri|iexcl|Alpha|ltrie|rarrw|pound|ltrif|xcirc|bumpe|prcue|bumpE|asymp|amacr|cuvee|Sigma|sigma|iiint|udhar|iiota|ijlig|IJlig|supnE|imacr|Imacr|prime|Prime|image|prnap|eogon|Eogon|rarrc|mdash|mDDot|cuwed|imath|supne|imped|Amacr|udarr|prsim|micro|rarrb|cwint|raquo|infin|eplus|range|rangd|Ucirc|radic|minus|amalg|veeeq|rAarr|epsiv|ycirc|quest|sharp|quot|zwnj|Qscr|race|qscr|Qopf|qopf|qint|rang|Rang|Zscr|zscr|Zopf|zopf|rarr|rArr|Rarr|Pscr|pscr|prop|prod|prnE|prec|ZHcy|zhcy|prap|Zeta|zeta|Popf|popf|Zdot|plus|zdot|Yuml|yuml|phiv|YUcy|yucy|Yscr|yscr|perp|Yopf|yopf|part|para|YIcy|Ouml|rcub|yicy|YAcy|rdca|ouml|osol|Oscr|rdsh|yacy|real|oscr|xvee|andd|rect|andv|Xscr|oror|ordm|ordf|xscr|ange|aopf|Aopf|rHar|Xopf|opar|Oopf|xopf|xnis|rhov|oopf|omid|xmap|oint|apid|apos|ogon|ascr|Ascr|odot|odiv|xcup|xcap|ocir|oast|nvlt|nvle|nvgt|nvge|nvap|Wscr|wscr|auml|ntlg|ntgl|nsup|nsub|nsim|Nscr|nscr|nsce|Wopf|ring|npre|wopf|npar|Auml|Barv|bbrk|Nopf|nopf|nmid|nLtv|beta|ropf|Ropf|Beta|beth|nles|rpar|nleq|bnot|bNot|nldr|NJcy|rscr|Rscr|Vscr|vscr|rsqb|njcy|bopf|nisd|Bopf|rtri|Vopf|nGtv|ngtr|vopf|boxh|boxH|boxv|nges|ngeq|boxV|bscr|scap|Bscr|bsim|Vert|vert|bsol|bull|bump|caps|cdot|ncup|scnE|ncap|nbsp|napE|Cdot|cent|sdot|Vbar|nang|vBar|chcy|Mscr|mscr|sect|semi|CHcy|Mopf|mopf|sext|circ|cire|mldr|mlcp|cirE|comp|shcy|SHcy|vArr|varr|cong|copf|Copf|copy|COPY|malt|male|macr|lvnE|cscr|ltri|sime|ltcc|simg|Cscr|siml|csub|Uuml|lsqb|lsim|uuml|csup|Lscr|lscr|utri|smid|lpar|cups|smte|lozf|darr|Lopf|Uscr|solb|lopf|sopf|Sopf|lneq|uscr|spar|dArr|lnap|Darr|dash|Sqrt|LJcy|ljcy|lHar|dHar|Upsi|upsi|diam|lesg|djcy|DJcy|leqq|dopf|Dopf|dscr|Dscr|dscy|ldsh|ldca|squf|DScy|sscr|Sscr|dsol|lcub|late|star|Star|Uopf|Larr|lArr|larr|uopf|dtri|dzcy|sube|subE|Lang|lang|Kscr|kscr|Kopf|kopf|KJcy|kjcy|KHcy|khcy|DZcy|ecir|edot|eDot|Jscr|jscr|succ|Jopf|jopf|Edot|uHar|emsp|ensp|Iuml|iuml|eopf|isin|Iscr|iscr|Eopf|epar|sung|epsi|escr|sup1|sup2|sup3|Iota|iota|supe|supE|Iopf|iopf|IOcy|iocy|Escr|esim|Esim|imof|Uarr|QUOT|uArr|uarr|euml|IEcy|iecy|Idot|Euml|euro|excl|Hscr|hscr|Hopf|hopf|TScy|tscy|Tscr|hbar|tscr|flat|tbrk|fnof|hArr|harr|half|fopf|Fopf|tdot|gvnE|fork|trie|gtcc|fscr|Fscr|gdot|gsim|Gscr|gscr|Gopf|gopf|gneq|Gdot|tosa|gnap|Topf|topf|geqq|toea|GJcy|gjcy|tint|gesl|mid|Sfr|ggg|top|ges|gla|glE|glj|geq|gne|gEl|gel|gnE|Gcy|gcy|gap|Tfr|tfr|Tcy|tcy|Hat|Tau|Ffr|tau|Tab|hfr|Hfr|ffr|Fcy|fcy|icy|Icy|iff|ETH|eth|ifr|Ifr|Eta|eta|int|Int|Sup|sup|ucy|Ucy|Sum|sum|jcy|ENG|ufr|Ufr|eng|Jcy|jfr|els|ell|egs|Efr|efr|Jfr|uml|kcy|Kcy|Ecy|ecy|kfr|Kfr|lap|Sub|sub|lat|lcy|Lcy|leg|Dot|dot|lEg|leq|les|squ|div|die|lfr|Lfr|lgE|Dfr|dfr|Del|deg|Dcy|dcy|lne|lnE|sol|loz|smt|Cup|lrm|cup|lsh|Lsh|sim|shy|map|Map|mcy|Mcy|mfr|Mfr|mho|gfr|Gfr|sfr|cir|Chi|chi|nap|Cfr|vcy|Vcy|cfr|Scy|scy|ncy|Ncy|vee|Vee|Cap|cap|nfr|scE|sce|Nfr|nge|ngE|nGg|vfr|Vfr|ngt|bot|nGt|nis|niv|Rsh|rsh|nle|nlE|bne|Bfr|bfr|nLl|nlt|nLt|Bcy|bcy|not|Not|rlm|wfr|Wfr|npr|nsc|num|ocy|ast|Ocy|ofr|xfr|Xfr|Ofr|ogt|ohm|apE|olt|Rho|ape|rho|Rfr|rfr|ord|REG|ang|reg|orv|And|and|AMP|Rcy|amp|Afr|ycy|Ycy|yen|yfr|Yfr|rcy|par|pcy|Pcy|pfr|Pfr|phi|Phi|afr|Acy|acy|zcy|Zcy|piv|acE|acd|zfr|Zfr|pre|prE|psi|Psi|qfr|Qfr|zwj|Or|ge|Gg|gt|gg|el|oS|lt|Lt|LT|Re|lg|gl|eg|ne|Im|it|le|DD|wp|wr|nu|Nu|dd|lE|Sc|sc|pi|Pi|ee|af|ll|Ll|rx|gE|xi|pm|Xi|ic|pr|Pr|in|ni|mp|mu|ac|Mu|or|ap|Gt|GT|ii);|&(Aacute|Agrave|Atilde|Ccedil|Eacute|Egrave|Iacute|Igrave|Ntilde|Oacute|Ograve|Oslash|Otilde|Uacute|Ugrave|Yacute|aacute|agrave|atilde|brvbar|ccedil|curren|divide|eacute|egrave|frac12|frac14|frac34|iacute|igrave|iquest|middot|ntilde|oacute|ograve|oslash|otilde|plusmn|uacute|ugrave|yacute|AElig|Acirc|Aring|Ecirc|Icirc|Ocirc|THORN|Ucirc|acirc|acute|aelig|aring|cedil|ecirc|icirc|iexcl|laquo|micro|ocirc|pound|raquo|szlig|thorn|times|ucirc|Auml|COPY|Euml|Iuml|Ouml|QUOT|Uuml|auml|cent|copy|euml|iuml|macr|nbsp|ordf|ordm|ouml|para|quot|sect|sup1|sup2|sup3|uuml|yuml|AMP|ETH|REG|amp|deg|eth|not|reg|shy|uml|yen|GT|LT|gt|lt)(?!;)([=a-zA-Z0-9]?)|&#([0-9]+)(;?)|&#[xX]([a-fA-F0-9]+)(;?)|&([0-9a-zA-Z]+)/g;\n\tvar decodeMap = {'aacute':'\\xE1','Aacute':'\\xC1','abreve':'\\u0103','Abreve':'\\u0102','ac':'\\u223E','acd':'\\u223F','acE':'\\u223E\\u0333','acirc':'\\xE2','Acirc':'\\xC2','acute':'\\xB4','acy':'\\u0430','Acy':'\\u0410','aelig':'\\xE6','AElig':'\\xC6','af':'\\u2061','afr':'\\uD835\\uDD1E','Afr':'\\uD835\\uDD04','agrave':'\\xE0','Agrave':'\\xC0','alefsym':'\\u2135','aleph':'\\u2135','alpha':'\\u03B1','Alpha':'\\u0391','amacr':'\\u0101','Amacr':'\\u0100','amalg':'\\u2A3F','amp':'&','AMP':'&','and':'\\u2227','And':'\\u2A53','andand':'\\u2A55','andd':'\\u2A5C','andslope':'\\u2A58','andv':'\\u2A5A','ang':'\\u2220','ange':'\\u29A4','angle':'\\u2220','angmsd':'\\u2221','angmsdaa':'\\u29A8','angmsdab':'\\u29A9','angmsdac':'\\u29AA','angmsdad':'\\u29AB','angmsdae':'\\u29AC','angmsdaf':'\\u29AD','angmsdag':'\\u29AE','angmsdah':'\\u29AF','angrt':'\\u221F','angrtvb':'\\u22BE','angrtvbd':'\\u299D','angsph':'\\u2222','angst':'\\xC5','angzarr':'\\u237C','aogon':'\\u0105','Aogon':'\\u0104','aopf':'\\uD835\\uDD52','Aopf':'\\uD835\\uDD38','ap':'\\u2248','apacir':'\\u2A6F','ape':'\\u224A','apE':'\\u2A70','apid':'\\u224B','apos':'\\'','ApplyFunction':'\\u2061','approx':'\\u2248','approxeq':'\\u224A','aring':'\\xE5','Aring':'\\xC5','ascr':'\\uD835\\uDCB6','Ascr':'\\uD835\\uDC9C','Assign':'\\u2254','ast':'*','asymp':'\\u2248','asympeq':'\\u224D','atilde':'\\xE3','Atilde':'\\xC3','auml':'\\xE4','Auml':'\\xC4','awconint':'\\u2233','awint':'\\u2A11','backcong':'\\u224C','backepsilon':'\\u03F6','backprime':'\\u2035','backsim':'\\u223D','backsimeq':'\\u22CD','Backslash':'\\u2216','Barv':'\\u2AE7','barvee':'\\u22BD','barwed':'\\u2305','Barwed':'\\u2306','barwedge':'\\u2305','bbrk':'\\u23B5','bbrktbrk':'\\u23B6','bcong':'\\u224C','bcy':'\\u0431','Bcy':'\\u0411','bdquo':'\\u201E','becaus':'\\u2235','because':'\\u2235','Because':'\\u2235','bemptyv':'\\u29B0','bepsi':'\\u03F6','bernou':'\\u212C','Bernoullis':'\\u212C','beta':'\\u03B2','Beta':'\\u0392','beth':'\\u2136','between':'\\u226C','bfr':'\\uD835\\uDD1F','Bfr':'\\uD835\\uDD05','bigcap':'\\u22C2','bigcirc':'\\u25EF','bigcup':'\\u22C3','bigodot':'\\u2A00','bigoplus':'\\u2A01','bigotimes':'\\u2A02','bigsqcup':'\\u2A06','bigstar':'\\u2605','bigtriangledown':'\\u25BD','bigtriangleup':'\\u25B3','biguplus':'\\u2A04','bigvee':'\\u22C1','bigwedge':'\\u22C0','bkarow':'\\u290D','blacklozenge':'\\u29EB','blacksquare':'\\u25AA','blacktriangle':'\\u25B4','blacktriangledown':'\\u25BE','blacktriangleleft':'\\u25C2','blacktriangleright':'\\u25B8','blank':'\\u2423','blk12':'\\u2592','blk14':'\\u2591','blk34':'\\u2593','block':'\\u2588','bne':'=\\u20E5','bnequiv':'\\u2261\\u20E5','bnot':'\\u2310','bNot':'\\u2AED','bopf':'\\uD835\\uDD53','Bopf':'\\uD835\\uDD39','bot':'\\u22A5','bottom':'\\u22A5','bowtie':'\\u22C8','boxbox':'\\u29C9','boxdl':'\\u2510','boxdL':'\\u2555','boxDl':'\\u2556','boxDL':'\\u2557','boxdr':'\\u250C','boxdR':'\\u2552','boxDr':'\\u2553','boxDR':'\\u2554','boxh':'\\u2500','boxH':'\\u2550','boxhd':'\\u252C','boxhD':'\\u2565','boxHd':'\\u2564','boxHD':'\\u2566','boxhu':'\\u2534','boxhU':'\\u2568','boxHu':'\\u2567','boxHU':'\\u2569','boxminus':'\\u229F','boxplus':'\\u229E','boxtimes':'\\u22A0','boxul':'\\u2518','boxuL':'\\u255B','boxUl':'\\u255C','boxUL':'\\u255D','boxur':'\\u2514','boxuR':'\\u2558','boxUr':'\\u2559','boxUR':'\\u255A','boxv':'\\u2502','boxV':'\\u2551','boxvh':'\\u253C','boxvH':'\\u256A','boxVh':'\\u256B','boxVH':'\\u256C','boxvl':'\\u2524','boxvL':'\\u2561','boxVl':'\\u2562','boxVL':'\\u2563','boxvr':'\\u251C','boxvR':'\\u255E','boxVr':'\\u255F','boxVR':'\\u2560','bprime':'\\u2035','breve':'\\u02D8','Breve':'\\u02D8','brvbar':'\\xA6','bscr':'\\uD835\\uDCB7','Bscr':'\\u212C','bsemi':'\\u204F','bsim':'\\u223D','bsime':'\\u22CD','bsol':'\\\\','bsolb':'\\u29C5','bsolhsub':'\\u27C8','bull':'\\u2022','bullet':'\\u2022','bump':'\\u224E','bumpe':'\\u224F','bumpE':'\\u2AAE','bumpeq':'\\u224F','Bumpeq':'\\u224E','cacute':'\\u0107','Cacute':'\\u0106','cap':'\\u2229','Cap':'\\u22D2','capand':'\\u2A44','capbrcup':'\\u2A49','capcap':'\\u2A4B','capcup':'\\u2A47','capdot':'\\u2A40','CapitalDifferentialD':'\\u2145','caps':'\\u2229\\uFE00','caret':'\\u2041','caron':'\\u02C7','Cayleys':'\\u212D','ccaps':'\\u2A4D','ccaron':'\\u010D','Ccaron':'\\u010C','ccedil':'\\xE7','Ccedil':'\\xC7','ccirc':'\\u0109','Ccirc':'\\u0108','Cconint':'\\u2230','ccups':'\\u2A4C','ccupssm':'\\u2A50','cdot':'\\u010B','Cdot':'\\u010A','cedil':'\\xB8','Cedilla':'\\xB8','cemptyv':'\\u29B2','cent':'\\xA2','centerdot':'\\xB7','CenterDot':'\\xB7','cfr':'\\uD835\\uDD20','Cfr':'\\u212D','chcy':'\\u0447','CHcy':'\\u0427','check':'\\u2713','checkmark':'\\u2713','chi':'\\u03C7','Chi':'\\u03A7','cir':'\\u25CB','circ':'\\u02C6','circeq':'\\u2257','circlearrowleft':'\\u21BA','circlearrowright':'\\u21BB','circledast':'\\u229B','circledcirc':'\\u229A','circleddash':'\\u229D','CircleDot':'\\u2299','circledR':'\\xAE','circledS':'\\u24C8','CircleMinus':'\\u2296','CirclePlus':'\\u2295','CircleTimes':'\\u2297','cire':'\\u2257','cirE':'\\u29C3','cirfnint':'\\u2A10','cirmid':'\\u2AEF','cirscir':'\\u29C2','ClockwiseContourIntegral':'\\u2232','CloseCurlyDoubleQuote':'\\u201D','CloseCurlyQuote':'\\u2019','clubs':'\\u2663','clubsuit':'\\u2663','colon':':','Colon':'\\u2237','colone':'\\u2254','Colone':'\\u2A74','coloneq':'\\u2254','comma':',','commat':'@','comp':'\\u2201','compfn':'\\u2218','complement':'\\u2201','complexes':'\\u2102','cong':'\\u2245','congdot':'\\u2A6D','Congruent':'\\u2261','conint':'\\u222E','Conint':'\\u222F','ContourIntegral':'\\u222E','copf':'\\uD835\\uDD54','Copf':'\\u2102','coprod':'\\u2210','Coproduct':'\\u2210','copy':'\\xA9','COPY':'\\xA9','copysr':'\\u2117','CounterClockwiseContourIntegral':'\\u2233','crarr':'\\u21B5','cross':'\\u2717','Cross':'\\u2A2F','cscr':'\\uD835\\uDCB8','Cscr':'\\uD835\\uDC9E','csub':'\\u2ACF','csube':'\\u2AD1','csup':'\\u2AD0','csupe':'\\u2AD2','ctdot':'\\u22EF','cudarrl':'\\u2938','cudarrr':'\\u2935','cuepr':'\\u22DE','cuesc':'\\u22DF','cularr':'\\u21B6','cularrp':'\\u293D','cup':'\\u222A','Cup':'\\u22D3','cupbrcap':'\\u2A48','cupcap':'\\u2A46','CupCap':'\\u224D','cupcup':'\\u2A4A','cupdot':'\\u228D','cupor':'\\u2A45','cups':'\\u222A\\uFE00','curarr':'\\u21B7','curarrm':'\\u293C','curlyeqprec':'\\u22DE','curlyeqsucc':'\\u22DF','curlyvee':'\\u22CE','curlywedge':'\\u22CF','curren':'\\xA4','curvearrowleft':'\\u21B6','curvearrowright':'\\u21B7','cuvee':'\\u22CE','cuwed':'\\u22CF','cwconint':'\\u2232','cwint':'\\u2231','cylcty':'\\u232D','dagger':'\\u2020','Dagger':'\\u2021','daleth':'\\u2138','darr':'\\u2193','dArr':'\\u21D3','Darr':'\\u21A1','dash':'\\u2010','dashv':'\\u22A3','Dashv':'\\u2AE4','dbkarow':'\\u290F','dblac':'\\u02DD','dcaron':'\\u010F','Dcaron':'\\u010E','dcy':'\\u0434','Dcy':'\\u0414','dd':'\\u2146','DD':'\\u2145','ddagger':'\\u2021','ddarr':'\\u21CA','DDotrahd':'\\u2911','ddotseq':'\\u2A77','deg':'\\xB0','Del':'\\u2207','delta':'\\u03B4','Delta':'\\u0394','demptyv':'\\u29B1','dfisht':'\\u297F','dfr':'\\uD835\\uDD21','Dfr':'\\uD835\\uDD07','dHar':'\\u2965','dharl':'\\u21C3','dharr':'\\u21C2','DiacriticalAcute':'\\xB4','DiacriticalDot':'\\u02D9','DiacriticalDoubleAcute':'\\u02DD','DiacriticalGrave':'`','DiacriticalTilde':'\\u02DC','diam':'\\u22C4','diamond':'\\u22C4','Diamond':'\\u22C4','diamondsuit':'\\u2666','diams':'\\u2666','die':'\\xA8','DifferentialD':'\\u2146','digamma':'\\u03DD','disin':'\\u22F2','div':'\\xF7','divide':'\\xF7','divideontimes':'\\u22C7','divonx':'\\u22C7','djcy':'\\u0452','DJcy':'\\u0402','dlcorn':'\\u231E','dlcrop':'\\u230D','dollar':'$','dopf':'\\uD835\\uDD55','Dopf':'\\uD835\\uDD3B','dot':'\\u02D9','Dot':'\\xA8','DotDot':'\\u20DC','doteq':'\\u2250','doteqdot':'\\u2251','DotEqual':'\\u2250','dotminus':'\\u2238','dotplus':'\\u2214','dotsquare':'\\u22A1','doublebarwedge':'\\u2306','DoubleContourIntegral':'\\u222F','DoubleDot':'\\xA8','DoubleDownArrow':'\\u21D3','DoubleLeftArrow':'\\u21D0','DoubleLeftRightArrow':'\\u21D4','DoubleLeftTee':'\\u2AE4','DoubleLongLeftArrow':'\\u27F8','DoubleLongLeftRightArrow':'\\u27FA','DoubleLongRightArrow':'\\u27F9','DoubleRightArrow':'\\u21D2','DoubleRightTee':'\\u22A8','DoubleUpArrow':'\\u21D1','DoubleUpDownArrow':'\\u21D5','DoubleVerticalBar':'\\u2225','downarrow':'\\u2193','Downarrow':'\\u21D3','DownArrow':'\\u2193','DownArrowBar':'\\u2913','DownArrowUpArrow':'\\u21F5','DownBreve':'\\u0311','downdownarrows':'\\u21CA','downharpoonleft':'\\u21C3','downharpoonright':'\\u21C2','DownLeftRightVector':'\\u2950','DownLeftTeeVector':'\\u295E','DownLeftVector':'\\u21BD','DownLeftVectorBar':'\\u2956','DownRightTeeVector':'\\u295F','DownRightVector':'\\u21C1','DownRightVectorBar':'\\u2957','DownTee':'\\u22A4','DownTeeArrow':'\\u21A7','drbkarow':'\\u2910','drcorn':'\\u231F','drcrop':'\\u230C','dscr':'\\uD835\\uDCB9','Dscr':'\\uD835\\uDC9F','dscy':'\\u0455','DScy':'\\u0405','dsol':'\\u29F6','dstrok':'\\u0111','Dstrok':'\\u0110','dtdot':'\\u22F1','dtri':'\\u25BF','dtrif':'\\u25BE','duarr':'\\u21F5','duhar':'\\u296F','dwangle':'\\u29A6','dzcy':'\\u045F','DZcy':'\\u040F','dzigrarr':'\\u27FF','eacute':'\\xE9','Eacute':'\\xC9','easter':'\\u2A6E','ecaron':'\\u011B','Ecaron':'\\u011A','ecir':'\\u2256','ecirc':'\\xEA','Ecirc':'\\xCA','ecolon':'\\u2255','ecy':'\\u044D','Ecy':'\\u042D','eDDot':'\\u2A77','edot':'\\u0117','eDot':'\\u2251','Edot':'\\u0116','ee':'\\u2147','efDot':'\\u2252','efr':'\\uD835\\uDD22','Efr':'\\uD835\\uDD08','eg':'\\u2A9A','egrave':'\\xE8','Egrave':'\\xC8','egs':'\\u2A96','egsdot':'\\u2A98','el':'\\u2A99','Element':'\\u2208','elinters':'\\u23E7','ell':'\\u2113','els':'\\u2A95','elsdot':'\\u2A97','emacr':'\\u0113','Emacr':'\\u0112','empty':'\\u2205','emptyset':'\\u2205','EmptySmallSquare':'\\u25FB','emptyv':'\\u2205','EmptyVerySmallSquare':'\\u25AB','emsp':'\\u2003','emsp13':'\\u2004','emsp14':'\\u2005','eng':'\\u014B','ENG':'\\u014A','ensp':'\\u2002','eogon':'\\u0119','Eogon':'\\u0118','eopf':'\\uD835\\uDD56','Eopf':'\\uD835\\uDD3C','epar':'\\u22D5','eparsl':'\\u29E3','eplus':'\\u2A71','epsi':'\\u03B5','epsilon':'\\u03B5','Epsilon':'\\u0395','epsiv':'\\u03F5','eqcirc':'\\u2256','eqcolon':'\\u2255','eqsim':'\\u2242','eqslantgtr':'\\u2A96','eqslantless':'\\u2A95','Equal':'\\u2A75','equals':'=','EqualTilde':'\\u2242','equest':'\\u225F','Equilibrium':'\\u21CC','equiv':'\\u2261','equivDD':'\\u2A78','eqvparsl':'\\u29E5','erarr':'\\u2971','erDot':'\\u2253','escr':'\\u212F','Escr':'\\u2130','esdot':'\\u2250','esim':'\\u2242','Esim':'\\u2A73','eta':'\\u03B7','Eta':'\\u0397','eth':'\\xF0','ETH':'\\xD0','euml':'\\xEB','Euml':'\\xCB','euro':'\\u20AC','excl':'!','exist':'\\u2203','Exists':'\\u2203','expectation':'\\u2130','exponentiale':'\\u2147','ExponentialE':'\\u2147','fallingdotseq':'\\u2252','fcy':'\\u0444','Fcy':'\\u0424','female':'\\u2640','ffilig':'\\uFB03','fflig':'\\uFB00','ffllig':'\\uFB04','ffr':'\\uD835\\uDD23','Ffr':'\\uD835\\uDD09','filig':'\\uFB01','FilledSmallSquare':'\\u25FC','FilledVerySmallSquare':'\\u25AA','fjlig':'fj','flat':'\\u266D','fllig':'\\uFB02','fltns':'\\u25B1','fnof':'\\u0192','fopf':'\\uD835\\uDD57','Fopf':'\\uD835\\uDD3D','forall':'\\u2200','ForAll':'\\u2200','fork':'\\u22D4','forkv':'\\u2AD9','Fouriertrf':'\\u2131','fpartint':'\\u2A0D','frac12':'\\xBD','frac13':'\\u2153','frac14':'\\xBC','frac15':'\\u2155','frac16':'\\u2159','frac18':'\\u215B','frac23':'\\u2154','frac25':'\\u2156','frac34':'\\xBE','frac35':'\\u2157','frac38':'\\u215C','frac45':'\\u2158','frac56':'\\u215A','frac58':'\\u215D','frac78':'\\u215E','frasl':'\\u2044','frown':'\\u2322','fscr':'\\uD835\\uDCBB','Fscr':'\\u2131','gacute':'\\u01F5','gamma':'\\u03B3','Gamma':'\\u0393','gammad':'\\u03DD','Gammad':'\\u03DC','gap':'\\u2A86','gbreve':'\\u011F','Gbreve':'\\u011E','Gcedil':'\\u0122','gcirc':'\\u011D','Gcirc':'\\u011C','gcy':'\\u0433','Gcy':'\\u0413','gdot':'\\u0121','Gdot':'\\u0120','ge':'\\u2265','gE':'\\u2267','gel':'\\u22DB','gEl':'\\u2A8C','geq':'\\u2265','geqq':'\\u2267','geqslant':'\\u2A7E','ges':'\\u2A7E','gescc':'\\u2AA9','gesdot':'\\u2A80','gesdoto':'\\u2A82','gesdotol':'\\u2A84','gesl':'\\u22DB\\uFE00','gesles':'\\u2A94','gfr':'\\uD835\\uDD24','Gfr':'\\uD835\\uDD0A','gg':'\\u226B','Gg':'\\u22D9','ggg':'\\u22D9','gimel':'\\u2137','gjcy':'\\u0453','GJcy':'\\u0403','gl':'\\u2277','gla':'\\u2AA5','glE':'\\u2A92','glj':'\\u2AA4','gnap':'\\u2A8A','gnapprox':'\\u2A8A','gne':'\\u2A88','gnE':'\\u2269','gneq':'\\u2A88','gneqq':'\\u2269','gnsim':'\\u22E7','gopf':'\\uD835\\uDD58','Gopf':'\\uD835\\uDD3E','grave':'`','GreaterEqual':'\\u2265','GreaterEqualLess':'\\u22DB','GreaterFullEqual':'\\u2267','GreaterGreater':'\\u2AA2','GreaterLess':'\\u2277','GreaterSlantEqual':'\\u2A7E','GreaterTilde':'\\u2273','gscr':'\\u210A','Gscr':'\\uD835\\uDCA2','gsim':'\\u2273','gsime':'\\u2A8E','gsiml':'\\u2A90','gt':'>','Gt':'\\u226B','GT':'>','gtcc':'\\u2AA7','gtcir':'\\u2A7A','gtdot':'\\u22D7','gtlPar':'\\u2995','gtquest':'\\u2A7C','gtrapprox':'\\u2A86','gtrarr':'\\u2978','gtrdot':'\\u22D7','gtreqless':'\\u22DB','gtreqqless':'\\u2A8C','gtrless':'\\u2277','gtrsim':'\\u2273','gvertneqq':'\\u2269\\uFE00','gvnE':'\\u2269\\uFE00','Hacek':'\\u02C7','hairsp':'\\u200A','half':'\\xBD','hamilt':'\\u210B','hardcy':'\\u044A','HARDcy':'\\u042A','harr':'\\u2194','hArr':'\\u21D4','harrcir':'\\u2948','harrw':'\\u21AD','Hat':'^','hbar':'\\u210F','hcirc':'\\u0125','Hcirc':'\\u0124','hearts':'\\u2665','heartsuit':'\\u2665','hellip':'\\u2026','hercon':'\\u22B9','hfr':'\\uD835\\uDD25','Hfr':'\\u210C','HilbertSpace':'\\u210B','hksearow':'\\u2925','hkswarow':'\\u2926','hoarr':'\\u21FF','homtht':'\\u223B','hookleftarrow':'\\u21A9','hookrightarrow':'\\u21AA','hopf':'\\uD835\\uDD59','Hopf':'\\u210D','horbar':'\\u2015','HorizontalLine':'\\u2500','hscr':'\\uD835\\uDCBD','Hscr':'\\u210B','hslash':'\\u210F','hstrok':'\\u0127','Hstrok':'\\u0126','HumpDownHump':'\\u224E','HumpEqual':'\\u224F','hybull':'\\u2043','hyphen':'\\u2010','iacute':'\\xED','Iacute':'\\xCD','ic':'\\u2063','icirc':'\\xEE','Icirc':'\\xCE','icy':'\\u0438','Icy':'\\u0418','Idot':'\\u0130','iecy':'\\u0435','IEcy':'\\u0415','iexcl':'\\xA1','iff':'\\u21D4','ifr':'\\uD835\\uDD26','Ifr':'\\u2111','igrave':'\\xEC','Igrave':'\\xCC','ii':'\\u2148','iiiint':'\\u2A0C','iiint':'\\u222D','iinfin':'\\u29DC','iiota':'\\u2129','ijlig':'\\u0133','IJlig':'\\u0132','Im':'\\u2111','imacr':'\\u012B','Imacr':'\\u012A','image':'\\u2111','ImaginaryI':'\\u2148','imagline':'\\u2110','imagpart':'\\u2111','imath':'\\u0131','imof':'\\u22B7','imped':'\\u01B5','Implies':'\\u21D2','in':'\\u2208','incare':'\\u2105','infin':'\\u221E','infintie':'\\u29DD','inodot':'\\u0131','int':'\\u222B','Int':'\\u222C','intcal':'\\u22BA','integers':'\\u2124','Integral':'\\u222B','intercal':'\\u22BA','Intersection':'\\u22C2','intlarhk':'\\u2A17','intprod':'\\u2A3C','InvisibleComma':'\\u2063','InvisibleTimes':'\\u2062','iocy':'\\u0451','IOcy':'\\u0401','iogon':'\\u012F','Iogon':'\\u012E','iopf':'\\uD835\\uDD5A','Iopf':'\\uD835\\uDD40','iota':'\\u03B9','Iota':'\\u0399','iprod':'\\u2A3C','iquest':'\\xBF','iscr':'\\uD835\\uDCBE','Iscr':'\\u2110','isin':'\\u2208','isindot':'\\u22F5','isinE':'\\u22F9','isins':'\\u22F4','isinsv':'\\u22F3','isinv':'\\u2208','it':'\\u2062','itilde':'\\u0129','Itilde':'\\u0128','iukcy':'\\u0456','Iukcy':'\\u0406','iuml':'\\xEF','Iuml':'\\xCF','jcirc':'\\u0135','Jcirc':'\\u0134','jcy':'\\u0439','Jcy':'\\u0419','jfr':'\\uD835\\uDD27','Jfr':'\\uD835\\uDD0D','jmath':'\\u0237','jopf':'\\uD835\\uDD5B','Jopf':'\\uD835\\uDD41','jscr':'\\uD835\\uDCBF','Jscr':'\\uD835\\uDCA5','jsercy':'\\u0458','Jsercy':'\\u0408','jukcy':'\\u0454','Jukcy':'\\u0404','kappa':'\\u03BA','Kappa':'\\u039A','kappav':'\\u03F0','kcedil':'\\u0137','Kcedil':'\\u0136','kcy':'\\u043A','Kcy':'\\u041A','kfr':'\\uD835\\uDD28','Kfr':'\\uD835\\uDD0E','kgreen':'\\u0138','khcy':'\\u0445','KHcy':'\\u0425','kjcy':'\\u045C','KJcy':'\\u040C','kopf':'\\uD835\\uDD5C','Kopf':'\\uD835\\uDD42','kscr':'\\uD835\\uDCC0','Kscr':'\\uD835\\uDCA6','lAarr':'\\u21DA','lacute':'\\u013A','Lacute':'\\u0139','laemptyv':'\\u29B4','lagran':'\\u2112','lambda':'\\u03BB','Lambda':'\\u039B','lang':'\\u27E8','Lang':'\\u27EA','langd':'\\u2991','langle':'\\u27E8','lap':'\\u2A85','Laplacetrf':'\\u2112','laquo':'\\xAB','larr':'\\u2190','lArr':'\\u21D0','Larr':'\\u219E','larrb':'\\u21E4','larrbfs':'\\u291F','larrfs':'\\u291D','larrhk':'\\u21A9','larrlp':'\\u21AB','larrpl':'\\u2939','larrsim':'\\u2973','larrtl':'\\u21A2','lat':'\\u2AAB','latail':'\\u2919','lAtail':'\\u291B','late':'\\u2AAD','lates':'\\u2AAD\\uFE00','lbarr':'\\u290C','lBarr':'\\u290E','lbbrk':'\\u2772','lbrace':'{','lbrack':'[','lbrke':'\\u298B','lbrksld':'\\u298F','lbrkslu':'\\u298D','lcaron':'\\u013E','Lcaron':'\\u013D','lcedil':'\\u013C','Lcedil':'\\u013B','lceil':'\\u2308','lcub':'{','lcy':'\\u043B','Lcy':'\\u041B','ldca':'\\u2936','ldquo':'\\u201C','ldquor':'\\u201E','ldrdhar':'\\u2967','ldrushar':'\\u294B','ldsh':'\\u21B2','le':'\\u2264','lE':'\\u2266','LeftAngleBracket':'\\u27E8','leftarrow':'\\u2190','Leftarrow':'\\u21D0','LeftArrow':'\\u2190','LeftArrowBar':'\\u21E4','LeftArrowRightArrow':'\\u21C6','leftarrowtail':'\\u21A2','LeftCeiling':'\\u2308','LeftDoubleBracket':'\\u27E6','LeftDownTeeVector':'\\u2961','LeftDownVector':'\\u21C3','LeftDownVectorBar':'\\u2959','LeftFloor':'\\u230A','leftharpoondown':'\\u21BD','leftharpoonup':'\\u21BC','leftleftarrows':'\\u21C7','leftrightarrow':'\\u2194','Leftrightarrow':'\\u21D4','LeftRightArrow':'\\u2194','leftrightarrows':'\\u21C6','leftrightharpoons':'\\u21CB','leftrightsquigarrow':'\\u21AD','LeftRightVector':'\\u294E','LeftTee':'\\u22A3','LeftTeeArrow':'\\u21A4','LeftTeeVector':'\\u295A','leftthreetimes':'\\u22CB','LeftTriangle':'\\u22B2','LeftTriangleBar':'\\u29CF','LeftTriangleEqual':'\\u22B4','LeftUpDownVector':'\\u2951','LeftUpTeeVector':'\\u2960','LeftUpVector':'\\u21BF','LeftUpVectorBar':'\\u2958','LeftVector':'\\u21BC','LeftVectorBar':'\\u2952','leg':'\\u22DA','lEg':'\\u2A8B','leq':'\\u2264','leqq':'\\u2266','leqslant':'\\u2A7D','les':'\\u2A7D','lescc':'\\u2AA8','lesdot':'\\u2A7F','lesdoto':'\\u2A81','lesdotor':'\\u2A83','lesg':'\\u22DA\\uFE00','lesges':'\\u2A93','lessapprox':'\\u2A85','lessdot':'\\u22D6','lesseqgtr':'\\u22DA','lesseqqgtr':'\\u2A8B','LessEqualGreater':'\\u22DA','LessFullEqual':'\\u2266','LessGreater':'\\u2276','lessgtr':'\\u2276','LessLess':'\\u2AA1','lesssim':'\\u2272','LessSlantEqual':'\\u2A7D','LessTilde':'\\u2272','lfisht':'\\u297C','lfloor':'\\u230A','lfr':'\\uD835\\uDD29','Lfr':'\\uD835\\uDD0F','lg':'\\u2276','lgE':'\\u2A91','lHar':'\\u2962','lhard':'\\u21BD','lharu':'\\u21BC','lharul':'\\u296A','lhblk':'\\u2584','ljcy':'\\u0459','LJcy':'\\u0409','ll':'\\u226A','Ll':'\\u22D8','llarr':'\\u21C7','llcorner':'\\u231E','Lleftarrow':'\\u21DA','llhard':'\\u296B','lltri':'\\u25FA','lmidot':'\\u0140','Lmidot':'\\u013F','lmoust':'\\u23B0','lmoustache':'\\u23B0','lnap':'\\u2A89','lnapprox':'\\u2A89','lne':'\\u2A87','lnE':'\\u2268','lneq':'\\u2A87','lneqq':'\\u2268','lnsim':'\\u22E6','loang':'\\u27EC','loarr':'\\u21FD','lobrk':'\\u27E6','longleftarrow':'\\u27F5','Longleftarrow':'\\u27F8','LongLeftArrow':'\\u27F5','longleftrightarrow':'\\u27F7','Longleftrightarrow':'\\u27FA','LongLeftRightArrow':'\\u27F7','longmapsto':'\\u27FC','longrightarrow':'\\u27F6','Longrightarrow':'\\u27F9','LongRightArrow':'\\u27F6','looparrowleft':'\\u21AB','looparrowright':'\\u21AC','lopar':'\\u2985','lopf':'\\uD835\\uDD5D','Lopf':'\\uD835\\uDD43','loplus':'\\u2A2D','lotimes':'\\u2A34','lowast':'\\u2217','lowbar':'_','LowerLeftArrow':'\\u2199','LowerRightArrow':'\\u2198','loz':'\\u25CA','lozenge':'\\u25CA','lozf':'\\u29EB','lpar':'(','lparlt':'\\u2993','lrarr':'\\u21C6','lrcorner':'\\u231F','lrhar':'\\u21CB','lrhard':'\\u296D','lrm':'\\u200E','lrtri':'\\u22BF','lsaquo':'\\u2039','lscr':'\\uD835\\uDCC1','Lscr':'\\u2112','lsh':'\\u21B0','Lsh':'\\u21B0','lsim':'\\u2272','lsime':'\\u2A8D','lsimg':'\\u2A8F','lsqb':'[','lsquo':'\\u2018','lsquor':'\\u201A','lstrok':'\\u0142','Lstrok':'\\u0141','lt':'<','Lt':'\\u226A','LT':'<','ltcc':'\\u2AA6','ltcir':'\\u2A79','ltdot':'\\u22D6','lthree':'\\u22CB','ltimes':'\\u22C9','ltlarr':'\\u2976','ltquest':'\\u2A7B','ltri':'\\u25C3','ltrie':'\\u22B4','ltrif':'\\u25C2','ltrPar':'\\u2996','lurdshar':'\\u294A','luruhar':'\\u2966','lvertneqq':'\\u2268\\uFE00','lvnE':'\\u2268\\uFE00','macr':'\\xAF','male':'\\u2642','malt':'\\u2720','maltese':'\\u2720','map':'\\u21A6','Map':'\\u2905','mapsto':'\\u21A6','mapstodown':'\\u21A7','mapstoleft':'\\u21A4','mapstoup':'\\u21A5','marker':'\\u25AE','mcomma':'\\u2A29','mcy':'\\u043C','Mcy':'\\u041C','mdash':'\\u2014','mDDot':'\\u223A','measuredangle':'\\u2221','MediumSpace':'\\u205F','Mellintrf':'\\u2133','mfr':'\\uD835\\uDD2A','Mfr':'\\uD835\\uDD10','mho':'\\u2127','micro':'\\xB5','mid':'\\u2223','midast':'*','midcir':'\\u2AF0','middot':'\\xB7','minus':'\\u2212','minusb':'\\u229F','minusd':'\\u2238','minusdu':'\\u2A2A','MinusPlus':'\\u2213','mlcp':'\\u2ADB','mldr':'\\u2026','mnplus':'\\u2213','models':'\\u22A7','mopf':'\\uD835\\uDD5E','Mopf':'\\uD835\\uDD44','mp':'\\u2213','mscr':'\\uD835\\uDCC2','Mscr':'\\u2133','mstpos':'\\u223E','mu':'\\u03BC','Mu':'\\u039C','multimap':'\\u22B8','mumap':'\\u22B8','nabla':'\\u2207','nacute':'\\u0144','Nacute':'\\u0143','nang':'\\u2220\\u20D2','nap':'\\u2249','napE':'\\u2A70\\u0338','napid':'\\u224B\\u0338','napos':'\\u0149','napprox':'\\u2249','natur':'\\u266E','natural':'\\u266E','naturals':'\\u2115','nbsp':'\\xA0','nbump':'\\u224E\\u0338','nbumpe':'\\u224F\\u0338','ncap':'\\u2A43','ncaron':'\\u0148','Ncaron':'\\u0147','ncedil':'\\u0146','Ncedil':'\\u0145','ncong':'\\u2247','ncongdot':'\\u2A6D\\u0338','ncup':'\\u2A42','ncy':'\\u043D','Ncy':'\\u041D','ndash':'\\u2013','ne':'\\u2260','nearhk':'\\u2924','nearr':'\\u2197','neArr':'\\u21D7','nearrow':'\\u2197','nedot':'\\u2250\\u0338','NegativeMediumSpace':'\\u200B','NegativeThickSpace':'\\u200B','NegativeThinSpace':'\\u200B','NegativeVeryThinSpace':'\\u200B','nequiv':'\\u2262','nesear':'\\u2928','nesim':'\\u2242\\u0338','NestedGreaterGreater':'\\u226B','NestedLessLess':'\\u226A','NewLine':'\\n','nexist':'\\u2204','nexists':'\\u2204','nfr':'\\uD835\\uDD2B','Nfr':'\\uD835\\uDD11','nge':'\\u2271','ngE':'\\u2267\\u0338','ngeq':'\\u2271','ngeqq':'\\u2267\\u0338','ngeqslant':'\\u2A7E\\u0338','nges':'\\u2A7E\\u0338','nGg':'\\u22D9\\u0338','ngsim':'\\u2275','ngt':'\\u226F','nGt':'\\u226B\\u20D2','ngtr':'\\u226F','nGtv':'\\u226B\\u0338','nharr':'\\u21AE','nhArr':'\\u21CE','nhpar':'\\u2AF2','ni':'\\u220B','nis':'\\u22FC','nisd':'\\u22FA','niv':'\\u220B','njcy':'\\u045A','NJcy':'\\u040A','nlarr':'\\u219A','nlArr':'\\u21CD','nldr':'\\u2025','nle':'\\u2270','nlE':'\\u2266\\u0338','nleftarrow':'\\u219A','nLeftarrow':'\\u21CD','nleftrightarrow':'\\u21AE','nLeftrightarrow':'\\u21CE','nleq':'\\u2270','nleqq':'\\u2266\\u0338','nleqslant':'\\u2A7D\\u0338','nles':'\\u2A7D\\u0338','nless':'\\u226E','nLl':'\\u22D8\\u0338','nlsim':'\\u2274','nlt':'\\u226E','nLt':'\\u226A\\u20D2','nltri':'\\u22EA','nltrie':'\\u22EC','nLtv':'\\u226A\\u0338','nmid':'\\u2224','NoBreak':'\\u2060','NonBreakingSpace':'\\xA0','nopf':'\\uD835\\uDD5F','Nopf':'\\u2115','not':'\\xAC','Not':'\\u2AEC','NotCongruent':'\\u2262','NotCupCap':'\\u226D','NotDoubleVerticalBar':'\\u2226','NotElement':'\\u2209','NotEqual':'\\u2260','NotEqualTilde':'\\u2242\\u0338','NotExists':'\\u2204','NotGreater':'\\u226F','NotGreaterEqual':'\\u2271','NotGreaterFullEqual':'\\u2267\\u0338','NotGreaterGreater':'\\u226B\\u0338','NotGreaterLess':'\\u2279','NotGreaterSlantEqual':'\\u2A7E\\u0338','NotGreaterTilde':'\\u2275','NotHumpDownHump':'\\u224E\\u0338','NotHumpEqual':'\\u224F\\u0338','notin':'\\u2209','notindot':'\\u22F5\\u0338','notinE':'\\u22F9\\u0338','notinva':'\\u2209','notinvb':'\\u22F7','notinvc':'\\u22F6','NotLeftTriangle':'\\u22EA','NotLeftTriangleBar':'\\u29CF\\u0338','NotLeftTriangleEqual':'\\u22EC','NotLess':'\\u226E','NotLessEqual':'\\u2270','NotLessGreater':'\\u2278','NotLessLess':'\\u226A\\u0338','NotLessSlantEqual':'\\u2A7D\\u0338','NotLessTilde':'\\u2274','NotNestedGreaterGreater':'\\u2AA2\\u0338','NotNestedLessLess':'\\u2AA1\\u0338','notni':'\\u220C','notniva':'\\u220C','notnivb':'\\u22FE','notnivc':'\\u22FD','NotPrecedes':'\\u2280','NotPrecedesEqual':'\\u2AAF\\u0338','NotPrecedesSlantEqual':'\\u22E0','NotReverseElement':'\\u220C','NotRightTriangle':'\\u22EB','NotRightTriangleBar':'\\u29D0\\u0338','NotRightTriangleEqual':'\\u22ED','NotSquareSubset':'\\u228F\\u0338','NotSquareSubsetEqual':'\\u22E2','NotSquareSuperset':'\\u2290\\u0338','NotSquareSupersetEqual':'\\u22E3','NotSubset':'\\u2282\\u20D2','NotSubsetEqual':'\\u2288','NotSucceeds':'\\u2281','NotSucceedsEqual':'\\u2AB0\\u0338','NotSucceedsSlantEqual':'\\u22E1','NotSucceedsTilde':'\\u227F\\u0338','NotSuperset':'\\u2283\\u20D2','NotSupersetEqual':'\\u2289','NotTilde':'\\u2241','NotTildeEqual':'\\u2244','NotTildeFullEqual':'\\u2247','NotTildeTilde':'\\u2249','NotVerticalBar':'\\u2224','npar':'\\u2226','nparallel':'\\u2226','nparsl':'\\u2AFD\\u20E5','npart':'\\u2202\\u0338','npolint':'\\u2A14','npr':'\\u2280','nprcue':'\\u22E0','npre':'\\u2AAF\\u0338','nprec':'\\u2280','npreceq':'\\u2AAF\\u0338','nrarr':'\\u219B','nrArr':'\\u21CF','nrarrc':'\\u2933\\u0338','nrarrw':'\\u219D\\u0338','nrightarrow':'\\u219B','nRightarrow':'\\u21CF','nrtri':'\\u22EB','nrtrie':'\\u22ED','nsc':'\\u2281','nsccue':'\\u22E1','nsce':'\\u2AB0\\u0338','nscr':'\\uD835\\uDCC3','Nscr':'\\uD835\\uDCA9','nshortmid':'\\u2224','nshortparallel':'\\u2226','nsim':'\\u2241','nsime':'\\u2244','nsimeq':'\\u2244','nsmid':'\\u2224','nspar':'\\u2226','nsqsube':'\\u22E2','nsqsupe':'\\u22E3','nsub':'\\u2284','nsube':'\\u2288','nsubE':'\\u2AC5\\u0338','nsubset':'\\u2282\\u20D2','nsubseteq':'\\u2288','nsubseteqq':'\\u2AC5\\u0338','nsucc':'\\u2281','nsucceq':'\\u2AB0\\u0338','nsup':'\\u2285','nsupe':'\\u2289','nsupE':'\\u2AC6\\u0338','nsupset':'\\u2283\\u20D2','nsupseteq':'\\u2289','nsupseteqq':'\\u2AC6\\u0338','ntgl':'\\u2279','ntilde':'\\xF1','Ntilde':'\\xD1','ntlg':'\\u2278','ntriangleleft':'\\u22EA','ntrianglelefteq':'\\u22EC','ntriangleright':'\\u22EB','ntrianglerighteq':'\\u22ED','nu':'\\u03BD','Nu':'\\u039D','num':'#','numero':'\\u2116','numsp':'\\u2007','nvap':'\\u224D\\u20D2','nvdash':'\\u22AC','nvDash':'\\u22AD','nVdash':'\\u22AE','nVDash':'\\u22AF','nvge':'\\u2265\\u20D2','nvgt':'>\\u20D2','nvHarr':'\\u2904','nvinfin':'\\u29DE','nvlArr':'\\u2902','nvle':'\\u2264\\u20D2','nvlt':'<\\u20D2','nvltrie':'\\u22B4\\u20D2','nvrArr':'\\u2903','nvrtrie':'\\u22B5\\u20D2','nvsim':'\\u223C\\u20D2','nwarhk':'\\u2923','nwarr':'\\u2196','nwArr':'\\u21D6','nwarrow':'\\u2196','nwnear':'\\u2927','oacute':'\\xF3','Oacute':'\\xD3','oast':'\\u229B','ocir':'\\u229A','ocirc':'\\xF4','Ocirc':'\\xD4','ocy':'\\u043E','Ocy':'\\u041E','odash':'\\u229D','odblac':'\\u0151','Odblac':'\\u0150','odiv':'\\u2A38','odot':'\\u2299','odsold':'\\u29BC','oelig':'\\u0153','OElig':'\\u0152','ofcir':'\\u29BF','ofr':'\\uD835\\uDD2C','Ofr':'\\uD835\\uDD12','ogon':'\\u02DB','ograve':'\\xF2','Ograve':'\\xD2','ogt':'\\u29C1','ohbar':'\\u29B5','ohm':'\\u03A9','oint':'\\u222E','olarr':'\\u21BA','olcir':'\\u29BE','olcross':'\\u29BB','oline':'\\u203E','olt':'\\u29C0','omacr':'\\u014D','Omacr':'\\u014C','omega':'\\u03C9','Omega':'\\u03A9','omicron':'\\u03BF','Omicron':'\\u039F','omid':'\\u29B6','ominus':'\\u2296','oopf':'\\uD835\\uDD60','Oopf':'\\uD835\\uDD46','opar':'\\u29B7','OpenCurlyDoubleQuote':'\\u201C','OpenCurlyQuote':'\\u2018','operp':'\\u29B9','oplus':'\\u2295','or':'\\u2228','Or':'\\u2A54','orarr':'\\u21BB','ord':'\\u2A5D','order':'\\u2134','orderof':'\\u2134','ordf':'\\xAA','ordm':'\\xBA','origof':'\\u22B6','oror':'\\u2A56','orslope':'\\u2A57','orv':'\\u2A5B','oS':'\\u24C8','oscr':'\\u2134','Oscr':'\\uD835\\uDCAA','oslash':'\\xF8','Oslash':'\\xD8','osol':'\\u2298','otilde':'\\xF5','Otilde':'\\xD5','otimes':'\\u2297','Otimes':'\\u2A37','otimesas':'\\u2A36','ouml':'\\xF6','Ouml':'\\xD6','ovbar':'\\u233D','OverBar':'\\u203E','OverBrace':'\\u23DE','OverBracket':'\\u23B4','OverParenthesis':'\\u23DC','par':'\\u2225','para':'\\xB6','parallel':'\\u2225','parsim':'\\u2AF3','parsl':'\\u2AFD','part':'\\u2202','PartialD':'\\u2202','pcy':'\\u043F','Pcy':'\\u041F','percnt':'%','period':'.','permil':'\\u2030','perp':'\\u22A5','pertenk':'\\u2031','pfr':'\\uD835\\uDD2D','Pfr':'\\uD835\\uDD13','phi':'\\u03C6','Phi':'\\u03A6','phiv':'\\u03D5','phmmat':'\\u2133','phone':'\\u260E','pi':'\\u03C0','Pi':'\\u03A0','pitchfork':'\\u22D4','piv':'\\u03D6','planck':'\\u210F','planckh':'\\u210E','plankv':'\\u210F','plus':'+','plusacir':'\\u2A23','plusb':'\\u229E','pluscir':'\\u2A22','plusdo':'\\u2214','plusdu':'\\u2A25','pluse':'\\u2A72','PlusMinus':'\\xB1','plusmn':'\\xB1','plussim':'\\u2A26','plustwo':'\\u2A27','pm':'\\xB1','Poincareplane':'\\u210C','pointint':'\\u2A15','popf':'\\uD835\\uDD61','Popf':'\\u2119','pound':'\\xA3','pr':'\\u227A','Pr':'\\u2ABB','prap':'\\u2AB7','prcue':'\\u227C','pre':'\\u2AAF','prE':'\\u2AB3','prec':'\\u227A','precapprox':'\\u2AB7','preccurlyeq':'\\u227C','Precedes':'\\u227A','PrecedesEqual':'\\u2AAF','PrecedesSlantEqual':'\\u227C','PrecedesTilde':'\\u227E','preceq':'\\u2AAF','precnapprox':'\\u2AB9','precneqq':'\\u2AB5','precnsim':'\\u22E8','precsim':'\\u227E','prime':'\\u2032','Prime':'\\u2033','primes':'\\u2119','prnap':'\\u2AB9','prnE':'\\u2AB5','prnsim':'\\u22E8','prod':'\\u220F','Product':'\\u220F','profalar':'\\u232E','profline':'\\u2312','profsurf':'\\u2313','prop':'\\u221D','Proportion':'\\u2237','Proportional':'\\u221D','propto':'\\u221D','prsim':'\\u227E','prurel':'\\u22B0','pscr':'\\uD835\\uDCC5','Pscr':'\\uD835\\uDCAB','psi':'\\u03C8','Psi':'\\u03A8','puncsp':'\\u2008','qfr':'\\uD835\\uDD2E','Qfr':'\\uD835\\uDD14','qint':'\\u2A0C','qopf':'\\uD835\\uDD62','Qopf':'\\u211A','qprime':'\\u2057','qscr':'\\uD835\\uDCC6','Qscr':'\\uD835\\uDCAC','quaternions':'\\u210D','quatint':'\\u2A16','quest':'?','questeq':'\\u225F','quot':'\"','QUOT':'\"','rAarr':'\\u21DB','race':'\\u223D\\u0331','racute':'\\u0155','Racute':'\\u0154','radic':'\\u221A','raemptyv':'\\u29B3','rang':'\\u27E9','Rang':'\\u27EB','rangd':'\\u2992','range':'\\u29A5','rangle':'\\u27E9','raquo':'\\xBB','rarr':'\\u2192','rArr':'\\u21D2','Rarr':'\\u21A0','rarrap':'\\u2975','rarrb':'\\u21E5','rarrbfs':'\\u2920','rarrc':'\\u2933','rarrfs':'\\u291E','rarrhk':'\\u21AA','rarrlp':'\\u21AC','rarrpl':'\\u2945','rarrsim':'\\u2974','rarrtl':'\\u21A3','Rarrtl':'\\u2916','rarrw':'\\u219D','ratail':'\\u291A','rAtail':'\\u291C','ratio':'\\u2236','rationals':'\\u211A','rbarr':'\\u290D','rBarr':'\\u290F','RBarr':'\\u2910','rbbrk':'\\u2773','rbrace':'}','rbrack':']','rbrke':'\\u298C','rbrksld':'\\u298E','rbrkslu':'\\u2990','rcaron':'\\u0159','Rcaron':'\\u0158','rcedil':'\\u0157','Rcedil':'\\u0156','rceil':'\\u2309','rcub':'}','rcy':'\\u0440','Rcy':'\\u0420','rdca':'\\u2937','rdldhar':'\\u2969','rdquo':'\\u201D','rdquor':'\\u201D','rdsh':'\\u21B3','Re':'\\u211C','real':'\\u211C','realine':'\\u211B','realpart':'\\u211C','reals':'\\u211D','rect':'\\u25AD','reg':'\\xAE','REG':'\\xAE','ReverseElement':'\\u220B','ReverseEquilibrium':'\\u21CB','ReverseUpEquilibrium':'\\u296F','rfisht':'\\u297D','rfloor':'\\u230B','rfr':'\\uD835\\uDD2F','Rfr':'\\u211C','rHar':'\\u2964','rhard':'\\u21C1','rharu':'\\u21C0','rharul':'\\u296C','rho':'\\u03C1','Rho':'\\u03A1','rhov':'\\u03F1','RightAngleBracket':'\\u27E9','rightarrow':'\\u2192','Rightarrow':'\\u21D2','RightArrow':'\\u2192','RightArrowBar':'\\u21E5','RightArrowLeftArrow':'\\u21C4','rightarrowtail':'\\u21A3','RightCeiling':'\\u2309','RightDoubleBracket':'\\u27E7','RightDownTeeVector':'\\u295D','RightDownVector':'\\u21C2','RightDownVectorBar':'\\u2955','RightFloor':'\\u230B','rightharpoondown':'\\u21C1','rightharpoonup':'\\u21C0','rightleftarrows':'\\u21C4','rightleftharpoons':'\\u21CC','rightrightarrows':'\\u21C9','rightsquigarrow':'\\u219D','RightTee':'\\u22A2','RightTeeArrow':'\\u21A6','RightTeeVector':'\\u295B','rightthreetimes':'\\u22CC','RightTriangle':'\\u22B3','RightTriangleBar':'\\u29D0','RightTriangleEqual':'\\u22B5','RightUpDownVector':'\\u294F','RightUpTeeVector':'\\u295C','RightUpVector':'\\u21BE','RightUpVectorBar':'\\u2954','RightVector':'\\u21C0','RightVectorBar':'\\u2953','ring':'\\u02DA','risingdotseq':'\\u2253','rlarr':'\\u21C4','rlhar':'\\u21CC','rlm':'\\u200F','rmoust':'\\u23B1','rmoustache':'\\u23B1','rnmid':'\\u2AEE','roang':'\\u27ED','roarr':'\\u21FE','robrk':'\\u27E7','ropar':'\\u2986','ropf':'\\uD835\\uDD63','Ropf':'\\u211D','roplus':'\\u2A2E','rotimes':'\\u2A35','RoundImplies':'\\u2970','rpar':')','rpargt':'\\u2994','rppolint':'\\u2A12','rrarr':'\\u21C9','Rrightarrow':'\\u21DB','rsaquo':'\\u203A','rscr':'\\uD835\\uDCC7','Rscr':'\\u211B','rsh':'\\u21B1','Rsh':'\\u21B1','rsqb':']','rsquo':'\\u2019','rsquor':'\\u2019','rthree':'\\u22CC','rtimes':'\\u22CA','rtri':'\\u25B9','rtrie':'\\u22B5','rtrif':'\\u25B8','rtriltri':'\\u29CE','RuleDelayed':'\\u29F4','ruluhar':'\\u2968','rx':'\\u211E','sacute':'\\u015B','Sacute':'\\u015A','sbquo':'\\u201A','sc':'\\u227B','Sc':'\\u2ABC','scap':'\\u2AB8','scaron':'\\u0161','Scaron':'\\u0160','sccue':'\\u227D','sce':'\\u2AB0','scE':'\\u2AB4','scedil':'\\u015F','Scedil':'\\u015E','scirc':'\\u015D','Scirc':'\\u015C','scnap':'\\u2ABA','scnE':'\\u2AB6','scnsim':'\\u22E9','scpolint':'\\u2A13','scsim':'\\u227F','scy':'\\u0441','Scy':'\\u0421','sdot':'\\u22C5','sdotb':'\\u22A1','sdote':'\\u2A66','searhk':'\\u2925','searr':'\\u2198','seArr':'\\u21D8','searrow':'\\u2198','sect':'\\xA7','semi':';','seswar':'\\u2929','setminus':'\\u2216','setmn':'\\u2216','sext':'\\u2736','sfr':'\\uD835\\uDD30','Sfr':'\\uD835\\uDD16','sfrown':'\\u2322','sharp':'\\u266F','shchcy':'\\u0449','SHCHcy':'\\u0429','shcy':'\\u0448','SHcy':'\\u0428','ShortDownArrow':'\\u2193','ShortLeftArrow':'\\u2190','shortmid':'\\u2223','shortparallel':'\\u2225','ShortRightArrow':'\\u2192','ShortUpArrow':'\\u2191','shy':'\\xAD','sigma':'\\u03C3','Sigma':'\\u03A3','sigmaf':'\\u03C2','sigmav':'\\u03C2','sim':'\\u223C','simdot':'\\u2A6A','sime':'\\u2243','simeq':'\\u2243','simg':'\\u2A9E','simgE':'\\u2AA0','siml':'\\u2A9D','simlE':'\\u2A9F','simne':'\\u2246','simplus':'\\u2A24','simrarr':'\\u2972','slarr':'\\u2190','SmallCircle':'\\u2218','smallsetminus':'\\u2216','smashp':'\\u2A33','smeparsl':'\\u29E4','smid':'\\u2223','smile':'\\u2323','smt':'\\u2AAA','smte':'\\u2AAC','smtes':'\\u2AAC\\uFE00','softcy':'\\u044C','SOFTcy':'\\u042C','sol':'/','solb':'\\u29C4','solbar':'\\u233F','sopf':'\\uD835\\uDD64','Sopf':'\\uD835\\uDD4A','spades':'\\u2660','spadesuit':'\\u2660','spar':'\\u2225','sqcap':'\\u2293','sqcaps':'\\u2293\\uFE00','sqcup':'\\u2294','sqcups':'\\u2294\\uFE00','Sqrt':'\\u221A','sqsub':'\\u228F','sqsube':'\\u2291','sqsubset':'\\u228F','sqsubseteq':'\\u2291','sqsup':'\\u2290','sqsupe':'\\u2292','sqsupset':'\\u2290','sqsupseteq':'\\u2292','squ':'\\u25A1','square':'\\u25A1','Square':'\\u25A1','SquareIntersection':'\\u2293','SquareSubset':'\\u228F','SquareSubsetEqual':'\\u2291','SquareSuperset':'\\u2290','SquareSupersetEqual':'\\u2292','SquareUnion':'\\u2294','squarf':'\\u25AA','squf':'\\u25AA','srarr':'\\u2192','sscr':'\\uD835\\uDCC8','Sscr':'\\uD835\\uDCAE','ssetmn':'\\u2216','ssmile':'\\u2323','sstarf':'\\u22C6','star':'\\u2606','Star':'\\u22C6','starf':'\\u2605','straightepsilon':'\\u03F5','straightphi':'\\u03D5','strns':'\\xAF','sub':'\\u2282','Sub':'\\u22D0','subdot':'\\u2ABD','sube':'\\u2286','subE':'\\u2AC5','subedot':'\\u2AC3','submult':'\\u2AC1','subne':'\\u228A','subnE':'\\u2ACB','subplus':'\\u2ABF','subrarr':'\\u2979','subset':'\\u2282','Subset':'\\u22D0','subseteq':'\\u2286','subseteqq':'\\u2AC5','SubsetEqual':'\\u2286','subsetneq':'\\u228A','subsetneqq':'\\u2ACB','subsim':'\\u2AC7','subsub':'\\u2AD5','subsup':'\\u2AD3','succ':'\\u227B','succapprox':'\\u2AB8','succcurlyeq':'\\u227D','Succeeds':'\\u227B','SucceedsEqual':'\\u2AB0','SucceedsSlantEqual':'\\u227D','SucceedsTilde':'\\u227F','succeq':'\\u2AB0','succnapprox':'\\u2ABA','succneqq':'\\u2AB6','succnsim':'\\u22E9','succsim':'\\u227F','SuchThat':'\\u220B','sum':'\\u2211','Sum':'\\u2211','sung':'\\u266A','sup':'\\u2283','Sup':'\\u22D1','sup1':'\\xB9','sup2':'\\xB2','sup3':'\\xB3','supdot':'\\u2ABE','supdsub':'\\u2AD8','supe':'\\u2287','supE':'\\u2AC6','supedot':'\\u2AC4','Superset':'\\u2283','SupersetEqual':'\\u2287','suphsol':'\\u27C9','suphsub':'\\u2AD7','suplarr':'\\u297B','supmult':'\\u2AC2','supne':'\\u228B','supnE':'\\u2ACC','supplus':'\\u2AC0','supset':'\\u2283','Supset':'\\u22D1','supseteq':'\\u2287','supseteqq':'\\u2AC6','supsetneq':'\\u228B','supsetneqq':'\\u2ACC','supsim':'\\u2AC8','supsub':'\\u2AD4','supsup':'\\u2AD6','swarhk':'\\u2926','swarr':'\\u2199','swArr':'\\u21D9','swarrow':'\\u2199','swnwar':'\\u292A','szlig':'\\xDF','Tab':'\\t','target':'\\u2316','tau':'\\u03C4','Tau':'\\u03A4','tbrk':'\\u23B4','tcaron':'\\u0165','Tcaron':'\\u0164','tcedil':'\\u0163','Tcedil':'\\u0162','tcy':'\\u0442','Tcy':'\\u0422','tdot':'\\u20DB','telrec':'\\u2315','tfr':'\\uD835\\uDD31','Tfr':'\\uD835\\uDD17','there4':'\\u2234','therefore':'\\u2234','Therefore':'\\u2234','theta':'\\u03B8','Theta':'\\u0398','thetasym':'\\u03D1','thetav':'\\u03D1','thickapprox':'\\u2248','thicksim':'\\u223C','ThickSpace':'\\u205F\\u200A','thinsp':'\\u2009','ThinSpace':'\\u2009','thkap':'\\u2248','thksim':'\\u223C','thorn':'\\xFE','THORN':'\\xDE','tilde':'\\u02DC','Tilde':'\\u223C','TildeEqual':'\\u2243','TildeFullEqual':'\\u2245','TildeTilde':'\\u2248','times':'\\xD7','timesb':'\\u22A0','timesbar':'\\u2A31','timesd':'\\u2A30','tint':'\\u222D','toea':'\\u2928','top':'\\u22A4','topbot':'\\u2336','topcir':'\\u2AF1','topf':'\\uD835\\uDD65','Topf':'\\uD835\\uDD4B','topfork':'\\u2ADA','tosa':'\\u2929','tprime':'\\u2034','trade':'\\u2122','TRADE':'\\u2122','triangle':'\\u25B5','triangledown':'\\u25BF','triangleleft':'\\u25C3','trianglelefteq':'\\u22B4','triangleq':'\\u225C','triangleright':'\\u25B9','trianglerighteq':'\\u22B5','tridot':'\\u25EC','trie':'\\u225C','triminus':'\\u2A3A','TripleDot':'\\u20DB','triplus':'\\u2A39','trisb':'\\u29CD','tritime':'\\u2A3B','trpezium':'\\u23E2','tscr':'\\uD835\\uDCC9','Tscr':'\\uD835\\uDCAF','tscy':'\\u0446','TScy':'\\u0426','tshcy':'\\u045B','TSHcy':'\\u040B','tstrok':'\\u0167','Tstrok':'\\u0166','twixt':'\\u226C','twoheadleftarrow':'\\u219E','twoheadrightarrow':'\\u21A0','uacute':'\\xFA','Uacute':'\\xDA','uarr':'\\u2191','uArr':'\\u21D1','Uarr':'\\u219F','Uarrocir':'\\u2949','ubrcy':'\\u045E','Ubrcy':'\\u040E','ubreve':'\\u016D','Ubreve':'\\u016C','ucirc':'\\xFB','Ucirc':'\\xDB','ucy':'\\u0443','Ucy':'\\u0423','udarr':'\\u21C5','udblac':'\\u0171','Udblac':'\\u0170','udhar':'\\u296E','ufisht':'\\u297E','ufr':'\\uD835\\uDD32','Ufr':'\\uD835\\uDD18','ugrave':'\\xF9','Ugrave':'\\xD9','uHar':'\\u2963','uharl':'\\u21BF','uharr':'\\u21BE','uhblk':'\\u2580','ulcorn':'\\u231C','ulcorner':'\\u231C','ulcrop':'\\u230F','ultri':'\\u25F8','umacr':'\\u016B','Umacr':'\\u016A','uml':'\\xA8','UnderBar':'_','UnderBrace':'\\u23DF','UnderBracket':'\\u23B5','UnderParenthesis':'\\u23DD','Union':'\\u22C3','UnionPlus':'\\u228E','uogon':'\\u0173','Uogon':'\\u0172','uopf':'\\uD835\\uDD66','Uopf':'\\uD835\\uDD4C','uparrow':'\\u2191','Uparrow':'\\u21D1','UpArrow':'\\u2191','UpArrowBar':'\\u2912','UpArrowDownArrow':'\\u21C5','updownarrow':'\\u2195','Updownarrow':'\\u21D5','UpDownArrow':'\\u2195','UpEquilibrium':'\\u296E','upharpoonleft':'\\u21BF','upharpoonright':'\\u21BE','uplus':'\\u228E','UpperLeftArrow':'\\u2196','UpperRightArrow':'\\u2197','upsi':'\\u03C5','Upsi':'\\u03D2','upsih':'\\u03D2','upsilon':'\\u03C5','Upsilon':'\\u03A5','UpTee':'\\u22A5','UpTeeArrow':'\\u21A5','upuparrows':'\\u21C8','urcorn':'\\u231D','urcorner':'\\u231D','urcrop':'\\u230E','uring':'\\u016F','Uring':'\\u016E','urtri':'\\u25F9','uscr':'\\uD835\\uDCCA','Uscr':'\\uD835\\uDCB0','utdot':'\\u22F0','utilde':'\\u0169','Utilde':'\\u0168','utri':'\\u25B5','utrif':'\\u25B4','uuarr':'\\u21C8','uuml':'\\xFC','Uuml':'\\xDC','uwangle':'\\u29A7','vangrt':'\\u299C','varepsilon':'\\u03F5','varkappa':'\\u03F0','varnothing':'\\u2205','varphi':'\\u03D5','varpi':'\\u03D6','varpropto':'\\u221D','varr':'\\u2195','vArr':'\\u21D5','varrho':'\\u03F1','varsigma':'\\u03C2','varsubsetneq':'\\u228A\\uFE00','varsubsetneqq':'\\u2ACB\\uFE00','varsupsetneq':'\\u228B\\uFE00','varsupsetneqq':'\\u2ACC\\uFE00','vartheta':'\\u03D1','vartriangleleft':'\\u22B2','vartriangleright':'\\u22B3','vBar':'\\u2AE8','Vbar':'\\u2AEB','vBarv':'\\u2AE9','vcy':'\\u0432','Vcy':'\\u0412','vdash':'\\u22A2','vDash':'\\u22A8','Vdash':'\\u22A9','VDash':'\\u22AB','Vdashl':'\\u2AE6','vee':'\\u2228','Vee':'\\u22C1','veebar':'\\u22BB','veeeq':'\\u225A','vellip':'\\u22EE','verbar':'|','Verbar':'\\u2016','vert':'|','Vert':'\\u2016','VerticalBar':'\\u2223','VerticalLine':'|','VerticalSeparator':'\\u2758','VerticalTilde':'\\u2240','VeryThinSpace':'\\u200A','vfr':'\\uD835\\uDD33','Vfr':'\\uD835\\uDD19','vltri':'\\u22B2','vnsub':'\\u2282\\u20D2','vnsup':'\\u2283\\u20D2','vopf':'\\uD835\\uDD67','Vopf':'\\uD835\\uDD4D','vprop':'\\u221D','vrtri':'\\u22B3','vscr':'\\uD835\\uDCCB','Vscr':'\\uD835\\uDCB1','vsubne':'\\u228A\\uFE00','vsubnE':'\\u2ACB\\uFE00','vsupne':'\\u228B\\uFE00','vsupnE':'\\u2ACC\\uFE00','Vvdash':'\\u22AA','vzigzag':'\\u299A','wcirc':'\\u0175','Wcirc':'\\u0174','wedbar':'\\u2A5F','wedge':'\\u2227','Wedge':'\\u22C0','wedgeq':'\\u2259','weierp':'\\u2118','wfr':'\\uD835\\uDD34','Wfr':'\\uD835\\uDD1A','wopf':'\\uD835\\uDD68','Wopf':'\\uD835\\uDD4E','wp':'\\u2118','wr':'\\u2240','wreath':'\\u2240','wscr':'\\uD835\\uDCCC','Wscr':'\\uD835\\uDCB2','xcap':'\\u22C2','xcirc':'\\u25EF','xcup':'\\u22C3','xdtri':'\\u25BD','xfr':'\\uD835\\uDD35','Xfr':'\\uD835\\uDD1B','xharr':'\\u27F7','xhArr':'\\u27FA','xi':'\\u03BE','Xi':'\\u039E','xlarr':'\\u27F5','xlArr':'\\u27F8','xmap':'\\u27FC','xnis':'\\u22FB','xodot':'\\u2A00','xopf':'\\uD835\\uDD69','Xopf':'\\uD835\\uDD4F','xoplus':'\\u2A01','xotime':'\\u2A02','xrarr':'\\u27F6','xrArr':'\\u27F9','xscr':'\\uD835\\uDCCD','Xscr':'\\uD835\\uDCB3','xsqcup':'\\u2A06','xuplus':'\\u2A04','xutri':'\\u25B3','xvee':'\\u22C1','xwedge':'\\u22C0','yacute':'\\xFD','Yacute':'\\xDD','yacy':'\\u044F','YAcy':'\\u042F','ycirc':'\\u0177','Ycirc':'\\u0176','ycy':'\\u044B','Ycy':'\\u042B','yen':'\\xA5','yfr':'\\uD835\\uDD36','Yfr':'\\uD835\\uDD1C','yicy':'\\u0457','YIcy':'\\u0407','yopf':'\\uD835\\uDD6A','Yopf':'\\uD835\\uDD50','yscr':'\\uD835\\uDCCE','Yscr':'\\uD835\\uDCB4','yucy':'\\u044E','YUcy':'\\u042E','yuml':'\\xFF','Yuml':'\\u0178','zacute':'\\u017A','Zacute':'\\u0179','zcaron':'\\u017E','Zcaron':'\\u017D','zcy':'\\u0437','Zcy':'\\u0417','zdot':'\\u017C','Zdot':'\\u017B','zeetrf':'\\u2128','ZeroWidthSpace':'\\u200B','zeta':'\\u03B6','Zeta':'\\u0396','zfr':'\\uD835\\uDD37','Zfr':'\\u2128','zhcy':'\\u0436','ZHcy':'\\u0416','zigrarr':'\\u21DD','zopf':'\\uD835\\uDD6B','Zopf':'\\u2124','zscr':'\\uD835\\uDCCF','Zscr':'\\uD835\\uDCB5','zwj':'\\u200D','zwnj':'\\u200C'};\n\tvar decodeMapLegacy = {'aacute':'\\xE1','Aacute':'\\xC1','acirc':'\\xE2','Acirc':'\\xC2','acute':'\\xB4','aelig':'\\xE6','AElig':'\\xC6','agrave':'\\xE0','Agrave':'\\xC0','amp':'&','AMP':'&','aring':'\\xE5','Aring':'\\xC5','atilde':'\\xE3','Atilde':'\\xC3','auml':'\\xE4','Auml':'\\xC4','brvbar':'\\xA6','ccedil':'\\xE7','Ccedil':'\\xC7','cedil':'\\xB8','cent':'\\xA2','copy':'\\xA9','COPY':'\\xA9','curren':'\\xA4','deg':'\\xB0','divide':'\\xF7','eacute':'\\xE9','Eacute':'\\xC9','ecirc':'\\xEA','Ecirc':'\\xCA','egrave':'\\xE8','Egrave':'\\xC8','eth':'\\xF0','ETH':'\\xD0','euml':'\\xEB','Euml':'\\xCB','frac12':'\\xBD','frac14':'\\xBC','frac34':'\\xBE','gt':'>','GT':'>','iacute':'\\xED','Iacute':'\\xCD','icirc':'\\xEE','Icirc':'\\xCE','iexcl':'\\xA1','igrave':'\\xEC','Igrave':'\\xCC','iquest':'\\xBF','iuml':'\\xEF','Iuml':'\\xCF','laquo':'\\xAB','lt':'<','LT':'<','macr':'\\xAF','micro':'\\xB5','middot':'\\xB7','nbsp':'\\xA0','not':'\\xAC','ntilde':'\\xF1','Ntilde':'\\xD1','oacute':'\\xF3','Oacute':'\\xD3','ocirc':'\\xF4','Ocirc':'\\xD4','ograve':'\\xF2','Ograve':'\\xD2','ordf':'\\xAA','ordm':'\\xBA','oslash':'\\xF8','Oslash':'\\xD8','otilde':'\\xF5','Otilde':'\\xD5','ouml':'\\xF6','Ouml':'\\xD6','para':'\\xB6','plusmn':'\\xB1','pound':'\\xA3','quot':'\"','QUOT':'\"','raquo':'\\xBB','reg':'\\xAE','REG':'\\xAE','sect':'\\xA7','shy':'\\xAD','sup1':'\\xB9','sup2':'\\xB2','sup3':'\\xB3','szlig':'\\xDF','thorn':'\\xFE','THORN':'\\xDE','times':'\\xD7','uacute':'\\xFA','Uacute':'\\xDA','ucirc':'\\xFB','Ucirc':'\\xDB','ugrave':'\\xF9','Ugrave':'\\xD9','uml':'\\xA8','uuml':'\\xFC','Uuml':'\\xDC','yacute':'\\xFD','Yacute':'\\xDD','yen':'\\xA5','yuml':'\\xFF'};\n\tvar decodeMapNumeric = {'0':'\\uFFFD','128':'\\u20AC','130':'\\u201A','131':'\\u0192','132':'\\u201E','133':'\\u2026','134':'\\u2020','135':'\\u2021','136':'\\u02C6','137':'\\u2030','138':'\\u0160','139':'\\u2039','140':'\\u0152','142':'\\u017D','145':'\\u2018','146':'\\u2019','147':'\\u201C','148':'\\u201D','149':'\\u2022','150':'\\u2013','151':'\\u2014','152':'\\u02DC','153':'\\u2122','154':'\\u0161','155':'\\u203A','156':'\\u0153','158':'\\u017E','159':'\\u0178'};\n\tvar invalidReferenceCodePoints = [1,2,3,4,5,6,7,8,11,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,64976,64977,64978,64979,64980,64981,64982,64983,64984,64985,64986,64987,64988,64989,64990,64991,64992,64993,64994,64995,64996,64997,64998,64999,65000,65001,65002,65003,65004,65005,65006,65007,65534,65535,131070,131071,196606,196607,262142,262143,327678,327679,393214,393215,458750,458751,524286,524287,589822,589823,655358,655359,720894,720895,786430,786431,851966,851967,917502,917503,983038,983039,1048574,1048575,1114110,1114111];\n\n\t/*--------------------------------------------------------------------------*/\n\n\tvar stringFromCharCode = String.fromCharCode;\n\n\tvar object = {};\n\tvar hasOwnProperty = object.hasOwnProperty;\n\tvar has = function(object, propertyName) {\n\t\treturn hasOwnProperty.call(object, propertyName);\n\t};\n\n\tvar contains = function(array, value) {\n\t\tvar index = -1;\n\t\tvar length = array.length;\n\t\twhile (++index < length) {\n\t\t\tif (array[index] == value) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\t\treturn false;\n\t};\n\n\tvar merge = function(options, defaults) {\n\t\tif (!options) {\n\t\t\treturn defaults;\n\t\t}\n\t\tvar result = {};\n\t\tvar key;\n\t\tfor (key in defaults) {\n\t\t\t// A `hasOwnProperty` check is not needed here, since only recognized\n\t\t\t// option names are used anyway. Any others are ignored.\n\t\t\tresult[key] = has(options, key) ? options[key] : defaults[key];\n\t\t}\n\t\treturn result;\n\t};\n\n\t// Modified version of `ucs2encode`; see https://mths.be/punycode.\n\tvar codePointToSymbol = function(codePoint, strict) {\n\t\tvar output = '';\n\t\tif ((codePoint >= 0xD800 && codePoint <= 0xDFFF) || codePoint > 0x10FFFF) {\n\t\t\t// See issue #4:\n\t\t\t// “Otherwise, if the number is in the range 0xD800 to 0xDFFF or is\n\t\t\t// greater than 0x10FFFF, then this is a parse error. Return a U+FFFD\n\t\t\t// REPLACEMENT CHARACTER.”\n\t\t\tif (strict) {\n\t\t\t\tparseError('character reference outside the permissible Unicode range');\n\t\t\t}\n\t\t\treturn '\\uFFFD';\n\t\t}\n\t\tif (has(decodeMapNumeric, codePoint)) {\n\t\t\tif (strict) {\n\t\t\t\tparseError('disallowed character reference');\n\t\t\t}\n\t\t\treturn decodeMapNumeric[codePoint];\n\t\t}\n\t\tif (strict && contains(invalidReferenceCodePoints, codePoint)) {\n\t\t\tparseError('disallowed character reference');\n\t\t}\n\t\tif (codePoint > 0xFFFF) {\n\t\t\tcodePoint -= 0x10000;\n\t\t\toutput += stringFromCharCode(codePoint >>> 10 & 0x3FF | 0xD800);\n\t\t\tcodePoint = 0xDC00 | codePoint & 0x3FF;\n\t\t}\n\t\toutput += stringFromCharCode(codePoint);\n\t\treturn output;\n\t};\n\n\tvar hexEscape = function(codePoint) {\n\t\treturn '&#x' + codePoint.toString(16).toUpperCase() + ';';\n\t};\n\n\tvar decEscape = function(codePoint) {\n\t\treturn '&#' + codePoint + ';';\n\t};\n\n\tvar parseError = function(message) {\n\t\tthrow Error('Parse error: ' + message);\n\t};\n\n\t/*--------------------------------------------------------------------------*/\n\n\tvar encode = function(string, options) {\n\t\toptions = merge(options, encode.options);\n\t\tvar strict = options.strict;\n\t\tif (strict && regexInvalidRawCodePoint.test(string)) {\n\t\t\tparseError('forbidden code point');\n\t\t}\n\t\tvar encodeEverything = options.encodeEverything;\n\t\tvar useNamedReferences = options.useNamedReferences;\n\t\tvar allowUnsafeSymbols = options.allowUnsafeSymbols;\n\t\tvar escapeCodePoint = options.decimal ? decEscape : hexEscape;\n\n\t\tvar escapeBmpSymbol = function(symbol) {\n\t\t\treturn escapeCodePoint(symbol.charCodeAt(0));\n\t\t};\n\n\t\tif (encodeEverything) {\n\t\t\t// Encode ASCII symbols.\n\t\t\tstring = string.replace(regexAsciiWhitelist, function(symbol) {\n\t\t\t\t// Use named references if requested & possible.\n\t\t\t\tif (useNamedReferences && has(encodeMap, symbol)) {\n\t\t\t\t\treturn '&' + encodeMap[symbol] + ';';\n\t\t\t\t}\n\t\t\t\treturn escapeBmpSymbol(symbol);\n\t\t\t});\n\t\t\t// Shorten a few escapes that represent two symbols, of which at least one\n\t\t\t// is within the ASCII range.\n\t\t\tif (useNamedReferences) {\n\t\t\t\tstring = string\n\t\t\t\t\t.replace(/>\\u20D2/g, '>⃒')\n\t\t\t\t\t.replace(/<\\u20D2/g, '<⃒')\n\t\t\t\t\t.replace(/fj/g, 'fj');\n\t\t\t}\n\t\t\t// Encode non-ASCII symbols.\n\t\t\tif (useNamedReferences) {\n\t\t\t\t// Encode non-ASCII symbols that can be replaced with a named reference.\n\t\t\t\tstring = string.replace(regexEncodeNonAscii, function(string) {\n\t\t\t\t\t// Note: there is no need to check `has(encodeMap, string)` here.\n\t\t\t\t\treturn '&' + encodeMap[string] + ';';\n\t\t\t\t});\n\t\t\t}\n\t\t\t// Note: any remaining non-ASCII symbols are handled outside of the `if`.\n\t\t} else if (useNamedReferences) {\n\t\t\t// Apply named character references.\n\t\t\t// Encode `<>\"'&` using named character references.\n\t\t\tif (!allowUnsafeSymbols) {\n\t\t\t\tstring = string.replace(regexEscape, function(string) {\n\t\t\t\t\treturn '&' + encodeMap[string] + ';'; // no need to check `has()` here\n\t\t\t\t});\n\t\t\t}\n\t\t\t// Shorten escapes that represent two symbols, of which at least one is\n\t\t\t// `<>\"'&`.\n\t\t\tstring = string\n\t\t\t\t.replace(/>\\u20D2/g, '>⃒')\n\t\t\t\t.replace(/<\\u20D2/g, '<⃒');\n\t\t\t// Encode non-ASCII symbols that can be replaced with a named reference.\n\t\t\tstring = string.replace(regexEncodeNonAscii, function(string) {\n\t\t\t\t// Note: there is no need to check `has(encodeMap, string)` here.\n\t\t\t\treturn '&' + encodeMap[string] + ';';\n\t\t\t});\n\t\t} else if (!allowUnsafeSymbols) {\n\t\t\t// Encode `<>\"'&` using hexadecimal escapes, now that they’re not handled\n\t\t\t// using named character references.\n\t\t\tstring = string.replace(regexEscape, escapeBmpSymbol);\n\t\t}\n\t\treturn string\n\t\t\t// Encode astral symbols.\n\t\t\t.replace(regexAstralSymbols, function($0) {\n\t\t\t\t// https://mathiasbynens.be/notes/javascript-encoding#surrogate-formulae\n\t\t\t\tvar high = $0.charCodeAt(0);\n\t\t\t\tvar low = $0.charCodeAt(1);\n\t\t\t\tvar codePoint = (high - 0xD800) * 0x400 + low - 0xDC00 + 0x10000;\n\t\t\t\treturn escapeCodePoint(codePoint);\n\t\t\t})\n\t\t\t// Encode any remaining BMP symbols that are not printable ASCII symbols\n\t\t\t// using a hexadecimal escape.\n\t\t\t.replace(regexBmpWhitelist, escapeBmpSymbol);\n\t};\n\t// Expose default options (so they can be overridden globally).\n\tencode.options = {\n\t\t'allowUnsafeSymbols': false,\n\t\t'encodeEverything': false,\n\t\t'strict': false,\n\t\t'useNamedReferences': false,\n\t\t'decimal' : false\n\t};\n\n\tvar decode = function(html, options) {\n\t\toptions = merge(options, decode.options);\n\t\tvar strict = options.strict;\n\t\tif (strict && regexInvalidEntity.test(html)) {\n\t\t\tparseError('malformed character reference');\n\t\t}\n\t\treturn html.replace(regexDecode, function($0, $1, $2, $3, $4, $5, $6, $7, $8) {\n\t\t\tvar codePoint;\n\t\t\tvar semicolon;\n\t\t\tvar decDigits;\n\t\t\tvar hexDigits;\n\t\t\tvar reference;\n\t\t\tvar next;\n\n\t\t\tif ($1) {\n\t\t\t\treference = $1;\n\t\t\t\t// Note: there is no need to check `has(decodeMap, reference)`.\n\t\t\t\treturn decodeMap[reference];\n\t\t\t}\n\n\t\t\tif ($2) {\n\t\t\t\t// Decode named character references without trailing `;`, e.g. `&`.\n\t\t\t\t// This is only a parse error if it gets converted to `&`, or if it is\n\t\t\t\t// followed by `=` in an attribute context.\n\t\t\t\treference = $2;\n\t\t\t\tnext = $3;\n\t\t\t\tif (next && options.isAttributeValue) {\n\t\t\t\t\tif (strict && next == '=') {\n\t\t\t\t\t\tparseError('`&` did not start a character reference');\n\t\t\t\t\t}\n\t\t\t\t\treturn $0;\n\t\t\t\t} else {\n\t\t\t\t\tif (strict) {\n\t\t\t\t\t\tparseError(\n\t\t\t\t\t\t\t'named character reference was not terminated by a semicolon'\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t\t// Note: there is no need to check `has(decodeMapLegacy, reference)`.\n\t\t\t\t\treturn decodeMapLegacy[reference] + (next || '');\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif ($4) {\n\t\t\t\t// Decode decimal escapes, e.g. `𝌆`.\n\t\t\t\tdecDigits = $4;\n\t\t\t\tsemicolon = $5;\n\t\t\t\tif (strict && !semicolon) {\n\t\t\t\t\tparseError('character reference was not terminated by a semicolon');\n\t\t\t\t}\n\t\t\t\tcodePoint = parseInt(decDigits, 10);\n\t\t\t\treturn codePointToSymbol(codePoint, strict);\n\t\t\t}\n\n\t\t\tif ($6) {\n\t\t\t\t// Decode hexadecimal escapes, e.g. `𝌆`.\n\t\t\t\thexDigits = $6;\n\t\t\t\tsemicolon = $7;\n\t\t\t\tif (strict && !semicolon) {\n\t\t\t\t\tparseError('character reference was not terminated by a semicolon');\n\t\t\t\t}\n\t\t\t\tcodePoint = parseInt(hexDigits, 16);\n\t\t\t\treturn codePointToSymbol(codePoint, strict);\n\t\t\t}\n\n\t\t\t// If we’re still here, `if ($7)` is implied; it’s an ambiguous\n\t\t\t// ampersand for sure. https://mths.be/notes/ambiguous-ampersands\n\t\t\tif (strict) {\n\t\t\t\tparseError(\n\t\t\t\t\t'named character reference was not terminated by a semicolon'\n\t\t\t\t);\n\t\t\t}\n\t\t\treturn $0;\n\t\t});\n\t};\n\t// Expose default options (so they can be overridden globally).\n\tdecode.options = {\n\t\t'isAttributeValue': false,\n\t\t'strict': false\n\t};\n\n\tvar escape = function(string) {\n\t\treturn string.replace(regexEscape, function($0) {\n\t\t\t// Note: there is no need to check `has(escapeMap, $0)` here.\n\t\t\treturn escapeMap[$0];\n\t\t});\n\t};\n\n\t/*--------------------------------------------------------------------------*/\n\n\tvar he = {\n\t\t'version': '1.2.0',\n\t\t'encode': encode,\n\t\t'decode': decode,\n\t\t'escape': escape,\n\t\t'unescape': decode\n\t};\n\n\t// Some AMD build optimizers, like r.js, check for specific condition patterns\n\t// like the following:\n\tif (\n\t\ttypeof define == 'function' &&\n\t\ttypeof define.amd == 'object' &&\n\t\tdefine.amd\n\t) {\n\t\tdefine(function() {\n\t\t\treturn he;\n\t\t});\n\t}\telse if (freeExports && !freeExports.nodeType) {\n\t\tif (freeModule) { // in Node.js, io.js, or RingoJS v0.8.0+\n\t\t\tfreeModule.exports = he;\n\t\t} else { // in Narwhal or RingoJS v0.7.0-\n\t\t\tfor (var key in he) {\n\t\t\t\thas(he, key) && (freeExports[key] = he[key]);\n\t\t\t}\n\t\t}\n\t} else { // in Rhino or a web browser\n\t\troot.he = he;\n\t}\n\n}(this));\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nfunction _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; }\n\nvar Stream = _interopDefault(require('stream'));\nvar http = _interopDefault(require('http'));\nvar Url = _interopDefault(require('url'));\nvar https = _interopDefault(require('https'));\nvar zlib = _interopDefault(require('zlib'));\n\n// Based on https://github.com/tmpvar/jsdom/blob/aa85b2abf07766ff7bf5c1f6daafb3726f2f2db5/lib/jsdom/living/blob.js\n\n// fix for \"Readable\" isn't a named export issue\nconst Readable = Stream.Readable;\n\nconst BUFFER = Symbol('buffer');\nconst TYPE = Symbol('type');\n\nclass Blob {\n\tconstructor() {\n\t\tthis[TYPE] = '';\n\n\t\tconst blobParts = arguments[0];\n\t\tconst options = arguments[1];\n\n\t\tconst buffers = [];\n\t\tlet size = 0;\n\n\t\tif (blobParts) {\n\t\t\tconst a = blobParts;\n\t\t\tconst length = Number(a.length);\n\t\t\tfor (let i = 0; i < length; i++) {\n\t\t\t\tconst element = a[i];\n\t\t\t\tlet buffer;\n\t\t\t\tif (element instanceof Buffer) {\n\t\t\t\t\tbuffer = element;\n\t\t\t\t} else if (ArrayBuffer.isView(element)) {\n\t\t\t\t\tbuffer = Buffer.from(element.buffer, element.byteOffset, element.byteLength);\n\t\t\t\t} else if (element instanceof ArrayBuffer) {\n\t\t\t\t\tbuffer = Buffer.from(element);\n\t\t\t\t} else if (element instanceof Blob) {\n\t\t\t\t\tbuffer = element[BUFFER];\n\t\t\t\t} else {\n\t\t\t\t\tbuffer = Buffer.from(typeof element === 'string' ? element : String(element));\n\t\t\t\t}\n\t\t\t\tsize += buffer.length;\n\t\t\t\tbuffers.push(buffer);\n\t\t\t}\n\t\t}\n\n\t\tthis[BUFFER] = Buffer.concat(buffers);\n\n\t\tlet type = options && options.type !== undefined && String(options.type).toLowerCase();\n\t\tif (type && !/[^\\u0020-\\u007E]/.test(type)) {\n\t\t\tthis[TYPE] = type;\n\t\t}\n\t}\n\tget size() {\n\t\treturn this[BUFFER].length;\n\t}\n\tget type() {\n\t\treturn this[TYPE];\n\t}\n\ttext() {\n\t\treturn Promise.resolve(this[BUFFER].toString());\n\t}\n\tarrayBuffer() {\n\t\tconst buf = this[BUFFER];\n\t\tconst ab = buf.buffer.slice(buf.byteOffset, buf.byteOffset + buf.byteLength);\n\t\treturn Promise.resolve(ab);\n\t}\n\tstream() {\n\t\tconst readable = new Readable();\n\t\treadable._read = function () {};\n\t\treadable.push(this[BUFFER]);\n\t\treadable.push(null);\n\t\treturn readable;\n\t}\n\ttoString() {\n\t\treturn '[object Blob]';\n\t}\n\tslice() {\n\t\tconst size = this.size;\n\n\t\tconst start = arguments[0];\n\t\tconst end = arguments[1];\n\t\tlet relativeStart, relativeEnd;\n\t\tif (start === undefined) {\n\t\t\trelativeStart = 0;\n\t\t} else if (start < 0) {\n\t\t\trelativeStart = Math.max(size + start, 0);\n\t\t} else {\n\t\t\trelativeStart = Math.min(start, size);\n\t\t}\n\t\tif (end === undefined) {\n\t\t\trelativeEnd = size;\n\t\t} else if (end < 0) {\n\t\t\trelativeEnd = Math.max(size + end, 0);\n\t\t} else {\n\t\t\trelativeEnd = Math.min(end, size);\n\t\t}\n\t\tconst span = Math.max(relativeEnd - relativeStart, 0);\n\n\t\tconst buffer = this[BUFFER];\n\t\tconst slicedBuffer = buffer.slice(relativeStart, relativeStart + span);\n\t\tconst blob = new Blob([], { type: arguments[2] });\n\t\tblob[BUFFER] = slicedBuffer;\n\t\treturn blob;\n\t}\n}\n\nObject.defineProperties(Blob.prototype, {\n\tsize: { enumerable: true },\n\ttype: { enumerable: true },\n\tslice: { enumerable: true }\n});\n\nObject.defineProperty(Blob.prototype, Symbol.toStringTag, {\n\tvalue: 'Blob',\n\twritable: false,\n\tenumerable: false,\n\tconfigurable: true\n});\n\n/**\n * fetch-error.js\n *\n * FetchError interface for operational errors\n */\n\n/**\n * Create FetchError instance\n *\n * @param String message Error message for human\n * @param String type Error type for machine\n * @param String systemError For Node.js system error\n * @return FetchError\n */\nfunction FetchError(message, type, systemError) {\n Error.call(this, message);\n\n this.message = message;\n this.type = type;\n\n // when err.type is `system`, err.code contains system error code\n if (systemError) {\n this.code = this.errno = systemError.code;\n }\n\n // hide custom error implementation details from end-users\n Error.captureStackTrace(this, this.constructor);\n}\n\nFetchError.prototype = Object.create(Error.prototype);\nFetchError.prototype.constructor = FetchError;\nFetchError.prototype.name = 'FetchError';\n\nlet convert;\ntry {\n\tconvert = require('encoding').convert;\n} catch (e) {}\n\nconst INTERNALS = Symbol('Body internals');\n\n// fix an issue where \"PassThrough\" isn't a named export for node <10\nconst PassThrough = Stream.PassThrough;\n\n/**\n * Body mixin\n *\n * Ref: https://fetch.spec.whatwg.org/#body\n *\n * @param Stream body Readable stream\n * @param Object opts Response options\n * @return Void\n */\nfunction Body(body) {\n\tvar _this = this;\n\n\tvar _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},\n\t _ref$size = _ref.size;\n\n\tlet size = _ref$size === undefined ? 0 : _ref$size;\n\tvar _ref$timeout = _ref.timeout;\n\tlet timeout = _ref$timeout === undefined ? 0 : _ref$timeout;\n\n\tif (body == null) {\n\t\t// body is undefined or null\n\t\tbody = null;\n\t} else if (isURLSearchParams(body)) {\n\t\t// body is a URLSearchParams\n\t\tbody = Buffer.from(body.toString());\n\t} else if (isBlob(body)) ; else if (Buffer.isBuffer(body)) ; else if (Object.prototype.toString.call(body) === '[object ArrayBuffer]') {\n\t\t// body is ArrayBuffer\n\t\tbody = Buffer.from(body);\n\t} else if (ArrayBuffer.isView(body)) {\n\t\t// body is ArrayBufferView\n\t\tbody = Buffer.from(body.buffer, body.byteOffset, body.byteLength);\n\t} else if (body instanceof Stream) ; else {\n\t\t// none of the above\n\t\t// coerce to string then buffer\n\t\tbody = Buffer.from(String(body));\n\t}\n\tthis[INTERNALS] = {\n\t\tbody,\n\t\tdisturbed: false,\n\t\terror: null\n\t};\n\tthis.size = size;\n\tthis.timeout = timeout;\n\n\tif (body instanceof Stream) {\n\t\tbody.on('error', function (err) {\n\t\t\tconst error = err.name === 'AbortError' ? err : new FetchError(`Invalid response body while trying to fetch ${_this.url}: ${err.message}`, 'system', err);\n\t\t\t_this[INTERNALS].error = error;\n\t\t});\n\t}\n}\n\nBody.prototype = {\n\tget body() {\n\t\treturn this[INTERNALS].body;\n\t},\n\n\tget bodyUsed() {\n\t\treturn this[INTERNALS].disturbed;\n\t},\n\n\t/**\n * Decode response as ArrayBuffer\n *\n * @return Promise\n */\n\tarrayBuffer() {\n\t\treturn consumeBody.call(this).then(function (buf) {\n\t\t\treturn buf.buffer.slice(buf.byteOffset, buf.byteOffset + buf.byteLength);\n\t\t});\n\t},\n\n\t/**\n * Return raw response as Blob\n *\n * @return Promise\n */\n\tblob() {\n\t\tlet ct = this.headers && this.headers.get('content-type') || '';\n\t\treturn consumeBody.call(this).then(function (buf) {\n\t\t\treturn Object.assign(\n\t\t\t// Prevent copying\n\t\t\tnew Blob([], {\n\t\t\t\ttype: ct.toLowerCase()\n\t\t\t}), {\n\t\t\t\t[BUFFER]: buf\n\t\t\t});\n\t\t});\n\t},\n\n\t/**\n * Decode response as json\n *\n * @return Promise\n */\n\tjson() {\n\t\tvar _this2 = this;\n\n\t\treturn consumeBody.call(this).then(function (buffer) {\n\t\t\ttry {\n\t\t\t\treturn JSON.parse(buffer.toString());\n\t\t\t} catch (err) {\n\t\t\t\treturn Body.Promise.reject(new FetchError(`invalid json response body at ${_this2.url} reason: ${err.message}`, 'invalid-json'));\n\t\t\t}\n\t\t});\n\t},\n\n\t/**\n * Decode response as text\n *\n * @return Promise\n */\n\ttext() {\n\t\treturn consumeBody.call(this).then(function (buffer) {\n\t\t\treturn buffer.toString();\n\t\t});\n\t},\n\n\t/**\n * Decode response as buffer (non-spec api)\n *\n * @return Promise\n */\n\tbuffer() {\n\t\treturn consumeBody.call(this);\n\t},\n\n\t/**\n * Decode response as text, while automatically detecting the encoding and\n * trying to decode to UTF-8 (non-spec api)\n *\n * @return Promise\n */\n\ttextConverted() {\n\t\tvar _this3 = this;\n\n\t\treturn consumeBody.call(this).then(function (buffer) {\n\t\t\treturn convertBody(buffer, _this3.headers);\n\t\t});\n\t}\n};\n\n// In browsers, all properties are enumerable.\nObject.defineProperties(Body.prototype, {\n\tbody: { enumerable: true },\n\tbodyUsed: { enumerable: true },\n\tarrayBuffer: { enumerable: true },\n\tblob: { enumerable: true },\n\tjson: { enumerable: true },\n\ttext: { enumerable: true }\n});\n\nBody.mixIn = function (proto) {\n\tfor (const name of Object.getOwnPropertyNames(Body.prototype)) {\n\t\t// istanbul ignore else: future proof\n\t\tif (!(name in proto)) {\n\t\t\tconst desc = Object.getOwnPropertyDescriptor(Body.prototype, name);\n\t\t\tObject.defineProperty(proto, name, desc);\n\t\t}\n\t}\n};\n\n/**\n * Consume and convert an entire Body to a Buffer.\n *\n * Ref: https://fetch.spec.whatwg.org/#concept-body-consume-body\n *\n * @return Promise\n */\nfunction consumeBody() {\n\tvar _this4 = this;\n\n\tif (this[INTERNALS].disturbed) {\n\t\treturn Body.Promise.reject(new TypeError(`body used already for: ${this.url}`));\n\t}\n\n\tthis[INTERNALS].disturbed = true;\n\n\tif (this[INTERNALS].error) {\n\t\treturn Body.Promise.reject(this[INTERNALS].error);\n\t}\n\n\tlet body = this.body;\n\n\t// body is null\n\tif (body === null) {\n\t\treturn Body.Promise.resolve(Buffer.alloc(0));\n\t}\n\n\t// body is blob\n\tif (isBlob(body)) {\n\t\tbody = body.stream();\n\t}\n\n\t// body is buffer\n\tif (Buffer.isBuffer(body)) {\n\t\treturn Body.Promise.resolve(body);\n\t}\n\n\t// istanbul ignore if: should never happen\n\tif (!(body instanceof Stream)) {\n\t\treturn Body.Promise.resolve(Buffer.alloc(0));\n\t}\n\n\t// body is stream\n\t// get ready to actually consume the body\n\tlet accum = [];\n\tlet accumBytes = 0;\n\tlet abort = false;\n\n\treturn new Body.Promise(function (resolve, reject) {\n\t\tlet resTimeout;\n\n\t\t// allow timeout on slow response body\n\t\tif (_this4.timeout) {\n\t\t\tresTimeout = setTimeout(function () {\n\t\t\t\tabort = true;\n\t\t\t\treject(new FetchError(`Response timeout while trying to fetch ${_this4.url} (over ${_this4.timeout}ms)`, 'body-timeout'));\n\t\t\t}, _this4.timeout);\n\t\t}\n\n\t\t// handle stream errors\n\t\tbody.on('error', function (err) {\n\t\t\tif (err.name === 'AbortError') {\n\t\t\t\t// if the request was aborted, reject with this Error\n\t\t\t\tabort = true;\n\t\t\t\treject(err);\n\t\t\t} else {\n\t\t\t\t// other errors, such as incorrect content-encoding\n\t\t\t\treject(new FetchError(`Invalid response body while trying to fetch ${_this4.url}: ${err.message}`, 'system', err));\n\t\t\t}\n\t\t});\n\n\t\tbody.on('data', function (chunk) {\n\t\t\tif (abort || chunk === null) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (_this4.size && accumBytes + chunk.length > _this4.size) {\n\t\t\t\tabort = true;\n\t\t\t\treject(new FetchError(`content size at ${_this4.url} over limit: ${_this4.size}`, 'max-size'));\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\taccumBytes += chunk.length;\n\t\t\taccum.push(chunk);\n\t\t});\n\n\t\tbody.on('end', function () {\n\t\t\tif (abort) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tclearTimeout(resTimeout);\n\n\t\t\ttry {\n\t\t\t\tresolve(Buffer.concat(accum, accumBytes));\n\t\t\t} catch (err) {\n\t\t\t\t// handle streams that have accumulated too much data (issue #414)\n\t\t\t\treject(new FetchError(`Could not create Buffer from response body for ${_this4.url}: ${err.message}`, 'system', err));\n\t\t\t}\n\t\t});\n\t});\n}\n\n/**\n * Detect buffer encoding and convert to target encoding\n * ref: http://www.w3.org/TR/2011/WD-html5-20110113/parsing.html#determining-the-character-encoding\n *\n * @param Buffer buffer Incoming buffer\n * @param String encoding Target encoding\n * @return String\n */\nfunction convertBody(buffer, headers) {\n\tif (typeof convert !== 'function') {\n\t\tthrow new Error('The package `encoding` must be installed to use the textConverted() function');\n\t}\n\n\tconst ct = headers.get('content-type');\n\tlet charset = 'utf-8';\n\tlet res, str;\n\n\t// header\n\tif (ct) {\n\t\tres = /charset=([^;]*)/i.exec(ct);\n\t}\n\n\t// no charset in content type, peek at response body for at most 1024 bytes\n\tstr = buffer.slice(0, 1024).toString();\n\n\t// html5\n\tif (!res && str) {\n\t\tres = / 0 && arguments[0] !== undefined ? arguments[0] : undefined;\n\n\t\tthis[MAP] = Object.create(null);\n\n\t\tif (init instanceof Headers) {\n\t\t\tconst rawHeaders = init.raw();\n\t\t\tconst headerNames = Object.keys(rawHeaders);\n\n\t\t\tfor (const headerName of headerNames) {\n\t\t\t\tfor (const value of rawHeaders[headerName]) {\n\t\t\t\t\tthis.append(headerName, value);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn;\n\t\t}\n\n\t\t// We don't worry about converting prop to ByteString here as append()\n\t\t// will handle it.\n\t\tif (init == null) ; else if (typeof init === 'object') {\n\t\t\tconst method = init[Symbol.iterator];\n\t\t\tif (method != null) {\n\t\t\t\tif (typeof method !== 'function') {\n\t\t\t\t\tthrow new TypeError('Header pairs must be iterable');\n\t\t\t\t}\n\n\t\t\t\t// sequence>\n\t\t\t\t// Note: per spec we have to first exhaust the lists then process them\n\t\t\t\tconst pairs = [];\n\t\t\t\tfor (const pair of init) {\n\t\t\t\t\tif (typeof pair !== 'object' || typeof pair[Symbol.iterator] !== 'function') {\n\t\t\t\t\t\tthrow new TypeError('Each header pair must be iterable');\n\t\t\t\t\t}\n\t\t\t\t\tpairs.push(Array.from(pair));\n\t\t\t\t}\n\n\t\t\t\tfor (const pair of pairs) {\n\t\t\t\t\tif (pair.length !== 2) {\n\t\t\t\t\t\tthrow new TypeError('Each header pair must be a name/value tuple');\n\t\t\t\t\t}\n\t\t\t\t\tthis.append(pair[0], pair[1]);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t// record\n\t\t\t\tfor (const key of Object.keys(init)) {\n\t\t\t\t\tconst value = init[key];\n\t\t\t\t\tthis.append(key, value);\n\t\t\t\t}\n\t\t\t}\n\t\t} else {\n\t\t\tthrow new TypeError('Provided initializer must be an object');\n\t\t}\n\t}\n\n\t/**\n * Return combined header value given name\n *\n * @param String name Header name\n * @return Mixed\n */\n\tget(name) {\n\t\tname = `${name}`;\n\t\tvalidateName(name);\n\t\tconst key = find(this[MAP], name);\n\t\tif (key === undefined) {\n\t\t\treturn null;\n\t\t}\n\n\t\treturn this[MAP][key].join(', ');\n\t}\n\n\t/**\n * Iterate over all headers\n *\n * @param Function callback Executed for each item with parameters (value, name, thisArg)\n * @param Boolean thisArg `this` context for callback function\n * @return Void\n */\n\tforEach(callback) {\n\t\tlet thisArg = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : undefined;\n\n\t\tlet pairs = getHeaders(this);\n\t\tlet i = 0;\n\t\twhile (i < pairs.length) {\n\t\t\tvar _pairs$i = pairs[i];\n\t\t\tconst name = _pairs$i[0],\n\t\t\t value = _pairs$i[1];\n\n\t\t\tcallback.call(thisArg, value, name, this);\n\t\t\tpairs = getHeaders(this);\n\t\t\ti++;\n\t\t}\n\t}\n\n\t/**\n * Overwrite header values given name\n *\n * @param String name Header name\n * @param String value Header value\n * @return Void\n */\n\tset(name, value) {\n\t\tname = `${name}`;\n\t\tvalue = `${value}`;\n\t\tvalidateName(name);\n\t\tvalidateValue(value);\n\t\tconst key = find(this[MAP], name);\n\t\tthis[MAP][key !== undefined ? key : name] = [value];\n\t}\n\n\t/**\n * Append a value onto existing header\n *\n * @param String name Header name\n * @param String value Header value\n * @return Void\n */\n\tappend(name, value) {\n\t\tname = `${name}`;\n\t\tvalue = `${value}`;\n\t\tvalidateName(name);\n\t\tvalidateValue(value);\n\t\tconst key = find(this[MAP], name);\n\t\tif (key !== undefined) {\n\t\t\tthis[MAP][key].push(value);\n\t\t} else {\n\t\t\tthis[MAP][name] = [value];\n\t\t}\n\t}\n\n\t/**\n * Check for header name existence\n *\n * @param String name Header name\n * @return Boolean\n */\n\thas(name) {\n\t\tname = `${name}`;\n\t\tvalidateName(name);\n\t\treturn find(this[MAP], name) !== undefined;\n\t}\n\n\t/**\n * Delete all header values given name\n *\n * @param String name Header name\n * @return Void\n */\n\tdelete(name) {\n\t\tname = `${name}`;\n\t\tvalidateName(name);\n\t\tconst key = find(this[MAP], name);\n\t\tif (key !== undefined) {\n\t\t\tdelete this[MAP][key];\n\t\t}\n\t}\n\n\t/**\n * Return raw headers (non-spec api)\n *\n * @return Object\n */\n\traw() {\n\t\treturn this[MAP];\n\t}\n\n\t/**\n * Get an iterator on keys.\n *\n * @return Iterator\n */\n\tkeys() {\n\t\treturn createHeadersIterator(this, 'key');\n\t}\n\n\t/**\n * Get an iterator on values.\n *\n * @return Iterator\n */\n\tvalues() {\n\t\treturn createHeadersIterator(this, 'value');\n\t}\n\n\t/**\n * Get an iterator on entries.\n *\n * This is the default iterator of the Headers object.\n *\n * @return Iterator\n */\n\t[Symbol.iterator]() {\n\t\treturn createHeadersIterator(this, 'key+value');\n\t}\n}\nHeaders.prototype.entries = Headers.prototype[Symbol.iterator];\n\nObject.defineProperty(Headers.prototype, Symbol.toStringTag, {\n\tvalue: 'Headers',\n\twritable: false,\n\tenumerable: false,\n\tconfigurable: true\n});\n\nObject.defineProperties(Headers.prototype, {\n\tget: { enumerable: true },\n\tforEach: { enumerable: true },\n\tset: { enumerable: true },\n\tappend: { enumerable: true },\n\thas: { enumerable: true },\n\tdelete: { enumerable: true },\n\tkeys: { enumerable: true },\n\tvalues: { enumerable: true },\n\tentries: { enumerable: true }\n});\n\nfunction getHeaders(headers) {\n\tlet kind = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'key+value';\n\n\tconst keys = Object.keys(headers[MAP]).sort();\n\treturn keys.map(kind === 'key' ? function (k) {\n\t\treturn k.toLowerCase();\n\t} : kind === 'value' ? function (k) {\n\t\treturn headers[MAP][k].join(', ');\n\t} : function (k) {\n\t\treturn [k.toLowerCase(), headers[MAP][k].join(', ')];\n\t});\n}\n\nconst INTERNAL = Symbol('internal');\n\nfunction createHeadersIterator(target, kind) {\n\tconst iterator = Object.create(HeadersIteratorPrototype);\n\titerator[INTERNAL] = {\n\t\ttarget,\n\t\tkind,\n\t\tindex: 0\n\t};\n\treturn iterator;\n}\n\nconst HeadersIteratorPrototype = Object.setPrototypeOf({\n\tnext() {\n\t\t// istanbul ignore if\n\t\tif (!this || Object.getPrototypeOf(this) !== HeadersIteratorPrototype) {\n\t\t\tthrow new TypeError('Value of `this` is not a HeadersIterator');\n\t\t}\n\n\t\tvar _INTERNAL = this[INTERNAL];\n\t\tconst target = _INTERNAL.target,\n\t\t kind = _INTERNAL.kind,\n\t\t index = _INTERNAL.index;\n\n\t\tconst values = getHeaders(target, kind);\n\t\tconst len = values.length;\n\t\tif (index >= len) {\n\t\t\treturn {\n\t\t\t\tvalue: undefined,\n\t\t\t\tdone: true\n\t\t\t};\n\t\t}\n\n\t\tthis[INTERNAL].index = index + 1;\n\n\t\treturn {\n\t\t\tvalue: values[index],\n\t\t\tdone: false\n\t\t};\n\t}\n}, Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]())));\n\nObject.defineProperty(HeadersIteratorPrototype, Symbol.toStringTag, {\n\tvalue: 'HeadersIterator',\n\twritable: false,\n\tenumerable: false,\n\tconfigurable: true\n});\n\n/**\n * Export the Headers object in a form that Node.js can consume.\n *\n * @param Headers headers\n * @return Object\n */\nfunction exportNodeCompatibleHeaders(headers) {\n\tconst obj = Object.assign({ __proto__: null }, headers[MAP]);\n\n\t// http.request() only supports string as Host header. This hack makes\n\t// specifying custom Host header possible.\n\tconst hostHeaderKey = find(headers[MAP], 'Host');\n\tif (hostHeaderKey !== undefined) {\n\t\tobj[hostHeaderKey] = obj[hostHeaderKey][0];\n\t}\n\n\treturn obj;\n}\n\n/**\n * Create a Headers object from an object of headers, ignoring those that do\n * not conform to HTTP grammar productions.\n *\n * @param Object obj Object of headers\n * @return Headers\n */\nfunction createHeadersLenient(obj) {\n\tconst headers = new Headers();\n\tfor (const name of Object.keys(obj)) {\n\t\tif (invalidTokenRegex.test(name)) {\n\t\t\tcontinue;\n\t\t}\n\t\tif (Array.isArray(obj[name])) {\n\t\t\tfor (const val of obj[name]) {\n\t\t\t\tif (invalidHeaderCharRegex.test(val)) {\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\t\t\t\tif (headers[MAP][name] === undefined) {\n\t\t\t\t\theaders[MAP][name] = [val];\n\t\t\t\t} else {\n\t\t\t\t\theaders[MAP][name].push(val);\n\t\t\t\t}\n\t\t\t}\n\t\t} else if (!invalidHeaderCharRegex.test(obj[name])) {\n\t\t\theaders[MAP][name] = [obj[name]];\n\t\t}\n\t}\n\treturn headers;\n}\n\nconst INTERNALS$1 = Symbol('Response internals');\n\n// fix an issue where \"STATUS_CODES\" aren't a named export for node <10\nconst STATUS_CODES = http.STATUS_CODES;\n\n/**\n * Response class\n *\n * @param Stream body Readable stream\n * @param Object opts Response options\n * @return Void\n */\nclass Response {\n\tconstructor() {\n\t\tlet body = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;\n\t\tlet opts = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n\t\tBody.call(this, body, opts);\n\n\t\tconst status = opts.status || 200;\n\t\tconst headers = new Headers(opts.headers);\n\n\t\tif (body != null && !headers.has('Content-Type')) {\n\t\t\tconst contentType = extractContentType(body);\n\t\t\tif (contentType) {\n\t\t\t\theaders.append('Content-Type', contentType);\n\t\t\t}\n\t\t}\n\n\t\tthis[INTERNALS$1] = {\n\t\t\turl: opts.url,\n\t\t\tstatus,\n\t\t\tstatusText: opts.statusText || STATUS_CODES[status],\n\t\t\theaders,\n\t\t\tcounter: opts.counter\n\t\t};\n\t}\n\n\tget url() {\n\t\treturn this[INTERNALS$1].url || '';\n\t}\n\n\tget status() {\n\t\treturn this[INTERNALS$1].status;\n\t}\n\n\t/**\n * Convenience property representing if the request ended normally\n */\n\tget ok() {\n\t\treturn this[INTERNALS$1].status >= 200 && this[INTERNALS$1].status < 300;\n\t}\n\n\tget redirected() {\n\t\treturn this[INTERNALS$1].counter > 0;\n\t}\n\n\tget statusText() {\n\t\treturn this[INTERNALS$1].statusText;\n\t}\n\n\tget headers() {\n\t\treturn this[INTERNALS$1].headers;\n\t}\n\n\t/**\n * Clone this response\n *\n * @return Response\n */\n\tclone() {\n\t\treturn new Response(clone(this), {\n\t\t\turl: this.url,\n\t\t\tstatus: this.status,\n\t\t\tstatusText: this.statusText,\n\t\t\theaders: this.headers,\n\t\t\tok: this.ok,\n\t\t\tredirected: this.redirected\n\t\t});\n\t}\n}\n\nBody.mixIn(Response.prototype);\n\nObject.defineProperties(Response.prototype, {\n\turl: { enumerable: true },\n\tstatus: { enumerable: true },\n\tok: { enumerable: true },\n\tredirected: { enumerable: true },\n\tstatusText: { enumerable: true },\n\theaders: { enumerable: true },\n\tclone: { enumerable: true }\n});\n\nObject.defineProperty(Response.prototype, Symbol.toStringTag, {\n\tvalue: 'Response',\n\twritable: false,\n\tenumerable: false,\n\tconfigurable: true\n});\n\nconst INTERNALS$2 = Symbol('Request internals');\n\n// fix an issue where \"format\", \"parse\" aren't a named export for node <10\nconst parse_url = Url.parse;\nconst format_url = Url.format;\n\nconst streamDestructionSupported = 'destroy' in Stream.Readable.prototype;\n\n/**\n * Check if a value is an instance of Request.\n *\n * @param Mixed input\n * @return Boolean\n */\nfunction isRequest(input) {\n\treturn typeof input === 'object' && typeof input[INTERNALS$2] === 'object';\n}\n\nfunction isAbortSignal(signal) {\n\tconst proto = signal && typeof signal === 'object' && Object.getPrototypeOf(signal);\n\treturn !!(proto && proto.constructor.name === 'AbortSignal');\n}\n\n/**\n * Request class\n *\n * @param Mixed input Url or Request instance\n * @param Object init Custom options\n * @return Void\n */\nclass Request {\n\tconstructor(input) {\n\t\tlet init = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n\t\tlet parsedURL;\n\n\t\t// normalize input\n\t\tif (!isRequest(input)) {\n\t\t\tif (input && input.href) {\n\t\t\t\t// in order to support Node.js' Url objects; though WHATWG's URL objects\n\t\t\t\t// will fall into this branch also (since their `toString()` will return\n\t\t\t\t// `href` property anyway)\n\t\t\t\tparsedURL = parse_url(input.href);\n\t\t\t} else {\n\t\t\t\t// coerce input to a string before attempting to parse\n\t\t\t\tparsedURL = parse_url(`${input}`);\n\t\t\t}\n\t\t\tinput = {};\n\t\t} else {\n\t\t\tparsedURL = parse_url(input.url);\n\t\t}\n\n\t\tlet method = init.method || input.method || 'GET';\n\t\tmethod = method.toUpperCase();\n\n\t\tif ((init.body != null || isRequest(input) && input.body !== null) && (method === 'GET' || method === 'HEAD')) {\n\t\t\tthrow new TypeError('Request with GET/HEAD method cannot have body');\n\t\t}\n\n\t\tlet inputBody = init.body != null ? init.body : isRequest(input) && input.body !== null ? clone(input) : null;\n\n\t\tBody.call(this, inputBody, {\n\t\t\ttimeout: init.timeout || input.timeout || 0,\n\t\t\tsize: init.size || input.size || 0\n\t\t});\n\n\t\tconst headers = new Headers(init.headers || input.headers || {});\n\n\t\tif (inputBody != null && !headers.has('Content-Type')) {\n\t\t\tconst contentType = extractContentType(inputBody);\n\t\t\tif (contentType) {\n\t\t\t\theaders.append('Content-Type', contentType);\n\t\t\t}\n\t\t}\n\n\t\tlet signal = isRequest(input) ? input.signal : null;\n\t\tif ('signal' in init) signal = init.signal;\n\n\t\tif (signal != null && !isAbortSignal(signal)) {\n\t\t\tthrow new TypeError('Expected signal to be an instanceof AbortSignal');\n\t\t}\n\n\t\tthis[INTERNALS$2] = {\n\t\t\tmethod,\n\t\t\tredirect: init.redirect || input.redirect || 'follow',\n\t\t\theaders,\n\t\t\tparsedURL,\n\t\t\tsignal\n\t\t};\n\n\t\t// node-fetch-only options\n\t\tthis.follow = init.follow !== undefined ? init.follow : input.follow !== undefined ? input.follow : 20;\n\t\tthis.compress = init.compress !== undefined ? init.compress : input.compress !== undefined ? input.compress : true;\n\t\tthis.counter = init.counter || input.counter || 0;\n\t\tthis.agent = init.agent || input.agent;\n\t}\n\n\tget method() {\n\t\treturn this[INTERNALS$2].method;\n\t}\n\n\tget url() {\n\t\treturn format_url(this[INTERNALS$2].parsedURL);\n\t}\n\n\tget headers() {\n\t\treturn this[INTERNALS$2].headers;\n\t}\n\n\tget redirect() {\n\t\treturn this[INTERNALS$2].redirect;\n\t}\n\n\tget signal() {\n\t\treturn this[INTERNALS$2].signal;\n\t}\n\n\t/**\n * Clone this request\n *\n * @return Request\n */\n\tclone() {\n\t\treturn new Request(this);\n\t}\n}\n\nBody.mixIn(Request.prototype);\n\nObject.defineProperty(Request.prototype, Symbol.toStringTag, {\n\tvalue: 'Request',\n\twritable: false,\n\tenumerable: false,\n\tconfigurable: true\n});\n\nObject.defineProperties(Request.prototype, {\n\tmethod: { enumerable: true },\n\turl: { enumerable: true },\n\theaders: { enumerable: true },\n\tredirect: { enumerable: true },\n\tclone: { enumerable: true },\n\tsignal: { enumerable: true }\n});\n\n/**\n * Convert a Request to Node.js http request options.\n *\n * @param Request A Request instance\n * @return Object The options object to be passed to http.request\n */\nfunction getNodeRequestOptions(request) {\n\tconst parsedURL = request[INTERNALS$2].parsedURL;\n\tconst headers = new Headers(request[INTERNALS$2].headers);\n\n\t// fetch step 1.3\n\tif (!headers.has('Accept')) {\n\t\theaders.set('Accept', '*/*');\n\t}\n\n\t// Basic fetch\n\tif (!parsedURL.protocol || !parsedURL.hostname) {\n\t\tthrow new TypeError('Only absolute URLs are supported');\n\t}\n\n\tif (!/^https?:$/.test(parsedURL.protocol)) {\n\t\tthrow new TypeError('Only HTTP(S) protocols are supported');\n\t}\n\n\tif (request.signal && request.body instanceof Stream.Readable && !streamDestructionSupported) {\n\t\tthrow new Error('Cancellation of streamed requests with AbortSignal is not supported in node < 8');\n\t}\n\n\t// HTTP-network-or-cache fetch steps 2.4-2.7\n\tlet contentLengthValue = null;\n\tif (request.body == null && /^(POST|PUT)$/i.test(request.method)) {\n\t\tcontentLengthValue = '0';\n\t}\n\tif (request.body != null) {\n\t\tconst totalBytes = getTotalBytes(request);\n\t\tif (typeof totalBytes === 'number') {\n\t\t\tcontentLengthValue = String(totalBytes);\n\t\t}\n\t}\n\tif (contentLengthValue) {\n\t\theaders.set('Content-Length', contentLengthValue);\n\t}\n\n\t// HTTP-network-or-cache fetch step 2.11\n\tif (!headers.has('User-Agent')) {\n\t\theaders.set('User-Agent', 'node-fetch/1.0 (+https://github.com/bitinn/node-fetch)');\n\t}\n\n\t// HTTP-network-or-cache fetch step 2.15\n\tif (request.compress && !headers.has('Accept-Encoding')) {\n\t\theaders.set('Accept-Encoding', 'gzip,deflate');\n\t}\n\n\tlet agent = request.agent;\n\tif (typeof agent === 'function') {\n\t\tagent = agent(parsedURL);\n\t}\n\n\tif (!headers.has('Connection') && !agent) {\n\t\theaders.set('Connection', 'close');\n\t}\n\n\t// HTTP-network fetch step 4.2\n\t// chunked encoding is handled by Node.js\n\n\treturn Object.assign({}, parsedURL, {\n\t\tmethod: request.method,\n\t\theaders: exportNodeCompatibleHeaders(headers),\n\t\tagent\n\t});\n}\n\n/**\n * abort-error.js\n *\n * AbortError interface for cancelled requests\n */\n\n/**\n * Create AbortError instance\n *\n * @param String message Error message for human\n * @return AbortError\n */\nfunction AbortError(message) {\n Error.call(this, message);\n\n this.type = 'aborted';\n this.message = message;\n\n // hide custom error implementation details from end-users\n Error.captureStackTrace(this, this.constructor);\n}\n\nAbortError.prototype = Object.create(Error.prototype);\nAbortError.prototype.constructor = AbortError;\nAbortError.prototype.name = 'AbortError';\n\n// fix an issue where \"PassThrough\", \"resolve\" aren't a named export for node <10\nconst PassThrough$1 = Stream.PassThrough;\nconst resolve_url = Url.resolve;\n\n/**\n * Fetch function\n *\n * @param Mixed url Absolute url or Request instance\n * @param Object opts Fetch options\n * @return Promise\n */\nfunction fetch(url, opts) {\n\n\t// allow custom promise\n\tif (!fetch.Promise) {\n\t\tthrow new Error('native promise missing, set fetch.Promise to your favorite alternative');\n\t}\n\n\tBody.Promise = fetch.Promise;\n\n\t// wrap http.request into fetch\n\treturn new fetch.Promise(function (resolve, reject) {\n\t\t// build request object\n\t\tconst request = new Request(url, opts);\n\t\tconst options = getNodeRequestOptions(request);\n\n\t\tconst send = (options.protocol === 'https:' ? https : http).request;\n\t\tconst signal = request.signal;\n\n\t\tlet response = null;\n\n\t\tconst abort = function abort() {\n\t\t\tlet error = new AbortError('The user aborted a request.');\n\t\t\treject(error);\n\t\t\tif (request.body && request.body instanceof Stream.Readable) {\n\t\t\t\trequest.body.destroy(error);\n\t\t\t}\n\t\t\tif (!response || !response.body) return;\n\t\t\tresponse.body.emit('error', error);\n\t\t};\n\n\t\tif (signal && signal.aborted) {\n\t\t\tabort();\n\t\t\treturn;\n\t\t}\n\n\t\tconst abortAndFinalize = function abortAndFinalize() {\n\t\t\tabort();\n\t\t\tfinalize();\n\t\t};\n\n\t\t// send request\n\t\tconst req = send(options);\n\t\tlet reqTimeout;\n\n\t\tif (signal) {\n\t\t\tsignal.addEventListener('abort', abortAndFinalize);\n\t\t}\n\n\t\tfunction finalize() {\n\t\t\treq.abort();\n\t\t\tif (signal) signal.removeEventListener('abort', abortAndFinalize);\n\t\t\tclearTimeout(reqTimeout);\n\t\t}\n\n\t\tif (request.timeout) {\n\t\t\treq.once('socket', function (socket) {\n\t\t\t\treqTimeout = setTimeout(function () {\n\t\t\t\t\treject(new FetchError(`network timeout at: ${request.url}`, 'request-timeout'));\n\t\t\t\t\tfinalize();\n\t\t\t\t}, request.timeout);\n\t\t\t});\n\t\t}\n\n\t\treq.on('error', function (err) {\n\t\t\treject(new FetchError(`request to ${request.url} failed, reason: ${err.message}`, 'system', err));\n\t\t\tfinalize();\n\t\t});\n\n\t\treq.on('response', function (res) {\n\t\t\tclearTimeout(reqTimeout);\n\n\t\t\tconst headers = createHeadersLenient(res.headers);\n\n\t\t\t// HTTP fetch step 5\n\t\t\tif (fetch.isRedirect(res.statusCode)) {\n\t\t\t\t// HTTP fetch step 5.2\n\t\t\t\tconst location = headers.get('Location');\n\n\t\t\t\t// HTTP fetch step 5.3\n\t\t\t\tconst locationURL = location === null ? null : resolve_url(request.url, location);\n\n\t\t\t\t// HTTP fetch step 5.5\n\t\t\t\tswitch (request.redirect) {\n\t\t\t\t\tcase 'error':\n\t\t\t\t\t\treject(new FetchError(`uri requested responds with a redirect, redirect mode is set to error: ${request.url}`, 'no-redirect'));\n\t\t\t\t\t\tfinalize();\n\t\t\t\t\t\treturn;\n\t\t\t\t\tcase 'manual':\n\t\t\t\t\t\t// node-fetch-specific step: make manual redirect a bit easier to use by setting the Location header value to the resolved URL.\n\t\t\t\t\t\tif (locationURL !== null) {\n\t\t\t\t\t\t\t// handle corrupted header\n\t\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\t\theaders.set('Location', locationURL);\n\t\t\t\t\t\t\t} catch (err) {\n\t\t\t\t\t\t\t\t// istanbul ignore next: nodejs server prevent invalid response headers, we can't test this through normal request\n\t\t\t\t\t\t\t\treject(err);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase 'follow':\n\t\t\t\t\t\t// HTTP-redirect fetch step 2\n\t\t\t\t\t\tif (locationURL === null) {\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t// HTTP-redirect fetch step 5\n\t\t\t\t\t\tif (request.counter >= request.follow) {\n\t\t\t\t\t\t\treject(new FetchError(`maximum redirect reached at: ${request.url}`, 'max-redirect'));\n\t\t\t\t\t\t\tfinalize();\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t// HTTP-redirect fetch step 6 (counter increment)\n\t\t\t\t\t\t// Create a new Request object.\n\t\t\t\t\t\tconst requestOpts = {\n\t\t\t\t\t\t\theaders: new Headers(request.headers),\n\t\t\t\t\t\t\tfollow: request.follow,\n\t\t\t\t\t\t\tcounter: request.counter + 1,\n\t\t\t\t\t\t\tagent: request.agent,\n\t\t\t\t\t\t\tcompress: request.compress,\n\t\t\t\t\t\t\tmethod: request.method,\n\t\t\t\t\t\t\tbody: request.body,\n\t\t\t\t\t\t\tsignal: request.signal,\n\t\t\t\t\t\t\ttimeout: request.timeout,\n\t\t\t\t\t\t\tsize: request.size\n\t\t\t\t\t\t};\n\n\t\t\t\t\t\t// HTTP-redirect fetch step 9\n\t\t\t\t\t\tif (res.statusCode !== 303 && request.body && getTotalBytes(request) === null) {\n\t\t\t\t\t\t\treject(new FetchError('Cannot follow redirect with body being a readable stream', 'unsupported-redirect'));\n\t\t\t\t\t\t\tfinalize();\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t// HTTP-redirect fetch step 11\n\t\t\t\t\t\tif (res.statusCode === 303 || (res.statusCode === 301 || res.statusCode === 302) && request.method === 'POST') {\n\t\t\t\t\t\t\trequestOpts.method = 'GET';\n\t\t\t\t\t\t\trequestOpts.body = undefined;\n\t\t\t\t\t\t\trequestOpts.headers.delete('content-length');\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t// HTTP-redirect fetch step 15\n\t\t\t\t\t\tresolve(fetch(new Request(locationURL, requestOpts)));\n\t\t\t\t\t\tfinalize();\n\t\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// prepare response\n\t\t\tres.once('end', function () {\n\t\t\t\tif (signal) signal.removeEventListener('abort', abortAndFinalize);\n\t\t\t});\n\t\t\tlet body = res.pipe(new PassThrough$1());\n\n\t\t\tconst response_options = {\n\t\t\t\turl: request.url,\n\t\t\t\tstatus: res.statusCode,\n\t\t\t\tstatusText: res.statusMessage,\n\t\t\t\theaders: headers,\n\t\t\t\tsize: request.size,\n\t\t\t\ttimeout: request.timeout,\n\t\t\t\tcounter: request.counter\n\t\t\t};\n\n\t\t\t// HTTP-network fetch step 12.1.1.3\n\t\t\tconst codings = headers.get('Content-Encoding');\n\n\t\t\t// HTTP-network fetch step 12.1.1.4: handle content codings\n\n\t\t\t// in following scenarios we ignore compression support\n\t\t\t// 1. compression support is disabled\n\t\t\t// 2. HEAD request\n\t\t\t// 3. no Content-Encoding header\n\t\t\t// 4. no content response (204)\n\t\t\t// 5. content not modified response (304)\n\t\t\tif (!request.compress || request.method === 'HEAD' || codings === null || res.statusCode === 204 || res.statusCode === 304) {\n\t\t\t\tresponse = new Response(body, response_options);\n\t\t\t\tresolve(response);\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// For Node v6+\n\t\t\t// Be less strict when decoding compressed responses, since sometimes\n\t\t\t// servers send slightly invalid responses that are still accepted\n\t\t\t// by common browsers.\n\t\t\t// Always using Z_SYNC_FLUSH is what cURL does.\n\t\t\tconst zlibOptions = {\n\t\t\t\tflush: zlib.Z_SYNC_FLUSH,\n\t\t\t\tfinishFlush: zlib.Z_SYNC_FLUSH\n\t\t\t};\n\n\t\t\t// for gzip\n\t\t\tif (codings == 'gzip' || codings == 'x-gzip') {\n\t\t\t\tbody = body.pipe(zlib.createGunzip(zlibOptions));\n\t\t\t\tresponse = new Response(body, response_options);\n\t\t\t\tresolve(response);\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// for deflate\n\t\t\tif (codings == 'deflate' || codings == 'x-deflate') {\n\t\t\t\t// handle the infamous raw deflate response from old servers\n\t\t\t\t// a hack for old IIS and Apache servers\n\t\t\t\tconst raw = res.pipe(new PassThrough$1());\n\t\t\t\traw.once('data', function (chunk) {\n\t\t\t\t\t// see http://stackoverflow.com/questions/37519828\n\t\t\t\t\tif ((chunk[0] & 0x0F) === 0x08) {\n\t\t\t\t\t\tbody = body.pipe(zlib.createInflate());\n\t\t\t\t\t} else {\n\t\t\t\t\t\tbody = body.pipe(zlib.createInflateRaw());\n\t\t\t\t\t}\n\t\t\t\t\tresponse = new Response(body, response_options);\n\t\t\t\t\tresolve(response);\n\t\t\t\t});\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// for br\n\t\t\tif (codings == 'br' && typeof zlib.createBrotliDecompress === 'function') {\n\t\t\t\tbody = body.pipe(zlib.createBrotliDecompress());\n\t\t\t\tresponse = new Response(body, response_options);\n\t\t\t\tresolve(response);\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// otherwise, use response as-is\n\t\t\tresponse = new Response(body, response_options);\n\t\t\tresolve(response);\n\t\t});\n\n\t\twriteToStream(req, request);\n\t});\n}\n/**\n * Redirect code matching\n *\n * @param Number code Status code\n * @return Boolean\n */\nfetch.isRedirect = function (code) {\n\treturn code === 301 || code === 302 || code === 303 || code === 307 || code === 308;\n};\n\n// expose Promise\nfetch.Promise = global.Promise;\n\nmodule.exports = exports = fetch;\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.default = exports;\nexports.Headers = Headers;\nexports.Request = Request;\nexports.Response = Response;\nexports.FetchError = FetchError;\n","var wrappy = require('wrappy')\nmodule.exports = wrappy(once)\nmodule.exports.strict = wrappy(onceStrict)\n\nonce.proto = once(function () {\n Object.defineProperty(Function.prototype, 'once', {\n value: function () {\n return once(this)\n },\n configurable: true\n })\n\n Object.defineProperty(Function.prototype, 'onceStrict', {\n value: function () {\n return onceStrict(this)\n },\n configurable: true\n })\n})\n\nfunction once (fn) {\n var f = function () {\n if (f.called) return f.value\n f.called = true\n return f.value = fn.apply(this, arguments)\n }\n f.called = false\n return f\n}\n\nfunction onceStrict (fn) {\n var f = function () {\n if (f.called)\n throw new Error(f.onceError)\n f.called = true\n return f.value = fn.apply(this, arguments)\n }\n var name = fn.name || 'Function wrapped with `once`'\n f.onceError = name + \" shouldn't be called more than once\"\n f.called = false\n return f\n}\n","module.exports = require('./lib/tunnel');\n","'use strict';\n\nvar net = require('net');\nvar tls = require('tls');\nvar http = require('http');\nvar https = require('https');\nvar events = require('events');\nvar assert = require('assert');\nvar util = require('util');\n\n\nexports.httpOverHttp = httpOverHttp;\nexports.httpsOverHttp = httpsOverHttp;\nexports.httpOverHttps = httpOverHttps;\nexports.httpsOverHttps = httpsOverHttps;\n\n\nfunction httpOverHttp(options) {\n var agent = new TunnelingAgent(options);\n agent.request = http.request;\n return agent;\n}\n\nfunction httpsOverHttp(options) {\n var agent = new TunnelingAgent(options);\n agent.request = http.request;\n agent.createSocket = createSecureSocket;\n agent.defaultPort = 443;\n return agent;\n}\n\nfunction httpOverHttps(options) {\n var agent = new TunnelingAgent(options);\n agent.request = https.request;\n return agent;\n}\n\nfunction httpsOverHttps(options) {\n var agent = new TunnelingAgent(options);\n agent.request = https.request;\n agent.createSocket = createSecureSocket;\n agent.defaultPort = 443;\n return agent;\n}\n\n\nfunction TunnelingAgent(options) {\n var self = this;\n self.options = options || {};\n self.proxyOptions = self.options.proxy || {};\n self.maxSockets = self.options.maxSockets || http.Agent.defaultMaxSockets;\n self.requests = [];\n self.sockets = [];\n\n self.on('free', function onFree(socket, host, port, localAddress) {\n var options = toOptions(host, port, localAddress);\n for (var i = 0, len = self.requests.length; i < len; ++i) {\n var pending = self.requests[i];\n if (pending.host === options.host && pending.port === options.port) {\n // Detect the request to connect same origin server,\n // reuse the connection.\n self.requests.splice(i, 1);\n pending.request.onSocket(socket);\n return;\n }\n }\n socket.destroy();\n self.removeSocket(socket);\n });\n}\nutil.inherits(TunnelingAgent, events.EventEmitter);\n\nTunnelingAgent.prototype.addRequest = function addRequest(req, host, port, localAddress) {\n var self = this;\n var options = mergeOptions({request: req}, self.options, toOptions(host, port, localAddress));\n\n if (self.sockets.length >= this.maxSockets) {\n // We are over limit so we'll add it to the queue.\n self.requests.push(options);\n return;\n }\n\n // If we are under maxSockets create a new one.\n self.createSocket(options, function(socket) {\n socket.on('free', onFree);\n socket.on('close', onCloseOrRemove);\n socket.on('agentRemove', onCloseOrRemove);\n req.onSocket(socket);\n\n function onFree() {\n self.emit('free', socket, options);\n }\n\n function onCloseOrRemove(err) {\n self.removeSocket(socket);\n socket.removeListener('free', onFree);\n socket.removeListener('close', onCloseOrRemove);\n socket.removeListener('agentRemove', onCloseOrRemove);\n }\n });\n};\n\nTunnelingAgent.prototype.createSocket = function createSocket(options, cb) {\n var self = this;\n var placeholder = {};\n self.sockets.push(placeholder);\n\n var connectOptions = mergeOptions({}, self.proxyOptions, {\n method: 'CONNECT',\n path: options.host + ':' + options.port,\n agent: false,\n headers: {\n host: options.host + ':' + options.port\n }\n });\n if (options.localAddress) {\n connectOptions.localAddress = options.localAddress;\n }\n if (connectOptions.proxyAuth) {\n connectOptions.headers = connectOptions.headers || {};\n connectOptions.headers['Proxy-Authorization'] = 'Basic ' +\n new Buffer(connectOptions.proxyAuth).toString('base64');\n }\n\n debug('making CONNECT request');\n var connectReq = self.request(connectOptions);\n connectReq.useChunkedEncodingByDefault = false; // for v0.6\n connectReq.once('response', onResponse); // for v0.6\n connectReq.once('upgrade', onUpgrade); // for v0.6\n connectReq.once('connect', onConnect); // for v0.7 or later\n connectReq.once('error', onError);\n connectReq.end();\n\n function onResponse(res) {\n // Very hacky. This is necessary to avoid http-parser leaks.\n res.upgrade = true;\n }\n\n function onUpgrade(res, socket, head) {\n // Hacky.\n process.nextTick(function() {\n onConnect(res, socket, head);\n });\n }\n\n function onConnect(res, socket, head) {\n connectReq.removeAllListeners();\n socket.removeAllListeners();\n\n if (res.statusCode !== 200) {\n debug('tunneling socket could not be established, statusCode=%d',\n res.statusCode);\n socket.destroy();\n var error = new Error('tunneling socket could not be established, ' +\n 'statusCode=' + res.statusCode);\n error.code = 'ECONNRESET';\n options.request.emit('error', error);\n self.removeSocket(placeholder);\n return;\n }\n if (head.length > 0) {\n debug('got illegal response body from proxy');\n socket.destroy();\n var error = new Error('got illegal response body from proxy');\n error.code = 'ECONNRESET';\n options.request.emit('error', error);\n self.removeSocket(placeholder);\n return;\n }\n debug('tunneling connection has established');\n self.sockets[self.sockets.indexOf(placeholder)] = socket;\n return cb(socket);\n }\n\n function onError(cause) {\n connectReq.removeAllListeners();\n\n debug('tunneling socket could not be established, cause=%s\\n',\n cause.message, cause.stack);\n var error = new Error('tunneling socket could not be established, ' +\n 'cause=' + cause.message);\n error.code = 'ECONNRESET';\n options.request.emit('error', error);\n self.removeSocket(placeholder);\n }\n};\n\nTunnelingAgent.prototype.removeSocket = function removeSocket(socket) {\n var pos = this.sockets.indexOf(socket)\n if (pos === -1) {\n return;\n }\n this.sockets.splice(pos, 1);\n\n var pending = this.requests.shift();\n if (pending) {\n // If we have pending requests and a socket gets closed a new one\n // needs to be created to take over in the pool for the one that closed.\n this.createSocket(pending, function(socket) {\n pending.request.onSocket(socket);\n });\n }\n};\n\nfunction createSecureSocket(options, cb) {\n var self = this;\n TunnelingAgent.prototype.createSocket.call(self, options, function(socket) {\n var hostHeader = options.request.getHeader('host');\n var tlsOptions = mergeOptions({}, self.options, {\n socket: socket,\n servername: hostHeader ? hostHeader.replace(/:.*$/, '') : options.host\n });\n\n // 0 is dummy port for v0.6\n var secureSocket = tls.connect(0, tlsOptions);\n self.sockets[self.sockets.indexOf(socket)] = secureSocket;\n cb(secureSocket);\n });\n}\n\n\nfunction toOptions(host, port, localAddress) {\n if (typeof host === 'string') { // since v0.10\n return {\n host: host,\n port: port,\n localAddress: localAddress\n };\n }\n return host; // for v0.11 or later\n}\n\nfunction mergeOptions(target) {\n for (var i = 1, len = arguments.length; i < len; ++i) {\n var overrides = arguments[i];\n if (typeof overrides === 'object') {\n var keys = Object.keys(overrides);\n for (var j = 0, keyLen = keys.length; j < keyLen; ++j) {\n var k = keys[j];\n if (overrides[k] !== undefined) {\n target[k] = overrides[k];\n }\n }\n }\n }\n return target;\n}\n\n\nvar debug;\nif (process.env.NODE_DEBUG && /\\btunnel\\b/.test(process.env.NODE_DEBUG)) {\n debug = function() {\n var args = Array.prototype.slice.call(arguments);\n if (typeof args[0] === 'string') {\n args[0] = 'TUNNEL: ' + args[0];\n } else {\n args.unshift('TUNNEL:');\n }\n console.error.apply(console, args);\n }\n} else {\n debug = function() {};\n}\nexports.debug = debug; // for test\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nfunction getUserAgent() {\n if (typeof navigator === \"object\" && \"userAgent\" in navigator) {\n return navigator.userAgent;\n }\n\n if (typeof process === \"object\" && \"version\" in process) {\n return `Node.js/${process.version.substr(1)} (${process.platform}; ${process.arch})`;\n }\n\n return \"\";\n}\n\nexports.getUserAgent = getUserAgent;\n//# sourceMappingURL=index.js.map\n","// Returns a wrapper function that returns a wrapped callback\n// The wrapper function should do some stuff, and return a\n// presumably different callback function.\n// This makes sure that own properties are retained, so that\n// decorations and such are not lost along the way.\nmodule.exports = wrappy\nfunction wrappy (fn, cb) {\n if (fn && cb) return wrappy(fn)(cb)\n\n if (typeof fn !== 'function')\n throw new TypeError('need wrapper function')\n\n Object.keys(fn).forEach(function (k) {\n wrapper[k] = fn[k]\n })\n\n return wrapper\n\n function wrapper() {\n var args = new Array(arguments.length)\n for (var i = 0; i < args.length; i++) {\n args[i] = arguments[i]\n }\n var ret = fn.apply(this, args)\n var cb = args[args.length-1]\n if (typeof ret === 'function' && ret !== cb) {\n Object.keys(cb).forEach(function (k) {\n ret[k] = cb[k]\n })\n }\n return ret\n }\n}\n",null,"module.exports = require(\"assert\");;","module.exports = require(\"events\");;","module.exports = require(\"fs\");;","module.exports = require(\"http\");;","module.exports = require(\"https\");;","module.exports = require(\"net\");;","module.exports = require(\"os\");;","module.exports = require(\"path\");;","module.exports = require(\"stream\");;","module.exports = require(\"tls\");;","module.exports = require(\"url\");;","module.exports = require(\"util\");;","module.exports = require(\"zlib\");;","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tif(__webpack_module_cache__[moduleId]) {\n\t\treturn __webpack_module_cache__[moduleId].exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\tvar threw = true;\n\ttry {\n\t\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\t\tthrew = false;\n\t} finally {\n\t\tif(threw) delete __webpack_module_cache__[moduleId];\n\t}\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","__webpack_require__.nmd = (module) => {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","\n__webpack_require__.ab = __dirname + \"/\";","// module exports must be returned from runtime so entry inlining is disabled\n// startup\n// Load entry module and return exports\nreturn __webpack_require__(3109);\n"],"mappings":";;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;;ACpFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;;ACpEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;;AClPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;;AC9JA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;;AC/EA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;;AC9OA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;;AC7BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;;ACnBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;;AClDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;;ACpCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;;AC3CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;;ACtDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;;ACxhBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;;AC1DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;;AClDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;;AC9HA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;;ACvYA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;;ACvCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;;AC7GA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;;ACnIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;;ACnoCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;;ACxDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;;ACrJA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;ACvCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;AC1DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;AC/CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;AC7BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;;AClBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;;ACrBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;;AC7QA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;;ACjJA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;;ACvDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;;AChEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;;ACnEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;;ACxFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;;AC7YA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;;AClBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;;ACtVA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;;AC1VA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;AClnDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;AC3CA;AACA;AACA;A;;;;;;ACFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;;ACzQA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;ACnBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;AClCA;AACA;AACA;A;;;;;;ACFA;AACA;A;;;;;;ACDA;AACA;A;;;;;;ACDA;AACA;A;;;;;;ACDA;AACA;A;;;;;;ACDA;AACA;A;;;;;;ACDA;AACA;A;;;;;;ACDA;AACA;A;;;;;;ACDA;AACA;A;;;;;;ACDA;AACA;A;;;;;;ACDA;AACA;A;;;;;;ACDA;AACA;A;;;;;;ACDA;AACA;A;;;;;;ACDA;AACA;A;;;;ACDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;AC/BA;AACA;AACA;AACA;AACA;;;;ACJA;AACA;ACDA;AACA;AACA;AACA;;A","sourceRoot":""} \ No newline at end of file +{"version":3,"file":"index.js","sources":["../webpack://trx-parser/./lib/github.js","../webpack://trx-parser/./lib/main.js","../webpack://trx-parser/./lib/markup.js","../webpack://trx-parser/./lib/utils.js","../webpack://trx-parser/./node_modules/@actions/core/lib/command.js","../webpack://trx-parser/./node_modules/@actions/core/lib/core.js","../webpack://trx-parser/./node_modules/@actions/core/lib/file-command.js","../webpack://trx-parser/./node_modules/@actions/core/lib/utils.js","../webpack://trx-parser/./node_modules/@actions/github/lib/context.js","../webpack://trx-parser/./node_modules/@actions/github/lib/github.js","../webpack://trx-parser/./node_modules/@actions/github/lib/internal/utils.js","../webpack://trx-parser/./node_modules/@actions/github/lib/utils.js","../webpack://trx-parser/./node_modules/@actions/http-client/index.js","../webpack://trx-parser/./node_modules/@actions/http-client/proxy.js","../webpack://trx-parser/./node_modules/@octokit/auth-token/dist-node/index.js","../webpack://trx-parser/./node_modules/@octokit/core/dist-node/index.js","../webpack://trx-parser/./node_modules/@octokit/endpoint/dist-node/index.js","../webpack://trx-parser/./node_modules/@octokit/endpoint/node_modules/is-plain-object/dist/is-plain-object.js","../webpack://trx-parser/./node_modules/@octokit/graphql/dist-node/index.js","../webpack://trx-parser/./node_modules/@octokit/plugin-paginate-rest/dist-node/index.js","../webpack://trx-parser/./node_modules/@octokit/plugin-rest-endpoint-methods/dist-node/index.js","../webpack://trx-parser/./node_modules/@octokit/request-error/dist-node/index.js","../webpack://trx-parser/./node_modules/@octokit/request/dist-node/index.js","../webpack://trx-parser/./node_modules/@octokit/request/node_modules/is-plain-object/dist/is-plain-object.js","../webpack://trx-parser/./node_modules/before-after-hook/index.js","../webpack://trx-parser/./node_modules/before-after-hook/lib/add.js","../webpack://trx-parser/./node_modules/before-after-hook/lib/register.js","../webpack://trx-parser/./node_modules/before-after-hook/lib/remove.js","../webpack://trx-parser/./node_modules/deprecation/dist-node/index.js","../webpack://trx-parser/./node_modules/fast-xml-parser/src/json2xml.js","../webpack://trx-parser/./node_modules/fast-xml-parser/src/nimndata.js","../webpack://trx-parser/./node_modules/fast-xml-parser/src/node2json.js","../webpack://trx-parser/./node_modules/fast-xml-parser/src/node2json_str.js","../webpack://trx-parser/./node_modules/fast-xml-parser/src/parser.js","../webpack://trx-parser/./node_modules/fast-xml-parser/src/util.js","../webpack://trx-parser/./node_modules/fast-xml-parser/src/validator.js","../webpack://trx-parser/./node_modules/fast-xml-parser/src/xmlNode.js","../webpack://trx-parser/./node_modules/fast-xml-parser/src/xmlstr2xmlnode.js","../webpack://trx-parser/./node_modules/he/he.js","../webpack://trx-parser/./node_modules/node-fetch/lib/index.js","../webpack://trx-parser/./node_modules/once/once.js","../webpack://trx-parser/./node_modules/tunnel/index.js","../webpack://trx-parser/./node_modules/tunnel/lib/tunnel.js","../webpack://trx-parser/./node_modules/universal-user-agent/dist-node/index.js","../webpack://trx-parser/./node_modules/wrappy/wrappy.js","../webpack://trx-parser/./node_modules/@vercel/ncc/dist/ncc/@@notfound.js","../webpack://trx-parser/external \"assert\"","../webpack://trx-parser/external \"events\"","../webpack://trx-parser/external \"fs\"","../webpack://trx-parser/external \"http\"","../webpack://trx-parser/external \"https\"","../webpack://trx-parser/external \"net\"","../webpack://trx-parser/external \"os\"","../webpack://trx-parser/external \"path\"","../webpack://trx-parser/external \"stream\"","../webpack://trx-parser/external \"tls\"","../webpack://trx-parser/external \"url\"","../webpack://trx-parser/external \"util\"","../webpack://trx-parser/external \"zlib\"","../webpack://trx-parser/webpack/bootstrap","../webpack://trx-parser/webpack/runtime/node module decorator","../webpack://trx-parser/webpack/runtime/compat","../webpack://trx-parser/webpack/startup"],"sourcesContent":["\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.createCheckRun = void 0;\nconst github = __importStar(require(\"@actions/github\"));\nconst core = __importStar(require(\"@actions/core\"));\nconst markup_1 = require(\"./markup\");\nfunction createCheckRun(repoToken, ignoreTestFailures, reportData) {\n return __awaiter(this, void 0, void 0, function* () {\n try {\n core.info(`Creating PR check for ${reportData.ReportMetaData.ReportTitle}`);\n const octokit = github.getOctokit(repoToken);\n let git_sha = github.context.sha;\n if (github.context.eventName === 'push') {\n core.info(`Creating status check for GitSha: ${git_sha} on a push event`);\n }\n if (github.context.eventName === 'pull_request') {\n const prPayload = github.context\n .payload;\n git_sha = prPayload.pull_request.head.sha;\n core.info(`Creating status check for GitSha: ${git_sha} on a pull request event`);\n }\n const markupData = markup_1.getMarkupForTrx(reportData);\n const checkTime = new Date().toUTCString();\n core.info(`Check time is: ${checkTime}`);\n const response = yield octokit.checks.create({\n owner: github.context.repo.owner,\n repo: github.context.repo.repo,\n name: reportData.ReportMetaData.ReportName.toLowerCase(),\n head_sha: git_sha,\n status: 'completed',\n conclusion: reportData.TrxData.TestRun.ResultSummary._outcome === 'Failed'\n ? ignoreTestFailures\n ? 'neutral'\n : 'failure'\n : 'success',\n output: {\n title: reportData.ReportMetaData.ReportTitle,\n summary: `This test run completed at \\`${checkTime}\\``,\n // text: reportData.ReportMetaData.TrxJSonString\n text: markupData\n }\n });\n if (response.status !== 201) {\n throw new Error(`Failed to create status check. Error code: ${response.status}`);\n }\n else {\n core.info(`Created check: ${response.data.name} with response status ${response.status}`);\n }\n }\n catch (error) {\n core.setFailed(error.message);\n }\n });\n}\nexports.createCheckRun = createCheckRun;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.run = void 0;\nconst core = __importStar(require(\"@actions/core\"));\nconst github_1 = require(\"./github\");\nconst utils_1 = require(\"./utils\");\nfunction run() {\n return __awaiter(this, void 0, void 0, function* () {\n try {\n const token = core.getInput('REPO_TOKEN');\n const trxPath = core.getInput('TRX_PATH');\n const ignoreTestFailures = core.getInput('IGNORE_FAILURE', { required: false }) === 'true';\n core.info(`Finding Trx files in: ${trxPath}`);\n const trxFiles = yield utils_1.getTrxFiles(trxPath);\n core.info(`Processing ${trxFiles.length} trx files`);\n const trxToJson = yield utils_1.transformAllTrxToJson(trxFiles);\n core.info(`Checking for failing tests`);\n const failingTestsFound = utils_1.areThereAnyFailingTests(trxToJson);\n for (const data of trxToJson) {\n yield github_1.createCheckRun(token, ignoreTestFailures, data);\n }\n if (failingTestsFound) {\n if (ignoreTestFailures) {\n core.warning(`Workflow configured to ignore test failures`);\n }\n else {\n core.setFailed('At least one failing test was found');\n }\n }\n core.setOutput('test-outcome', failingTestsFound ? 'Failed' : 'Passed');\n core.setOutput('trx-files', trxFiles);\n }\n catch (error) {\n core.setFailed(error.message);\n }\n });\n}\nexports.run = run;\nrun();\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getTestRunDuration = exports.getMarkupForTrx = void 0;\nfunction getMarkupForTrx(testData) {\n const failedCount = testData.TrxData.TestRun.ResultSummary.Counters._failed;\n const passedCount = testData.TrxData.TestRun.ResultSummary.Counters._passed;\n const totalCount = testData.TrxData.TestRun.ResultSummary.Counters._total;\n const testOutcome = testData.TrxData.TestRun.ResultSummary._outcome;\n const badgeCountText = failedCount > 0\n ? `${`${failedCount}/${totalCount}`}`\n : `${`${passedCount}/${totalCount}`}`;\n const badgeStatusText = failedCount > 0 || testOutcome === 'Failed' ? 'FAILED' : 'PASSED';\n const badgeColor = failedCount > 0 || testOutcome === 'Failed' ? 'red' : 'brightgreen';\n return `\n![Generic badge](https://img.shields.io/badge/${badgeCountText}-${badgeStatusText}-${badgeColor}.svg)\n# Test Results - ${testData.ReportMetaData.ReportTitle}\n${getTestTimes(testData)}\n${getTestCounters(testData)}\n${getTestResultsMarkup(testData)}\n`;\n}\nexports.getMarkupForTrx = getMarkupForTrx;\nfunction getTestRunDuration(startTime, endTime) {\n const startTimeSeconds = new Date(startTime).valueOf();\n const endTimeSeconds = new Date(endTime).valueOf();\n const duration = endTimeSeconds - startTimeSeconds;\n return duration / 1000;\n}\nexports.getTestRunDuration = getTestRunDuration;\nfunction getTestTimes(testData) {\n const duration = getTestRunDuration(testData.TrxData.TestRun.Times._start, testData.TrxData.TestRun.Times._finish);\n return `\n

Expand the following summaries for more details:

\n
\n Duration: ${duration} seconds \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n
Started:${testData.TrxData.TestRun.Times._start}
Creation:${testData.TrxData.TestRun.Times._finish}
Queuing:${testData.TrxData.TestRun.Times._queuing}
Finished:${testData.TrxData.TestRun.Times._finish}
Duration:${duration} seconds
\n
\n`;\n}\nfunction getTestCounters(testData) {\n return `\n
\n Outcome: ${testData.TrxData.TestRun.ResultSummary._outcome} | Total Tests: ${testData.TrxData.TestRun.ResultSummary.Counters._total} | Passed: ${testData.TrxData.TestRun.ResultSummary.Counters._passed} | Failed: ${testData.TrxData.TestRun.ResultSummary.Counters._failed} \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
Total:${testData.TrxData.TestRun.ResultSummary.Counters._total}
Executed:${testData.TrxData.TestRun.ResultSummary.Counters._executed}
Passed:${testData.TrxData.TestRun.ResultSummary.Counters._passed}
Failed:${testData.TrxData.TestRun.ResultSummary.Counters._failed}
Error:${testData.TrxData.TestRun.ResultSummary.Counters._error}
Timeout:${testData.TrxData.TestRun.ResultSummary.Counters._timeout}
Aborted:${testData.TrxData.TestRun.ResultSummary.Counters._aborted}
Inconclusive:${testData.TrxData.TestRun.ResultSummary.Counters._inconclusive}
PassedButRunAborted:${testData.TrxData.TestRun.ResultSummary.Counters._passedButRunAborted}
NotRunnable:${testData.TrxData.TestRun.ResultSummary.Counters._notRunnable}
NotExecuted:${testData.TrxData.TestRun.ResultSummary.Counters._notExecuted}
Disconnected:${testData.TrxData.TestRun.ResultSummary.Counters._disconnected}
Warning:${testData.TrxData.TestRun.ResultSummary.Counters._warning}
Completed:${testData.TrxData.TestRun.ResultSummary.Counters._completed}
InProgress:${testData.TrxData.TestRun.ResultSummary.Counters._inProgress}
Pending:${testData.TrxData.TestRun.ResultSummary.Counters._pending}
\n
\n`;\n}\nfunction getTestResultsMarkup(testData) {\n let resultsMarkup = '';\n if (testData.IsEmpty) {\n return getNoResultsMarkup(testData);\n }\n else {\n const unittests = testData.TrxData.TestRun.TestDefinitions.UnitTest;\n if (Array.isArray(unittests)) {\n for (const data of unittests) {\n resultsMarkup += getSingletestMarkup(data, testData);\n }\n return resultsMarkup.trim();\n }\n else {\n return getSingletestMarkup(unittests, testData);\n }\n }\n}\nfunction getNoResultsMarkup(testData) {\n const runInfo = testData.TrxData.TestRun.ResultSummary.RunInfos.RunInfo;\n const testResultIcon = getTestOutcomeIcon(runInfo._outcome);\n const resultsMarkup = `\n
\n ${testResultIcon} ${runInfo._computerName} \n\n \n \n \n \n \n
Run Info${runInfo.Text}
\n
\n`;\n return resultsMarkup;\n}\nfunction getSingletestMarkup(data, testData) {\n var _a, _b;\n let resultsMarkup = '';\n const testResult = getUnitTestResult(data._id, testData.TrxData.TestRun.Results);\n if (testResult && (testResult === null || testResult === void 0 ? void 0 : testResult._outcome) === 'Failed') {\n const testResultIcon = getTestOutcomeIcon(testResult === null || testResult === void 0 ? void 0 : testResult._outcome);\n let testMarkup = `\n
\n ${testResultIcon} ${data._name} \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
ID:${data._id}
Name:${data._name}
Outcome:${testResult._outcome}
Computer Name:${testResult._computerName}
Start:${testResult._startTime}
End:${testResult._endTime}
Duration:${testResult._duration}
\n\n
\n Test Method Details: \n \n \n \n \n \n \n \n \n \n \n \n \n \n
Code Base${data.TestMethod._codeBase}
Class Name${data.TestMethod._className}
Method Name${data.TestMethod._name}
\n
\n`;\n if (testResult._outcome === 'Failed') {\n const failedTestDetails = `\n
\n Error Message:\n
${(_a = testResult.Output) === null || _a === void 0 ? void 0 : _a.ErrorInfo.Message}
\n
\n
\n Stack Trace:\n
${(_b = testResult.Output) === null || _b === void 0 ? void 0 : _b.ErrorInfo.StackTrace}
\n
\n `;\n testMarkup += failedTestDetails;\n }\n resultsMarkup += testMarkup;\n resultsMarkup += `\n
\n`;\n }\n return resultsMarkup.trim();\n}\nfunction getUnitTestResult(unitTestId, testResults) {\n const unitTestResults = testResults.UnitTestResult;\n if (Array.isArray(unitTestResults)) {\n return testResults.UnitTestResult.find(x => x._testId === unitTestId);\n }\n const result = unitTestResults;\n return result;\n}\nfunction getTestOutcomeIcon(testOutcome) {\n if (testOutcome === 'Passed')\n return ':heavy_check_mark:';\n if (testOutcome === 'Failed' || testOutcome === 'Error')\n return ':x:';\n if (testOutcome === 'NotExecuted')\n return ':radio_button:';\n return ':grey_question:';\n}\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.areThereAnyFailingTests = exports.transformAllTrxToJson = exports.readTrxFile = exports.transformTrxToJson = exports.getAbsoluteFilePaths = exports.getTrxFiles = void 0;\n/* eslint-disable @typescript-eslint/no-explicit-any */\nconst fs = __importStar(require(\"fs\"));\nconst path = __importStar(require(\"path\"));\nconst uitl = __importStar(require(\"util\"));\nconst core = __importStar(require(\"@actions/core\"));\nconst xmlParser = __importStar(require(\"fast-xml-parser\"));\nconst he = __importStar(require(\"he\"));\nconst fs_1 = require(\"fs\");\nfunction getTrxFiles(trxPath) {\n return __awaiter(this, void 0, void 0, function* () {\n if (!fs.existsSync(trxPath))\n return [];\n const readdir = uitl.promisify(fs.readdir);\n const fileNames = yield readdir(trxPath);\n const trxFiles = fileNames.filter(f => f.endsWith('.trx'));\n core.info(`Files count: ${fileNames.length}`);\n const filesWithAbsolutePaths = getAbsoluteFilePaths(trxFiles, trxPath);\n return filesWithAbsolutePaths;\n });\n}\nexports.getTrxFiles = getTrxFiles;\nfunction getAbsoluteFilePaths(fileNames, directoryName) {\n const absolutePaths = [];\n for (const file of fileNames) {\n const absolutePath = path.join(directoryName, file);\n absolutePaths.push(absolutePath);\n }\n return absolutePaths;\n}\nexports.getAbsoluteFilePaths = getAbsoluteFilePaths;\nfunction transformTrxToJson(filePath) {\n return __awaiter(this, void 0, void 0, function* () {\n let trxDataWrapper;\n if (fs.existsSync(filePath)) {\n core.info(`Transforming file ${filePath}`);\n const xmlData = yield readTrxFile(filePath);\n const options = {\n attributeNamePrefix: '_',\n // attrNodeName: 'attr', //default is 'false'\n textNodeName: '#text',\n ignoreAttributes: false,\n ignoreNameSpace: false,\n allowBooleanAttributes: true,\n parseNodeValue: true,\n parseAttributeValue: true,\n trimValues: true,\n cdataTagName: '__cdata',\n cdataPositionChar: '\\\\c',\n parseTrueNumberOnly: false,\n arrayMode: false,\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n attrValueProcessor: (val, _attrName) => he.decode(val, { isAttributeValue: true }),\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n tagValueProcessor: (val, _tagName) => he.decode(val),\n stopNodes: ['parse-me-as-string']\n };\n if (xmlParser.validate(xmlData.toString()) === true) {\n const jsonString = xmlParser.parse(xmlData, options, true);\n const testData = jsonString;\n const runInfos = testData.TestRun.ResultSummary.RunInfos;\n if (runInfos && runInfos.RunInfo._outcome === 'Failed') {\n core.warning('There is trouble');\n }\n const reportHeaders = getReportHeaders(testData);\n trxDataWrapper = {\n TrxData: jsonString,\n IsEmpty: IsEmpty(testData),\n ReportMetaData: {\n TrxFilePath: filePath,\n ReportName: `${reportHeaders.reportName}-check`,\n ReportTitle: reportHeaders.reportTitle,\n TrxJSonString: JSON.stringify(jsonString),\n TrxXmlString: xmlData\n }\n };\n }\n }\n else {\n core.warning(`Trx file ${filePath} does not exist`);\n }\n return trxDataWrapper;\n });\n}\nexports.transformTrxToJson = transformTrxToJson;\nfunction IsEmpty(testData) {\n return testData.TestRun.TestDefinitions ? false : true;\n}\nfunction readTrxFile(filePath) {\n return __awaiter(this, void 0, void 0, function* () {\n return yield fs_1.promises.readFile(filePath, 'utf8');\n });\n}\nexports.readTrxFile = readTrxFile;\nfunction transformAllTrxToJson(trxFiles) {\n return __awaiter(this, void 0, void 0, function* () {\n const transformedTrxReports = [];\n for (const trx of trxFiles) {\n transformedTrxReports.push(yield transformTrxToJson(trx));\n }\n return transformedTrxReports;\n });\n}\nexports.transformAllTrxToJson = transformAllTrxToJson;\nfunction areThereAnyFailingTests(trxJsonReports) {\n for (const trxData of trxJsonReports) {\n if (trxData.TrxData.TestRun.ResultSummary._outcome === 'Failed') {\n return true;\n }\n }\n return false;\n}\nexports.areThereAnyFailingTests = areThereAnyFailingTests;\nfunction getReportHeaders(data) {\n var _a, _b;\n let reportTitle = '';\n let reportName = '';\n const isEmpty = IsEmpty(data);\n if (isEmpty) {\n reportTitle = data.TestRun.ResultSummary.RunInfos.RunInfo._computerName;\n reportName = data.TestRun.ResultSummary.RunInfos.RunInfo._computerName.toUpperCase();\n }\n else {\n const unittests = (_b = (_a = data.TestRun) === null || _a === void 0 ? void 0 : _a.TestDefinitions) === null || _b === void 0 ? void 0 : _b.UnitTest;\n const storage = getAssemblyName(unittests);\n const dllName = storage.split('/').pop();\n if (dllName) {\n reportTitle = dllName.replace('.dll', '').toUpperCase().replace('.', ' ');\n reportName = dllName.replace('.dll', '').toUpperCase();\n }\n }\n return { reportName, reportTitle };\n}\nfunction getAssemblyName(unittests) {\n if (Array.isArray(unittests)) {\n core.debug('Its an array');\n return unittests[0]._storage;\n }\n else {\n const ut = unittests;\n if (ut) {\n core.debug(`Its not an array: ${ut._storage}`);\n return ut._storage;\n }\n else {\n return 'NOT FOUND';\n }\n }\n}\n","\"use strict\";\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\n result[\"default\"] = mod;\n return result;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst os = __importStar(require(\"os\"));\nconst utils_1 = require(\"./utils\");\n/**\n * Commands\n *\n * Command Format:\n * ::name key=value,key=value::message\n *\n * Examples:\n * ::warning::This is the message\n * ::set-env name=MY_VAR::some value\n */\nfunction issueCommand(command, properties, message) {\n const cmd = new Command(command, properties, message);\n process.stdout.write(cmd.toString() + os.EOL);\n}\nexports.issueCommand = issueCommand;\nfunction issue(name, message = '') {\n issueCommand(name, {}, message);\n}\nexports.issue = issue;\nconst CMD_STRING = '::';\nclass Command {\n constructor(command, properties, message) {\n if (!command) {\n command = 'missing.command';\n }\n this.command = command;\n this.properties = properties;\n this.message = message;\n }\n toString() {\n let cmdStr = CMD_STRING + this.command;\n if (this.properties && Object.keys(this.properties).length > 0) {\n cmdStr += ' ';\n let first = true;\n for (const key in this.properties) {\n if (this.properties.hasOwnProperty(key)) {\n const val = this.properties[key];\n if (val) {\n if (first) {\n first = false;\n }\n else {\n cmdStr += ',';\n }\n cmdStr += `${key}=${escapeProperty(val)}`;\n }\n }\n }\n }\n cmdStr += `${CMD_STRING}${escapeData(this.message)}`;\n return cmdStr;\n }\n}\nfunction escapeData(s) {\n return utils_1.toCommandValue(s)\n .replace(/%/g, '%25')\n .replace(/\\r/g, '%0D')\n .replace(/\\n/g, '%0A');\n}\nfunction escapeProperty(s) {\n return utils_1.toCommandValue(s)\n .replace(/%/g, '%25')\n .replace(/\\r/g, '%0D')\n .replace(/\\n/g, '%0A')\n .replace(/:/g, '%3A')\n .replace(/,/g, '%2C');\n}\n//# sourceMappingURL=command.js.map","\"use strict\";\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\n result[\"default\"] = mod;\n return result;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst command_1 = require(\"./command\");\nconst file_command_1 = require(\"./file-command\");\nconst utils_1 = require(\"./utils\");\nconst os = __importStar(require(\"os\"));\nconst path = __importStar(require(\"path\"));\n/**\n * The code to exit an action\n */\nvar ExitCode;\n(function (ExitCode) {\n /**\n * A code indicating that the action was successful\n */\n ExitCode[ExitCode[\"Success\"] = 0] = \"Success\";\n /**\n * A code indicating that the action was a failure\n */\n ExitCode[ExitCode[\"Failure\"] = 1] = \"Failure\";\n})(ExitCode = exports.ExitCode || (exports.ExitCode = {}));\n//-----------------------------------------------------------------------\n// Variables\n//-----------------------------------------------------------------------\n/**\n * Sets env variable for this action and future actions in the job\n * @param name the name of the variable to set\n * @param val the value of the variable. Non-string values will be converted to a string via JSON.stringify\n */\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nfunction exportVariable(name, val) {\n const convertedVal = utils_1.toCommandValue(val);\n process.env[name] = convertedVal;\n const filePath = process.env['GITHUB_ENV'] || '';\n if (filePath) {\n const delimiter = '_GitHubActionsFileCommandDelimeter_';\n const commandValue = `${name}<<${delimiter}${os.EOL}${convertedVal}${os.EOL}${delimiter}`;\n file_command_1.issueCommand('ENV', commandValue);\n }\n else {\n command_1.issueCommand('set-env', { name }, convertedVal);\n }\n}\nexports.exportVariable = exportVariable;\n/**\n * Registers a secret which will get masked from logs\n * @param secret value of the secret\n */\nfunction setSecret(secret) {\n command_1.issueCommand('add-mask', {}, secret);\n}\nexports.setSecret = setSecret;\n/**\n * Prepends inputPath to the PATH (for this action and future actions)\n * @param inputPath\n */\nfunction addPath(inputPath) {\n const filePath = process.env['GITHUB_PATH'] || '';\n if (filePath) {\n file_command_1.issueCommand('PATH', inputPath);\n }\n else {\n command_1.issueCommand('add-path', {}, inputPath);\n }\n process.env['PATH'] = `${inputPath}${path.delimiter}${process.env['PATH']}`;\n}\nexports.addPath = addPath;\n/**\n * Gets the value of an input. The value is also trimmed.\n *\n * @param name name of the input to get\n * @param options optional. See InputOptions.\n * @returns string\n */\nfunction getInput(name, options) {\n const val = process.env[`INPUT_${name.replace(/ /g, '_').toUpperCase()}`] || '';\n if (options && options.required && !val) {\n throw new Error(`Input required and not supplied: ${name}`);\n }\n return val.trim();\n}\nexports.getInput = getInput;\n/**\n * Sets the value of an output.\n *\n * @param name name of the output to set\n * @param value value to store. Non-string values will be converted to a string via JSON.stringify\n */\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nfunction setOutput(name, value) {\n command_1.issueCommand('set-output', { name }, value);\n}\nexports.setOutput = setOutput;\n/**\n * Enables or disables the echoing of commands into stdout for the rest of the step.\n * Echoing is disabled by default if ACTIONS_STEP_DEBUG is not set.\n *\n */\nfunction setCommandEcho(enabled) {\n command_1.issue('echo', enabled ? 'on' : 'off');\n}\nexports.setCommandEcho = setCommandEcho;\n//-----------------------------------------------------------------------\n// Results\n//-----------------------------------------------------------------------\n/**\n * Sets the action status to failed.\n * When the action exits it will be with an exit code of 1\n * @param message add error issue message\n */\nfunction setFailed(message) {\n process.exitCode = ExitCode.Failure;\n error(message);\n}\nexports.setFailed = setFailed;\n//-----------------------------------------------------------------------\n// Logging Commands\n//-----------------------------------------------------------------------\n/**\n * Gets whether Actions Step Debug is on or not\n */\nfunction isDebug() {\n return process.env['RUNNER_DEBUG'] === '1';\n}\nexports.isDebug = isDebug;\n/**\n * Writes debug message to user log\n * @param message debug message\n */\nfunction debug(message) {\n command_1.issueCommand('debug', {}, message);\n}\nexports.debug = debug;\n/**\n * Adds an error issue\n * @param message error issue message. Errors will be converted to string via toString()\n */\nfunction error(message) {\n command_1.issue('error', message instanceof Error ? message.toString() : message);\n}\nexports.error = error;\n/**\n * Adds an warning issue\n * @param message warning issue message. Errors will be converted to string via toString()\n */\nfunction warning(message) {\n command_1.issue('warning', message instanceof Error ? message.toString() : message);\n}\nexports.warning = warning;\n/**\n * Writes info to log with console.log.\n * @param message info message\n */\nfunction info(message) {\n process.stdout.write(message + os.EOL);\n}\nexports.info = info;\n/**\n * Begin an output group.\n *\n * Output until the next `groupEnd` will be foldable in this group\n *\n * @param name The name of the output group\n */\nfunction startGroup(name) {\n command_1.issue('group', name);\n}\nexports.startGroup = startGroup;\n/**\n * End an output group.\n */\nfunction endGroup() {\n command_1.issue('endgroup');\n}\nexports.endGroup = endGroup;\n/**\n * Wrap an asynchronous function call in a group.\n *\n * Returns the same type as the function itself.\n *\n * @param name The name of the group\n * @param fn The function to wrap in the group\n */\nfunction group(name, fn) {\n return __awaiter(this, void 0, void 0, function* () {\n startGroup(name);\n let result;\n try {\n result = yield fn();\n }\n finally {\n endGroup();\n }\n return result;\n });\n}\nexports.group = group;\n//-----------------------------------------------------------------------\n// Wrapper action state\n//-----------------------------------------------------------------------\n/**\n * Saves state for current action, the state can only be retrieved by this action's post job execution.\n *\n * @param name name of the state to store\n * @param value value to store. Non-string values will be converted to a string via JSON.stringify\n */\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nfunction saveState(name, value) {\n command_1.issueCommand('save-state', { name }, value);\n}\nexports.saveState = saveState;\n/**\n * Gets the value of an state set by this action's main execution.\n *\n * @param name name of the state to get\n * @returns string\n */\nfunction getState(name) {\n return process.env[`STATE_${name}`] || '';\n}\nexports.getState = getState;\n//# sourceMappingURL=core.js.map","\"use strict\";\n// For internal use, subject to change.\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\n result[\"default\"] = mod;\n return result;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\n// We use any as a valid input type\n/* eslint-disable @typescript-eslint/no-explicit-any */\nconst fs = __importStar(require(\"fs\"));\nconst os = __importStar(require(\"os\"));\nconst utils_1 = require(\"./utils\");\nfunction issueCommand(command, message) {\n const filePath = process.env[`GITHUB_${command}`];\n if (!filePath) {\n throw new Error(`Unable to find environment variable for file command ${command}`);\n }\n if (!fs.existsSync(filePath)) {\n throw new Error(`Missing file at path: ${filePath}`);\n }\n fs.appendFileSync(filePath, `${utils_1.toCommandValue(message)}${os.EOL}`, {\n encoding: 'utf8'\n });\n}\nexports.issueCommand = issueCommand;\n//# sourceMappingURL=file-command.js.map","\"use strict\";\n// We use any as a valid input type\n/* eslint-disable @typescript-eslint/no-explicit-any */\nObject.defineProperty(exports, \"__esModule\", { value: true });\n/**\n * Sanitizes an input into a string so it can be passed into issueCommand safely\n * @param input input to sanitize into a string\n */\nfunction toCommandValue(input) {\n if (input === null || input === undefined) {\n return '';\n }\n else if (typeof input === 'string' || input instanceof String) {\n return input;\n }\n return JSON.stringify(input);\n}\nexports.toCommandValue = toCommandValue;\n//# sourceMappingURL=utils.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.Context = void 0;\nconst fs_1 = require(\"fs\");\nconst os_1 = require(\"os\");\nclass Context {\n /**\n * Hydrate the context from the environment\n */\n constructor() {\n this.payload = {};\n if (process.env.GITHUB_EVENT_PATH) {\n if (fs_1.existsSync(process.env.GITHUB_EVENT_PATH)) {\n this.payload = JSON.parse(fs_1.readFileSync(process.env.GITHUB_EVENT_PATH, { encoding: 'utf8' }));\n }\n else {\n const path = process.env.GITHUB_EVENT_PATH;\n process.stdout.write(`GITHUB_EVENT_PATH ${path} does not exist${os_1.EOL}`);\n }\n }\n this.eventName = process.env.GITHUB_EVENT_NAME;\n this.sha = process.env.GITHUB_SHA;\n this.ref = process.env.GITHUB_REF;\n this.workflow = process.env.GITHUB_WORKFLOW;\n this.action = process.env.GITHUB_ACTION;\n this.actor = process.env.GITHUB_ACTOR;\n this.job = process.env.GITHUB_JOB;\n this.runNumber = parseInt(process.env.GITHUB_RUN_NUMBER, 10);\n this.runId = parseInt(process.env.GITHUB_RUN_ID, 10);\n }\n get issue() {\n const payload = this.payload;\n return Object.assign(Object.assign({}, this.repo), { number: (payload.issue || payload.pull_request || payload).number });\n }\n get repo() {\n if (process.env.GITHUB_REPOSITORY) {\n const [owner, repo] = process.env.GITHUB_REPOSITORY.split('/');\n return { owner, repo };\n }\n if (this.payload.repository) {\n return {\n owner: this.payload.repository.owner.login,\n repo: this.payload.repository.name\n };\n }\n throw new Error(\"context.repo requires a GITHUB_REPOSITORY environment variable like 'owner/repo'\");\n }\n}\nexports.Context = Context;\n//# sourceMappingURL=context.js.map","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getOctokit = exports.context = void 0;\nconst Context = __importStar(require(\"./context\"));\nconst utils_1 = require(\"./utils\");\nexports.context = new Context.Context();\n/**\n * Returns a hydrated octokit ready to use for GitHub Actions\n *\n * @param token the repo PAT or GITHUB_TOKEN\n * @param options other options to set\n */\nfunction getOctokit(token, options) {\n return new utils_1.GitHub(utils_1.getOctokitOptions(token, options));\n}\nexports.getOctokit = getOctokit;\n//# sourceMappingURL=github.js.map","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getApiBaseUrl = exports.getProxyAgent = exports.getAuthString = void 0;\nconst httpClient = __importStar(require(\"@actions/http-client\"));\nfunction getAuthString(token, options) {\n if (!token && !options.auth) {\n throw new Error('Parameter token or opts.auth is required');\n }\n else if (token && options.auth) {\n throw new Error('Parameters token and opts.auth may not both be specified');\n }\n return typeof options.auth === 'string' ? options.auth : `token ${token}`;\n}\nexports.getAuthString = getAuthString;\nfunction getProxyAgent(destinationUrl) {\n const hc = new httpClient.HttpClient();\n return hc.getAgent(destinationUrl);\n}\nexports.getProxyAgent = getProxyAgent;\nfunction getApiBaseUrl() {\n return process.env['GITHUB_API_URL'] || 'https://api.github.com';\n}\nexports.getApiBaseUrl = getApiBaseUrl;\n//# sourceMappingURL=utils.js.map","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getOctokitOptions = exports.GitHub = exports.context = void 0;\nconst Context = __importStar(require(\"./context\"));\nconst Utils = __importStar(require(\"./internal/utils\"));\n// octokit + plugins\nconst core_1 = require(\"@octokit/core\");\nconst plugin_rest_endpoint_methods_1 = require(\"@octokit/plugin-rest-endpoint-methods\");\nconst plugin_paginate_rest_1 = require(\"@octokit/plugin-paginate-rest\");\nexports.context = new Context.Context();\nconst baseUrl = Utils.getApiBaseUrl();\nconst defaults = {\n baseUrl,\n request: {\n agent: Utils.getProxyAgent(baseUrl)\n }\n};\nexports.GitHub = core_1.Octokit.plugin(plugin_rest_endpoint_methods_1.restEndpointMethods, plugin_paginate_rest_1.paginateRest).defaults(defaults);\n/**\n * Convience function to correctly format Octokit Options to pass into the constructor.\n *\n * @param token the repo PAT or GITHUB_TOKEN\n * @param options other options to set\n */\nfunction getOctokitOptions(token, options) {\n const opts = Object.assign({}, options || {}); // Shallow clone - don't mutate the object provided by the caller\n // Auth\n const auth = Utils.getAuthString(token, opts);\n if (auth) {\n opts.auth = auth;\n }\n return opts;\n}\nexports.getOctokitOptions = getOctokitOptions;\n//# sourceMappingURL=utils.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst http = require(\"http\");\nconst https = require(\"https\");\nconst pm = require(\"./proxy\");\nlet tunnel;\nvar HttpCodes;\n(function (HttpCodes) {\n HttpCodes[HttpCodes[\"OK\"] = 200] = \"OK\";\n HttpCodes[HttpCodes[\"MultipleChoices\"] = 300] = \"MultipleChoices\";\n HttpCodes[HttpCodes[\"MovedPermanently\"] = 301] = \"MovedPermanently\";\n HttpCodes[HttpCodes[\"ResourceMoved\"] = 302] = \"ResourceMoved\";\n HttpCodes[HttpCodes[\"SeeOther\"] = 303] = \"SeeOther\";\n HttpCodes[HttpCodes[\"NotModified\"] = 304] = \"NotModified\";\n HttpCodes[HttpCodes[\"UseProxy\"] = 305] = \"UseProxy\";\n HttpCodes[HttpCodes[\"SwitchProxy\"] = 306] = \"SwitchProxy\";\n HttpCodes[HttpCodes[\"TemporaryRedirect\"] = 307] = \"TemporaryRedirect\";\n HttpCodes[HttpCodes[\"PermanentRedirect\"] = 308] = \"PermanentRedirect\";\n HttpCodes[HttpCodes[\"BadRequest\"] = 400] = \"BadRequest\";\n HttpCodes[HttpCodes[\"Unauthorized\"] = 401] = \"Unauthorized\";\n HttpCodes[HttpCodes[\"PaymentRequired\"] = 402] = \"PaymentRequired\";\n HttpCodes[HttpCodes[\"Forbidden\"] = 403] = \"Forbidden\";\n HttpCodes[HttpCodes[\"NotFound\"] = 404] = \"NotFound\";\n HttpCodes[HttpCodes[\"MethodNotAllowed\"] = 405] = \"MethodNotAllowed\";\n HttpCodes[HttpCodes[\"NotAcceptable\"] = 406] = \"NotAcceptable\";\n HttpCodes[HttpCodes[\"ProxyAuthenticationRequired\"] = 407] = \"ProxyAuthenticationRequired\";\n HttpCodes[HttpCodes[\"RequestTimeout\"] = 408] = \"RequestTimeout\";\n HttpCodes[HttpCodes[\"Conflict\"] = 409] = \"Conflict\";\n HttpCodes[HttpCodes[\"Gone\"] = 410] = \"Gone\";\n HttpCodes[HttpCodes[\"TooManyRequests\"] = 429] = \"TooManyRequests\";\n HttpCodes[HttpCodes[\"InternalServerError\"] = 500] = \"InternalServerError\";\n HttpCodes[HttpCodes[\"NotImplemented\"] = 501] = \"NotImplemented\";\n HttpCodes[HttpCodes[\"BadGateway\"] = 502] = \"BadGateway\";\n HttpCodes[HttpCodes[\"ServiceUnavailable\"] = 503] = \"ServiceUnavailable\";\n HttpCodes[HttpCodes[\"GatewayTimeout\"] = 504] = \"GatewayTimeout\";\n})(HttpCodes = exports.HttpCodes || (exports.HttpCodes = {}));\nvar Headers;\n(function (Headers) {\n Headers[\"Accept\"] = \"accept\";\n Headers[\"ContentType\"] = \"content-type\";\n})(Headers = exports.Headers || (exports.Headers = {}));\nvar MediaTypes;\n(function (MediaTypes) {\n MediaTypes[\"ApplicationJson\"] = \"application/json\";\n})(MediaTypes = exports.MediaTypes || (exports.MediaTypes = {}));\n/**\n * Returns the proxy URL, depending upon the supplied url and proxy environment variables.\n * @param serverUrl The server URL where the request will be sent. For example, https://api.github.com\n */\nfunction getProxyUrl(serverUrl) {\n let proxyUrl = pm.getProxyUrl(new URL(serverUrl));\n return proxyUrl ? proxyUrl.href : '';\n}\nexports.getProxyUrl = getProxyUrl;\nconst HttpRedirectCodes = [\n HttpCodes.MovedPermanently,\n HttpCodes.ResourceMoved,\n HttpCodes.SeeOther,\n HttpCodes.TemporaryRedirect,\n HttpCodes.PermanentRedirect\n];\nconst HttpResponseRetryCodes = [\n HttpCodes.BadGateway,\n HttpCodes.ServiceUnavailable,\n HttpCodes.GatewayTimeout\n];\nconst RetryableHttpVerbs = ['OPTIONS', 'GET', 'DELETE', 'HEAD'];\nconst ExponentialBackoffCeiling = 10;\nconst ExponentialBackoffTimeSlice = 5;\nclass HttpClientError extends Error {\n constructor(message, statusCode) {\n super(message);\n this.name = 'HttpClientError';\n this.statusCode = statusCode;\n Object.setPrototypeOf(this, HttpClientError.prototype);\n }\n}\nexports.HttpClientError = HttpClientError;\nclass HttpClientResponse {\n constructor(message) {\n this.message = message;\n }\n readBody() {\n return new Promise(async (resolve, reject) => {\n let output = Buffer.alloc(0);\n this.message.on('data', (chunk) => {\n output = Buffer.concat([output, chunk]);\n });\n this.message.on('end', () => {\n resolve(output.toString());\n });\n });\n }\n}\nexports.HttpClientResponse = HttpClientResponse;\nfunction isHttps(requestUrl) {\n let parsedUrl = new URL(requestUrl);\n return parsedUrl.protocol === 'https:';\n}\nexports.isHttps = isHttps;\nclass HttpClient {\n constructor(userAgent, handlers, requestOptions) {\n this._ignoreSslError = false;\n this._allowRedirects = true;\n this._allowRedirectDowngrade = false;\n this._maxRedirects = 50;\n this._allowRetries = false;\n this._maxRetries = 1;\n this._keepAlive = false;\n this._disposed = false;\n this.userAgent = userAgent;\n this.handlers = handlers || [];\n this.requestOptions = requestOptions;\n if (requestOptions) {\n if (requestOptions.ignoreSslError != null) {\n this._ignoreSslError = requestOptions.ignoreSslError;\n }\n this._socketTimeout = requestOptions.socketTimeout;\n if (requestOptions.allowRedirects != null) {\n this._allowRedirects = requestOptions.allowRedirects;\n }\n if (requestOptions.allowRedirectDowngrade != null) {\n this._allowRedirectDowngrade = requestOptions.allowRedirectDowngrade;\n }\n if (requestOptions.maxRedirects != null) {\n this._maxRedirects = Math.max(requestOptions.maxRedirects, 0);\n }\n if (requestOptions.keepAlive != null) {\n this._keepAlive = requestOptions.keepAlive;\n }\n if (requestOptions.allowRetries != null) {\n this._allowRetries = requestOptions.allowRetries;\n }\n if (requestOptions.maxRetries != null) {\n this._maxRetries = requestOptions.maxRetries;\n }\n }\n }\n options(requestUrl, additionalHeaders) {\n return this.request('OPTIONS', requestUrl, null, additionalHeaders || {});\n }\n get(requestUrl, additionalHeaders) {\n return this.request('GET', requestUrl, null, additionalHeaders || {});\n }\n del(requestUrl, additionalHeaders) {\n return this.request('DELETE', requestUrl, null, additionalHeaders || {});\n }\n post(requestUrl, data, additionalHeaders) {\n return this.request('POST', requestUrl, data, additionalHeaders || {});\n }\n patch(requestUrl, data, additionalHeaders) {\n return this.request('PATCH', requestUrl, data, additionalHeaders || {});\n }\n put(requestUrl, data, additionalHeaders) {\n return this.request('PUT', requestUrl, data, additionalHeaders || {});\n }\n head(requestUrl, additionalHeaders) {\n return this.request('HEAD', requestUrl, null, additionalHeaders || {});\n }\n sendStream(verb, requestUrl, stream, additionalHeaders) {\n return this.request(verb, requestUrl, stream, additionalHeaders);\n }\n /**\n * Gets a typed object from an endpoint\n * Be aware that not found returns a null. Other errors (4xx, 5xx) reject the promise\n */\n async getJson(requestUrl, additionalHeaders = {}) {\n additionalHeaders[Headers.Accept] = this._getExistingOrDefaultHeader(additionalHeaders, Headers.Accept, MediaTypes.ApplicationJson);\n let res = await this.get(requestUrl, additionalHeaders);\n return this._processResponse(res, this.requestOptions);\n }\n async postJson(requestUrl, obj, additionalHeaders = {}) {\n let data = JSON.stringify(obj, null, 2);\n additionalHeaders[Headers.Accept] = this._getExistingOrDefaultHeader(additionalHeaders, Headers.Accept, MediaTypes.ApplicationJson);\n additionalHeaders[Headers.ContentType] = this._getExistingOrDefaultHeader(additionalHeaders, Headers.ContentType, MediaTypes.ApplicationJson);\n let res = await this.post(requestUrl, data, additionalHeaders);\n return this._processResponse(res, this.requestOptions);\n }\n async putJson(requestUrl, obj, additionalHeaders = {}) {\n let data = JSON.stringify(obj, null, 2);\n additionalHeaders[Headers.Accept] = this._getExistingOrDefaultHeader(additionalHeaders, Headers.Accept, MediaTypes.ApplicationJson);\n additionalHeaders[Headers.ContentType] = this._getExistingOrDefaultHeader(additionalHeaders, Headers.ContentType, MediaTypes.ApplicationJson);\n let res = await this.put(requestUrl, data, additionalHeaders);\n return this._processResponse(res, this.requestOptions);\n }\n async patchJson(requestUrl, obj, additionalHeaders = {}) {\n let data = JSON.stringify(obj, null, 2);\n additionalHeaders[Headers.Accept] = this._getExistingOrDefaultHeader(additionalHeaders, Headers.Accept, MediaTypes.ApplicationJson);\n additionalHeaders[Headers.ContentType] = this._getExistingOrDefaultHeader(additionalHeaders, Headers.ContentType, MediaTypes.ApplicationJson);\n let res = await this.patch(requestUrl, data, additionalHeaders);\n return this._processResponse(res, this.requestOptions);\n }\n /**\n * Makes a raw http request.\n * All other methods such as get, post, patch, and request ultimately call this.\n * Prefer get, del, post and patch\n */\n async request(verb, requestUrl, data, headers) {\n if (this._disposed) {\n throw new Error('Client has already been disposed.');\n }\n let parsedUrl = new URL(requestUrl);\n let info = this._prepareRequest(verb, parsedUrl, headers);\n // Only perform retries on reads since writes may not be idempotent.\n let maxTries = this._allowRetries && RetryableHttpVerbs.indexOf(verb) != -1\n ? this._maxRetries + 1\n : 1;\n let numTries = 0;\n let response;\n while (numTries < maxTries) {\n response = await this.requestRaw(info, data);\n // Check if it's an authentication challenge\n if (response &&\n response.message &&\n response.message.statusCode === HttpCodes.Unauthorized) {\n let authenticationHandler;\n for (let i = 0; i < this.handlers.length; i++) {\n if (this.handlers[i].canHandleAuthentication(response)) {\n authenticationHandler = this.handlers[i];\n break;\n }\n }\n if (authenticationHandler) {\n return authenticationHandler.handleAuthentication(this, info, data);\n }\n else {\n // We have received an unauthorized response but have no handlers to handle it.\n // Let the response return to the caller.\n return response;\n }\n }\n let redirectsRemaining = this._maxRedirects;\n while (HttpRedirectCodes.indexOf(response.message.statusCode) != -1 &&\n this._allowRedirects &&\n redirectsRemaining > 0) {\n const redirectUrl = response.message.headers['location'];\n if (!redirectUrl) {\n // if there's no location to redirect to, we won't\n break;\n }\n let parsedRedirectUrl = new URL(redirectUrl);\n if (parsedUrl.protocol == 'https:' &&\n parsedUrl.protocol != parsedRedirectUrl.protocol &&\n !this._allowRedirectDowngrade) {\n throw new Error('Redirect from HTTPS to HTTP protocol. This downgrade is not allowed for security reasons. If you want to allow this behavior, set the allowRedirectDowngrade option to true.');\n }\n // we need to finish reading the response before reassigning response\n // which will leak the open socket.\n await response.readBody();\n // strip authorization header if redirected to a different hostname\n if (parsedRedirectUrl.hostname !== parsedUrl.hostname) {\n for (let header in headers) {\n // header names are case insensitive\n if (header.toLowerCase() === 'authorization') {\n delete headers[header];\n }\n }\n }\n // let's make the request with the new redirectUrl\n info = this._prepareRequest(verb, parsedRedirectUrl, headers);\n response = await this.requestRaw(info, data);\n redirectsRemaining--;\n }\n if (HttpResponseRetryCodes.indexOf(response.message.statusCode) == -1) {\n // If not a retry code, return immediately instead of retrying\n return response;\n }\n numTries += 1;\n if (numTries < maxTries) {\n await response.readBody();\n await this._performExponentialBackoff(numTries);\n }\n }\n return response;\n }\n /**\n * Needs to be called if keepAlive is set to true in request options.\n */\n dispose() {\n if (this._agent) {\n this._agent.destroy();\n }\n this._disposed = true;\n }\n /**\n * Raw request.\n * @param info\n * @param data\n */\n requestRaw(info, data) {\n return new Promise((resolve, reject) => {\n let callbackForResult = function (err, res) {\n if (err) {\n reject(err);\n }\n resolve(res);\n };\n this.requestRawWithCallback(info, data, callbackForResult);\n });\n }\n /**\n * Raw request with callback.\n * @param info\n * @param data\n * @param onResult\n */\n requestRawWithCallback(info, data, onResult) {\n let socket;\n if (typeof data === 'string') {\n info.options.headers['Content-Length'] = Buffer.byteLength(data, 'utf8');\n }\n let callbackCalled = false;\n let handleResult = (err, res) => {\n if (!callbackCalled) {\n callbackCalled = true;\n onResult(err, res);\n }\n };\n let req = info.httpModule.request(info.options, (msg) => {\n let res = new HttpClientResponse(msg);\n handleResult(null, res);\n });\n req.on('socket', sock => {\n socket = sock;\n });\n // If we ever get disconnected, we want the socket to timeout eventually\n req.setTimeout(this._socketTimeout || 3 * 60000, () => {\n if (socket) {\n socket.end();\n }\n handleResult(new Error('Request timeout: ' + info.options.path), null);\n });\n req.on('error', function (err) {\n // err has statusCode property\n // res should have headers\n handleResult(err, null);\n });\n if (data && typeof data === 'string') {\n req.write(data, 'utf8');\n }\n if (data && typeof data !== 'string') {\n data.on('close', function () {\n req.end();\n });\n data.pipe(req);\n }\n else {\n req.end();\n }\n }\n /**\n * Gets an http agent. This function is useful when you need an http agent that handles\n * routing through a proxy server - depending upon the url and proxy environment variables.\n * @param serverUrl The server URL where the request will be sent. For example, https://api.github.com\n */\n getAgent(serverUrl) {\n let parsedUrl = new URL(serverUrl);\n return this._getAgent(parsedUrl);\n }\n _prepareRequest(method, requestUrl, headers) {\n const info = {};\n info.parsedUrl = requestUrl;\n const usingSsl = info.parsedUrl.protocol === 'https:';\n info.httpModule = usingSsl ? https : http;\n const defaultPort = usingSsl ? 443 : 80;\n info.options = {};\n info.options.host = info.parsedUrl.hostname;\n info.options.port = info.parsedUrl.port\n ? parseInt(info.parsedUrl.port)\n : defaultPort;\n info.options.path =\n (info.parsedUrl.pathname || '') + (info.parsedUrl.search || '');\n info.options.method = method;\n info.options.headers = this._mergeHeaders(headers);\n if (this.userAgent != null) {\n info.options.headers['user-agent'] = this.userAgent;\n }\n info.options.agent = this._getAgent(info.parsedUrl);\n // gives handlers an opportunity to participate\n if (this.handlers) {\n this.handlers.forEach(handler => {\n handler.prepareRequest(info.options);\n });\n }\n return info;\n }\n _mergeHeaders(headers) {\n const lowercaseKeys = obj => Object.keys(obj).reduce((c, k) => ((c[k.toLowerCase()] = obj[k]), c), {});\n if (this.requestOptions && this.requestOptions.headers) {\n return Object.assign({}, lowercaseKeys(this.requestOptions.headers), lowercaseKeys(headers));\n }\n return lowercaseKeys(headers || {});\n }\n _getExistingOrDefaultHeader(additionalHeaders, header, _default) {\n const lowercaseKeys = obj => Object.keys(obj).reduce((c, k) => ((c[k.toLowerCase()] = obj[k]), c), {});\n let clientHeader;\n if (this.requestOptions && this.requestOptions.headers) {\n clientHeader = lowercaseKeys(this.requestOptions.headers)[header];\n }\n return additionalHeaders[header] || clientHeader || _default;\n }\n _getAgent(parsedUrl) {\n let agent;\n let proxyUrl = pm.getProxyUrl(parsedUrl);\n let useProxy = proxyUrl && proxyUrl.hostname;\n if (this._keepAlive && useProxy) {\n agent = this._proxyAgent;\n }\n if (this._keepAlive && !useProxy) {\n agent = this._agent;\n }\n // if agent is already assigned use that agent.\n if (!!agent) {\n return agent;\n }\n const usingSsl = parsedUrl.protocol === 'https:';\n let maxSockets = 100;\n if (!!this.requestOptions) {\n maxSockets = this.requestOptions.maxSockets || http.globalAgent.maxSockets;\n }\n if (useProxy) {\n // If using proxy, need tunnel\n if (!tunnel) {\n tunnel = require('tunnel');\n }\n const agentOptions = {\n maxSockets: maxSockets,\n keepAlive: this._keepAlive,\n proxy: {\n proxyAuth: `${proxyUrl.username}:${proxyUrl.password}`,\n host: proxyUrl.hostname,\n port: proxyUrl.port\n }\n };\n let tunnelAgent;\n const overHttps = proxyUrl.protocol === 'https:';\n if (usingSsl) {\n tunnelAgent = overHttps ? tunnel.httpsOverHttps : tunnel.httpsOverHttp;\n }\n else {\n tunnelAgent = overHttps ? tunnel.httpOverHttps : tunnel.httpOverHttp;\n }\n agent = tunnelAgent(agentOptions);\n this._proxyAgent = agent;\n }\n // if reusing agent across request and tunneling agent isn't assigned create a new agent\n if (this._keepAlive && !agent) {\n const options = { keepAlive: this._keepAlive, maxSockets: maxSockets };\n agent = usingSsl ? new https.Agent(options) : new http.Agent(options);\n this._agent = agent;\n }\n // if not using private agent and tunnel agent isn't setup then use global agent\n if (!agent) {\n agent = usingSsl ? https.globalAgent : http.globalAgent;\n }\n if (usingSsl && this._ignoreSslError) {\n // we don't want to set NODE_TLS_REJECT_UNAUTHORIZED=0 since that will affect request for entire process\n // http.RequestOptions doesn't expose a way to modify RequestOptions.agent.options\n // we have to cast it to any and change it directly\n agent.options = Object.assign(agent.options || {}, {\n rejectUnauthorized: false\n });\n }\n return agent;\n }\n _performExponentialBackoff(retryNumber) {\n retryNumber = Math.min(ExponentialBackoffCeiling, retryNumber);\n const ms = ExponentialBackoffTimeSlice * Math.pow(2, retryNumber);\n return new Promise(resolve => setTimeout(() => resolve(), ms));\n }\n static dateTimeDeserializer(key, value) {\n if (typeof value === 'string') {\n let a = new Date(value);\n if (!isNaN(a.valueOf())) {\n return a;\n }\n }\n return value;\n }\n async _processResponse(res, options) {\n return new Promise(async (resolve, reject) => {\n const statusCode = res.message.statusCode;\n const response = {\n statusCode: statusCode,\n result: null,\n headers: {}\n };\n // not found leads to null obj returned\n if (statusCode == HttpCodes.NotFound) {\n resolve(response);\n }\n let obj;\n let contents;\n // get the result from the body\n try {\n contents = await res.readBody();\n if (contents && contents.length > 0) {\n if (options && options.deserializeDates) {\n obj = JSON.parse(contents, HttpClient.dateTimeDeserializer);\n }\n else {\n obj = JSON.parse(contents);\n }\n response.result = obj;\n }\n response.headers = res.message.headers;\n }\n catch (err) {\n // Invalid resource (contents not json); leaving result obj null\n }\n // note that 3xx redirects are handled by the http layer.\n if (statusCode > 299) {\n let msg;\n // if exception/error in body, attempt to get better error\n if (obj && obj.message) {\n msg = obj.message;\n }\n else if (contents && contents.length > 0) {\n // it may be the case that the exception is in the body message as string\n msg = contents;\n }\n else {\n msg = 'Failed request: (' + statusCode + ')';\n }\n let err = new HttpClientError(msg, statusCode);\n err.result = response.result;\n reject(err);\n }\n else {\n resolve(response);\n }\n });\n }\n}\nexports.HttpClient = HttpClient;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nfunction getProxyUrl(reqUrl) {\n let usingSsl = reqUrl.protocol === 'https:';\n let proxyUrl;\n if (checkBypass(reqUrl)) {\n return proxyUrl;\n }\n let proxyVar;\n if (usingSsl) {\n proxyVar = process.env['https_proxy'] || process.env['HTTPS_PROXY'];\n }\n else {\n proxyVar = process.env['http_proxy'] || process.env['HTTP_PROXY'];\n }\n if (proxyVar) {\n proxyUrl = new URL(proxyVar);\n }\n return proxyUrl;\n}\nexports.getProxyUrl = getProxyUrl;\nfunction checkBypass(reqUrl) {\n if (!reqUrl.hostname) {\n return false;\n }\n let noProxy = process.env['no_proxy'] || process.env['NO_PROXY'] || '';\n if (!noProxy) {\n return false;\n }\n // Determine the request port\n let reqPort;\n if (reqUrl.port) {\n reqPort = Number(reqUrl.port);\n }\n else if (reqUrl.protocol === 'http:') {\n reqPort = 80;\n }\n else if (reqUrl.protocol === 'https:') {\n reqPort = 443;\n }\n // Format the request hostname and hostname with port\n let upperReqHosts = [reqUrl.hostname.toUpperCase()];\n if (typeof reqPort === 'number') {\n upperReqHosts.push(`${upperReqHosts[0]}:${reqPort}`);\n }\n // Compare request host against noproxy\n for (let upperNoProxyItem of noProxy\n .split(',')\n .map(x => x.trim().toUpperCase())\n .filter(x => x)) {\n if (upperReqHosts.some(x => x === upperNoProxyItem)) {\n return true;\n }\n }\n return false;\n}\nexports.checkBypass = checkBypass;\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nasync function auth(token) {\n const tokenType = token.split(/\\./).length === 3 ? \"app\" : /^v\\d+\\./.test(token) ? \"installation\" : \"oauth\";\n return {\n type: \"token\",\n token: token,\n tokenType\n };\n}\n\n/**\n * Prefix token for usage in the Authorization header\n *\n * @param token OAuth token or JSON Web Token\n */\nfunction withAuthorizationPrefix(token) {\n if (token.split(/\\./).length === 3) {\n return `bearer ${token}`;\n }\n\n return `token ${token}`;\n}\n\nasync function hook(token, request, route, parameters) {\n const endpoint = request.endpoint.merge(route, parameters);\n endpoint.headers.authorization = withAuthorizationPrefix(token);\n return request(endpoint);\n}\n\nconst createTokenAuth = function createTokenAuth(token) {\n if (!token) {\n throw new Error(\"[@octokit/auth-token] No token passed to createTokenAuth\");\n }\n\n if (typeof token !== \"string\") {\n throw new Error(\"[@octokit/auth-token] Token passed to createTokenAuth is not a string\");\n }\n\n token = token.replace(/^(token|bearer) +/i, \"\");\n return Object.assign(auth.bind(null, token), {\n hook: hook.bind(null, token)\n });\n};\n\nexports.createTokenAuth = createTokenAuth;\n//# sourceMappingURL=index.js.map\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar universalUserAgent = require('universal-user-agent');\nvar beforeAfterHook = require('before-after-hook');\nvar request = require('@octokit/request');\nvar graphql = require('@octokit/graphql');\nvar authToken = require('@octokit/auth-token');\n\nconst VERSION = \"3.1.3\";\n\nclass Octokit {\n constructor(options = {}) {\n const hook = new beforeAfterHook.Collection();\n const requestDefaults = {\n baseUrl: request.request.endpoint.DEFAULTS.baseUrl,\n headers: {},\n request: Object.assign({}, options.request, {\n hook: hook.bind(null, \"request\")\n }),\n mediaType: {\n previews: [],\n format: \"\"\n }\n }; // prepend default user agent with `options.userAgent` if set\n\n requestDefaults.headers[\"user-agent\"] = [options.userAgent, `octokit-core.js/${VERSION} ${universalUserAgent.getUserAgent()}`].filter(Boolean).join(\" \");\n\n if (options.baseUrl) {\n requestDefaults.baseUrl = options.baseUrl;\n }\n\n if (options.previews) {\n requestDefaults.mediaType.previews = options.previews;\n }\n\n if (options.timeZone) {\n requestDefaults.headers[\"time-zone\"] = options.timeZone;\n }\n\n this.request = request.request.defaults(requestDefaults);\n this.graphql = graphql.withCustomRequest(this.request).defaults(requestDefaults);\n this.log = Object.assign({\n debug: () => {},\n info: () => {},\n warn: console.warn.bind(console),\n error: console.error.bind(console)\n }, options.log);\n this.hook = hook; // (1) If neither `options.authStrategy` nor `options.auth` are set, the `octokit` instance\n // is unauthenticated. The `this.auth()` method is a no-op and no request hook is registered.\n // (2) If only `options.auth` is set, use the default token authentication strategy.\n // (3) If `options.authStrategy` is set then use it and pass in `options.auth`. Always pass own request as many strategies accept a custom request instance.\n // TODO: type `options.auth` based on `options.authStrategy`.\n\n if (!options.authStrategy) {\n if (!options.auth) {\n // (1)\n this.auth = async () => ({\n type: \"unauthenticated\"\n });\n } else {\n // (2)\n const auth = authToken.createTokenAuth(options.auth); // @ts-ignore ¯\\_(ツ)_/¯\n\n hook.wrap(\"request\", auth.hook);\n this.auth = auth;\n }\n } else {\n const auth = options.authStrategy(Object.assign({\n request: this.request\n }, options.auth)); // @ts-ignore ¯\\_(ツ)_/¯\n\n hook.wrap(\"request\", auth.hook);\n this.auth = auth;\n } // apply plugins\n // https://stackoverflow.com/a/16345172\n\n\n const classConstructor = this.constructor;\n classConstructor.plugins.forEach(plugin => {\n Object.assign(this, plugin(this, options));\n });\n }\n\n static defaults(defaults) {\n const OctokitWithDefaults = class extends this {\n constructor(...args) {\n const options = args[0] || {};\n\n if (typeof defaults === \"function\") {\n super(defaults(options));\n return;\n }\n\n super(Object.assign({}, defaults, options, options.userAgent && defaults.userAgent ? {\n userAgent: `${options.userAgent} ${defaults.userAgent}`\n } : null));\n }\n\n };\n return OctokitWithDefaults;\n }\n /**\n * Attach a plugin (or many) to your Octokit instance.\n *\n * @example\n * const API = Octokit.plugin(plugin1, plugin2, plugin3, ...)\n */\n\n\n static plugin(...newPlugins) {\n var _a;\n\n const currentPlugins = this.plugins;\n const NewOctokit = (_a = class extends this {}, _a.plugins = currentPlugins.concat(newPlugins.filter(plugin => !currentPlugins.includes(plugin))), _a);\n return NewOctokit;\n }\n\n}\nOctokit.VERSION = VERSION;\nOctokit.plugins = [];\n\nexports.Octokit = Octokit;\n//# sourceMappingURL=index.js.map\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar isPlainObject = require('is-plain-object');\nvar universalUserAgent = require('universal-user-agent');\n\nfunction lowercaseKeys(object) {\n if (!object) {\n return {};\n }\n\n return Object.keys(object).reduce((newObj, key) => {\n newObj[key.toLowerCase()] = object[key];\n return newObj;\n }, {});\n}\n\nfunction mergeDeep(defaults, options) {\n const result = Object.assign({}, defaults);\n Object.keys(options).forEach(key => {\n if (isPlainObject.isPlainObject(options[key])) {\n if (!(key in defaults)) Object.assign(result, {\n [key]: options[key]\n });else result[key] = mergeDeep(defaults[key], options[key]);\n } else {\n Object.assign(result, {\n [key]: options[key]\n });\n }\n });\n return result;\n}\n\nfunction removeUndefinedProperties(obj) {\n for (const key in obj) {\n if (obj[key] === undefined) {\n delete obj[key];\n }\n }\n\n return obj;\n}\n\nfunction merge(defaults, route, options) {\n if (typeof route === \"string\") {\n let [method, url] = route.split(\" \");\n options = Object.assign(url ? {\n method,\n url\n } : {\n url: method\n }, options);\n } else {\n options = Object.assign({}, route);\n } // lowercase header names before merging with defaults to avoid duplicates\n\n\n options.headers = lowercaseKeys(options.headers); // remove properties with undefined values before merging\n\n removeUndefinedProperties(options);\n removeUndefinedProperties(options.headers);\n const mergedOptions = mergeDeep(defaults || {}, options); // mediaType.previews arrays are merged, instead of overwritten\n\n if (defaults && defaults.mediaType.previews.length) {\n mergedOptions.mediaType.previews = defaults.mediaType.previews.filter(preview => !mergedOptions.mediaType.previews.includes(preview)).concat(mergedOptions.mediaType.previews);\n }\n\n mergedOptions.mediaType.previews = mergedOptions.mediaType.previews.map(preview => preview.replace(/-preview/, \"\"));\n return mergedOptions;\n}\n\nfunction addQueryParameters(url, parameters) {\n const separator = /\\?/.test(url) ? \"&\" : \"?\";\n const names = Object.keys(parameters);\n\n if (names.length === 0) {\n return url;\n }\n\n return url + separator + names.map(name => {\n if (name === \"q\") {\n return \"q=\" + parameters.q.split(\"+\").map(encodeURIComponent).join(\"+\");\n }\n\n return `${name}=${encodeURIComponent(parameters[name])}`;\n }).join(\"&\");\n}\n\nconst urlVariableRegex = /\\{[^}]+\\}/g;\n\nfunction removeNonChars(variableName) {\n return variableName.replace(/^\\W+|\\W+$/g, \"\").split(/,/);\n}\n\nfunction extractUrlVariableNames(url) {\n const matches = url.match(urlVariableRegex);\n\n if (!matches) {\n return [];\n }\n\n return matches.map(removeNonChars).reduce((a, b) => a.concat(b), []);\n}\n\nfunction omit(object, keysToOmit) {\n return Object.keys(object).filter(option => !keysToOmit.includes(option)).reduce((obj, key) => {\n obj[key] = object[key];\n return obj;\n }, {});\n}\n\n// Based on https://github.com/bramstein/url-template, licensed under BSD\n// TODO: create separate package.\n//\n// Copyright (c) 2012-2014, Bram Stein\n// All rights reserved.\n// Redistribution and use in source and binary forms, with or without\n// modification, are permitted provided that the following conditions\n// are met:\n// 1. Redistributions of source code must retain the above copyright\n// notice, this list of conditions and the following disclaimer.\n// 2. Redistributions in binary form must reproduce the above copyright\n// notice, this list of conditions and the following disclaimer in the\n// documentation and/or other materials provided with the distribution.\n// 3. The name of the author may not be used to endorse or promote products\n// derived from this software without specific prior written permission.\n// THIS SOFTWARE IS PROVIDED BY THE AUTHOR \"AS IS\" AND ANY EXPRESS OR IMPLIED\n// WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF\n// MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO\n// EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,\n// INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,\n// BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,\n// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY\n// OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING\n// NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,\n// EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n\n/* istanbul ignore file */\nfunction encodeReserved(str) {\n return str.split(/(%[0-9A-Fa-f]{2})/g).map(function (part) {\n if (!/%[0-9A-Fa-f]/.test(part)) {\n part = encodeURI(part).replace(/%5B/g, \"[\").replace(/%5D/g, \"]\");\n }\n\n return part;\n }).join(\"\");\n}\n\nfunction encodeUnreserved(str) {\n return encodeURIComponent(str).replace(/[!'()*]/g, function (c) {\n return \"%\" + c.charCodeAt(0).toString(16).toUpperCase();\n });\n}\n\nfunction encodeValue(operator, value, key) {\n value = operator === \"+\" || operator === \"#\" ? encodeReserved(value) : encodeUnreserved(value);\n\n if (key) {\n return encodeUnreserved(key) + \"=\" + value;\n } else {\n return value;\n }\n}\n\nfunction isDefined(value) {\n return value !== undefined && value !== null;\n}\n\nfunction isKeyOperator(operator) {\n return operator === \";\" || operator === \"&\" || operator === \"?\";\n}\n\nfunction getValues(context, operator, key, modifier) {\n var value = context[key],\n result = [];\n\n if (isDefined(value) && value !== \"\") {\n if (typeof value === \"string\" || typeof value === \"number\" || typeof value === \"boolean\") {\n value = value.toString();\n\n if (modifier && modifier !== \"*\") {\n value = value.substring(0, parseInt(modifier, 10));\n }\n\n result.push(encodeValue(operator, value, isKeyOperator(operator) ? key : \"\"));\n } else {\n if (modifier === \"*\") {\n if (Array.isArray(value)) {\n value.filter(isDefined).forEach(function (value) {\n result.push(encodeValue(operator, value, isKeyOperator(operator) ? key : \"\"));\n });\n } else {\n Object.keys(value).forEach(function (k) {\n if (isDefined(value[k])) {\n result.push(encodeValue(operator, value[k], k));\n }\n });\n }\n } else {\n const tmp = [];\n\n if (Array.isArray(value)) {\n value.filter(isDefined).forEach(function (value) {\n tmp.push(encodeValue(operator, value));\n });\n } else {\n Object.keys(value).forEach(function (k) {\n if (isDefined(value[k])) {\n tmp.push(encodeUnreserved(k));\n tmp.push(encodeValue(operator, value[k].toString()));\n }\n });\n }\n\n if (isKeyOperator(operator)) {\n result.push(encodeUnreserved(key) + \"=\" + tmp.join(\",\"));\n } else if (tmp.length !== 0) {\n result.push(tmp.join(\",\"));\n }\n }\n }\n } else {\n if (operator === \";\") {\n if (isDefined(value)) {\n result.push(encodeUnreserved(key));\n }\n } else if (value === \"\" && (operator === \"&\" || operator === \"?\")) {\n result.push(encodeUnreserved(key) + \"=\");\n } else if (value === \"\") {\n result.push(\"\");\n }\n }\n\n return result;\n}\n\nfunction parseUrl(template) {\n return {\n expand: expand.bind(null, template)\n };\n}\n\nfunction expand(template, context) {\n var operators = [\"+\", \"#\", \".\", \"/\", \";\", \"?\", \"&\"];\n return template.replace(/\\{([^\\{\\}]+)\\}|([^\\{\\}]+)/g, function (_, expression, literal) {\n if (expression) {\n let operator = \"\";\n const values = [];\n\n if (operators.indexOf(expression.charAt(0)) !== -1) {\n operator = expression.charAt(0);\n expression = expression.substr(1);\n }\n\n expression.split(/,/g).forEach(function (variable) {\n var tmp = /([^:\\*]*)(?::(\\d+)|(\\*))?/.exec(variable);\n values.push(getValues(context, operator, tmp[1], tmp[2] || tmp[3]));\n });\n\n if (operator && operator !== \"+\") {\n var separator = \",\";\n\n if (operator === \"?\") {\n separator = \"&\";\n } else if (operator !== \"#\") {\n separator = operator;\n }\n\n return (values.length !== 0 ? operator : \"\") + values.join(separator);\n } else {\n return values.join(\",\");\n }\n } else {\n return encodeReserved(literal);\n }\n });\n}\n\nfunction parse(options) {\n // https://fetch.spec.whatwg.org/#methods\n let method = options.method.toUpperCase(); // replace :varname with {varname} to make it RFC 6570 compatible\n\n let url = (options.url || \"/\").replace(/:([a-z]\\w+)/g, \"{$1}\");\n let headers = Object.assign({}, options.headers);\n let body;\n let parameters = omit(options, [\"method\", \"baseUrl\", \"url\", \"headers\", \"request\", \"mediaType\"]); // extract variable names from URL to calculate remaining variables later\n\n const urlVariableNames = extractUrlVariableNames(url);\n url = parseUrl(url).expand(parameters);\n\n if (!/^http/.test(url)) {\n url = options.baseUrl + url;\n }\n\n const omittedParameters = Object.keys(options).filter(option => urlVariableNames.includes(option)).concat(\"baseUrl\");\n const remainingParameters = omit(parameters, omittedParameters);\n const isBinaryRequest = /application\\/octet-stream/i.test(headers.accept);\n\n if (!isBinaryRequest) {\n if (options.mediaType.format) {\n // e.g. application/vnd.github.v3+json => application/vnd.github.v3.raw\n headers.accept = headers.accept.split(/,/).map(preview => preview.replace(/application\\/vnd(\\.\\w+)(\\.v3)?(\\.\\w+)?(\\+json)?$/, `application/vnd$1$2.${options.mediaType.format}`)).join(\",\");\n }\n\n if (options.mediaType.previews.length) {\n const previewsFromAcceptHeader = headers.accept.match(/[\\w-]+(?=-preview)/g) || [];\n headers.accept = previewsFromAcceptHeader.concat(options.mediaType.previews).map(preview => {\n const format = options.mediaType.format ? `.${options.mediaType.format}` : \"+json\";\n return `application/vnd.github.${preview}-preview${format}`;\n }).join(\",\");\n }\n } // for GET/HEAD requests, set URL query parameters from remaining parameters\n // for PATCH/POST/PUT/DELETE requests, set request body from remaining parameters\n\n\n if ([\"GET\", \"HEAD\"].includes(method)) {\n url = addQueryParameters(url, remainingParameters);\n } else {\n if (\"data\" in remainingParameters) {\n body = remainingParameters.data;\n } else {\n if (Object.keys(remainingParameters).length) {\n body = remainingParameters;\n } else {\n headers[\"content-length\"] = 0;\n }\n }\n } // default content-type for JSON if body is set\n\n\n if (!headers[\"content-type\"] && typeof body !== \"undefined\") {\n headers[\"content-type\"] = \"application/json; charset=utf-8\";\n } // GitHub expects 'content-length: 0' header for PUT/PATCH requests without body.\n // fetch does not allow to set `content-length` header, but we can set body to an empty string\n\n\n if ([\"PATCH\", \"PUT\"].includes(method) && typeof body === \"undefined\") {\n body = \"\";\n } // Only return body/request keys if present\n\n\n return Object.assign({\n method,\n url,\n headers\n }, typeof body !== \"undefined\" ? {\n body\n } : null, options.request ? {\n request: options.request\n } : null);\n}\n\nfunction endpointWithDefaults(defaults, route, options) {\n return parse(merge(defaults, route, options));\n}\n\nfunction withDefaults(oldDefaults, newDefaults) {\n const DEFAULTS = merge(oldDefaults, newDefaults);\n const endpoint = endpointWithDefaults.bind(null, DEFAULTS);\n return Object.assign(endpoint, {\n DEFAULTS,\n defaults: withDefaults.bind(null, DEFAULTS),\n merge: merge.bind(null, DEFAULTS),\n parse\n });\n}\n\nconst VERSION = \"6.0.8\";\n\nconst userAgent = `octokit-endpoint.js/${VERSION} ${universalUserAgent.getUserAgent()}`; // DEFAULTS has all properties set that EndpointOptions has, except url.\n// So we use RequestParameters and add method as additional required property.\n\nconst DEFAULTS = {\n method: \"GET\",\n baseUrl: \"https://api.github.com\",\n headers: {\n accept: \"application/vnd.github.v3+json\",\n \"user-agent\": userAgent\n },\n mediaType: {\n format: \"\",\n previews: []\n }\n};\n\nconst endpoint = withDefaults(null, DEFAULTS);\n\nexports.endpoint = endpoint;\n//# sourceMappingURL=index.js.map\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\n/*!\n * is-plain-object \n *\n * Copyright (c) 2014-2017, Jon Schlinkert.\n * Released under the MIT License.\n */\n\nfunction isObject(o) {\n return Object.prototype.toString.call(o) === '[object Object]';\n}\n\nfunction isPlainObject(o) {\n var ctor,prot;\n\n if (isObject(o) === false) return false;\n\n // If has modified constructor\n ctor = o.constructor;\n if (ctor === undefined) return true;\n\n // If has modified prototype\n prot = ctor.prototype;\n if (isObject(prot) === false) return false;\n\n // If constructor does not have an Object-specific method\n if (prot.hasOwnProperty('isPrototypeOf') === false) {\n return false;\n }\n\n // Most likely a plain Object\n return true;\n}\n\nexports.isPlainObject = isPlainObject;\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar request = require('@octokit/request');\nvar universalUserAgent = require('universal-user-agent');\n\nconst VERSION = \"4.5.6\";\n\nclass GraphqlError extends Error {\n constructor(request, response) {\n const message = response.data.errors[0].message;\n super(message);\n Object.assign(this, response.data);\n Object.assign(this, {\n headers: response.headers\n });\n this.name = \"GraphqlError\";\n this.request = request; // Maintains proper stack trace (only available on V8)\n\n /* istanbul ignore next */\n\n if (Error.captureStackTrace) {\n Error.captureStackTrace(this, this.constructor);\n }\n }\n\n}\n\nconst NON_VARIABLE_OPTIONS = [\"method\", \"baseUrl\", \"url\", \"headers\", \"request\", \"query\", \"mediaType\"];\nconst GHES_V3_SUFFIX_REGEX = /\\/api\\/v3\\/?$/;\nfunction graphql(request, query, options) {\n if (typeof query === \"string\" && options && \"query\" in options) {\n return Promise.reject(new Error(`[@octokit/graphql] \"query\" cannot be used as variable name`));\n }\n\n const parsedOptions = typeof query === \"string\" ? Object.assign({\n query\n }, options) : query;\n const requestOptions = Object.keys(parsedOptions).reduce((result, key) => {\n if (NON_VARIABLE_OPTIONS.includes(key)) {\n result[key] = parsedOptions[key];\n return result;\n }\n\n if (!result.variables) {\n result.variables = {};\n }\n\n result.variables[key] = parsedOptions[key];\n return result;\n }, {}); // workaround for GitHub Enterprise baseUrl set with /api/v3 suffix\n // https://github.com/octokit/auth-app.js/issues/111#issuecomment-657610451\n\n const baseUrl = parsedOptions.baseUrl || request.endpoint.DEFAULTS.baseUrl;\n\n if (GHES_V3_SUFFIX_REGEX.test(baseUrl)) {\n requestOptions.url = baseUrl.replace(GHES_V3_SUFFIX_REGEX, \"/api/graphql\");\n }\n\n return request(requestOptions).then(response => {\n if (response.data.errors) {\n const headers = {};\n\n for (const key of Object.keys(response.headers)) {\n headers[key] = response.headers[key];\n }\n\n throw new GraphqlError(requestOptions, {\n headers,\n data: response.data\n });\n }\n\n return response.data.data;\n });\n}\n\nfunction withDefaults(request$1, newDefaults) {\n const newRequest = request$1.defaults(newDefaults);\n\n const newApi = (query, options) => {\n return graphql(newRequest, query, options);\n };\n\n return Object.assign(newApi, {\n defaults: withDefaults.bind(null, newRequest),\n endpoint: request.request.endpoint\n });\n}\n\nconst graphql$1 = withDefaults(request.request, {\n headers: {\n \"user-agent\": `octokit-graphql.js/${VERSION} ${universalUserAgent.getUserAgent()}`\n },\n method: \"POST\",\n url: \"/graphql\"\n});\nfunction withCustomRequest(customRequest) {\n return withDefaults(customRequest, {\n method: \"POST\",\n url: \"/graphql\"\n });\n}\n\nexports.graphql = graphql$1;\nexports.withCustomRequest = withCustomRequest;\n//# sourceMappingURL=index.js.map\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nconst VERSION = \"2.4.0\";\n\n/**\n * Some “list” response that can be paginated have a different response structure\n *\n * They have a `total_count` key in the response (search also has `incomplete_results`,\n * /installation/repositories also has `repository_selection`), as well as a key with\n * the list of the items which name varies from endpoint to endpoint.\n *\n * Octokit normalizes these responses so that paginated results are always returned following\n * the same structure. One challenge is that if the list response has only one page, no Link\n * header is provided, so this header alone is not sufficient to check wether a response is\n * paginated or not.\n *\n * We check if a \"total_count\" key is present in the response data, but also make sure that\n * a \"url\" property is not, as the \"Get the combined status for a specific ref\" endpoint would\n * otherwise match: https://developer.github.com/v3/repos/statuses/#get-the-combined-status-for-a-specific-ref\n */\nfunction normalizePaginatedListResponse(response) {\n const responseNeedsNormalization = \"total_count\" in response.data && !(\"url\" in response.data);\n if (!responseNeedsNormalization) return response; // keep the additional properties intact as there is currently no other way\n // to retrieve the same information.\n\n const incompleteResults = response.data.incomplete_results;\n const repositorySelection = response.data.repository_selection;\n const totalCount = response.data.total_count;\n delete response.data.incomplete_results;\n delete response.data.repository_selection;\n delete response.data.total_count;\n const namespaceKey = Object.keys(response.data)[0];\n const data = response.data[namespaceKey];\n response.data = data;\n\n if (typeof incompleteResults !== \"undefined\") {\n response.data.incomplete_results = incompleteResults;\n }\n\n if (typeof repositorySelection !== \"undefined\") {\n response.data.repository_selection = repositorySelection;\n }\n\n response.data.total_count = totalCount;\n return response;\n}\n\nfunction iterator(octokit, route, parameters) {\n const options = typeof route === \"function\" ? route.endpoint(parameters) : octokit.request.endpoint(route, parameters);\n const requestMethod = typeof route === \"function\" ? route : octokit.request;\n const method = options.method;\n const headers = options.headers;\n let url = options.url;\n return {\n [Symbol.asyncIterator]: () => ({\n next() {\n if (!url) {\n return Promise.resolve({\n done: true\n });\n }\n\n return requestMethod({\n method,\n url,\n headers\n }).then(normalizePaginatedListResponse).then(response => {\n // `response.headers.link` format:\n // '; rel=\"next\", ; rel=\"last\"'\n // sets `url` to undefined if \"next\" URL is not present or `link` header is not set\n url = ((response.headers.link || \"\").match(/<([^>]+)>;\\s*rel=\"next\"/) || [])[1];\n return {\n value: response\n };\n });\n }\n\n })\n };\n}\n\nfunction paginate(octokit, route, parameters, mapFn) {\n if (typeof parameters === \"function\") {\n mapFn = parameters;\n parameters = undefined;\n }\n\n return gather(octokit, [], iterator(octokit, route, parameters)[Symbol.asyncIterator](), mapFn);\n}\n\nfunction gather(octokit, results, iterator, mapFn) {\n return iterator.next().then(result => {\n if (result.done) {\n return results;\n }\n\n let earlyExit = false;\n\n function done() {\n earlyExit = true;\n }\n\n results = results.concat(mapFn ? mapFn(result.value, done) : result.value.data);\n\n if (earlyExit) {\n return results;\n }\n\n return gather(octokit, results, iterator, mapFn);\n });\n}\n\n/**\n * @param octokit Octokit instance\n * @param options Options passed to Octokit constructor\n */\n\nfunction paginateRest(octokit) {\n return {\n paginate: Object.assign(paginate.bind(null, octokit), {\n iterator: iterator.bind(null, octokit)\n })\n };\n}\npaginateRest.VERSION = VERSION;\n\nexports.paginateRest = paginateRest;\n//# sourceMappingURL=index.js.map\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nconst Endpoints = {\n actions: {\n addSelectedRepoToOrgSecret: [\"PUT /orgs/{org}/actions/secrets/{secret_name}/repositories/{repository_id}\"],\n cancelWorkflowRun: [\"POST /repos/{owner}/{repo}/actions/runs/{run_id}/cancel\"],\n createOrUpdateOrgSecret: [\"PUT /orgs/{org}/actions/secrets/{secret_name}\"],\n createOrUpdateRepoSecret: [\"PUT /repos/{owner}/{repo}/actions/secrets/{secret_name}\"],\n createRegistrationTokenForOrg: [\"POST /orgs/{org}/actions/runners/registration-token\"],\n createRegistrationTokenForRepo: [\"POST /repos/{owner}/{repo}/actions/runners/registration-token\"],\n createRemoveTokenForOrg: [\"POST /orgs/{org}/actions/runners/remove-token\"],\n createRemoveTokenForRepo: [\"POST /repos/{owner}/{repo}/actions/runners/remove-token\"],\n createWorkflowDispatch: [\"POST /repos/{owner}/{repo}/actions/workflows/{workflow_id}/dispatches\"],\n deleteArtifact: [\"DELETE /repos/{owner}/{repo}/actions/artifacts/{artifact_id}\"],\n deleteOrgSecret: [\"DELETE /orgs/{org}/actions/secrets/{secret_name}\"],\n deleteRepoSecret: [\"DELETE /repos/{owner}/{repo}/actions/secrets/{secret_name}\"],\n deleteSelfHostedRunnerFromOrg: [\"DELETE /orgs/{org}/actions/runners/{runner_id}\"],\n deleteSelfHostedRunnerFromRepo: [\"DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}\"],\n deleteWorkflowRun: [\"DELETE /repos/{owner}/{repo}/actions/runs/{run_id}\"],\n deleteWorkflowRunLogs: [\"DELETE /repos/{owner}/{repo}/actions/runs/{run_id}/logs\"],\n downloadArtifact: [\"GET /repos/{owner}/{repo}/actions/artifacts/{artifact_id}/{archive_format}\"],\n downloadJobLogsForWorkflowRun: [\"GET /repos/{owner}/{repo}/actions/jobs/{job_id}/logs\"],\n downloadWorkflowRunLogs: [\"GET /repos/{owner}/{repo}/actions/runs/{run_id}/logs\"],\n getArtifact: [\"GET /repos/{owner}/{repo}/actions/artifacts/{artifact_id}\"],\n getJobForWorkflowRun: [\"GET /repos/{owner}/{repo}/actions/jobs/{job_id}\"],\n getOrgPublicKey: [\"GET /orgs/{org}/actions/secrets/public-key\"],\n getOrgSecret: [\"GET /orgs/{org}/actions/secrets/{secret_name}\"],\n getRepoPublicKey: [\"GET /repos/{owner}/{repo}/actions/secrets/public-key\"],\n getRepoSecret: [\"GET /repos/{owner}/{repo}/actions/secrets/{secret_name}\"],\n getSelfHostedRunnerForOrg: [\"GET /orgs/{org}/actions/runners/{runner_id}\"],\n getSelfHostedRunnerForRepo: [\"GET /repos/{owner}/{repo}/actions/runners/{runner_id}\"],\n getWorkflow: [\"GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}\"],\n getWorkflowRun: [\"GET /repos/{owner}/{repo}/actions/runs/{run_id}\"],\n getWorkflowRunUsage: [\"GET /repos/{owner}/{repo}/actions/runs/{run_id}/timing\"],\n getWorkflowUsage: [\"GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/timing\"],\n listArtifactsForRepo: [\"GET /repos/{owner}/{repo}/actions/artifacts\"],\n listJobsForWorkflowRun: [\"GET /repos/{owner}/{repo}/actions/runs/{run_id}/jobs\"],\n listOrgSecrets: [\"GET /orgs/{org}/actions/secrets\"],\n listRepoSecrets: [\"GET /repos/{owner}/{repo}/actions/secrets\"],\n listRepoWorkflows: [\"GET /repos/{owner}/{repo}/actions/workflows\"],\n listRunnerApplicationsForOrg: [\"GET /orgs/{org}/actions/runners/downloads\"],\n listRunnerApplicationsForRepo: [\"GET /repos/{owner}/{repo}/actions/runners/downloads\"],\n listSelectedReposForOrgSecret: [\"GET /orgs/{org}/actions/secrets/{secret_name}/repositories\"],\n listSelfHostedRunnersForOrg: [\"GET /orgs/{org}/actions/runners\"],\n listSelfHostedRunnersForRepo: [\"GET /repos/{owner}/{repo}/actions/runners\"],\n listWorkflowRunArtifacts: [\"GET /repos/{owner}/{repo}/actions/runs/{run_id}/artifacts\"],\n listWorkflowRuns: [\"GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/runs\"],\n listWorkflowRunsForRepo: [\"GET /repos/{owner}/{repo}/actions/runs\"],\n reRunWorkflow: [\"POST /repos/{owner}/{repo}/actions/runs/{run_id}/rerun\"],\n removeSelectedRepoFromOrgSecret: [\"DELETE /orgs/{org}/actions/secrets/{secret_name}/repositories/{repository_id}\"],\n setSelectedReposForOrgSecret: [\"PUT /orgs/{org}/actions/secrets/{secret_name}/repositories\"]\n },\n activity: {\n checkRepoIsStarredByAuthenticatedUser: [\"GET /user/starred/{owner}/{repo}\"],\n deleteRepoSubscription: [\"DELETE /repos/{owner}/{repo}/subscription\"],\n deleteThreadSubscription: [\"DELETE /notifications/threads/{thread_id}/subscription\"],\n getFeeds: [\"GET /feeds\"],\n getRepoSubscription: [\"GET /repos/{owner}/{repo}/subscription\"],\n getThread: [\"GET /notifications/threads/{thread_id}\"],\n getThreadSubscriptionForAuthenticatedUser: [\"GET /notifications/threads/{thread_id}/subscription\"],\n listEventsForAuthenticatedUser: [\"GET /users/{username}/events\"],\n listNotificationsForAuthenticatedUser: [\"GET /notifications\"],\n listOrgEventsForAuthenticatedUser: [\"GET /users/{username}/events/orgs/{org}\"],\n listPublicEvents: [\"GET /events\"],\n listPublicEventsForRepoNetwork: [\"GET /networks/{owner}/{repo}/events\"],\n listPublicEventsForUser: [\"GET /users/{username}/events/public\"],\n listPublicOrgEvents: [\"GET /orgs/{org}/events\"],\n listReceivedEventsForUser: [\"GET /users/{username}/received_events\"],\n listReceivedPublicEventsForUser: [\"GET /users/{username}/received_events/public\"],\n listRepoEvents: [\"GET /repos/{owner}/{repo}/events\"],\n listRepoNotificationsForAuthenticatedUser: [\"GET /repos/{owner}/{repo}/notifications\"],\n listReposStarredByAuthenticatedUser: [\"GET /user/starred\"],\n listReposStarredByUser: [\"GET /users/{username}/starred\"],\n listReposWatchedByUser: [\"GET /users/{username}/subscriptions\"],\n listStargazersForRepo: [\"GET /repos/{owner}/{repo}/stargazers\"],\n listWatchedReposForAuthenticatedUser: [\"GET /user/subscriptions\"],\n listWatchersForRepo: [\"GET /repos/{owner}/{repo}/subscribers\"],\n markNotificationsAsRead: [\"PUT /notifications\"],\n markRepoNotificationsAsRead: [\"PUT /repos/{owner}/{repo}/notifications\"],\n markThreadAsRead: [\"PATCH /notifications/threads/{thread_id}\"],\n setRepoSubscription: [\"PUT /repos/{owner}/{repo}/subscription\"],\n setThreadSubscription: [\"PUT /notifications/threads/{thread_id}/subscription\"],\n starRepoForAuthenticatedUser: [\"PUT /user/starred/{owner}/{repo}\"],\n unstarRepoForAuthenticatedUser: [\"DELETE /user/starred/{owner}/{repo}\"]\n },\n apps: {\n addRepoToInstallation: [\"PUT /user/installations/{installation_id}/repositories/{repository_id}\"],\n checkToken: [\"POST /applications/{client_id}/token\"],\n createContentAttachment: [\"POST /content_references/{content_reference_id}/attachments\", {\n mediaType: {\n previews: [\"corsair\"]\n }\n }],\n createFromManifest: [\"POST /app-manifests/{code}/conversions\"],\n createInstallationAccessToken: [\"POST /app/installations/{installation_id}/access_tokens\"],\n deleteAuthorization: [\"DELETE /applications/{client_id}/grant\"],\n deleteInstallation: [\"DELETE /app/installations/{installation_id}\"],\n deleteToken: [\"DELETE /applications/{client_id}/token\"],\n getAuthenticated: [\"GET /app\"],\n getBySlug: [\"GET /apps/{app_slug}\"],\n getInstallation: [\"GET /app/installations/{installation_id}\"],\n getOrgInstallation: [\"GET /orgs/{org}/installation\"],\n getRepoInstallation: [\"GET /repos/{owner}/{repo}/installation\"],\n getSubscriptionPlanForAccount: [\"GET /marketplace_listing/accounts/{account_id}\"],\n getSubscriptionPlanForAccountStubbed: [\"GET /marketplace_listing/stubbed/accounts/{account_id}\"],\n getUserInstallation: [\"GET /users/{username}/installation\"],\n listAccountsForPlan: [\"GET /marketplace_listing/plans/{plan_id}/accounts\"],\n listAccountsForPlanStubbed: [\"GET /marketplace_listing/stubbed/plans/{plan_id}/accounts\"],\n listInstallationReposForAuthenticatedUser: [\"GET /user/installations/{installation_id}/repositories\"],\n listInstallations: [\"GET /app/installations\"],\n listInstallationsForAuthenticatedUser: [\"GET /user/installations\"],\n listPlans: [\"GET /marketplace_listing/plans\"],\n listPlansStubbed: [\"GET /marketplace_listing/stubbed/plans\"],\n listReposAccessibleToInstallation: [\"GET /installation/repositories\"],\n listSubscriptionsForAuthenticatedUser: [\"GET /user/marketplace_purchases\"],\n listSubscriptionsForAuthenticatedUserStubbed: [\"GET /user/marketplace_purchases/stubbed\"],\n removeRepoFromInstallation: [\"DELETE /user/installations/{installation_id}/repositories/{repository_id}\"],\n resetToken: [\"PATCH /applications/{client_id}/token\"],\n revokeInstallationAccessToken: [\"DELETE /installation/token\"],\n suspendInstallation: [\"PUT /app/installations/{installation_id}/suspended\"],\n unsuspendInstallation: [\"DELETE /app/installations/{installation_id}/suspended\"]\n },\n billing: {\n getGithubActionsBillingOrg: [\"GET /orgs/{org}/settings/billing/actions\"],\n getGithubActionsBillingUser: [\"GET /users/{username}/settings/billing/actions\"],\n getGithubPackagesBillingOrg: [\"GET /orgs/{org}/settings/billing/packages\"],\n getGithubPackagesBillingUser: [\"GET /users/{username}/settings/billing/packages\"],\n getSharedStorageBillingOrg: [\"GET /orgs/{org}/settings/billing/shared-storage\"],\n getSharedStorageBillingUser: [\"GET /users/{username}/settings/billing/shared-storage\"]\n },\n checks: {\n create: [\"POST /repos/{owner}/{repo}/check-runs\", {\n mediaType: {\n previews: [\"antiope\"]\n }\n }],\n createSuite: [\"POST /repos/{owner}/{repo}/check-suites\", {\n mediaType: {\n previews: [\"antiope\"]\n }\n }],\n get: [\"GET /repos/{owner}/{repo}/check-runs/{check_run_id}\", {\n mediaType: {\n previews: [\"antiope\"]\n }\n }],\n getSuite: [\"GET /repos/{owner}/{repo}/check-suites/{check_suite_id}\", {\n mediaType: {\n previews: [\"antiope\"]\n }\n }],\n listAnnotations: [\"GET /repos/{owner}/{repo}/check-runs/{check_run_id}/annotations\", {\n mediaType: {\n previews: [\"antiope\"]\n }\n }],\n listForRef: [\"GET /repos/{owner}/{repo}/commits/{ref}/check-runs\", {\n mediaType: {\n previews: [\"antiope\"]\n }\n }],\n listForSuite: [\"GET /repos/{owner}/{repo}/check-suites/{check_suite_id}/check-runs\", {\n mediaType: {\n previews: [\"antiope\"]\n }\n }],\n listSuitesForRef: [\"GET /repos/{owner}/{repo}/commits/{ref}/check-suites\", {\n mediaType: {\n previews: [\"antiope\"]\n }\n }],\n rerequestSuite: [\"POST /repos/{owner}/{repo}/check-suites/{check_suite_id}/rerequest\", {\n mediaType: {\n previews: [\"antiope\"]\n }\n }],\n setSuitesPreferences: [\"PATCH /repos/{owner}/{repo}/check-suites/preferences\", {\n mediaType: {\n previews: [\"antiope\"]\n }\n }],\n update: [\"PATCH /repos/{owner}/{repo}/check-runs/{check_run_id}\", {\n mediaType: {\n previews: [\"antiope\"]\n }\n }]\n },\n codeScanning: {\n getAlert: [\"GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}\", {}, {\n renamedParameters: {\n alert_id: \"alert_number\"\n }\n }],\n listAlertsForRepo: [\"GET /repos/{owner}/{repo}/code-scanning/alerts\"],\n listRecentAnalyses: [\"GET /repos/{owner}/{repo}/code-scanning/analyses\"],\n updateAlert: [\"PATCH /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}\"],\n uploadSarif: [\"POST /repos/{owner}/{repo}/code-scanning/sarifs\"]\n },\n codesOfConduct: {\n getAllCodesOfConduct: [\"GET /codes_of_conduct\", {\n mediaType: {\n previews: [\"scarlet-witch\"]\n }\n }],\n getConductCode: [\"GET /codes_of_conduct/{key}\", {\n mediaType: {\n previews: [\"scarlet-witch\"]\n }\n }],\n getForRepo: [\"GET /repos/{owner}/{repo}/community/code_of_conduct\", {\n mediaType: {\n previews: [\"scarlet-witch\"]\n }\n }]\n },\n emojis: {\n get: [\"GET /emojis\"]\n },\n gists: {\n checkIsStarred: [\"GET /gists/{gist_id}/star\"],\n create: [\"POST /gists\"],\n createComment: [\"POST /gists/{gist_id}/comments\"],\n delete: [\"DELETE /gists/{gist_id}\"],\n deleteComment: [\"DELETE /gists/{gist_id}/comments/{comment_id}\"],\n fork: [\"POST /gists/{gist_id}/forks\"],\n get: [\"GET /gists/{gist_id}\"],\n getComment: [\"GET /gists/{gist_id}/comments/{comment_id}\"],\n getRevision: [\"GET /gists/{gist_id}/{sha}\"],\n list: [\"GET /gists\"],\n listComments: [\"GET /gists/{gist_id}/comments\"],\n listCommits: [\"GET /gists/{gist_id}/commits\"],\n listForUser: [\"GET /users/{username}/gists\"],\n listForks: [\"GET /gists/{gist_id}/forks\"],\n listPublic: [\"GET /gists/public\"],\n listStarred: [\"GET /gists/starred\"],\n star: [\"PUT /gists/{gist_id}/star\"],\n unstar: [\"DELETE /gists/{gist_id}/star\"],\n update: [\"PATCH /gists/{gist_id}\"],\n updateComment: [\"PATCH /gists/{gist_id}/comments/{comment_id}\"]\n },\n git: {\n createBlob: [\"POST /repos/{owner}/{repo}/git/blobs\"],\n createCommit: [\"POST /repos/{owner}/{repo}/git/commits\"],\n createRef: [\"POST /repos/{owner}/{repo}/git/refs\"],\n createTag: [\"POST /repos/{owner}/{repo}/git/tags\"],\n createTree: [\"POST /repos/{owner}/{repo}/git/trees\"],\n deleteRef: [\"DELETE /repos/{owner}/{repo}/git/refs/{ref}\"],\n getBlob: [\"GET /repos/{owner}/{repo}/git/blobs/{file_sha}\"],\n getCommit: [\"GET /repos/{owner}/{repo}/git/commits/{commit_sha}\"],\n getRef: [\"GET /repos/{owner}/{repo}/git/ref/{ref}\"],\n getTag: [\"GET /repos/{owner}/{repo}/git/tags/{tag_sha}\"],\n getTree: [\"GET /repos/{owner}/{repo}/git/trees/{tree_sha}\"],\n listMatchingRefs: [\"GET /repos/{owner}/{repo}/git/matching-refs/{ref}\"],\n updateRef: [\"PATCH /repos/{owner}/{repo}/git/refs/{ref}\"]\n },\n gitignore: {\n getAllTemplates: [\"GET /gitignore/templates\"],\n getTemplate: [\"GET /gitignore/templates/{name}\"]\n },\n interactions: {\n getRestrictionsForOrg: [\"GET /orgs/{org}/interaction-limits\", {\n mediaType: {\n previews: [\"sombra\"]\n }\n }],\n getRestrictionsForRepo: [\"GET /repos/{owner}/{repo}/interaction-limits\", {\n mediaType: {\n previews: [\"sombra\"]\n }\n }],\n removeRestrictionsForOrg: [\"DELETE /orgs/{org}/interaction-limits\", {\n mediaType: {\n previews: [\"sombra\"]\n }\n }],\n removeRestrictionsForRepo: [\"DELETE /repos/{owner}/{repo}/interaction-limits\", {\n mediaType: {\n previews: [\"sombra\"]\n }\n }],\n setRestrictionsForOrg: [\"PUT /orgs/{org}/interaction-limits\", {\n mediaType: {\n previews: [\"sombra\"]\n }\n }],\n setRestrictionsForRepo: [\"PUT /repos/{owner}/{repo}/interaction-limits\", {\n mediaType: {\n previews: [\"sombra\"]\n }\n }]\n },\n issues: {\n addAssignees: [\"POST /repos/{owner}/{repo}/issues/{issue_number}/assignees\"],\n addLabels: [\"POST /repos/{owner}/{repo}/issues/{issue_number}/labels\"],\n checkUserCanBeAssigned: [\"GET /repos/{owner}/{repo}/assignees/{assignee}\"],\n create: [\"POST /repos/{owner}/{repo}/issues\"],\n createComment: [\"POST /repos/{owner}/{repo}/issues/{issue_number}/comments\"],\n createLabel: [\"POST /repos/{owner}/{repo}/labels\"],\n createMilestone: [\"POST /repos/{owner}/{repo}/milestones\"],\n deleteComment: [\"DELETE /repos/{owner}/{repo}/issues/comments/{comment_id}\"],\n deleteLabel: [\"DELETE /repos/{owner}/{repo}/labels/{name}\"],\n deleteMilestone: [\"DELETE /repos/{owner}/{repo}/milestones/{milestone_number}\"],\n get: [\"GET /repos/{owner}/{repo}/issues/{issue_number}\"],\n getComment: [\"GET /repos/{owner}/{repo}/issues/comments/{comment_id}\"],\n getEvent: [\"GET /repos/{owner}/{repo}/issues/events/{event_id}\"],\n getLabel: [\"GET /repos/{owner}/{repo}/labels/{name}\"],\n getMilestone: [\"GET /repos/{owner}/{repo}/milestones/{milestone_number}\"],\n list: [\"GET /issues\"],\n listAssignees: [\"GET /repos/{owner}/{repo}/assignees\"],\n listComments: [\"GET /repos/{owner}/{repo}/issues/{issue_number}/comments\"],\n listCommentsForRepo: [\"GET /repos/{owner}/{repo}/issues/comments\"],\n listEvents: [\"GET /repos/{owner}/{repo}/issues/{issue_number}/events\"],\n listEventsForRepo: [\"GET /repos/{owner}/{repo}/issues/events\"],\n listEventsForTimeline: [\"GET /repos/{owner}/{repo}/issues/{issue_number}/timeline\", {\n mediaType: {\n previews: [\"mockingbird\"]\n }\n }],\n listForAuthenticatedUser: [\"GET /user/issues\"],\n listForOrg: [\"GET /orgs/{org}/issues\"],\n listForRepo: [\"GET /repos/{owner}/{repo}/issues\"],\n listLabelsForMilestone: [\"GET /repos/{owner}/{repo}/milestones/{milestone_number}/labels\"],\n listLabelsForRepo: [\"GET /repos/{owner}/{repo}/labels\"],\n listLabelsOnIssue: [\"GET /repos/{owner}/{repo}/issues/{issue_number}/labels\"],\n listMilestones: [\"GET /repos/{owner}/{repo}/milestones\"],\n lock: [\"PUT /repos/{owner}/{repo}/issues/{issue_number}/lock\"],\n removeAllLabels: [\"DELETE /repos/{owner}/{repo}/issues/{issue_number}/labels\"],\n removeAssignees: [\"DELETE /repos/{owner}/{repo}/issues/{issue_number}/assignees\"],\n removeLabel: [\"DELETE /repos/{owner}/{repo}/issues/{issue_number}/labels/{name}\"],\n setLabels: [\"PUT /repos/{owner}/{repo}/issues/{issue_number}/labels\"],\n unlock: [\"DELETE /repos/{owner}/{repo}/issues/{issue_number}/lock\"],\n update: [\"PATCH /repos/{owner}/{repo}/issues/{issue_number}\"],\n updateComment: [\"PATCH /repos/{owner}/{repo}/issues/comments/{comment_id}\"],\n updateLabel: [\"PATCH /repos/{owner}/{repo}/labels/{name}\"],\n updateMilestone: [\"PATCH /repos/{owner}/{repo}/milestones/{milestone_number}\"]\n },\n licenses: {\n get: [\"GET /licenses/{license}\"],\n getAllCommonlyUsed: [\"GET /licenses\"],\n getForRepo: [\"GET /repos/{owner}/{repo}/license\"]\n },\n markdown: {\n render: [\"POST /markdown\"],\n renderRaw: [\"POST /markdown/raw\", {\n headers: {\n \"content-type\": \"text/plain; charset=utf-8\"\n }\n }]\n },\n meta: {\n get: [\"GET /meta\"]\n },\n migrations: {\n cancelImport: [\"DELETE /repos/{owner}/{repo}/import\"],\n deleteArchiveForAuthenticatedUser: [\"DELETE /user/migrations/{migration_id}/archive\", {\n mediaType: {\n previews: [\"wyandotte\"]\n }\n }],\n deleteArchiveForOrg: [\"DELETE /orgs/{org}/migrations/{migration_id}/archive\", {\n mediaType: {\n previews: [\"wyandotte\"]\n }\n }],\n downloadArchiveForOrg: [\"GET /orgs/{org}/migrations/{migration_id}/archive\", {\n mediaType: {\n previews: [\"wyandotte\"]\n }\n }],\n getArchiveForAuthenticatedUser: [\"GET /user/migrations/{migration_id}/archive\", {\n mediaType: {\n previews: [\"wyandotte\"]\n }\n }],\n getCommitAuthors: [\"GET /repos/{owner}/{repo}/import/authors\"],\n getImportStatus: [\"GET /repos/{owner}/{repo}/import\"],\n getLargeFiles: [\"GET /repos/{owner}/{repo}/import/large_files\"],\n getStatusForAuthenticatedUser: [\"GET /user/migrations/{migration_id}\", {\n mediaType: {\n previews: [\"wyandotte\"]\n }\n }],\n getStatusForOrg: [\"GET /orgs/{org}/migrations/{migration_id}\", {\n mediaType: {\n previews: [\"wyandotte\"]\n }\n }],\n listForAuthenticatedUser: [\"GET /user/migrations\", {\n mediaType: {\n previews: [\"wyandotte\"]\n }\n }],\n listForOrg: [\"GET /orgs/{org}/migrations\", {\n mediaType: {\n previews: [\"wyandotte\"]\n }\n }],\n listReposForOrg: [\"GET /orgs/{org}/migrations/{migration_id}/repositories\", {\n mediaType: {\n previews: [\"wyandotte\"]\n }\n }],\n listReposForUser: [\"GET /user/migrations/{migration_id}/repositories\", {\n mediaType: {\n previews: [\"wyandotte\"]\n }\n }],\n mapCommitAuthor: [\"PATCH /repos/{owner}/{repo}/import/authors/{author_id}\"],\n setLfsPreference: [\"PATCH /repos/{owner}/{repo}/import/lfs\"],\n startForAuthenticatedUser: [\"POST /user/migrations\"],\n startForOrg: [\"POST /orgs/{org}/migrations\"],\n startImport: [\"PUT /repos/{owner}/{repo}/import\"],\n unlockRepoForAuthenticatedUser: [\"DELETE /user/migrations/{migration_id}/repos/{repo_name}/lock\", {\n mediaType: {\n previews: [\"wyandotte\"]\n }\n }],\n unlockRepoForOrg: [\"DELETE /orgs/{org}/migrations/{migration_id}/repos/{repo_name}/lock\", {\n mediaType: {\n previews: [\"wyandotte\"]\n }\n }],\n updateImport: [\"PATCH /repos/{owner}/{repo}/import\"]\n },\n orgs: {\n blockUser: [\"PUT /orgs/{org}/blocks/{username}\"],\n checkBlockedUser: [\"GET /orgs/{org}/blocks/{username}\"],\n checkMembershipForUser: [\"GET /orgs/{org}/members/{username}\"],\n checkPublicMembershipForUser: [\"GET /orgs/{org}/public_members/{username}\"],\n convertMemberToOutsideCollaborator: [\"PUT /orgs/{org}/outside_collaborators/{username}\"],\n createInvitation: [\"POST /orgs/{org}/invitations\"],\n createWebhook: [\"POST /orgs/{org}/hooks\"],\n deleteWebhook: [\"DELETE /orgs/{org}/hooks/{hook_id}\"],\n get: [\"GET /orgs/{org}\"],\n getMembershipForAuthenticatedUser: [\"GET /user/memberships/orgs/{org}\"],\n getMembershipForUser: [\"GET /orgs/{org}/memberships/{username}\"],\n getWebhook: [\"GET /orgs/{org}/hooks/{hook_id}\"],\n list: [\"GET /organizations\"],\n listAppInstallations: [\"GET /orgs/{org}/installations\"],\n listBlockedUsers: [\"GET /orgs/{org}/blocks\"],\n listForAuthenticatedUser: [\"GET /user/orgs\"],\n listForUser: [\"GET /users/{username}/orgs\"],\n listInvitationTeams: [\"GET /orgs/{org}/invitations/{invitation_id}/teams\"],\n listMembers: [\"GET /orgs/{org}/members\"],\n listMembershipsForAuthenticatedUser: [\"GET /user/memberships/orgs\"],\n listOutsideCollaborators: [\"GET /orgs/{org}/outside_collaborators\"],\n listPendingInvitations: [\"GET /orgs/{org}/invitations\"],\n listPublicMembers: [\"GET /orgs/{org}/public_members\"],\n listWebhooks: [\"GET /orgs/{org}/hooks\"],\n pingWebhook: [\"POST /orgs/{org}/hooks/{hook_id}/pings\"],\n removeMember: [\"DELETE /orgs/{org}/members/{username}\"],\n removeMembershipForUser: [\"DELETE /orgs/{org}/memberships/{username}\"],\n removeOutsideCollaborator: [\"DELETE /orgs/{org}/outside_collaborators/{username}\"],\n removePublicMembershipForAuthenticatedUser: [\"DELETE /orgs/{org}/public_members/{username}\"],\n setMembershipForUser: [\"PUT /orgs/{org}/memberships/{username}\"],\n setPublicMembershipForAuthenticatedUser: [\"PUT /orgs/{org}/public_members/{username}\"],\n unblockUser: [\"DELETE /orgs/{org}/blocks/{username}\"],\n update: [\"PATCH /orgs/{org}\"],\n updateMembershipForAuthenticatedUser: [\"PATCH /user/memberships/orgs/{org}\"],\n updateWebhook: [\"PATCH /orgs/{org}/hooks/{hook_id}\"]\n },\n projects: {\n addCollaborator: [\"PUT /projects/{project_id}/collaborators/{username}\", {\n mediaType: {\n previews: [\"inertia\"]\n }\n }],\n createCard: [\"POST /projects/columns/{column_id}/cards\", {\n mediaType: {\n previews: [\"inertia\"]\n }\n }],\n createColumn: [\"POST /projects/{project_id}/columns\", {\n mediaType: {\n previews: [\"inertia\"]\n }\n }],\n createForAuthenticatedUser: [\"POST /user/projects\", {\n mediaType: {\n previews: [\"inertia\"]\n }\n }],\n createForOrg: [\"POST /orgs/{org}/projects\", {\n mediaType: {\n previews: [\"inertia\"]\n }\n }],\n createForRepo: [\"POST /repos/{owner}/{repo}/projects\", {\n mediaType: {\n previews: [\"inertia\"]\n }\n }],\n delete: [\"DELETE /projects/{project_id}\", {\n mediaType: {\n previews: [\"inertia\"]\n }\n }],\n deleteCard: [\"DELETE /projects/columns/cards/{card_id}\", {\n mediaType: {\n previews: [\"inertia\"]\n }\n }],\n deleteColumn: [\"DELETE /projects/columns/{column_id}\", {\n mediaType: {\n previews: [\"inertia\"]\n }\n }],\n get: [\"GET /projects/{project_id}\", {\n mediaType: {\n previews: [\"inertia\"]\n }\n }],\n getCard: [\"GET /projects/columns/cards/{card_id}\", {\n mediaType: {\n previews: [\"inertia\"]\n }\n }],\n getColumn: [\"GET /projects/columns/{column_id}\", {\n mediaType: {\n previews: [\"inertia\"]\n }\n }],\n getPermissionForUser: [\"GET /projects/{project_id}/collaborators/{username}/permission\", {\n mediaType: {\n previews: [\"inertia\"]\n }\n }],\n listCards: [\"GET /projects/columns/{column_id}/cards\", {\n mediaType: {\n previews: [\"inertia\"]\n }\n }],\n listCollaborators: [\"GET /projects/{project_id}/collaborators\", {\n mediaType: {\n previews: [\"inertia\"]\n }\n }],\n listColumns: [\"GET /projects/{project_id}/columns\", {\n mediaType: {\n previews: [\"inertia\"]\n }\n }],\n listForOrg: [\"GET /orgs/{org}/projects\", {\n mediaType: {\n previews: [\"inertia\"]\n }\n }],\n listForRepo: [\"GET /repos/{owner}/{repo}/projects\", {\n mediaType: {\n previews: [\"inertia\"]\n }\n }],\n listForUser: [\"GET /users/{username}/projects\", {\n mediaType: {\n previews: [\"inertia\"]\n }\n }],\n moveCard: [\"POST /projects/columns/cards/{card_id}/moves\", {\n mediaType: {\n previews: [\"inertia\"]\n }\n }],\n moveColumn: [\"POST /projects/columns/{column_id}/moves\", {\n mediaType: {\n previews: [\"inertia\"]\n }\n }],\n removeCollaborator: [\"DELETE /projects/{project_id}/collaborators/{username}\", {\n mediaType: {\n previews: [\"inertia\"]\n }\n }],\n update: [\"PATCH /projects/{project_id}\", {\n mediaType: {\n previews: [\"inertia\"]\n }\n }],\n updateCard: [\"PATCH /projects/columns/cards/{card_id}\", {\n mediaType: {\n previews: [\"inertia\"]\n }\n }],\n updateColumn: [\"PATCH /projects/columns/{column_id}\", {\n mediaType: {\n previews: [\"inertia\"]\n }\n }]\n },\n pulls: {\n checkIfMerged: [\"GET /repos/{owner}/{repo}/pulls/{pull_number}/merge\"],\n create: [\"POST /repos/{owner}/{repo}/pulls\"],\n createReplyForReviewComment: [\"POST /repos/{owner}/{repo}/pulls/{pull_number}/comments/{comment_id}/replies\"],\n createReview: [\"POST /repos/{owner}/{repo}/pulls/{pull_number}/reviews\"],\n createReviewComment: [\"POST /repos/{owner}/{repo}/pulls/{pull_number}/comments\"],\n deletePendingReview: [\"DELETE /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}\"],\n deleteReviewComment: [\"DELETE /repos/{owner}/{repo}/pulls/comments/{comment_id}\"],\n dismissReview: [\"PUT /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/dismissals\"],\n get: [\"GET /repos/{owner}/{repo}/pulls/{pull_number}\"],\n getReview: [\"GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}\"],\n getReviewComment: [\"GET /repos/{owner}/{repo}/pulls/comments/{comment_id}\"],\n list: [\"GET /repos/{owner}/{repo}/pulls\"],\n listCommentsForReview: [\"GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/comments\"],\n listCommits: [\"GET /repos/{owner}/{repo}/pulls/{pull_number}/commits\"],\n listFiles: [\"GET /repos/{owner}/{repo}/pulls/{pull_number}/files\"],\n listRequestedReviewers: [\"GET /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers\"],\n listReviewComments: [\"GET /repos/{owner}/{repo}/pulls/{pull_number}/comments\"],\n listReviewCommentsForRepo: [\"GET /repos/{owner}/{repo}/pulls/comments\"],\n listReviews: [\"GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews\"],\n merge: [\"PUT /repos/{owner}/{repo}/pulls/{pull_number}/merge\"],\n removeRequestedReviewers: [\"DELETE /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers\"],\n requestReviewers: [\"POST /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers\"],\n submitReview: [\"POST /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/events\"],\n update: [\"PATCH /repos/{owner}/{repo}/pulls/{pull_number}\"],\n updateBranch: [\"PUT /repos/{owner}/{repo}/pulls/{pull_number}/update-branch\", {\n mediaType: {\n previews: [\"lydian\"]\n }\n }],\n updateReview: [\"PUT /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}\"],\n updateReviewComment: [\"PATCH /repos/{owner}/{repo}/pulls/comments/{comment_id}\"]\n },\n rateLimit: {\n get: [\"GET /rate_limit\"]\n },\n reactions: {\n createForCommitComment: [\"POST /repos/{owner}/{repo}/comments/{comment_id}/reactions\", {\n mediaType: {\n previews: [\"squirrel-girl\"]\n }\n }],\n createForIssue: [\"POST /repos/{owner}/{repo}/issues/{issue_number}/reactions\", {\n mediaType: {\n previews: [\"squirrel-girl\"]\n }\n }],\n createForIssueComment: [\"POST /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions\", {\n mediaType: {\n previews: [\"squirrel-girl\"]\n }\n }],\n createForPullRequestReviewComment: [\"POST /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions\", {\n mediaType: {\n previews: [\"squirrel-girl\"]\n }\n }],\n createForTeamDiscussionCommentInOrg: [\"POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions\", {\n mediaType: {\n previews: [\"squirrel-girl\"]\n }\n }],\n createForTeamDiscussionInOrg: [\"POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions\", {\n mediaType: {\n previews: [\"squirrel-girl\"]\n }\n }],\n deleteForCommitComment: [\"DELETE /repos/{owner}/{repo}/comments/{comment_id}/reactions/{reaction_id}\", {\n mediaType: {\n previews: [\"squirrel-girl\"]\n }\n }],\n deleteForIssue: [\"DELETE /repos/{owner}/{repo}/issues/{issue_number}/reactions/{reaction_id}\", {\n mediaType: {\n previews: [\"squirrel-girl\"]\n }\n }],\n deleteForIssueComment: [\"DELETE /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions/{reaction_id}\", {\n mediaType: {\n previews: [\"squirrel-girl\"]\n }\n }],\n deleteForPullRequestComment: [\"DELETE /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions/{reaction_id}\", {\n mediaType: {\n previews: [\"squirrel-girl\"]\n }\n }],\n deleteForTeamDiscussion: [\"DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions/{reaction_id}\", {\n mediaType: {\n previews: [\"squirrel-girl\"]\n }\n }],\n deleteForTeamDiscussionComment: [\"DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions/{reaction_id}\", {\n mediaType: {\n previews: [\"squirrel-girl\"]\n }\n }],\n deleteLegacy: [\"DELETE /reactions/{reaction_id}\", {\n mediaType: {\n previews: [\"squirrel-girl\"]\n }\n }, {\n deprecated: \"octokit.reactions.deleteLegacy() is deprecated, see https://developer.github.com/v3/reactions/#delete-a-reaction-legacy\"\n }],\n listForCommitComment: [\"GET /repos/{owner}/{repo}/comments/{comment_id}/reactions\", {\n mediaType: {\n previews: [\"squirrel-girl\"]\n }\n }],\n listForIssue: [\"GET /repos/{owner}/{repo}/issues/{issue_number}/reactions\", {\n mediaType: {\n previews: [\"squirrel-girl\"]\n }\n }],\n listForIssueComment: [\"GET /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions\", {\n mediaType: {\n previews: [\"squirrel-girl\"]\n }\n }],\n listForPullRequestReviewComment: [\"GET /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions\", {\n mediaType: {\n previews: [\"squirrel-girl\"]\n }\n }],\n listForTeamDiscussionCommentInOrg: [\"GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions\", {\n mediaType: {\n previews: [\"squirrel-girl\"]\n }\n }],\n listForTeamDiscussionInOrg: [\"GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions\", {\n mediaType: {\n previews: [\"squirrel-girl\"]\n }\n }]\n },\n repos: {\n acceptInvitation: [\"PATCH /user/repository_invitations/{invitation_id}\"],\n addAppAccessRestrictions: [\"POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps\", {}, {\n mapToData: \"apps\"\n }],\n addCollaborator: [\"PUT /repos/{owner}/{repo}/collaborators/{username}\"],\n addStatusCheckContexts: [\"POST /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts\", {}, {\n mapToData: \"contexts\"\n }],\n addTeamAccessRestrictions: [\"POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams\", {}, {\n mapToData: \"teams\"\n }],\n addUserAccessRestrictions: [\"POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users\", {}, {\n mapToData: \"users\"\n }],\n checkCollaborator: [\"GET /repos/{owner}/{repo}/collaborators/{username}\"],\n checkVulnerabilityAlerts: [\"GET /repos/{owner}/{repo}/vulnerability-alerts\", {\n mediaType: {\n previews: [\"dorian\"]\n }\n }],\n compareCommits: [\"GET /repos/{owner}/{repo}/compare/{base}...{head}\"],\n createCommitComment: [\"POST /repos/{owner}/{repo}/commits/{commit_sha}/comments\"],\n createCommitSignatureProtection: [\"POST /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures\", {\n mediaType: {\n previews: [\"zzzax\"]\n }\n }],\n createCommitStatus: [\"POST /repos/{owner}/{repo}/statuses/{sha}\"],\n createDeployKey: [\"POST /repos/{owner}/{repo}/keys\"],\n createDeployment: [\"POST /repos/{owner}/{repo}/deployments\"],\n createDeploymentStatus: [\"POST /repos/{owner}/{repo}/deployments/{deployment_id}/statuses\"],\n createDispatchEvent: [\"POST /repos/{owner}/{repo}/dispatches\"],\n createForAuthenticatedUser: [\"POST /user/repos\"],\n createFork: [\"POST /repos/{owner}/{repo}/forks\"],\n createInOrg: [\"POST /orgs/{org}/repos\"],\n createOrUpdateFileContents: [\"PUT /repos/{owner}/{repo}/contents/{path}\"],\n createPagesSite: [\"POST /repos/{owner}/{repo}/pages\", {\n mediaType: {\n previews: [\"switcheroo\"]\n }\n }],\n createRelease: [\"POST /repos/{owner}/{repo}/releases\"],\n createUsingTemplate: [\"POST /repos/{template_owner}/{template_repo}/generate\", {\n mediaType: {\n previews: [\"baptiste\"]\n }\n }],\n createWebhook: [\"POST /repos/{owner}/{repo}/hooks\"],\n declineInvitation: [\"DELETE /user/repository_invitations/{invitation_id}\"],\n delete: [\"DELETE /repos/{owner}/{repo}\"],\n deleteAccessRestrictions: [\"DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions\"],\n deleteAdminBranchProtection: [\"DELETE /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins\"],\n deleteBranchProtection: [\"DELETE /repos/{owner}/{repo}/branches/{branch}/protection\"],\n deleteCommitComment: [\"DELETE /repos/{owner}/{repo}/comments/{comment_id}\"],\n deleteCommitSignatureProtection: [\"DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures\", {\n mediaType: {\n previews: [\"zzzax\"]\n }\n }],\n deleteDeployKey: [\"DELETE /repos/{owner}/{repo}/keys/{key_id}\"],\n deleteDeployment: [\"DELETE /repos/{owner}/{repo}/deployments/{deployment_id}\"],\n deleteFile: [\"DELETE /repos/{owner}/{repo}/contents/{path}\"],\n deleteInvitation: [\"DELETE /repos/{owner}/{repo}/invitations/{invitation_id}\"],\n deletePagesSite: [\"DELETE /repos/{owner}/{repo}/pages\", {\n mediaType: {\n previews: [\"switcheroo\"]\n }\n }],\n deletePullRequestReviewProtection: [\"DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews\"],\n deleteRelease: [\"DELETE /repos/{owner}/{repo}/releases/{release_id}\"],\n deleteReleaseAsset: [\"DELETE /repos/{owner}/{repo}/releases/assets/{asset_id}\"],\n deleteWebhook: [\"DELETE /repos/{owner}/{repo}/hooks/{hook_id}\"],\n disableAutomatedSecurityFixes: [\"DELETE /repos/{owner}/{repo}/automated-security-fixes\", {\n mediaType: {\n previews: [\"london\"]\n }\n }],\n disableVulnerabilityAlerts: [\"DELETE /repos/{owner}/{repo}/vulnerability-alerts\", {\n mediaType: {\n previews: [\"dorian\"]\n }\n }],\n downloadArchive: [\"GET /repos/{owner}/{repo}/{archive_format}/{ref}\"],\n enableAutomatedSecurityFixes: [\"PUT /repos/{owner}/{repo}/automated-security-fixes\", {\n mediaType: {\n previews: [\"london\"]\n }\n }],\n enableVulnerabilityAlerts: [\"PUT /repos/{owner}/{repo}/vulnerability-alerts\", {\n mediaType: {\n previews: [\"dorian\"]\n }\n }],\n get: [\"GET /repos/{owner}/{repo}\"],\n getAccessRestrictions: [\"GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions\"],\n getAdminBranchProtection: [\"GET /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins\"],\n getAllStatusCheckContexts: [\"GET /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts\"],\n getAllTopics: [\"GET /repos/{owner}/{repo}/topics\", {\n mediaType: {\n previews: [\"mercy\"]\n }\n }],\n getAppsWithAccessToProtectedBranch: [\"GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps\"],\n getBranch: [\"GET /repos/{owner}/{repo}/branches/{branch}\"],\n getBranchProtection: [\"GET /repos/{owner}/{repo}/branches/{branch}/protection\"],\n getClones: [\"GET /repos/{owner}/{repo}/traffic/clones\"],\n getCodeFrequencyStats: [\"GET /repos/{owner}/{repo}/stats/code_frequency\"],\n getCollaboratorPermissionLevel: [\"GET /repos/{owner}/{repo}/collaborators/{username}/permission\"],\n getCombinedStatusForRef: [\"GET /repos/{owner}/{repo}/commits/{ref}/status\"],\n getCommit: [\"GET /repos/{owner}/{repo}/commits/{ref}\"],\n getCommitActivityStats: [\"GET /repos/{owner}/{repo}/stats/commit_activity\"],\n getCommitComment: [\"GET /repos/{owner}/{repo}/comments/{comment_id}\"],\n getCommitSignatureProtection: [\"GET /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures\", {\n mediaType: {\n previews: [\"zzzax\"]\n }\n }],\n getCommunityProfileMetrics: [\"GET /repos/{owner}/{repo}/community/profile\", {\n mediaType: {\n previews: [\"black-panther\"]\n }\n }],\n getContent: [\"GET /repos/{owner}/{repo}/contents/{path}\"],\n getContributorsStats: [\"GET /repos/{owner}/{repo}/stats/contributors\"],\n getDeployKey: [\"GET /repos/{owner}/{repo}/keys/{key_id}\"],\n getDeployment: [\"GET /repos/{owner}/{repo}/deployments/{deployment_id}\"],\n getDeploymentStatus: [\"GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses/{status_id}\"],\n getLatestPagesBuild: [\"GET /repos/{owner}/{repo}/pages/builds/latest\"],\n getLatestRelease: [\"GET /repos/{owner}/{repo}/releases/latest\"],\n getPages: [\"GET /repos/{owner}/{repo}/pages\"],\n getPagesBuild: [\"GET /repos/{owner}/{repo}/pages/builds/{build_id}\"],\n getParticipationStats: [\"GET /repos/{owner}/{repo}/stats/participation\"],\n getPullRequestReviewProtection: [\"GET /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews\"],\n getPunchCardStats: [\"GET /repos/{owner}/{repo}/stats/punch_card\"],\n getReadme: [\"GET /repos/{owner}/{repo}/readme\"],\n getRelease: [\"GET /repos/{owner}/{repo}/releases/{release_id}\"],\n getReleaseAsset: [\"GET /repos/{owner}/{repo}/releases/assets/{asset_id}\"],\n getReleaseByTag: [\"GET /repos/{owner}/{repo}/releases/tags/{tag}\"],\n getStatusChecksProtection: [\"GET /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks\"],\n getTeamsWithAccessToProtectedBranch: [\"GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams\"],\n getTopPaths: [\"GET /repos/{owner}/{repo}/traffic/popular/paths\"],\n getTopReferrers: [\"GET /repos/{owner}/{repo}/traffic/popular/referrers\"],\n getUsersWithAccessToProtectedBranch: [\"GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users\"],\n getViews: [\"GET /repos/{owner}/{repo}/traffic/views\"],\n getWebhook: [\"GET /repos/{owner}/{repo}/hooks/{hook_id}\"],\n listBranches: [\"GET /repos/{owner}/{repo}/branches\"],\n listBranchesForHeadCommit: [\"GET /repos/{owner}/{repo}/commits/{commit_sha}/branches-where-head\", {\n mediaType: {\n previews: [\"groot\"]\n }\n }],\n listCollaborators: [\"GET /repos/{owner}/{repo}/collaborators\"],\n listCommentsForCommit: [\"GET /repos/{owner}/{repo}/commits/{commit_sha}/comments\"],\n listCommitCommentsForRepo: [\"GET /repos/{owner}/{repo}/comments\"],\n listCommitStatusesForRef: [\"GET /repos/{owner}/{repo}/commits/{ref}/statuses\"],\n listCommits: [\"GET /repos/{owner}/{repo}/commits\"],\n listContributors: [\"GET /repos/{owner}/{repo}/contributors\"],\n listDeployKeys: [\"GET /repos/{owner}/{repo}/keys\"],\n listDeploymentStatuses: [\"GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses\"],\n listDeployments: [\"GET /repos/{owner}/{repo}/deployments\"],\n listForAuthenticatedUser: [\"GET /user/repos\"],\n listForOrg: [\"GET /orgs/{org}/repos\"],\n listForUser: [\"GET /users/{username}/repos\"],\n listForks: [\"GET /repos/{owner}/{repo}/forks\"],\n listInvitations: [\"GET /repos/{owner}/{repo}/invitations\"],\n listInvitationsForAuthenticatedUser: [\"GET /user/repository_invitations\"],\n listLanguages: [\"GET /repos/{owner}/{repo}/languages\"],\n listPagesBuilds: [\"GET /repos/{owner}/{repo}/pages/builds\"],\n listPublic: [\"GET /repositories\"],\n listPullRequestsAssociatedWithCommit: [\"GET /repos/{owner}/{repo}/commits/{commit_sha}/pulls\", {\n mediaType: {\n previews: [\"groot\"]\n }\n }],\n listReleaseAssets: [\"GET /repos/{owner}/{repo}/releases/{release_id}/assets\"],\n listReleases: [\"GET /repos/{owner}/{repo}/releases\"],\n listTags: [\"GET /repos/{owner}/{repo}/tags\"],\n listTeams: [\"GET /repos/{owner}/{repo}/teams\"],\n listWebhooks: [\"GET /repos/{owner}/{repo}/hooks\"],\n merge: [\"POST /repos/{owner}/{repo}/merges\"],\n pingWebhook: [\"POST /repos/{owner}/{repo}/hooks/{hook_id}/pings\"],\n removeAppAccessRestrictions: [\"DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps\", {}, {\n mapToData: \"apps\"\n }],\n removeCollaborator: [\"DELETE /repos/{owner}/{repo}/collaborators/{username}\"],\n removeStatusCheckContexts: [\"DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts\", {}, {\n mapToData: \"contexts\"\n }],\n removeStatusCheckProtection: [\"DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks\"],\n removeTeamAccessRestrictions: [\"DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams\", {}, {\n mapToData: \"teams\"\n }],\n removeUserAccessRestrictions: [\"DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users\", {}, {\n mapToData: \"users\"\n }],\n replaceAllTopics: [\"PUT /repos/{owner}/{repo}/topics\", {\n mediaType: {\n previews: [\"mercy\"]\n }\n }],\n requestPagesBuild: [\"POST /repos/{owner}/{repo}/pages/builds\"],\n setAdminBranchProtection: [\"POST /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins\"],\n setAppAccessRestrictions: [\"PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps\", {}, {\n mapToData: \"apps\"\n }],\n setStatusCheckContexts: [\"PUT /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts\", {}, {\n mapToData: \"contexts\"\n }],\n setTeamAccessRestrictions: [\"PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams\", {}, {\n mapToData: \"teams\"\n }],\n setUserAccessRestrictions: [\"PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users\", {}, {\n mapToData: \"users\"\n }],\n testPushWebhook: [\"POST /repos/{owner}/{repo}/hooks/{hook_id}/tests\"],\n transfer: [\"POST /repos/{owner}/{repo}/transfer\"],\n update: [\"PATCH /repos/{owner}/{repo}\"],\n updateBranchProtection: [\"PUT /repos/{owner}/{repo}/branches/{branch}/protection\"],\n updateCommitComment: [\"PATCH /repos/{owner}/{repo}/comments/{comment_id}\"],\n updateInformationAboutPagesSite: [\"PUT /repos/{owner}/{repo}/pages\"],\n updateInvitation: [\"PATCH /repos/{owner}/{repo}/invitations/{invitation_id}\"],\n updatePullRequestReviewProtection: [\"PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews\"],\n updateRelease: [\"PATCH /repos/{owner}/{repo}/releases/{release_id}\"],\n updateReleaseAsset: [\"PATCH /repos/{owner}/{repo}/releases/assets/{asset_id}\"],\n updateStatusCheckPotection: [\"PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks\"],\n updateWebhook: [\"PATCH /repos/{owner}/{repo}/hooks/{hook_id}\"],\n uploadReleaseAsset: [\"POST /repos/{owner}/{repo}/releases/{release_id}/assets{?name,label}\", {\n baseUrl: \"https://uploads.github.com\"\n }]\n },\n search: {\n code: [\"GET /search/code\"],\n commits: [\"GET /search/commits\", {\n mediaType: {\n previews: [\"cloak\"]\n }\n }],\n issuesAndPullRequests: [\"GET /search/issues\"],\n labels: [\"GET /search/labels\"],\n repos: [\"GET /search/repositories\"],\n topics: [\"GET /search/topics\", {\n mediaType: {\n previews: [\"mercy\"]\n }\n }],\n users: [\"GET /search/users\"]\n },\n teams: {\n addOrUpdateMembershipForUserInOrg: [\"PUT /orgs/{org}/teams/{team_slug}/memberships/{username}\"],\n addOrUpdateProjectPermissionsInOrg: [\"PUT /orgs/{org}/teams/{team_slug}/projects/{project_id}\", {\n mediaType: {\n previews: [\"inertia\"]\n }\n }],\n addOrUpdateRepoPermissionsInOrg: [\"PUT /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}\"],\n checkPermissionsForProjectInOrg: [\"GET /orgs/{org}/teams/{team_slug}/projects/{project_id}\", {\n mediaType: {\n previews: [\"inertia\"]\n }\n }],\n checkPermissionsForRepoInOrg: [\"GET /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}\"],\n create: [\"POST /orgs/{org}/teams\"],\n createDiscussionCommentInOrg: [\"POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments\"],\n createDiscussionInOrg: [\"POST /orgs/{org}/teams/{team_slug}/discussions\"],\n deleteDiscussionCommentInOrg: [\"DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}\"],\n deleteDiscussionInOrg: [\"DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}\"],\n deleteInOrg: [\"DELETE /orgs/{org}/teams/{team_slug}\"],\n getByName: [\"GET /orgs/{org}/teams/{team_slug}\"],\n getDiscussionCommentInOrg: [\"GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}\"],\n getDiscussionInOrg: [\"GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}\"],\n getMembershipForUserInOrg: [\"GET /orgs/{org}/teams/{team_slug}/memberships/{username}\"],\n list: [\"GET /orgs/{org}/teams\"],\n listChildInOrg: [\"GET /orgs/{org}/teams/{team_slug}/teams\"],\n listDiscussionCommentsInOrg: [\"GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments\"],\n listDiscussionsInOrg: [\"GET /orgs/{org}/teams/{team_slug}/discussions\"],\n listForAuthenticatedUser: [\"GET /user/teams\"],\n listMembersInOrg: [\"GET /orgs/{org}/teams/{team_slug}/members\"],\n listPendingInvitationsInOrg: [\"GET /orgs/{org}/teams/{team_slug}/invitations\"],\n listProjectsInOrg: [\"GET /orgs/{org}/teams/{team_slug}/projects\", {\n mediaType: {\n previews: [\"inertia\"]\n }\n }],\n listReposInOrg: [\"GET /orgs/{org}/teams/{team_slug}/repos\"],\n removeMembershipForUserInOrg: [\"DELETE /orgs/{org}/teams/{team_slug}/memberships/{username}\"],\n removeProjectInOrg: [\"DELETE /orgs/{org}/teams/{team_slug}/projects/{project_id}\"],\n removeRepoInOrg: [\"DELETE /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}\"],\n updateDiscussionCommentInOrg: [\"PATCH /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}\"],\n updateDiscussionInOrg: [\"PATCH /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}\"],\n updateInOrg: [\"PATCH /orgs/{org}/teams/{team_slug}\"]\n },\n users: {\n addEmailForAuthenticated: [\"POST /user/emails\"],\n block: [\"PUT /user/blocks/{username}\"],\n checkBlocked: [\"GET /user/blocks/{username}\"],\n checkFollowingForUser: [\"GET /users/{username}/following/{target_user}\"],\n checkPersonIsFollowedByAuthenticated: [\"GET /user/following/{username}\"],\n createGpgKeyForAuthenticated: [\"POST /user/gpg_keys\"],\n createPublicSshKeyForAuthenticated: [\"POST /user/keys\"],\n deleteEmailForAuthenticated: [\"DELETE /user/emails\"],\n deleteGpgKeyForAuthenticated: [\"DELETE /user/gpg_keys/{gpg_key_id}\"],\n deletePublicSshKeyForAuthenticated: [\"DELETE /user/keys/{key_id}\"],\n follow: [\"PUT /user/following/{username}\"],\n getAuthenticated: [\"GET /user\"],\n getByUsername: [\"GET /users/{username}\"],\n getContextForUser: [\"GET /users/{username}/hovercard\"],\n getGpgKeyForAuthenticated: [\"GET /user/gpg_keys/{gpg_key_id}\"],\n getPublicSshKeyForAuthenticated: [\"GET /user/keys/{key_id}\"],\n list: [\"GET /users\"],\n listBlockedByAuthenticated: [\"GET /user/blocks\"],\n listEmailsForAuthenticated: [\"GET /user/emails\"],\n listFollowedByAuthenticated: [\"GET /user/following\"],\n listFollowersForAuthenticatedUser: [\"GET /user/followers\"],\n listFollowersForUser: [\"GET /users/{username}/followers\"],\n listFollowingForUser: [\"GET /users/{username}/following\"],\n listGpgKeysForAuthenticated: [\"GET /user/gpg_keys\"],\n listGpgKeysForUser: [\"GET /users/{username}/gpg_keys\"],\n listPublicEmailsForAuthenticated: [\"GET /user/public_emails\"],\n listPublicKeysForUser: [\"GET /users/{username}/keys\"],\n listPublicSshKeysForAuthenticated: [\"GET /user/keys\"],\n setPrimaryEmailVisibilityForAuthenticated: [\"PATCH /user/email/visibility\"],\n unblock: [\"DELETE /user/blocks/{username}\"],\n unfollow: [\"DELETE /user/following/{username}\"],\n updateAuthenticated: [\"PATCH /user\"]\n }\n};\n\nconst VERSION = \"4.2.0\";\n\nfunction endpointsToMethods(octokit, endpointsMap) {\n const newMethods = {};\n\n for (const [scope, endpoints] of Object.entries(endpointsMap)) {\n for (const [methodName, endpoint] of Object.entries(endpoints)) {\n const [route, defaults, decorations] = endpoint;\n const [method, url] = route.split(/ /);\n const endpointDefaults = Object.assign({\n method,\n url\n }, defaults);\n\n if (!newMethods[scope]) {\n newMethods[scope] = {};\n }\n\n const scopeMethods = newMethods[scope];\n\n if (decorations) {\n scopeMethods[methodName] = decorate(octokit, scope, methodName, endpointDefaults, decorations);\n continue;\n }\n\n scopeMethods[methodName] = octokit.request.defaults(endpointDefaults);\n }\n }\n\n return newMethods;\n}\n\nfunction decorate(octokit, scope, methodName, defaults, decorations) {\n const requestWithDefaults = octokit.request.defaults(defaults);\n /* istanbul ignore next */\n\n function withDecorations(...args) {\n // @ts-ignore https://github.com/microsoft/TypeScript/issues/25488\n let options = requestWithDefaults.endpoint.merge(...args); // There are currently no other decorations than `.mapToData`\n\n if (decorations.mapToData) {\n options = Object.assign({}, options, {\n data: options[decorations.mapToData],\n [decorations.mapToData]: undefined\n });\n return requestWithDefaults(options);\n }\n\n if (decorations.renamed) {\n const [newScope, newMethodName] = decorations.renamed;\n octokit.log.warn(`octokit.${scope}.${methodName}() has been renamed to octokit.${newScope}.${newMethodName}()`);\n }\n\n if (decorations.deprecated) {\n octokit.log.warn(decorations.deprecated);\n }\n\n if (decorations.renamedParameters) {\n // @ts-ignore https://github.com/microsoft/TypeScript/issues/25488\n const options = requestWithDefaults.endpoint.merge(...args);\n\n for (const [name, alias] of Object.entries(decorations.renamedParameters)) {\n if (name in options) {\n octokit.log.warn(`\"${name}\" parameter is deprecated for \"octokit.${scope}.${methodName}()\". Use \"${alias}\" instead`);\n\n if (!(alias in options)) {\n options[alias] = options[name];\n }\n\n delete options[name];\n }\n }\n\n return requestWithDefaults(options);\n } // @ts-ignore https://github.com/microsoft/TypeScript/issues/25488\n\n\n return requestWithDefaults(...args);\n }\n\n return Object.assign(withDecorations, requestWithDefaults);\n}\n\n/**\n * This plugin is a 1:1 copy of internal @octokit/rest plugins. The primary\n * goal is to rebuild @octokit/rest on top of @octokit/core. Once that is\n * done, we will remove the registerEndpoints methods and return the methods\n * directly as with the other plugins. At that point we will also remove the\n * legacy workarounds and deprecations.\n *\n * See the plan at\n * https://github.com/octokit/plugin-rest-endpoint-methods.js/pull/1\n */\n\nfunction restEndpointMethods(octokit) {\n return endpointsToMethods(octokit, Endpoints);\n}\nrestEndpointMethods.VERSION = VERSION;\n\nexports.restEndpointMethods = restEndpointMethods;\n//# sourceMappingURL=index.js.map\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nfunction _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; }\n\nvar deprecation = require('deprecation');\nvar once = _interopDefault(require('once'));\n\nconst logOnce = once(deprecation => console.warn(deprecation));\n/**\n * Error with extra properties to help with debugging\n */\n\nclass RequestError extends Error {\n constructor(message, statusCode, options) {\n super(message); // Maintains proper stack trace (only available on V8)\n\n /* istanbul ignore next */\n\n if (Error.captureStackTrace) {\n Error.captureStackTrace(this, this.constructor);\n }\n\n this.name = \"HttpError\";\n this.status = statusCode;\n Object.defineProperty(this, \"code\", {\n get() {\n logOnce(new deprecation.Deprecation(\"[@octokit/request-error] `error.code` is deprecated, use `error.status`.\"));\n return statusCode;\n }\n\n });\n this.headers = options.headers || {}; // redact request credentials without mutating original request options\n\n const requestCopy = Object.assign({}, options.request);\n\n if (options.request.headers.authorization) {\n requestCopy.headers = Object.assign({}, options.request.headers, {\n authorization: options.request.headers.authorization.replace(/ .*$/, \" [REDACTED]\")\n });\n }\n\n requestCopy.url = requestCopy.url // client_id & client_secret can be passed as URL query parameters to increase rate limit\n // see https://developer.github.com/v3/#increasing-the-unauthenticated-rate-limit-for-oauth-applications\n .replace(/\\bclient_secret=\\w+/g, \"client_secret=[REDACTED]\") // OAuth tokens can be passed as URL query parameters, although it is not recommended\n // see https://developer.github.com/v3/#oauth2-token-sent-in-a-header\n .replace(/\\baccess_token=\\w+/g, \"access_token=[REDACTED]\");\n this.request = requestCopy;\n }\n\n}\n\nexports.RequestError = RequestError;\n//# sourceMappingURL=index.js.map\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nfunction _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; }\n\nvar endpoint = require('@octokit/endpoint');\nvar universalUserAgent = require('universal-user-agent');\nvar isPlainObject = require('is-plain-object');\nvar nodeFetch = _interopDefault(require('node-fetch'));\nvar requestError = require('@octokit/request-error');\n\nconst VERSION = \"5.4.9\";\n\nfunction getBufferResponse(response) {\n return response.arrayBuffer();\n}\n\nfunction fetchWrapper(requestOptions) {\n if (isPlainObject.isPlainObject(requestOptions.body) || Array.isArray(requestOptions.body)) {\n requestOptions.body = JSON.stringify(requestOptions.body);\n }\n\n let headers = {};\n let status;\n let url;\n const fetch = requestOptions.request && requestOptions.request.fetch || nodeFetch;\n return fetch(requestOptions.url, Object.assign({\n method: requestOptions.method,\n body: requestOptions.body,\n headers: requestOptions.headers,\n redirect: requestOptions.redirect\n }, requestOptions.request)).then(response => {\n url = response.url;\n status = response.status;\n\n for (const keyAndValue of response.headers) {\n headers[keyAndValue[0]] = keyAndValue[1];\n }\n\n if (status === 204 || status === 205) {\n return;\n } // GitHub API returns 200 for HEAD requests\n\n\n if (requestOptions.method === \"HEAD\") {\n if (status < 400) {\n return;\n }\n\n throw new requestError.RequestError(response.statusText, status, {\n headers,\n request: requestOptions\n });\n }\n\n if (status === 304) {\n throw new requestError.RequestError(\"Not modified\", status, {\n headers,\n request: requestOptions\n });\n }\n\n if (status >= 400) {\n return response.text().then(message => {\n const error = new requestError.RequestError(message, status, {\n headers,\n request: requestOptions\n });\n\n try {\n let responseBody = JSON.parse(error.message);\n Object.assign(error, responseBody);\n let errors = responseBody.errors; // Assumption `errors` would always be in Array format\n\n error.message = error.message + \": \" + errors.map(JSON.stringify).join(\", \");\n } catch (e) {// ignore, see octokit/rest.js#684\n }\n\n throw error;\n });\n }\n\n const contentType = response.headers.get(\"content-type\");\n\n if (/application\\/json/.test(contentType)) {\n return response.json();\n }\n\n if (!contentType || /^text\\/|charset=utf-8$/.test(contentType)) {\n return response.text();\n }\n\n return getBufferResponse(response);\n }).then(data => {\n return {\n status,\n url,\n headers,\n data\n };\n }).catch(error => {\n if (error instanceof requestError.RequestError) {\n throw error;\n }\n\n throw new requestError.RequestError(error.message, 500, {\n headers,\n request: requestOptions\n });\n });\n}\n\nfunction withDefaults(oldEndpoint, newDefaults) {\n const endpoint = oldEndpoint.defaults(newDefaults);\n\n const newApi = function (route, parameters) {\n const endpointOptions = endpoint.merge(route, parameters);\n\n if (!endpointOptions.request || !endpointOptions.request.hook) {\n return fetchWrapper(endpoint.parse(endpointOptions));\n }\n\n const request = (route, parameters) => {\n return fetchWrapper(endpoint.parse(endpoint.merge(route, parameters)));\n };\n\n Object.assign(request, {\n endpoint,\n defaults: withDefaults.bind(null, endpoint)\n });\n return endpointOptions.request.hook(request, endpointOptions);\n };\n\n return Object.assign(newApi, {\n endpoint,\n defaults: withDefaults.bind(null, endpoint)\n });\n}\n\nconst request = withDefaults(endpoint.endpoint, {\n headers: {\n \"user-agent\": `octokit-request.js/${VERSION} ${universalUserAgent.getUserAgent()}`\n }\n});\n\nexports.request = request;\n//# sourceMappingURL=index.js.map\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\n/*!\n * is-plain-object \n *\n * Copyright (c) 2014-2017, Jon Schlinkert.\n * Released under the MIT License.\n */\n\nfunction isObject(o) {\n return Object.prototype.toString.call(o) === '[object Object]';\n}\n\nfunction isPlainObject(o) {\n var ctor,prot;\n\n if (isObject(o) === false) return false;\n\n // If has modified constructor\n ctor = o.constructor;\n if (ctor === undefined) return true;\n\n // If has modified prototype\n prot = ctor.prototype;\n if (isObject(prot) === false) return false;\n\n // If constructor does not have an Object-specific method\n if (prot.hasOwnProperty('isPrototypeOf') === false) {\n return false;\n }\n\n // Most likely a plain Object\n return true;\n}\n\nexports.isPlainObject = isPlainObject;\n","var register = require('./lib/register')\nvar addHook = require('./lib/add')\nvar removeHook = require('./lib/remove')\n\n// bind with array of arguments: https://stackoverflow.com/a/21792913\nvar bind = Function.bind\nvar bindable = bind.bind(bind)\n\nfunction bindApi (hook, state, name) {\n var removeHookRef = bindable(removeHook, null).apply(null, name ? [state, name] : [state])\n hook.api = { remove: removeHookRef }\n hook.remove = removeHookRef\n\n ;['before', 'error', 'after', 'wrap'].forEach(function (kind) {\n var args = name ? [state, kind, name] : [state, kind]\n hook[kind] = hook.api[kind] = bindable(addHook, null).apply(null, args)\n })\n}\n\nfunction HookSingular () {\n var singularHookName = 'h'\n var singularHookState = {\n registry: {}\n }\n var singularHook = register.bind(null, singularHookState, singularHookName)\n bindApi(singularHook, singularHookState, singularHookName)\n return singularHook\n}\n\nfunction HookCollection () {\n var state = {\n registry: {}\n }\n\n var hook = register.bind(null, state)\n bindApi(hook, state)\n\n return hook\n}\n\nvar collectionHookDeprecationMessageDisplayed = false\nfunction Hook () {\n if (!collectionHookDeprecationMessageDisplayed) {\n console.warn('[before-after-hook]: \"Hook()\" repurposing warning, use \"Hook.Collection()\". Read more: https://git.io/upgrade-before-after-hook-to-1.4')\n collectionHookDeprecationMessageDisplayed = true\n }\n return HookCollection()\n}\n\nHook.Singular = HookSingular.bind()\nHook.Collection = HookCollection.bind()\n\nmodule.exports = Hook\n// expose constructors as a named property for TypeScript\nmodule.exports.Hook = Hook\nmodule.exports.Singular = Hook.Singular\nmodule.exports.Collection = Hook.Collection\n","module.exports = addHook\n\nfunction addHook (state, kind, name, hook) {\n var orig = hook\n if (!state.registry[name]) {\n state.registry[name] = []\n }\n\n if (kind === 'before') {\n hook = function (method, options) {\n return Promise.resolve()\n .then(orig.bind(null, options))\n .then(method.bind(null, options))\n }\n }\n\n if (kind === 'after') {\n hook = function (method, options) {\n var result\n return Promise.resolve()\n .then(method.bind(null, options))\n .then(function (result_) {\n result = result_\n return orig(result, options)\n })\n .then(function () {\n return result\n })\n }\n }\n\n if (kind === 'error') {\n hook = function (method, options) {\n return Promise.resolve()\n .then(method.bind(null, options))\n .catch(function (error) {\n return orig(error, options)\n })\n }\n }\n\n state.registry[name].push({\n hook: hook,\n orig: orig\n })\n}\n","module.exports = register\n\nfunction register (state, name, method, options) {\n if (typeof method !== 'function') {\n throw new Error('method for before hook must be a function')\n }\n\n if (!options) {\n options = {}\n }\n\n if (Array.isArray(name)) {\n return name.reverse().reduce(function (callback, name) {\n return register.bind(null, state, name, callback, options)\n }, method)()\n }\n\n return Promise.resolve()\n .then(function () {\n if (!state.registry[name]) {\n return method(options)\n }\n\n return (state.registry[name]).reduce(function (method, registered) {\n return registered.hook.bind(null, method, options)\n }, method)()\n })\n}\n","module.exports = removeHook\n\nfunction removeHook (state, name, method) {\n if (!state.registry[name]) {\n return\n }\n\n var index = state.registry[name]\n .map(function (registered) { return registered.orig })\n .indexOf(method)\n\n if (index === -1) {\n return\n }\n\n state.registry[name].splice(index, 1)\n}\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nclass Deprecation extends Error {\n constructor(message) {\n super(message); // Maintains proper stack trace (only available on V8)\n\n /* istanbul ignore next */\n\n if (Error.captureStackTrace) {\n Error.captureStackTrace(this, this.constructor);\n }\n\n this.name = 'Deprecation';\n }\n\n}\n\nexports.Deprecation = Deprecation;\n","'use strict';\n//parse Empty Node as self closing node\nconst buildOptions = require('./util').buildOptions;\n\nconst defaultOptions = {\n attributeNamePrefix: '@_',\n attrNodeName: false,\n textNodeName: '#text',\n ignoreAttributes: true,\n cdataTagName: false,\n cdataPositionChar: '\\\\c',\n format: false,\n indentBy: ' ',\n supressEmptyNode: false,\n tagValueProcessor: function(a) {\n return a;\n },\n attrValueProcessor: function(a) {\n return a;\n },\n};\n\nconst props = [\n 'attributeNamePrefix',\n 'attrNodeName',\n 'textNodeName',\n 'ignoreAttributes',\n 'cdataTagName',\n 'cdataPositionChar',\n 'format',\n 'indentBy',\n 'supressEmptyNode',\n 'tagValueProcessor',\n 'attrValueProcessor',\n];\n\nfunction Parser(options) {\n this.options = buildOptions(options, defaultOptions, props);\n if (this.options.ignoreAttributes || this.options.attrNodeName) {\n this.isAttribute = function(/*a*/) {\n return false;\n };\n } else {\n this.attrPrefixLen = this.options.attributeNamePrefix.length;\n this.isAttribute = isAttribute;\n }\n if (this.options.cdataTagName) {\n this.isCDATA = isCDATA;\n } else {\n this.isCDATA = function(/*a*/) {\n return false;\n };\n }\n this.replaceCDATAstr = replaceCDATAstr;\n this.replaceCDATAarr = replaceCDATAarr;\n\n if (this.options.format) {\n this.indentate = indentate;\n this.tagEndChar = '>\\n';\n this.newLine = '\\n';\n } else {\n this.indentate = function() {\n return '';\n };\n this.tagEndChar = '>';\n this.newLine = '';\n }\n\n if (this.options.supressEmptyNode) {\n this.buildTextNode = buildEmptyTextNode;\n this.buildObjNode = buildEmptyObjNode;\n } else {\n this.buildTextNode = buildTextValNode;\n this.buildObjNode = buildObjectNode;\n }\n\n this.buildTextValNode = buildTextValNode;\n this.buildObjectNode = buildObjectNode;\n}\n\nParser.prototype.parse = function(jObj) {\n return this.j2x(jObj, 0).val;\n};\n\nParser.prototype.j2x = function(jObj, level) {\n let attrStr = '';\n let val = '';\n const keys = Object.keys(jObj);\n const len = keys.length;\n for (let i = 0; i < len; i++) {\n const key = keys[i];\n if (typeof jObj[key] === 'undefined') {\n // supress undefined node\n } else if (jObj[key] === null) {\n val += this.indentate(level) + '<' + key + '/' + this.tagEndChar;\n } else if (jObj[key] instanceof Date) {\n val += this.buildTextNode(jObj[key], key, '', level);\n } else if (typeof jObj[key] !== 'object') {\n //premitive type\n const attr = this.isAttribute(key);\n if (attr) {\n attrStr += ' ' + attr + '=\"' + this.options.attrValueProcessor('' + jObj[key]) + '\"';\n } else if (this.isCDATA(key)) {\n if (jObj[this.options.textNodeName]) {\n val += this.replaceCDATAstr(jObj[this.options.textNodeName], jObj[key]);\n } else {\n val += this.replaceCDATAstr('', jObj[key]);\n }\n } else {\n //tag value\n if (key === this.options.textNodeName) {\n if (jObj[this.options.cdataTagName]) {\n //value will added while processing cdata\n } else {\n val += this.options.tagValueProcessor('' + jObj[key]);\n }\n } else {\n val += this.buildTextNode(jObj[key], key, '', level);\n }\n }\n } else if (Array.isArray(jObj[key])) {\n //repeated nodes\n if (this.isCDATA(key)) {\n val += this.indentate(level);\n if (jObj[this.options.textNodeName]) {\n val += this.replaceCDATAarr(jObj[this.options.textNodeName], jObj[key]);\n } else {\n val += this.replaceCDATAarr('', jObj[key]);\n }\n } else {\n //nested nodes\n const arrLen = jObj[key].length;\n for (let j = 0; j < arrLen; j++) {\n const item = jObj[key][j];\n if (typeof item === 'undefined') {\n // supress undefined node\n } else if (item === null) {\n val += this.indentate(level) + '<' + key + '/' + this.tagEndChar;\n } else if (typeof item === 'object') {\n const result = this.j2x(item, level + 1);\n val += this.buildObjNode(result.val, key, result.attrStr, level);\n } else {\n val += this.buildTextNode(item, key, '', level);\n }\n }\n }\n } else {\n //nested node\n if (this.options.attrNodeName && key === this.options.attrNodeName) {\n const Ks = Object.keys(jObj[key]);\n const L = Ks.length;\n for (let j = 0; j < L; j++) {\n attrStr += ' ' + Ks[j] + '=\"' + this.options.attrValueProcessor('' + jObj[key][Ks[j]]) + '\"';\n }\n } else {\n const result = this.j2x(jObj[key], level + 1);\n val += this.buildObjNode(result.val, key, result.attrStr, level);\n }\n }\n }\n return {attrStr: attrStr, val: val};\n};\n\nfunction replaceCDATAstr(str, cdata) {\n str = this.options.tagValueProcessor('' + str);\n if (this.options.cdataPositionChar === '' || str === '') {\n return str + '');\n }\n return str + this.newLine;\n }\n}\n\nfunction buildObjectNode(val, key, attrStr, level) {\n if (attrStr && !val.includes('<')) {\n return (\n this.indentate(level) +\n '<' +\n key +\n attrStr +\n '>' +\n val +\n //+ this.newLine\n // + this.indentate(level)\n '' +\n this.options.tagValueProcessor(val) +\n ' 1) {\n jObj[tagName] = [];\n for (let tag in node.child[tagName]) {\n if (node.child[tagName].hasOwnProperty(tag)) {\n jObj[tagName].push(convertToJson(node.child[tagName][tag], options, tagName));\n }\n }\n } else {\n const result = convertToJson(node.child[tagName][0], options, tagName);\n const asArray = (options.arrayMode === true && typeof result === 'object') || util.isTagNameInArrayMode(tagName, options.arrayMode, parentTagName);\n jObj[tagName] = asArray ? [result] : result;\n }\n }\n\n //add value\n return jObj;\n};\n\nexports.convertToJson = convertToJson;\n","'use strict';\n\nconst util = require('./util');\nconst buildOptions = require('./util').buildOptions;\nconst x2j = require('./xmlstr2xmlnode');\n\n//TODO: do it later\nconst convertToJsonString = function(node, options) {\n options = buildOptions(options, x2j.defaultOptions, x2j.props);\n\n options.indentBy = options.indentBy || '';\n return _cToJsonStr(node, options, 0);\n};\n\nconst _cToJsonStr = function(node, options, level) {\n let jObj = '{';\n\n //traver through all the children\n const keys = Object.keys(node.child);\n\n for (let index = 0; index < keys.length; index++) {\n var tagname = keys[index];\n if (node.child[tagname] && node.child[tagname].length > 1) {\n jObj += '\"' + tagname + '\" : [ ';\n for (var tag in node.child[tagname]) {\n jObj += _cToJsonStr(node.child[tagname][tag], options) + ' , ';\n }\n jObj = jObj.substr(0, jObj.length - 1) + ' ] '; //remove extra comma in last\n } else {\n jObj += '\"' + tagname + '\" : ' + _cToJsonStr(node.child[tagname][0], options) + ' ,';\n }\n }\n util.merge(jObj, node.attrsMap);\n //add attrsMap as new children\n if (util.isEmptyObject(jObj)) {\n return util.isExist(node.val) ? node.val : '';\n } else {\n if (util.isExist(node.val)) {\n if (!(typeof node.val === 'string' && (node.val === '' || node.val === options.cdataPositionChar))) {\n jObj += '\"' + options.textNodeName + '\" : ' + stringval(node.val);\n }\n }\n }\n //add value\n if (jObj[jObj.length - 1] === ',') {\n jObj = jObj.substr(0, jObj.length - 2);\n }\n return jObj + '}';\n};\n\nfunction stringval(v) {\n if (v === true || v === false || !isNaN(v)) {\n return v;\n } else {\n return '\"' + v + '\"';\n }\n}\n\nfunction indentate(options, level) {\n return options.indentBy.repeat(level);\n}\n\nexports.convertToJsonString = convertToJsonString;\n","'use strict';\n\nconst nodeToJson = require('./node2json');\nconst xmlToNodeobj = require('./xmlstr2xmlnode');\nconst x2xmlnode = require('./xmlstr2xmlnode');\nconst buildOptions = require('./util').buildOptions;\nconst validator = require('./validator');\n\nexports.parse = function(xmlData, options, validationOption) {\n if( validationOption){\n if(validationOption === true) validationOption = {}\n \n const result = validator.validate(xmlData, validationOption);\n if (result !== true) {\n throw Error( result.err.msg)\n }\n }\n options = buildOptions(options, x2xmlnode.defaultOptions, x2xmlnode.props);\n const traversableObj = xmlToNodeobj.getTraversalObj(xmlData, options)\n //print(traversableObj, \" \");\n return nodeToJson.convertToJson(traversableObj, options);\n};\nexports.convertTonimn = require('../src/nimndata').convert2nimn;\nexports.getTraversalObj = xmlToNodeobj.getTraversalObj;\nexports.convertToJson = nodeToJson.convertToJson;\nexports.convertToJsonString = require('./node2json_str').convertToJsonString;\nexports.validate = validator.validate;\nexports.j2xParser = require('./json2xml');\nexports.parseToNimn = function(xmlData, schema, options) {\n return exports.convertTonimn(exports.getTraversalObj(xmlData, options), schema, options);\n};\n\n\nfunction print(xmlNode, indentation){\n if(xmlNode){\n console.log(indentation + \"{\")\n console.log(indentation + \" \\\"tagName\\\": \\\"\" + xmlNode.tagname + \"\\\", \");\n if(xmlNode.parent){\n console.log(indentation + \" \\\"parent\\\": \\\"\" + xmlNode.parent.tagname + \"\\\", \");\n }\n console.log(indentation + \" \\\"val\\\": \\\"\" + xmlNode.val + \"\\\", \");\n console.log(indentation + \" \\\"attrs\\\": \" + JSON.stringify(xmlNode.attrsMap,null,4) + \", \");\n\n if(xmlNode.child){\n console.log(indentation + \"\\\"child\\\": {\")\n const indentation2 = indentation + indentation;\n Object.keys(xmlNode.child).forEach( function(key) {\n const node = xmlNode.child[key];\n\n if(Array.isArray(node)){\n console.log(indentation + \"\\\"\"+key+\"\\\" :[\")\n node.forEach( function(item,index) {\n //console.log(indentation + \" \\\"\"+index+\"\\\" : [\")\n print(item, indentation2);\n })\n console.log(indentation + \"],\") \n }else{\n console.log(indentation + \" \\\"\"+key+\"\\\" : {\")\n print(node, indentation2);\n console.log(indentation + \"},\") \n }\n });\n console.log(indentation + \"},\")\n }\n console.log(indentation + \"},\")\n }\n}","'use strict';\n\nconst nameStartChar = ':A-Za-z_\\\\u00C0-\\\\u00D6\\\\u00D8-\\\\u00F6\\\\u00F8-\\\\u02FF\\\\u0370-\\\\u037D\\\\u037F-\\\\u1FFF\\\\u200C-\\\\u200D\\\\u2070-\\\\u218F\\\\u2C00-\\\\u2FEF\\\\u3001-\\\\uD7FF\\\\uF900-\\\\uFDCF\\\\uFDF0-\\\\uFFFD';\nconst nameChar = nameStartChar + '\\\\-.\\\\d\\\\u00B7\\\\u0300-\\\\u036F\\\\u203F-\\\\u2040';\nconst nameRegexp = '[' + nameStartChar + '][' + nameChar + ']*'\nconst regexName = new RegExp('^' + nameRegexp + '$');\n\nconst getAllMatches = function(string, regex) {\n const matches = [];\n let match = regex.exec(string);\n while (match) {\n const allmatches = [];\n const len = match.length;\n for (let index = 0; index < len; index++) {\n allmatches.push(match[index]);\n }\n matches.push(allmatches);\n match = regex.exec(string);\n }\n return matches;\n};\n\nconst isName = function(string) {\n const match = regexName.exec(string);\n return !(match === null || typeof match === 'undefined');\n};\n\nexports.isExist = function(v) {\n return typeof v !== 'undefined';\n};\n\nexports.isEmptyObject = function(obj) {\n return Object.keys(obj).length === 0;\n};\n\n/**\n * Copy all the properties of a into b.\n * @param {*} target\n * @param {*} a\n */\nexports.merge = function(target, a, arrayMode) {\n if (a) {\n const keys = Object.keys(a); // will return an array of own properties\n const len = keys.length; //don't make it inline\n for (let i = 0; i < len; i++) {\n if (arrayMode === 'strict') {\n target[keys[i]] = [ a[keys[i]] ];\n } else {\n target[keys[i]] = a[keys[i]];\n }\n }\n }\n};\n/* exports.merge =function (b,a){\n return Object.assign(b,a);\n} */\n\nexports.getValue = function(v) {\n if (exports.isExist(v)) {\n return v;\n } else {\n return '';\n }\n};\n\n// const fakeCall = function(a) {return a;};\n// const fakeCallNoReturn = function() {};\n\nexports.buildOptions = function(options, defaultOptions, props) {\n var newOptions = {};\n if (!options) {\n return defaultOptions; //if there are not options\n }\n\n for (let i = 0; i < props.length; i++) {\n if (options[props[i]] !== undefined) {\n newOptions[props[i]] = options[props[i]];\n } else {\n newOptions[props[i]] = defaultOptions[props[i]];\n }\n }\n return newOptions;\n};\n\n/**\n * Check if a tag name should be treated as array\n *\n * @param tagName the node tagname\n * @param arrayMode the array mode option\n * @param parentTagName the parent tag name\n * @returns {boolean} true if node should be parsed as array\n */\nexports.isTagNameInArrayMode = function (tagName, arrayMode, parentTagName) {\n if (arrayMode === false) {\n return false;\n } else if (arrayMode instanceof RegExp) {\n return arrayMode.test(tagName);\n } else if (typeof arrayMode === 'function') {\n return !!arrayMode(tagName, parentTagName);\n }\n\n return arrayMode === \"strict\";\n}\n\nexports.isName = isName;\nexports.getAllMatches = getAllMatches;\nexports.nameRegexp = nameRegexp;\n","'use strict';\n\nconst util = require('./util');\n\nconst defaultOptions = {\n allowBooleanAttributes: false, //A tag can have attributes without any value\n};\n\nconst props = ['allowBooleanAttributes'];\n\n//const tagsPattern = new RegExp(\"<\\\\/?([\\\\w:\\\\-_\\.]+)\\\\s*\\/?>\",\"g\");\nexports.validate = function (xmlData, options) {\n options = util.buildOptions(options, defaultOptions, props);\n\n //xmlData = xmlData.replace(/(\\r\\n|\\n|\\r)/gm,\"\");//make it single line\n //xmlData = xmlData.replace(/(^\\s*<\\?xml.*?\\?>)/g,\"\");//Remove XML starting tag\n //xmlData = xmlData.replace(/()/g,\"\");//Remove DOCTYPE\n const tags = [];\n let tagFound = false;\n\n //indicates that the root tag has been closed (aka. depth 0 has been reached)\n let reachedRoot = false;\n\n if (xmlData[0] === '\\ufeff') {\n // check for byte order mark (BOM)\n xmlData = xmlData.substr(1);\n }\n\n for (let i = 0; i < xmlData.length; i++) {\n\n if (xmlData[i] === '<' && xmlData[i+1] === '?') {\n i+=2;\n i = readPI(xmlData,i);\n if (i.err) return i;\n }else if (xmlData[i] === '<') {\n //starting of tag\n //read until you reach to '>' avoiding any '>' in attribute value\n\n i++;\n \n if (xmlData[i] === '!') {\n i = readCommentAndCDATA(xmlData, i);\n continue;\n } else {\n let closingTag = false;\n if (xmlData[i] === '/') {\n //closing tag\n closingTag = true;\n i++;\n }\n //read tagname\n let tagName = '';\n for (; i < xmlData.length &&\n xmlData[i] !== '>' &&\n xmlData[i] !== ' ' &&\n xmlData[i] !== '\\t' &&\n xmlData[i] !== '\\n' &&\n xmlData[i] !== '\\r'; i++\n ) {\n tagName += xmlData[i];\n }\n tagName = tagName.trim();\n //console.log(tagName);\n\n if (tagName[tagName.length - 1] === '/') {\n //self closing tag without attributes\n tagName = tagName.substring(0, tagName.length - 1);\n //continue;\n i--;\n }\n if (!validateTagName(tagName)) {\n let msg;\n if (tagName.trim().length === 0) {\n msg = \"There is an unnecessary space between tag name and backward slash ' 0) {\n return getErrorObject('InvalidTag', \"Closing tag '\"+tagName+\"' can't have attributes or invalid starting.\", getLineNumberForPosition(xmlData, i));\n } else {\n const otg = tags.pop();\n if (tagName !== otg) {\n return getErrorObject('InvalidTag', \"Closing tag '\"+otg+\"' is expected inplace of '\"+tagName+\"'.\", getLineNumberForPosition(xmlData, i));\n }\n\n //when there are no more tags, we reached the root level.\n if (tags.length == 0) {\n reachedRoot = true;\n }\n }\n } else {\n const isValid = validateAttributeString(attrStr, options);\n if (isValid !== true) {\n //the result from the nested function returns the position of the error within the attribute\n //in order to get the 'true' error line, we need to calculate the position where the attribute begins (i - attrStr.length) and then add the position within the attribute\n //this gives us the absolute index in the entire xml, which we can use to find the line at last\n return getErrorObject(isValid.err.code, isValid.err.msg, getLineNumberForPosition(xmlData, i - attrStr.length + isValid.err.line));\n }\n\n //if the root level has been reached before ...\n if (reachedRoot === true) {\n return getErrorObject('InvalidXml', 'Multiple possible root nodes found.', getLineNumberForPosition(xmlData, i));\n } else {\n tags.push(tagName);\n }\n tagFound = true;\n }\n\n //skip tag text value\n //It may include comments and CDATA value\n for (i++; i < xmlData.length; i++) {\n if (xmlData[i] === '<') {\n if (xmlData[i + 1] === '!') {\n //comment or CADATA\n i++;\n i = readCommentAndCDATA(xmlData, i);\n continue;\n } else if (xmlData[i+1] === '?') {\n i = readPI(xmlData, ++i);\n if (i.err) return i;\n } else{\n break;\n }\n } else if (xmlData[i] === '&') {\n const afterAmp = validateAmpersand(xmlData, i);\n if (afterAmp == -1)\n return getErrorObject('InvalidChar', \"char '&' is not expected.\", getLineNumberForPosition(xmlData, i));\n i = afterAmp;\n }\n } //end of reading tag text value\n if (xmlData[i] === '<') {\n i--;\n }\n }\n } else {\n if (xmlData[i] === ' ' || xmlData[i] === '\\t' || xmlData[i] === '\\n' || xmlData[i] === '\\r') {\n continue;\n }\n return getErrorObject('InvalidChar', \"char '\"+xmlData[i]+\"' is not expected.\", getLineNumberForPosition(xmlData, i));\n }\n }\n\n if (!tagFound) {\n return getErrorObject('InvalidXml', 'Start tag expected.', 1);\n } else if (tags.length > 0) {\n return getErrorObject('InvalidXml', \"Invalid '\"+JSON.stringify(tags, null, 4).replace(/\\r?\\n/g, '')+\"' found.\", 1);\n }\n\n return true;\n};\n\n/**\n * Read Processing insstructions and skip\n * @param {*} xmlData\n * @param {*} i\n */\nfunction readPI(xmlData, i) {\n var start = i;\n for (; i < xmlData.length; i++) {\n if (xmlData[i] == '?' || xmlData[i] == ' ') {\n //tagname\n var tagname = xmlData.substr(start, i - start);\n if (i > 5 && tagname === 'xml') {\n return getErrorObject('InvalidXml', 'XML declaration allowed only at the start of the document.', getLineNumberForPosition(xmlData, i));\n } else if (xmlData[i] == '?' && xmlData[i + 1] == '>') {\n //check if valid attribut string\n i++;\n break;\n } else {\n continue;\n }\n }\n }\n return i;\n}\n\nfunction readCommentAndCDATA(xmlData, i) {\n if (xmlData.length > i + 5 && xmlData[i + 1] === '-' && xmlData[i + 2] === '-') {\n //comment\n for (i += 3; i < xmlData.length; i++) {\n if (xmlData[i] === '-' && xmlData[i + 1] === '-' && xmlData[i + 2] === '>') {\n i += 2;\n break;\n }\n }\n } else if (\n xmlData.length > i + 8 &&\n xmlData[i + 1] === 'D' &&\n xmlData[i + 2] === 'O' &&\n xmlData[i + 3] === 'C' &&\n xmlData[i + 4] === 'T' &&\n xmlData[i + 5] === 'Y' &&\n xmlData[i + 6] === 'P' &&\n xmlData[i + 7] === 'E'\n ) {\n let angleBracketsCount = 1;\n for (i += 8; i < xmlData.length; i++) {\n if (xmlData[i] === '<') {\n angleBracketsCount++;\n } else if (xmlData[i] === '>') {\n angleBracketsCount--;\n if (angleBracketsCount === 0) {\n break;\n }\n }\n }\n } else if (\n xmlData.length > i + 9 &&\n xmlData[i + 1] === '[' &&\n xmlData[i + 2] === 'C' &&\n xmlData[i + 3] === 'D' &&\n xmlData[i + 4] === 'A' &&\n xmlData[i + 5] === 'T' &&\n xmlData[i + 6] === 'A' &&\n xmlData[i + 7] === '['\n ) {\n for (i += 8; i < xmlData.length; i++) {\n if (xmlData[i] === ']' && xmlData[i + 1] === ']' && xmlData[i + 2] === '>') {\n i += 2;\n break;\n }\n }\n }\n\n return i;\n}\n\nvar doubleQuote = '\"';\nvar singleQuote = \"'\";\n\n/**\n * Keep reading xmlData until '<' is found outside the attribute value.\n * @param {string} xmlData\n * @param {number} i\n */\nfunction readAttributeStr(xmlData, i) {\n let attrStr = '';\n let startChar = '';\n let tagClosed = false;\n for (; i < xmlData.length; i++) {\n if (xmlData[i] === doubleQuote || xmlData[i] === singleQuote) {\n if (startChar === '') {\n startChar = xmlData[i];\n } else if (startChar !== xmlData[i]) {\n //if vaue is enclosed with double quote then single quotes are allowed inside the value and vice versa\n continue;\n } else {\n startChar = '';\n }\n } else if (xmlData[i] === '>') {\n if (startChar === '') {\n tagClosed = true;\n break;\n }\n }\n attrStr += xmlData[i];\n }\n if (startChar !== '') {\n return false;\n }\n\n return {\n value: attrStr,\n index: i,\n tagClosed: tagClosed\n };\n}\n\n/**\n * Select all the attributes whether valid or invalid.\n */\nconst validAttrStrRegxp = new RegExp('(\\\\s*)([^\\\\s=]+)(\\\\s*=)?(\\\\s*([\\'\"])(([\\\\s\\\\S])*?)\\\\5)?', 'g');\n\n//attr, =\"sd\", a=\"amit's\", a=\"sd\"b=\"saf\", ab cd=\"\"\n\nfunction validateAttributeString(attrStr, options) {\n //console.log(\"start:\"+attrStr+\":end\");\n\n //if(attrStr.trim().length === 0) return true; //empty string\n\n const matches = util.getAllMatches(attrStr, validAttrStrRegxp);\n const attrNames = {};\n\n for (let i = 0; i < matches.length; i++) {\n if (matches[i][1].length === 0) {\n //nospace before attribute name: a=\"sd\"b=\"saf\"\n return getErrorObject('InvalidAttr', \"Attribute '\"+matches[i][2]+\"' has no space in starting.\", getPositionFromMatch(attrStr, matches[i][0]))\n } else if (matches[i][3] === undefined && !options.allowBooleanAttributes) {\n //independent attribute: ab\n return getErrorObject('InvalidAttr', \"boolean attribute '\"+matches[i][2]+\"' is not allowed.\", getPositionFromMatch(attrStr, matches[i][0]));\n }\n /* else if(matches[i][6] === undefined){//attribute without value: ab=\n return { err: { code:\"InvalidAttr\",msg:\"attribute \" + matches[i][2] + \" has no value assigned.\"}};\n } */\n const attrName = matches[i][2];\n if (!validateAttrName(attrName)) {\n return getErrorObject('InvalidAttr', \"Attribute '\"+attrName+\"' is an invalid name.\", getPositionFromMatch(attrStr, matches[i][0]));\n }\n if (!attrNames.hasOwnProperty(attrName)) {\n //check for duplicate attribute.\n attrNames[attrName] = 1;\n } else {\n return getErrorObject('InvalidAttr', \"Attribute '\"+attrName+\"' is repeated.\", getPositionFromMatch(attrStr, matches[i][0]));\n }\n }\n\n return true;\n}\n\nfunction validateNumberAmpersand(xmlData, i) {\n let re = /\\d/;\n if (xmlData[i] === 'x') {\n i++;\n re = /[\\da-fA-F]/;\n }\n for (; i < xmlData.length; i++) {\n if (xmlData[i] === ';')\n return i;\n if (!xmlData[i].match(re))\n break;\n }\n return -1;\n}\n\nfunction validateAmpersand(xmlData, i) {\n // https://www.w3.org/TR/xml/#dt-charref\n i++;\n if (xmlData[i] === ';')\n return -1;\n if (xmlData[i] === '#') {\n i++;\n return validateNumberAmpersand(xmlData, i);\n }\n let count = 0;\n for (; i < xmlData.length; i++, count++) {\n if (xmlData[i].match(/\\w/) && count < 20)\n continue;\n if (xmlData[i] === ';')\n break;\n return -1;\n }\n return i;\n}\n\nfunction getErrorObject(code, message, lineNumber) {\n return {\n err: {\n code: code,\n msg: message,\n line: lineNumber,\n },\n };\n}\n\nfunction validateAttrName(attrName) {\n return util.isName(attrName);\n}\n\n// const startsWithXML = /^xml/i;\n\nfunction validateTagName(tagname) {\n return util.isName(tagname) /* && !tagname.match(startsWithXML) */;\n}\n\n//this function returns the line number for the character at the given index\nfunction getLineNumberForPosition(xmlData, index) {\n var lines = xmlData.substring(0, index).split(/\\r?\\n/);\n return lines.length;\n}\n\n//this function returns the position of the last character of match within attrStr\nfunction getPositionFromMatch(attrStr, match) {\n return attrStr.indexOf(match) + match.length;\n}\n","'use strict';\n\nmodule.exports = function(tagname, parent, val) {\n this.tagname = tagname;\n this.parent = parent;\n this.child = {}; //child tags\n this.attrsMap = {}; //attributes map\n this.val = val; //text only\n this.addChild = function(child) {\n if (Array.isArray(this.child[child.tagname])) {\n //already presents\n this.child[child.tagname].push(child);\n } else {\n this.child[child.tagname] = [child];\n }\n };\n};\n","'use strict';\n\nconst util = require('./util');\nconst buildOptions = require('./util').buildOptions;\nconst xmlNode = require('./xmlNode');\nconst regx =\n '<((!\\\\[CDATA\\\\[([\\\\s\\\\S]*?)(]]>))|((NAME:)?(NAME))([^>]*)>|((\\\\/)(NAME)\\\\s*>))([^<]*)'\n .replace(/NAME/g, util.nameRegexp);\n\n//const tagsRegx = new RegExp(\"<(\\\\/?[\\\\w:\\\\-\\._]+)([^>]*)>(\\\\s*\"+cdataRegx+\")*([^<]+)?\",\"g\");\n//const tagsRegx = new RegExp(\"<(\\\\/?)((\\\\w*:)?([\\\\w:\\\\-\\._]+))([^>]*)>([^<]*)(\"+cdataRegx+\"([^<]*))*([^<]+)?\",\"g\");\n\n//polyfill\nif (!Number.parseInt && window.parseInt) {\n Number.parseInt = window.parseInt;\n}\nif (!Number.parseFloat && window.parseFloat) {\n Number.parseFloat = window.parseFloat;\n}\n\nconst defaultOptions = {\n attributeNamePrefix: '@_',\n attrNodeName: false,\n textNodeName: '#text',\n ignoreAttributes: true,\n ignoreNameSpace: false,\n allowBooleanAttributes: false, //a tag can have attributes without any value\n //ignoreRootElement : false,\n parseNodeValue: true,\n parseAttributeValue: false,\n arrayMode: false,\n trimValues: true, //Trim string values of tag and attributes\n cdataTagName: false,\n cdataPositionChar: '\\\\c',\n tagValueProcessor: function(a, tagName) {\n return a;\n },\n attrValueProcessor: function(a, attrName) {\n return a;\n },\n stopNodes: []\n //decodeStrict: false,\n};\n\nexports.defaultOptions = defaultOptions;\n\nconst props = [\n 'attributeNamePrefix',\n 'attrNodeName',\n 'textNodeName',\n 'ignoreAttributes',\n 'ignoreNameSpace',\n 'allowBooleanAttributes',\n 'parseNodeValue',\n 'parseAttributeValue',\n 'arrayMode',\n 'trimValues',\n 'cdataTagName',\n 'cdataPositionChar',\n 'tagValueProcessor',\n 'attrValueProcessor',\n 'parseTrueNumberOnly',\n 'stopNodes'\n];\nexports.props = props;\n\n/**\n * Trim -> valueProcessor -> parse value\n * @param {string} tagName\n * @param {string} val\n * @param {object} options\n */\nfunction processTagValue(tagName, val, options) {\n if (val) {\n if (options.trimValues) {\n val = val.trim();\n }\n val = options.tagValueProcessor(val, tagName);\n val = parseValue(val, options.parseNodeValue, options.parseTrueNumberOnly);\n }\n\n return val;\n}\n\nfunction resolveNameSpace(tagname, options) {\n if (options.ignoreNameSpace) {\n const tags = tagname.split(':');\n const prefix = tagname.charAt(0) === '/' ? '/' : '';\n if (tags[0] === 'xmlns') {\n return '';\n }\n if (tags.length === 2) {\n tagname = prefix + tags[1];\n }\n }\n return tagname;\n}\n\nfunction parseValue(val, shouldParse, parseTrueNumberOnly) {\n if (shouldParse && typeof val === 'string') {\n let parsed;\n if (val.trim() === '' || isNaN(val)) {\n parsed = val === 'true' ? true : val === 'false' ? false : val;\n } else {\n if (val.indexOf('0x') !== -1) {\n //support hexa decimal\n parsed = Number.parseInt(val, 16);\n } else if (val.indexOf('.') !== -1) {\n parsed = Number.parseFloat(val);\n val = val.replace(/\\.?0+$/, \"\");\n } else {\n parsed = Number.parseInt(val, 10);\n }\n if (parseTrueNumberOnly) {\n parsed = String(parsed) === val ? parsed : val;\n }\n }\n return parsed;\n } else {\n if (util.isExist(val)) {\n return val;\n } else {\n return '';\n }\n }\n}\n\n//TODO: change regex to capture NS\n//const attrsRegx = new RegExp(\"([\\\\w\\\\-\\\\.\\\\:]+)\\\\s*=\\\\s*(['\\\"])((.|\\n)*?)\\\\2\",\"gm\");\nconst attrsRegx = new RegExp('([^\\\\s=]+)\\\\s*(=\\\\s*([\\'\"])(.*?)\\\\3)?', 'g');\n\nfunction buildAttributesMap(attrStr, options) {\n if (!options.ignoreAttributes && typeof attrStr === 'string') {\n attrStr = attrStr.replace(/\\r?\\n/g, ' ');\n //attrStr = attrStr || attrStr.trim();\n\n const matches = util.getAllMatches(attrStr, attrsRegx);\n const len = matches.length; //don't make it inline\n const attrs = {};\n for (let i = 0; i < len; i++) {\n const attrName = resolveNameSpace(matches[i][1], options);\n if (attrName.length) {\n if (matches[i][4] !== undefined) {\n if (options.trimValues) {\n matches[i][4] = matches[i][4].trim();\n }\n matches[i][4] = options.attrValueProcessor(matches[i][4], attrName);\n attrs[options.attributeNamePrefix + attrName] = parseValue(\n matches[i][4],\n options.parseAttributeValue,\n options.parseTrueNumberOnly\n );\n } else if (options.allowBooleanAttributes) {\n attrs[options.attributeNamePrefix + attrName] = true;\n }\n }\n }\n if (!Object.keys(attrs).length) {\n return;\n }\n if (options.attrNodeName) {\n const attrCollection = {};\n attrCollection[options.attrNodeName] = attrs;\n return attrCollection;\n }\n return attrs;\n }\n}\n\nconst getTraversalObj = function(xmlData, options) {\n xmlData = xmlData.replace(/\\r\\n?/g, \"\\n\");\n options = buildOptions(options, defaultOptions, props);\n const xmlObj = new xmlNode('!xml');\n let currentNode = xmlObj;\n let textData = \"\";\n\n//function match(xmlData){\n for(let i=0; i< xmlData.length; i++){\n const ch = xmlData[i];\n if(ch === '<'){\n if( xmlData[i+1] === '/') {//Closing Tag\n const closeIndex = findClosingIndex(xmlData, \">\", i, \"Closing Tag is not closed.\")\n let tagName = xmlData.substring(i+2,closeIndex).trim();\n\n if(options.ignoreNameSpace){\n const colonIndex = tagName.indexOf(\":\");\n if(colonIndex !== -1){\n tagName = tagName.substr(colonIndex+1);\n }\n }\n\n /* if (currentNode.parent) {\n currentNode.parent.val = util.getValue(currentNode.parent.val) + '' + processTagValue2(tagName, textData , options);\n } */\n if(currentNode){\n if(currentNode.val){\n currentNode.val = util.getValue(currentNode.val) + '' + processTagValue(tagName, textData , options);\n }else{\n currentNode.val = processTagValue(tagName, textData , options);\n }\n }\n\n if (options.stopNodes.length && options.stopNodes.includes(currentNode.tagname)) {\n currentNode.child = []\n if (currentNode.attrsMap == undefined) { currentNode.attrsMap = {}}\n currentNode.val = xmlData.substr(currentNode.startIndex + 1, i - currentNode.startIndex - 1)\n }\n currentNode = currentNode.parent;\n textData = \"\";\n i = closeIndex;\n } else if( xmlData[i+1] === '?') {\n i = findClosingIndex(xmlData, \"?>\", i, \"Pi Tag is not closed.\")\n } else if(xmlData.substr(i + 1, 3) === '!--') {\n i = findClosingIndex(xmlData, \"-->\", i, \"Comment is not closed.\")\n } else if( xmlData.substr(i + 1, 2) === '!D') {\n const closeIndex = findClosingIndex(xmlData, \">\", i, \"DOCTYPE is not closed.\")\n const tagExp = xmlData.substring(i, closeIndex);\n if(tagExp.indexOf(\"[\") >= 0){\n i = xmlData.indexOf(\"]>\", i) + 1;\n }else{\n i = closeIndex;\n }\n }else if(xmlData.substr(i + 1, 2) === '![') {\n const closeIndex = findClosingIndex(xmlData, \"]]>\", i, \"CDATA is not closed.\") - 2\n const tagExp = xmlData.substring(i + 9,closeIndex);\n\n //considerations\n //1. CDATA will always have parent node\n //2. A tag with CDATA is not a leaf node so it's value would be string type.\n if(textData){\n currentNode.val = util.getValue(currentNode.val) + '' + processTagValue(currentNode.tagname, textData , options);\n textData = \"\";\n }\n\n if (options.cdataTagName) {\n //add cdata node\n const childNode = new xmlNode(options.cdataTagName, currentNode, tagExp);\n currentNode.addChild(childNode);\n //for backtracking\n currentNode.val = util.getValue(currentNode.val) + options.cdataPositionChar;\n //add rest value to parent node\n if (tagExp) {\n childNode.val = tagExp;\n }\n } else {\n currentNode.val = (currentNode.val || '') + (tagExp || '');\n }\n\n i = closeIndex + 2;\n }else {//Opening tag\n const result = closingIndexForOpeningTag(xmlData, i+1)\n let tagExp = result.data;\n const closeIndex = result.index;\n const separatorIndex = tagExp.indexOf(\" \");\n let tagName = tagExp;\n if(separatorIndex !== -1){\n tagName = tagExp.substr(0, separatorIndex).replace(/\\s\\s*$/, '');\n tagExp = tagExp.substr(separatorIndex + 1);\n }\n\n if(options.ignoreNameSpace){\n const colonIndex = tagName.indexOf(\":\");\n if(colonIndex !== -1){\n tagName = tagName.substr(colonIndex+1);\n }\n }\n\n //save text to parent node\n if (currentNode && textData) {\n if(currentNode.tagname !== '!xml'){\n currentNode.val = util.getValue(currentNode.val) + '' + processTagValue( currentNode.tagname, textData, options);\n }\n }\n\n if(tagExp.length > 0 && tagExp.lastIndexOf(\"/\") === tagExp.length - 1){//selfClosing tag\n\n if(tagName[tagName.length - 1] === \"/\"){ //remove trailing '/'\n tagName = tagName.substr(0, tagName.length - 1);\n tagExp = tagName;\n }else{\n tagExp = tagExp.substr(0, tagExp.length - 1);\n }\n\n const childNode = new xmlNode(tagName, currentNode, '');\n if(tagName !== tagExp){\n childNode.attrsMap = buildAttributesMap(tagExp, options);\n }\n currentNode.addChild(childNode);\n }else{//opening tag\n\n const childNode = new xmlNode( tagName, currentNode );\n if (options.stopNodes.length && options.stopNodes.includes(childNode.tagname)) {\n childNode.startIndex=closeIndex;\n }\n if(tagName !== tagExp){\n childNode.attrsMap = buildAttributesMap(tagExp, options);\n }\n currentNode.addChild(childNode);\n currentNode = childNode;\n }\n textData = \"\";\n i = closeIndex;\n }\n }else{\n textData += xmlData[i];\n }\n }\n return xmlObj;\n}\n\nfunction closingIndexForOpeningTag(data, i){\n let attrBoundary;\n let tagExp = \"\";\n for (let index = i; index < data.length; index++) {\n let ch = data[index];\n if (attrBoundary) {\n if (ch === attrBoundary) attrBoundary = \"\";//reset\n } else if (ch === '\"' || ch === \"'\") {\n attrBoundary = ch;\n } else if (ch === '>') {\n return {\n data: tagExp,\n index: index\n }\n } else if (ch === '\\t') {\n ch = \" \"\n }\n tagExp += ch;\n }\n}\n\nfunction findClosingIndex(xmlData, str, i, errMsg){\n const closingIndex = xmlData.indexOf(str, i);\n if(closingIndex === -1){\n throw new Error(errMsg)\n }else{\n return closingIndex + str.length - 1;\n }\n}\n\nexports.getTraversalObj = getTraversalObj;\n","/*! https://mths.be/he v1.2.0 by @mathias | MIT license */\n;(function(root) {\n\n\t// Detect free variables `exports`.\n\tvar freeExports = typeof exports == 'object' && exports;\n\n\t// Detect free variable `module`.\n\tvar freeModule = typeof module == 'object' && module &&\n\t\tmodule.exports == freeExports && module;\n\n\t// Detect free variable `global`, from Node.js or Browserified code,\n\t// and use it as `root`.\n\tvar freeGlobal = typeof global == 'object' && global;\n\tif (freeGlobal.global === freeGlobal || freeGlobal.window === freeGlobal) {\n\t\troot = freeGlobal;\n\t}\n\n\t/*--------------------------------------------------------------------------*/\n\n\t// All astral symbols.\n\tvar regexAstralSymbols = /[\\uD800-\\uDBFF][\\uDC00-\\uDFFF]/g;\n\t// All ASCII symbols (not just printable ASCII) except those listed in the\n\t// first column of the overrides table.\n\t// https://html.spec.whatwg.org/multipage/syntax.html#table-charref-overrides\n\tvar regexAsciiWhitelist = /[\\x01-\\x7F]/g;\n\t// All BMP symbols that are not ASCII newlines, printable ASCII symbols, or\n\t// code points listed in the first column of the overrides table on\n\t// https://html.spec.whatwg.org/multipage/syntax.html#table-charref-overrides.\n\tvar regexBmpWhitelist = /[\\x01-\\t\\x0B\\f\\x0E-\\x1F\\x7F\\x81\\x8D\\x8F\\x90\\x9D\\xA0-\\uFFFF]/g;\n\n\tvar regexEncodeNonAscii = /<\\u20D2|=\\u20E5|>\\u20D2|\\u205F\\u200A|\\u219D\\u0338|\\u2202\\u0338|\\u2220\\u20D2|\\u2229\\uFE00|\\u222A\\uFE00|\\u223C\\u20D2|\\u223D\\u0331|\\u223E\\u0333|\\u2242\\u0338|\\u224B\\u0338|\\u224D\\u20D2|\\u224E\\u0338|\\u224F\\u0338|\\u2250\\u0338|\\u2261\\u20E5|\\u2264\\u20D2|\\u2265\\u20D2|\\u2266\\u0338|\\u2267\\u0338|\\u2268\\uFE00|\\u2269\\uFE00|\\u226A\\u0338|\\u226A\\u20D2|\\u226B\\u0338|\\u226B\\u20D2|\\u227F\\u0338|\\u2282\\u20D2|\\u2283\\u20D2|\\u228A\\uFE00|\\u228B\\uFE00|\\u228F\\u0338|\\u2290\\u0338|\\u2293\\uFE00|\\u2294\\uFE00|\\u22B4\\u20D2|\\u22B5\\u20D2|\\u22D8\\u0338|\\u22D9\\u0338|\\u22DA\\uFE00|\\u22DB\\uFE00|\\u22F5\\u0338|\\u22F9\\u0338|\\u2933\\u0338|\\u29CF\\u0338|\\u29D0\\u0338|\\u2A6D\\u0338|\\u2A70\\u0338|\\u2A7D\\u0338|\\u2A7E\\u0338|\\u2AA1\\u0338|\\u2AA2\\u0338|\\u2AAC\\uFE00|\\u2AAD\\uFE00|\\u2AAF\\u0338|\\u2AB0\\u0338|\\u2AC5\\u0338|\\u2AC6\\u0338|\\u2ACB\\uFE00|\\u2ACC\\uFE00|\\u2AFD\\u20E5|[\\xA0-\\u0113\\u0116-\\u0122\\u0124-\\u012B\\u012E-\\u014D\\u0150-\\u017E\\u0192\\u01B5\\u01F5\\u0237\\u02C6\\u02C7\\u02D8-\\u02DD\\u0311\\u0391-\\u03A1\\u03A3-\\u03A9\\u03B1-\\u03C9\\u03D1\\u03D2\\u03D5\\u03D6\\u03DC\\u03DD\\u03F0\\u03F1\\u03F5\\u03F6\\u0401-\\u040C\\u040E-\\u044F\\u0451-\\u045C\\u045E\\u045F\\u2002-\\u2005\\u2007-\\u2010\\u2013-\\u2016\\u2018-\\u201A\\u201C-\\u201E\\u2020-\\u2022\\u2025\\u2026\\u2030-\\u2035\\u2039\\u203A\\u203E\\u2041\\u2043\\u2044\\u204F\\u2057\\u205F-\\u2063\\u20AC\\u20DB\\u20DC\\u2102\\u2105\\u210A-\\u2113\\u2115-\\u211E\\u2122\\u2124\\u2127-\\u2129\\u212C\\u212D\\u212F-\\u2131\\u2133-\\u2138\\u2145-\\u2148\\u2153-\\u215E\\u2190-\\u219B\\u219D-\\u21A7\\u21A9-\\u21AE\\u21B0-\\u21B3\\u21B5-\\u21B7\\u21BA-\\u21DB\\u21DD\\u21E4\\u21E5\\u21F5\\u21FD-\\u2205\\u2207-\\u2209\\u220B\\u220C\\u220F-\\u2214\\u2216-\\u2218\\u221A\\u221D-\\u2238\\u223A-\\u2257\\u2259\\u225A\\u225C\\u225F-\\u2262\\u2264-\\u228B\\u228D-\\u229B\\u229D-\\u22A5\\u22A7-\\u22B0\\u22B2-\\u22BB\\u22BD-\\u22DB\\u22DE-\\u22E3\\u22E6-\\u22F7\\u22F9-\\u22FE\\u2305\\u2306\\u2308-\\u2310\\u2312\\u2313\\u2315\\u2316\\u231C-\\u231F\\u2322\\u2323\\u232D\\u232E\\u2336\\u233D\\u233F\\u237C\\u23B0\\u23B1\\u23B4-\\u23B6\\u23DC-\\u23DF\\u23E2\\u23E7\\u2423\\u24C8\\u2500\\u2502\\u250C\\u2510\\u2514\\u2518\\u251C\\u2524\\u252C\\u2534\\u253C\\u2550-\\u256C\\u2580\\u2584\\u2588\\u2591-\\u2593\\u25A1\\u25AA\\u25AB\\u25AD\\u25AE\\u25B1\\u25B3-\\u25B5\\u25B8\\u25B9\\u25BD-\\u25BF\\u25C2\\u25C3\\u25CA\\u25CB\\u25EC\\u25EF\\u25F8-\\u25FC\\u2605\\u2606\\u260E\\u2640\\u2642\\u2660\\u2663\\u2665\\u2666\\u266A\\u266D-\\u266F\\u2713\\u2717\\u2720\\u2736\\u2758\\u2772\\u2773\\u27C8\\u27C9\\u27E6-\\u27ED\\u27F5-\\u27FA\\u27FC\\u27FF\\u2902-\\u2905\\u290C-\\u2913\\u2916\\u2919-\\u2920\\u2923-\\u292A\\u2933\\u2935-\\u2939\\u293C\\u293D\\u2945\\u2948-\\u294B\\u294E-\\u2976\\u2978\\u2979\\u297B-\\u297F\\u2985\\u2986\\u298B-\\u2996\\u299A\\u299C\\u299D\\u29A4-\\u29B7\\u29B9\\u29BB\\u29BC\\u29BE-\\u29C5\\u29C9\\u29CD-\\u29D0\\u29DC-\\u29DE\\u29E3-\\u29E5\\u29EB\\u29F4\\u29F6\\u2A00-\\u2A02\\u2A04\\u2A06\\u2A0C\\u2A0D\\u2A10-\\u2A17\\u2A22-\\u2A27\\u2A29\\u2A2A\\u2A2D-\\u2A31\\u2A33-\\u2A3C\\u2A3F\\u2A40\\u2A42-\\u2A4D\\u2A50\\u2A53-\\u2A58\\u2A5A-\\u2A5D\\u2A5F\\u2A66\\u2A6A\\u2A6D-\\u2A75\\u2A77-\\u2A9A\\u2A9D-\\u2AA2\\u2AA4-\\u2AB0\\u2AB3-\\u2AC8\\u2ACB\\u2ACC\\u2ACF-\\u2ADB\\u2AE4\\u2AE6-\\u2AE9\\u2AEB-\\u2AF3\\u2AFD\\uFB00-\\uFB04]|\\uD835[\\uDC9C\\uDC9E\\uDC9F\\uDCA2\\uDCA5\\uDCA6\\uDCA9-\\uDCAC\\uDCAE-\\uDCB9\\uDCBB\\uDCBD-\\uDCC3\\uDCC5-\\uDCCF\\uDD04\\uDD05\\uDD07-\\uDD0A\\uDD0D-\\uDD14\\uDD16-\\uDD1C\\uDD1E-\\uDD39\\uDD3B-\\uDD3E\\uDD40-\\uDD44\\uDD46\\uDD4A-\\uDD50\\uDD52-\\uDD6B]/g;\n\tvar encodeMap = {'\\xAD':'shy','\\u200C':'zwnj','\\u200D':'zwj','\\u200E':'lrm','\\u2063':'ic','\\u2062':'it','\\u2061':'af','\\u200F':'rlm','\\u200B':'ZeroWidthSpace','\\u2060':'NoBreak','\\u0311':'DownBreve','\\u20DB':'tdot','\\u20DC':'DotDot','\\t':'Tab','\\n':'NewLine','\\u2008':'puncsp','\\u205F':'MediumSpace','\\u2009':'thinsp','\\u200A':'hairsp','\\u2004':'emsp13','\\u2002':'ensp','\\u2005':'emsp14','\\u2003':'emsp','\\u2007':'numsp','\\xA0':'nbsp','\\u205F\\u200A':'ThickSpace','\\u203E':'oline','_':'lowbar','\\u2010':'dash','\\u2013':'ndash','\\u2014':'mdash','\\u2015':'horbar',',':'comma',';':'semi','\\u204F':'bsemi',':':'colon','\\u2A74':'Colone','!':'excl','\\xA1':'iexcl','?':'quest','\\xBF':'iquest','.':'period','\\u2025':'nldr','\\u2026':'mldr','\\xB7':'middot','\\'':'apos','\\u2018':'lsquo','\\u2019':'rsquo','\\u201A':'sbquo','\\u2039':'lsaquo','\\u203A':'rsaquo','\"':'quot','\\u201C':'ldquo','\\u201D':'rdquo','\\u201E':'bdquo','\\xAB':'laquo','\\xBB':'raquo','(':'lpar',')':'rpar','[':'lsqb',']':'rsqb','{':'lcub','}':'rcub','\\u2308':'lceil','\\u2309':'rceil','\\u230A':'lfloor','\\u230B':'rfloor','\\u2985':'lopar','\\u2986':'ropar','\\u298B':'lbrke','\\u298C':'rbrke','\\u298D':'lbrkslu','\\u298E':'rbrksld','\\u298F':'lbrksld','\\u2990':'rbrkslu','\\u2991':'langd','\\u2992':'rangd','\\u2993':'lparlt','\\u2994':'rpargt','\\u2995':'gtlPar','\\u2996':'ltrPar','\\u27E6':'lobrk','\\u27E7':'robrk','\\u27E8':'lang','\\u27E9':'rang','\\u27EA':'Lang','\\u27EB':'Rang','\\u27EC':'loang','\\u27ED':'roang','\\u2772':'lbbrk','\\u2773':'rbbrk','\\u2016':'Vert','\\xA7':'sect','\\xB6':'para','@':'commat','*':'ast','/':'sol','undefined':null,'&':'amp','#':'num','%':'percnt','\\u2030':'permil','\\u2031':'pertenk','\\u2020':'dagger','\\u2021':'Dagger','\\u2022':'bull','\\u2043':'hybull','\\u2032':'prime','\\u2033':'Prime','\\u2034':'tprime','\\u2057':'qprime','\\u2035':'bprime','\\u2041':'caret','`':'grave','\\xB4':'acute','\\u02DC':'tilde','^':'Hat','\\xAF':'macr','\\u02D8':'breve','\\u02D9':'dot','\\xA8':'die','\\u02DA':'ring','\\u02DD':'dblac','\\xB8':'cedil','\\u02DB':'ogon','\\u02C6':'circ','\\u02C7':'caron','\\xB0':'deg','\\xA9':'copy','\\xAE':'reg','\\u2117':'copysr','\\u2118':'wp','\\u211E':'rx','\\u2127':'mho','\\u2129':'iiota','\\u2190':'larr','\\u219A':'nlarr','\\u2192':'rarr','\\u219B':'nrarr','\\u2191':'uarr','\\u2193':'darr','\\u2194':'harr','\\u21AE':'nharr','\\u2195':'varr','\\u2196':'nwarr','\\u2197':'nearr','\\u2198':'searr','\\u2199':'swarr','\\u219D':'rarrw','\\u219D\\u0338':'nrarrw','\\u219E':'Larr','\\u219F':'Uarr','\\u21A0':'Rarr','\\u21A1':'Darr','\\u21A2':'larrtl','\\u21A3':'rarrtl','\\u21A4':'mapstoleft','\\u21A5':'mapstoup','\\u21A6':'map','\\u21A7':'mapstodown','\\u21A9':'larrhk','\\u21AA':'rarrhk','\\u21AB':'larrlp','\\u21AC':'rarrlp','\\u21AD':'harrw','\\u21B0':'lsh','\\u21B1':'rsh','\\u21B2':'ldsh','\\u21B3':'rdsh','\\u21B5':'crarr','\\u21B6':'cularr','\\u21B7':'curarr','\\u21BA':'olarr','\\u21BB':'orarr','\\u21BC':'lharu','\\u21BD':'lhard','\\u21BE':'uharr','\\u21BF':'uharl','\\u21C0':'rharu','\\u21C1':'rhard','\\u21C2':'dharr','\\u21C3':'dharl','\\u21C4':'rlarr','\\u21C5':'udarr','\\u21C6':'lrarr','\\u21C7':'llarr','\\u21C8':'uuarr','\\u21C9':'rrarr','\\u21CA':'ddarr','\\u21CB':'lrhar','\\u21CC':'rlhar','\\u21D0':'lArr','\\u21CD':'nlArr','\\u21D1':'uArr','\\u21D2':'rArr','\\u21CF':'nrArr','\\u21D3':'dArr','\\u21D4':'iff','\\u21CE':'nhArr','\\u21D5':'vArr','\\u21D6':'nwArr','\\u21D7':'neArr','\\u21D8':'seArr','\\u21D9':'swArr','\\u21DA':'lAarr','\\u21DB':'rAarr','\\u21DD':'zigrarr','\\u21E4':'larrb','\\u21E5':'rarrb','\\u21F5':'duarr','\\u21FD':'loarr','\\u21FE':'roarr','\\u21FF':'hoarr','\\u2200':'forall','\\u2201':'comp','\\u2202':'part','\\u2202\\u0338':'npart','\\u2203':'exist','\\u2204':'nexist','\\u2205':'empty','\\u2207':'Del','\\u2208':'in','\\u2209':'notin','\\u220B':'ni','\\u220C':'notni','\\u03F6':'bepsi','\\u220F':'prod','\\u2210':'coprod','\\u2211':'sum','+':'plus','\\xB1':'pm','\\xF7':'div','\\xD7':'times','<':'lt','\\u226E':'nlt','<\\u20D2':'nvlt','=':'equals','\\u2260':'ne','=\\u20E5':'bne','\\u2A75':'Equal','>':'gt','\\u226F':'ngt','>\\u20D2':'nvgt','\\xAC':'not','|':'vert','\\xA6':'brvbar','\\u2212':'minus','\\u2213':'mp','\\u2214':'plusdo','\\u2044':'frasl','\\u2216':'setmn','\\u2217':'lowast','\\u2218':'compfn','\\u221A':'Sqrt','\\u221D':'prop','\\u221E':'infin','\\u221F':'angrt','\\u2220':'ang','\\u2220\\u20D2':'nang','\\u2221':'angmsd','\\u2222':'angsph','\\u2223':'mid','\\u2224':'nmid','\\u2225':'par','\\u2226':'npar','\\u2227':'and','\\u2228':'or','\\u2229':'cap','\\u2229\\uFE00':'caps','\\u222A':'cup','\\u222A\\uFE00':'cups','\\u222B':'int','\\u222C':'Int','\\u222D':'tint','\\u2A0C':'qint','\\u222E':'oint','\\u222F':'Conint','\\u2230':'Cconint','\\u2231':'cwint','\\u2232':'cwconint','\\u2233':'awconint','\\u2234':'there4','\\u2235':'becaus','\\u2236':'ratio','\\u2237':'Colon','\\u2238':'minusd','\\u223A':'mDDot','\\u223B':'homtht','\\u223C':'sim','\\u2241':'nsim','\\u223C\\u20D2':'nvsim','\\u223D':'bsim','\\u223D\\u0331':'race','\\u223E':'ac','\\u223E\\u0333':'acE','\\u223F':'acd','\\u2240':'wr','\\u2242':'esim','\\u2242\\u0338':'nesim','\\u2243':'sime','\\u2244':'nsime','\\u2245':'cong','\\u2247':'ncong','\\u2246':'simne','\\u2248':'ap','\\u2249':'nap','\\u224A':'ape','\\u224B':'apid','\\u224B\\u0338':'napid','\\u224C':'bcong','\\u224D':'CupCap','\\u226D':'NotCupCap','\\u224D\\u20D2':'nvap','\\u224E':'bump','\\u224E\\u0338':'nbump','\\u224F':'bumpe','\\u224F\\u0338':'nbumpe','\\u2250':'doteq','\\u2250\\u0338':'nedot','\\u2251':'eDot','\\u2252':'efDot','\\u2253':'erDot','\\u2254':'colone','\\u2255':'ecolon','\\u2256':'ecir','\\u2257':'cire','\\u2259':'wedgeq','\\u225A':'veeeq','\\u225C':'trie','\\u225F':'equest','\\u2261':'equiv','\\u2262':'nequiv','\\u2261\\u20E5':'bnequiv','\\u2264':'le','\\u2270':'nle','\\u2264\\u20D2':'nvle','\\u2265':'ge','\\u2271':'nge','\\u2265\\u20D2':'nvge','\\u2266':'lE','\\u2266\\u0338':'nlE','\\u2267':'gE','\\u2267\\u0338':'ngE','\\u2268\\uFE00':'lvnE','\\u2268':'lnE','\\u2269':'gnE','\\u2269\\uFE00':'gvnE','\\u226A':'ll','\\u226A\\u0338':'nLtv','\\u226A\\u20D2':'nLt','\\u226B':'gg','\\u226B\\u0338':'nGtv','\\u226B\\u20D2':'nGt','\\u226C':'twixt','\\u2272':'lsim','\\u2274':'nlsim','\\u2273':'gsim','\\u2275':'ngsim','\\u2276':'lg','\\u2278':'ntlg','\\u2277':'gl','\\u2279':'ntgl','\\u227A':'pr','\\u2280':'npr','\\u227B':'sc','\\u2281':'nsc','\\u227C':'prcue','\\u22E0':'nprcue','\\u227D':'sccue','\\u22E1':'nsccue','\\u227E':'prsim','\\u227F':'scsim','\\u227F\\u0338':'NotSucceedsTilde','\\u2282':'sub','\\u2284':'nsub','\\u2282\\u20D2':'vnsub','\\u2283':'sup','\\u2285':'nsup','\\u2283\\u20D2':'vnsup','\\u2286':'sube','\\u2288':'nsube','\\u2287':'supe','\\u2289':'nsupe','\\u228A\\uFE00':'vsubne','\\u228A':'subne','\\u228B\\uFE00':'vsupne','\\u228B':'supne','\\u228D':'cupdot','\\u228E':'uplus','\\u228F':'sqsub','\\u228F\\u0338':'NotSquareSubset','\\u2290':'sqsup','\\u2290\\u0338':'NotSquareSuperset','\\u2291':'sqsube','\\u22E2':'nsqsube','\\u2292':'sqsupe','\\u22E3':'nsqsupe','\\u2293':'sqcap','\\u2293\\uFE00':'sqcaps','\\u2294':'sqcup','\\u2294\\uFE00':'sqcups','\\u2295':'oplus','\\u2296':'ominus','\\u2297':'otimes','\\u2298':'osol','\\u2299':'odot','\\u229A':'ocir','\\u229B':'oast','\\u229D':'odash','\\u229E':'plusb','\\u229F':'minusb','\\u22A0':'timesb','\\u22A1':'sdotb','\\u22A2':'vdash','\\u22AC':'nvdash','\\u22A3':'dashv','\\u22A4':'top','\\u22A5':'bot','\\u22A7':'models','\\u22A8':'vDash','\\u22AD':'nvDash','\\u22A9':'Vdash','\\u22AE':'nVdash','\\u22AA':'Vvdash','\\u22AB':'VDash','\\u22AF':'nVDash','\\u22B0':'prurel','\\u22B2':'vltri','\\u22EA':'nltri','\\u22B3':'vrtri','\\u22EB':'nrtri','\\u22B4':'ltrie','\\u22EC':'nltrie','\\u22B4\\u20D2':'nvltrie','\\u22B5':'rtrie','\\u22ED':'nrtrie','\\u22B5\\u20D2':'nvrtrie','\\u22B6':'origof','\\u22B7':'imof','\\u22B8':'mumap','\\u22B9':'hercon','\\u22BA':'intcal','\\u22BB':'veebar','\\u22BD':'barvee','\\u22BE':'angrtvb','\\u22BF':'lrtri','\\u22C0':'Wedge','\\u22C1':'Vee','\\u22C2':'xcap','\\u22C3':'xcup','\\u22C4':'diam','\\u22C5':'sdot','\\u22C6':'Star','\\u22C7':'divonx','\\u22C8':'bowtie','\\u22C9':'ltimes','\\u22CA':'rtimes','\\u22CB':'lthree','\\u22CC':'rthree','\\u22CD':'bsime','\\u22CE':'cuvee','\\u22CF':'cuwed','\\u22D0':'Sub','\\u22D1':'Sup','\\u22D2':'Cap','\\u22D3':'Cup','\\u22D4':'fork','\\u22D5':'epar','\\u22D6':'ltdot','\\u22D7':'gtdot','\\u22D8':'Ll','\\u22D8\\u0338':'nLl','\\u22D9':'Gg','\\u22D9\\u0338':'nGg','\\u22DA\\uFE00':'lesg','\\u22DA':'leg','\\u22DB':'gel','\\u22DB\\uFE00':'gesl','\\u22DE':'cuepr','\\u22DF':'cuesc','\\u22E6':'lnsim','\\u22E7':'gnsim','\\u22E8':'prnsim','\\u22E9':'scnsim','\\u22EE':'vellip','\\u22EF':'ctdot','\\u22F0':'utdot','\\u22F1':'dtdot','\\u22F2':'disin','\\u22F3':'isinsv','\\u22F4':'isins','\\u22F5':'isindot','\\u22F5\\u0338':'notindot','\\u22F6':'notinvc','\\u22F7':'notinvb','\\u22F9':'isinE','\\u22F9\\u0338':'notinE','\\u22FA':'nisd','\\u22FB':'xnis','\\u22FC':'nis','\\u22FD':'notnivc','\\u22FE':'notnivb','\\u2305':'barwed','\\u2306':'Barwed','\\u230C':'drcrop','\\u230D':'dlcrop','\\u230E':'urcrop','\\u230F':'ulcrop','\\u2310':'bnot','\\u2312':'profline','\\u2313':'profsurf','\\u2315':'telrec','\\u2316':'target','\\u231C':'ulcorn','\\u231D':'urcorn','\\u231E':'dlcorn','\\u231F':'drcorn','\\u2322':'frown','\\u2323':'smile','\\u232D':'cylcty','\\u232E':'profalar','\\u2336':'topbot','\\u233D':'ovbar','\\u233F':'solbar','\\u237C':'angzarr','\\u23B0':'lmoust','\\u23B1':'rmoust','\\u23B4':'tbrk','\\u23B5':'bbrk','\\u23B6':'bbrktbrk','\\u23DC':'OverParenthesis','\\u23DD':'UnderParenthesis','\\u23DE':'OverBrace','\\u23DF':'UnderBrace','\\u23E2':'trpezium','\\u23E7':'elinters','\\u2423':'blank','\\u2500':'boxh','\\u2502':'boxv','\\u250C':'boxdr','\\u2510':'boxdl','\\u2514':'boxur','\\u2518':'boxul','\\u251C':'boxvr','\\u2524':'boxvl','\\u252C':'boxhd','\\u2534':'boxhu','\\u253C':'boxvh','\\u2550':'boxH','\\u2551':'boxV','\\u2552':'boxdR','\\u2553':'boxDr','\\u2554':'boxDR','\\u2555':'boxdL','\\u2556':'boxDl','\\u2557':'boxDL','\\u2558':'boxuR','\\u2559':'boxUr','\\u255A':'boxUR','\\u255B':'boxuL','\\u255C':'boxUl','\\u255D':'boxUL','\\u255E':'boxvR','\\u255F':'boxVr','\\u2560':'boxVR','\\u2561':'boxvL','\\u2562':'boxVl','\\u2563':'boxVL','\\u2564':'boxHd','\\u2565':'boxhD','\\u2566':'boxHD','\\u2567':'boxHu','\\u2568':'boxhU','\\u2569':'boxHU','\\u256A':'boxvH','\\u256B':'boxVh','\\u256C':'boxVH','\\u2580':'uhblk','\\u2584':'lhblk','\\u2588':'block','\\u2591':'blk14','\\u2592':'blk12','\\u2593':'blk34','\\u25A1':'squ','\\u25AA':'squf','\\u25AB':'EmptyVerySmallSquare','\\u25AD':'rect','\\u25AE':'marker','\\u25B1':'fltns','\\u25B3':'xutri','\\u25B4':'utrif','\\u25B5':'utri','\\u25B8':'rtrif','\\u25B9':'rtri','\\u25BD':'xdtri','\\u25BE':'dtrif','\\u25BF':'dtri','\\u25C2':'ltrif','\\u25C3':'ltri','\\u25CA':'loz','\\u25CB':'cir','\\u25EC':'tridot','\\u25EF':'xcirc','\\u25F8':'ultri','\\u25F9':'urtri','\\u25FA':'lltri','\\u25FB':'EmptySmallSquare','\\u25FC':'FilledSmallSquare','\\u2605':'starf','\\u2606':'star','\\u260E':'phone','\\u2640':'female','\\u2642':'male','\\u2660':'spades','\\u2663':'clubs','\\u2665':'hearts','\\u2666':'diams','\\u266A':'sung','\\u2713':'check','\\u2717':'cross','\\u2720':'malt','\\u2736':'sext','\\u2758':'VerticalSeparator','\\u27C8':'bsolhsub','\\u27C9':'suphsol','\\u27F5':'xlarr','\\u27F6':'xrarr','\\u27F7':'xharr','\\u27F8':'xlArr','\\u27F9':'xrArr','\\u27FA':'xhArr','\\u27FC':'xmap','\\u27FF':'dzigrarr','\\u2902':'nvlArr','\\u2903':'nvrArr','\\u2904':'nvHarr','\\u2905':'Map','\\u290C':'lbarr','\\u290D':'rbarr','\\u290E':'lBarr','\\u290F':'rBarr','\\u2910':'RBarr','\\u2911':'DDotrahd','\\u2912':'UpArrowBar','\\u2913':'DownArrowBar','\\u2916':'Rarrtl','\\u2919':'latail','\\u291A':'ratail','\\u291B':'lAtail','\\u291C':'rAtail','\\u291D':'larrfs','\\u291E':'rarrfs','\\u291F':'larrbfs','\\u2920':'rarrbfs','\\u2923':'nwarhk','\\u2924':'nearhk','\\u2925':'searhk','\\u2926':'swarhk','\\u2927':'nwnear','\\u2928':'toea','\\u2929':'tosa','\\u292A':'swnwar','\\u2933':'rarrc','\\u2933\\u0338':'nrarrc','\\u2935':'cudarrr','\\u2936':'ldca','\\u2937':'rdca','\\u2938':'cudarrl','\\u2939':'larrpl','\\u293C':'curarrm','\\u293D':'cularrp','\\u2945':'rarrpl','\\u2948':'harrcir','\\u2949':'Uarrocir','\\u294A':'lurdshar','\\u294B':'ldrushar','\\u294E':'LeftRightVector','\\u294F':'RightUpDownVector','\\u2950':'DownLeftRightVector','\\u2951':'LeftUpDownVector','\\u2952':'LeftVectorBar','\\u2953':'RightVectorBar','\\u2954':'RightUpVectorBar','\\u2955':'RightDownVectorBar','\\u2956':'DownLeftVectorBar','\\u2957':'DownRightVectorBar','\\u2958':'LeftUpVectorBar','\\u2959':'LeftDownVectorBar','\\u295A':'LeftTeeVector','\\u295B':'RightTeeVector','\\u295C':'RightUpTeeVector','\\u295D':'RightDownTeeVector','\\u295E':'DownLeftTeeVector','\\u295F':'DownRightTeeVector','\\u2960':'LeftUpTeeVector','\\u2961':'LeftDownTeeVector','\\u2962':'lHar','\\u2963':'uHar','\\u2964':'rHar','\\u2965':'dHar','\\u2966':'luruhar','\\u2967':'ldrdhar','\\u2968':'ruluhar','\\u2969':'rdldhar','\\u296A':'lharul','\\u296B':'llhard','\\u296C':'rharul','\\u296D':'lrhard','\\u296E':'udhar','\\u296F':'duhar','\\u2970':'RoundImplies','\\u2971':'erarr','\\u2972':'simrarr','\\u2973':'larrsim','\\u2974':'rarrsim','\\u2975':'rarrap','\\u2976':'ltlarr','\\u2978':'gtrarr','\\u2979':'subrarr','\\u297B':'suplarr','\\u297C':'lfisht','\\u297D':'rfisht','\\u297E':'ufisht','\\u297F':'dfisht','\\u299A':'vzigzag','\\u299C':'vangrt','\\u299D':'angrtvbd','\\u29A4':'ange','\\u29A5':'range','\\u29A6':'dwangle','\\u29A7':'uwangle','\\u29A8':'angmsdaa','\\u29A9':'angmsdab','\\u29AA':'angmsdac','\\u29AB':'angmsdad','\\u29AC':'angmsdae','\\u29AD':'angmsdaf','\\u29AE':'angmsdag','\\u29AF':'angmsdah','\\u29B0':'bemptyv','\\u29B1':'demptyv','\\u29B2':'cemptyv','\\u29B3':'raemptyv','\\u29B4':'laemptyv','\\u29B5':'ohbar','\\u29B6':'omid','\\u29B7':'opar','\\u29B9':'operp','\\u29BB':'olcross','\\u29BC':'odsold','\\u29BE':'olcir','\\u29BF':'ofcir','\\u29C0':'olt','\\u29C1':'ogt','\\u29C2':'cirscir','\\u29C3':'cirE','\\u29C4':'solb','\\u29C5':'bsolb','\\u29C9':'boxbox','\\u29CD':'trisb','\\u29CE':'rtriltri','\\u29CF':'LeftTriangleBar','\\u29CF\\u0338':'NotLeftTriangleBar','\\u29D0':'RightTriangleBar','\\u29D0\\u0338':'NotRightTriangleBar','\\u29DC':'iinfin','\\u29DD':'infintie','\\u29DE':'nvinfin','\\u29E3':'eparsl','\\u29E4':'smeparsl','\\u29E5':'eqvparsl','\\u29EB':'lozf','\\u29F4':'RuleDelayed','\\u29F6':'dsol','\\u2A00':'xodot','\\u2A01':'xoplus','\\u2A02':'xotime','\\u2A04':'xuplus','\\u2A06':'xsqcup','\\u2A0D':'fpartint','\\u2A10':'cirfnint','\\u2A11':'awint','\\u2A12':'rppolint','\\u2A13':'scpolint','\\u2A14':'npolint','\\u2A15':'pointint','\\u2A16':'quatint','\\u2A17':'intlarhk','\\u2A22':'pluscir','\\u2A23':'plusacir','\\u2A24':'simplus','\\u2A25':'plusdu','\\u2A26':'plussim','\\u2A27':'plustwo','\\u2A29':'mcomma','\\u2A2A':'minusdu','\\u2A2D':'loplus','\\u2A2E':'roplus','\\u2A2F':'Cross','\\u2A30':'timesd','\\u2A31':'timesbar','\\u2A33':'smashp','\\u2A34':'lotimes','\\u2A35':'rotimes','\\u2A36':'otimesas','\\u2A37':'Otimes','\\u2A38':'odiv','\\u2A39':'triplus','\\u2A3A':'triminus','\\u2A3B':'tritime','\\u2A3C':'iprod','\\u2A3F':'amalg','\\u2A40':'capdot','\\u2A42':'ncup','\\u2A43':'ncap','\\u2A44':'capand','\\u2A45':'cupor','\\u2A46':'cupcap','\\u2A47':'capcup','\\u2A48':'cupbrcap','\\u2A49':'capbrcup','\\u2A4A':'cupcup','\\u2A4B':'capcap','\\u2A4C':'ccups','\\u2A4D':'ccaps','\\u2A50':'ccupssm','\\u2A53':'And','\\u2A54':'Or','\\u2A55':'andand','\\u2A56':'oror','\\u2A57':'orslope','\\u2A58':'andslope','\\u2A5A':'andv','\\u2A5B':'orv','\\u2A5C':'andd','\\u2A5D':'ord','\\u2A5F':'wedbar','\\u2A66':'sdote','\\u2A6A':'simdot','\\u2A6D':'congdot','\\u2A6D\\u0338':'ncongdot','\\u2A6E':'easter','\\u2A6F':'apacir','\\u2A70':'apE','\\u2A70\\u0338':'napE','\\u2A71':'eplus','\\u2A72':'pluse','\\u2A73':'Esim','\\u2A77':'eDDot','\\u2A78':'equivDD','\\u2A79':'ltcir','\\u2A7A':'gtcir','\\u2A7B':'ltquest','\\u2A7C':'gtquest','\\u2A7D':'les','\\u2A7D\\u0338':'nles','\\u2A7E':'ges','\\u2A7E\\u0338':'nges','\\u2A7F':'lesdot','\\u2A80':'gesdot','\\u2A81':'lesdoto','\\u2A82':'gesdoto','\\u2A83':'lesdotor','\\u2A84':'gesdotol','\\u2A85':'lap','\\u2A86':'gap','\\u2A87':'lne','\\u2A88':'gne','\\u2A89':'lnap','\\u2A8A':'gnap','\\u2A8B':'lEg','\\u2A8C':'gEl','\\u2A8D':'lsime','\\u2A8E':'gsime','\\u2A8F':'lsimg','\\u2A90':'gsiml','\\u2A91':'lgE','\\u2A92':'glE','\\u2A93':'lesges','\\u2A94':'gesles','\\u2A95':'els','\\u2A96':'egs','\\u2A97':'elsdot','\\u2A98':'egsdot','\\u2A99':'el','\\u2A9A':'eg','\\u2A9D':'siml','\\u2A9E':'simg','\\u2A9F':'simlE','\\u2AA0':'simgE','\\u2AA1':'LessLess','\\u2AA1\\u0338':'NotNestedLessLess','\\u2AA2':'GreaterGreater','\\u2AA2\\u0338':'NotNestedGreaterGreater','\\u2AA4':'glj','\\u2AA5':'gla','\\u2AA6':'ltcc','\\u2AA7':'gtcc','\\u2AA8':'lescc','\\u2AA9':'gescc','\\u2AAA':'smt','\\u2AAB':'lat','\\u2AAC':'smte','\\u2AAC\\uFE00':'smtes','\\u2AAD':'late','\\u2AAD\\uFE00':'lates','\\u2AAE':'bumpE','\\u2AAF':'pre','\\u2AAF\\u0338':'npre','\\u2AB0':'sce','\\u2AB0\\u0338':'nsce','\\u2AB3':'prE','\\u2AB4':'scE','\\u2AB5':'prnE','\\u2AB6':'scnE','\\u2AB7':'prap','\\u2AB8':'scap','\\u2AB9':'prnap','\\u2ABA':'scnap','\\u2ABB':'Pr','\\u2ABC':'Sc','\\u2ABD':'subdot','\\u2ABE':'supdot','\\u2ABF':'subplus','\\u2AC0':'supplus','\\u2AC1':'submult','\\u2AC2':'supmult','\\u2AC3':'subedot','\\u2AC4':'supedot','\\u2AC5':'subE','\\u2AC5\\u0338':'nsubE','\\u2AC6':'supE','\\u2AC6\\u0338':'nsupE','\\u2AC7':'subsim','\\u2AC8':'supsim','\\u2ACB\\uFE00':'vsubnE','\\u2ACB':'subnE','\\u2ACC\\uFE00':'vsupnE','\\u2ACC':'supnE','\\u2ACF':'csub','\\u2AD0':'csup','\\u2AD1':'csube','\\u2AD2':'csupe','\\u2AD3':'subsup','\\u2AD4':'supsub','\\u2AD5':'subsub','\\u2AD6':'supsup','\\u2AD7':'suphsub','\\u2AD8':'supdsub','\\u2AD9':'forkv','\\u2ADA':'topfork','\\u2ADB':'mlcp','\\u2AE4':'Dashv','\\u2AE6':'Vdashl','\\u2AE7':'Barv','\\u2AE8':'vBar','\\u2AE9':'vBarv','\\u2AEB':'Vbar','\\u2AEC':'Not','\\u2AED':'bNot','\\u2AEE':'rnmid','\\u2AEF':'cirmid','\\u2AF0':'midcir','\\u2AF1':'topcir','\\u2AF2':'nhpar','\\u2AF3':'parsim','\\u2AFD':'parsl','\\u2AFD\\u20E5':'nparsl','\\u266D':'flat','\\u266E':'natur','\\u266F':'sharp','\\xA4':'curren','\\xA2':'cent','$':'dollar','\\xA3':'pound','\\xA5':'yen','\\u20AC':'euro','\\xB9':'sup1','\\xBD':'half','\\u2153':'frac13','\\xBC':'frac14','\\u2155':'frac15','\\u2159':'frac16','\\u215B':'frac18','\\xB2':'sup2','\\u2154':'frac23','\\u2156':'frac25','\\xB3':'sup3','\\xBE':'frac34','\\u2157':'frac35','\\u215C':'frac38','\\u2158':'frac45','\\u215A':'frac56','\\u215D':'frac58','\\u215E':'frac78','\\uD835\\uDCB6':'ascr','\\uD835\\uDD52':'aopf','\\uD835\\uDD1E':'afr','\\uD835\\uDD38':'Aopf','\\uD835\\uDD04':'Afr','\\uD835\\uDC9C':'Ascr','\\xAA':'ordf','\\xE1':'aacute','\\xC1':'Aacute','\\xE0':'agrave','\\xC0':'Agrave','\\u0103':'abreve','\\u0102':'Abreve','\\xE2':'acirc','\\xC2':'Acirc','\\xE5':'aring','\\xC5':'angst','\\xE4':'auml','\\xC4':'Auml','\\xE3':'atilde','\\xC3':'Atilde','\\u0105':'aogon','\\u0104':'Aogon','\\u0101':'amacr','\\u0100':'Amacr','\\xE6':'aelig','\\xC6':'AElig','\\uD835\\uDCB7':'bscr','\\uD835\\uDD53':'bopf','\\uD835\\uDD1F':'bfr','\\uD835\\uDD39':'Bopf','\\u212C':'Bscr','\\uD835\\uDD05':'Bfr','\\uD835\\uDD20':'cfr','\\uD835\\uDCB8':'cscr','\\uD835\\uDD54':'copf','\\u212D':'Cfr','\\uD835\\uDC9E':'Cscr','\\u2102':'Copf','\\u0107':'cacute','\\u0106':'Cacute','\\u0109':'ccirc','\\u0108':'Ccirc','\\u010D':'ccaron','\\u010C':'Ccaron','\\u010B':'cdot','\\u010A':'Cdot','\\xE7':'ccedil','\\xC7':'Ccedil','\\u2105':'incare','\\uD835\\uDD21':'dfr','\\u2146':'dd','\\uD835\\uDD55':'dopf','\\uD835\\uDCB9':'dscr','\\uD835\\uDC9F':'Dscr','\\uD835\\uDD07':'Dfr','\\u2145':'DD','\\uD835\\uDD3B':'Dopf','\\u010F':'dcaron','\\u010E':'Dcaron','\\u0111':'dstrok','\\u0110':'Dstrok','\\xF0':'eth','\\xD0':'ETH','\\u2147':'ee','\\u212F':'escr','\\uD835\\uDD22':'efr','\\uD835\\uDD56':'eopf','\\u2130':'Escr','\\uD835\\uDD08':'Efr','\\uD835\\uDD3C':'Eopf','\\xE9':'eacute','\\xC9':'Eacute','\\xE8':'egrave','\\xC8':'Egrave','\\xEA':'ecirc','\\xCA':'Ecirc','\\u011B':'ecaron','\\u011A':'Ecaron','\\xEB':'euml','\\xCB':'Euml','\\u0117':'edot','\\u0116':'Edot','\\u0119':'eogon','\\u0118':'Eogon','\\u0113':'emacr','\\u0112':'Emacr','\\uD835\\uDD23':'ffr','\\uD835\\uDD57':'fopf','\\uD835\\uDCBB':'fscr','\\uD835\\uDD09':'Ffr','\\uD835\\uDD3D':'Fopf','\\u2131':'Fscr','\\uFB00':'fflig','\\uFB03':'ffilig','\\uFB04':'ffllig','\\uFB01':'filig','fj':'fjlig','\\uFB02':'fllig','\\u0192':'fnof','\\u210A':'gscr','\\uD835\\uDD58':'gopf','\\uD835\\uDD24':'gfr','\\uD835\\uDCA2':'Gscr','\\uD835\\uDD3E':'Gopf','\\uD835\\uDD0A':'Gfr','\\u01F5':'gacute','\\u011F':'gbreve','\\u011E':'Gbreve','\\u011D':'gcirc','\\u011C':'Gcirc','\\u0121':'gdot','\\u0120':'Gdot','\\u0122':'Gcedil','\\uD835\\uDD25':'hfr','\\u210E':'planckh','\\uD835\\uDCBD':'hscr','\\uD835\\uDD59':'hopf','\\u210B':'Hscr','\\u210C':'Hfr','\\u210D':'Hopf','\\u0125':'hcirc','\\u0124':'Hcirc','\\u210F':'hbar','\\u0127':'hstrok','\\u0126':'Hstrok','\\uD835\\uDD5A':'iopf','\\uD835\\uDD26':'ifr','\\uD835\\uDCBE':'iscr','\\u2148':'ii','\\uD835\\uDD40':'Iopf','\\u2110':'Iscr','\\u2111':'Im','\\xED':'iacute','\\xCD':'Iacute','\\xEC':'igrave','\\xCC':'Igrave','\\xEE':'icirc','\\xCE':'Icirc','\\xEF':'iuml','\\xCF':'Iuml','\\u0129':'itilde','\\u0128':'Itilde','\\u0130':'Idot','\\u012F':'iogon','\\u012E':'Iogon','\\u012B':'imacr','\\u012A':'Imacr','\\u0133':'ijlig','\\u0132':'IJlig','\\u0131':'imath','\\uD835\\uDCBF':'jscr','\\uD835\\uDD5B':'jopf','\\uD835\\uDD27':'jfr','\\uD835\\uDCA5':'Jscr','\\uD835\\uDD0D':'Jfr','\\uD835\\uDD41':'Jopf','\\u0135':'jcirc','\\u0134':'Jcirc','\\u0237':'jmath','\\uD835\\uDD5C':'kopf','\\uD835\\uDCC0':'kscr','\\uD835\\uDD28':'kfr','\\uD835\\uDCA6':'Kscr','\\uD835\\uDD42':'Kopf','\\uD835\\uDD0E':'Kfr','\\u0137':'kcedil','\\u0136':'Kcedil','\\uD835\\uDD29':'lfr','\\uD835\\uDCC1':'lscr','\\u2113':'ell','\\uD835\\uDD5D':'lopf','\\u2112':'Lscr','\\uD835\\uDD0F':'Lfr','\\uD835\\uDD43':'Lopf','\\u013A':'lacute','\\u0139':'Lacute','\\u013E':'lcaron','\\u013D':'Lcaron','\\u013C':'lcedil','\\u013B':'Lcedil','\\u0142':'lstrok','\\u0141':'Lstrok','\\u0140':'lmidot','\\u013F':'Lmidot','\\uD835\\uDD2A':'mfr','\\uD835\\uDD5E':'mopf','\\uD835\\uDCC2':'mscr','\\uD835\\uDD10':'Mfr','\\uD835\\uDD44':'Mopf','\\u2133':'Mscr','\\uD835\\uDD2B':'nfr','\\uD835\\uDD5F':'nopf','\\uD835\\uDCC3':'nscr','\\u2115':'Nopf','\\uD835\\uDCA9':'Nscr','\\uD835\\uDD11':'Nfr','\\u0144':'nacute','\\u0143':'Nacute','\\u0148':'ncaron','\\u0147':'Ncaron','\\xF1':'ntilde','\\xD1':'Ntilde','\\u0146':'ncedil','\\u0145':'Ncedil','\\u2116':'numero','\\u014B':'eng','\\u014A':'ENG','\\uD835\\uDD60':'oopf','\\uD835\\uDD2C':'ofr','\\u2134':'oscr','\\uD835\\uDCAA':'Oscr','\\uD835\\uDD12':'Ofr','\\uD835\\uDD46':'Oopf','\\xBA':'ordm','\\xF3':'oacute','\\xD3':'Oacute','\\xF2':'ograve','\\xD2':'Ograve','\\xF4':'ocirc','\\xD4':'Ocirc','\\xF6':'ouml','\\xD6':'Ouml','\\u0151':'odblac','\\u0150':'Odblac','\\xF5':'otilde','\\xD5':'Otilde','\\xF8':'oslash','\\xD8':'Oslash','\\u014D':'omacr','\\u014C':'Omacr','\\u0153':'oelig','\\u0152':'OElig','\\uD835\\uDD2D':'pfr','\\uD835\\uDCC5':'pscr','\\uD835\\uDD61':'popf','\\u2119':'Popf','\\uD835\\uDD13':'Pfr','\\uD835\\uDCAB':'Pscr','\\uD835\\uDD62':'qopf','\\uD835\\uDD2E':'qfr','\\uD835\\uDCC6':'qscr','\\uD835\\uDCAC':'Qscr','\\uD835\\uDD14':'Qfr','\\u211A':'Qopf','\\u0138':'kgreen','\\uD835\\uDD2F':'rfr','\\uD835\\uDD63':'ropf','\\uD835\\uDCC7':'rscr','\\u211B':'Rscr','\\u211C':'Re','\\u211D':'Ropf','\\u0155':'racute','\\u0154':'Racute','\\u0159':'rcaron','\\u0158':'Rcaron','\\u0157':'rcedil','\\u0156':'Rcedil','\\uD835\\uDD64':'sopf','\\uD835\\uDCC8':'sscr','\\uD835\\uDD30':'sfr','\\uD835\\uDD4A':'Sopf','\\uD835\\uDD16':'Sfr','\\uD835\\uDCAE':'Sscr','\\u24C8':'oS','\\u015B':'sacute','\\u015A':'Sacute','\\u015D':'scirc','\\u015C':'Scirc','\\u0161':'scaron','\\u0160':'Scaron','\\u015F':'scedil','\\u015E':'Scedil','\\xDF':'szlig','\\uD835\\uDD31':'tfr','\\uD835\\uDCC9':'tscr','\\uD835\\uDD65':'topf','\\uD835\\uDCAF':'Tscr','\\uD835\\uDD17':'Tfr','\\uD835\\uDD4B':'Topf','\\u0165':'tcaron','\\u0164':'Tcaron','\\u0163':'tcedil','\\u0162':'Tcedil','\\u2122':'trade','\\u0167':'tstrok','\\u0166':'Tstrok','\\uD835\\uDCCA':'uscr','\\uD835\\uDD66':'uopf','\\uD835\\uDD32':'ufr','\\uD835\\uDD4C':'Uopf','\\uD835\\uDD18':'Ufr','\\uD835\\uDCB0':'Uscr','\\xFA':'uacute','\\xDA':'Uacute','\\xF9':'ugrave','\\xD9':'Ugrave','\\u016D':'ubreve','\\u016C':'Ubreve','\\xFB':'ucirc','\\xDB':'Ucirc','\\u016F':'uring','\\u016E':'Uring','\\xFC':'uuml','\\xDC':'Uuml','\\u0171':'udblac','\\u0170':'Udblac','\\u0169':'utilde','\\u0168':'Utilde','\\u0173':'uogon','\\u0172':'Uogon','\\u016B':'umacr','\\u016A':'Umacr','\\uD835\\uDD33':'vfr','\\uD835\\uDD67':'vopf','\\uD835\\uDCCB':'vscr','\\uD835\\uDD19':'Vfr','\\uD835\\uDD4D':'Vopf','\\uD835\\uDCB1':'Vscr','\\uD835\\uDD68':'wopf','\\uD835\\uDCCC':'wscr','\\uD835\\uDD34':'wfr','\\uD835\\uDCB2':'Wscr','\\uD835\\uDD4E':'Wopf','\\uD835\\uDD1A':'Wfr','\\u0175':'wcirc','\\u0174':'Wcirc','\\uD835\\uDD35':'xfr','\\uD835\\uDCCD':'xscr','\\uD835\\uDD69':'xopf','\\uD835\\uDD4F':'Xopf','\\uD835\\uDD1B':'Xfr','\\uD835\\uDCB3':'Xscr','\\uD835\\uDD36':'yfr','\\uD835\\uDCCE':'yscr','\\uD835\\uDD6A':'yopf','\\uD835\\uDCB4':'Yscr','\\uD835\\uDD1C':'Yfr','\\uD835\\uDD50':'Yopf','\\xFD':'yacute','\\xDD':'Yacute','\\u0177':'ycirc','\\u0176':'Ycirc','\\xFF':'yuml','\\u0178':'Yuml','\\uD835\\uDCCF':'zscr','\\uD835\\uDD37':'zfr','\\uD835\\uDD6B':'zopf','\\u2128':'Zfr','\\u2124':'Zopf','\\uD835\\uDCB5':'Zscr','\\u017A':'zacute','\\u0179':'Zacute','\\u017E':'zcaron','\\u017D':'Zcaron','\\u017C':'zdot','\\u017B':'Zdot','\\u01B5':'imped','\\xFE':'thorn','\\xDE':'THORN','\\u0149':'napos','\\u03B1':'alpha','\\u0391':'Alpha','\\u03B2':'beta','\\u0392':'Beta','\\u03B3':'gamma','\\u0393':'Gamma','\\u03B4':'delta','\\u0394':'Delta','\\u03B5':'epsi','\\u03F5':'epsiv','\\u0395':'Epsilon','\\u03DD':'gammad','\\u03DC':'Gammad','\\u03B6':'zeta','\\u0396':'Zeta','\\u03B7':'eta','\\u0397':'Eta','\\u03B8':'theta','\\u03D1':'thetav','\\u0398':'Theta','\\u03B9':'iota','\\u0399':'Iota','\\u03BA':'kappa','\\u03F0':'kappav','\\u039A':'Kappa','\\u03BB':'lambda','\\u039B':'Lambda','\\u03BC':'mu','\\xB5':'micro','\\u039C':'Mu','\\u03BD':'nu','\\u039D':'Nu','\\u03BE':'xi','\\u039E':'Xi','\\u03BF':'omicron','\\u039F':'Omicron','\\u03C0':'pi','\\u03D6':'piv','\\u03A0':'Pi','\\u03C1':'rho','\\u03F1':'rhov','\\u03A1':'Rho','\\u03C3':'sigma','\\u03A3':'Sigma','\\u03C2':'sigmaf','\\u03C4':'tau','\\u03A4':'Tau','\\u03C5':'upsi','\\u03A5':'Upsilon','\\u03D2':'Upsi','\\u03C6':'phi','\\u03D5':'phiv','\\u03A6':'Phi','\\u03C7':'chi','\\u03A7':'Chi','\\u03C8':'psi','\\u03A8':'Psi','\\u03C9':'omega','\\u03A9':'ohm','\\u0430':'acy','\\u0410':'Acy','\\u0431':'bcy','\\u0411':'Bcy','\\u0432':'vcy','\\u0412':'Vcy','\\u0433':'gcy','\\u0413':'Gcy','\\u0453':'gjcy','\\u0403':'GJcy','\\u0434':'dcy','\\u0414':'Dcy','\\u0452':'djcy','\\u0402':'DJcy','\\u0435':'iecy','\\u0415':'IEcy','\\u0451':'iocy','\\u0401':'IOcy','\\u0454':'jukcy','\\u0404':'Jukcy','\\u0436':'zhcy','\\u0416':'ZHcy','\\u0437':'zcy','\\u0417':'Zcy','\\u0455':'dscy','\\u0405':'DScy','\\u0438':'icy','\\u0418':'Icy','\\u0456':'iukcy','\\u0406':'Iukcy','\\u0457':'yicy','\\u0407':'YIcy','\\u0439':'jcy','\\u0419':'Jcy','\\u0458':'jsercy','\\u0408':'Jsercy','\\u043A':'kcy','\\u041A':'Kcy','\\u045C':'kjcy','\\u040C':'KJcy','\\u043B':'lcy','\\u041B':'Lcy','\\u0459':'ljcy','\\u0409':'LJcy','\\u043C':'mcy','\\u041C':'Mcy','\\u043D':'ncy','\\u041D':'Ncy','\\u045A':'njcy','\\u040A':'NJcy','\\u043E':'ocy','\\u041E':'Ocy','\\u043F':'pcy','\\u041F':'Pcy','\\u0440':'rcy','\\u0420':'Rcy','\\u0441':'scy','\\u0421':'Scy','\\u0442':'tcy','\\u0422':'Tcy','\\u045B':'tshcy','\\u040B':'TSHcy','\\u0443':'ucy','\\u0423':'Ucy','\\u045E':'ubrcy','\\u040E':'Ubrcy','\\u0444':'fcy','\\u0424':'Fcy','\\u0445':'khcy','\\u0425':'KHcy','\\u0446':'tscy','\\u0426':'TScy','\\u0447':'chcy','\\u0427':'CHcy','\\u045F':'dzcy','\\u040F':'DZcy','\\u0448':'shcy','\\u0428':'SHcy','\\u0449':'shchcy','\\u0429':'SHCHcy','\\u044A':'hardcy','\\u042A':'HARDcy','\\u044B':'ycy','\\u042B':'Ycy','\\u044C':'softcy','\\u042C':'SOFTcy','\\u044D':'ecy','\\u042D':'Ecy','\\u044E':'yucy','\\u042E':'YUcy','\\u044F':'yacy','\\u042F':'YAcy','\\u2135':'aleph','\\u2136':'beth','\\u2137':'gimel','\\u2138':'daleth'};\n\n\tvar regexEscape = /[\"&'<>`]/g;\n\tvar escapeMap = {\n\t\t'\"': '"',\n\t\t'&': '&',\n\t\t'\\'': ''',\n\t\t'<': '<',\n\t\t// See https://mathiasbynens.be/notes/ambiguous-ampersands: in HTML, the\n\t\t// following is not strictly necessary unless it’s part of a tag or an\n\t\t// unquoted attribute value. We’re only escaping it to support those\n\t\t// situations, and for XML support.\n\t\t'>': '>',\n\t\t// In Internet Explorer ≤ 8, the backtick character can be used\n\t\t// to break out of (un)quoted attribute values or HTML comments.\n\t\t// See http://html5sec.org/#102, http://html5sec.org/#108, and\n\t\t// http://html5sec.org/#133.\n\t\t'`': '`'\n\t};\n\n\tvar regexInvalidEntity = /&#(?:[xX][^a-fA-F0-9]|[^0-9xX])/;\n\tvar regexInvalidRawCodePoint = /[\\0-\\x08\\x0B\\x0E-\\x1F\\x7F-\\x9F\\uFDD0-\\uFDEF\\uFFFE\\uFFFF]|[\\uD83F\\uD87F\\uD8BF\\uD8FF\\uD93F\\uD97F\\uD9BF\\uD9FF\\uDA3F\\uDA7F\\uDABF\\uDAFF\\uDB3F\\uDB7F\\uDBBF\\uDBFF][\\uDFFE\\uDFFF]|[\\uD800-\\uDBFF](?![\\uDC00-\\uDFFF])|(?:[^\\uD800-\\uDBFF]|^)[\\uDC00-\\uDFFF]/;\n\tvar regexDecode = /&(CounterClockwiseContourIntegral|DoubleLongLeftRightArrow|ClockwiseContourIntegral|NotNestedGreaterGreater|NotSquareSupersetEqual|DiacriticalDoubleAcute|NotRightTriangleEqual|NotSucceedsSlantEqual|NotPrecedesSlantEqual|CloseCurlyDoubleQuote|NegativeVeryThinSpace|DoubleContourIntegral|FilledVerySmallSquare|CapitalDifferentialD|OpenCurlyDoubleQuote|EmptyVerySmallSquare|NestedGreaterGreater|DoubleLongRightArrow|NotLeftTriangleEqual|NotGreaterSlantEqual|ReverseUpEquilibrium|DoubleLeftRightArrow|NotSquareSubsetEqual|NotDoubleVerticalBar|RightArrowLeftArrow|NotGreaterFullEqual|NotRightTriangleBar|SquareSupersetEqual|DownLeftRightVector|DoubleLongLeftArrow|leftrightsquigarrow|LeftArrowRightArrow|NegativeMediumSpace|blacktriangleright|RightDownVectorBar|PrecedesSlantEqual|RightDoubleBracket|SucceedsSlantEqual|NotLeftTriangleBar|RightTriangleEqual|SquareIntersection|RightDownTeeVector|ReverseEquilibrium|NegativeThickSpace|longleftrightarrow|Longleftrightarrow|LongLeftRightArrow|DownRightTeeVector|DownRightVectorBar|GreaterSlantEqual|SquareSubsetEqual|LeftDownVectorBar|LeftDoubleBracket|VerticalSeparator|rightleftharpoons|NotGreaterGreater|NotSquareSuperset|blacktriangleleft|blacktriangledown|NegativeThinSpace|LeftDownTeeVector|NotLessSlantEqual|leftrightharpoons|DoubleUpDownArrow|DoubleVerticalBar|LeftTriangleEqual|FilledSmallSquare|twoheadrightarrow|NotNestedLessLess|DownLeftTeeVector|DownLeftVectorBar|RightAngleBracket|NotTildeFullEqual|NotReverseElement|RightUpDownVector|DiacriticalTilde|NotSucceedsTilde|circlearrowright|NotPrecedesEqual|rightharpoondown|DoubleRightArrow|NotSucceedsEqual|NonBreakingSpace|NotRightTriangle|LessEqualGreater|RightUpTeeVector|LeftAngleBracket|GreaterFullEqual|DownArrowUpArrow|RightUpVectorBar|twoheadleftarrow|GreaterEqualLess|downharpoonright|RightTriangleBar|ntrianglerighteq|NotSupersetEqual|LeftUpDownVector|DiacriticalAcute|rightrightarrows|vartriangleright|UpArrowDownArrow|DiacriticalGrave|UnderParenthesis|EmptySmallSquare|LeftUpVectorBar|leftrightarrows|DownRightVector|downharpoonleft|trianglerighteq|ShortRightArrow|OverParenthesis|DoubleLeftArrow|DoubleDownArrow|NotSquareSubset|bigtriangledown|ntrianglelefteq|UpperRightArrow|curvearrowright|vartriangleleft|NotLeftTriangle|nleftrightarrow|LowerRightArrow|NotHumpDownHump|NotGreaterTilde|rightthreetimes|LeftUpTeeVector|NotGreaterEqual|straightepsilon|LeftTriangleBar|rightsquigarrow|ContourIntegral|rightleftarrows|CloseCurlyQuote|RightDownVector|LeftRightVector|nLeftrightarrow|leftharpoondown|circlearrowleft|SquareSuperset|OpenCurlyQuote|hookrightarrow|HorizontalLine|DiacriticalDot|NotLessGreater|ntriangleright|DoubleRightTee|InvisibleComma|InvisibleTimes|LowerLeftArrow|DownLeftVector|NotSubsetEqual|curvearrowleft|trianglelefteq|NotVerticalBar|TildeFullEqual|downdownarrows|NotGreaterLess|RightTeeVector|ZeroWidthSpace|looparrowright|LongRightArrow|doublebarwedge|ShortLeftArrow|ShortDownArrow|RightVectorBar|GreaterGreater|ReverseElement|rightharpoonup|LessSlantEqual|leftthreetimes|upharpoonright|rightarrowtail|LeftDownVector|Longrightarrow|NestedLessLess|UpperLeftArrow|nshortparallel|leftleftarrows|leftrightarrow|Leftrightarrow|LeftRightArrow|longrightarrow|upharpoonleft|RightArrowBar|ApplyFunction|LeftTeeVector|leftarrowtail|NotEqualTilde|varsubsetneqq|varsupsetneqq|RightTeeArrow|SucceedsEqual|SucceedsTilde|LeftVectorBar|SupersetEqual|hookleftarrow|DifferentialD|VerticalTilde|VeryThinSpace|blacktriangle|bigtriangleup|LessFullEqual|divideontimes|leftharpoonup|UpEquilibrium|ntriangleleft|RightTriangle|measuredangle|shortparallel|longleftarrow|Longleftarrow|LongLeftArrow|DoubleLeftTee|Poincareplane|PrecedesEqual|triangleright|DoubleUpArrow|RightUpVector|fallingdotseq|looparrowleft|PrecedesTilde|NotTildeEqual|NotTildeTilde|smallsetminus|Proportional|triangleleft|triangledown|UnderBracket|NotHumpEqual|exponentiale|ExponentialE|NotLessTilde|HilbertSpace|RightCeiling|blacklozenge|varsupsetneq|HumpDownHump|GreaterEqual|VerticalLine|LeftTeeArrow|NotLessEqual|DownTeeArrow|LeftTriangle|varsubsetneq|Intersection|NotCongruent|DownArrowBar|LeftUpVector|LeftArrowBar|risingdotseq|GreaterTilde|RoundImplies|SquareSubset|ShortUpArrow|NotSuperset|quaternions|precnapprox|backepsilon|preccurlyeq|OverBracket|blacksquare|MediumSpace|VerticalBar|circledcirc|circleddash|CircleMinus|CircleTimes|LessGreater|curlyeqprec|curlyeqsucc|diamondsuit|UpDownArrow|Updownarrow|RuleDelayed|Rrightarrow|updownarrow|RightVector|nRightarrow|nrightarrow|eqslantless|LeftCeiling|Equilibrium|SmallCircle|expectation|NotSucceeds|thickapprox|GreaterLess|SquareUnion|NotPrecedes|NotLessLess|straightphi|succnapprox|succcurlyeq|SubsetEqual|sqsupseteq|Proportion|Laplacetrf|ImaginaryI|supsetneqq|NotGreater|gtreqqless|NotElement|ThickSpace|TildeEqual|TildeTilde|Fouriertrf|rmoustache|EqualTilde|eqslantgtr|UnderBrace|LeftVector|UpArrowBar|nLeftarrow|nsubseteqq|subsetneqq|nsupseteqq|nleftarrow|succapprox|lessapprox|UpTeeArrow|upuparrows|curlywedge|lesseqqgtr|varepsilon|varnothing|RightFloor|complement|CirclePlus|sqsubseteq|Lleftarrow|circledast|RightArrow|Rightarrow|rightarrow|lmoustache|Bernoullis|precapprox|mapstoleft|mapstodown|longmapsto|dotsquare|downarrow|DoubleDot|nsubseteq|supsetneq|leftarrow|nsupseteq|subsetneq|ThinSpace|ngeqslant|subseteqq|HumpEqual|NotSubset|triangleq|NotCupCap|lesseqgtr|heartsuit|TripleDot|Leftarrow|Coproduct|Congruent|varpropto|complexes|gvertneqq|LeftArrow|LessTilde|supseteqq|MinusPlus|CircleDot|nleqslant|NotExists|gtreqless|nparallel|UnionPlus|LeftFloor|checkmark|CenterDot|centerdot|Mellintrf|gtrapprox|bigotimes|OverBrace|spadesuit|therefore|pitchfork|rationals|PlusMinus|Backslash|Therefore|DownBreve|backsimeq|backprime|DownArrow|nshortmid|Downarrow|lvertneqq|eqvparsl|imagline|imagpart|infintie|integers|Integral|intercal|LessLess|Uarrocir|intlarhk|sqsupset|angmsdaf|sqsubset|llcorner|vartheta|cupbrcap|lnapprox|Superset|SuchThat|succnsim|succneqq|angmsdag|biguplus|curlyvee|trpezium|Succeeds|NotTilde|bigwedge|angmsdah|angrtvbd|triminus|cwconint|fpartint|lrcorner|smeparsl|subseteq|urcorner|lurdshar|laemptyv|DDotrahd|approxeq|ldrushar|awconint|mapstoup|backcong|shortmid|triangle|geqslant|gesdotol|timesbar|circledR|circledS|setminus|multimap|naturals|scpolint|ncongdot|RightTee|boxminus|gnapprox|boxtimes|andslope|thicksim|angmsdaa|varsigma|cirfnint|rtriltri|angmsdab|rppolint|angmsdac|barwedge|drbkarow|clubsuit|thetasym|bsolhsub|capbrcup|dzigrarr|doteqdot|DotEqual|dotminus|UnderBar|NotEqual|realpart|otimesas|ulcorner|hksearow|hkswarow|parallel|PartialD|elinters|emptyset|plusacir|bbrktbrk|angmsdad|pointint|bigoplus|angmsdae|Precedes|bigsqcup|varkappa|notindot|supseteq|precneqq|precnsim|profalar|profline|profsurf|leqslant|lesdotor|raemptyv|subplus|notnivb|notnivc|subrarr|zigrarr|vzigzag|submult|subedot|Element|between|cirscir|larrbfs|larrsim|lotimes|lbrksld|lbrkslu|lozenge|ldrdhar|dbkarow|bigcirc|epsilon|simrarr|simplus|ltquest|Epsilon|luruhar|gtquest|maltese|npolint|eqcolon|npreceq|bigodot|ddagger|gtrless|bnequiv|harrcir|ddotseq|equivDD|backsim|demptyv|nsqsube|nsqsupe|Upsilon|nsubset|upsilon|minusdu|nsucceq|swarrow|nsupset|coloneq|searrow|boxplus|napprox|natural|asympeq|alefsym|congdot|nearrow|bigstar|diamond|supplus|tritime|LeftTee|nvinfin|triplus|NewLine|nvltrie|nvrtrie|nwarrow|nexists|Diamond|ruluhar|Implies|supmult|angzarr|suplarr|suphsub|questeq|because|digamma|Because|olcross|bemptyv|omicron|Omicron|rotimes|NoBreak|intprod|angrtvb|orderof|uwangle|suphsol|lesdoto|orslope|DownTee|realine|cudarrl|rdldhar|OverBar|supedot|lessdot|supdsub|topfork|succsim|rbrkslu|rbrksld|pertenk|cudarrr|isindot|planckh|lessgtr|pluscir|gesdoto|plussim|plustwo|lesssim|cularrp|rarrsim|Cayleys|notinva|notinvb|notinvc|UpArrow|Uparrow|uparrow|NotLess|dwangle|precsim|Product|curarrm|Cconint|dotplus|rarrbfs|ccupssm|Cedilla|cemptyv|notniva|quatint|frac35|frac38|frac45|frac56|frac58|frac78|tridot|xoplus|gacute|gammad|Gammad|lfisht|lfloor|bigcup|sqsupe|gbreve|Gbreve|lharul|sqsube|sqcups|Gcedil|apacir|llhard|lmidot|Lmidot|lmoust|andand|sqcaps|approx|Abreve|spades|circeq|tprime|divide|topcir|Assign|topbot|gesdot|divonx|xuplus|timesd|gesles|atilde|solbar|SOFTcy|loplus|timesb|lowast|lowbar|dlcorn|dlcrop|softcy|dollar|lparlt|thksim|lrhard|Atilde|lsaquo|smashp|bigvee|thinsp|wreath|bkarow|lsquor|lstrok|Lstrok|lthree|ltimes|ltlarr|DotDot|simdot|ltrPar|weierp|xsqcup|angmsd|sigmav|sigmaf|zeetrf|Zcaron|zcaron|mapsto|vsupne|thetav|cirmid|marker|mcomma|Zacute|vsubnE|there4|gtlPar|vsubne|bottom|gtrarr|SHCHcy|shchcy|midast|midcir|middot|minusb|minusd|gtrdot|bowtie|sfrown|mnplus|models|colone|seswar|Colone|mstpos|searhk|gtrsim|nacute|Nacute|boxbox|telrec|hairsp|Tcedil|nbumpe|scnsim|ncaron|Ncaron|ncedil|Ncedil|hamilt|Scedil|nearhk|hardcy|HARDcy|tcedil|Tcaron|commat|nequiv|nesear|tcaron|target|hearts|nexist|varrho|scedil|Scaron|scaron|hellip|Sacute|sacute|hercon|swnwar|compfn|rtimes|rthree|rsquor|rsaquo|zacute|wedgeq|homtht|barvee|barwed|Barwed|rpargt|horbar|conint|swarhk|roplus|nltrie|hslash|hstrok|Hstrok|rmoust|Conint|bprime|hybull|hyphen|iacute|Iacute|supsup|supsub|supsim|varphi|coprod|brvbar|agrave|Supset|supset|igrave|Igrave|notinE|Agrave|iiiint|iinfin|copysr|wedbar|Verbar|vangrt|becaus|incare|verbar|inodot|bullet|drcorn|intcal|drcrop|cularr|vellip|Utilde|bumpeq|cupcap|dstrok|Dstrok|CupCap|cupcup|cupdot|eacute|Eacute|supdot|iquest|easter|ecaron|Ecaron|ecolon|isinsv|utilde|itilde|Itilde|curarr|succeq|Bumpeq|cacute|ulcrop|nparsl|Cacute|nprcue|egrave|Egrave|nrarrc|nrarrw|subsup|subsub|nrtrie|jsercy|nsccue|Jsercy|kappav|kcedil|Kcedil|subsim|ulcorn|nsimeq|egsdot|veebar|kgreen|capand|elsdot|Subset|subset|curren|aacute|lacute|Lacute|emptyv|ntilde|Ntilde|lagran|lambda|Lambda|capcap|Ugrave|langle|subdot|emsp13|numero|emsp14|nvdash|nvDash|nVdash|nVDash|ugrave|ufisht|nvHarr|larrfs|nvlArr|larrhk|larrlp|larrpl|nvrArr|Udblac|nwarhk|larrtl|nwnear|oacute|Oacute|latail|lAtail|sstarf|lbrace|odblac|Odblac|lbrack|udblac|odsold|eparsl|lcaron|Lcaron|ograve|Ograve|lcedil|Lcedil|Aacute|ssmile|ssetmn|squarf|ldquor|capcup|ominus|cylcty|rharul|eqcirc|dagger|rfloor|rfisht|Dagger|daleth|equals|origof|capdot|equest|dcaron|Dcaron|rdquor|oslash|Oslash|otilde|Otilde|otimes|Otimes|urcrop|Ubreve|ubreve|Yacute|Uacute|uacute|Rcedil|rcedil|urcorn|parsim|Rcaron|Vdashl|rcaron|Tstrok|percnt|period|permil|Exists|yacute|rbrack|rbrace|phmmat|ccaron|Ccaron|planck|ccedil|plankv|tstrok|female|plusdo|plusdu|ffilig|plusmn|ffllig|Ccedil|rAtail|dfisht|bernou|ratail|Rarrtl|rarrtl|angsph|rarrpl|rarrlp|rarrhk|xwedge|xotime|forall|ForAll|Vvdash|vsupnE|preceq|bigcap|frac12|frac13|frac14|primes|rarrfs|prnsim|frac15|Square|frac16|square|lesdot|frac18|frac23|propto|prurel|rarrap|rangle|puncsp|frac25|Racute|qprime|racute|lesges|frac34|abreve|AElig|eqsim|utdot|setmn|urtri|Equal|Uring|seArr|uring|searr|dashv|Dashv|mumap|nabla|iogon|Iogon|sdote|sdotb|scsim|napid|napos|equiv|natur|Acirc|dblac|erarr|nbump|iprod|erDot|ucirc|awint|esdot|angrt|ncong|isinE|scnap|Scirc|scirc|ndash|isins|Ubrcy|nearr|neArr|isinv|nedot|ubrcy|acute|Ycirc|iukcy|Iukcy|xutri|nesim|caret|jcirc|Jcirc|caron|twixt|ddarr|sccue|exist|jmath|sbquo|ngeqq|angst|ccaps|lceil|ngsim|UpTee|delta|Delta|rtrif|nharr|nhArr|nhpar|rtrie|jukcy|Jukcy|kappa|rsquo|Kappa|nlarr|nlArr|TSHcy|rrarr|aogon|Aogon|fflig|xrarr|tshcy|ccirc|nleqq|filig|upsih|nless|dharl|nlsim|fjlig|ropar|nltri|dharr|robrk|roarr|fllig|fltns|roang|rnmid|subnE|subne|lAarr|trisb|Ccirc|acirc|ccups|blank|VDash|forkv|Vdash|langd|cedil|blk12|blk14|laquo|strns|diams|notin|vDash|larrb|blk34|block|disin|uplus|vdash|vBarv|aelig|starf|Wedge|check|xrArr|lates|lbarr|lBarr|notni|lbbrk|bcong|frasl|lbrke|frown|vrtri|vprop|vnsup|gamma|Gamma|wedge|xodot|bdquo|srarr|doteq|ldquo|boxdl|boxdL|gcirc|Gcirc|boxDl|boxDL|boxdr|boxdR|boxDr|TRADE|trade|rlhar|boxDR|vnsub|npart|vltri|rlarr|boxhd|boxhD|nprec|gescc|nrarr|nrArr|boxHd|boxHD|boxhu|boxhU|nrtri|boxHu|clubs|boxHU|times|colon|Colon|gimel|xlArr|Tilde|nsime|tilde|nsmid|nspar|THORN|thorn|xlarr|nsube|nsubE|thkap|xhArr|comma|nsucc|boxul|boxuL|nsupe|nsupE|gneqq|gnsim|boxUl|boxUL|grave|boxur|boxuR|boxUr|boxUR|lescc|angle|bepsi|boxvh|varpi|boxvH|numsp|Theta|gsime|gsiml|theta|boxVh|boxVH|boxvl|gtcir|gtdot|boxvL|boxVl|boxVL|crarr|cross|Cross|nvsim|boxvr|nwarr|nwArr|sqsup|dtdot|Uogon|lhard|lharu|dtrif|ocirc|Ocirc|lhblk|duarr|odash|sqsub|Hacek|sqcup|llarr|duhar|oelig|OElig|ofcir|boxvR|uogon|lltri|boxVr|csube|uuarr|ohbar|csupe|ctdot|olarr|olcir|harrw|oline|sqcap|omacr|Omacr|omega|Omega|boxVR|aleph|lneqq|lnsim|loang|loarr|rharu|lobrk|hcirc|operp|oplus|rhard|Hcirc|orarr|Union|order|ecirc|Ecirc|cuepr|szlig|cuesc|breve|reals|eDDot|Breve|hoarr|lopar|utrif|rdquo|Umacr|umacr|efDot|swArr|ultri|alpha|rceil|ovbar|swarr|Wcirc|wcirc|smtes|smile|bsemi|lrarr|aring|parsl|lrhar|bsime|uhblk|lrtri|cupor|Aring|uharr|uharl|slarr|rbrke|bsolb|lsime|rbbrk|RBarr|lsimg|phone|rBarr|rbarr|icirc|lsquo|Icirc|emacr|Emacr|ratio|simne|plusb|simlE|simgE|simeq|pluse|ltcir|ltdot|empty|xharr|xdtri|iexcl|Alpha|ltrie|rarrw|pound|ltrif|xcirc|bumpe|prcue|bumpE|asymp|amacr|cuvee|Sigma|sigma|iiint|udhar|iiota|ijlig|IJlig|supnE|imacr|Imacr|prime|Prime|image|prnap|eogon|Eogon|rarrc|mdash|mDDot|cuwed|imath|supne|imped|Amacr|udarr|prsim|micro|rarrb|cwint|raquo|infin|eplus|range|rangd|Ucirc|radic|minus|amalg|veeeq|rAarr|epsiv|ycirc|quest|sharp|quot|zwnj|Qscr|race|qscr|Qopf|qopf|qint|rang|Rang|Zscr|zscr|Zopf|zopf|rarr|rArr|Rarr|Pscr|pscr|prop|prod|prnE|prec|ZHcy|zhcy|prap|Zeta|zeta|Popf|popf|Zdot|plus|zdot|Yuml|yuml|phiv|YUcy|yucy|Yscr|yscr|perp|Yopf|yopf|part|para|YIcy|Ouml|rcub|yicy|YAcy|rdca|ouml|osol|Oscr|rdsh|yacy|real|oscr|xvee|andd|rect|andv|Xscr|oror|ordm|ordf|xscr|ange|aopf|Aopf|rHar|Xopf|opar|Oopf|xopf|xnis|rhov|oopf|omid|xmap|oint|apid|apos|ogon|ascr|Ascr|odot|odiv|xcup|xcap|ocir|oast|nvlt|nvle|nvgt|nvge|nvap|Wscr|wscr|auml|ntlg|ntgl|nsup|nsub|nsim|Nscr|nscr|nsce|Wopf|ring|npre|wopf|npar|Auml|Barv|bbrk|Nopf|nopf|nmid|nLtv|beta|ropf|Ropf|Beta|beth|nles|rpar|nleq|bnot|bNot|nldr|NJcy|rscr|Rscr|Vscr|vscr|rsqb|njcy|bopf|nisd|Bopf|rtri|Vopf|nGtv|ngtr|vopf|boxh|boxH|boxv|nges|ngeq|boxV|bscr|scap|Bscr|bsim|Vert|vert|bsol|bull|bump|caps|cdot|ncup|scnE|ncap|nbsp|napE|Cdot|cent|sdot|Vbar|nang|vBar|chcy|Mscr|mscr|sect|semi|CHcy|Mopf|mopf|sext|circ|cire|mldr|mlcp|cirE|comp|shcy|SHcy|vArr|varr|cong|copf|Copf|copy|COPY|malt|male|macr|lvnE|cscr|ltri|sime|ltcc|simg|Cscr|siml|csub|Uuml|lsqb|lsim|uuml|csup|Lscr|lscr|utri|smid|lpar|cups|smte|lozf|darr|Lopf|Uscr|solb|lopf|sopf|Sopf|lneq|uscr|spar|dArr|lnap|Darr|dash|Sqrt|LJcy|ljcy|lHar|dHar|Upsi|upsi|diam|lesg|djcy|DJcy|leqq|dopf|Dopf|dscr|Dscr|dscy|ldsh|ldca|squf|DScy|sscr|Sscr|dsol|lcub|late|star|Star|Uopf|Larr|lArr|larr|uopf|dtri|dzcy|sube|subE|Lang|lang|Kscr|kscr|Kopf|kopf|KJcy|kjcy|KHcy|khcy|DZcy|ecir|edot|eDot|Jscr|jscr|succ|Jopf|jopf|Edot|uHar|emsp|ensp|Iuml|iuml|eopf|isin|Iscr|iscr|Eopf|epar|sung|epsi|escr|sup1|sup2|sup3|Iota|iota|supe|supE|Iopf|iopf|IOcy|iocy|Escr|esim|Esim|imof|Uarr|QUOT|uArr|uarr|euml|IEcy|iecy|Idot|Euml|euro|excl|Hscr|hscr|Hopf|hopf|TScy|tscy|Tscr|hbar|tscr|flat|tbrk|fnof|hArr|harr|half|fopf|Fopf|tdot|gvnE|fork|trie|gtcc|fscr|Fscr|gdot|gsim|Gscr|gscr|Gopf|gopf|gneq|Gdot|tosa|gnap|Topf|topf|geqq|toea|GJcy|gjcy|tint|gesl|mid|Sfr|ggg|top|ges|gla|glE|glj|geq|gne|gEl|gel|gnE|Gcy|gcy|gap|Tfr|tfr|Tcy|tcy|Hat|Tau|Ffr|tau|Tab|hfr|Hfr|ffr|Fcy|fcy|icy|Icy|iff|ETH|eth|ifr|Ifr|Eta|eta|int|Int|Sup|sup|ucy|Ucy|Sum|sum|jcy|ENG|ufr|Ufr|eng|Jcy|jfr|els|ell|egs|Efr|efr|Jfr|uml|kcy|Kcy|Ecy|ecy|kfr|Kfr|lap|Sub|sub|lat|lcy|Lcy|leg|Dot|dot|lEg|leq|les|squ|div|die|lfr|Lfr|lgE|Dfr|dfr|Del|deg|Dcy|dcy|lne|lnE|sol|loz|smt|Cup|lrm|cup|lsh|Lsh|sim|shy|map|Map|mcy|Mcy|mfr|Mfr|mho|gfr|Gfr|sfr|cir|Chi|chi|nap|Cfr|vcy|Vcy|cfr|Scy|scy|ncy|Ncy|vee|Vee|Cap|cap|nfr|scE|sce|Nfr|nge|ngE|nGg|vfr|Vfr|ngt|bot|nGt|nis|niv|Rsh|rsh|nle|nlE|bne|Bfr|bfr|nLl|nlt|nLt|Bcy|bcy|not|Not|rlm|wfr|Wfr|npr|nsc|num|ocy|ast|Ocy|ofr|xfr|Xfr|Ofr|ogt|ohm|apE|olt|Rho|ape|rho|Rfr|rfr|ord|REG|ang|reg|orv|And|and|AMP|Rcy|amp|Afr|ycy|Ycy|yen|yfr|Yfr|rcy|par|pcy|Pcy|pfr|Pfr|phi|Phi|afr|Acy|acy|zcy|Zcy|piv|acE|acd|zfr|Zfr|pre|prE|psi|Psi|qfr|Qfr|zwj|Or|ge|Gg|gt|gg|el|oS|lt|Lt|LT|Re|lg|gl|eg|ne|Im|it|le|DD|wp|wr|nu|Nu|dd|lE|Sc|sc|pi|Pi|ee|af|ll|Ll|rx|gE|xi|pm|Xi|ic|pr|Pr|in|ni|mp|mu|ac|Mu|or|ap|Gt|GT|ii);|&(Aacute|Agrave|Atilde|Ccedil|Eacute|Egrave|Iacute|Igrave|Ntilde|Oacute|Ograve|Oslash|Otilde|Uacute|Ugrave|Yacute|aacute|agrave|atilde|brvbar|ccedil|curren|divide|eacute|egrave|frac12|frac14|frac34|iacute|igrave|iquest|middot|ntilde|oacute|ograve|oslash|otilde|plusmn|uacute|ugrave|yacute|AElig|Acirc|Aring|Ecirc|Icirc|Ocirc|THORN|Ucirc|acirc|acute|aelig|aring|cedil|ecirc|icirc|iexcl|laquo|micro|ocirc|pound|raquo|szlig|thorn|times|ucirc|Auml|COPY|Euml|Iuml|Ouml|QUOT|Uuml|auml|cent|copy|euml|iuml|macr|nbsp|ordf|ordm|ouml|para|quot|sect|sup1|sup2|sup3|uuml|yuml|AMP|ETH|REG|amp|deg|eth|not|reg|shy|uml|yen|GT|LT|gt|lt)(?!;)([=a-zA-Z0-9]?)|&#([0-9]+)(;?)|&#[xX]([a-fA-F0-9]+)(;?)|&([0-9a-zA-Z]+)/g;\n\tvar decodeMap = {'aacute':'\\xE1','Aacute':'\\xC1','abreve':'\\u0103','Abreve':'\\u0102','ac':'\\u223E','acd':'\\u223F','acE':'\\u223E\\u0333','acirc':'\\xE2','Acirc':'\\xC2','acute':'\\xB4','acy':'\\u0430','Acy':'\\u0410','aelig':'\\xE6','AElig':'\\xC6','af':'\\u2061','afr':'\\uD835\\uDD1E','Afr':'\\uD835\\uDD04','agrave':'\\xE0','Agrave':'\\xC0','alefsym':'\\u2135','aleph':'\\u2135','alpha':'\\u03B1','Alpha':'\\u0391','amacr':'\\u0101','Amacr':'\\u0100','amalg':'\\u2A3F','amp':'&','AMP':'&','and':'\\u2227','And':'\\u2A53','andand':'\\u2A55','andd':'\\u2A5C','andslope':'\\u2A58','andv':'\\u2A5A','ang':'\\u2220','ange':'\\u29A4','angle':'\\u2220','angmsd':'\\u2221','angmsdaa':'\\u29A8','angmsdab':'\\u29A9','angmsdac':'\\u29AA','angmsdad':'\\u29AB','angmsdae':'\\u29AC','angmsdaf':'\\u29AD','angmsdag':'\\u29AE','angmsdah':'\\u29AF','angrt':'\\u221F','angrtvb':'\\u22BE','angrtvbd':'\\u299D','angsph':'\\u2222','angst':'\\xC5','angzarr':'\\u237C','aogon':'\\u0105','Aogon':'\\u0104','aopf':'\\uD835\\uDD52','Aopf':'\\uD835\\uDD38','ap':'\\u2248','apacir':'\\u2A6F','ape':'\\u224A','apE':'\\u2A70','apid':'\\u224B','apos':'\\'','ApplyFunction':'\\u2061','approx':'\\u2248','approxeq':'\\u224A','aring':'\\xE5','Aring':'\\xC5','ascr':'\\uD835\\uDCB6','Ascr':'\\uD835\\uDC9C','Assign':'\\u2254','ast':'*','asymp':'\\u2248','asympeq':'\\u224D','atilde':'\\xE3','Atilde':'\\xC3','auml':'\\xE4','Auml':'\\xC4','awconint':'\\u2233','awint':'\\u2A11','backcong':'\\u224C','backepsilon':'\\u03F6','backprime':'\\u2035','backsim':'\\u223D','backsimeq':'\\u22CD','Backslash':'\\u2216','Barv':'\\u2AE7','barvee':'\\u22BD','barwed':'\\u2305','Barwed':'\\u2306','barwedge':'\\u2305','bbrk':'\\u23B5','bbrktbrk':'\\u23B6','bcong':'\\u224C','bcy':'\\u0431','Bcy':'\\u0411','bdquo':'\\u201E','becaus':'\\u2235','because':'\\u2235','Because':'\\u2235','bemptyv':'\\u29B0','bepsi':'\\u03F6','bernou':'\\u212C','Bernoullis':'\\u212C','beta':'\\u03B2','Beta':'\\u0392','beth':'\\u2136','between':'\\u226C','bfr':'\\uD835\\uDD1F','Bfr':'\\uD835\\uDD05','bigcap':'\\u22C2','bigcirc':'\\u25EF','bigcup':'\\u22C3','bigodot':'\\u2A00','bigoplus':'\\u2A01','bigotimes':'\\u2A02','bigsqcup':'\\u2A06','bigstar':'\\u2605','bigtriangledown':'\\u25BD','bigtriangleup':'\\u25B3','biguplus':'\\u2A04','bigvee':'\\u22C1','bigwedge':'\\u22C0','bkarow':'\\u290D','blacklozenge':'\\u29EB','blacksquare':'\\u25AA','blacktriangle':'\\u25B4','blacktriangledown':'\\u25BE','blacktriangleleft':'\\u25C2','blacktriangleright':'\\u25B8','blank':'\\u2423','blk12':'\\u2592','blk14':'\\u2591','blk34':'\\u2593','block':'\\u2588','bne':'=\\u20E5','bnequiv':'\\u2261\\u20E5','bnot':'\\u2310','bNot':'\\u2AED','bopf':'\\uD835\\uDD53','Bopf':'\\uD835\\uDD39','bot':'\\u22A5','bottom':'\\u22A5','bowtie':'\\u22C8','boxbox':'\\u29C9','boxdl':'\\u2510','boxdL':'\\u2555','boxDl':'\\u2556','boxDL':'\\u2557','boxdr':'\\u250C','boxdR':'\\u2552','boxDr':'\\u2553','boxDR':'\\u2554','boxh':'\\u2500','boxH':'\\u2550','boxhd':'\\u252C','boxhD':'\\u2565','boxHd':'\\u2564','boxHD':'\\u2566','boxhu':'\\u2534','boxhU':'\\u2568','boxHu':'\\u2567','boxHU':'\\u2569','boxminus':'\\u229F','boxplus':'\\u229E','boxtimes':'\\u22A0','boxul':'\\u2518','boxuL':'\\u255B','boxUl':'\\u255C','boxUL':'\\u255D','boxur':'\\u2514','boxuR':'\\u2558','boxUr':'\\u2559','boxUR':'\\u255A','boxv':'\\u2502','boxV':'\\u2551','boxvh':'\\u253C','boxvH':'\\u256A','boxVh':'\\u256B','boxVH':'\\u256C','boxvl':'\\u2524','boxvL':'\\u2561','boxVl':'\\u2562','boxVL':'\\u2563','boxvr':'\\u251C','boxvR':'\\u255E','boxVr':'\\u255F','boxVR':'\\u2560','bprime':'\\u2035','breve':'\\u02D8','Breve':'\\u02D8','brvbar':'\\xA6','bscr':'\\uD835\\uDCB7','Bscr':'\\u212C','bsemi':'\\u204F','bsim':'\\u223D','bsime':'\\u22CD','bsol':'\\\\','bsolb':'\\u29C5','bsolhsub':'\\u27C8','bull':'\\u2022','bullet':'\\u2022','bump':'\\u224E','bumpe':'\\u224F','bumpE':'\\u2AAE','bumpeq':'\\u224F','Bumpeq':'\\u224E','cacute':'\\u0107','Cacute':'\\u0106','cap':'\\u2229','Cap':'\\u22D2','capand':'\\u2A44','capbrcup':'\\u2A49','capcap':'\\u2A4B','capcup':'\\u2A47','capdot':'\\u2A40','CapitalDifferentialD':'\\u2145','caps':'\\u2229\\uFE00','caret':'\\u2041','caron':'\\u02C7','Cayleys':'\\u212D','ccaps':'\\u2A4D','ccaron':'\\u010D','Ccaron':'\\u010C','ccedil':'\\xE7','Ccedil':'\\xC7','ccirc':'\\u0109','Ccirc':'\\u0108','Cconint':'\\u2230','ccups':'\\u2A4C','ccupssm':'\\u2A50','cdot':'\\u010B','Cdot':'\\u010A','cedil':'\\xB8','Cedilla':'\\xB8','cemptyv':'\\u29B2','cent':'\\xA2','centerdot':'\\xB7','CenterDot':'\\xB7','cfr':'\\uD835\\uDD20','Cfr':'\\u212D','chcy':'\\u0447','CHcy':'\\u0427','check':'\\u2713','checkmark':'\\u2713','chi':'\\u03C7','Chi':'\\u03A7','cir':'\\u25CB','circ':'\\u02C6','circeq':'\\u2257','circlearrowleft':'\\u21BA','circlearrowright':'\\u21BB','circledast':'\\u229B','circledcirc':'\\u229A','circleddash':'\\u229D','CircleDot':'\\u2299','circledR':'\\xAE','circledS':'\\u24C8','CircleMinus':'\\u2296','CirclePlus':'\\u2295','CircleTimes':'\\u2297','cire':'\\u2257','cirE':'\\u29C3','cirfnint':'\\u2A10','cirmid':'\\u2AEF','cirscir':'\\u29C2','ClockwiseContourIntegral':'\\u2232','CloseCurlyDoubleQuote':'\\u201D','CloseCurlyQuote':'\\u2019','clubs':'\\u2663','clubsuit':'\\u2663','colon':':','Colon':'\\u2237','colone':'\\u2254','Colone':'\\u2A74','coloneq':'\\u2254','comma':',','commat':'@','comp':'\\u2201','compfn':'\\u2218','complement':'\\u2201','complexes':'\\u2102','cong':'\\u2245','congdot':'\\u2A6D','Congruent':'\\u2261','conint':'\\u222E','Conint':'\\u222F','ContourIntegral':'\\u222E','copf':'\\uD835\\uDD54','Copf':'\\u2102','coprod':'\\u2210','Coproduct':'\\u2210','copy':'\\xA9','COPY':'\\xA9','copysr':'\\u2117','CounterClockwiseContourIntegral':'\\u2233','crarr':'\\u21B5','cross':'\\u2717','Cross':'\\u2A2F','cscr':'\\uD835\\uDCB8','Cscr':'\\uD835\\uDC9E','csub':'\\u2ACF','csube':'\\u2AD1','csup':'\\u2AD0','csupe':'\\u2AD2','ctdot':'\\u22EF','cudarrl':'\\u2938','cudarrr':'\\u2935','cuepr':'\\u22DE','cuesc':'\\u22DF','cularr':'\\u21B6','cularrp':'\\u293D','cup':'\\u222A','Cup':'\\u22D3','cupbrcap':'\\u2A48','cupcap':'\\u2A46','CupCap':'\\u224D','cupcup':'\\u2A4A','cupdot':'\\u228D','cupor':'\\u2A45','cups':'\\u222A\\uFE00','curarr':'\\u21B7','curarrm':'\\u293C','curlyeqprec':'\\u22DE','curlyeqsucc':'\\u22DF','curlyvee':'\\u22CE','curlywedge':'\\u22CF','curren':'\\xA4','curvearrowleft':'\\u21B6','curvearrowright':'\\u21B7','cuvee':'\\u22CE','cuwed':'\\u22CF','cwconint':'\\u2232','cwint':'\\u2231','cylcty':'\\u232D','dagger':'\\u2020','Dagger':'\\u2021','daleth':'\\u2138','darr':'\\u2193','dArr':'\\u21D3','Darr':'\\u21A1','dash':'\\u2010','dashv':'\\u22A3','Dashv':'\\u2AE4','dbkarow':'\\u290F','dblac':'\\u02DD','dcaron':'\\u010F','Dcaron':'\\u010E','dcy':'\\u0434','Dcy':'\\u0414','dd':'\\u2146','DD':'\\u2145','ddagger':'\\u2021','ddarr':'\\u21CA','DDotrahd':'\\u2911','ddotseq':'\\u2A77','deg':'\\xB0','Del':'\\u2207','delta':'\\u03B4','Delta':'\\u0394','demptyv':'\\u29B1','dfisht':'\\u297F','dfr':'\\uD835\\uDD21','Dfr':'\\uD835\\uDD07','dHar':'\\u2965','dharl':'\\u21C3','dharr':'\\u21C2','DiacriticalAcute':'\\xB4','DiacriticalDot':'\\u02D9','DiacriticalDoubleAcute':'\\u02DD','DiacriticalGrave':'`','DiacriticalTilde':'\\u02DC','diam':'\\u22C4','diamond':'\\u22C4','Diamond':'\\u22C4','diamondsuit':'\\u2666','diams':'\\u2666','die':'\\xA8','DifferentialD':'\\u2146','digamma':'\\u03DD','disin':'\\u22F2','div':'\\xF7','divide':'\\xF7','divideontimes':'\\u22C7','divonx':'\\u22C7','djcy':'\\u0452','DJcy':'\\u0402','dlcorn':'\\u231E','dlcrop':'\\u230D','dollar':'$','dopf':'\\uD835\\uDD55','Dopf':'\\uD835\\uDD3B','dot':'\\u02D9','Dot':'\\xA8','DotDot':'\\u20DC','doteq':'\\u2250','doteqdot':'\\u2251','DotEqual':'\\u2250','dotminus':'\\u2238','dotplus':'\\u2214','dotsquare':'\\u22A1','doublebarwedge':'\\u2306','DoubleContourIntegral':'\\u222F','DoubleDot':'\\xA8','DoubleDownArrow':'\\u21D3','DoubleLeftArrow':'\\u21D0','DoubleLeftRightArrow':'\\u21D4','DoubleLeftTee':'\\u2AE4','DoubleLongLeftArrow':'\\u27F8','DoubleLongLeftRightArrow':'\\u27FA','DoubleLongRightArrow':'\\u27F9','DoubleRightArrow':'\\u21D2','DoubleRightTee':'\\u22A8','DoubleUpArrow':'\\u21D1','DoubleUpDownArrow':'\\u21D5','DoubleVerticalBar':'\\u2225','downarrow':'\\u2193','Downarrow':'\\u21D3','DownArrow':'\\u2193','DownArrowBar':'\\u2913','DownArrowUpArrow':'\\u21F5','DownBreve':'\\u0311','downdownarrows':'\\u21CA','downharpoonleft':'\\u21C3','downharpoonright':'\\u21C2','DownLeftRightVector':'\\u2950','DownLeftTeeVector':'\\u295E','DownLeftVector':'\\u21BD','DownLeftVectorBar':'\\u2956','DownRightTeeVector':'\\u295F','DownRightVector':'\\u21C1','DownRightVectorBar':'\\u2957','DownTee':'\\u22A4','DownTeeArrow':'\\u21A7','drbkarow':'\\u2910','drcorn':'\\u231F','drcrop':'\\u230C','dscr':'\\uD835\\uDCB9','Dscr':'\\uD835\\uDC9F','dscy':'\\u0455','DScy':'\\u0405','dsol':'\\u29F6','dstrok':'\\u0111','Dstrok':'\\u0110','dtdot':'\\u22F1','dtri':'\\u25BF','dtrif':'\\u25BE','duarr':'\\u21F5','duhar':'\\u296F','dwangle':'\\u29A6','dzcy':'\\u045F','DZcy':'\\u040F','dzigrarr':'\\u27FF','eacute':'\\xE9','Eacute':'\\xC9','easter':'\\u2A6E','ecaron':'\\u011B','Ecaron':'\\u011A','ecir':'\\u2256','ecirc':'\\xEA','Ecirc':'\\xCA','ecolon':'\\u2255','ecy':'\\u044D','Ecy':'\\u042D','eDDot':'\\u2A77','edot':'\\u0117','eDot':'\\u2251','Edot':'\\u0116','ee':'\\u2147','efDot':'\\u2252','efr':'\\uD835\\uDD22','Efr':'\\uD835\\uDD08','eg':'\\u2A9A','egrave':'\\xE8','Egrave':'\\xC8','egs':'\\u2A96','egsdot':'\\u2A98','el':'\\u2A99','Element':'\\u2208','elinters':'\\u23E7','ell':'\\u2113','els':'\\u2A95','elsdot':'\\u2A97','emacr':'\\u0113','Emacr':'\\u0112','empty':'\\u2205','emptyset':'\\u2205','EmptySmallSquare':'\\u25FB','emptyv':'\\u2205','EmptyVerySmallSquare':'\\u25AB','emsp':'\\u2003','emsp13':'\\u2004','emsp14':'\\u2005','eng':'\\u014B','ENG':'\\u014A','ensp':'\\u2002','eogon':'\\u0119','Eogon':'\\u0118','eopf':'\\uD835\\uDD56','Eopf':'\\uD835\\uDD3C','epar':'\\u22D5','eparsl':'\\u29E3','eplus':'\\u2A71','epsi':'\\u03B5','epsilon':'\\u03B5','Epsilon':'\\u0395','epsiv':'\\u03F5','eqcirc':'\\u2256','eqcolon':'\\u2255','eqsim':'\\u2242','eqslantgtr':'\\u2A96','eqslantless':'\\u2A95','Equal':'\\u2A75','equals':'=','EqualTilde':'\\u2242','equest':'\\u225F','Equilibrium':'\\u21CC','equiv':'\\u2261','equivDD':'\\u2A78','eqvparsl':'\\u29E5','erarr':'\\u2971','erDot':'\\u2253','escr':'\\u212F','Escr':'\\u2130','esdot':'\\u2250','esim':'\\u2242','Esim':'\\u2A73','eta':'\\u03B7','Eta':'\\u0397','eth':'\\xF0','ETH':'\\xD0','euml':'\\xEB','Euml':'\\xCB','euro':'\\u20AC','excl':'!','exist':'\\u2203','Exists':'\\u2203','expectation':'\\u2130','exponentiale':'\\u2147','ExponentialE':'\\u2147','fallingdotseq':'\\u2252','fcy':'\\u0444','Fcy':'\\u0424','female':'\\u2640','ffilig':'\\uFB03','fflig':'\\uFB00','ffllig':'\\uFB04','ffr':'\\uD835\\uDD23','Ffr':'\\uD835\\uDD09','filig':'\\uFB01','FilledSmallSquare':'\\u25FC','FilledVerySmallSquare':'\\u25AA','fjlig':'fj','flat':'\\u266D','fllig':'\\uFB02','fltns':'\\u25B1','fnof':'\\u0192','fopf':'\\uD835\\uDD57','Fopf':'\\uD835\\uDD3D','forall':'\\u2200','ForAll':'\\u2200','fork':'\\u22D4','forkv':'\\u2AD9','Fouriertrf':'\\u2131','fpartint':'\\u2A0D','frac12':'\\xBD','frac13':'\\u2153','frac14':'\\xBC','frac15':'\\u2155','frac16':'\\u2159','frac18':'\\u215B','frac23':'\\u2154','frac25':'\\u2156','frac34':'\\xBE','frac35':'\\u2157','frac38':'\\u215C','frac45':'\\u2158','frac56':'\\u215A','frac58':'\\u215D','frac78':'\\u215E','frasl':'\\u2044','frown':'\\u2322','fscr':'\\uD835\\uDCBB','Fscr':'\\u2131','gacute':'\\u01F5','gamma':'\\u03B3','Gamma':'\\u0393','gammad':'\\u03DD','Gammad':'\\u03DC','gap':'\\u2A86','gbreve':'\\u011F','Gbreve':'\\u011E','Gcedil':'\\u0122','gcirc':'\\u011D','Gcirc':'\\u011C','gcy':'\\u0433','Gcy':'\\u0413','gdot':'\\u0121','Gdot':'\\u0120','ge':'\\u2265','gE':'\\u2267','gel':'\\u22DB','gEl':'\\u2A8C','geq':'\\u2265','geqq':'\\u2267','geqslant':'\\u2A7E','ges':'\\u2A7E','gescc':'\\u2AA9','gesdot':'\\u2A80','gesdoto':'\\u2A82','gesdotol':'\\u2A84','gesl':'\\u22DB\\uFE00','gesles':'\\u2A94','gfr':'\\uD835\\uDD24','Gfr':'\\uD835\\uDD0A','gg':'\\u226B','Gg':'\\u22D9','ggg':'\\u22D9','gimel':'\\u2137','gjcy':'\\u0453','GJcy':'\\u0403','gl':'\\u2277','gla':'\\u2AA5','glE':'\\u2A92','glj':'\\u2AA4','gnap':'\\u2A8A','gnapprox':'\\u2A8A','gne':'\\u2A88','gnE':'\\u2269','gneq':'\\u2A88','gneqq':'\\u2269','gnsim':'\\u22E7','gopf':'\\uD835\\uDD58','Gopf':'\\uD835\\uDD3E','grave':'`','GreaterEqual':'\\u2265','GreaterEqualLess':'\\u22DB','GreaterFullEqual':'\\u2267','GreaterGreater':'\\u2AA2','GreaterLess':'\\u2277','GreaterSlantEqual':'\\u2A7E','GreaterTilde':'\\u2273','gscr':'\\u210A','Gscr':'\\uD835\\uDCA2','gsim':'\\u2273','gsime':'\\u2A8E','gsiml':'\\u2A90','gt':'>','Gt':'\\u226B','GT':'>','gtcc':'\\u2AA7','gtcir':'\\u2A7A','gtdot':'\\u22D7','gtlPar':'\\u2995','gtquest':'\\u2A7C','gtrapprox':'\\u2A86','gtrarr':'\\u2978','gtrdot':'\\u22D7','gtreqless':'\\u22DB','gtreqqless':'\\u2A8C','gtrless':'\\u2277','gtrsim':'\\u2273','gvertneqq':'\\u2269\\uFE00','gvnE':'\\u2269\\uFE00','Hacek':'\\u02C7','hairsp':'\\u200A','half':'\\xBD','hamilt':'\\u210B','hardcy':'\\u044A','HARDcy':'\\u042A','harr':'\\u2194','hArr':'\\u21D4','harrcir':'\\u2948','harrw':'\\u21AD','Hat':'^','hbar':'\\u210F','hcirc':'\\u0125','Hcirc':'\\u0124','hearts':'\\u2665','heartsuit':'\\u2665','hellip':'\\u2026','hercon':'\\u22B9','hfr':'\\uD835\\uDD25','Hfr':'\\u210C','HilbertSpace':'\\u210B','hksearow':'\\u2925','hkswarow':'\\u2926','hoarr':'\\u21FF','homtht':'\\u223B','hookleftarrow':'\\u21A9','hookrightarrow':'\\u21AA','hopf':'\\uD835\\uDD59','Hopf':'\\u210D','horbar':'\\u2015','HorizontalLine':'\\u2500','hscr':'\\uD835\\uDCBD','Hscr':'\\u210B','hslash':'\\u210F','hstrok':'\\u0127','Hstrok':'\\u0126','HumpDownHump':'\\u224E','HumpEqual':'\\u224F','hybull':'\\u2043','hyphen':'\\u2010','iacute':'\\xED','Iacute':'\\xCD','ic':'\\u2063','icirc':'\\xEE','Icirc':'\\xCE','icy':'\\u0438','Icy':'\\u0418','Idot':'\\u0130','iecy':'\\u0435','IEcy':'\\u0415','iexcl':'\\xA1','iff':'\\u21D4','ifr':'\\uD835\\uDD26','Ifr':'\\u2111','igrave':'\\xEC','Igrave':'\\xCC','ii':'\\u2148','iiiint':'\\u2A0C','iiint':'\\u222D','iinfin':'\\u29DC','iiota':'\\u2129','ijlig':'\\u0133','IJlig':'\\u0132','Im':'\\u2111','imacr':'\\u012B','Imacr':'\\u012A','image':'\\u2111','ImaginaryI':'\\u2148','imagline':'\\u2110','imagpart':'\\u2111','imath':'\\u0131','imof':'\\u22B7','imped':'\\u01B5','Implies':'\\u21D2','in':'\\u2208','incare':'\\u2105','infin':'\\u221E','infintie':'\\u29DD','inodot':'\\u0131','int':'\\u222B','Int':'\\u222C','intcal':'\\u22BA','integers':'\\u2124','Integral':'\\u222B','intercal':'\\u22BA','Intersection':'\\u22C2','intlarhk':'\\u2A17','intprod':'\\u2A3C','InvisibleComma':'\\u2063','InvisibleTimes':'\\u2062','iocy':'\\u0451','IOcy':'\\u0401','iogon':'\\u012F','Iogon':'\\u012E','iopf':'\\uD835\\uDD5A','Iopf':'\\uD835\\uDD40','iota':'\\u03B9','Iota':'\\u0399','iprod':'\\u2A3C','iquest':'\\xBF','iscr':'\\uD835\\uDCBE','Iscr':'\\u2110','isin':'\\u2208','isindot':'\\u22F5','isinE':'\\u22F9','isins':'\\u22F4','isinsv':'\\u22F3','isinv':'\\u2208','it':'\\u2062','itilde':'\\u0129','Itilde':'\\u0128','iukcy':'\\u0456','Iukcy':'\\u0406','iuml':'\\xEF','Iuml':'\\xCF','jcirc':'\\u0135','Jcirc':'\\u0134','jcy':'\\u0439','Jcy':'\\u0419','jfr':'\\uD835\\uDD27','Jfr':'\\uD835\\uDD0D','jmath':'\\u0237','jopf':'\\uD835\\uDD5B','Jopf':'\\uD835\\uDD41','jscr':'\\uD835\\uDCBF','Jscr':'\\uD835\\uDCA5','jsercy':'\\u0458','Jsercy':'\\u0408','jukcy':'\\u0454','Jukcy':'\\u0404','kappa':'\\u03BA','Kappa':'\\u039A','kappav':'\\u03F0','kcedil':'\\u0137','Kcedil':'\\u0136','kcy':'\\u043A','Kcy':'\\u041A','kfr':'\\uD835\\uDD28','Kfr':'\\uD835\\uDD0E','kgreen':'\\u0138','khcy':'\\u0445','KHcy':'\\u0425','kjcy':'\\u045C','KJcy':'\\u040C','kopf':'\\uD835\\uDD5C','Kopf':'\\uD835\\uDD42','kscr':'\\uD835\\uDCC0','Kscr':'\\uD835\\uDCA6','lAarr':'\\u21DA','lacute':'\\u013A','Lacute':'\\u0139','laemptyv':'\\u29B4','lagran':'\\u2112','lambda':'\\u03BB','Lambda':'\\u039B','lang':'\\u27E8','Lang':'\\u27EA','langd':'\\u2991','langle':'\\u27E8','lap':'\\u2A85','Laplacetrf':'\\u2112','laquo':'\\xAB','larr':'\\u2190','lArr':'\\u21D0','Larr':'\\u219E','larrb':'\\u21E4','larrbfs':'\\u291F','larrfs':'\\u291D','larrhk':'\\u21A9','larrlp':'\\u21AB','larrpl':'\\u2939','larrsim':'\\u2973','larrtl':'\\u21A2','lat':'\\u2AAB','latail':'\\u2919','lAtail':'\\u291B','late':'\\u2AAD','lates':'\\u2AAD\\uFE00','lbarr':'\\u290C','lBarr':'\\u290E','lbbrk':'\\u2772','lbrace':'{','lbrack':'[','lbrke':'\\u298B','lbrksld':'\\u298F','lbrkslu':'\\u298D','lcaron':'\\u013E','Lcaron':'\\u013D','lcedil':'\\u013C','Lcedil':'\\u013B','lceil':'\\u2308','lcub':'{','lcy':'\\u043B','Lcy':'\\u041B','ldca':'\\u2936','ldquo':'\\u201C','ldquor':'\\u201E','ldrdhar':'\\u2967','ldrushar':'\\u294B','ldsh':'\\u21B2','le':'\\u2264','lE':'\\u2266','LeftAngleBracket':'\\u27E8','leftarrow':'\\u2190','Leftarrow':'\\u21D0','LeftArrow':'\\u2190','LeftArrowBar':'\\u21E4','LeftArrowRightArrow':'\\u21C6','leftarrowtail':'\\u21A2','LeftCeiling':'\\u2308','LeftDoubleBracket':'\\u27E6','LeftDownTeeVector':'\\u2961','LeftDownVector':'\\u21C3','LeftDownVectorBar':'\\u2959','LeftFloor':'\\u230A','leftharpoondown':'\\u21BD','leftharpoonup':'\\u21BC','leftleftarrows':'\\u21C7','leftrightarrow':'\\u2194','Leftrightarrow':'\\u21D4','LeftRightArrow':'\\u2194','leftrightarrows':'\\u21C6','leftrightharpoons':'\\u21CB','leftrightsquigarrow':'\\u21AD','LeftRightVector':'\\u294E','LeftTee':'\\u22A3','LeftTeeArrow':'\\u21A4','LeftTeeVector':'\\u295A','leftthreetimes':'\\u22CB','LeftTriangle':'\\u22B2','LeftTriangleBar':'\\u29CF','LeftTriangleEqual':'\\u22B4','LeftUpDownVector':'\\u2951','LeftUpTeeVector':'\\u2960','LeftUpVector':'\\u21BF','LeftUpVectorBar':'\\u2958','LeftVector':'\\u21BC','LeftVectorBar':'\\u2952','leg':'\\u22DA','lEg':'\\u2A8B','leq':'\\u2264','leqq':'\\u2266','leqslant':'\\u2A7D','les':'\\u2A7D','lescc':'\\u2AA8','lesdot':'\\u2A7F','lesdoto':'\\u2A81','lesdotor':'\\u2A83','lesg':'\\u22DA\\uFE00','lesges':'\\u2A93','lessapprox':'\\u2A85','lessdot':'\\u22D6','lesseqgtr':'\\u22DA','lesseqqgtr':'\\u2A8B','LessEqualGreater':'\\u22DA','LessFullEqual':'\\u2266','LessGreater':'\\u2276','lessgtr':'\\u2276','LessLess':'\\u2AA1','lesssim':'\\u2272','LessSlantEqual':'\\u2A7D','LessTilde':'\\u2272','lfisht':'\\u297C','lfloor':'\\u230A','lfr':'\\uD835\\uDD29','Lfr':'\\uD835\\uDD0F','lg':'\\u2276','lgE':'\\u2A91','lHar':'\\u2962','lhard':'\\u21BD','lharu':'\\u21BC','lharul':'\\u296A','lhblk':'\\u2584','ljcy':'\\u0459','LJcy':'\\u0409','ll':'\\u226A','Ll':'\\u22D8','llarr':'\\u21C7','llcorner':'\\u231E','Lleftarrow':'\\u21DA','llhard':'\\u296B','lltri':'\\u25FA','lmidot':'\\u0140','Lmidot':'\\u013F','lmoust':'\\u23B0','lmoustache':'\\u23B0','lnap':'\\u2A89','lnapprox':'\\u2A89','lne':'\\u2A87','lnE':'\\u2268','lneq':'\\u2A87','lneqq':'\\u2268','lnsim':'\\u22E6','loang':'\\u27EC','loarr':'\\u21FD','lobrk':'\\u27E6','longleftarrow':'\\u27F5','Longleftarrow':'\\u27F8','LongLeftArrow':'\\u27F5','longleftrightarrow':'\\u27F7','Longleftrightarrow':'\\u27FA','LongLeftRightArrow':'\\u27F7','longmapsto':'\\u27FC','longrightarrow':'\\u27F6','Longrightarrow':'\\u27F9','LongRightArrow':'\\u27F6','looparrowleft':'\\u21AB','looparrowright':'\\u21AC','lopar':'\\u2985','lopf':'\\uD835\\uDD5D','Lopf':'\\uD835\\uDD43','loplus':'\\u2A2D','lotimes':'\\u2A34','lowast':'\\u2217','lowbar':'_','LowerLeftArrow':'\\u2199','LowerRightArrow':'\\u2198','loz':'\\u25CA','lozenge':'\\u25CA','lozf':'\\u29EB','lpar':'(','lparlt':'\\u2993','lrarr':'\\u21C6','lrcorner':'\\u231F','lrhar':'\\u21CB','lrhard':'\\u296D','lrm':'\\u200E','lrtri':'\\u22BF','lsaquo':'\\u2039','lscr':'\\uD835\\uDCC1','Lscr':'\\u2112','lsh':'\\u21B0','Lsh':'\\u21B0','lsim':'\\u2272','lsime':'\\u2A8D','lsimg':'\\u2A8F','lsqb':'[','lsquo':'\\u2018','lsquor':'\\u201A','lstrok':'\\u0142','Lstrok':'\\u0141','lt':'<','Lt':'\\u226A','LT':'<','ltcc':'\\u2AA6','ltcir':'\\u2A79','ltdot':'\\u22D6','lthree':'\\u22CB','ltimes':'\\u22C9','ltlarr':'\\u2976','ltquest':'\\u2A7B','ltri':'\\u25C3','ltrie':'\\u22B4','ltrif':'\\u25C2','ltrPar':'\\u2996','lurdshar':'\\u294A','luruhar':'\\u2966','lvertneqq':'\\u2268\\uFE00','lvnE':'\\u2268\\uFE00','macr':'\\xAF','male':'\\u2642','malt':'\\u2720','maltese':'\\u2720','map':'\\u21A6','Map':'\\u2905','mapsto':'\\u21A6','mapstodown':'\\u21A7','mapstoleft':'\\u21A4','mapstoup':'\\u21A5','marker':'\\u25AE','mcomma':'\\u2A29','mcy':'\\u043C','Mcy':'\\u041C','mdash':'\\u2014','mDDot':'\\u223A','measuredangle':'\\u2221','MediumSpace':'\\u205F','Mellintrf':'\\u2133','mfr':'\\uD835\\uDD2A','Mfr':'\\uD835\\uDD10','mho':'\\u2127','micro':'\\xB5','mid':'\\u2223','midast':'*','midcir':'\\u2AF0','middot':'\\xB7','minus':'\\u2212','minusb':'\\u229F','minusd':'\\u2238','minusdu':'\\u2A2A','MinusPlus':'\\u2213','mlcp':'\\u2ADB','mldr':'\\u2026','mnplus':'\\u2213','models':'\\u22A7','mopf':'\\uD835\\uDD5E','Mopf':'\\uD835\\uDD44','mp':'\\u2213','mscr':'\\uD835\\uDCC2','Mscr':'\\u2133','mstpos':'\\u223E','mu':'\\u03BC','Mu':'\\u039C','multimap':'\\u22B8','mumap':'\\u22B8','nabla':'\\u2207','nacute':'\\u0144','Nacute':'\\u0143','nang':'\\u2220\\u20D2','nap':'\\u2249','napE':'\\u2A70\\u0338','napid':'\\u224B\\u0338','napos':'\\u0149','napprox':'\\u2249','natur':'\\u266E','natural':'\\u266E','naturals':'\\u2115','nbsp':'\\xA0','nbump':'\\u224E\\u0338','nbumpe':'\\u224F\\u0338','ncap':'\\u2A43','ncaron':'\\u0148','Ncaron':'\\u0147','ncedil':'\\u0146','Ncedil':'\\u0145','ncong':'\\u2247','ncongdot':'\\u2A6D\\u0338','ncup':'\\u2A42','ncy':'\\u043D','Ncy':'\\u041D','ndash':'\\u2013','ne':'\\u2260','nearhk':'\\u2924','nearr':'\\u2197','neArr':'\\u21D7','nearrow':'\\u2197','nedot':'\\u2250\\u0338','NegativeMediumSpace':'\\u200B','NegativeThickSpace':'\\u200B','NegativeThinSpace':'\\u200B','NegativeVeryThinSpace':'\\u200B','nequiv':'\\u2262','nesear':'\\u2928','nesim':'\\u2242\\u0338','NestedGreaterGreater':'\\u226B','NestedLessLess':'\\u226A','NewLine':'\\n','nexist':'\\u2204','nexists':'\\u2204','nfr':'\\uD835\\uDD2B','Nfr':'\\uD835\\uDD11','nge':'\\u2271','ngE':'\\u2267\\u0338','ngeq':'\\u2271','ngeqq':'\\u2267\\u0338','ngeqslant':'\\u2A7E\\u0338','nges':'\\u2A7E\\u0338','nGg':'\\u22D9\\u0338','ngsim':'\\u2275','ngt':'\\u226F','nGt':'\\u226B\\u20D2','ngtr':'\\u226F','nGtv':'\\u226B\\u0338','nharr':'\\u21AE','nhArr':'\\u21CE','nhpar':'\\u2AF2','ni':'\\u220B','nis':'\\u22FC','nisd':'\\u22FA','niv':'\\u220B','njcy':'\\u045A','NJcy':'\\u040A','nlarr':'\\u219A','nlArr':'\\u21CD','nldr':'\\u2025','nle':'\\u2270','nlE':'\\u2266\\u0338','nleftarrow':'\\u219A','nLeftarrow':'\\u21CD','nleftrightarrow':'\\u21AE','nLeftrightarrow':'\\u21CE','nleq':'\\u2270','nleqq':'\\u2266\\u0338','nleqslant':'\\u2A7D\\u0338','nles':'\\u2A7D\\u0338','nless':'\\u226E','nLl':'\\u22D8\\u0338','nlsim':'\\u2274','nlt':'\\u226E','nLt':'\\u226A\\u20D2','nltri':'\\u22EA','nltrie':'\\u22EC','nLtv':'\\u226A\\u0338','nmid':'\\u2224','NoBreak':'\\u2060','NonBreakingSpace':'\\xA0','nopf':'\\uD835\\uDD5F','Nopf':'\\u2115','not':'\\xAC','Not':'\\u2AEC','NotCongruent':'\\u2262','NotCupCap':'\\u226D','NotDoubleVerticalBar':'\\u2226','NotElement':'\\u2209','NotEqual':'\\u2260','NotEqualTilde':'\\u2242\\u0338','NotExists':'\\u2204','NotGreater':'\\u226F','NotGreaterEqual':'\\u2271','NotGreaterFullEqual':'\\u2267\\u0338','NotGreaterGreater':'\\u226B\\u0338','NotGreaterLess':'\\u2279','NotGreaterSlantEqual':'\\u2A7E\\u0338','NotGreaterTilde':'\\u2275','NotHumpDownHump':'\\u224E\\u0338','NotHumpEqual':'\\u224F\\u0338','notin':'\\u2209','notindot':'\\u22F5\\u0338','notinE':'\\u22F9\\u0338','notinva':'\\u2209','notinvb':'\\u22F7','notinvc':'\\u22F6','NotLeftTriangle':'\\u22EA','NotLeftTriangleBar':'\\u29CF\\u0338','NotLeftTriangleEqual':'\\u22EC','NotLess':'\\u226E','NotLessEqual':'\\u2270','NotLessGreater':'\\u2278','NotLessLess':'\\u226A\\u0338','NotLessSlantEqual':'\\u2A7D\\u0338','NotLessTilde':'\\u2274','NotNestedGreaterGreater':'\\u2AA2\\u0338','NotNestedLessLess':'\\u2AA1\\u0338','notni':'\\u220C','notniva':'\\u220C','notnivb':'\\u22FE','notnivc':'\\u22FD','NotPrecedes':'\\u2280','NotPrecedesEqual':'\\u2AAF\\u0338','NotPrecedesSlantEqual':'\\u22E0','NotReverseElement':'\\u220C','NotRightTriangle':'\\u22EB','NotRightTriangleBar':'\\u29D0\\u0338','NotRightTriangleEqual':'\\u22ED','NotSquareSubset':'\\u228F\\u0338','NotSquareSubsetEqual':'\\u22E2','NotSquareSuperset':'\\u2290\\u0338','NotSquareSupersetEqual':'\\u22E3','NotSubset':'\\u2282\\u20D2','NotSubsetEqual':'\\u2288','NotSucceeds':'\\u2281','NotSucceedsEqual':'\\u2AB0\\u0338','NotSucceedsSlantEqual':'\\u22E1','NotSucceedsTilde':'\\u227F\\u0338','NotSuperset':'\\u2283\\u20D2','NotSupersetEqual':'\\u2289','NotTilde':'\\u2241','NotTildeEqual':'\\u2244','NotTildeFullEqual':'\\u2247','NotTildeTilde':'\\u2249','NotVerticalBar':'\\u2224','npar':'\\u2226','nparallel':'\\u2226','nparsl':'\\u2AFD\\u20E5','npart':'\\u2202\\u0338','npolint':'\\u2A14','npr':'\\u2280','nprcue':'\\u22E0','npre':'\\u2AAF\\u0338','nprec':'\\u2280','npreceq':'\\u2AAF\\u0338','nrarr':'\\u219B','nrArr':'\\u21CF','nrarrc':'\\u2933\\u0338','nrarrw':'\\u219D\\u0338','nrightarrow':'\\u219B','nRightarrow':'\\u21CF','nrtri':'\\u22EB','nrtrie':'\\u22ED','nsc':'\\u2281','nsccue':'\\u22E1','nsce':'\\u2AB0\\u0338','nscr':'\\uD835\\uDCC3','Nscr':'\\uD835\\uDCA9','nshortmid':'\\u2224','nshortparallel':'\\u2226','nsim':'\\u2241','nsime':'\\u2244','nsimeq':'\\u2244','nsmid':'\\u2224','nspar':'\\u2226','nsqsube':'\\u22E2','nsqsupe':'\\u22E3','nsub':'\\u2284','nsube':'\\u2288','nsubE':'\\u2AC5\\u0338','nsubset':'\\u2282\\u20D2','nsubseteq':'\\u2288','nsubseteqq':'\\u2AC5\\u0338','nsucc':'\\u2281','nsucceq':'\\u2AB0\\u0338','nsup':'\\u2285','nsupe':'\\u2289','nsupE':'\\u2AC6\\u0338','nsupset':'\\u2283\\u20D2','nsupseteq':'\\u2289','nsupseteqq':'\\u2AC6\\u0338','ntgl':'\\u2279','ntilde':'\\xF1','Ntilde':'\\xD1','ntlg':'\\u2278','ntriangleleft':'\\u22EA','ntrianglelefteq':'\\u22EC','ntriangleright':'\\u22EB','ntrianglerighteq':'\\u22ED','nu':'\\u03BD','Nu':'\\u039D','num':'#','numero':'\\u2116','numsp':'\\u2007','nvap':'\\u224D\\u20D2','nvdash':'\\u22AC','nvDash':'\\u22AD','nVdash':'\\u22AE','nVDash':'\\u22AF','nvge':'\\u2265\\u20D2','nvgt':'>\\u20D2','nvHarr':'\\u2904','nvinfin':'\\u29DE','nvlArr':'\\u2902','nvle':'\\u2264\\u20D2','nvlt':'<\\u20D2','nvltrie':'\\u22B4\\u20D2','nvrArr':'\\u2903','nvrtrie':'\\u22B5\\u20D2','nvsim':'\\u223C\\u20D2','nwarhk':'\\u2923','nwarr':'\\u2196','nwArr':'\\u21D6','nwarrow':'\\u2196','nwnear':'\\u2927','oacute':'\\xF3','Oacute':'\\xD3','oast':'\\u229B','ocir':'\\u229A','ocirc':'\\xF4','Ocirc':'\\xD4','ocy':'\\u043E','Ocy':'\\u041E','odash':'\\u229D','odblac':'\\u0151','Odblac':'\\u0150','odiv':'\\u2A38','odot':'\\u2299','odsold':'\\u29BC','oelig':'\\u0153','OElig':'\\u0152','ofcir':'\\u29BF','ofr':'\\uD835\\uDD2C','Ofr':'\\uD835\\uDD12','ogon':'\\u02DB','ograve':'\\xF2','Ograve':'\\xD2','ogt':'\\u29C1','ohbar':'\\u29B5','ohm':'\\u03A9','oint':'\\u222E','olarr':'\\u21BA','olcir':'\\u29BE','olcross':'\\u29BB','oline':'\\u203E','olt':'\\u29C0','omacr':'\\u014D','Omacr':'\\u014C','omega':'\\u03C9','Omega':'\\u03A9','omicron':'\\u03BF','Omicron':'\\u039F','omid':'\\u29B6','ominus':'\\u2296','oopf':'\\uD835\\uDD60','Oopf':'\\uD835\\uDD46','opar':'\\u29B7','OpenCurlyDoubleQuote':'\\u201C','OpenCurlyQuote':'\\u2018','operp':'\\u29B9','oplus':'\\u2295','or':'\\u2228','Or':'\\u2A54','orarr':'\\u21BB','ord':'\\u2A5D','order':'\\u2134','orderof':'\\u2134','ordf':'\\xAA','ordm':'\\xBA','origof':'\\u22B6','oror':'\\u2A56','orslope':'\\u2A57','orv':'\\u2A5B','oS':'\\u24C8','oscr':'\\u2134','Oscr':'\\uD835\\uDCAA','oslash':'\\xF8','Oslash':'\\xD8','osol':'\\u2298','otilde':'\\xF5','Otilde':'\\xD5','otimes':'\\u2297','Otimes':'\\u2A37','otimesas':'\\u2A36','ouml':'\\xF6','Ouml':'\\xD6','ovbar':'\\u233D','OverBar':'\\u203E','OverBrace':'\\u23DE','OverBracket':'\\u23B4','OverParenthesis':'\\u23DC','par':'\\u2225','para':'\\xB6','parallel':'\\u2225','parsim':'\\u2AF3','parsl':'\\u2AFD','part':'\\u2202','PartialD':'\\u2202','pcy':'\\u043F','Pcy':'\\u041F','percnt':'%','period':'.','permil':'\\u2030','perp':'\\u22A5','pertenk':'\\u2031','pfr':'\\uD835\\uDD2D','Pfr':'\\uD835\\uDD13','phi':'\\u03C6','Phi':'\\u03A6','phiv':'\\u03D5','phmmat':'\\u2133','phone':'\\u260E','pi':'\\u03C0','Pi':'\\u03A0','pitchfork':'\\u22D4','piv':'\\u03D6','planck':'\\u210F','planckh':'\\u210E','plankv':'\\u210F','plus':'+','plusacir':'\\u2A23','plusb':'\\u229E','pluscir':'\\u2A22','plusdo':'\\u2214','plusdu':'\\u2A25','pluse':'\\u2A72','PlusMinus':'\\xB1','plusmn':'\\xB1','plussim':'\\u2A26','plustwo':'\\u2A27','pm':'\\xB1','Poincareplane':'\\u210C','pointint':'\\u2A15','popf':'\\uD835\\uDD61','Popf':'\\u2119','pound':'\\xA3','pr':'\\u227A','Pr':'\\u2ABB','prap':'\\u2AB7','prcue':'\\u227C','pre':'\\u2AAF','prE':'\\u2AB3','prec':'\\u227A','precapprox':'\\u2AB7','preccurlyeq':'\\u227C','Precedes':'\\u227A','PrecedesEqual':'\\u2AAF','PrecedesSlantEqual':'\\u227C','PrecedesTilde':'\\u227E','preceq':'\\u2AAF','precnapprox':'\\u2AB9','precneqq':'\\u2AB5','precnsim':'\\u22E8','precsim':'\\u227E','prime':'\\u2032','Prime':'\\u2033','primes':'\\u2119','prnap':'\\u2AB9','prnE':'\\u2AB5','prnsim':'\\u22E8','prod':'\\u220F','Product':'\\u220F','profalar':'\\u232E','profline':'\\u2312','profsurf':'\\u2313','prop':'\\u221D','Proportion':'\\u2237','Proportional':'\\u221D','propto':'\\u221D','prsim':'\\u227E','prurel':'\\u22B0','pscr':'\\uD835\\uDCC5','Pscr':'\\uD835\\uDCAB','psi':'\\u03C8','Psi':'\\u03A8','puncsp':'\\u2008','qfr':'\\uD835\\uDD2E','Qfr':'\\uD835\\uDD14','qint':'\\u2A0C','qopf':'\\uD835\\uDD62','Qopf':'\\u211A','qprime':'\\u2057','qscr':'\\uD835\\uDCC6','Qscr':'\\uD835\\uDCAC','quaternions':'\\u210D','quatint':'\\u2A16','quest':'?','questeq':'\\u225F','quot':'\"','QUOT':'\"','rAarr':'\\u21DB','race':'\\u223D\\u0331','racute':'\\u0155','Racute':'\\u0154','radic':'\\u221A','raemptyv':'\\u29B3','rang':'\\u27E9','Rang':'\\u27EB','rangd':'\\u2992','range':'\\u29A5','rangle':'\\u27E9','raquo':'\\xBB','rarr':'\\u2192','rArr':'\\u21D2','Rarr':'\\u21A0','rarrap':'\\u2975','rarrb':'\\u21E5','rarrbfs':'\\u2920','rarrc':'\\u2933','rarrfs':'\\u291E','rarrhk':'\\u21AA','rarrlp':'\\u21AC','rarrpl':'\\u2945','rarrsim':'\\u2974','rarrtl':'\\u21A3','Rarrtl':'\\u2916','rarrw':'\\u219D','ratail':'\\u291A','rAtail':'\\u291C','ratio':'\\u2236','rationals':'\\u211A','rbarr':'\\u290D','rBarr':'\\u290F','RBarr':'\\u2910','rbbrk':'\\u2773','rbrace':'}','rbrack':']','rbrke':'\\u298C','rbrksld':'\\u298E','rbrkslu':'\\u2990','rcaron':'\\u0159','Rcaron':'\\u0158','rcedil':'\\u0157','Rcedil':'\\u0156','rceil':'\\u2309','rcub':'}','rcy':'\\u0440','Rcy':'\\u0420','rdca':'\\u2937','rdldhar':'\\u2969','rdquo':'\\u201D','rdquor':'\\u201D','rdsh':'\\u21B3','Re':'\\u211C','real':'\\u211C','realine':'\\u211B','realpart':'\\u211C','reals':'\\u211D','rect':'\\u25AD','reg':'\\xAE','REG':'\\xAE','ReverseElement':'\\u220B','ReverseEquilibrium':'\\u21CB','ReverseUpEquilibrium':'\\u296F','rfisht':'\\u297D','rfloor':'\\u230B','rfr':'\\uD835\\uDD2F','Rfr':'\\u211C','rHar':'\\u2964','rhard':'\\u21C1','rharu':'\\u21C0','rharul':'\\u296C','rho':'\\u03C1','Rho':'\\u03A1','rhov':'\\u03F1','RightAngleBracket':'\\u27E9','rightarrow':'\\u2192','Rightarrow':'\\u21D2','RightArrow':'\\u2192','RightArrowBar':'\\u21E5','RightArrowLeftArrow':'\\u21C4','rightarrowtail':'\\u21A3','RightCeiling':'\\u2309','RightDoubleBracket':'\\u27E7','RightDownTeeVector':'\\u295D','RightDownVector':'\\u21C2','RightDownVectorBar':'\\u2955','RightFloor':'\\u230B','rightharpoondown':'\\u21C1','rightharpoonup':'\\u21C0','rightleftarrows':'\\u21C4','rightleftharpoons':'\\u21CC','rightrightarrows':'\\u21C9','rightsquigarrow':'\\u219D','RightTee':'\\u22A2','RightTeeArrow':'\\u21A6','RightTeeVector':'\\u295B','rightthreetimes':'\\u22CC','RightTriangle':'\\u22B3','RightTriangleBar':'\\u29D0','RightTriangleEqual':'\\u22B5','RightUpDownVector':'\\u294F','RightUpTeeVector':'\\u295C','RightUpVector':'\\u21BE','RightUpVectorBar':'\\u2954','RightVector':'\\u21C0','RightVectorBar':'\\u2953','ring':'\\u02DA','risingdotseq':'\\u2253','rlarr':'\\u21C4','rlhar':'\\u21CC','rlm':'\\u200F','rmoust':'\\u23B1','rmoustache':'\\u23B1','rnmid':'\\u2AEE','roang':'\\u27ED','roarr':'\\u21FE','robrk':'\\u27E7','ropar':'\\u2986','ropf':'\\uD835\\uDD63','Ropf':'\\u211D','roplus':'\\u2A2E','rotimes':'\\u2A35','RoundImplies':'\\u2970','rpar':')','rpargt':'\\u2994','rppolint':'\\u2A12','rrarr':'\\u21C9','Rrightarrow':'\\u21DB','rsaquo':'\\u203A','rscr':'\\uD835\\uDCC7','Rscr':'\\u211B','rsh':'\\u21B1','Rsh':'\\u21B1','rsqb':']','rsquo':'\\u2019','rsquor':'\\u2019','rthree':'\\u22CC','rtimes':'\\u22CA','rtri':'\\u25B9','rtrie':'\\u22B5','rtrif':'\\u25B8','rtriltri':'\\u29CE','RuleDelayed':'\\u29F4','ruluhar':'\\u2968','rx':'\\u211E','sacute':'\\u015B','Sacute':'\\u015A','sbquo':'\\u201A','sc':'\\u227B','Sc':'\\u2ABC','scap':'\\u2AB8','scaron':'\\u0161','Scaron':'\\u0160','sccue':'\\u227D','sce':'\\u2AB0','scE':'\\u2AB4','scedil':'\\u015F','Scedil':'\\u015E','scirc':'\\u015D','Scirc':'\\u015C','scnap':'\\u2ABA','scnE':'\\u2AB6','scnsim':'\\u22E9','scpolint':'\\u2A13','scsim':'\\u227F','scy':'\\u0441','Scy':'\\u0421','sdot':'\\u22C5','sdotb':'\\u22A1','sdote':'\\u2A66','searhk':'\\u2925','searr':'\\u2198','seArr':'\\u21D8','searrow':'\\u2198','sect':'\\xA7','semi':';','seswar':'\\u2929','setminus':'\\u2216','setmn':'\\u2216','sext':'\\u2736','sfr':'\\uD835\\uDD30','Sfr':'\\uD835\\uDD16','sfrown':'\\u2322','sharp':'\\u266F','shchcy':'\\u0449','SHCHcy':'\\u0429','shcy':'\\u0448','SHcy':'\\u0428','ShortDownArrow':'\\u2193','ShortLeftArrow':'\\u2190','shortmid':'\\u2223','shortparallel':'\\u2225','ShortRightArrow':'\\u2192','ShortUpArrow':'\\u2191','shy':'\\xAD','sigma':'\\u03C3','Sigma':'\\u03A3','sigmaf':'\\u03C2','sigmav':'\\u03C2','sim':'\\u223C','simdot':'\\u2A6A','sime':'\\u2243','simeq':'\\u2243','simg':'\\u2A9E','simgE':'\\u2AA0','siml':'\\u2A9D','simlE':'\\u2A9F','simne':'\\u2246','simplus':'\\u2A24','simrarr':'\\u2972','slarr':'\\u2190','SmallCircle':'\\u2218','smallsetminus':'\\u2216','smashp':'\\u2A33','smeparsl':'\\u29E4','smid':'\\u2223','smile':'\\u2323','smt':'\\u2AAA','smte':'\\u2AAC','smtes':'\\u2AAC\\uFE00','softcy':'\\u044C','SOFTcy':'\\u042C','sol':'/','solb':'\\u29C4','solbar':'\\u233F','sopf':'\\uD835\\uDD64','Sopf':'\\uD835\\uDD4A','spades':'\\u2660','spadesuit':'\\u2660','spar':'\\u2225','sqcap':'\\u2293','sqcaps':'\\u2293\\uFE00','sqcup':'\\u2294','sqcups':'\\u2294\\uFE00','Sqrt':'\\u221A','sqsub':'\\u228F','sqsube':'\\u2291','sqsubset':'\\u228F','sqsubseteq':'\\u2291','sqsup':'\\u2290','sqsupe':'\\u2292','sqsupset':'\\u2290','sqsupseteq':'\\u2292','squ':'\\u25A1','square':'\\u25A1','Square':'\\u25A1','SquareIntersection':'\\u2293','SquareSubset':'\\u228F','SquareSubsetEqual':'\\u2291','SquareSuperset':'\\u2290','SquareSupersetEqual':'\\u2292','SquareUnion':'\\u2294','squarf':'\\u25AA','squf':'\\u25AA','srarr':'\\u2192','sscr':'\\uD835\\uDCC8','Sscr':'\\uD835\\uDCAE','ssetmn':'\\u2216','ssmile':'\\u2323','sstarf':'\\u22C6','star':'\\u2606','Star':'\\u22C6','starf':'\\u2605','straightepsilon':'\\u03F5','straightphi':'\\u03D5','strns':'\\xAF','sub':'\\u2282','Sub':'\\u22D0','subdot':'\\u2ABD','sube':'\\u2286','subE':'\\u2AC5','subedot':'\\u2AC3','submult':'\\u2AC1','subne':'\\u228A','subnE':'\\u2ACB','subplus':'\\u2ABF','subrarr':'\\u2979','subset':'\\u2282','Subset':'\\u22D0','subseteq':'\\u2286','subseteqq':'\\u2AC5','SubsetEqual':'\\u2286','subsetneq':'\\u228A','subsetneqq':'\\u2ACB','subsim':'\\u2AC7','subsub':'\\u2AD5','subsup':'\\u2AD3','succ':'\\u227B','succapprox':'\\u2AB8','succcurlyeq':'\\u227D','Succeeds':'\\u227B','SucceedsEqual':'\\u2AB0','SucceedsSlantEqual':'\\u227D','SucceedsTilde':'\\u227F','succeq':'\\u2AB0','succnapprox':'\\u2ABA','succneqq':'\\u2AB6','succnsim':'\\u22E9','succsim':'\\u227F','SuchThat':'\\u220B','sum':'\\u2211','Sum':'\\u2211','sung':'\\u266A','sup':'\\u2283','Sup':'\\u22D1','sup1':'\\xB9','sup2':'\\xB2','sup3':'\\xB3','supdot':'\\u2ABE','supdsub':'\\u2AD8','supe':'\\u2287','supE':'\\u2AC6','supedot':'\\u2AC4','Superset':'\\u2283','SupersetEqual':'\\u2287','suphsol':'\\u27C9','suphsub':'\\u2AD7','suplarr':'\\u297B','supmult':'\\u2AC2','supne':'\\u228B','supnE':'\\u2ACC','supplus':'\\u2AC0','supset':'\\u2283','Supset':'\\u22D1','supseteq':'\\u2287','supseteqq':'\\u2AC6','supsetneq':'\\u228B','supsetneqq':'\\u2ACC','supsim':'\\u2AC8','supsub':'\\u2AD4','supsup':'\\u2AD6','swarhk':'\\u2926','swarr':'\\u2199','swArr':'\\u21D9','swarrow':'\\u2199','swnwar':'\\u292A','szlig':'\\xDF','Tab':'\\t','target':'\\u2316','tau':'\\u03C4','Tau':'\\u03A4','tbrk':'\\u23B4','tcaron':'\\u0165','Tcaron':'\\u0164','tcedil':'\\u0163','Tcedil':'\\u0162','tcy':'\\u0442','Tcy':'\\u0422','tdot':'\\u20DB','telrec':'\\u2315','tfr':'\\uD835\\uDD31','Tfr':'\\uD835\\uDD17','there4':'\\u2234','therefore':'\\u2234','Therefore':'\\u2234','theta':'\\u03B8','Theta':'\\u0398','thetasym':'\\u03D1','thetav':'\\u03D1','thickapprox':'\\u2248','thicksim':'\\u223C','ThickSpace':'\\u205F\\u200A','thinsp':'\\u2009','ThinSpace':'\\u2009','thkap':'\\u2248','thksim':'\\u223C','thorn':'\\xFE','THORN':'\\xDE','tilde':'\\u02DC','Tilde':'\\u223C','TildeEqual':'\\u2243','TildeFullEqual':'\\u2245','TildeTilde':'\\u2248','times':'\\xD7','timesb':'\\u22A0','timesbar':'\\u2A31','timesd':'\\u2A30','tint':'\\u222D','toea':'\\u2928','top':'\\u22A4','topbot':'\\u2336','topcir':'\\u2AF1','topf':'\\uD835\\uDD65','Topf':'\\uD835\\uDD4B','topfork':'\\u2ADA','tosa':'\\u2929','tprime':'\\u2034','trade':'\\u2122','TRADE':'\\u2122','triangle':'\\u25B5','triangledown':'\\u25BF','triangleleft':'\\u25C3','trianglelefteq':'\\u22B4','triangleq':'\\u225C','triangleright':'\\u25B9','trianglerighteq':'\\u22B5','tridot':'\\u25EC','trie':'\\u225C','triminus':'\\u2A3A','TripleDot':'\\u20DB','triplus':'\\u2A39','trisb':'\\u29CD','tritime':'\\u2A3B','trpezium':'\\u23E2','tscr':'\\uD835\\uDCC9','Tscr':'\\uD835\\uDCAF','tscy':'\\u0446','TScy':'\\u0426','tshcy':'\\u045B','TSHcy':'\\u040B','tstrok':'\\u0167','Tstrok':'\\u0166','twixt':'\\u226C','twoheadleftarrow':'\\u219E','twoheadrightarrow':'\\u21A0','uacute':'\\xFA','Uacute':'\\xDA','uarr':'\\u2191','uArr':'\\u21D1','Uarr':'\\u219F','Uarrocir':'\\u2949','ubrcy':'\\u045E','Ubrcy':'\\u040E','ubreve':'\\u016D','Ubreve':'\\u016C','ucirc':'\\xFB','Ucirc':'\\xDB','ucy':'\\u0443','Ucy':'\\u0423','udarr':'\\u21C5','udblac':'\\u0171','Udblac':'\\u0170','udhar':'\\u296E','ufisht':'\\u297E','ufr':'\\uD835\\uDD32','Ufr':'\\uD835\\uDD18','ugrave':'\\xF9','Ugrave':'\\xD9','uHar':'\\u2963','uharl':'\\u21BF','uharr':'\\u21BE','uhblk':'\\u2580','ulcorn':'\\u231C','ulcorner':'\\u231C','ulcrop':'\\u230F','ultri':'\\u25F8','umacr':'\\u016B','Umacr':'\\u016A','uml':'\\xA8','UnderBar':'_','UnderBrace':'\\u23DF','UnderBracket':'\\u23B5','UnderParenthesis':'\\u23DD','Union':'\\u22C3','UnionPlus':'\\u228E','uogon':'\\u0173','Uogon':'\\u0172','uopf':'\\uD835\\uDD66','Uopf':'\\uD835\\uDD4C','uparrow':'\\u2191','Uparrow':'\\u21D1','UpArrow':'\\u2191','UpArrowBar':'\\u2912','UpArrowDownArrow':'\\u21C5','updownarrow':'\\u2195','Updownarrow':'\\u21D5','UpDownArrow':'\\u2195','UpEquilibrium':'\\u296E','upharpoonleft':'\\u21BF','upharpoonright':'\\u21BE','uplus':'\\u228E','UpperLeftArrow':'\\u2196','UpperRightArrow':'\\u2197','upsi':'\\u03C5','Upsi':'\\u03D2','upsih':'\\u03D2','upsilon':'\\u03C5','Upsilon':'\\u03A5','UpTee':'\\u22A5','UpTeeArrow':'\\u21A5','upuparrows':'\\u21C8','urcorn':'\\u231D','urcorner':'\\u231D','urcrop':'\\u230E','uring':'\\u016F','Uring':'\\u016E','urtri':'\\u25F9','uscr':'\\uD835\\uDCCA','Uscr':'\\uD835\\uDCB0','utdot':'\\u22F0','utilde':'\\u0169','Utilde':'\\u0168','utri':'\\u25B5','utrif':'\\u25B4','uuarr':'\\u21C8','uuml':'\\xFC','Uuml':'\\xDC','uwangle':'\\u29A7','vangrt':'\\u299C','varepsilon':'\\u03F5','varkappa':'\\u03F0','varnothing':'\\u2205','varphi':'\\u03D5','varpi':'\\u03D6','varpropto':'\\u221D','varr':'\\u2195','vArr':'\\u21D5','varrho':'\\u03F1','varsigma':'\\u03C2','varsubsetneq':'\\u228A\\uFE00','varsubsetneqq':'\\u2ACB\\uFE00','varsupsetneq':'\\u228B\\uFE00','varsupsetneqq':'\\u2ACC\\uFE00','vartheta':'\\u03D1','vartriangleleft':'\\u22B2','vartriangleright':'\\u22B3','vBar':'\\u2AE8','Vbar':'\\u2AEB','vBarv':'\\u2AE9','vcy':'\\u0432','Vcy':'\\u0412','vdash':'\\u22A2','vDash':'\\u22A8','Vdash':'\\u22A9','VDash':'\\u22AB','Vdashl':'\\u2AE6','vee':'\\u2228','Vee':'\\u22C1','veebar':'\\u22BB','veeeq':'\\u225A','vellip':'\\u22EE','verbar':'|','Verbar':'\\u2016','vert':'|','Vert':'\\u2016','VerticalBar':'\\u2223','VerticalLine':'|','VerticalSeparator':'\\u2758','VerticalTilde':'\\u2240','VeryThinSpace':'\\u200A','vfr':'\\uD835\\uDD33','Vfr':'\\uD835\\uDD19','vltri':'\\u22B2','vnsub':'\\u2282\\u20D2','vnsup':'\\u2283\\u20D2','vopf':'\\uD835\\uDD67','Vopf':'\\uD835\\uDD4D','vprop':'\\u221D','vrtri':'\\u22B3','vscr':'\\uD835\\uDCCB','Vscr':'\\uD835\\uDCB1','vsubne':'\\u228A\\uFE00','vsubnE':'\\u2ACB\\uFE00','vsupne':'\\u228B\\uFE00','vsupnE':'\\u2ACC\\uFE00','Vvdash':'\\u22AA','vzigzag':'\\u299A','wcirc':'\\u0175','Wcirc':'\\u0174','wedbar':'\\u2A5F','wedge':'\\u2227','Wedge':'\\u22C0','wedgeq':'\\u2259','weierp':'\\u2118','wfr':'\\uD835\\uDD34','Wfr':'\\uD835\\uDD1A','wopf':'\\uD835\\uDD68','Wopf':'\\uD835\\uDD4E','wp':'\\u2118','wr':'\\u2240','wreath':'\\u2240','wscr':'\\uD835\\uDCCC','Wscr':'\\uD835\\uDCB2','xcap':'\\u22C2','xcirc':'\\u25EF','xcup':'\\u22C3','xdtri':'\\u25BD','xfr':'\\uD835\\uDD35','Xfr':'\\uD835\\uDD1B','xharr':'\\u27F7','xhArr':'\\u27FA','xi':'\\u03BE','Xi':'\\u039E','xlarr':'\\u27F5','xlArr':'\\u27F8','xmap':'\\u27FC','xnis':'\\u22FB','xodot':'\\u2A00','xopf':'\\uD835\\uDD69','Xopf':'\\uD835\\uDD4F','xoplus':'\\u2A01','xotime':'\\u2A02','xrarr':'\\u27F6','xrArr':'\\u27F9','xscr':'\\uD835\\uDCCD','Xscr':'\\uD835\\uDCB3','xsqcup':'\\u2A06','xuplus':'\\u2A04','xutri':'\\u25B3','xvee':'\\u22C1','xwedge':'\\u22C0','yacute':'\\xFD','Yacute':'\\xDD','yacy':'\\u044F','YAcy':'\\u042F','ycirc':'\\u0177','Ycirc':'\\u0176','ycy':'\\u044B','Ycy':'\\u042B','yen':'\\xA5','yfr':'\\uD835\\uDD36','Yfr':'\\uD835\\uDD1C','yicy':'\\u0457','YIcy':'\\u0407','yopf':'\\uD835\\uDD6A','Yopf':'\\uD835\\uDD50','yscr':'\\uD835\\uDCCE','Yscr':'\\uD835\\uDCB4','yucy':'\\u044E','YUcy':'\\u042E','yuml':'\\xFF','Yuml':'\\u0178','zacute':'\\u017A','Zacute':'\\u0179','zcaron':'\\u017E','Zcaron':'\\u017D','zcy':'\\u0437','Zcy':'\\u0417','zdot':'\\u017C','Zdot':'\\u017B','zeetrf':'\\u2128','ZeroWidthSpace':'\\u200B','zeta':'\\u03B6','Zeta':'\\u0396','zfr':'\\uD835\\uDD37','Zfr':'\\u2128','zhcy':'\\u0436','ZHcy':'\\u0416','zigrarr':'\\u21DD','zopf':'\\uD835\\uDD6B','Zopf':'\\u2124','zscr':'\\uD835\\uDCCF','Zscr':'\\uD835\\uDCB5','zwj':'\\u200D','zwnj':'\\u200C'};\n\tvar decodeMapLegacy = {'aacute':'\\xE1','Aacute':'\\xC1','acirc':'\\xE2','Acirc':'\\xC2','acute':'\\xB4','aelig':'\\xE6','AElig':'\\xC6','agrave':'\\xE0','Agrave':'\\xC0','amp':'&','AMP':'&','aring':'\\xE5','Aring':'\\xC5','atilde':'\\xE3','Atilde':'\\xC3','auml':'\\xE4','Auml':'\\xC4','brvbar':'\\xA6','ccedil':'\\xE7','Ccedil':'\\xC7','cedil':'\\xB8','cent':'\\xA2','copy':'\\xA9','COPY':'\\xA9','curren':'\\xA4','deg':'\\xB0','divide':'\\xF7','eacute':'\\xE9','Eacute':'\\xC9','ecirc':'\\xEA','Ecirc':'\\xCA','egrave':'\\xE8','Egrave':'\\xC8','eth':'\\xF0','ETH':'\\xD0','euml':'\\xEB','Euml':'\\xCB','frac12':'\\xBD','frac14':'\\xBC','frac34':'\\xBE','gt':'>','GT':'>','iacute':'\\xED','Iacute':'\\xCD','icirc':'\\xEE','Icirc':'\\xCE','iexcl':'\\xA1','igrave':'\\xEC','Igrave':'\\xCC','iquest':'\\xBF','iuml':'\\xEF','Iuml':'\\xCF','laquo':'\\xAB','lt':'<','LT':'<','macr':'\\xAF','micro':'\\xB5','middot':'\\xB7','nbsp':'\\xA0','not':'\\xAC','ntilde':'\\xF1','Ntilde':'\\xD1','oacute':'\\xF3','Oacute':'\\xD3','ocirc':'\\xF4','Ocirc':'\\xD4','ograve':'\\xF2','Ograve':'\\xD2','ordf':'\\xAA','ordm':'\\xBA','oslash':'\\xF8','Oslash':'\\xD8','otilde':'\\xF5','Otilde':'\\xD5','ouml':'\\xF6','Ouml':'\\xD6','para':'\\xB6','plusmn':'\\xB1','pound':'\\xA3','quot':'\"','QUOT':'\"','raquo':'\\xBB','reg':'\\xAE','REG':'\\xAE','sect':'\\xA7','shy':'\\xAD','sup1':'\\xB9','sup2':'\\xB2','sup3':'\\xB3','szlig':'\\xDF','thorn':'\\xFE','THORN':'\\xDE','times':'\\xD7','uacute':'\\xFA','Uacute':'\\xDA','ucirc':'\\xFB','Ucirc':'\\xDB','ugrave':'\\xF9','Ugrave':'\\xD9','uml':'\\xA8','uuml':'\\xFC','Uuml':'\\xDC','yacute':'\\xFD','Yacute':'\\xDD','yen':'\\xA5','yuml':'\\xFF'};\n\tvar decodeMapNumeric = {'0':'\\uFFFD','128':'\\u20AC','130':'\\u201A','131':'\\u0192','132':'\\u201E','133':'\\u2026','134':'\\u2020','135':'\\u2021','136':'\\u02C6','137':'\\u2030','138':'\\u0160','139':'\\u2039','140':'\\u0152','142':'\\u017D','145':'\\u2018','146':'\\u2019','147':'\\u201C','148':'\\u201D','149':'\\u2022','150':'\\u2013','151':'\\u2014','152':'\\u02DC','153':'\\u2122','154':'\\u0161','155':'\\u203A','156':'\\u0153','158':'\\u017E','159':'\\u0178'};\n\tvar invalidReferenceCodePoints = [1,2,3,4,5,6,7,8,11,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,64976,64977,64978,64979,64980,64981,64982,64983,64984,64985,64986,64987,64988,64989,64990,64991,64992,64993,64994,64995,64996,64997,64998,64999,65000,65001,65002,65003,65004,65005,65006,65007,65534,65535,131070,131071,196606,196607,262142,262143,327678,327679,393214,393215,458750,458751,524286,524287,589822,589823,655358,655359,720894,720895,786430,786431,851966,851967,917502,917503,983038,983039,1048574,1048575,1114110,1114111];\n\n\t/*--------------------------------------------------------------------------*/\n\n\tvar stringFromCharCode = String.fromCharCode;\n\n\tvar object = {};\n\tvar hasOwnProperty = object.hasOwnProperty;\n\tvar has = function(object, propertyName) {\n\t\treturn hasOwnProperty.call(object, propertyName);\n\t};\n\n\tvar contains = function(array, value) {\n\t\tvar index = -1;\n\t\tvar length = array.length;\n\t\twhile (++index < length) {\n\t\t\tif (array[index] == value) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\t\treturn false;\n\t};\n\n\tvar merge = function(options, defaults) {\n\t\tif (!options) {\n\t\t\treturn defaults;\n\t\t}\n\t\tvar result = {};\n\t\tvar key;\n\t\tfor (key in defaults) {\n\t\t\t// A `hasOwnProperty` check is not needed here, since only recognized\n\t\t\t// option names are used anyway. Any others are ignored.\n\t\t\tresult[key] = has(options, key) ? options[key] : defaults[key];\n\t\t}\n\t\treturn result;\n\t};\n\n\t// Modified version of `ucs2encode`; see https://mths.be/punycode.\n\tvar codePointToSymbol = function(codePoint, strict) {\n\t\tvar output = '';\n\t\tif ((codePoint >= 0xD800 && codePoint <= 0xDFFF) || codePoint > 0x10FFFF) {\n\t\t\t// See issue #4:\n\t\t\t// “Otherwise, if the number is in the range 0xD800 to 0xDFFF or is\n\t\t\t// greater than 0x10FFFF, then this is a parse error. Return a U+FFFD\n\t\t\t// REPLACEMENT CHARACTER.”\n\t\t\tif (strict) {\n\t\t\t\tparseError('character reference outside the permissible Unicode range');\n\t\t\t}\n\t\t\treturn '\\uFFFD';\n\t\t}\n\t\tif (has(decodeMapNumeric, codePoint)) {\n\t\t\tif (strict) {\n\t\t\t\tparseError('disallowed character reference');\n\t\t\t}\n\t\t\treturn decodeMapNumeric[codePoint];\n\t\t}\n\t\tif (strict && contains(invalidReferenceCodePoints, codePoint)) {\n\t\t\tparseError('disallowed character reference');\n\t\t}\n\t\tif (codePoint > 0xFFFF) {\n\t\t\tcodePoint -= 0x10000;\n\t\t\toutput += stringFromCharCode(codePoint >>> 10 & 0x3FF | 0xD800);\n\t\t\tcodePoint = 0xDC00 | codePoint & 0x3FF;\n\t\t}\n\t\toutput += stringFromCharCode(codePoint);\n\t\treturn output;\n\t};\n\n\tvar hexEscape = function(codePoint) {\n\t\treturn '&#x' + codePoint.toString(16).toUpperCase() + ';';\n\t};\n\n\tvar decEscape = function(codePoint) {\n\t\treturn '&#' + codePoint + ';';\n\t};\n\n\tvar parseError = function(message) {\n\t\tthrow Error('Parse error: ' + message);\n\t};\n\n\t/*--------------------------------------------------------------------------*/\n\n\tvar encode = function(string, options) {\n\t\toptions = merge(options, encode.options);\n\t\tvar strict = options.strict;\n\t\tif (strict && regexInvalidRawCodePoint.test(string)) {\n\t\t\tparseError('forbidden code point');\n\t\t}\n\t\tvar encodeEverything = options.encodeEverything;\n\t\tvar useNamedReferences = options.useNamedReferences;\n\t\tvar allowUnsafeSymbols = options.allowUnsafeSymbols;\n\t\tvar escapeCodePoint = options.decimal ? decEscape : hexEscape;\n\n\t\tvar escapeBmpSymbol = function(symbol) {\n\t\t\treturn escapeCodePoint(symbol.charCodeAt(0));\n\t\t};\n\n\t\tif (encodeEverything) {\n\t\t\t// Encode ASCII symbols.\n\t\t\tstring = string.replace(regexAsciiWhitelist, function(symbol) {\n\t\t\t\t// Use named references if requested & possible.\n\t\t\t\tif (useNamedReferences && has(encodeMap, symbol)) {\n\t\t\t\t\treturn '&' + encodeMap[symbol] + ';';\n\t\t\t\t}\n\t\t\t\treturn escapeBmpSymbol(symbol);\n\t\t\t});\n\t\t\t// Shorten a few escapes that represent two symbols, of which at least one\n\t\t\t// is within the ASCII range.\n\t\t\tif (useNamedReferences) {\n\t\t\t\tstring = string\n\t\t\t\t\t.replace(/>\\u20D2/g, '>⃒')\n\t\t\t\t\t.replace(/<\\u20D2/g, '<⃒')\n\t\t\t\t\t.replace(/fj/g, 'fj');\n\t\t\t}\n\t\t\t// Encode non-ASCII symbols.\n\t\t\tif (useNamedReferences) {\n\t\t\t\t// Encode non-ASCII symbols that can be replaced with a named reference.\n\t\t\t\tstring = string.replace(regexEncodeNonAscii, function(string) {\n\t\t\t\t\t// Note: there is no need to check `has(encodeMap, string)` here.\n\t\t\t\t\treturn '&' + encodeMap[string] + ';';\n\t\t\t\t});\n\t\t\t}\n\t\t\t// Note: any remaining non-ASCII symbols are handled outside of the `if`.\n\t\t} else if (useNamedReferences) {\n\t\t\t// Apply named character references.\n\t\t\t// Encode `<>\"'&` using named character references.\n\t\t\tif (!allowUnsafeSymbols) {\n\t\t\t\tstring = string.replace(regexEscape, function(string) {\n\t\t\t\t\treturn '&' + encodeMap[string] + ';'; // no need to check `has()` here\n\t\t\t\t});\n\t\t\t}\n\t\t\t// Shorten escapes that represent two symbols, of which at least one is\n\t\t\t// `<>\"'&`.\n\t\t\tstring = string\n\t\t\t\t.replace(/>\\u20D2/g, '>⃒')\n\t\t\t\t.replace(/<\\u20D2/g, '<⃒');\n\t\t\t// Encode non-ASCII symbols that can be replaced with a named reference.\n\t\t\tstring = string.replace(regexEncodeNonAscii, function(string) {\n\t\t\t\t// Note: there is no need to check `has(encodeMap, string)` here.\n\t\t\t\treturn '&' + encodeMap[string] + ';';\n\t\t\t});\n\t\t} else if (!allowUnsafeSymbols) {\n\t\t\t// Encode `<>\"'&` using hexadecimal escapes, now that they’re not handled\n\t\t\t// using named character references.\n\t\t\tstring = string.replace(regexEscape, escapeBmpSymbol);\n\t\t}\n\t\treturn string\n\t\t\t// Encode astral symbols.\n\t\t\t.replace(regexAstralSymbols, function($0) {\n\t\t\t\t// https://mathiasbynens.be/notes/javascript-encoding#surrogate-formulae\n\t\t\t\tvar high = $0.charCodeAt(0);\n\t\t\t\tvar low = $0.charCodeAt(1);\n\t\t\t\tvar codePoint = (high - 0xD800) * 0x400 + low - 0xDC00 + 0x10000;\n\t\t\t\treturn escapeCodePoint(codePoint);\n\t\t\t})\n\t\t\t// Encode any remaining BMP symbols that are not printable ASCII symbols\n\t\t\t// using a hexadecimal escape.\n\t\t\t.replace(regexBmpWhitelist, escapeBmpSymbol);\n\t};\n\t// Expose default options (so they can be overridden globally).\n\tencode.options = {\n\t\t'allowUnsafeSymbols': false,\n\t\t'encodeEverything': false,\n\t\t'strict': false,\n\t\t'useNamedReferences': false,\n\t\t'decimal' : false\n\t};\n\n\tvar decode = function(html, options) {\n\t\toptions = merge(options, decode.options);\n\t\tvar strict = options.strict;\n\t\tif (strict && regexInvalidEntity.test(html)) {\n\t\t\tparseError('malformed character reference');\n\t\t}\n\t\treturn html.replace(regexDecode, function($0, $1, $2, $3, $4, $5, $6, $7, $8) {\n\t\t\tvar codePoint;\n\t\t\tvar semicolon;\n\t\t\tvar decDigits;\n\t\t\tvar hexDigits;\n\t\t\tvar reference;\n\t\t\tvar next;\n\n\t\t\tif ($1) {\n\t\t\t\treference = $1;\n\t\t\t\t// Note: there is no need to check `has(decodeMap, reference)`.\n\t\t\t\treturn decodeMap[reference];\n\t\t\t}\n\n\t\t\tif ($2) {\n\t\t\t\t// Decode named character references without trailing `;`, e.g. `&`.\n\t\t\t\t// This is only a parse error if it gets converted to `&`, or if it is\n\t\t\t\t// followed by `=` in an attribute context.\n\t\t\t\treference = $2;\n\t\t\t\tnext = $3;\n\t\t\t\tif (next && options.isAttributeValue) {\n\t\t\t\t\tif (strict && next == '=') {\n\t\t\t\t\t\tparseError('`&` did not start a character reference');\n\t\t\t\t\t}\n\t\t\t\t\treturn $0;\n\t\t\t\t} else {\n\t\t\t\t\tif (strict) {\n\t\t\t\t\t\tparseError(\n\t\t\t\t\t\t\t'named character reference was not terminated by a semicolon'\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t\t// Note: there is no need to check `has(decodeMapLegacy, reference)`.\n\t\t\t\t\treturn decodeMapLegacy[reference] + (next || '');\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif ($4) {\n\t\t\t\t// Decode decimal escapes, e.g. `𝌆`.\n\t\t\t\tdecDigits = $4;\n\t\t\t\tsemicolon = $5;\n\t\t\t\tif (strict && !semicolon) {\n\t\t\t\t\tparseError('character reference was not terminated by a semicolon');\n\t\t\t\t}\n\t\t\t\tcodePoint = parseInt(decDigits, 10);\n\t\t\t\treturn codePointToSymbol(codePoint, strict);\n\t\t\t}\n\n\t\t\tif ($6) {\n\t\t\t\t// Decode hexadecimal escapes, e.g. `𝌆`.\n\t\t\t\thexDigits = $6;\n\t\t\t\tsemicolon = $7;\n\t\t\t\tif (strict && !semicolon) {\n\t\t\t\t\tparseError('character reference was not terminated by a semicolon');\n\t\t\t\t}\n\t\t\t\tcodePoint = parseInt(hexDigits, 16);\n\t\t\t\treturn codePointToSymbol(codePoint, strict);\n\t\t\t}\n\n\t\t\t// If we’re still here, `if ($7)` is implied; it’s an ambiguous\n\t\t\t// ampersand for sure. https://mths.be/notes/ambiguous-ampersands\n\t\t\tif (strict) {\n\t\t\t\tparseError(\n\t\t\t\t\t'named character reference was not terminated by a semicolon'\n\t\t\t\t);\n\t\t\t}\n\t\t\treturn $0;\n\t\t});\n\t};\n\t// Expose default options (so they can be overridden globally).\n\tdecode.options = {\n\t\t'isAttributeValue': false,\n\t\t'strict': false\n\t};\n\n\tvar escape = function(string) {\n\t\treturn string.replace(regexEscape, function($0) {\n\t\t\t// Note: there is no need to check `has(escapeMap, $0)` here.\n\t\t\treturn escapeMap[$0];\n\t\t});\n\t};\n\n\t/*--------------------------------------------------------------------------*/\n\n\tvar he = {\n\t\t'version': '1.2.0',\n\t\t'encode': encode,\n\t\t'decode': decode,\n\t\t'escape': escape,\n\t\t'unescape': decode\n\t};\n\n\t// Some AMD build optimizers, like r.js, check for specific condition patterns\n\t// like the following:\n\tif (\n\t\ttypeof define == 'function' &&\n\t\ttypeof define.amd == 'object' &&\n\t\tdefine.amd\n\t) {\n\t\tdefine(function() {\n\t\t\treturn he;\n\t\t});\n\t}\telse if (freeExports && !freeExports.nodeType) {\n\t\tif (freeModule) { // in Node.js, io.js, or RingoJS v0.8.0+\n\t\t\tfreeModule.exports = he;\n\t\t} else { // in Narwhal or RingoJS v0.7.0-\n\t\t\tfor (var key in he) {\n\t\t\t\thas(he, key) && (freeExports[key] = he[key]);\n\t\t\t}\n\t\t}\n\t} else { // in Rhino or a web browser\n\t\troot.he = he;\n\t}\n\n}(this));\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nfunction _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; }\n\nvar Stream = _interopDefault(require('stream'));\nvar http = _interopDefault(require('http'));\nvar Url = _interopDefault(require('url'));\nvar https = _interopDefault(require('https'));\nvar zlib = _interopDefault(require('zlib'));\n\n// Based on https://github.com/tmpvar/jsdom/blob/aa85b2abf07766ff7bf5c1f6daafb3726f2f2db5/lib/jsdom/living/blob.js\n\n// fix for \"Readable\" isn't a named export issue\nconst Readable = Stream.Readable;\n\nconst BUFFER = Symbol('buffer');\nconst TYPE = Symbol('type');\n\nclass Blob {\n\tconstructor() {\n\t\tthis[TYPE] = '';\n\n\t\tconst blobParts = arguments[0];\n\t\tconst options = arguments[1];\n\n\t\tconst buffers = [];\n\t\tlet size = 0;\n\n\t\tif (blobParts) {\n\t\t\tconst a = blobParts;\n\t\t\tconst length = Number(a.length);\n\t\t\tfor (let i = 0; i < length; i++) {\n\t\t\t\tconst element = a[i];\n\t\t\t\tlet buffer;\n\t\t\t\tif (element instanceof Buffer) {\n\t\t\t\t\tbuffer = element;\n\t\t\t\t} else if (ArrayBuffer.isView(element)) {\n\t\t\t\t\tbuffer = Buffer.from(element.buffer, element.byteOffset, element.byteLength);\n\t\t\t\t} else if (element instanceof ArrayBuffer) {\n\t\t\t\t\tbuffer = Buffer.from(element);\n\t\t\t\t} else if (element instanceof Blob) {\n\t\t\t\t\tbuffer = element[BUFFER];\n\t\t\t\t} else {\n\t\t\t\t\tbuffer = Buffer.from(typeof element === 'string' ? element : String(element));\n\t\t\t\t}\n\t\t\t\tsize += buffer.length;\n\t\t\t\tbuffers.push(buffer);\n\t\t\t}\n\t\t}\n\n\t\tthis[BUFFER] = Buffer.concat(buffers);\n\n\t\tlet type = options && options.type !== undefined && String(options.type).toLowerCase();\n\t\tif (type && !/[^\\u0020-\\u007E]/.test(type)) {\n\t\t\tthis[TYPE] = type;\n\t\t}\n\t}\n\tget size() {\n\t\treturn this[BUFFER].length;\n\t}\n\tget type() {\n\t\treturn this[TYPE];\n\t}\n\ttext() {\n\t\treturn Promise.resolve(this[BUFFER].toString());\n\t}\n\tarrayBuffer() {\n\t\tconst buf = this[BUFFER];\n\t\tconst ab = buf.buffer.slice(buf.byteOffset, buf.byteOffset + buf.byteLength);\n\t\treturn Promise.resolve(ab);\n\t}\n\tstream() {\n\t\tconst readable = new Readable();\n\t\treadable._read = function () {};\n\t\treadable.push(this[BUFFER]);\n\t\treadable.push(null);\n\t\treturn readable;\n\t}\n\ttoString() {\n\t\treturn '[object Blob]';\n\t}\n\tslice() {\n\t\tconst size = this.size;\n\n\t\tconst start = arguments[0];\n\t\tconst end = arguments[1];\n\t\tlet relativeStart, relativeEnd;\n\t\tif (start === undefined) {\n\t\t\trelativeStart = 0;\n\t\t} else if (start < 0) {\n\t\t\trelativeStart = Math.max(size + start, 0);\n\t\t} else {\n\t\t\trelativeStart = Math.min(start, size);\n\t\t}\n\t\tif (end === undefined) {\n\t\t\trelativeEnd = size;\n\t\t} else if (end < 0) {\n\t\t\trelativeEnd = Math.max(size + end, 0);\n\t\t} else {\n\t\t\trelativeEnd = Math.min(end, size);\n\t\t}\n\t\tconst span = Math.max(relativeEnd - relativeStart, 0);\n\n\t\tconst buffer = this[BUFFER];\n\t\tconst slicedBuffer = buffer.slice(relativeStart, relativeStart + span);\n\t\tconst blob = new Blob([], { type: arguments[2] });\n\t\tblob[BUFFER] = slicedBuffer;\n\t\treturn blob;\n\t}\n}\n\nObject.defineProperties(Blob.prototype, {\n\tsize: { enumerable: true },\n\ttype: { enumerable: true },\n\tslice: { enumerable: true }\n});\n\nObject.defineProperty(Blob.prototype, Symbol.toStringTag, {\n\tvalue: 'Blob',\n\twritable: false,\n\tenumerable: false,\n\tconfigurable: true\n});\n\n/**\n * fetch-error.js\n *\n * FetchError interface for operational errors\n */\n\n/**\n * Create FetchError instance\n *\n * @param String message Error message for human\n * @param String type Error type for machine\n * @param String systemError For Node.js system error\n * @return FetchError\n */\nfunction FetchError(message, type, systemError) {\n Error.call(this, message);\n\n this.message = message;\n this.type = type;\n\n // when err.type is `system`, err.code contains system error code\n if (systemError) {\n this.code = this.errno = systemError.code;\n }\n\n // hide custom error implementation details from end-users\n Error.captureStackTrace(this, this.constructor);\n}\n\nFetchError.prototype = Object.create(Error.prototype);\nFetchError.prototype.constructor = FetchError;\nFetchError.prototype.name = 'FetchError';\n\nlet convert;\ntry {\n\tconvert = require('encoding').convert;\n} catch (e) {}\n\nconst INTERNALS = Symbol('Body internals');\n\n// fix an issue where \"PassThrough\" isn't a named export for node <10\nconst PassThrough = Stream.PassThrough;\n\n/**\n * Body mixin\n *\n * Ref: https://fetch.spec.whatwg.org/#body\n *\n * @param Stream body Readable stream\n * @param Object opts Response options\n * @return Void\n */\nfunction Body(body) {\n\tvar _this = this;\n\n\tvar _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},\n\t _ref$size = _ref.size;\n\n\tlet size = _ref$size === undefined ? 0 : _ref$size;\n\tvar _ref$timeout = _ref.timeout;\n\tlet timeout = _ref$timeout === undefined ? 0 : _ref$timeout;\n\n\tif (body == null) {\n\t\t// body is undefined or null\n\t\tbody = null;\n\t} else if (isURLSearchParams(body)) {\n\t\t// body is a URLSearchParams\n\t\tbody = Buffer.from(body.toString());\n\t} else if (isBlob(body)) ; else if (Buffer.isBuffer(body)) ; else if (Object.prototype.toString.call(body) === '[object ArrayBuffer]') {\n\t\t// body is ArrayBuffer\n\t\tbody = Buffer.from(body);\n\t} else if (ArrayBuffer.isView(body)) {\n\t\t// body is ArrayBufferView\n\t\tbody = Buffer.from(body.buffer, body.byteOffset, body.byteLength);\n\t} else if (body instanceof Stream) ; else {\n\t\t// none of the above\n\t\t// coerce to string then buffer\n\t\tbody = Buffer.from(String(body));\n\t}\n\tthis[INTERNALS] = {\n\t\tbody,\n\t\tdisturbed: false,\n\t\terror: null\n\t};\n\tthis.size = size;\n\tthis.timeout = timeout;\n\n\tif (body instanceof Stream) {\n\t\tbody.on('error', function (err) {\n\t\t\tconst error = err.name === 'AbortError' ? err : new FetchError(`Invalid response body while trying to fetch ${_this.url}: ${err.message}`, 'system', err);\n\t\t\t_this[INTERNALS].error = error;\n\t\t});\n\t}\n}\n\nBody.prototype = {\n\tget body() {\n\t\treturn this[INTERNALS].body;\n\t},\n\n\tget bodyUsed() {\n\t\treturn this[INTERNALS].disturbed;\n\t},\n\n\t/**\n * Decode response as ArrayBuffer\n *\n * @return Promise\n */\n\tarrayBuffer() {\n\t\treturn consumeBody.call(this).then(function (buf) {\n\t\t\treturn buf.buffer.slice(buf.byteOffset, buf.byteOffset + buf.byteLength);\n\t\t});\n\t},\n\n\t/**\n * Return raw response as Blob\n *\n * @return Promise\n */\n\tblob() {\n\t\tlet ct = this.headers && this.headers.get('content-type') || '';\n\t\treturn consumeBody.call(this).then(function (buf) {\n\t\t\treturn Object.assign(\n\t\t\t// Prevent copying\n\t\t\tnew Blob([], {\n\t\t\t\ttype: ct.toLowerCase()\n\t\t\t}), {\n\t\t\t\t[BUFFER]: buf\n\t\t\t});\n\t\t});\n\t},\n\n\t/**\n * Decode response as json\n *\n * @return Promise\n */\n\tjson() {\n\t\tvar _this2 = this;\n\n\t\treturn consumeBody.call(this).then(function (buffer) {\n\t\t\ttry {\n\t\t\t\treturn JSON.parse(buffer.toString());\n\t\t\t} catch (err) {\n\t\t\t\treturn Body.Promise.reject(new FetchError(`invalid json response body at ${_this2.url} reason: ${err.message}`, 'invalid-json'));\n\t\t\t}\n\t\t});\n\t},\n\n\t/**\n * Decode response as text\n *\n * @return Promise\n */\n\ttext() {\n\t\treturn consumeBody.call(this).then(function (buffer) {\n\t\t\treturn buffer.toString();\n\t\t});\n\t},\n\n\t/**\n * Decode response as buffer (non-spec api)\n *\n * @return Promise\n */\n\tbuffer() {\n\t\treturn consumeBody.call(this);\n\t},\n\n\t/**\n * Decode response as text, while automatically detecting the encoding and\n * trying to decode to UTF-8 (non-spec api)\n *\n * @return Promise\n */\n\ttextConverted() {\n\t\tvar _this3 = this;\n\n\t\treturn consumeBody.call(this).then(function (buffer) {\n\t\t\treturn convertBody(buffer, _this3.headers);\n\t\t});\n\t}\n};\n\n// In browsers, all properties are enumerable.\nObject.defineProperties(Body.prototype, {\n\tbody: { enumerable: true },\n\tbodyUsed: { enumerable: true },\n\tarrayBuffer: { enumerable: true },\n\tblob: { enumerable: true },\n\tjson: { enumerable: true },\n\ttext: { enumerable: true }\n});\n\nBody.mixIn = function (proto) {\n\tfor (const name of Object.getOwnPropertyNames(Body.prototype)) {\n\t\t// istanbul ignore else: future proof\n\t\tif (!(name in proto)) {\n\t\t\tconst desc = Object.getOwnPropertyDescriptor(Body.prototype, name);\n\t\t\tObject.defineProperty(proto, name, desc);\n\t\t}\n\t}\n};\n\n/**\n * Consume and convert an entire Body to a Buffer.\n *\n * Ref: https://fetch.spec.whatwg.org/#concept-body-consume-body\n *\n * @return Promise\n */\nfunction consumeBody() {\n\tvar _this4 = this;\n\n\tif (this[INTERNALS].disturbed) {\n\t\treturn Body.Promise.reject(new TypeError(`body used already for: ${this.url}`));\n\t}\n\n\tthis[INTERNALS].disturbed = true;\n\n\tif (this[INTERNALS].error) {\n\t\treturn Body.Promise.reject(this[INTERNALS].error);\n\t}\n\n\tlet body = this.body;\n\n\t// body is null\n\tif (body === null) {\n\t\treturn Body.Promise.resolve(Buffer.alloc(0));\n\t}\n\n\t// body is blob\n\tif (isBlob(body)) {\n\t\tbody = body.stream();\n\t}\n\n\t// body is buffer\n\tif (Buffer.isBuffer(body)) {\n\t\treturn Body.Promise.resolve(body);\n\t}\n\n\t// istanbul ignore if: should never happen\n\tif (!(body instanceof Stream)) {\n\t\treturn Body.Promise.resolve(Buffer.alloc(0));\n\t}\n\n\t// body is stream\n\t// get ready to actually consume the body\n\tlet accum = [];\n\tlet accumBytes = 0;\n\tlet abort = false;\n\n\treturn new Body.Promise(function (resolve, reject) {\n\t\tlet resTimeout;\n\n\t\t// allow timeout on slow response body\n\t\tif (_this4.timeout) {\n\t\t\tresTimeout = setTimeout(function () {\n\t\t\t\tabort = true;\n\t\t\t\treject(new FetchError(`Response timeout while trying to fetch ${_this4.url} (over ${_this4.timeout}ms)`, 'body-timeout'));\n\t\t\t}, _this4.timeout);\n\t\t}\n\n\t\t// handle stream errors\n\t\tbody.on('error', function (err) {\n\t\t\tif (err.name === 'AbortError') {\n\t\t\t\t// if the request was aborted, reject with this Error\n\t\t\t\tabort = true;\n\t\t\t\treject(err);\n\t\t\t} else {\n\t\t\t\t// other errors, such as incorrect content-encoding\n\t\t\t\treject(new FetchError(`Invalid response body while trying to fetch ${_this4.url}: ${err.message}`, 'system', err));\n\t\t\t}\n\t\t});\n\n\t\tbody.on('data', function (chunk) {\n\t\t\tif (abort || chunk === null) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (_this4.size && accumBytes + chunk.length > _this4.size) {\n\t\t\t\tabort = true;\n\t\t\t\treject(new FetchError(`content size at ${_this4.url} over limit: ${_this4.size}`, 'max-size'));\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\taccumBytes += chunk.length;\n\t\t\taccum.push(chunk);\n\t\t});\n\n\t\tbody.on('end', function () {\n\t\t\tif (abort) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tclearTimeout(resTimeout);\n\n\t\t\ttry {\n\t\t\t\tresolve(Buffer.concat(accum, accumBytes));\n\t\t\t} catch (err) {\n\t\t\t\t// handle streams that have accumulated too much data (issue #414)\n\t\t\t\treject(new FetchError(`Could not create Buffer from response body for ${_this4.url}: ${err.message}`, 'system', err));\n\t\t\t}\n\t\t});\n\t});\n}\n\n/**\n * Detect buffer encoding and convert to target encoding\n * ref: http://www.w3.org/TR/2011/WD-html5-20110113/parsing.html#determining-the-character-encoding\n *\n * @param Buffer buffer Incoming buffer\n * @param String encoding Target encoding\n * @return String\n */\nfunction convertBody(buffer, headers) {\n\tif (typeof convert !== 'function') {\n\t\tthrow new Error('The package `encoding` must be installed to use the textConverted() function');\n\t}\n\n\tconst ct = headers.get('content-type');\n\tlet charset = 'utf-8';\n\tlet res, str;\n\n\t// header\n\tif (ct) {\n\t\tres = /charset=([^;]*)/i.exec(ct);\n\t}\n\n\t// no charset in content type, peek at response body for at most 1024 bytes\n\tstr = buffer.slice(0, 1024).toString();\n\n\t// html5\n\tif (!res && str) {\n\t\tres = / 0 && arguments[0] !== undefined ? arguments[0] : undefined;\n\n\t\tthis[MAP] = Object.create(null);\n\n\t\tif (init instanceof Headers) {\n\t\t\tconst rawHeaders = init.raw();\n\t\t\tconst headerNames = Object.keys(rawHeaders);\n\n\t\t\tfor (const headerName of headerNames) {\n\t\t\t\tfor (const value of rawHeaders[headerName]) {\n\t\t\t\t\tthis.append(headerName, value);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn;\n\t\t}\n\n\t\t// We don't worry about converting prop to ByteString here as append()\n\t\t// will handle it.\n\t\tif (init == null) ; else if (typeof init === 'object') {\n\t\t\tconst method = init[Symbol.iterator];\n\t\t\tif (method != null) {\n\t\t\t\tif (typeof method !== 'function') {\n\t\t\t\t\tthrow new TypeError('Header pairs must be iterable');\n\t\t\t\t}\n\n\t\t\t\t// sequence>\n\t\t\t\t// Note: per spec we have to first exhaust the lists then process them\n\t\t\t\tconst pairs = [];\n\t\t\t\tfor (const pair of init) {\n\t\t\t\t\tif (typeof pair !== 'object' || typeof pair[Symbol.iterator] !== 'function') {\n\t\t\t\t\t\tthrow new TypeError('Each header pair must be iterable');\n\t\t\t\t\t}\n\t\t\t\t\tpairs.push(Array.from(pair));\n\t\t\t\t}\n\n\t\t\t\tfor (const pair of pairs) {\n\t\t\t\t\tif (pair.length !== 2) {\n\t\t\t\t\t\tthrow new TypeError('Each header pair must be a name/value tuple');\n\t\t\t\t\t}\n\t\t\t\t\tthis.append(pair[0], pair[1]);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t// record\n\t\t\t\tfor (const key of Object.keys(init)) {\n\t\t\t\t\tconst value = init[key];\n\t\t\t\t\tthis.append(key, value);\n\t\t\t\t}\n\t\t\t}\n\t\t} else {\n\t\t\tthrow new TypeError('Provided initializer must be an object');\n\t\t}\n\t}\n\n\t/**\n * Return combined header value given name\n *\n * @param String name Header name\n * @return Mixed\n */\n\tget(name) {\n\t\tname = `${name}`;\n\t\tvalidateName(name);\n\t\tconst key = find(this[MAP], name);\n\t\tif (key === undefined) {\n\t\t\treturn null;\n\t\t}\n\n\t\treturn this[MAP][key].join(', ');\n\t}\n\n\t/**\n * Iterate over all headers\n *\n * @param Function callback Executed for each item with parameters (value, name, thisArg)\n * @param Boolean thisArg `this` context for callback function\n * @return Void\n */\n\tforEach(callback) {\n\t\tlet thisArg = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : undefined;\n\n\t\tlet pairs = getHeaders(this);\n\t\tlet i = 0;\n\t\twhile (i < pairs.length) {\n\t\t\tvar _pairs$i = pairs[i];\n\t\t\tconst name = _pairs$i[0],\n\t\t\t value = _pairs$i[1];\n\n\t\t\tcallback.call(thisArg, value, name, this);\n\t\t\tpairs = getHeaders(this);\n\t\t\ti++;\n\t\t}\n\t}\n\n\t/**\n * Overwrite header values given name\n *\n * @param String name Header name\n * @param String value Header value\n * @return Void\n */\n\tset(name, value) {\n\t\tname = `${name}`;\n\t\tvalue = `${value}`;\n\t\tvalidateName(name);\n\t\tvalidateValue(value);\n\t\tconst key = find(this[MAP], name);\n\t\tthis[MAP][key !== undefined ? key : name] = [value];\n\t}\n\n\t/**\n * Append a value onto existing header\n *\n * @param String name Header name\n * @param String value Header value\n * @return Void\n */\n\tappend(name, value) {\n\t\tname = `${name}`;\n\t\tvalue = `${value}`;\n\t\tvalidateName(name);\n\t\tvalidateValue(value);\n\t\tconst key = find(this[MAP], name);\n\t\tif (key !== undefined) {\n\t\t\tthis[MAP][key].push(value);\n\t\t} else {\n\t\t\tthis[MAP][name] = [value];\n\t\t}\n\t}\n\n\t/**\n * Check for header name existence\n *\n * @param String name Header name\n * @return Boolean\n */\n\thas(name) {\n\t\tname = `${name}`;\n\t\tvalidateName(name);\n\t\treturn find(this[MAP], name) !== undefined;\n\t}\n\n\t/**\n * Delete all header values given name\n *\n * @param String name Header name\n * @return Void\n */\n\tdelete(name) {\n\t\tname = `${name}`;\n\t\tvalidateName(name);\n\t\tconst key = find(this[MAP], name);\n\t\tif (key !== undefined) {\n\t\t\tdelete this[MAP][key];\n\t\t}\n\t}\n\n\t/**\n * Return raw headers (non-spec api)\n *\n * @return Object\n */\n\traw() {\n\t\treturn this[MAP];\n\t}\n\n\t/**\n * Get an iterator on keys.\n *\n * @return Iterator\n */\n\tkeys() {\n\t\treturn createHeadersIterator(this, 'key');\n\t}\n\n\t/**\n * Get an iterator on values.\n *\n * @return Iterator\n */\n\tvalues() {\n\t\treturn createHeadersIterator(this, 'value');\n\t}\n\n\t/**\n * Get an iterator on entries.\n *\n * This is the default iterator of the Headers object.\n *\n * @return Iterator\n */\n\t[Symbol.iterator]() {\n\t\treturn createHeadersIterator(this, 'key+value');\n\t}\n}\nHeaders.prototype.entries = Headers.prototype[Symbol.iterator];\n\nObject.defineProperty(Headers.prototype, Symbol.toStringTag, {\n\tvalue: 'Headers',\n\twritable: false,\n\tenumerable: false,\n\tconfigurable: true\n});\n\nObject.defineProperties(Headers.prototype, {\n\tget: { enumerable: true },\n\tforEach: { enumerable: true },\n\tset: { enumerable: true },\n\tappend: { enumerable: true },\n\thas: { enumerable: true },\n\tdelete: { enumerable: true },\n\tkeys: { enumerable: true },\n\tvalues: { enumerable: true },\n\tentries: { enumerable: true }\n});\n\nfunction getHeaders(headers) {\n\tlet kind = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'key+value';\n\n\tconst keys = Object.keys(headers[MAP]).sort();\n\treturn keys.map(kind === 'key' ? function (k) {\n\t\treturn k.toLowerCase();\n\t} : kind === 'value' ? function (k) {\n\t\treturn headers[MAP][k].join(', ');\n\t} : function (k) {\n\t\treturn [k.toLowerCase(), headers[MAP][k].join(', ')];\n\t});\n}\n\nconst INTERNAL = Symbol('internal');\n\nfunction createHeadersIterator(target, kind) {\n\tconst iterator = Object.create(HeadersIteratorPrototype);\n\titerator[INTERNAL] = {\n\t\ttarget,\n\t\tkind,\n\t\tindex: 0\n\t};\n\treturn iterator;\n}\n\nconst HeadersIteratorPrototype = Object.setPrototypeOf({\n\tnext() {\n\t\t// istanbul ignore if\n\t\tif (!this || Object.getPrototypeOf(this) !== HeadersIteratorPrototype) {\n\t\t\tthrow new TypeError('Value of `this` is not a HeadersIterator');\n\t\t}\n\n\t\tvar _INTERNAL = this[INTERNAL];\n\t\tconst target = _INTERNAL.target,\n\t\t kind = _INTERNAL.kind,\n\t\t index = _INTERNAL.index;\n\n\t\tconst values = getHeaders(target, kind);\n\t\tconst len = values.length;\n\t\tif (index >= len) {\n\t\t\treturn {\n\t\t\t\tvalue: undefined,\n\t\t\t\tdone: true\n\t\t\t};\n\t\t}\n\n\t\tthis[INTERNAL].index = index + 1;\n\n\t\treturn {\n\t\t\tvalue: values[index],\n\t\t\tdone: false\n\t\t};\n\t}\n}, Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]())));\n\nObject.defineProperty(HeadersIteratorPrototype, Symbol.toStringTag, {\n\tvalue: 'HeadersIterator',\n\twritable: false,\n\tenumerable: false,\n\tconfigurable: true\n});\n\n/**\n * Export the Headers object in a form that Node.js can consume.\n *\n * @param Headers headers\n * @return Object\n */\nfunction exportNodeCompatibleHeaders(headers) {\n\tconst obj = Object.assign({ __proto__: null }, headers[MAP]);\n\n\t// http.request() only supports string as Host header. This hack makes\n\t// specifying custom Host header possible.\n\tconst hostHeaderKey = find(headers[MAP], 'Host');\n\tif (hostHeaderKey !== undefined) {\n\t\tobj[hostHeaderKey] = obj[hostHeaderKey][0];\n\t}\n\n\treturn obj;\n}\n\n/**\n * Create a Headers object from an object of headers, ignoring those that do\n * not conform to HTTP grammar productions.\n *\n * @param Object obj Object of headers\n * @return Headers\n */\nfunction createHeadersLenient(obj) {\n\tconst headers = new Headers();\n\tfor (const name of Object.keys(obj)) {\n\t\tif (invalidTokenRegex.test(name)) {\n\t\t\tcontinue;\n\t\t}\n\t\tif (Array.isArray(obj[name])) {\n\t\t\tfor (const val of obj[name]) {\n\t\t\t\tif (invalidHeaderCharRegex.test(val)) {\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\t\t\t\tif (headers[MAP][name] === undefined) {\n\t\t\t\t\theaders[MAP][name] = [val];\n\t\t\t\t} else {\n\t\t\t\t\theaders[MAP][name].push(val);\n\t\t\t\t}\n\t\t\t}\n\t\t} else if (!invalidHeaderCharRegex.test(obj[name])) {\n\t\t\theaders[MAP][name] = [obj[name]];\n\t\t}\n\t}\n\treturn headers;\n}\n\nconst INTERNALS$1 = Symbol('Response internals');\n\n// fix an issue where \"STATUS_CODES\" aren't a named export for node <10\nconst STATUS_CODES = http.STATUS_CODES;\n\n/**\n * Response class\n *\n * @param Stream body Readable stream\n * @param Object opts Response options\n * @return Void\n */\nclass Response {\n\tconstructor() {\n\t\tlet body = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;\n\t\tlet opts = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n\t\tBody.call(this, body, opts);\n\n\t\tconst status = opts.status || 200;\n\t\tconst headers = new Headers(opts.headers);\n\n\t\tif (body != null && !headers.has('Content-Type')) {\n\t\t\tconst contentType = extractContentType(body);\n\t\t\tif (contentType) {\n\t\t\t\theaders.append('Content-Type', contentType);\n\t\t\t}\n\t\t}\n\n\t\tthis[INTERNALS$1] = {\n\t\t\turl: opts.url,\n\t\t\tstatus,\n\t\t\tstatusText: opts.statusText || STATUS_CODES[status],\n\t\t\theaders,\n\t\t\tcounter: opts.counter\n\t\t};\n\t}\n\n\tget url() {\n\t\treturn this[INTERNALS$1].url || '';\n\t}\n\n\tget status() {\n\t\treturn this[INTERNALS$1].status;\n\t}\n\n\t/**\n * Convenience property representing if the request ended normally\n */\n\tget ok() {\n\t\treturn this[INTERNALS$1].status >= 200 && this[INTERNALS$1].status < 300;\n\t}\n\n\tget redirected() {\n\t\treturn this[INTERNALS$1].counter > 0;\n\t}\n\n\tget statusText() {\n\t\treturn this[INTERNALS$1].statusText;\n\t}\n\n\tget headers() {\n\t\treturn this[INTERNALS$1].headers;\n\t}\n\n\t/**\n * Clone this response\n *\n * @return Response\n */\n\tclone() {\n\t\treturn new Response(clone(this), {\n\t\t\turl: this.url,\n\t\t\tstatus: this.status,\n\t\t\tstatusText: this.statusText,\n\t\t\theaders: this.headers,\n\t\t\tok: this.ok,\n\t\t\tredirected: this.redirected\n\t\t});\n\t}\n}\n\nBody.mixIn(Response.prototype);\n\nObject.defineProperties(Response.prototype, {\n\turl: { enumerable: true },\n\tstatus: { enumerable: true },\n\tok: { enumerable: true },\n\tredirected: { enumerable: true },\n\tstatusText: { enumerable: true },\n\theaders: { enumerable: true },\n\tclone: { enumerable: true }\n});\n\nObject.defineProperty(Response.prototype, Symbol.toStringTag, {\n\tvalue: 'Response',\n\twritable: false,\n\tenumerable: false,\n\tconfigurable: true\n});\n\nconst INTERNALS$2 = Symbol('Request internals');\n\n// fix an issue where \"format\", \"parse\" aren't a named export for node <10\nconst parse_url = Url.parse;\nconst format_url = Url.format;\n\nconst streamDestructionSupported = 'destroy' in Stream.Readable.prototype;\n\n/**\n * Check if a value is an instance of Request.\n *\n * @param Mixed input\n * @return Boolean\n */\nfunction isRequest(input) {\n\treturn typeof input === 'object' && typeof input[INTERNALS$2] === 'object';\n}\n\nfunction isAbortSignal(signal) {\n\tconst proto = signal && typeof signal === 'object' && Object.getPrototypeOf(signal);\n\treturn !!(proto && proto.constructor.name === 'AbortSignal');\n}\n\n/**\n * Request class\n *\n * @param Mixed input Url or Request instance\n * @param Object init Custom options\n * @return Void\n */\nclass Request {\n\tconstructor(input) {\n\t\tlet init = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n\t\tlet parsedURL;\n\n\t\t// normalize input\n\t\tif (!isRequest(input)) {\n\t\t\tif (input && input.href) {\n\t\t\t\t// in order to support Node.js' Url objects; though WHATWG's URL objects\n\t\t\t\t// will fall into this branch also (since their `toString()` will return\n\t\t\t\t// `href` property anyway)\n\t\t\t\tparsedURL = parse_url(input.href);\n\t\t\t} else {\n\t\t\t\t// coerce input to a string before attempting to parse\n\t\t\t\tparsedURL = parse_url(`${input}`);\n\t\t\t}\n\t\t\tinput = {};\n\t\t} else {\n\t\t\tparsedURL = parse_url(input.url);\n\t\t}\n\n\t\tlet method = init.method || input.method || 'GET';\n\t\tmethod = method.toUpperCase();\n\n\t\tif ((init.body != null || isRequest(input) && input.body !== null) && (method === 'GET' || method === 'HEAD')) {\n\t\t\tthrow new TypeError('Request with GET/HEAD method cannot have body');\n\t\t}\n\n\t\tlet inputBody = init.body != null ? init.body : isRequest(input) && input.body !== null ? clone(input) : null;\n\n\t\tBody.call(this, inputBody, {\n\t\t\ttimeout: init.timeout || input.timeout || 0,\n\t\t\tsize: init.size || input.size || 0\n\t\t});\n\n\t\tconst headers = new Headers(init.headers || input.headers || {});\n\n\t\tif (inputBody != null && !headers.has('Content-Type')) {\n\t\t\tconst contentType = extractContentType(inputBody);\n\t\t\tif (contentType) {\n\t\t\t\theaders.append('Content-Type', contentType);\n\t\t\t}\n\t\t}\n\n\t\tlet signal = isRequest(input) ? input.signal : null;\n\t\tif ('signal' in init) signal = init.signal;\n\n\t\tif (signal != null && !isAbortSignal(signal)) {\n\t\t\tthrow new TypeError('Expected signal to be an instanceof AbortSignal');\n\t\t}\n\n\t\tthis[INTERNALS$2] = {\n\t\t\tmethod,\n\t\t\tredirect: init.redirect || input.redirect || 'follow',\n\t\t\theaders,\n\t\t\tparsedURL,\n\t\t\tsignal\n\t\t};\n\n\t\t// node-fetch-only options\n\t\tthis.follow = init.follow !== undefined ? init.follow : input.follow !== undefined ? input.follow : 20;\n\t\tthis.compress = init.compress !== undefined ? init.compress : input.compress !== undefined ? input.compress : true;\n\t\tthis.counter = init.counter || input.counter || 0;\n\t\tthis.agent = init.agent || input.agent;\n\t}\n\n\tget method() {\n\t\treturn this[INTERNALS$2].method;\n\t}\n\n\tget url() {\n\t\treturn format_url(this[INTERNALS$2].parsedURL);\n\t}\n\n\tget headers() {\n\t\treturn this[INTERNALS$2].headers;\n\t}\n\n\tget redirect() {\n\t\treturn this[INTERNALS$2].redirect;\n\t}\n\n\tget signal() {\n\t\treturn this[INTERNALS$2].signal;\n\t}\n\n\t/**\n * Clone this request\n *\n * @return Request\n */\n\tclone() {\n\t\treturn new Request(this);\n\t}\n}\n\nBody.mixIn(Request.prototype);\n\nObject.defineProperty(Request.prototype, Symbol.toStringTag, {\n\tvalue: 'Request',\n\twritable: false,\n\tenumerable: false,\n\tconfigurable: true\n});\n\nObject.defineProperties(Request.prototype, {\n\tmethod: { enumerable: true },\n\turl: { enumerable: true },\n\theaders: { enumerable: true },\n\tredirect: { enumerable: true },\n\tclone: { enumerable: true },\n\tsignal: { enumerable: true }\n});\n\n/**\n * Convert a Request to Node.js http request options.\n *\n * @param Request A Request instance\n * @return Object The options object to be passed to http.request\n */\nfunction getNodeRequestOptions(request) {\n\tconst parsedURL = request[INTERNALS$2].parsedURL;\n\tconst headers = new Headers(request[INTERNALS$2].headers);\n\n\t// fetch step 1.3\n\tif (!headers.has('Accept')) {\n\t\theaders.set('Accept', '*/*');\n\t}\n\n\t// Basic fetch\n\tif (!parsedURL.protocol || !parsedURL.hostname) {\n\t\tthrow new TypeError('Only absolute URLs are supported');\n\t}\n\n\tif (!/^https?:$/.test(parsedURL.protocol)) {\n\t\tthrow new TypeError('Only HTTP(S) protocols are supported');\n\t}\n\n\tif (request.signal && request.body instanceof Stream.Readable && !streamDestructionSupported) {\n\t\tthrow new Error('Cancellation of streamed requests with AbortSignal is not supported in node < 8');\n\t}\n\n\t// HTTP-network-or-cache fetch steps 2.4-2.7\n\tlet contentLengthValue = null;\n\tif (request.body == null && /^(POST|PUT)$/i.test(request.method)) {\n\t\tcontentLengthValue = '0';\n\t}\n\tif (request.body != null) {\n\t\tconst totalBytes = getTotalBytes(request);\n\t\tif (typeof totalBytes === 'number') {\n\t\t\tcontentLengthValue = String(totalBytes);\n\t\t}\n\t}\n\tif (contentLengthValue) {\n\t\theaders.set('Content-Length', contentLengthValue);\n\t}\n\n\t// HTTP-network-or-cache fetch step 2.11\n\tif (!headers.has('User-Agent')) {\n\t\theaders.set('User-Agent', 'node-fetch/1.0 (+https://github.com/bitinn/node-fetch)');\n\t}\n\n\t// HTTP-network-or-cache fetch step 2.15\n\tif (request.compress && !headers.has('Accept-Encoding')) {\n\t\theaders.set('Accept-Encoding', 'gzip,deflate');\n\t}\n\n\tlet agent = request.agent;\n\tif (typeof agent === 'function') {\n\t\tagent = agent(parsedURL);\n\t}\n\n\tif (!headers.has('Connection') && !agent) {\n\t\theaders.set('Connection', 'close');\n\t}\n\n\t// HTTP-network fetch step 4.2\n\t// chunked encoding is handled by Node.js\n\n\treturn Object.assign({}, parsedURL, {\n\t\tmethod: request.method,\n\t\theaders: exportNodeCompatibleHeaders(headers),\n\t\tagent\n\t});\n}\n\n/**\n * abort-error.js\n *\n * AbortError interface for cancelled requests\n */\n\n/**\n * Create AbortError instance\n *\n * @param String message Error message for human\n * @return AbortError\n */\nfunction AbortError(message) {\n Error.call(this, message);\n\n this.type = 'aborted';\n this.message = message;\n\n // hide custom error implementation details from end-users\n Error.captureStackTrace(this, this.constructor);\n}\n\nAbortError.prototype = Object.create(Error.prototype);\nAbortError.prototype.constructor = AbortError;\nAbortError.prototype.name = 'AbortError';\n\n// fix an issue where \"PassThrough\", \"resolve\" aren't a named export for node <10\nconst PassThrough$1 = Stream.PassThrough;\nconst resolve_url = Url.resolve;\n\n/**\n * Fetch function\n *\n * @param Mixed url Absolute url or Request instance\n * @param Object opts Fetch options\n * @return Promise\n */\nfunction fetch(url, opts) {\n\n\t// allow custom promise\n\tif (!fetch.Promise) {\n\t\tthrow new Error('native promise missing, set fetch.Promise to your favorite alternative');\n\t}\n\n\tBody.Promise = fetch.Promise;\n\n\t// wrap http.request into fetch\n\treturn new fetch.Promise(function (resolve, reject) {\n\t\t// build request object\n\t\tconst request = new Request(url, opts);\n\t\tconst options = getNodeRequestOptions(request);\n\n\t\tconst send = (options.protocol === 'https:' ? https : http).request;\n\t\tconst signal = request.signal;\n\n\t\tlet response = null;\n\n\t\tconst abort = function abort() {\n\t\t\tlet error = new AbortError('The user aborted a request.');\n\t\t\treject(error);\n\t\t\tif (request.body && request.body instanceof Stream.Readable) {\n\t\t\t\trequest.body.destroy(error);\n\t\t\t}\n\t\t\tif (!response || !response.body) return;\n\t\t\tresponse.body.emit('error', error);\n\t\t};\n\n\t\tif (signal && signal.aborted) {\n\t\t\tabort();\n\t\t\treturn;\n\t\t}\n\n\t\tconst abortAndFinalize = function abortAndFinalize() {\n\t\t\tabort();\n\t\t\tfinalize();\n\t\t};\n\n\t\t// send request\n\t\tconst req = send(options);\n\t\tlet reqTimeout;\n\n\t\tif (signal) {\n\t\t\tsignal.addEventListener('abort', abortAndFinalize);\n\t\t}\n\n\t\tfunction finalize() {\n\t\t\treq.abort();\n\t\t\tif (signal) signal.removeEventListener('abort', abortAndFinalize);\n\t\t\tclearTimeout(reqTimeout);\n\t\t}\n\n\t\tif (request.timeout) {\n\t\t\treq.once('socket', function (socket) {\n\t\t\t\treqTimeout = setTimeout(function () {\n\t\t\t\t\treject(new FetchError(`network timeout at: ${request.url}`, 'request-timeout'));\n\t\t\t\t\tfinalize();\n\t\t\t\t}, request.timeout);\n\t\t\t});\n\t\t}\n\n\t\treq.on('error', function (err) {\n\t\t\treject(new FetchError(`request to ${request.url} failed, reason: ${err.message}`, 'system', err));\n\t\t\tfinalize();\n\t\t});\n\n\t\treq.on('response', function (res) {\n\t\t\tclearTimeout(reqTimeout);\n\n\t\t\tconst headers = createHeadersLenient(res.headers);\n\n\t\t\t// HTTP fetch step 5\n\t\t\tif (fetch.isRedirect(res.statusCode)) {\n\t\t\t\t// HTTP fetch step 5.2\n\t\t\t\tconst location = headers.get('Location');\n\n\t\t\t\t// HTTP fetch step 5.3\n\t\t\t\tconst locationURL = location === null ? null : resolve_url(request.url, location);\n\n\t\t\t\t// HTTP fetch step 5.5\n\t\t\t\tswitch (request.redirect) {\n\t\t\t\t\tcase 'error':\n\t\t\t\t\t\treject(new FetchError(`uri requested responds with a redirect, redirect mode is set to error: ${request.url}`, 'no-redirect'));\n\t\t\t\t\t\tfinalize();\n\t\t\t\t\t\treturn;\n\t\t\t\t\tcase 'manual':\n\t\t\t\t\t\t// node-fetch-specific step: make manual redirect a bit easier to use by setting the Location header value to the resolved URL.\n\t\t\t\t\t\tif (locationURL !== null) {\n\t\t\t\t\t\t\t// handle corrupted header\n\t\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\t\theaders.set('Location', locationURL);\n\t\t\t\t\t\t\t} catch (err) {\n\t\t\t\t\t\t\t\t// istanbul ignore next: nodejs server prevent invalid response headers, we can't test this through normal request\n\t\t\t\t\t\t\t\treject(err);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase 'follow':\n\t\t\t\t\t\t// HTTP-redirect fetch step 2\n\t\t\t\t\t\tif (locationURL === null) {\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t// HTTP-redirect fetch step 5\n\t\t\t\t\t\tif (request.counter >= request.follow) {\n\t\t\t\t\t\t\treject(new FetchError(`maximum redirect reached at: ${request.url}`, 'max-redirect'));\n\t\t\t\t\t\t\tfinalize();\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t// HTTP-redirect fetch step 6 (counter increment)\n\t\t\t\t\t\t// Create a new Request object.\n\t\t\t\t\t\tconst requestOpts = {\n\t\t\t\t\t\t\theaders: new Headers(request.headers),\n\t\t\t\t\t\t\tfollow: request.follow,\n\t\t\t\t\t\t\tcounter: request.counter + 1,\n\t\t\t\t\t\t\tagent: request.agent,\n\t\t\t\t\t\t\tcompress: request.compress,\n\t\t\t\t\t\t\tmethod: request.method,\n\t\t\t\t\t\t\tbody: request.body,\n\t\t\t\t\t\t\tsignal: request.signal,\n\t\t\t\t\t\t\ttimeout: request.timeout,\n\t\t\t\t\t\t\tsize: request.size\n\t\t\t\t\t\t};\n\n\t\t\t\t\t\t// HTTP-redirect fetch step 9\n\t\t\t\t\t\tif (res.statusCode !== 303 && request.body && getTotalBytes(request) === null) {\n\t\t\t\t\t\t\treject(new FetchError('Cannot follow redirect with body being a readable stream', 'unsupported-redirect'));\n\t\t\t\t\t\t\tfinalize();\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t// HTTP-redirect fetch step 11\n\t\t\t\t\t\tif (res.statusCode === 303 || (res.statusCode === 301 || res.statusCode === 302) && request.method === 'POST') {\n\t\t\t\t\t\t\trequestOpts.method = 'GET';\n\t\t\t\t\t\t\trequestOpts.body = undefined;\n\t\t\t\t\t\t\trequestOpts.headers.delete('content-length');\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t// HTTP-redirect fetch step 15\n\t\t\t\t\t\tresolve(fetch(new Request(locationURL, requestOpts)));\n\t\t\t\t\t\tfinalize();\n\t\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// prepare response\n\t\t\tres.once('end', function () {\n\t\t\t\tif (signal) signal.removeEventListener('abort', abortAndFinalize);\n\t\t\t});\n\t\t\tlet body = res.pipe(new PassThrough$1());\n\n\t\t\tconst response_options = {\n\t\t\t\turl: request.url,\n\t\t\t\tstatus: res.statusCode,\n\t\t\t\tstatusText: res.statusMessage,\n\t\t\t\theaders: headers,\n\t\t\t\tsize: request.size,\n\t\t\t\ttimeout: request.timeout,\n\t\t\t\tcounter: request.counter\n\t\t\t};\n\n\t\t\t// HTTP-network fetch step 12.1.1.3\n\t\t\tconst codings = headers.get('Content-Encoding');\n\n\t\t\t// HTTP-network fetch step 12.1.1.4: handle content codings\n\n\t\t\t// in following scenarios we ignore compression support\n\t\t\t// 1. compression support is disabled\n\t\t\t// 2. HEAD request\n\t\t\t// 3. no Content-Encoding header\n\t\t\t// 4. no content response (204)\n\t\t\t// 5. content not modified response (304)\n\t\t\tif (!request.compress || request.method === 'HEAD' || codings === null || res.statusCode === 204 || res.statusCode === 304) {\n\t\t\t\tresponse = new Response(body, response_options);\n\t\t\t\tresolve(response);\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// For Node v6+\n\t\t\t// Be less strict when decoding compressed responses, since sometimes\n\t\t\t// servers send slightly invalid responses that are still accepted\n\t\t\t// by common browsers.\n\t\t\t// Always using Z_SYNC_FLUSH is what cURL does.\n\t\t\tconst zlibOptions = {\n\t\t\t\tflush: zlib.Z_SYNC_FLUSH,\n\t\t\t\tfinishFlush: zlib.Z_SYNC_FLUSH\n\t\t\t};\n\n\t\t\t// for gzip\n\t\t\tif (codings == 'gzip' || codings == 'x-gzip') {\n\t\t\t\tbody = body.pipe(zlib.createGunzip(zlibOptions));\n\t\t\t\tresponse = new Response(body, response_options);\n\t\t\t\tresolve(response);\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// for deflate\n\t\t\tif (codings == 'deflate' || codings == 'x-deflate') {\n\t\t\t\t// handle the infamous raw deflate response from old servers\n\t\t\t\t// a hack for old IIS and Apache servers\n\t\t\t\tconst raw = res.pipe(new PassThrough$1());\n\t\t\t\traw.once('data', function (chunk) {\n\t\t\t\t\t// see http://stackoverflow.com/questions/37519828\n\t\t\t\t\tif ((chunk[0] & 0x0F) === 0x08) {\n\t\t\t\t\t\tbody = body.pipe(zlib.createInflate());\n\t\t\t\t\t} else {\n\t\t\t\t\t\tbody = body.pipe(zlib.createInflateRaw());\n\t\t\t\t\t}\n\t\t\t\t\tresponse = new Response(body, response_options);\n\t\t\t\t\tresolve(response);\n\t\t\t\t});\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// for br\n\t\t\tif (codings == 'br' && typeof zlib.createBrotliDecompress === 'function') {\n\t\t\t\tbody = body.pipe(zlib.createBrotliDecompress());\n\t\t\t\tresponse = new Response(body, response_options);\n\t\t\t\tresolve(response);\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// otherwise, use response as-is\n\t\t\tresponse = new Response(body, response_options);\n\t\t\tresolve(response);\n\t\t});\n\n\t\twriteToStream(req, request);\n\t});\n}\n/**\n * Redirect code matching\n *\n * @param Number code Status code\n * @return Boolean\n */\nfetch.isRedirect = function (code) {\n\treturn code === 301 || code === 302 || code === 303 || code === 307 || code === 308;\n};\n\n// expose Promise\nfetch.Promise = global.Promise;\n\nmodule.exports = exports = fetch;\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.default = exports;\nexports.Headers = Headers;\nexports.Request = Request;\nexports.Response = Response;\nexports.FetchError = FetchError;\n","var wrappy = require('wrappy')\nmodule.exports = wrappy(once)\nmodule.exports.strict = wrappy(onceStrict)\n\nonce.proto = once(function () {\n Object.defineProperty(Function.prototype, 'once', {\n value: function () {\n return once(this)\n },\n configurable: true\n })\n\n Object.defineProperty(Function.prototype, 'onceStrict', {\n value: function () {\n return onceStrict(this)\n },\n configurable: true\n })\n})\n\nfunction once (fn) {\n var f = function () {\n if (f.called) return f.value\n f.called = true\n return f.value = fn.apply(this, arguments)\n }\n f.called = false\n return f\n}\n\nfunction onceStrict (fn) {\n var f = function () {\n if (f.called)\n throw new Error(f.onceError)\n f.called = true\n return f.value = fn.apply(this, arguments)\n }\n var name = fn.name || 'Function wrapped with `once`'\n f.onceError = name + \" shouldn't be called more than once\"\n f.called = false\n return f\n}\n","module.exports = require('./lib/tunnel');\n","'use strict';\n\nvar net = require('net');\nvar tls = require('tls');\nvar http = require('http');\nvar https = require('https');\nvar events = require('events');\nvar assert = require('assert');\nvar util = require('util');\n\n\nexports.httpOverHttp = httpOverHttp;\nexports.httpsOverHttp = httpsOverHttp;\nexports.httpOverHttps = httpOverHttps;\nexports.httpsOverHttps = httpsOverHttps;\n\n\nfunction httpOverHttp(options) {\n var agent = new TunnelingAgent(options);\n agent.request = http.request;\n return agent;\n}\n\nfunction httpsOverHttp(options) {\n var agent = new TunnelingAgent(options);\n agent.request = http.request;\n agent.createSocket = createSecureSocket;\n agent.defaultPort = 443;\n return agent;\n}\n\nfunction httpOverHttps(options) {\n var agent = new TunnelingAgent(options);\n agent.request = https.request;\n return agent;\n}\n\nfunction httpsOverHttps(options) {\n var agent = new TunnelingAgent(options);\n agent.request = https.request;\n agent.createSocket = createSecureSocket;\n agent.defaultPort = 443;\n return agent;\n}\n\n\nfunction TunnelingAgent(options) {\n var self = this;\n self.options = options || {};\n self.proxyOptions = self.options.proxy || {};\n self.maxSockets = self.options.maxSockets || http.Agent.defaultMaxSockets;\n self.requests = [];\n self.sockets = [];\n\n self.on('free', function onFree(socket, host, port, localAddress) {\n var options = toOptions(host, port, localAddress);\n for (var i = 0, len = self.requests.length; i < len; ++i) {\n var pending = self.requests[i];\n if (pending.host === options.host && pending.port === options.port) {\n // Detect the request to connect same origin server,\n // reuse the connection.\n self.requests.splice(i, 1);\n pending.request.onSocket(socket);\n return;\n }\n }\n socket.destroy();\n self.removeSocket(socket);\n });\n}\nutil.inherits(TunnelingAgent, events.EventEmitter);\n\nTunnelingAgent.prototype.addRequest = function addRequest(req, host, port, localAddress) {\n var self = this;\n var options = mergeOptions({request: req}, self.options, toOptions(host, port, localAddress));\n\n if (self.sockets.length >= this.maxSockets) {\n // We are over limit so we'll add it to the queue.\n self.requests.push(options);\n return;\n }\n\n // If we are under maxSockets create a new one.\n self.createSocket(options, function(socket) {\n socket.on('free', onFree);\n socket.on('close', onCloseOrRemove);\n socket.on('agentRemove', onCloseOrRemove);\n req.onSocket(socket);\n\n function onFree() {\n self.emit('free', socket, options);\n }\n\n function onCloseOrRemove(err) {\n self.removeSocket(socket);\n socket.removeListener('free', onFree);\n socket.removeListener('close', onCloseOrRemove);\n socket.removeListener('agentRemove', onCloseOrRemove);\n }\n });\n};\n\nTunnelingAgent.prototype.createSocket = function createSocket(options, cb) {\n var self = this;\n var placeholder = {};\n self.sockets.push(placeholder);\n\n var connectOptions = mergeOptions({}, self.proxyOptions, {\n method: 'CONNECT',\n path: options.host + ':' + options.port,\n agent: false,\n headers: {\n host: options.host + ':' + options.port\n }\n });\n if (options.localAddress) {\n connectOptions.localAddress = options.localAddress;\n }\n if (connectOptions.proxyAuth) {\n connectOptions.headers = connectOptions.headers || {};\n connectOptions.headers['Proxy-Authorization'] = 'Basic ' +\n new Buffer(connectOptions.proxyAuth).toString('base64');\n }\n\n debug('making CONNECT request');\n var connectReq = self.request(connectOptions);\n connectReq.useChunkedEncodingByDefault = false; // for v0.6\n connectReq.once('response', onResponse); // for v0.6\n connectReq.once('upgrade', onUpgrade); // for v0.6\n connectReq.once('connect', onConnect); // for v0.7 or later\n connectReq.once('error', onError);\n connectReq.end();\n\n function onResponse(res) {\n // Very hacky. This is necessary to avoid http-parser leaks.\n res.upgrade = true;\n }\n\n function onUpgrade(res, socket, head) {\n // Hacky.\n process.nextTick(function() {\n onConnect(res, socket, head);\n });\n }\n\n function onConnect(res, socket, head) {\n connectReq.removeAllListeners();\n socket.removeAllListeners();\n\n if (res.statusCode !== 200) {\n debug('tunneling socket could not be established, statusCode=%d',\n res.statusCode);\n socket.destroy();\n var error = new Error('tunneling socket could not be established, ' +\n 'statusCode=' + res.statusCode);\n error.code = 'ECONNRESET';\n options.request.emit('error', error);\n self.removeSocket(placeholder);\n return;\n }\n if (head.length > 0) {\n debug('got illegal response body from proxy');\n socket.destroy();\n var error = new Error('got illegal response body from proxy');\n error.code = 'ECONNRESET';\n options.request.emit('error', error);\n self.removeSocket(placeholder);\n return;\n }\n debug('tunneling connection has established');\n self.sockets[self.sockets.indexOf(placeholder)] = socket;\n return cb(socket);\n }\n\n function onError(cause) {\n connectReq.removeAllListeners();\n\n debug('tunneling socket could not be established, cause=%s\\n',\n cause.message, cause.stack);\n var error = new Error('tunneling socket could not be established, ' +\n 'cause=' + cause.message);\n error.code = 'ECONNRESET';\n options.request.emit('error', error);\n self.removeSocket(placeholder);\n }\n};\n\nTunnelingAgent.prototype.removeSocket = function removeSocket(socket) {\n var pos = this.sockets.indexOf(socket)\n if (pos === -1) {\n return;\n }\n this.sockets.splice(pos, 1);\n\n var pending = this.requests.shift();\n if (pending) {\n // If we have pending requests and a socket gets closed a new one\n // needs to be created to take over in the pool for the one that closed.\n this.createSocket(pending, function(socket) {\n pending.request.onSocket(socket);\n });\n }\n};\n\nfunction createSecureSocket(options, cb) {\n var self = this;\n TunnelingAgent.prototype.createSocket.call(self, options, function(socket) {\n var hostHeader = options.request.getHeader('host');\n var tlsOptions = mergeOptions({}, self.options, {\n socket: socket,\n servername: hostHeader ? hostHeader.replace(/:.*$/, '') : options.host\n });\n\n // 0 is dummy port for v0.6\n var secureSocket = tls.connect(0, tlsOptions);\n self.sockets[self.sockets.indexOf(socket)] = secureSocket;\n cb(secureSocket);\n });\n}\n\n\nfunction toOptions(host, port, localAddress) {\n if (typeof host === 'string') { // since v0.10\n return {\n host: host,\n port: port,\n localAddress: localAddress\n };\n }\n return host; // for v0.11 or later\n}\n\nfunction mergeOptions(target) {\n for (var i = 1, len = arguments.length; i < len; ++i) {\n var overrides = arguments[i];\n if (typeof overrides === 'object') {\n var keys = Object.keys(overrides);\n for (var j = 0, keyLen = keys.length; j < keyLen; ++j) {\n var k = keys[j];\n if (overrides[k] !== undefined) {\n target[k] = overrides[k];\n }\n }\n }\n }\n return target;\n}\n\n\nvar debug;\nif (process.env.NODE_DEBUG && /\\btunnel\\b/.test(process.env.NODE_DEBUG)) {\n debug = function() {\n var args = Array.prototype.slice.call(arguments);\n if (typeof args[0] === 'string') {\n args[0] = 'TUNNEL: ' + args[0];\n } else {\n args.unshift('TUNNEL:');\n }\n console.error.apply(console, args);\n }\n} else {\n debug = function() {};\n}\nexports.debug = debug; // for test\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nfunction getUserAgent() {\n if (typeof navigator === \"object\" && \"userAgent\" in navigator) {\n return navigator.userAgent;\n }\n\n if (typeof process === \"object\" && \"version\" in process) {\n return `Node.js/${process.version.substr(1)} (${process.platform}; ${process.arch})`;\n }\n\n return \"\";\n}\n\nexports.getUserAgent = getUserAgent;\n//# sourceMappingURL=index.js.map\n","// Returns a wrapper function that returns a wrapped callback\n// The wrapper function should do some stuff, and return a\n// presumably different callback function.\n// This makes sure that own properties are retained, so that\n// decorations and such are not lost along the way.\nmodule.exports = wrappy\nfunction wrappy (fn, cb) {\n if (fn && cb) return wrappy(fn)(cb)\n\n if (typeof fn !== 'function')\n throw new TypeError('need wrapper function')\n\n Object.keys(fn).forEach(function (k) {\n wrapper[k] = fn[k]\n })\n\n return wrapper\n\n function wrapper() {\n var args = new Array(arguments.length)\n for (var i = 0; i < args.length; i++) {\n args[i] = arguments[i]\n }\n var ret = fn.apply(this, args)\n var cb = args[args.length-1]\n if (typeof ret === 'function' && ret !== cb) {\n Object.keys(cb).forEach(function (k) {\n ret[k] = cb[k]\n })\n }\n return ret\n }\n}\n",null,"module.exports = require(\"assert\");;","module.exports = require(\"events\");;","module.exports = require(\"fs\");;","module.exports = require(\"http\");;","module.exports = require(\"https\");;","module.exports = require(\"net\");;","module.exports = require(\"os\");;","module.exports = require(\"path\");;","module.exports = require(\"stream\");;","module.exports = require(\"tls\");;","module.exports = require(\"url\");;","module.exports = require(\"util\");;","module.exports = require(\"zlib\");;","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tif(__webpack_module_cache__[moduleId]) {\n\t\treturn __webpack_module_cache__[moduleId].exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\tvar threw = true;\n\ttry {\n\t\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\t\tthrew = false;\n\t} finally {\n\t\tif(threw) delete __webpack_module_cache__[moduleId];\n\t}\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","__webpack_require__.nmd = (module) => {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","\n__webpack_require__.ab = __dirname + \"/\";","// module exports must be returned from runtime so entry inlining is disabled\n// startup\n// Load entry module and return exports\nreturn __webpack_require__(3109);\n"],"mappings":";;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;;ACpFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;;ACpEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;;ACzQA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;;ACpLA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;;AC/EA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;;AC9OA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;;AC7BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;;ACnBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;;AClDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;;ACpCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;;AC3CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;;ACtDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;;ACxhBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;;AC1DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;;AClDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;;AC9HA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;;ACvYA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;;ACvCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;;AC7GA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;;ACnIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;;ACnoCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;;ACxDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;;ACrJA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;ACvCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;AC1DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;AC/CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;AC7BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;;AClBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;;ACrBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;;AC7QA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;;ACjJA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;;AC3CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;;AChEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;;ACnEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;;AC5GA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;;ACjZA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;;AClBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;;ACtVA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;;AC1VA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;AClnDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;AC3CA;AACA;AACA;A;;;;;;ACFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;;ACzQA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;ACnBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A;;;;;AClCA;AACA;AACA;A;;;;;;ACFA;AACA;A;;;;;;ACDA;AACA;A;;;;;;ACDA;AACA;A;;;;;;ACDA;AACA;A;;;;;;ACDA;AACA;A;;;;;;ACDA;AACA;A;;;;;;ACDA;AACA;A;;;;;;ACDA;AACA;A;;;;;;ACDA;AACA;A;;;;;;ACDA;AACA;A;;;;;;ACDA;AACA;A;;;;;;ACDA;AACA;A;;;;;;ACDA;AACA;A;;;;ACDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;AC/BA;AACA;AACA;AACA;AACA;;;;ACJA;AACA;ACDA;AACA;AACA;AACA;;A","sourceRoot":""} \ No newline at end of file diff --git a/docs/trx-check-failing.png b/docs/trx-check-failing.png index bcca6e352fb92068640b2ba2d8445e4bbbfebb1c..5791fcbce98aff2d1076381348a40a9e6c108f01 100755 GIT binary patch literal 149695 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

QvxLFqBps{e%lc1jafzcW0m$|;& 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

)T=!Pw6T45fJ-S^}GWgVz&i# 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

>^yGizu9+0bZ_Got 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%0DLWJSFjV0YLJ?x5wjES;Hlp@b|hYoujDqL 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 Ue({~aFjrhSXZut6S?}Bb2?%x(Pyhe` literal 149577 zcmdqJX;f2b(>7{9c1yPtiV6xyY&9Z-K|uipl6F9pFsR5JKtU#%!%QI2rU3yVEeHV_ z(u#nJfXoB}QKlHC2#AP4A_NF?NC+g5>1?!H`+a_%bG{$%m$h6jc3|(i>#n-0>bk3T z{1r2!ZJXscZ`iP5+vQ6au5H-xGhxGqO~pTN0yN^^U9 z3|LBG5c%gZ7sWy375(ky4}UYcr+#n?_>z*;_z$*CcmBAw_s?U$jP8^b&n-=(b2G&p zeNhlEsL1{4K+%kYau9EcyHrIkg!)D0I-vwOX7s(zyNak2FU6lLMn^8EztrCgEm!RV zU3W?(FuatTvcfxz!7i8wN=4Ezy(nRd`eiJ=-Wm$Zjhsd-ls9yn*I> z>sn<9uPS$-6`rZa29L8!OifR*i5( zUT#R6bIG47SDAz6G_D)Xh7Ccc6vGP_F5G%en1Vy5x2l2!lR>Td8em+Xc?=B8ib7h1 zO(_f^ms+Wjn#0wc)KLY-wB}WkF(lsc<;E{}cynFwX-Puvziw0g{79< z#&P5fNrf*<$j(GXg&>?}E>-*4^Sj?@ zQ3}hEUHCs>#95j@3-^K*#jfDR!ia|&bFCMD_#!~vI z3Z64Y-|I~qW$jkiOA|D^loo)BEw5anB&cD;x72eVhOv7V$pQQE7}e|qiNiIdO1l9@ zVmA?3=tu)Kit>|2v67%$GY!V06JGUAA1@>tDSv(3{;Pj)z@#r_-OD#@_}ui*rH6xr+QM$kD>T*L@U#rS;E4i@zoNzefzFvnoNTIf%C?q;D-X%ic;( zCRq*YtUJKpp9hW?{#Hx8B+t79#mot9qTq8jlO4lP3FnxF%^K(cNVd7-SLd19^S74W zOK^xI%G4NZGn4D>$4G1arM=c)wHg8c`+k`nV4RKr>9zKv(K&n4C8w`nPf35fLpoyY zP{P<&$mXwm{5s~Zf9$Y7r2~-Rh5nPDzwFEBb65T`8E47_juHYwP4q7oIf+!Gz8cV9 zq<>t9V1qmzyk=Ta`{fTe$UXeq2(;wjkoEPG_^kvk>Fbwk=Kn~V2*$aPowhLP;mRV7 zFJImf|6>c2&J=I0&(uCps z;gwTq;|;LX`=VALij*BsNtG^^m&OnB&xLWwFsehyjZ6zLE_Jl0{t?!vGbN3}9uZ#C z6}AzwC+xDbq+tqB4(0r4PoeoFMET&s-q~+3$(G;a5WGbs(<>b1U*VP9ePHQCXVD^K|m-Q zQM4BrrwbRJlD~OxC?y@i*$jzu42SS4v@Um~z|#W@Q>pu3$~ssnZHGl@F}370<=~Y3 z6s?@bmJ`FyN6^(H-?**ufhAKVr>l^WNyOUhgavw|ZxN2gI0x4W=O^srOV%J1o(?_ zo4-h&uvx(Zt9fRx(#PQP$)(H5pe@qZHy=p?V_%LVk4GL2 zmzYat`u#bGE`gt^iGh+Qf2s66_4>8z$miitdyTY}yfS{8MCgVu#w-@5aXJArzdL=d zBMY@XX0*2P_kCB*ppH2w^6SYb(;gz6RSJ=j+ha>%7BINUC?R}l`IX;Nm}^#?WUh4) zIUleKFsJk1%&BWIrQ_okbMrk`(3&XI1^4o;FFwokB?8+bL&&>%B;`3T)DnJhSu5=p z80X$B(9wQqQ=Sc#)qbi))?dBYHTx47=dBkD6CrhNmm++|4xv?J(#;!BiZZRV-U~U* z(RlMVUV^)`XU^{_9rk{)I6V4S?@R7EtM8l?{myI}B*bemB5zqfdbH1Tfj%y(trE16b2EE4w`on{55#Gs7uh)UbJ?%q1)1=W2Kp>Nw{u)(dKn3%u#= z5-d>qXs^|A*_YzFR(4(*>Hs@r?10>IY~7voZEUNj9~kb^h%s+vy*Sny^l&a?5AzVO zAzM!Y9^(5*OG!z{#Gi_C1h&)Z`*t!x*6&|TX-@qPH*p8!2AcCgSUd)zAE1w#?_XRV z^4hZZ*fncoiZLX-qR@m{I7C+KD4{tn?R`3&0*`LOneXOm`>?Hv7Ti@$dK z-amK#|56CqmK;QBxIYSD#plnK00q`aOwaiE|O3(DSKP!9rAnoE8Qx`peVXnJEV2R;Ax3T=i=e0EM149kJ#EQ2kBSXp4 zMielmrDIepO>~c3+A2-}tna|Lj1KZB1#aTfAq#E&SWM9f&M($0< zuL{*p53N~!*j_HY!C3vm!(tEIgRnllEdBO-QwSA!)5 zd_>m4nJ}>tPYU@A$TW7am9RKz?zBZvZ2*E^%RDhYxcH!pyaZP-#Kvr!b{BI?9k(e{ zPZ444+hN>BxtT=OQ()YvG-#`|{%XY|UWy`2R>{UTN}`385XB9ElMXQ*w>g>PR^PU{ z0EJRN5jRJrL~Hy3OBz}oWj5{lDJE5ir}*OG4Q>6f!;yzqF|cKu=Fre=bQ&Usn5o#@ zK6i$~9zq?FXaOj0aPJ$6Czg!MELG^Z+htEVlpkzONt0?evdSkg290|TH9At_q+_>X zO~)bliLOFv^R%0^27OzyvUH3T)IbTEl5R#5jWz>N10)VP)EF>DvcG230Y8)E#r=bm`5l$qR1 zPJySSVy)c^!g=k0vm{L%1QK&4!+#RaHOJGdx6{sxn4FBVyOT=G~ZP3E=PWjS#Jze*L z@7r$-k@L9?hlI1FRr|m=DLh221*ks|^53wka2(m=mJZZ@kzoBDAj_b7vIO{rTmSR> zkaUC@bOqrmi_@z%9dFb)co3;_@tipf4dA=kYCQ zs1Oj9na9?%ym)iaR*-G*aiR{iU@BUwIocdgSx`zXbXJP=W2OjFJd7M$0?s{SWzP z)^q3A-v3mYz$2pzzG7_WPv5FIxci5w$qGU=yCM0FD06la;lTD2JJ_rVI-1sC5^r7q z&r+lFHFUFqi!c>Jr&$i|yo41lf%E5iLY)7|az~RgY2;_C#m{!MgUzg2+Uk*$pTF1N1&&HS!fMAi0q3H*sA$-;Tem{?vP{$9Y||R zN6Tz!oB&$?7|CK57pf~jC9OfGeGvpu@wIAf+2Q4!{TO={?!+;tbRGnS;jdCLxh2~+ zY`8oG!uYALjy)F3XV26b`mdj6^x+<3LdM#)LVl4=B$cJ-fg+J|xn z5y*J0=$1_D2ynOjiOMitUVS7V*QgOn2nn3;oo%M1!r%iyMfw`? z^c!&yti~ zTy~Z7puo3Xl>2G-2+L5bG^iqp&9-IN5Ca_M6>EGQRKYkWp|fUW#0Z`V8SvyRkkDeK z{v&=M1|wBT5~p03n^~a!CH@BD|79X)x0iRG3b?`ZQ(864_um0J_F#S}M*cHJ&pJSF z%tR)@Exm24q&wv}Ye4SgF^eqwbh?rm9-4~Y*l-P4S9jFn+#65~7Cnc3vdo9Pt?!B>ay7>bqd{Do@tVFiqK8`Xwh>FIAxU}K4S?z+MGABiTt+6}=J6-e z4~8mr?hJYg>cenWeWyE&w^|LqQ1)!`bwQWu>=aWS(vyD$8PEJ2sL=Rly@`vgsO{Z* z`Uu@lm^(}zAHj&k2JI;|SoWGn;b$4xF4n4*B3jXBQZeHR|_zF#!PIgW|K*V61rp+Q!L2M@P$JH z9Fhzl>I#grV_c7nG5#2HiMc(H#dA1OyfA3v){)f(?rxWHclR_>S7`muImVe!r`_a? zVI^$z%ZeW9Hnfe+f8t3$9Kuu|(U%Ax51+fH4r*YxQ5Jc0QQYEP=@C1EcKZU!Dng|5 zD{Ui-G#yQty&uoJtd49wXqOx2(<;0;*i|*!T!VhPP?ZtVsK!Fqi(@5Lnc+`Xs%*3~rlTJ6 z!v2B@r(O)Z&}QnLZ6{0WVLg>5CiPm~<07k;sQW*~3_bx3guy=8s+GQd2+kFhfy7>G z6eQaY7Bod3wa>$(Hue%6C8kFsOl*iDV^sqSCg-jS=}>#p>f-$lmvtCS|8C=;O*Cc* z1*|InF(JAGCYmmqE}V)Xp5I`$Lo4O6>Z7? zy4u;P9+#UQZ2!K{mdv=^NTm7N^DTuq%&xJ{>mZWX;m|1dnOsT(K&8DN&i@8N+_<|u zf)g^{Fx|!@lXAwxoc0&WM30w~|A#Q#bfll|KfW;8z2s{U<1Fkxj9nNKv!pHT3OI=m!-4orm z#>Zrqli!MfP+;2nh)=KZl*K*!d#}3Rr|>dL!a&5;Ng$>|vK_^yy1{Efd_Ns+*o!H; z<0`264JfG)4=}QyuPu48fa8+0Kq7WwlN=Z)KE4R$0bb${@q1N=i;liNv8|3=8Az%f zSStiYGXmV=h(EA1Y$iSOK|{O#y^OKtkGiPKCVCY~uTLv%Q9@vwp9N?DWh(omD zQ6-*j85!kE*AB~Gl1~Je&1t0yM6d6H#vNhBZnr3Uv929k|8_I0o>gzA-CP_X^*xC_ zn5K|4J2Sxsn9myv-wEoqJkUlKi@0Rwx&tY~W2!Z$Gyz~VDdyG4k_tH*!xB#_4w{fG5IQy|4x4bp!)SEWvw^gmV&3R0MppirHzA)T4Hj69JnZ z>h5Zf`OqN|?Md`xV|XV^)EvzNHYotk3Nif`AaRj@f@NhIfzZA<#9GxL%zAfXYG-uR zB%H=)Z~tT#*U&aQMSg|{Z(MWrR5WS$XbdqFXaNCV(I7%yblq!LDM@L;Hqg((_Sw;Z zKmA+Vv1!oq{GJXC(6*YWap^#*eTg!qRQ>R1`icKim7zdJib^`QrjsU6_9GCvYmah# z)=udvQP0wr?Lz#PT~K4?0sE6?lj!}%MJe#BI~k17r0d4l=MyHXbeAsApD9OP>|ynp z7()Vb!ejpQ-Na=aN|pzirlq;Mt?}3b6#n+7whWsW@e_~i*ofg^p7JB8o`QQo{8~T~ zZx-4u99PzeEy4r_0PY{S+ugVBUBoJhbVOOXnY?phnJ9mf;+7e!70M5M_OXTc#6(Pg}&|sNG`DOq5goRjm`60 zkCJ8joUrKn;{TYsJVeawhXouYN(!VW(T$c7QC;2IB6&p&BPsRfG;8EtSADO+SyJ$o{>}JxGZs1R6QXB4q<1s?z54{VdFPCx{m!8rCc#~ z@p;Iym8I>s(~X-C|m=KSK&Ind`fSK>*cRcb7DU*Pnu0usngCw zdz*g^ZtQwH6*a={J>j2LMQ>Y-oKHdUX{HHiKX*H1JV%UfEjO*NFlhjw?n|WeUH$aC zxrP`znRd_lc84zej9`ulrE@a}&m_X%W4(w@yntd7id)u1GGbqiW3w!?Et%)0T9+-= z9BT|?`fI5`Y%kFCTK5Lr_HTz-`7pOLZ)K#I&S$}X`vYDdh1wn6PHZ_#u}%g_OZy3| z_(>A(kSX40x%SQzvTjRDumOM-mI<aSNjUX3Pj+e*7H6wK9XR!MOTU^0SxYGNr|BM%!9jI7aGsAI6hn zlCb(Oa-JV{3>5*1B^^hkzv5@nl8LsjZiB$@6J^fz%>7#BnoShlwQ#L#ExqR>iH3R6FnMXoO1tDEcXd4_ZpzeZjeZqyTMW7{IzG%B+;&XLB5~7Q zjq4}=%DUU2t1B5-_a*yFqxGeu zeBdMQ6;zzTnO~ues*YLoL3Yiw+A?Po$>q#G#ZJA226e*8N0f$@K76A*4M@LCJK6+C zY37Dwe=!p^8h0+JzSc1?iYpT)^wZob!%7Z zsadJ_wDrDSFE$~A_6>E7w_9iHo`oT@`25%Ar6dhSy%poS!+>t(4*grVnr~&?H^*zm zo`fh!3?qt+K3)h&Pi*^PNcZOqp2h&f8&ri)jL*l}pr>O7ZIJQggJLfZ-GL)8T`g{9 zd9FpK+xSy9nc1tHVYydm!UTPjB0& z?EERGY|ME8`vcFU=d_8`!@|L@uZ4+a6F891ts^WplguFbiLT*4b)F%D5JUThAr{y5 zr*8QlXVp?aq`);+c+MZbEU(Njct7vov8*R*ZzoW!iczNe(}?0aiXNN|WD$vxoW z3oFh_O+cn&`VQw`i_3y`V04z;Ml$9rYA=Xt+m=2IdY&1K)jbavc89bdI6;!ocrlo$ z$-!Py+5F7Ja{tlphq55TLxZ(ab&)Cu*zV&t|BCZLdT+0tgc~tPfB1n}Ck{yF+oWSH z3e5}g&r~B2mmY`V)drhvQoJx6Kh zKt`CpyFeXs6)4My!6A>#YJPPrDyx;*q8>i$Wugyr;*V|gku><^p0(Sr9`B@gZw(T@x2LQ8tW@%i(c!qZbp?5syzw1Q#4=pVZYDf89G7{%}JH(GrvC3 zr6{8Xq?dpAd5ennNo#jaq;$0FiJx&kJ~PwjRvj~)oxXMB)iWYzkQxOQwNw({Ff(*# zJH;Z{Goja#@9sU)U$LR0YW&*u-|lV11;EA_S0JvUz5dil49miFHaVX6+toM!0|!1G z1K@L>Xe7NS?J7qpV0T9#n|-zla)AP7^_*wZj@H$zU*+Wo$R;}Cc8saJyShg6ZSn~I zFdjpmYVTe+9ilKsz-r-zZJ4$B;bm<%AO(xTi@e<=g3sq3BA$f#k)1thhblNStbCi; z|1Qw;hR&ux$pnihAF!U{kK%MZ6r_|Cq^!q2_c?@Oo-71b#rMsTkzI)z4eu>Iogu(6 ziSx~Ia-6%>6~e-rs}J?{t_h#O>_O%3MGLjzFe2r1{Rh0@ca@JShX^Xr+EY*59il0 zz&4koWGFk~V@`7k0aTOk;Z{Z@(_2w0;)Z7;gnI6HSFUC%O51$U8v?K>ovtIb?|3fj z)jW+npD@soYQ8{ea8p<+)02c<#HP(GFIygQ6lgT^uhj-F;~%CMJNHby!%7#zflBGP z_4lp=QP2DVIPJ4bX$o&7;8i}`X@;5KXT-ZuQ8wPI`$|qK0B^w0Yr@2j`1a&`IH4X8 zf9TVFCJR@0-FTZVs`X=+?VR78mQX@6+a$G=Ebu-?xKP@ly^~fyCnC%~>srsUo1>jX zc69gX+IP`2#oR!DeZP?t#harqd5D;nw=8~5a^hrMNhX*+s?#CY+hx+ zknx*!%}>g=-BdSwLa z+XWivt6j(^g`N)siiPRIM}SWd7w|O90nr6!LPp=j~G2vrS$?7+I!xPaDzLA-P7ReQRQ zSO?AHrU#b$pYur%tX>Lj7OGopv14;aKxFCscLn(+vV8uOSgG}TR|kacWKAaTnkdfG zE}Kf(hMZj22;lrjyQg}(yf+vMfZx-*A>RQBz<0QX#0zAo0W{JW0OS$bna+;sV zUi2#!VuM+d9uVD9mtjpZ{#jJ(sIhJO%h7`i2v>f23TvGJLl=-03Kl`pLUjJpcKQgOqx$fkZ5*;-`W$eOXA4fZlE(qxaskHvJ=c-JxPQAVKcyq)12!sS zo(%R&&&%{?0A9XZ)YekDRtzlkM##VT-F2M63&&gim;E5Vc98BH$B(*q6Zb){9>26i z_Z8lla4KeI76H)z7iwSx?_sAsx#Yx8YT`A>kv^N9T0HjuOZ1|GO+C16!5Onc#Wu4HA4Pl8|LLYlk4aa6SkpJ)Vya7)K^Q?w`x? z2??O$O^+u5;UZQ(V;?C|ckXgZWKB>Mo+d{(Ma$cC?C#2b5Ng`$vI~2a;SLL=Ge1QL zFA7U^wG0`Yz=rj$!QAMZ+`@6FFw~GDyPTc_xb}CIjTyT3?*R@v16}@6!7qC&9K(to z4vzHc(D_t%(QA)`-u!OgIu!u^=>$$P?8VcSD(_g_LAko|l+Zbs(Wwrn)!P>AqgkW* zmq-hPgN~CPMzEEe)gT-{<2A9|wq_{ovG_>kA(~WpMON!Wk=1&hi2ARXr??|N=64_$ zKCt+gRPWNt^ZoZ)gW-r_D;JvbjcSDPP3)GqIg6e#_pa+_cD2 z_xzMzOEPD{{zL=q@^=Uqzn_48DFc3JA{rryp@RaojYsAaHkt*5{K0~XrGfe{L8;zi zyi`d%Ti}y`wMxL+sHW)DuB@ZS=x1zOpE;LmBDIp>_FH_k1%@}}GF@2EdiIs>@f_Z& z55_>A7S7D!rcOAke11$4Ml5V_(l5;^QDf~qS9WK2;-#ttr~+@a)QB{K+)-ia`PaJA zT!+G2to4&~wsxY|^GAB%32Cctu2KRy6o~1+tQP>Mik0ES?Muckh6!kp%UE^m?Bo8^ zU1+(bh53vSP}F-LO1|Y);8zO97C~Lj7uxIq6IZ4MCEo_N@|aEr=hlRE zwVhipUf=il-6j?!h<$~F2KX61rtm@ov9VmBK1osL1yvfbuVO(W8_`x%+fAaQ=Ki*2j2uNF_$qS)Is zBTTf+OX{sBJC5Ei7;1 z%2;U2>=~sY;)HYirgscZct=$rspa>}`i)5)ZGk~^AJwJ{Iiij}fg0~J(W!ltTjD15 zI9chqJR@vAzOFVXP`Y(iOEy&Om*Y0rK?#lodfqPa-AGPgRf0RH@FiRB8qG0!=!GhK-*pwYHc6 zrBBsE1jpfC3VgoK<@vGngADpx; z44&=0R=LobhZRLFAWsBr(BIzJx=aTcm$Wy`^0ObzxXw2;wp%p-1gCbf@)6lEd8x%Q z3|T}GM4BkR6D$^ko^RdY#ysZ6qyw9N<$d~9psS?(%`$(r7J+~|YO$A2lq$lM#G~;T z6DZG!uyL(8`TU^wHul;J1HY<@pq6FvLJGYUxEl;$6keT_HRYsZ$;#gbfQTp;fp6>z=4|u-Grpo9%VuvfX8oWnqyFDqa_a$j zhnGk9Sob3PYxP8=DNVLJGV-`sMsg|BajKG820Y#|ZKHe_do}w738cU}h1d zpRj3Q$aENIg;h$}m>3X?C%SfUs*cfr#yeu1`et33)gFIV<_Pk=-LP%%ODd*NLtU*< zn?Y;}oai^UtkdUwMHr>7N)Jx8fhM*#hI9dIj{?qyz3sG*$aXsSyfo?gi~=|b_Ej_X z1GA(Katrx*RiGov_T01l@f1G*Ma=r94|U2fbJkSrsCB05zqh6+0c#5!GQ5ghrK+_x zFMzVQIi$LS%{LB4DZ+N9?Y~0@_h>jyy_!P z*?fF)T?SN>qO(^H+hvjnDf{gK?`=xvL&O+KlfGs>WGwZBaRZ~srP>=^T_@$*%iiiO zeAUm0AU`$J;P!wmw_*NpcS}GSwBTr8#~U_ZVTXIa3hIyR%Hrir_aR8n9PyfHGURQYWY8}J!%ZW@I=!RX>`3Ij!!T_Kv`OHhm9ecuYqBpd!5Ng30xx$ zDO<3~fT`OFR%1fTDjRF!v*s-&19CmryW%6R+;Cq*gyy4Jm%sg zb}CixAt0&6CFAh$hlqq_7f?h1$emJeHs*&>A8#Wog>Xm~hd77qeLbcIJTqEm<<=f6^lT>}O&YyPv?4hOSd(6^GVM5POywA0Kc0*m)K7 z^5;af%QN4GfCH;_v$&Y`EWDi&{As`UeJ#Irn%+7+u|ua@eiw;3DNU1a?j@3mQlMcd^U;I zN^PNrXoc;?g|ANJr7c<2&$A^-8$+c<69Z}kuEj)#qxPL#ohhZhX_3qp=>QBJvlKV8 z=`bUBe3hQtn;T=j{nG3; z<$?j3W%E75fSHxvs%2{cNID@H_G?@q)rF`u<`S}?L{JurLM4yq>2D8e0bEBtURYR1 zZ>o)AJNl3h0BFLxDC~OS0EMETI~YS+*UF@GXyoE+AvrBxtjuxfeGGMsjt?`{Nk2bE z7xGcU7!Bx^(@d@KlUH-m4o+;HBi*knm;6A*!nRg=-4n^NbkU{|K@BjWbZ2n>3D7Qe zQq~&iAD%}q{B8(r_i9sM|C@L%>NcS3UXy4u_#c45eF8*6+_i5_cMd1PxQz1ubi4#8 zUBKUt8AB%4ll@F!X6ozs%+b)RK#i1;pk7h_Stf71x8^9}p%IWQ-U_+!PoLqip*1qz zQ@v6+&zr?tN50tt0m0-OS37U%S}aZR1Kp1_)5zG^d_yp&|h;peRj`V&g_lR&oXfpi*1_m%|a=nisM6-cW~{!_QQP9zMW#!UE=xFu4>^iq7FJJ3{jd0A_) zti9jAvE0Qn(C3dDY8(R=VKAHfn_@~{ji(Ho(+wU#P)7(#UZrX~ADou|)=?=3oIwKZ&?y9< z1z3Z)bGxhSpDlz6(pGYz@eicU8o7MeiRH$J2(-T@aW8y(+3*fh;ETmSBU!1iUqJ9i z20}>9=1CjSu3USjLWtDK`E_DA(U(32`UHjD?{}*gY*8oU%{qQf zS~a%&Bb+HWnibBHyTxsFiU~};d^CDP?kpdvsL6@Pgm1lz_u4d zVW(U=b*O(Zrg^RfjTjE%qo6A&%IOl-oV!xmlsQ0+(Hhi@VK(T)Ny~0wc_DOa_7*br zu*7eoYR%TQpd_sj=of5TvQo*)_JWq4>bNz{{b(suinW+Fl1b|5m$l=-AsRCVyVb8J8Q%=ww1*`7ONzx5F8wLEHx&b>_$<({|;V)oPmp>3?F5)8^ z#Qd5pjqJ_jqM~hnLS0*BLO?}xZTpKx58Ms9`DohI$L|+VaGt4yj$-y|D&a5 z6zmTRcLg_8e8uLRZKzOFOe0|&=`oY7T6^zptL!%mazjqLSL2JfubAgz+FCdBQ##Q| zwn1ja%1!7&BZc(UjdN1DA0?{#^?BhawV3;~pVfUPp{-UF3Ys%*&&OTJbIFQK~szPo=>)AUDmIik=Q z!fXm%+PvAkU`S!h)+82~Aes(>nP=jlGG+a{Fjt!CireVKJoFRHx` z8FG4HFm%6!`8(O-)YIy5O_9gb@w)5&J0Bz-|2|Vt2TZWO0jpK+ZlIBbw`O|OtFTj^ z##b}*rNB6b`2_BV+Z`LbSaL6Gyk%3%c@?7PYJ|gs54uD87Q>#tJltb*@2w-XuNHO; z4#5^yBvjsvSUo?QrBQ$lG|oQFcKgUK##d&X$hV|S48A%!7+ZNRMX`qRN#06e*>o@UX?u3c~7@aS5fm-SFVSK#lJ*zes`G zKA32db@&viXbOTuR>A4ER>;-QMW-j?ycHg~A6{)qb#G2AHJO}54b8%a%EwcDsCuN$ z%p>+pzBG0~9i=g1bJ!)Ib%Mb3VM!^QkV>N+Aj_CfZ(W?*oK2 zaGYMY7+q=OeWH*tGL4JlS*LzVa{`l>T4SkI_H(+seI*|NCAM(YPcc&%+_GV6^(8sM zdrL}wk&BM#Xg(`SnY}#i{zOfXaG>Z$KgQ1=3mQ;*J)iSV|r5WWjzM|ac^9yM+8RJhx z+YbQ9j)^>S{{!)Z10_GvMb07+mW`UfUR&x*XK1=N(;WIrCwzv;N_u*hLE#Le1js=o z`(IhpRb*z@>c?HA4EcxB>&c8>AVd+CDkQNVob)q~-4DA2|MB$1pZR(PQd~y4yO~%s zJM*QiOSe96NvLU@0t_C9^T_m{<5aQJ@pWopCnqWf59P@C;idhu^+DYY2!Ti=c7N&n z-AOdFWcF<8Xi~-WYP{p~)yQgTw!T@eG}-(xGq2j4TRcf#ybfx(9=y=0ks7QlusU5b zsIEborJU|+)aetMfa99v(EN_dsT2?5q`X_!boF>Iy9{2zwXgcA7|3-3A`MP!OnX%g zU9I%7$bYg}G~STe-2`m1-nUH#=GFdlYgz}bw7vCrLv6mKdv&ob5mwrL>p|Mjo7;Z{ zq2^4&*d{)ipCiNA&vnlmo!tkfWUCV*7q9G%BCI`F{6uY@C*Y^`13qLiroB~rGUXio z_??ga=_NX|*nqL&L8sXBu&`qEN=_W@XMxl6W7UV9!za_UMzfrJA+^^z?7W-Y)<=Po z^#ESl!gKs3kJ>M1|H80<@~Xzu?O}HyLkFXjn>6uY4z-KfZ4xUo|3F>njRF$0Xcz0O zQ{?7QOk~NlZX2?4P%;0N{WHp3teTxAw2V*@s}gIOt=Uvy_7Wldmd69{ z9@yBo7>+{TvifKdN@-h%gj zYsCRrI^gra=M@S(uYfz}z9=h;;P!o5U-W5+qz_uZe#`&gn*TpJ`t-j{bN>t9fx+!- znJQkNE!zXJ*GX^e-Qsf72f>_}ZNAG*yQ>G=x#El187td1A7NcPmWPdt=N2#QW-;yt z_p@y3VNpL!4NtRQ`HaWD@<$W#vVX)#b2&N*=xHkb;g)7U9bo$qir@KANcP@sI@X(i zKBg%p^?7YH=b~|JpEgIb8wAZ?Fx42;_`TRQT^>Y4BV)XY3g_xJ)nwYCq@BYMfZ8FJQ z*mPLAxu@`A^C$a-twZKdHTp9hz&Hym&32F+eyBe67z=n2$7J0g%0Myl#xtb!u@U6q zs2IYN0Wgl@B50}(u8B>-Q}IAByGuAAh$5(X_W?i+yxE5GA#}+@B6%d32j0W;KLiIxN2?vK zfpNLp5vqjWFb_qI$Fsi7n5<9vt;5y&kYUhSO1_UVWaJw1uJ{Tvv*Qclap&y!W81oS zz>Kr7Ea$eTNAy_XkDSPu7jFOaxwWuN}EyUL1zwR&WEB4q&6ueQ{$sBiqiY`u6#cmiCb!NsVicqYaLTjAuj43ZvT#qvMeX(h+Y3 zeB-{Np_Gx*X+hkPzEH1zC%M$P+v$nCk+)M^16r6yAxnh{asPQD86feqK9x$4y{}AUR*n+l~7eh?+t5k*& zgf_W91fTe;UT1*rkxPAkb~Hbl#ZN;Iq)vZ2=W!)Ak_^+njJbKz{ z$g6~%e6pl8m89b13lH&`EVwyRm^`=L{-S*H$Z}|G*H0MtPiy`gQvPQ!dsFqxEAY@IKf9hcA?^sTa>bbN7LGudCNfP`nQ2E){F425Xz9Zir2Zd;VDP| z?6>h3NiEQtc19OLvCuBWWW7O2PdcU8pi)(5J!I+}be-U&WK?u-dy}Rcv)I+ zJ8U1H8lOWi6uOHYbbnnwMc0iIuOY5XFUg{?klsU6)Tn;kbf_%~{h*yIb z2a0lmr$!Xzn>2a>4e=X%o=2~ttxR}RhMg1j@fVgH#+iI6oFQEm4pvL;vag`~?X>hL zy4lil+cYyiM3u2?FmboP;YvIu`T`Z6ol#WdYGYRr&s2Uo(e4lQ7ZnnXwm6nc6tHhi(lZSLGIwxZ2TZ`;nNW`fz8Ts)Xe zV2{kLtVj;PcIAP@8GOki<}iA-B-Ct|VII~WBTR{hBFC9E+U+0pkxw>qC`pS(W6PTA z+)H&L5>o?|477)!hf17_>xy#r6A#rARSgE!3prD3R2(}oBJ_=>{2C_pb^&@tltUNE z#%J%v7||@bTqkYubg|2Ul@?_S_)XTy1R5zl9v-vS!_#Mg*8O}Xb*K|wiO!{hCIF1Ql-Y%(fM8~&ogddX0 z-v7Sn$8rYOZC>o_M^Qln|{(IZkfE!PUHPBb7P(H{jXCT@=DG`ZJ0f`2*s+d zs7(VeER}!EuI%F0cm$(Iq=S2`qbmOr|F{hFp*^kTk^BwVX9g zw=`*pfy8cYIg_X6_!weps)8E<3Qo5QC<#<2Wb+~i;kVua#RL=2#O=Bgkr%eg{N{9( zlOlX!Nb9zkx%%ngGuBnbON_OF^z}ixk)7#a9Xw%qH?Plpr%TVFqjN|35(&7#pnK7= zIoQ})$^_L34Nqn7oc7X9Aj{bexm$|JZx~x@jC@m8x$JK{Craq$prdy=hZ@G)Dg=tU!sKhb(V5gQ2ne!;;|4Sr*KA5_pGrDpKYjx zWw{bEAj&%cekPCW(7fIeDGfB|a4ZdL!ca@l zyoHh6y}wqGp?)a?>Xl7<>AV#)>l85Gt6o4Mwe4DN)ZJ#hs|emAUJtO3!lWFlGjE-7 zU!ufBg%_1?B7(#k(qV3OItE>xgWr1yp^NVEzH1e=!xisCu8SL(^CvFuRSOd1sbX|u_ zCbEf2iq+N%C4o={Nr<(l9F6xGg<>1?&VOyfP|)JlgR1E}p`kf328)#fB;JU4;%vn* zX8xRW_lxsVTpagZDHckBNdo)ZABa#PvSdx?m%2&+vknEwi?{thUlA;z?T)mbba8p! z@@N9=#l{ayg|}{pc;e0*bnE}xk9#zmI^}RNa{i(t0qZlvr~>tsX@j< z%)+Y+j(XYNgVp1-+Uh*2kLKx9>iwD8*KQYdExa`((QicggN#d3kVmO)MHH&)C%Cu|H<~3ACAtWM-UxptiDF=$%np8 znYpQRA>%L3n>>jsa^rfSs-mp=8z-G2Q0Xy#Vu{b{wirdS(>3POnZj=dUP`}E zf<=<@9+3f^f|{~04*SHXpPJm98C}ln>|v_#Itk%`2)fuh9HHy@Hq5)O4At=hFTv+r zgt&Oy#XI!c8B)CMLn^ak=Jk`~!1Q06_~G@tmuTfWU8SoO*uyJz=4z^LZHVga_IXB^ z!%1_`aRE*XSBv)ECn&vMO&)=Q{LFQX9kZEepiT0!;34o8EiH~BI(2V&yxpi;{4y&% z2w|*9G~xWSCaz9pp-0U9pi^|;(1!YH%xS~`~!0hOkho*4n+5Isby& zs!d!&X!)`j8qT*LVx9Y>&SV8Bl#3PHuxRduZr?pW6_r{MNjpnBrEbB}Zx{nduc`GR zkX!X3pdyTLzrlqV*2dH(*zInP-I`u<3ee}_R33vzTkYQ8trgvX9#wWQlS=$(>ob;I z;!zJ(OTVGrTDfVf)IP>Y+OfO!N}vbFSdCfl4C5JT7{VUAt~!U6hHH$sToz;E^Pw5@ zNS;~>2Ir&@bYGzm@4B7bfp;S1uRFTTTsG=rc=tAp&8O45{`+FA73@qs#x}$esq$J= zraPu2&_rdp3wkVX9?Gj2yLO9z9CqFRA+5#0k*=59}~cqN0cSSPK((d?0C7Zf?u}PMj}P>WqHp5txnUUXE}0p#-aIlN)JL1R3?c z^+UbQ%tR(aejEE|u!re$i3iWJE3cr7wD3wbAqKdZwc9s1Y6VBTBx;WqBl6(x0iI03RI`@Fp`b1_(9ZmU-z4HICssd$w zw=Zi~lsV~hycAtfwN`$e%;DMG%F7WMH^xDM-D5RE&htbIi=)FPTBkmITvBwrABMxH zE=mg&N{>)ZsW)|@ui+<3f^RncGy!0m8BF!=U~90SIqX+Q`bhP7=GoKjZ2QlToXR~y z<0<~Nj+d=^D(gHrb0F|?xVe1M5$P%YpU_TtZ|z~Z@e&zu*T;rT`rl3)%MH6*87LHm zFJ{v7^EqWHyq+=g=M^}=i0YZTN>vAITkhef_oWg!au+^~fp9sPhb9c-pTP~Pmok^H zVYHV4max|AP&735Wngp3`-|o3Zz{>7Y|C}rgB3p;MlM!a5VguZ9aPLhGVtZ{h4!h4 zeOu|8H7fkV?ebV3rPu9hbCi+LA`wFkd0um5#jJJU14)`%-%brQpb(d&J700B=HeW) zG}athhOI_GRE9UvCWMBj34Cb;os>~FK|_^jtQ6njB6KV4ID`n_xP_Cl;NIKdN{bpLs@GIHeGn(@PgK;YSC6x> zC;K0;7tqUgJ8(r5+ueCd{ZO9wA^*4n#tQfI;Ngkc-jSahs2`d=Vhew!b+aY?^@)@>uLw+lzZ?ICo>)YvAgB8YIGuWcm zOKb>Ca@0ah(Tr$OCuK2;mxoHI%xce_XRLE#7Z36E?^cIu507_gvvRW6p8fzVLS@Tb z`W}7AYn9--B7HAk))z9YsrbcOt2)pf3b71AD809qLO{n&t~4r^&b`_0p;U^|q8Frj zzodiiKlut+&J7;H@7JC;OEiuM3?g+hit74NdVYSb$t7#~^LJP43p{_Z;mr0bzq~n8 zdsX&qjAk5v7GGJTF{=IH*X3kge3LkwhoM;1$GT96Tkz~0 z!7llMZR>_mor$S*HQv!8GvMr<+#2D+7@?0%DmG|Bi#v61-?993IS2|LKB>n~txzJZ$CXj3S%B1+&zclFe2Jd#kctDK$U5%j?AOdEE0x_UrE-nK6$++%rJN8m5%SMA?vE}b`Yr9Wf(V8G*3QxIH%WBPvUgp{(WAieYwV@vno2O9qKFF0X9vlJRyI&(a?J6FaT zG$w2}>73WmR<@oTWR3iTSmo-U{)V|px7rS8KI^rSkgu=}0Px+{5n)G_uEwq93QO;r z-=U$da=QwwKXVoNw=JVA4#jSon(@nb@O6mGM%n=Y-QXO6jtOvP7-}5^r+feW_r2`k zbN=+dN#6gPYySV;l=rfMz4hBZS*65BClLsZvU19hWzR3IxuPkG5x;YHj&*#XN%Q9mmnmz-BwKAda_-DTFbg*o} z-y3O>ygRLxy-$>k<9H~;&)GzjPU;5y!{oK(ExpEh0pHvcC)v5kLu0(=nkeN$@ytul3bM$aqa|y%X*RDa@((R}<$jgpRwAaa);k|gZcb_ZfXnP}OLGhgXegI7 z)sJYhv3M#Wo?*x0uT~Llnxj=(yJs5Se9vwyd;WKg!4r12hrIjQynfx^F7A0-e9Thm zC%mU5;!Vp|oA-QnX~_)M@|QgBlK=`897z*(ekpRptB6MI%Ho+S*#qF~zPHPM#L!|v zip$)9$wHIy6^m8kQ#-eQ9=9)F4lRdpKaCr6anm5>_){gNFH0RgeKX$oRB>()(d(BG za-u-Q**gd7*oRiy|9(#o93*R;wI6CRr$@f6W@PA6&b|aHGhUOKXC0AE2&Xc_EbMlI zE$*xdmdwkk+=Z31Q%YLKSM8)90cAhC%`G9O@Yjw>IqmT0te$i=p21UmoGsY6@eRlS z@Hz^BVP0}md0#qoQHGF?SO3WaIK-hxVl0DIlJQD5cAX%|nS!CKq~ZJS0@{G9r(a6l z&D33``ZC64B(WLrUVwyaV>I9772xAgZlz0KGBqWt4$Mxy`ugj4Sz)5t-)HrPBE}ZC zlK?XHXxrmUYbHF#K-=aWb_H6m=1DJdwCQqk#r0_~tF<(aw1;7jv-Mfz&pTvXQQ*CS zt;6B4DMEQ?W3-TJ{9*SXXKFljfGYpzXC0jmTo`QdJF1T|+fX)rF58uf>nR$`z<>Vw z(Q>%bQ~M0w{aWqL4l@Q2pyvt(_$(>eWQqx33v6u5>o6_aT2C{)MR^qJ-< z9}isjT6X$7{)Lpr&yCeRIw*+KW~HJdGcYV}c3`u+q;l3e89vD2I5UelJg4ZteQUU4 ztGfj1v%Z~LD=4UeVs2sqedSNNJ(jcXNZxy#tkdKJW~q2rXRg>;M7(h(Ek;^%Jwb&` ze~DRl+)|9{yBU?;@gl?14yFo7<5?Q<(*@tDQfF3~lI8ik&Mis+NBLG$EcU3@R$CM` zSLUH17$E~d&pPgIcay}ilB^Ah{pG?1#hLi6s)$8J?Sw-q z2^TYTPObW|_C z$G&tkrv&!4@~XGX8B)Koz!|c_x?KmHi|gFHvv$^W;%ST=Xd>uQ8F?}n{4>?2bfZZ3 zpOhd}1!gV|N{%Fr?YvTqvw+HT$G9*HLZ@T4t?Tq0DA@AxP-%-v` z#*%YJA5LeiBFrSLlnR9z*k&Mdd3@UhBNpbcwiOanONiw|^vlzn2hwcDnb%1PwnIU+ir~qsZvs^(pXbaOtPP`$PtiYBMMDk;g*Y4z$ELv{g5fx#C$65MSt8K-Y_Xj!0iX|i6 z0wq(zbF|xL2D0GhF?KVl`Y*zzF7%fbe_Z*r;;-KH0cB{A26asY@7Y5pyV%7rCbEHJ zPDZ_I)stksui?Y}N@{Sm>{1P8K49z9P>I4)&yKL;;wg?0uHwi@IFUBDrWgeH4a#q6 z!vZ(Nvr&iFcE*@lQ*$ zB&l|OK8}vb71dY*6^t#Agw{yoHTjida%B{sXTNH9i)d_d>m!QiFkBvt`+w3J5VH>Qth&N`;fQzgA_X`zPn{n8S`US&AMp+(6QMoMJkb6B*xQ z+AbEA<4Q^j9{AjN+A*ZAIn}(ZMM0-$kwt*mCtXr4PAQHizpU5t|2>_P>=j!q^)996 z-DkZAzq>Byc$eJAq!lWh>M*RxXxjh?C$9D8pohbGW_M$&u0cctq@ZkNKq$BHm%&}A z7VFzzh5v9=`riQy49`HGqiKD6;>V$(B%v$KUMudzRa^zMo^eHvD%j$;3UNgt)z~7G zhn~+f7y3vloo1TS95cTs1@4A$YlyRU#t;zVn!kF}l4N8JbqMI3>jG5u5=lU0-c=wk zNjUdGCF&nm6QZOcsb~P;>-Knz7iuNVZ*Um!q~Z`Yo{)||ZqI(h2%{HeYG?CtFr6lU zIWrK{UaH@Q{HK`>Wy>@;mY5dbKT#UnvM$_FDJg&8^=SB8K2ctrg6g14H)ztvca5mL z!G%p=bP?ap#VK=Fd)NafrDrSzQJ&ejQN-7Ha0zvH+y8nSWcjCdXR?H=8;ZZ5}vj~ zm5W;3BJ9|Mp-8X)%S+sH*k2?ZN7l^nQBjCK@Xe6tkh8)Gv#9p+Ht)c-rMwTDy4;+R z6A-VX62x&UgsEPvuCz;sew!5R6mM({qAfgEL7SLNx}Fnr+vDfAA3vrWOw1PKlLdU6{UME&%iD`R-HY`F z`LQ?M(Op!R(T#QE-n}U#j7XlWHk&CTbkQZnYyK472#>Ck)Q$Q>hkN|QjT@~^VlD?$ zi@t*3Zjj5(no*RE0Q@a0q)-J>+Z6GKvYJ>;>gZWaYma?{7=Pi}e`X{LX92~%O3DrX zhZ*p$F-NjI0CWwwWGFy;9yc$y9{YQHT-WrSD#8r2F9oH?*Br6R%qO4hG16X6uE?HI{ z%ntzWqKfP29wjta`;ZSH(+X$~xuE@-O?-T9ht{j1Azt%zSxIm({?m}1Ls+%3aKZ^r zO=FGY7wXvEe*vx6#Pn`Z_FVZjn4rYrxL8g5>itu(<7w*5HdCyQp2#XscCm&6;>yS{ zwgD*Atxqg1c=tmLu9W5k3l@*@a^@BroQ}7q*~CMWPz%4urzOm&Tci7rJ{Pk?+vXJK zH9~&BZ1x8Pbn$X=qbBH^H_!?G2VZIFhu#`g`<>kV9pqC1^?m8xfx`npExSW4VeAQ` zf8GzOdJ&No9V@5P!Jc5pG*(GnO^m0KwA7?(%F`<@rpy3m00@0jsR@r?opN+?d5ElD z^3nJ27W&l&8|b@ z{00vBUvblStnaEKCGD_-wF~PswF50D?1z2^B3Wa*x4)Iq)FR`lOA&Yo8soNS-hn+s zCELmKQ)aVvWxw-(k`UEL|IGa~g-=&Fw?!#Do1KU2)$R7@zmxQ(=|`2liX7n z8`nkBbr}V(f4QUZQb_L*+F#oCx5^jFou7Qd&eLk$s&S*AccWu{skrHrdh$e3rcc*) z$%6B?b>8Ov)IdYjRKv`zv4B+FjgU)QF+o+dLK%fuVMZ%^6+X;}5eYvoF)@g~M%X;2 zXyWeTga*I^9qcqJ^~fG?>J_*H1RkU-y2#b!OkKWzg%MdbYHYRd5(VxJ(b;*M)ma)T z0IpiM5fHL64b;#VWUmt(w=2t74lWv(uoxXLLH0fyb9DB((sBT@avLQGCs-bnip%*{zKYKLjwO{ZK!pniz=%o8Ky{5E=&;!?eFqnGp*cnAQ4C zq2pk1mN3HYDp1)qPSmz`OBQwp$GKcPgNL}S9+OrSVHEyq@iv2SZy8k*ItcKnnO?;v z$Hl#|!-rq4-1{^=9O3Tx1~;D4*d7OMu!xvZzY&#?kz8}Z&U5g&?9O|?xZJ?X=WX8K z9`WTjN3`SG@GlCFOL(Pfid-)c>QUvk!`QYc83lg@m+9k*O4zT3+sxRt%+5{O9IyH^-Rk)}s}=C7$Yd4Xu@AO6Ip=dw7ZI;F{4 zFAg%V=<+k|WO6^q2<>Mt*1<+q0Q@(ZPS}cTDe}Y%0#sKXp`oxeM*>=u?Q&C;ZPxW@ zGJ5oQflybH-8(W$@7_w1f#ZYPU9^)AIawA)Mu98t7ClhvN}OPBt-l))GTPDt3B6Vw zq<}oaiUj=W?(7dG9OTH;?e-m-7z|A`Uhb~d?bnyl|7ZlC&mXQbI{Sk2l#vFP`M63d zMhs{U62up;AS1|kcbJVFmscA(2?YeSL$z3{$_Q$?!E`hMb>eUlj zHtz3AXWNV2MiE)en@xxU&!bHiQtvoLL~0IBduPb7|FqxsHP>9~qmPrFca43)m8)K) zMw)w^tFqx0-rQ#yZOa12R9!usD>xk5at$ximNlUs?DFZbOI~B?8%0vRP zEI_+S!#ESPegT{*sL=grcmy-xMWo4Ge~-O*ur*9`L?;-bEu|o zA3n;0@jJ!-%|_@k_h22$jbtxE+8$AIrLVh0jWfc4qpX#aW;P=nNN`87wUB)dVM$=B0JT$t=9h>TYk0d znm}t*@ia;_Wh|Rfmbf-izy8HXn?#d-a#lrf$E&e-I^P{~)Aj zNY%V0T%hxD-0Zh-6|u`e>BT^`LRLfMb^|Mb%n69;H!2!z4(tyg2;@K1u}m-%$!c%Y zXiovm?X1iwH%w9>uwf^nBztL@P5$zipBJNAvgPgqL5yyj%MDIX zeqDUXB@#o>Y-{^AOo!GmaD)+J1ydyyZ>#r3`I}v;;p*5ZyD6Ly-Q>8{GB)w8ZH>UT zZNq9-$9{My2_VZLiLt=mm?MJ_2HiL;OtP@3^PjR@N}BO_b9XsfL+(dkz1@i z)BI!>b+uAIY~@JdUlm^LSaz&oEp#taHk7>mZ8$FV!`J?sjaZicKdLy@dhT=-xG*Zy zIV1VfKfTH$w*Uyq3%Ap^7WWHqcl@Tbly{a>qf~~30e%45ZKLJgTA=~@DuOO`?y zpmtt4^Qz;3^+LK0+tzh=vYLmk#~_Sl-O)nrr3JR>=YHo9POVbK7o(NV?n0Bxwzczb z9=DcpalF7BOANqK6b+;4#~_eODM3nwdP`GY;F$SPf7^TSVCc3TERVlGvay{nvgtJ1 zL!V`9(2IG{@AO`+W=~zif(Jb48aDT(R%eHVV)9u|?okJlh9bg9gxIJk(fH}Y6t&Yh zO(1@ILA-%Lr`T2XoKiQxI5!C{>*1(P;m2LE>xg@WA^sUE$l zpu!z2_E&Oi3etj)-Z8)4@H?%&jT zp>P_v#o{Y<{Le{o23qW^yZVkH0x!cbuQOjNHYaF1ko@?SL{W~X}5Bnp$x`e`%T{)s2(A9 zvR5%D4QxpR%b=;XpC&)oMzm^0dnEI|w#Q%a`X*=Ob|{DR{x1JpL41JrnLGiNG$dqr zygWwwh`#z5{d?nnv}gTu?Yg7?OapLvs~(8j)x)A1zkw6HVmZ<9v>NtUhfrR_*Ac>= zx~2t~LM?}gwL2Su^Jw2tB;|NSGc3BMy0Mn2qslBH29%OpS=Qx*vb9*=d$Ew;fX!#X z7yVV@Y>|WXdgw$>V6^Vn_ak@~Vii zDY-H%SL()>4rd5ZVsyod-V&bd0`f&TqrFC#{-%Xs;9tAhWyp`X$lZiuq;y|fvHozO zK1MSb9xO08P8rM`thX78te_X*E#PT>>u_w+frryK?uXMH%pb(C#twmL9-4OfT80|I zZtKh&0drg&)+$Q87_-W-g|XOEMumBt0m|IJ4VlIEbRAbNcbL@JGKC@D?pqCRCpyn% zE(;!;170x=r-}R98NGSa!MyI`XHIv7@kq?Eyh&&C(vt4!ES$aleC^G&oSC6j>dv^n zz>{Ysh_Rd!hGmnYxyjM|y09`U$UU*VQOa)7E2q3UL-?M+E= z`9z>d4mNzN&C7c%ByG>ts2DOXWwTJcn(SM0iPTy<#UG2DVS4?-*UB4Xx55azC{@)w zFm}jpHw|(yB<{yyTjj-LU?H#)kG>7rcxCG`%$1BsmkG{2N7Q9Z!HCT6k}KE{aHlQs zJ0}^EdgsFn@zecJ@;cxHNZ0v9+ccU@|NRG*Y0JAKk7hbq6}mgD-c;bHR0~rPwKd~2 zF$=VE=)hZ7=24W*=lieFiOGV*zKMqqESLxuG>%<}NG6HR8)%|2(IWz9u(x6jGIXWm zL-LzbgQNrza%ST-2)CQzF_`DwW)7f~Ync1RpqLPUTP3fExBy1!`W#dB9b#=FC4V7I zMQY_ENwP1=x!v`#_y9nnNlp{*hwA#R{37E0E4K>bMwQVX#SIj-8pA%s{RO(VG9#?E z(}gHZg!OwtUfIGSk@;lVCkw&tmN*V-P#3C8?$mympJ`&=EhJkVh(^sVqR^({zBVp7 zuSPfJGFnP{Q%Ya zD7nM12rr_5DQ4H{ooFz1b+oU@sL3t_|lo;Q}1CbsG*b zEIKYX)nqYCubg6Jg_SG<RZhh>1b}P22^@d_cjMMG~d-t;K-T-ha3Y_UeHWch? z;wscO$J|daf%227CKmp-)%D1esb->Az_`sKC!S%7xZiFpNA7F`6>XN!k{Vi5fuHs~RJJgV&(AnpwKvD?+9tFkKwf)qe6 z^Pg(kLJo)m6C$YZtmQUP#&Lh#d;=}<+lxs483+Ab2&|ihSB>T04e2VKuu=L+18824 z)A@=*%5^HEJ9vfiP~zi}`LiD?sULP%6gdA3$dAJP$v=Q_br{C`U$6FBOmievD3+O( ztIH-cgW*g8H}z-5Qo*kW+oTCY$=R(rG601=lA+$@B-Q#+v~j~`a?bN8d0x6$smDfi zE+0gD*0gxdNEU=!K@r-PT6uiPwQ`msPg{Ez>mq_?oQVG%FgjR!BoF z!Y5vwpDSBMTo1Z@Q9d4}*QGCq9u0J>_VRO38J)LIN&O{~LFXhZi4xmCJ#UAZl)X~0 zJ;kOhqa$?4&&9IRQ-S|}=s@qQ>2!O9i@(5X!c%k#JhDl&ziQskmtM7{p3x=JUyRao zcdvXm&HHYb`Pq8Ajui?LPr*4e?SE9&U#=11&Yct1*;O2B^V(R;svT(?U^q8_#2|gk zc4^-P@5lf5k^(qfy4}WJ2|Z(9*baBRMah&+IYm&f-`f1ocR~Z=GJ<{7lEs_u z)5llPXiGJj8fUV@j?8-Qs&Ug*=Ug>a^Z1Ex_cuPpE3ik#dsG8~Vu;&%>F*w#FJ=kj zV_^vbl>8M)kyWh*Lac^MAi;I(NvX?RQIzjs54f|%npOTz4>inv!2SFbv$4g7J3IS% zbqrtQr>}vA*RrD_TR>B$1iM~+-iElNJuw^2oOiRQ{;^S=nVD&$;16YaR#?wmbne^E zpTl*_IaDW<^SIfvZQ(B$7^Buwp3{Y1_j+=?SIq{k^6z1*Jq?DH()%-20qxIkcM4;O zEiq1u*Hq|Do_EuIVLnCX+v=ZNQ60e23BX|LDp!=w^)??{Aa${{3hK0( zVm;shoFdiBc0Kt)S{KQ)a$Q-O+`~zKr1algI0!H?(f6mko`R&=Wa-|UB&Q?N4kwj_ zbR8rV&u)yH2sjrA(Rz*?j$&JQuJ@0kBilHV4Cd*m=sy+PpR04k{_c+In(mXev^K|G z3ehT_?(5y?xy3w`Q~Hi8w!a>-#7Rz1x}SJEtL#zl4zZ3*r)|z^af-(y96}B?nNdrV zK70vWt`TBqm>sR4iYX4 zQSyfug*YI&y0@CzHn>wKfa!QbRPd-oF^Ch_>FzfbeFws_)hWUqwk0S%HX`NKnmur9 z%s^KdYU47?m(8-K94DdM!Q%U2i_^;Lq~x1m-jK)3w0I1GjTE+#`>%uGj{jT;LC?F_ zqs7;qrk)U1O9AMu|8+Dy&0-@kqqEfS_1X&HS;w-(+u0U2utiHwZY-K*)In-clG59v zm8Z2EXnD4ZJ`XIO1&@|?7kt^~LmXg9<9q1XN)6$w2_pisU4o)_WM5w~3v>6nTmE$& zyHS_+b3ctAuJBWuUu-bYjBb5Al9n5 zPW)>RnO4*!Pf>iZ*U(=Pg>MeN)3L-feJc8&%7 zcZ(XcD_y*#f=OV@q^WrX6*&`KkmIZqJSlWPapbFvavbh|q9(3P0Hg)){C-&H^ z)Gx|js&{N9|J5B6UJ+G5t}B1=+9UX-$NDK%NRmFrfUV}ap0x5{=Mm$nB!j`9iOs^z z=;!^8%taqNP~S>gJffeJus426-}YF%+2#T>@)wEeVCjo`?nXR=EpjGS?%68&-Xb5$ zI$R8|pm=au#%QK;=ELti{IpR6j^`7Gi zJ3$J%u>H=r`l$B(bo17?mZV)$y5IgRO9k)R@$OSt2a3U{tYh-LoxbCTG@aU}V$*gc0<~q@`H%KxN0duHL=Tl1z z7nLYECQL~~UT0Yhww3E2FoUnNk_3L7&HBK>sclAsXv@bME!qcXa{_)6*;k%DpXZAv z-j_x^%5TpSQwn#XPF)3(cDJRetGGvd9o)soLm*6HmNB>>vZ;P+5IL5id@G@A1*K)9 z7rLYEPm=JY@Nz1JI_K)$(Kafp$EH2!}$*@&{(~WNwSN7m_xe$;&?cK6I zdMk#mQP=e6RB6f;Zjk*TR7vE7wYXp%P5>rLla`-yITszkre8+7hT0vrrkqQ>Qm!~! zFS|89-B8JPBg&rcN@)77K}!OPvZHLg-TtYL_b%1MAeOcbI;oGRn-`u9J*sfPhqe9{4|G2f`))Ba>5i*|yj?RLLC!lmb5{-Fk5)Fhi zK3E^ucSEhyUzSR}%YCkBV9tpXPOZz&r|MSve`UGMiacURjCfF<4>lWgkR6i&iafj4 z)vx7ij)hl*%*T@cymEwuFsZ{Qv@~Kbbj^9qd;PIulYzbh&;!ps@=IVv;PGjQ0?Liz zi?uZj(bh%;Rik|EQRy~h29yW?o;AwL94DAF#4@>_hu#pNC&q^771|%Hr=JQ@y14M1 ze3{=Jo@cwQK0KFXE6sdAv`rwm#XBK7&~2s979N0YwbNy&kAB0=T5DBentkp)IVAx% zcTb-c@-?lgWVs{=ukeZadmF+;`|%C`|M?PEIK8s4x{q{ReR4dzm~%X@G%`n55)FiB zz<6*ng2zF1*P1`H9_g_9&_#sPvOz}R>5C3Zpqph7AdFrW!pDJQz)S7WO?#cY^A39~ zzW}iBTB@4|1_0%orX75zvqCu>eE}dlM9F+fVs$rg9%z`2Ccy_$CD6fbS(K;VOvQq7 z_!HGKg*7lPL4bS~KcoLvUR~I#I&W)R(zFao@^VDYZ?wpLnX1ty z`~kK+isoUi^o~Cznduq^qY08m>hXSc(l#ooG>4U~ihe>~>3dW4D8qo=R!V;kB*X`{ ztGJgQ;6pdkEEAJTy!edlM^2{t@)4$<`GxSsv^|O@QSwfA5kwE;7V22}XsVj#Hs^b5bf*j8#)>E1P7>lEpQ9 zUSV%1hA(zp!C(kEn56Br=L`nkPm8azxPai>bs&FFjQY=f-`EAlQ=$X%0>XtmuXA|C zxa*5=*TcbG;KWo9e++8LhQCA(8#@nYy|Jr_6UDL!Y@}*GYv(l2H0GqxKD_ueIx^K75Vb8h&FRVm4iy7pK6rXwM zui6^G!sK)MkrU$|9zK|4sSY; z!dQwXX|aq=?(2^5_M6-ns)m_E($ zo@a>c?ta>exdR%ulZqaz9x3@C+ISl%&pa5)<0;FGFt?=_RyOx^T;>@Hdmfg*-Kea* zq#58#|E|?ku*2wfGuykUaOdpQ2q!sK@CIBZ9yEM`Mg|F4`Q)MThGdxr9;O-WnPIHO z9)3tLC9Ze5y#a$H1Z<@U&`aC*x!(~SBE4*YU`M8wSF~wDpn`x{9h~$|w)y{l`#h{k9*z$I!vFI@&A!U~f9Ib-y8vn( z?B93c@0{vY5GwYUeCPkRe60TqQ=Sgq!T++>|4&)#j_gG@EvD5r^0JM9B?IeCnxP+s zFmh!&kAie8oI!$J7|U;f_?7ioznuSjJ=oUX`!GX9?h>1r;|%;7y4&UOivZu%uYcA~ zf6@0^J&-5eOJUJD2@T#eF(8jpj%CcYFFXN;vx2S~q&oeZEZSRHuxTpm5!By@cy=6> zCTu_m<~mge`sb$;kOlej66^Nrdp@fn1wxB(R%8~!U7@gHrn{u!wefA6&Lnsb-uao5 z!4mt0)iRe5i{V5T|gD^2PbP5|@_y(Og)jA?OY{qdiky#6=uS}p@}@JU}- zGtN~Iv-;cfqw%M0_v-eSiH-YH1^ZRsv?TZFZl-<@6o&7#{5ibwXej(SkZ4A}*}t$y zkZ9b9r}7B{^3_07s6(wm3TjHUxzf=ELJw0lxH+NV%A6CP>;B!V^|0pe*;@}BKoQwe zW(OV6#eEH;0=Mm624$aM(btjLF?y+{UZQa4YZ`hVP91Whs!OE`0R-I;Q@7n+f^*(Y ztKHOfqF@n=WmV3Vh8YJZ+&guyHvl{*FhC^%fLPE*xy{A}BJ{-im7SeC3o z9;5qP(bQa~1jc;C|95uj+g9LywjUvDD`sGOHUew++l?Eb2`qeg87M)EmZ{g=S{p~2 z2mS3?J|9h-h$KNt%0Be2g6W*rS@x88Vni8HLO5|A*$PcxdNJTd(X(ml+ia+!AIr`6 zQdYmS+gTs75#EMsydlaAxa(Vsc;M(VZq`p$w=Mf%Lat-p8iwhukiwgQltY3z)Ftjc>9-Q*8#Yzm>{F538I8xozCBq(-{YzMaQ@avy)k z`q>ORGqdCMQR&-`V6A~*hSrO2O7Z&Un~Bn{-^1YWDOIzY7P;5v{=>e5uLN9V5+0*g zyB;yUK9YIs!*<KtzE9m>rzoB_2a_`-D?Y+HUW2Xc*d{FDbl|d) zevmX6tHh;gNMq;ovNBEce~bGLp{fj;1^`RL$pc5n+dQ%I)REH6m73Z~z20rN5-%WA z=8bg|0YVRkHMX!2r^$cIL5!R({?{|>%lf;j6sMs&41_klHz$toE81nk?}@SaF3Ae* zgljyunT>Z^h9hQgPWjzm83s0~rJ)kpG?L5xG0UdfTFIJ=tg316aN@?sM@2z)mI4?O z`tqG|-`Y?8vyV%zf52lLp%? z`vo-M)nP|xc!iI2bTVN!{vLlW5o^NWcl=XUdh6>Sf}FlUDa)G{}l9rCG?@*vmdrq3#vn)z&tX+ zK{FX2GEpvGt1$Zqct~mql7xh z@YvLdjy-i01V_v>WGHbCOZRIKOrnLWcV6lg86IImUFd(#&X-2Fna?YKi((?iK+eKc zN~5t$2g;e-%j`wRv3z2loQxUT=@0JSw zI<$WMQMdxW`OY}UM8+PKNiBHNYuM{@;&8${f3XYPmoRS+KV#K1nZIBF>0ht27Zi8Z z5h@EWa}SwohOp#a+hy!?twf-}zM0~t1u_ya29t8i<7dssD=$I|ty~rs3zFip0|Mg3 zijMN7E!nuk9M0s?jBICtW$ZvIyf#-WU2~DevsZjQNnqv+gKD$xcu`f*gzO7G|2L3@ zY3Xssj^IHH`&HPth))o(YfMU=+3JsW*LEkIFxsG`*@<#jit2 zv;vx@zYK|nu{X{49@J>`Zapi3uL31?_Attmm>=0V-X8XU*n97|CbM;I*t6ZEvq!

OsN@7we9pGh88R=L-G-`92BYdy|%;EeoEg7~59>F2%N?imQ| z+7lno9)Ga^(|P%j%Bw=(>^{F|=FsQli$3|=aob}bAO9Wl8HnPdpy#S&s&`rkj>CVM zo81roPw~nJK4pv#)w3O7XFz<=Xv}wG$VA8JB?z3Q0nuyy`4NanUBk1`$_N$ zoQr0Jeb3{XXAzNh|FFAYbfnwlAODc@R*dTW^`zuKQqL>J9*|`}m5~&>ek?-&e%7<# zA74MX_-pJy>yLqGNM?btAG&7C%+_3BG;?lpS$#S%YrPQo@7M12wmhKwDawdgDZR5A zk{_qy=c#BLDZM!Tj+Q^rF7Sn3Ty~uDAFrZu>1eqcCzVf&{^KGf!)T)panv;ua?u`A_J8L{$8?%6fvR{dzrP_dvkU^3JrM^x|$JbmgT> zeLt*Bqj}Tb^h8UiyoyrQS1y(AePS&ow=#Bj)SDx+Tj5-W97-E%f(WPcp$%x;x_2o>%uAKaHT+04hJ5x@KwPXQ<8MykzvW=BeIi)B?)s^RNsaMfNf-Tp~!Owt3)sQY?AWZxA|@ zwt9!5o|HcL>ebX$ML7basW8JcXnSF9E|y$I>?OG)S57Y49_`Qm+V6A%NR92(P6(m zIda&6$xtpQ1?#p4^M9E^dpIAwDSt!M_86`~;WDdqLs3&X3+=OR5h)%~sg~ET2N`Flkq?izGf`-YNn7w$6ZwwVC1+evYpgH}a#-%8Esr|?u~J@NR;p81zH(}O zt!y(qvmwRSfs>6-v@oQ-I@RkzQ(EGLbXp1LEWTMufLah>S_Kh z`EY-5l^4dFaSga4sN5^9tC@7%oC#Zyk;9SNY!l1p4>l&%c9)I=jzXUwk}wQ<%Sv)v zr$z=jv#u_VriOtk9sM^h>|cZ#E%4UbBbto+Mv+?s#n-Vf;>O0e?X5@6{O*{oQXrML9Y*b9V}!HYDXsz%(?g_V>mw55kc4!nKUNm-SD%~>Qdiy;9oVO_oZgFd>eo^1 zdSIZbujj7nd&c2IoSQZxUqDynkbXvuB$1gm!j=oxet&);#wM<`hM+m~Od>z0fMoH za0EIG6ZSFj_*w6B9%9wcY@v4@f(cu{)Je77-lXl9uY9T>I<=6;I2iXq40w$VqVdAX>rd44COlxxw=ttJ}b~0u0V&mV@HZ( zY)-)689ieKzi!DvqP^HAqa=-9jpy~6+606lGCRc=RQ?Qsa)vxt*2-zwn2aTVfU3%2 zJfY>?ZeQu=TnoLOPZ?ZBhdBEoi>X!K)aEuBdL}m~qNC!>K4I#5=prV*mM1~-Cx@0eZ?VGDcS?fy1tnTR2`THo1CAWu>Yc6L7 z^&F6Q%+~Tir+nMePS!V_+-^CAERBrn-u7SJQeQG%r-tT^ay{H7Q>dF`&5kq#4O;db zi53a1F#CzXe5`nVVMAB6rN;{bK@8q^o``kdhe9KzGBV1`yCqcr2zAH5gu2caI)@c< zK6L3V$PsrE{SMd;hiptSP~l2EzWp)Ja6w}6UiM_Endnm+TTZM-L^EsgS`kqLycl*X zz#!-*ZtND%6xsK?u4GCX8V&@6k;N0^6N(s{eGNF_viomi85Kc$mv8c;=R!)vh^NiY z-^s6zoyz`oIve4kJ+4<~79yG(5R@@LJB&JZ5KY*>~0~n3S|zoO`21w1L=x zvX!tlZaR{?Rnyse(ZjmWlJL$I2R=DGSD(1oSUz$rL%4Ub_alr@k2v|+*SksLj6(|` z8;j$a=~gioz+4`*F~wt*y8fdn&Ep4etLvFy=_!^1=F#fZmBscs*X|@bNo3f;oBqOC zck$|FT>4;qhN@)AZRM32>Ak7tWqLvBfmNh8qSK8lBZe`dd<67fD`@oIdlyi650jN7 z4D1itapR!$LWc>@16hj?o{}+vz-Y=RI_BP=;trKhHSPp6^h&_Nu}rc=v^W%i;Nqjg zWCa84N}Qd12t()!8jWah%1q_}^-?fZM~KkJJ@bKf_s`iKB(S8j>&_$waPIEF7S?RL zCN@xi`o#Dx(L$;9H1UvCFYIy2m?4A|vWTE?qGLX4Hqqp2S9|>v)Nn}I%MUJRE};74 zBBPwmp(5Q*wi2@FjPzI+Bww)9`g=1<;CW;Z2%KwQ5o=&RKW^Q@T<=5=4)#8{j$lVw zGTS=T>thX?>KDp_T7Q`#OJIjKoqM+9HIYBOEUE@iS%k?Aa%&bQ229!Y?o`RY^giCY z^LFcLT($)>og%2P;dh$WQi`7W~CER=z#Ft8(p;27NL@*YuD1=AN{= zFVB6%XM66iD18ol!XNXYSFPmFKk`SezDHW&|FkhbY74!;f#|5YzU=)>~mv$m5 zlVUXUE#S!znYkH=%SB_j^uOplHTzeZINdi&)8po^BUvTkR4jkc(DdiQ{l zLKm)~5X(3@jK&iSx5iR!{U@8n;}NtMa8!}qiyyX}-nB@SD&twrIb}g8HUz!X^v`8q z#@DMW55-EnGfJ*=+lxD6mU~lV{=MUHq(-NI=TeZf1ys1(8LPb*BR~ZsPCf=(_cu5#N~6rMVn>GKpOHk6{ic^P#4hI zKZZtLFSH5Owc)(#=mYuec0QEHz^<<60FF8geJb5GXoY!LCwG%lQ}y*}UQtH=pi6&H@m8SXUlDRC#u*Yu>g&hpo5kOs~s- z_QN&0lDG=~GJ0!u6M}>MX8U4Q1(?fJV@_e)D|)1CNlS?$QVyfE0Tz|@s?`i~cEU~o z!KUF}2tz$C9kw{|VBp2%#uKgWc7|f+Vde3LAGScl!o7!@@-gy}KjY5ljgeMrzBG>8mfl4G9In(V~xVV8H3dO%SFPy2Y(=#hxnbdDLZ55z82stxM%~4f~Or-mIWy%*ugKIv#U}T1c_2x9H$?8BZG)M z!$Hc<>jw7RSvmiCTVhlZ`Rf^DtJH>~?S^vq=uF>=u7U`$>g*ICf68c3*gA`k0IWXi zo6emf0J|ka)ZUMK$vegi+f-gyr4h1`_GBF3FklG+3MIDj;)m~{imn;W7pB_@zrM)_ zdtPOBdxwoSj22E#uFa3t=?Gd*gmfl=c%ZJb#x1ngtK9Pd|^u7i|?Ka08LG%hqeCs?TT zJb!EXx|#F1u)Dvrv=gw%i6QSQRCVP^$fmYKIsJMP^EJb}j_%39FOF^@+Qx0vk1`ps zegCb)uN89Q)!F!j3a86BrG4`G&62pGJK4*>)AF^t<~v%`$KR0l3Uo7DPO%G83m?YJ z#ahjYS%Fr&GwIzQ+D(B}5=!As{LnpVZ zZo(H+%pYYIn&ok04L)*g#@64vA9Bod`~w^x+rgS2!LbVGab~fB?6k3M-1ha{A@1yL zk>T&c6dz{5tibjL{M@G#ttIB2xD3@c))7($rfJp@;7!D|zBeAV6|cVD5E#M`Uf}I^ z-uL|HfMr_?Xw^D2TzfKX%~sHLFzma=i&q3?gMFo zV(J-G?_7$tNMYu<=w5;FBMv7CQf`;yqgF4c3~kcWIEQbFjPPzXR9yk4yUDuz=o}b! z9sx|Vb?8l&w~?P<5!StnY)d$;WolT1y?v8FEC&rFr<>kGxl00fBHAx+7eW(et!-E) z1|R1+`tv-O^v06SS9OjI+qDP?#&kDhL}l>_=nW9hrSVRVs;?eYZnipy@xY*9q9sSQ z`N^PAh|oLXN-fnM0Uf~0kxL=9K|Qf;o;DI(cVzR#VSGdx#>W1`;EZv&3gHrY!tcOY zoTzHBtM3jRtpvyyw6=SsuKd-!;{_P=q~@251SeKr0lS61w6UK$xu&>4(5|oWs~FyO z?oY(N*zP-Bc{G>L9iK#Dxj06bw1uXAJ|xbdnDhQ)?_?adLnI+0d4_vYRiwF7YK`rT z7I~t<%l^^6lTi5xaWX2t+xZHAYV8E88Q3AXLjJe-eN||&@!{%d8!IBDQj$Q^NqM$| zSG7%>W+ZW7QD*cQjpK?N6|!bn?@Zgz@?Wrrs3&a&J;FjagLq5fj5y%EB~J|o_u_88 zHPQ9F5i22gO3Srf&?Az!hX2(l`RLoKlMWz4Bh%d5JBaUP2ik8}5IRBu0=%c^6`zk? zh~dbb=wnh`K)@Zc{*5Pdktn>tJ+~^@lKLT!hEmP@giu4q^756Peq0n%{OqZZV{A_F zriZET)cl?QUr@4m;cBK*LiZ+bmvfyS{r&)44?EYj!{c{|^tfD6-dHSFMI>*JPHJiA z0;~#4N%Djj5VkDfKV-~hnh+_8`2Ksk!q0mcY_D}4wP3NJ6HR8&^7x%D?Wy_ovqi~6 z5QL>k1L~|HIx}6lOjop~N3C-&uEzx*{lGA)04g|3_|bwXrctlX=}M`lin7a^#|AcN zCF(ZlE5G4~9hMnu^F8Ra8;wa#y`>Pe?Q*q4&o+zG)ppqC?B19iI+d~ZBL;h{o5xBT zOu^jzu3_vJu)^twEMlH1RXQ7;3w^Xr0FURGl5-*E9h*`be!Kf=);kV*55mI1oKB1<&>8^)-3BY*E9icd-%ka@x7OEqN^>Z%ADV(_dYe)s&sxAL8y|$ z@My~?>mUH+*NTj(M)*3PYd8mPGYBHAmBGH}a$C76AxA%bHi<+Fg-5c9naT_3gGo78KQbrrz&Yx)P@c~f% zIux6K(vxP|yTwW>M}@4xkVwBD;%#`7K+si=0RnK@A8GUp5?+-jyw1yx5q~Tv>xCsG z-Zelrc%jr^-mG67+I;r9CFfDeZHGU&-an;dMxuo5NTBzEe~8D{U+8U3Z(3a2A=`r= zzqu3qWl=Q&Vx>UftKR@5g+57c->#6f=e*7r_mi&khZfuXB}6gD`P*oiFo82?+0bV6 z5qBG%_>wCcC=e@@5QK>^(Sy5JE$;as8u+J~J2w6>2(%&6q^kAY|3p8{t^ zl>rp-$1kNVKQ;OhXTASSAMY;b9+l6U-N*lb_h}aXsHXP$_n&`4mH(c)9n~RiB$PW3 zbLL;k8+u8rcoNj+TDHk%{2KEdd_tP#I(J5`aV}&~Z`YV?KXd*@cC)YO6h4PSZIdl+ zH*$q}{@m%-U!?JyZMpVk7C|kkAt8Mr3kbC3^F|}p4qX_V81V@4d1e$qDmJ!fFv>Cp zg?!+^o<7;Q+j9Jq&mqH$+MHL8PT{zH4J3yPd;!VAe*($-j{j$ntU9Fr07wXll;)lA z|ArI^+Cixr&!@uX9JFLv<(U`oTh;6B5ene(6-mLJF1$DSyyyI|!S3dqMN71lUBF!w zvW<50zr)B-(9@fXFxZ;iZ@k4{ZlPqf@DXzXlH#7bGBM_#BI0x>VECb%_lrVjuWi6D zZv?Z#o+Q~#r|owjl`(dM_|JNcpPeu+#^x*(e{E~cnHlkLzqJk2_qVMFWHcYf_scn| z;hQWbiR-qXkgKxfu_nz?75(iR8LThV0XK)w&d4J> zgL@_Q1^<(=HeE)Up}N{@7`W3kvR-#D&WgXXhPD%~(O!FhdGJEB(~D@E6Q$NW`Mu)- z=!qRvj5rn-WeFZ$+Zgs+iMG*PN9}qz7tH5XD+#5U7A`&%A{{l>Nwh6czVKHlEFkinurTKM#T5#%6+(H; zd)I4y2KiMa47C?PX_u2GCT}Yj;0)j>cDeVRir9`=+vT3;Bqk7|x94tE+nd$(%`A5S z@}bU&adl~@jh>RKA5H*Q`GjLJjx?q3jo0(~37QsF_m{+WChljWFJ9VR1pvaCCq|Bx z5?{*Ju5Ic=Ws6fc6|^j*u+b`{FpCM|UI51n|Sz|ILMcxb*DFWFSFO7ygj9c}P< zuH@PGp1T0N>h<+@t*d2GoeqJqOJZl;QZH4=&8teaV{NSuQqPb4RVcoHU+H@-iRwDU zTFRV5px-%019+;Q&uDWc8YDG~C$0{iBrt$7fP>q~e<3@Z02mD0?BXA8*dASc;hr7< z;9%}-CeO8Q>CJ(`GZ@3QSEnw_0l2{T2~j4aKolw#fG}Ch#oitL)_yq7_wP!QC2X%z z5$cX^;paT6o`b>47K}6unOMnV6CZ77KNvvxZ>^&o*aou=Sj4u&=9p=5sErBmrq3B7 zs(T6llF?B=^?^$UfKG-+*=B3auo0*hNa~>H$`_+N{r0~Q9=OR3$jvWbjIOLLKdKz= zU(#0ZWOYCihu=S0DGiDy%sxL&ATDY}eiXm;KE*{q{1zud!G?gsp29{}R7sl}>8&uQ$OUdfkha1oJBhSl+qSyy~W(fcxI z2k)R{fD;q&7Ytc5HC>m?Hj0{EO=>ptgNE&z)01;wT&#mI!6tZiB*1AkiE*M?9&$fl zz$%MYq z5qifNsUN$5kFn8JSN$HPIxZw+siSj-5Q9CpJJY9s`~u&#Byq~TmD0)K!uojI)lH9) z>M|vLwljYMt9#JG?J~}{CoabNqd02g<`A76@-}A0q(@wIZXakn14Hl6v<1&yqpQke zc^9;(OOMOQ1G@5xKz^UMH+tlE`clm|iDUuMdX*Y3pp;rk5PBdP7p_X;vbw+PZ9Z$@ zV2#u--!|)=YB?1z=pquTa%{&dT@3$|SgeU)Gp3W8wV*(OgQjAai9R>h#*H4ntB?vn zg@+eKf%;%ik%3w;P$qSEi3$(Gd6d=`E5_Iy(Mn>S&fD>+vvN#KB1m7sl7CoNz>BY5 zU*!#yBLtz{porEG6_W*?3MU{t5TYtYGh?A* z02A|3sHV4I?SbogRX8qrR}iCz9i9v=U{rt0ALRkyPI^*fXAbt9fBnUpFuL;mVfG@H zq{jK7wrA4~kN|g7eC@Vp;^K~g8t%plkd{1-P9OS~K6fjfpYSy8|C>VG{pM#!ihm)C zFd7?$mHlWk%3n-|+d}Vwq)HspuKr2Oe==ItHy^%36n5$gSH`~W0r=7XtvIawKN5#c z?01qafFcw$DuHDNTL$he^SlkCtLE8m-0>*fw%D!RK{?%Q=-(pU9pAcD#~B?Zni(AePh<^LD(x1~h=e4>0toQl-iU7dEry0- z1KRamnwm5qW*DcwJO}9mN(yChU?3)n)G*rHZrSewU@QAOKB}sErOH6{LI5@GRz_`W z=OT>x_#7LbdQfD6`r8n9OldDg7r38FuhhryT%G5oHSl>~f+E)D2ugM2ws=i84Aqwg zsJ2}*#uC`q+dhL2%cw5Mi8{QN1KV-d#IB2+gXR7*vuMohXDG*`7Y&%?T*kC11aaGp zJCI9TPG$2nI&qx#v+vrx3Z0FDUET4LKhR{FumTi))w%S>rUm?Lj5i4`xOZ( z;Q13xO@q(vhlT-|vxO(!j0PxnH!g}iNYvR<(5lt^O-~-Z z+-5r{Oj1MS4^#mg_x5=emDXkmek`-6Y;T!k(}H4^l1D4E-}4YDsf}eT3hD(50xXBS zafyg(cD|rpNz5Zz)h721xt(FXlKLX-4KHy)_xL>;Uj@o!8V*!*@?(+ptIf|60P}|E z*FKGnvHlC7{x`_H_zHdFe)4f0aWHYpL^O7|5Upjpfbd|b4UF@S@{M>MInncjd z)9RHr*>bdKDo_wRSq;aRWi3B6irM}9FH><{XZDq2Tf&*dW=&H-VkV(P@vAXUWDB;S@|4leHFkiuYjAJ4qb7=2o#t{M<$ z3A&7i@VL~u9GqQ;S1}mP@<&?=XL0BaT--xyf>p7gE$}+%N+*65zW_0Y-ZJK&srA(o z!P@M5X%tc3ZK6v_*zB63jbrJ}-?u_Q0~byuDJTNh$RUKiQ(GNgI=oAmc~?>u>^#aA z|Cgo3^@(dC&pC0|0~Oa3eBXD5_ESLQpR?z7Dg`)$ncUl)RtO)zxeeKdL!)n|2-xb1 zR%ch?#+aF$*33qrrs6kSyf_9bKi-g|*<4L+-TJX{Mwk#Cnp#?1lmP(_ICiq>yOQ@8 z8_NN^^O$8aBF`(jI?_w;RVk@Dh}T3f0_k}GZ6zmT@-VbK+9qXWYV3@n8qw=D6r2d! zS%)v?h}*FB?!925VlQ0Wl*#`ma)H{-eDBBs@(Dnt>$S8XiIDuHa3R3LdYaigsXj^8 zLFu0x*Iv~r7EhOxF-ju0)6;NvxucibCem92 z)dU;(QT?a#q*)H_k~rE5PzqjL+Ys(=7?H^J8)rGTQq|h1=4gIyN7@mec+z%$&Gt?9 zvus)@#aM#mI_Q}EuDu>a zWVf!L=nxh0zK-H23?M6*K~xpQ;PR{YKS+rW-mDMzkm^dcS&U)Sy@bju7y>3Uf4WNT zhF0+gSZdwwCbxd|VL}$kosz=f(8^{FB=Ef9IQ}~c>Rs6OEd;2vG(*SJ!td|#I=R4M zgggPr3r4l|UhSr$ zkJDbol3(RALQjvs9U6U0F~DZT#rU6vm1BmB5=7I^jr^t+vYk-vV7UIRBAa|j=X7iT za1um;osx)uEyaQxj8g91fdjXHhv@t^;AZ>(I@0bQY1$L+3pjM7cL zLh;0GxFd6I=mYf%#>R@EKnkm;=vECrn_bOqjM>84h~&K4u2vQuOjBODCcmBos!g!t zGictW5YzUSo!;#E;>pD_4{XUtXL%b8d4l*?kon8KZNP>EH0TpR(a8p|V=~)x+VVmJ zV$DU-9r z^N4JQm?vX*Wxu!{`X=CNjjwdRqN6#PJnao8_bSj?|EA-Xjlij!$r}C=Uq*~@jt}B_ z(mD0@^}w>5rb^<9_NL}ufvY~>3>~e`QsoUKY01GlpJyX~O>zge2@H8h3K;_Olwri9L8vsQn&@C=4@H0!I`*A&RW8ju zVm-$+&e@V&mV#8de+NN+w==iDYkgv4$jhndZcC%3BaZq7Q05VS48o&%)skDCMa%?QzldA&L{(|^a>q>SQ@ z0=%#0sV!98ywqrH@WNg{kYmr<24Kwn8Db)Dv#ZL3;IHXjf`$=!76%0!a%~}}HV%r` z?DT5SmsqF~%3oTwl!V;ZsAB!XNL%iodzI6-dC(TXv97+2@nz9A`@+wv8ArS&kozpv zFAiGX_r(R1hQzX^_-Prcm1zBgG9ogR6L-~-`uC7 zCnsRKBjXOOj?S^=#;0U3Tg%rf@pTnJsMZi+zoq!X&G}uc`qNY>?%TI-Qh}l=UBaFb z7(7EQ9DGGL=CMKM9mafrPPjba(Ph1okGR89j)d=Dk$jvD7yv2dOlNA$87JciPrqrb zD=jWTqBDENyE=5Hej2`be`V7{ zcJo>mxRr8>2y<2dX?l`!X=}e^PR!9>b`RTTaH7LIcCY^UlARzXgZ%UuQv&V1ES zE8%J&>~r)0%14pMpzu8Y7Pd3E$};_&WV5Wrtn9(J#@6YOEd9~-A%H?$2)N^-tpsLU z?c`H$fK1Ctb!~=-_xjeK(E+k<8!fZ^-!hsR1>X zY$jW9Ikx`xV8Bnsd71^AT`6b0e|PbS^VJ4w+uqjZHbxGIg`G?+4WuUA8oj5Yw6sbC zUUuKRPjU8|6MJed&=U|7;uhfsD<|8FG0?bSqB;R){bE@CF7W4owR<9nV+@oLNtWB{ zkS39sJF~HG!zdzg_W3DRxgPW!w@{a7v*A%7XzhkISXj162CKgPmlaV8tkAljpZw&h z0TD>5Pg~|^b*JtgjQ!%~91#ICPs7h%PH5m%@ez&J94j6e7?wXZ&`i^V^EGgWeb2P6wpTf)A-=8Sx(nCjX9H&)jiR$&KWdiV{fpDT zd_q3g<=IaSwD#gs05Sk6N>#qEcO0Xr@^bg7nZJKZah2FTVe$)tHf{i)xh!0r9oa16 zrm*{rX2j=~jAq|Ep4)B7F&Ky(S)E~4hjyO%li(2FFAA@V<#rEbQ&z_l^pC+P9qTzlxb7KAAp7hqtP9Uev`-JLn8=H@`d=Hg6@0q#Iiw3%{ znfPf$6(og`r>Fq%-iyvF&cJI^-sgWpYdPT13Bl2~^TK;H<01I}0EYDWaOcAR)kDG; z^{+0X`P-Wdi=jddfvnMh>6y;WJpZv+seDO&zKuRVSf8J!&#yZh)!_4$xj((N&IyNb zegypTcjGq`r1Fm%@JICdoD>&c$5+<(NlX7~nFC3z@@kyQ83R5?pD&hr?dwlI>-X7e zzSEf+7AIwxdm1q_xj6FIWyD4Vfb&4hAHJ23%l4Atu6ktY)U=EfzOq0^mxCluo|Fm3 z--yd@y|pzxbY;ok>tD?*WLKu$(V-JdZu|V8Rq2E}*U=$5nB0l#1S(1S_lw5rWCe{! zI@!q=soWqQcM%QS-1k&UFP^YQsal@;YZtd^N*l2Tw#o`vo*y7ccgi(yuXBdSxg|^Q zF6qUc_LraEdMx>>fy2U-vx7m-dKqFcq-^sg*}=&e8JZ*9S>=Jc-hOE- z`P-ddysKS2QLiDR*L6>xyXslT)>8Xd)72qVXd?(n!=6lQZ^lKB+o68fOKq76AI~3M zKV7>V3U2UObD2ne2u$`=7i7FS^((6#Pxi*zD52tplPzi)JN%);pzw7!pa=3n4$o_c z#IfxLc1Kq&no=K4V_~VliyKMUM#)m4Oh{eva`IZG^&763`+juIX&s-@N8Y+T7t{C| zUR8IhamWR)nw4K>@m9 z%G5H>DBCZu4$emGRLj+8bOU_nu*1R_jnQ0EGms-hWNE_Bse}lV&-t z7Eqd@`xnXW>Z~^FNuD%P2v&c|5o1#T$s3~TfIF(Qx!YqEI8Y2ZEaaw@#V8lOnru$k zMr4KNUdGThkQ2AN!{xVI&6h{&e<4q4ZeHOpc^edO#ggki%Yr%$y+ao^x=FkcwI*kY z5Dmd81^>Uzx5XN~rp)4_`cya?7_J6VCZle?Zm!>Dh09-|gPMu`9g$}7WV=eYwSH5& zMxfsMi$p#$n~xdUu$XY{9wwqEavt&x!Rti_pj*#6Gmb7g=fLEc=UWB-2v^7nzH*|+$3Xj~nm_yP@Fb7bJGLn{ zn6FkE1)K7!B@Us@>X$`}x~T<=FLh2NZ^n|J(!3igUQ@@$Lg0NMQs+k$;Ij2&-hFgS>gP%*AUv>I=~rTG?B~0ls{N955OZ6s)p2DmI+jcUa-etszC!Jrj1llP z(2zK#c=MX0%XwM;Y5GK7A$)9OgA|rdP(!l#+N!}dTc?){$I0S@AM)o!UrdK?g)i%S zdECE0eTaHAQLPRhL23@Z_fRp~Mq&YL9PBXvK13r}#xAf9(qY(;r|RWA36*bk*k~7` z7GNP_sjznvthaChUUY5-mmW~UTyc;^T~8eyn|Gf)nt7dRz|=UurVOsXt6NJcv#j@a zMGUQ}^Gim2&ha_Ks?KjuZ4*?4t%xsH3fdN6mG;(kw?(C;D5+}bmHRe{F)~I24v@MM zQG%Ee&)R1dIypvy#lW2S=^C4E3mRsuaZE*-4$02eoK48yThoh?cuRDj#LrT6LdJrF z&9#x}EoBMrHTlw_no}h;tng)f&pUoDGi>!0jfx9Q;s&{Fg8r1BD=|Wpv#_xicLej<0 zb;2e;P|;?Ap`nxe32Hg$_b`oxK9Y~aBmHpux5cxo1c+)6sP_kPxOU3+wWk@kz3)yy zDYUT!W5_=GSnA|R+u?7zu*6SBqWD_IRpIX=mq;c4$o|EWjK&+`H|gOV5lN ze^$(Yl5R#xG3QQu3m>`%Y0!m>STeWYLvz>G#*VRKww85CYQ6!>uh$Iu*v7dm>@l~> zml+O&*JMK^LmFdmjYamVot|C~E_ObV`pz}!6FOOwHCLPdSSf84z zChQ)A46N*wRKJE6LBWr2=;=(0lSrm3gG#};7t>ep(|1j4zrLp&M|9=6srEl;CAStT z>&h=Srj8d&EKl~ZxQ0amQ`6q(!8NT%VHj*K^!mwVZ-sFCRiOf?!VEzPZ2H>TL^Q|d zi3E6J$b4C!Cop)~n(C7%sn8xxc7t9TsFkxAPYhk_SgUsHrTA2(tG1DTSqql3ID~Rg zLG9hx3yQ#=2$3@7l7^052x!C}m{g`j2OouigWA}G7w_F$hxg=S-#tnsy;xeI0!p5T z_HCB#=4($_G3RO0_uuZ64Q0(pS@vt62ArX9$gN6n0 zSJRG%s@oYKxouWY`h*$dFe4jjeJrE1cA7XHayylrHfj3(AJdzpPF5=E@Sfw_hE0E z%88e$s87DCFZSjq4jz_vOZPUPID9pfO|(7>@5$Jny>Jzx{ zE(i={XBbd@jI;Nq&(Sk&Zi?$2)cVe_c*}$Y3zcGyE3IHA(3)uiGC}gu6zz;rWYE^r zD*Ly2-Sd4!lkIo~OP#Z{9##l)fW#0R!4VJZNJ!#9(bKcJ}9qu3KfwwTvfFc><}StEhVJb@4;cRUey5ju=W-qE-W3%A}fZ0G_#Y z%frS3t&#vRFk$QJ2R z7ptQq6gn~c8tbz~Kblz_dZqul_xqDDV^Z(afu+`(Y3g$;bd31ON>dxl*WBxzG7xKk z@|QR8V~2bTVCZK)5JE}72U8T$BGibDy)q=Opu?kYw&M+%mJ3^tpeiDPkS@u_os@?f z>zoqOAP4krC?Mn@Sh_sOsflelc7!#p(_GN|U!-~wVgwIsC5NS#yS4Xi_xkiCaWF4y z^Uc%rxi@MVQ{`x2j`@>lgzii2epdRAHcDu7^{R7*zDfZM=%vcdc=S1Een$o1e zxK(kmuff7&3CWn3@fF3I)n_ydE^9{XLBi$=7Ecggr-O6l1Q2ukzjf`Va%w|wokyOn z@u<{=K6YhmBn6iyzSey!LcBCS1Y86%R3#_D-h7le{r1B`F0>?|!e!)rGizwd$76|* z$_f6Cbi~g*6E@vsD9Lo*2-5dL&p4o)SAyCk-X6XHO3Eh2jWkS3YWBJ0<7An{pbFf^EE0g_n z`OOkmd{89QeaTz=^6|PeF!h#e^-MaZgX}j`Ji-;$xshKltOeGoI_1wUiiKx5vm6J$ z&FfQ-w%KS9lkFl^ewdC=3jMqJ#KM&3`hlx3hYFH!f*>do#uN*Zh!*oahB;mUoc$OI zia90DnN8Vj_Y*oOm>(1bkE9e0i4-pCXQJ5C*Xsdx`XT60g1DX&-+FnZU?>(F2|*P0 zE>;q!Zprv~L7B(#`#*G4yqnjaYIj( z+gqQiiWs!z&OCkd;PykodY!fL-YrQ5%!anh&{LZ8ZxRB}sy1chA1#anTViXFp)oQe zqv={Xy&{9XJ6wvb>EiE$toClY&>LQNQ;!-~@Rng;hhX$yqjyS&<)Tpg;d!hF=>Xb6 ziUWs4*L;JsR-9;1-I&|;u>z;O?1UPM((B8&metJwqE1`GqkY9<9WzC%yA2yls>K)- z=JkS}-Wl)iRdX`dP+*Q)Xc0R_r`SO0U!9n&&ik3V*c^~n+*l~jkU1wxVQ;Ge1!x9A z$5Lv@F{%h*vsMQdVeOfg^T;u*ie{J5MlRPS{XKA5%g|v+%rwe#Rim%E%6=U)yKszq zz3W9L`I#i{@-i*2`|0(Sk(Q8yMme-l3+%VP2HF3kV zFoebM)~1)gZN85OA4)MN0#{O1NB711n}cw=P%}3jgobx1c5bGiDf3d_e}UeZvEw6C!3L%<^(hb=|HzwmD9t$#ujWOE)Y*uLSH=tJ- zbAD&G{OuuBzNKL~HKeEO47Y6J2J?m9Lui}E;k^$S0vq{6^ik|_vDc2z8Ph70^=b?1 zQ2Fr85<$U8ozn%qKrVElV52${#V0?St^#Uih^??S-H-+6&`Try?yXg;!W~QAFfq$} zxmo9>jbH~BJ&6aFlpXXpm@!5_TpxA~>!bvhzaCoeP*Z%EQU+Wf##zZ%u!y;Vm^%fF znYPmYg}n4aa|VF2kErA-9iL<>E^D)$v23 z+eB{JkEn+%+^nN4^l@BuyeG;CFrB2L|kT>_qyOJ~zYCvnxqgd=x z7V_5&Wv|HXOm-mWg;zj#wMm#DJ~1?*{R62idg0lThm~wGQ46}H=gX!!RB1t|Z|5_R zboWq;<9cPQW88F?p=?!CY9&dLtvS0omD|?&xH(h`hs<=~`vzE#SZlz8Y&IW(nxksV zNz%2DDjjtWDnCX|K6<;V?!wxTkpxM=KL?UW^A_7Mxg`BzUBxOKEl~(3{y<1iUhXtE z)OnNpOi`O;L?az1uDGmMj`&au0&*5E>8+?U4Ko@BS64>1rWXO&YPJ;wrvFmCE@~al zvrZ1C%#!j$raC9L*C!+A&Dh;gvaKaoWXgIiU-$MW69nPI&ss~Dfm5pIz!KH zzh`v#*Q2`uSrTWWr935%RuvQ@m#DS_8z9%MJIRw`$RtVjTZGF#>cxI%XM5bze5_86IRd;pS6X~Xgk>>yL!q9tbm^Z!qBf~Jvf+YT zB%Ie#n-t)zUHkhtEP8b6q>q0NsMv(ny!b)1_w77kISSx}W&}tV5Uvw0$Nj4KQ}|iv zn`1U5rc||J;P_OJ?te%cKz_;PdBe+rsjtKz##GzH<3}r05P{A!*R&rQVhfv<22K{e zo4(cc+PMIFRM6Z%}f8*QN}K z&PRWp5do?Lcdl!y8>Sk#XJGmT9fjbpVr@>Beqz-`A4+N+E7j)pR?oH_*f)M}hm4`( zqb!=HvVLrw7%dCzb*ADMQ_aCgE}9xIntOM1A<;rnJkWM+RkLK2SL7~iTi^m&)1R9%kXmzw(osOLwR_r zD+Mh8@=7Sd(=d3d=0G6}JwP{JYN1CTn0)aF7TpWch>@(Oxld~(q0Mv%plMh?NLB<~ z71le{a!L-I(#maJWsI!hv%2P`D34Z4w>`91+GjxUZqo$-DcYffHo1EBi&%O643Z!A z-D}It7-;=(bxFF~F~*iy)r4A)?b5srO&~y=%y1A_M&xV5;-=|GAt22xqf6_h{c8@x4j~bgQ>FtIdr_C zxdA`;tDf>Q>*QkpDts)Y>c6LD0qtUka0R$>%gw3Z{~Ov@%NGl*KA*>GPzd(fVVrHY zriZ^42gPehSL!nM@37}TBuKd`CGiNVhdJq@f7LP+50_3uI1`7KJ38@?;K%giRFd`i z+6H`^)Nj9%MqXw;dA3Wne>Z+^r`<$epsLB&+l?)qUc+31`o>BbHg`c9P9r|Vt^Ad4 z-RWpUMmIL#|S<(!S|hWj|+(4|T}priW!^jRV^-a5eY-ybTSe_$mjNh)7?_g>yV%U7wBrYzd} zIXzS7-TMgttgfjwaZ-Lx{||fb8PH_9wF}RTqc|!$R-{HnK?H)J(gP|AB5f#2 z3!nlbT>_ybgp8tqQbG|UH7ZR+Ksup>K}smndkZZgv;;y)2!Z50%zXQM_nxi$JwLzq zJLmb!ljP>U*S+esuC+s`^Unn~e^cmuYE|kv-TALO34?zrmSvXrLINOqvAqd@a_;!cG*Sc2H!i#IU;?hu&1bg*!C2`hJ#uMpx4Q z?|TNc1&{RrHw?WBe4Zx0bSz3Vy?Bisqha(iRWsH{!EvYQ_@56nCcGD7Kwe;{q%Aep z+JV3#inrL^RNc)$DTJ7AcXRCDk5U_K!n$mnPxbjcVgI7naBj7s^JaH*@;6@tRLxqN zlSu7NdnpuYV-{Gi>$lfil{&7mVmSHxHJ6Mvw&_|GP=)LGyLgFX87_8#ocW#y^HP@H zcN?S9ZenxdYqqHNu9J@GUBZCo?eargD?_7)rBGtWAvI^Slm1Pzn;fe?3ggeVahOTF zu{n<9_tTzLb{(O-xkraE0YCmHbM-&V_Rf!!n;cy_;EY-N`_@cB{Orcg zFTN|o9E&=U?t2@jbF)KEcOGEA{#QYjhY9BI(+2DIoNx=GwsPuSj!Q@N)JyGCo^CdxenI45MrzFm+nL@X z@C!BzBBnWH<2MxNOg4EuVrs<8@n0InG!*hzhS;DB@BD|udqkm0(%TzPWi48EA%}0eL{@sbbo8p@@MwUSF)U#}R|0~z zTlBx6Qd8zT)-&~9ha}=#xg@q7>i@{lH>e}jzS-2Xk*l>-Kf*_f$ZZX6RG`YDoo7{} z$O@-{!iA&1fo6ykwWa(Fsy&&-@PD+Lx6uFqEw_0m01lG{y=gEZR6Q8^Eb zBOql+_10Q@porCnS@t>Iv2W;w={vz)E%XvC9kYZY1>XZ=D95#!R<1es-Lm)#5(@4J zH3MdsXDJ>O#vF)*#^%|I=2P-(knpcLDcH;IwIPGJN_yo8;Yg7S7474`*qlgsXgW7IRlhQ@-y-{~z1D6`816bjpssgxU;MSLfz6D;xIeDI| zCRn4enQK!pNx(GlwYQ`u&FOFh9W32Wdf^JwIsvXkiQM=f^>W0qDMs~$N%GNHYhFthH$Hscms7YkNstu zF-3aXDzQD4g^^@!$10~O6spJ?YA&^GYz(BnFn5_wKOy~HEzsv*yfR!Cs)2Y!Ds$D* z6-1G{%c)cJ#nSH6dO;DfAbjBb3qRO^F7grqQs&DIC~&jpRuzxZxa;Oq&ue?USw-}P zzS|g8)9SIg0#*AWReA}BbPCG$o3dD#kkVY1Zb_S+F&l=N3vh>5M_-OyV6o{HJW&a-u|)b zbLb?YB?(H?xw!_kEso=>&7)nqOxnw~Lr~$YOswXTG$XFI6|>sp$ivvr4K>qn+}d()cRF&k zOtL>nVLR0dAU9%dOS-y(%r9#a;!(W5)E61vIhb)_PGJvoNpQ=yqk=`mw{lf&+02so z5#HeV43G$XoR=Hh`1$|gVs%xZ@`k&ija1kflw(LJur>PE~ zRQ=MdjDg0k_7pVp5tv1XsmC=8hiJ$Bf&v#kbx4NyOVTL4sI$FtKzAEna|!S0=tfGZ z3=Fp28a~%NkRk@!7(MEaRyRg{-%2J%-Ugrq(SCBKk0yVlz?=dk$Xg0sEv-JQuYpdd0R#?Xf?H*Ecdaa z$TZ(pCGcza<69;de`{_87+fx9ueT`W=qLzQ@~nvuk^oDyA!H%gtIbB* z-aeSPDxir{e?1oHSS5+v3b_Ncu!+pgc!NHPbxA;8wl{#nkp#AWm4(_qeG~_MV!R^g zp)c~%Gz5gdL@4w{R>_Cd>UFK^#a8?|5#ygBXc5rHoEdSfA4Xk34^h;*wN9O;kA%zB ztcTBaNp$z@*YG{BshR*}PX5rW*8+VtDMe?k}+OpqwfIdEt(d!;T^Vo0hAa@}? z11yFU7LMem9lM%3h>^aHm?W$g_GA&OmZ}meqgwKE0OE4ZuTc)MAgAI>u%T^>uSWUk z$${yH`&fe<6x5hYa4hrMj2(Pavj`|*W*k*%qXM58VM5v%!Q5%*ZERLtYa%&KwXg0I z%PQ3d&#~f2jcesoPe4Rzc3Q#Zjq>+jd^N;C`J-4&!+7cPVQo*hZ3NT{0b>_o8)lxa z3jc@u0}v=z?pmtvVfAW@H(=5C*_~|a7(vx`5OtARQzB=((Jndt^irnLMiXUh%+=o3 zh*mY{)dk4`Z0sEBBXhVkl0lOr36()AJZDuyZC~=`sb0cwC3tnAI@oX0yj&EbptkIG zh?mpmVU>Jp2#CXzCvD7KD!8l`+qzXVcFD&U=*bR7PFW9_{6sj(B}HaRfHOKOwhH6I33w0 zJ#8OvtUJtzfciF+UC1Buo^A&i6ynvR^4*YtD8E6SH6CknoUR_Y3*wC7i9zFe7MwY6 z9TIkpxwK&+V_gZc&4xrd18igF-Nfxz$dE(9iT^H{ zPkOpx8$aUdN{(GyX_=4Fp7$v0w)=|ltWK_UGeH!`x14gY=m8dPC%k094cHiP=T;x& ze8^}C%VaX_@v$7Qj;wrrF56!l+y-g|^8PJ9WS5)9@lp@)nlig;23UdggpG#Jtr*+y zUr9y4L+9{XbG39Fq$;-PZ3T-V;SU}cA4BcaV8GTAl(2PlODRn$B&Xe;YXtJ+ev-y4e09 z(%A4%k9FQyi_~-oD5L_I>*~!LGL`HW{|-BcGM)gHc*QR_s_i+5xQZ!YyMn?GIbb2% zRqO(vy1ZJ)MaseE(`OFXFWNed$qdT??4sBjM_=q}Jd8;Fy( zpKf=002r*A0W`FWPAgynZq7Ms+gJM1n)38hwineeNPWf2NY8`%u5yNmbS*=-eDycl z^u7(kZMH_4d_OV)BF0G80=siWXP?e~6Sa(vwD(l(S-AH%V>|zv)I+?Ut}k6rcY?+5 zdWAqx34}#yOWe}`CM?2&A!wjE0%D5W6yEbYtbU^BDLKwX^D%??RjRY8Rv z#;kwNk~H0%PnB3%Pd<1;r0ZtxD-ELq(6cFve@{mMQH`ni=z(PD#_5#*qSa@ZH3-D7S9ndDN#L zl-V2q4n#gUX8+!<1HDlPdT{UF+sA|N8Z$7Kn}a_-Uik(Zdne^gNX3Y%&3uq08gC9} zU{3!a$@dLV>N})Hj$E@r}1I^yNH*fnbZ)lDbgdX4?v%%UIYlpY0P{Z zd-8R?9dnoDH!k}hzZ4!tdl?TB68fxPxkwl+lv9%f+5jyAyy>^(cBqeb4FyO(i`h@x z$*2J&FeeUPZke9|>ac7`)=dE9G8JFffK8Cez{vhE*81;70@ftJq8%-qCll$ORt=Rknc%XoQn%U?$V*W62}eT8g2YXWr&5iYtKq zoLUY4=`Hdbu=mt5B_*qb!`n$ophSQsE5pl|7P$)4-CT#}4)Z-&FDV(Z5*jHqT|M{- ze_D5YF6-)GP_xg& zwf0H~q1eMoMB}y1c{w!hwHrp+7Z~(lEwt)nj&Zo;-cRYOk?4QrqO{&}ryvbx)g3cjEp$>tF#(_mvn`VH zT{Hw2A)VYTS&wBF?Qj61_{Gw=iCTB7vpk9f+%|Iip!XxsMSqxqOsdl5pafqO7x7}N zDZ@!ye*vKIT?6P`KYN<1mu$_CUZt$OK{~EniRBckLp1RqSFDZ3k)vBw?LFcfeTWPD5w6hRsWVw}d;TeXJ!4!DU4#pzc9bh_D^ zx7!M;3pO{0_h$adUYIK6>ytpTsJc>Prb|?;9tvbQVY8Ip0q_4Qr-;h5IRvZ)4QjgXQ}z_m38&DB&=&QvA`7p0^V zc%X~!?_f()iNE4`r%Gi}A=1SQm?L2Q$=1g-8L7R_G=eO2Z`6NuXS8aAUc9p5ZWU!Z zv78?!$7~k?#R92s=-*JXjwC=#I>fl@ZUJ<^m$BuYN@cV8EoSOlri}Ps`p?xWt8o&Y zG^4FQl6AlWxi1F_95e#EnOaAyO?(yMKT6tvf;7_PSY( zPkR$VZOUM~AHr4!cAz5VG^06T>02>(Rsa_3j)#&nWU;dQ({B<-*#n;hHw{A~Unbu1 zxh$+b3rt+OzdQJqQVmDxud2MA=4JokT66SC+=mDQj~7HHf6dl!Llcx|kx;NQ=gh~R85h;H)gu`k3NMm6m3N z(OGKB=JQdwo!xQsj4agVTt!;j0nwDk@9b#+Ky{=tB+QTvI?(yYsve)_l+(tqY3wF| zl`6lz-P4a;2n>*Wl`_zM(#i7^q40TY8SE_fs4`4&ldHqtdv3VfSseSCPb}1rICBRV zi6MC2O-_WEha>{D1Fz*y1a4Qv4opuBv=BOS2$jfscfc=?rhcQb>M`=JjmFwT=3+(x z?UAo`j6JZd#o?s!OAjVPYU|3+hG3wjBCUpEmjPbIft_W+&Jxgivc?ohag?=iyFfO&)RcjLUtg=zu0=>Q8hgs6S_i8!_^>Z)nZJu<9^ zMH2F|1|lZ%Hw=!g(>-LM^W$=0wq@mF?cm+w8s)-EcWpK8mtk|lx& z*hjSsUrD2n&pP+Uw8l5PJ7x8Ya3@pbW!2Eb>*6)O)lb?0=4SNBrt)uSwms5*eS&4G z^h_`d;E@No?~8hp4!(TU3}nfxwjL+rH24r4`?_|my7r`HjC6}e(CpT6IRTvAc&Qxm z)B9EsH$Xj>-w#mFx4yOHQ=)Iz(mnGAR4;)E?#_YEL#X&o&&BY$VCuOx!X-kDQl*Ds zP?!RMpWNuKNGYIpKJlkD^V!qC_B^oa=)Coi+;ooDrHk?+exwyR0m+HVd7ZwriUYzK zXUo>PBlZmyG{!JN+{>TUK3GVfv>2=jn%#R5j>YZFVB6`YOJ`Bp>jiWB)a8l+U8x~rZ*$|56g=@G`=7w+EVRq=(QMtlA=lq;(ViVI8&>*aFX zS0Hhm!909zRV+#XxLh<|0A)HHtR{}~(4T0cq~M4zRhrolfySNAD$=N(PXaVFHOeTR zmkZ#&KMmf6B)0CrP&#ZBd>n*;2-D;nhD_-*5;e-;j>cFCT}F}W8gvl4ef)Yr0>y4< zWlVSv4+U(+1L7|HkGFESbOc1l#O#D<8vW?6U0o>!TZLVOEWs{THYig4!q@Uh=#ggo zV&=@dCk9@6-s0FT;?;AQ>B6TR?;}aC0Q{!)^d%=MnzY^*2~7l0@J{yLbfzmvxc76# zldrY1c2TRLk)t8zJP3qE*{^MzNBy!f`o2c0YU|ODoz>s6ObrE323NNdH@e-;b;du9 z8vpiiXKZB7RJKiIzpTm*2P$QMNS9K$bj9l$Uq4W1%ZB_Rv1@76hBUufA0(A8Pxz)il+n3e_M-LL_zH65tb$wR<$xK z+gxL`*p$(|U_{*Bpa0TZS|?VJ6t?tN8$nWGYkP!uJ_iO!#<(IVc&%XfH~l{#+5n2g zJ6)|`o`giz{5P*{k1g%v6H?`N6Hok3r~JFd`6o=zfApCK8Bmrrg~*s0T9r zq2gQ3lz+bUXX`9!XFEQ z?Xf50y7N!}PejQ44}ksvz%>kkGorj@q%#eqN~g?2Nm0A_(6Y`y>Dl?sEy$rnGxLe> z2eQ*)|Bh1G$t(gL@kxGYVNXy%*0O=0E+w7-?iq0ETDWVX^6eZW8xcgEt@K(R2;Dz^ z4{H`Qw{QuSa-uruoI&6>GqXVFU5`>bN+zb4osn;{2wHBbom$8aMuO>LTb8LOdNfMpN#H7I?kFYSRus8UF3nfy{{i}J z?5Rj^mqTrzsLnfQp#S&(P#>t=%o6-J2?6-~dchH5LVj!a7X4k|GVBgeR1#>+JTSpT zNCTFDXbJFQjbnV*eh|kV9s5VJTB+k49N53IS-7n8gTL>J({%vRZ~M{_YuFKa$}rp+ z9WREbkStajiaY+oz-S*zE2FFiW5%nNd{&yyWwS_wi1gV)XJ7_-1(1UQAvm`tlc=$( zHEZkEYZb3A%m4j6F9Bh6nrCB~W}IsoiTuYiS;3^VE2Ko z{Q`hhcLS?N?AfCzpA6fnO6C-yH7IqAPU$wVCmD7I*mdtNVXDnYd%V|88an{M zRA9TvZcEIKew)?lY9|Ut#@AiFxM-r#=5E)5RrgMG`!7JVj`|2FuxV%;q&TChoU=48 zRj$8Z6qx%#;H{UlKLX_zBVQx{Dt;e&YGLyQzWJyX3hB( zz`batdEuT*hK70soTK?2P*y4@mI!n>iwkR51<>N-y^OizI)QBxK*gy8=@>X4621p5 zW@@Bzsl9T(-~a706|&+r#_K8ZV(|~LaO&pZ&E9$c$*aEX3hI~MOC*5-SzBSXgA~uA zyhXNGt(~K1lzA!|htWYJ9@jgLlbGupj}bK;8;@m16dI|4Nd~~6b2?Da(a|{R6qska z=Ug1?7FaHbYVXw?u&VZ;n9a@Ya_6t+2 z$a34^fN)%R*&&F49}6fp&r9`8*I~BmmPc}h&D6IMD{z;(q>4;banOYPj{rN^^gEB1 zM&X<5BvGT9D{JfBA(2qq0Pt%vDBR~1fX?<3*O68uFeVojGl^9?3!zeJkx*ts8mO&Z z+6@6+zPe33#gB%fKT}q{NMQ@-)+I3PcYZ<|0-0?FscE~#-)^JPp3u$-Cn%d6OT86z z;L4i61j^@uMv$us2I`_?=+*mb+5^DEt>#^d(qCy&%FnIZLtlIq)7prf>LqiN;nVXQ z&7`NR3nRQ~3xw^8f2u|`45$m~+PD2(Z2{x|76W`9CCj@8Y+ro$Jc@9vbq}9F&-ByX zb{L(qEv?0&?L!6YNIOiD_cV5uura!vmIvf0AUohJ0At0<8Q88xt?t1*jtxq052Z?! zc{f&ByiVoK>oH~pG}YG*>p}d8Jvy*5HMidw1Z6oq8e)z*=T}3I42K1WP3l+*jsTTt zaXx#VweENga=GdddOBm?**TcCl(JEq<$`JEOqDKG9YY?hI_e1;7EmMju_l)7hoABn zXtJ)XieoDU2KZeXf#{i8w1B_T&o8{=nX{RFJ@zv|j?QN!DR_L^)rbNbNSf}tUxr0P zdvNP(<+I_!_Cz|F!{wTP)Vb44Al>w)p3@w;G+oEapwtf$q*lP|qdpkY2^Cv#)D*3V62})O#I*hb%y0GrdeA*&#;gLl%Ut;YnGPc` zI!I=Fgzg{o9Yqc_5)qZaAFG-Z?ykkCwjpRS!(CSk#q)aY9u6M1m=8Gwj4}?x+`f&O z@v`-`9bS(4Qn`z7x+}?rYJfSX*^I-2%#MlXo|EEvLF%IJU1|hc-ehqg_55YV=v_4! z(4Eb$iP$=s@-8hWP+1HCpIv(wqvw9AP{meQanboM1HcX9M%6BVV)r(VcI?0_Y6lrG zhW9yM;70FJHjcWCYyN~(JcP`vN>TR+);V@tHQ(cL34lpEl&VAvXB!*Q13EeJ{_nWd zz(@9h7lfPi7eL%Ak`+-x_^M5Pb)SJPpz>=5N;2)(ya!!-d7@QuQ78y+#qnzhk^72arS?rc`i(vLr4gx}JnsLtKw7Ng zLM4|DB5L_Tk2oc#+BzYUy%;HsT-*s8>Hwp$Kc2zBQ;BnMyR6~CMyV3{<_|U{3bxrb z9ovd)1zlJxd85e5X zY$HjVoq3n9GE}MFr%jrn5-P&qHjin;@qf?LGAp+J7Ei>aJ9=4gc@eoLKypGXR zl#wcjs)E@7k|pL3plGjUu5_}jSCtggI)ts~>&6skSCV>*mR>}10G3(R41_5V-iFrn;cEBl}Tu4=fF02kXO_GXVgMQEFW< zMypPoe_MtCyARu(^J@&Lz`-{msD;h1V4=9P z{GtsrRinla8okM}HMAK@J`RLGpn3gvPNafWvnb8MWvRNLMB%Or;8M)C`A=q-FggX6 zA}e{TRpk@GORcDSvr5gl(E-j5$f>S9M@iuYoKfH}?#H$RS`rNn z4AC93()OzhLvu*<30F2qr2h1dPLO z9oTaiTMrQ~Yz3%3L>DhwT0*Gi)aiB!~jDb42+LB+fm?i z63&Daykm+8Q`nYjR;^)A?)at@5tgSXvv9vJtv8UpAnR*nr!5$R9eLr~ZXAFX8!;M% ztZ6@}?K07p)ikk8=Iu?W5VFY|TGtVci0}VrR7L5={l zASqhAuXWwtRDbh2#cunUuv(9&gK1xR<0%#38&r3b&qlrAwg{9&YQ zoG`b@pW%ujtGs%Cv*yuU=e2PebiTh`wQ z5B9to}{MJgcD)C&4OVD)-uOpHr4v!AcPDMp8T@*d0J!mldY9MzEa} zN@Mi6;<=5!&yrr`m}-Oh4sz|?wnq7Y0TgRa{*C`Y8!8VIKLR+qfb|6b**rFbR1~tu zD7Y_D)5SiHHCm_|WTJL~NTM-vt-I6WkBOkf?Ev8N`&!*eI9f!ngUc&o$+h1x3*c$C z*iB0r?KTuWvT%T5-tfmIom*02`&4Jcej7cmyf^TUS$$LAkMT#9e;2s%vw`zj47nC( z9I}8Fd4F%u;b)T)D!;sKj#GbjTC4c6hEpzS49TKbBbKUR3+?R-ch*0i9?LH5h0pqa;`^>Nsy-oVY>4g0d}w3#U$&-rcZKx?l3tH_w%B| z{i^W%5f!H9r^WkL5^&|>MdjkV&+!zUk$G)8j_g5T^JsCfzG96-1~j3=9G&YxZx-dcul+A^mF)HWr_@2jBk`;^XyY7nj+4Bagyw2=P5-9W+Nu@}`YcEn(KBY1Qf z+gFNr0(T~&{Nu~qb!TQzZCc?+oQs}AxhstLHTZ4x zgwrQgYQ)0v2Q|;2uLLv|^?6740x;{i!?3Q?sb=>++Fb{y5S-&*_La=_n;CA~FJ1=+ zbp%Q25$6|XL9{P58a2_aj53fHy#duqcx6gzl8Ks`dzmL@Dao3X@_m@D9V8{h4*MD? zj*;?1K*%s%jl_3R_ZQ6)R2udxzG^|4zV>q+PQ19f4_`jOc~WMSI6$2nO`iiRkn2wip40j)X zl)h$Q>L9bUKYn!ktvavyPmr6&2-+zoUY>|ztmi62}~9=Z5v zRD5-9T~tG_wEsDu&_P0KInSutPeFbRW97S!grK^5Z#+8ttFqTmAQl*#SY)u$0w*?a`B{+0Iox0as`5IVF=j@;1Ln_~(7w2b5mPZymPeHtVWjPn=W;(A7YA#hCT} z+@gqkmD^r?t+rF=x@X0Q_kv4$W0bG!x)`%2Q)%Dk+NGpeR$oHPT=<>#y;4Rfe<|-I zk2lifBQ9d6KjAbIsB~+axX_U1CZ(TD#R7&?bJPsX+G9djI(zdD7ogAnHSO~UujkSG zfeZAY{s^ofO;Zaz{Ce7hSVNcjI+NUc3mk=Yr3BbL7Vkk)#3Nx$$kDBglbkDq03O=IvC+_xUS@u8lm-yg37OQJ( zsl_h-?S&mAwuQ(Ziz6Mt&mMM|A5T68!$5lSt>+OJg4gkw2!o~uLEU<{n2OR&smE3$ ziR2>ojN;^>mr%%?y+6HaQQ7m8BvDC1o7hx*LtDM{)&(Ye*KUtT4Hg>r5kJ%_0PQF` zC!QOWtc7|hc;Ac{=@3+GuG`#)?^qLjGF^p8zb@9Kux^Sdm*kY-m)4^X0~}j10gWAd zpFJ2|aP--bVK*thI`Y6S1ZtJPgw2?TIuR;viX>gFF`Px>J` z+eZ8W@77Li4m?x)P7B<)aic!$9QlC`Iut6RHbVYtUP+F3l4!QD`_+CHB-y;-bhm|> z&pj=hl1amTeTY}riU|mmMW@=eGdJI*+aBN8H#c$p5MUT&n zNW4|W)d>rT`6;e{8{byJW%l9t!O!#VI3CT}zRRfXx*<5&YMJoG1A28+k^ zUJ)2yhef##dl%BQCeUdi_$t&?oc~qu*d_c2Q4Ag)a;9FxRlYD`- zU2EQc#eXr^X+2DZ%Sp?!vO0UbWJv3TImWzsWeC$0R{UA-6uGSp15oF^qKNbCw_wAQ9DkSPuu2UXb%O579&#U#iPY&RNY%3qJT zI!5>5^w54Q(=k=MS^wzVH*|Aw^!^8vw~*R^cxHV|UOT0tER?%bfy17b`qmcuyc9nX zRqO;PDF55v&{%vaQ(@1=X@Y&xqse^AH1IZm(>dv zp#SiE7Y&%Raw>IM6kvA-o`1HA|M&0zKiD5FGa8#Uj>g)dIR;!fr*w3F@fDg>@jNUn z*kaq}ZOzd&zhG|E4?#O*-~j7G;6M4o6VKJIPIivd*yB8InGYN;sHP0uGRV5$b8h>| zugggQsR{7>v-#(f8~t%#DA%pS51Wbbb*Q_9lO`(&2NhCqNGlJpW=Esvcva)s!exPi{-$cpqNHAB?M{`^t*R9+iMd zQ#grZPk&%{4g9%*O1^i26%K!_G2L_Y+y4yf(X6VS)aq94iMR#BiVT~IM9NoN(U%FQ z0JsQt{gNn_5cBb+0J-3t-L0I;15;XdWmMo$+6Ik*B|ggG8Vc%vXG_H=HU$)ll#f3Y zRGk-;8ow(WI!}nPZ_(;gBj>I-IerTnEdi=Z~z` zc#JFhn*Dc6=Tg6pI5vN7nJpQ=MHKbBd2lcODtNO3GCsd}`G4cnnRi@LeS^=uzJL5W zI653~8!`=V0}7X}`es52ATI}=df+cWj1_iRuc_gnZ8=NH2KGVyI4pp16-+Ofwj+8rKZ(X#FWcvY?`sbblB;Jb3zUl6JpQ%)J$ zo>Ox6-TSM2QsdowmhQCDG%u{Z9BpnSj!x1sSzG7J9f z&u*4mUhoSah; z1&=2b`e9q%WM^`E&#PrEtmC2LaOV-JK1T8;EKc8>-sd(Hpz>Mc5hoy<^A;)*wRgzw zP)RktV(WE7k3+Kgz^i=GE7+11M6g+|?J4`@RgoRP0lVA!U~BwAts(lWvMzTcqq7T7 zJkUK~IW7H_#3j!u%Zu_urSKFHCBH~B)Of0~Vq4TI0U=;3khh37KcR0pYMOPB zI$U;BwADWfQhrs@0U0&qvN~#Nh0BR7g@0WctP}a3Bm#ir>JC-W>ro9IO?gF1V^OGD6z-2$mVMgsK`W?&f{8M`2s4{QujJ>RLkZSP)?EEFr*>`MR=*CW!5*|u zdq}!<9!X$kzYE@2JD4yF|D8{ys6wN{rs$a7|H*ynIdrjo{WitTdnkg_8yOvbu=8y2FgFkqxd z3mM8jb>lG_(z{uaGo5cE-(`V83c;LR{gsLd0@>8L_zA@}4w(|IYIixuq<#JDYm_;j)768GKf;s=2lM!W&9~llR5%sh{7~+Dz8hAOypA$n>>2 zKXPYA^k+S)!Q7)7DJS2yTOOuCrwa5(;6z!;T$3x(1^J1f#JGi|dBqm{=JpRx8JT0U zc?>>_{yc1nbIM(hCW;}pGGE+;o||MP`ufe9j3rr=*82Kz3<$pb3 zeRlo2+~ki>Tq_06=G|o62*`uwy9JnF4;{iM4_;I>4ywOA^tr~$wx37Ojn-4jL!PJsa8J@mzf`WgvTLwL|rvy)93DpIc1g``>8U!|vxz~qru zrI1exMyF;U`xv}0LN-iB@K`khul6qNW##M=GaS?3|HeP1Eg|hq`cD_07zXMYxmm_0 z5^kjE&B$+TTQWcS>-s95RgI{QF+)g_yRE4Rt5Ws1Es5I4bQ5(XgH~+=+?_Mjp1)ce z{Gtt0;pWKdkT-Tu#RM9=oXR4*8CvVCX=NBF+|FOP_FJo~QU^*<$lP!@ zW}D;Zm^|E3?w-|yb+zu@mRrq3``hGL=LQSfQ%baI?Rl0TXBOOldU85RbtVKov&ej| zrarddArjvrk73?tj}~c|<5U*X-9;BNoJy(po{o?HX`TKho9aI)CYuXab6{w3jctlq zEmbXgg5vMU2k{QIO7WdvUF_7)xnFqyOQFieBxBWQ(5d!6_ToRq>>@<<-XI1&7*BLYW`(Dk)tjsDk3=Vq+*234LuIPks&v zg{me|^v47Wa~`C9LIs8Bzqx$vb}Xmu2rR)&N?@$v;a+@wibW`NbWZW5tpN|s8_4a4 zU%2w6sicSF5G4vZ) zkXxY6M@~(!(O+N75)Y)ArwgV<>mh^PnpI-;D)4#8G2seue5=?UfijsOb-`aR2(im$ z2B#u_eo$y*Sk==O1Fe#}_p+7pyC?ZoeZl5WyRi$7Bi%1NmjAdkz92NUzFB`|ZK)@r zoA?;@be%#!BFLDy47Xu6XGa@9ZKoaVud6RMeqkKcZSd^DmiX&ueOJn&{NLq8;V8Y> zB=Rpx%Q2UWWoJIv^V9cAI8scI{gBsDzWDbG_19UOtW)F%tkH#L{7hb4Dg2XP>W~!Q z_Z-fXUewIwq4kIZ2EIoi(pPA7)tl|nttod^is{Y8SHr2DQ)a(QTqYMXh5hcI1SHka zO$$t46VHqhJ|ddwO8$dVm)&lkAqKEcG4>3-)_F4p&7hy`P?)dJ+oMu|jLbK+z*u=% zw4+k?W~7ITRvnzz_m0}=7C0?1e(Rj`9-Z5>{rJpMy%9e^Mbj2!h{v)3ZTwXb<~8q7 zezUdDDcm?)T8s*h`*9j|axZkJ@Ix($c)Fr&C#p(&#y!t2PHd5FD*H`T`IzO0iqg zohg0I!k*3_#SR=h1}VQ$dR8a;u^J|P`~dA@^$HvxVLX!I7g71prwQ9~G$+SY{8sso zvCg>7x`UIV{ku++V=u&Y;P<%kEZb=;?XbNOFXJ9sET7WP4*Ef^Rn)gg_GVL`%T|~5deNO z&z##Wk+|-2J=^$t1g*tWrxL1WEoVI=slBo{s<$_DKE(q^YP#s&#$VVYe6F6S-${J8 zaBE0HCFaDZUvgY+MHxOzSo4}u=5K4-ep=w$qTHdv8xm1ITIU+l9HyrHGJJWJPf($n zm%0s5uK|^iMNPCBQSI+>^6jksxdxcm1U&zeRb2i83A+4A4=%>uB{if4mZZpfs)l9v zb(6scCPqz;7k{mcZe6cisStzTtN&?8@W?*p0%y1PhI59?azYBh=NkS=A2IZ=g39 z=BgG0P4ZhcfBSW9ln3}Dc4H13wVBxpC-^>rq4>Ib_wD)TqO6r&P<9z-v z30?WBsPg@ADR-r>)J0`FDdc=)yQc#UcO=EqZ_Gv_siUIxxbtZ&!teeOyC2Sple^D_ zwyeI%Ymy*8*w=lPTz`QKD>a#!?K;(B8w&|J3{@XtV%5@ABNQS|zT36Cy~2Rsxz%*? z_ag}(`k!Mid)bykJ}!JZ4ejz8wkf;8^iNA!>piapt`5jkQES_;MvmS4v%xFbai_e> zQsk2&cZ?PoK|bQN7ROi_rOx~wK0PF=U~CsY(F7Upp;w6M<6iAudlM{U`(_efegFPJ z+<1-j^i$&0ZgYJi^?6|nDc+P@81SZ?NrO$?fqZGPSohmJW`wYz71mcQ|8A(X@J4CH zpa7BgyfkB!R!7GV^mwHx%KvwnYJ>B@eUyR68S z{X-?p-2tD>^1ZjcGoV$|9+|TrP^a-8vqyy~of&tXH|e6;UWHOlj@}9)m#*1<(vZ%j zDP>G=T4p0C#!^!B$Y{NZOBal8_pIxgn6k_2KY&x597ooWeHBPbL7U{cD_uv{1iXI1 zL)A)kB~C0j%aC5}!e2j5Tc?K|o~GbidXEVXL@h--lg|Ijy?28ckd5%DvJ%tSd~PS# z`P*en(bnB%!R0${^hefx`UhHROb8S)2^~SdmL^J5R3Mv%j3YxmZs(^@rU4<&vc4=_ zd;iClBbh5ns}+?gT<3v;G#eY?GQ$(t)+fwA6!Wq)-bgf5cmyS8c-ZD+`Qz5Fq@K?Q zwH!ai$g_E&A2|Iv*;})W_EZTTE449!c&B>!vaq~CsfZFb8>z*2Hl(?}&t+UTo8so!<#9ls{;_JUVUt#%xZtOC`;P{HaOzG9yGhMctyrnX9f>x)Z5x9Ptd z`rGuFo>t+UN9xkXtD{6UTYqudlq?xNHhjxP0OnjtI-kYNS?zV#O389|$$k}3e5jRb zYt(+lFQxdCeQC$y_kH8-NC8+gy)#s?r67qeAx1;TH5l@lRFHaa<|0#L-aUZ>ap|qT ztZI3in5Kj>$#mwzoPo`n&HN>L1xGNOfjY2uh_M&%pF*@e;L|jJa8y1M7Siq@_cpq% z*jTYDM&JO2e!*HCPKes3zd8Afc(^ll9xmY|-|>5dagKKzOhz^E@QLKdUjauA6Qj~i zj}!QH-<9;~(J~uG$Y)n4*P2H-H{rBo1Ms6{VJ&6a(AF`alF{GRrMjk2(OLlp6SwfrPu*k z@HR-aODWE^_a&x|eOI~uG%VL#FfY23I{9Dhy?0a-+ut|J(W9tHQA9e3ND~NB1nCG! zktR(#NE7K2nv{TzqVyUN0TBotq#LSA3!wz0gbvan5NZgWJJEC0-}|V~``)|mUF)v( z&(h6xbt`ub2 zq6CWS0pPH^Hd)0n0w#NrAzOxWd`)vg9ApKkr6d5A7P{IEMRsP<8y@?1KfGte6VEOh4#zIb1&O2BJ8U*Y{-p_ zv*S-xF6=ob^@P^CVzdn2x8qUemB zK4nGVIk_*fEUv`R+AkWe3}cJ~pf6zC<^S%t80UIg@v8vH>ex5V^}8O9 z0LuQ0N&a`h9syvL9&**wgBF*b2Ph6RoM-F3XTM(cklnelsptcwxIW^o6cZ0ijt9yN z?;U6P19(cz$*`LzISzMi8E_#0tttnM0yJNK4f!3vKz1;g;?BXwS_J^Ob&D&ZAL$-; z{|53TpvX=r@2VGtg&<2C_RE*wW*rvNglb>d`Tf-ac4^%I$i(kpS!4&jJRFJzL>--; zPY%_)#z}X@kNvyeUi*pn{~w0q{~5y}SN~8E;Em-Q>!`l2qc4U3L?q8sV=Jrus)Y5WxRKezvXukl;5hg|2D%`yQB|Fho|jKDP8I_@#c%QG}Ct{gi^ep64s z>G^!2+VY+9ugF&x>c&sS^#qpU=&Fd*n1IJafT{3aTsd=)Y`zPk<@qHei#SpIa0&I5 z*)BWK2r3q&1bVjY!_Ka8Mi|h=UiuXa49EdUS`O_{RWZ@FFDTA+-#r-R*MA236`>4- zFb~6Cx+G?So#rDTQLN58B%=-0rat!z;o?oi2|39vJvaty9^NAjcLF^tE|DJE2urFA z{n~%-SynXc3h?RQN0Y~Y?{y8c-Sb@pd;fAuy3=nUe0!0l7t&N(8e3KZFZzPVsm zylK-!JNws9i%kL0c`yy3mj`>5fk9%xL~Z*M`LLq)Ms>io0ij(@oj&(YA@DjPg;DaI^(~c_Aj^yCgwSp~3C0 z4uh5LL_pC&it$$#=b4*Z+o^Q5&<{BC9BrekH14*x7iYd$Z#d#4=Nq|NPJPz8dZDjJ z(HavHLpfJHnOz(@o=R62ixWKLyp_AJ&HSAUB9`8atE~ofwH8$xP^&$mS}7=?Tp9AX z?Jm(`e|4H`&a@+X+2%Orndy-xSzVGG`(JLZ&gU|q+BV#jG}PsHjkrb5{gAjadM+UDu>A)5@EUm zk_LtH{fzi!O4jR4EKsuyr>SY37PnVy>%A?3WRrpT8S~0?p?L^*ILz}^$|!3{^Q*S8 z>mJDrHCS%Uz?JKK;et?RKzNu+7GK%J{7MNcqJjWKHF)cVMx6wiVILOiYFA187oMM3 zpoXgi7D%jjwK?A^$g3G>PMo`5i`m8^YqR%APh?x)Zb2HZ_JKm&YZ52d9TfvQt+|l< zOVQerr>n|*xv8eK|4MmtYXgtaXkD*hfjUW$#Lm^}vymqhYP>Ts(Q7%>M-)fsx@QgQ z-L>j*O)eTMn=O^fEC87&jxck7(GNdMc3EK<>}r zFT{ffvt}dR2C+@tGpik&j(mO+B0FB5VF@6r)YM49F!W4&+Es&{N8T+gtnjmErvTk3 zGu-=OvIJo32d|b5ujMLId->db`^>{FpmzsZQSmyqfYM!(J1%hr!YvI?&XMk`<pXST zz04oSn@#I{B(>I_gP57XIX;%EZ}*vD z$lal<2DwM0MnJQo0BroQ z3wK_)n#{KLi{btDA^>%C$~_7;XI@OgGLTEh#;!npCG=6Ey3} z0lIgYHVUc@IEpS*4^tJz78yY>WyyNeQ?yub>$)`h(0)LW+ny3zK)$eh;glGIaol{Q zpSyoEuoVl*?a&d5`F!DQfXjiXedTf%1)s52TseN#%VRP~ztSZt9}nZxoQw84>z6cL zss}}G?aBugi$vdEd2Z~DG1j=S+|z-|eo?R3cA0pfuOyC1wT$;aiQ)GO=RCj8a|geWp4GQrqoBX5 zS%H~|B}=jzVRe?qe8xmrBbporiuXFwA^K8yvcj(MnZ;c!iK!XhSn!i3mutT=fHtb2 z95ntk+zmEFwsG${XBPBS?4w;T?-@FrbY^_ru2ESZPRwQUN(R>2pj{=NvhemuXV0DZ+ZE zu2-PQ)F$+fn|HnQt9;*;XCE<&)^UP{iaDx&Q!1i<2E5h#1-_fPDRf!#Cg~EN#5!`Z z3%fWs-4t{BjnX&eE)nh8b1`NzpGch~0Vjt@zJ_s|3S4uf0T3LMxNN&y$ffhEnfRsY^Q;gS=vtoL^lDm_szzm|W6T+Ndt3xP zWN-a!;<20sO6T0S=M6k1-i6s9Drn3s8Nn`D!<>fkhewCf?`6@&y{A~EulsUga0mvc zQI&)|%JC#8OM-g1a%8zz-Q!iIarCnl-ZYI{l64_@ zG_jd;8hl`sgZReM?0rPLn;3#pbE@=G#+H!rb)D~?BKJNt9b)!6s%r!(w7j8pY^$~+sXvM8Zq)wrFr znBvFPvccHFwe)X$JNc|0bKq42*T6nWDyBBisefznxy0npf9exFSam*+Myhl!mpwN= z`MQ`CF2o!+<6Rb93``GPcdO)s7Ov(^_d{m-uucOR6_Lf<_^E zRl#ZCu%H(*>F#Tf%ck0!>7{;g=eGC2N6ec}p}Al_$T{#@m`?QlhZ)bElI`uP%OK?b z^6~yryb}}vA@-fDkxXDhEb%Q0y5G6t`gd|;aW3ZWQGsunY!KDR)I(WLAfH{{?g|s2 z3s``uArLZ$^JKZoko)yZN7<5XU8PfrS_ zM(WHLebT`w2_J|@iU3RUa5D>N)EaI)r$ChJV7U$utKJy=$X8I#*NFLuI4g z-Qx3G#(=;jA4fA=|0xIJ1L)YHo6sgi@f1G;worMc6Z^5|f*j=SH zQjc*Nu#0A%V}U-gSds;W?ODe$xlfR9SotV%zHxeny`qOxji9^ZDgc=djz4(OIZCU$ z@PrJl&D+6={uQhZTlRIk=A+hD8XC2f&--E76JGLczr?jRD@=u1#rhoO0F#1_sA5$JjkyI3Xo&3` zEX3>fGAk<$!LwK%5{gB-7nC-i#o=aeciVtKlgzDx>|35b5r6~ zC6i~F>w$StwT&N3n8WWl~TLnh%fVFKUDls|O>N@kbXk`6y8#cI@LT#8={SY)gnJ3}B%yjl6I;(4R8j@`WY4{fp;Osh@|PjirB{35Cv z`aG(s%oQgVQ<`8S)12K0zb|@`vF;R!`iCulFkG4;2Q= zOKY+9*?X@}owODMN$5-#?fGY)sudQ+sID4oGgCl;vXQ+dd>?D}a@Hy&c&vF99( zn#Fj>+h2f=`Cg<6XUh){2&+18*rLiRJIL&Vlo$#Ew0F>Qbuv91o6tnuzubw*AE%1r z0A+z8FY#HHr4_%dd7t1}8VMtwd7Dzl>0qP)eo+9JM~7t#+qy`J~R)zn}JDx$DXlZg!T47 zj=&1;Y7PnG$0k7q7AR)?_N~q+<0_X?94BpResrQGE>_m=U{xAHrY4OF1z`;ZJH_g5e0+ClFF zN!zU}Kq7%1DLezI`#QnMwDmO2;q(4tMmnHg6WgNrBQOQnH3k3}3vhV+@1R2jEDy6a zvW8OsKlruRp5FiNuOqg6r)GIAZ2+8#Ksuc7@l<6|`7IO)V0Q#4(($Ore5nk8!`d?s z$-2kcU@Hl-@xQ{K0a0^+rGNRHQF7%>{jf8QI3GaXH1v)$?us{Vj%v;S8WH=3U*?N* z(RKs);)brj&Ds9PA%D0*B_Mon{0b^20#JC$ZnecVb)zy`s4E9(G>+X}cY;*FA%*HK256eNZwD0c`NXNvYGdTjhh!jrJUa3)||p*beQ zpt|VsX81Uf49&0ICSRG|;f-W*Pnz-*-C0iLRVGA4ztay9xYxcEcg4D#80K@%=iL4x zV*SlkPXPjQw=z$-{|A{j(nF;w(E;a-DH{5gpXG!QT{`t^Wfx;;*^!zl43)*i`w*5ffJ??ME(&-ov0B_7RVO0a|4q#sZgAPJs6UqwsMSNVOJ3bTdMfFTvMq2n zCUODJ0r7F%=Lt~YBZBMzurY~v%(Gg+s%nXd9{uieh>PIU`nwsiD~=wO^p{59T-2D{ znS#00*d`yt(EzEcPGrRbK6j&959a&uE=|n6djv8aJ?K_g3p)wcm)(I1Aog%x=Yla)<6yr*~f_bDY)HIQs?mmYA58d49E8nhD3GhGUzfmmF z)J3-C+wnKcV9Suj9fBE++@5&JlJ{G%YJpi`{i*b?59hxvAA)sy^0UrC=vf@{aDh?O zwZ-I|%_;bWE5O`Ejd3TK21N9j_}7n6GIU=K1fGjt+ATHO!unV(dt$-2>~Vsv*IxL0 zMPvE|diGwsbBqR@rtA0G^Hs<#%sWvqj+kA*i?!Vr-a~p^SCPXh7)Ts+_g=W&ly3cL zAE)Ii46&j;T1!wpX`#TbY(;jLbjE!4keoWA7(^Db9~OS_nQ#;HeoVZxQP zuW`C%8PoxaE85&b=Y?oK0rWFDU`d6h&#=QCqZPdDQXirq1tO_ni05VuEE#GGvTmDf zv3_m@{YL_#l9ZEQ00@p=jM`hN8`!>0p^Aup5i%ZkJS?!paM-f4Z{4`)s|kjQ?bhzV z3Mh`>6|K~VUj~>Ck16A#Fx0vn%py5;#m|WCP$00BtJ*=;WsJ^rodZ>TP`l> zbf=(&Yl-hL(bZ+t0En)RG{XD%@3rO5n0{!SuU((4)9K1Y%Yq6Nt(N8RRt_tbOHK9G zftvd)P>uSiR{>7%*(SQO@_H(9%&1X3!iWW)^ikbG7DTYKlx+Ge8W0REC*(-7JQ0nN z-V*oSA>_|M(kja(Yt4{xT?r!((^IjPk{(99C|oabMD>^WH&Zj^>5^xw^Z{SSS9i_m zn@Iadh)h${jX0IkCAA!T^4R(sy_C`#tmF7fq^Q#+_6`OXC}olxgfr^$oK%7=D841- z)*qtWgM~UrBS2(7EfTPQx2gT0#vo(+^-Jx}7?FP=TU+|1+7O zT2rrk?qD-*k7V~sZ4dZNNq{l-bzDd5hYrAP)Jm4KgN-gTt-nI*(q4tH~@$_>?%<)_u`Z&vc3SrTuzEB*xcBAX>$=5ztA3%G+-DO7cXxaBsDW zicoZUd?e9{MLb3MtH-U};2mb_Yg4iABqjxSkO~@q^TL?dI6QdR=Fw15)Rr6xi0SP! zww}_Tv6bd4FJgbncZ&p%EVuG%1A=VJ*!_}1Wzabit6>+sD=u4T_&&!|KI^1u`ARvF z__-ltUf0(ZIY_>OSV<#Tj=v2#+##V{*-k^`c9Ku1V;E_PWBg&e`TCHi|DcEHYOZO@ zdyrlYg|f<`RL3CWdu)e~^^>~$O_bIj<00Thu-}u^igbIc(4p}JHJ{OL<8~J4euQK- z5fRg`yLkLH9yw6mYGA!DKmuT+(wguHOR8}tZ9@zBo~zU-8y+3E*5WwRfoaV(Qc%pL z8;*A(d0P5(cC5g|0_C8o9`U|%mB4!`aj!f);m!WZo2RaKV8PHr);#O%N-3JcC$AeX zPlMrFu!TL5(QCWSU!5Hr#46#1F30H8?=p1KG))g-PpF&Fl;^NGdVvqn_EyF&FG77- z9m=2zB8Yo5#hK|hg+u!>@dzg8Gjzk2fLDb_TP0cMw(e@F1TU)GshmtVG!9L6;y8n} zN}n%e$+DW6s6+~#YK?jcwX%`B>;TRLSGd*;!ng$nw`NrAs?U2JBshDud}%~*ZR80S z6?mrhy7oznwY?ytL=(R;Y>}rEvq0BbTPGBO z<_m1?V)Kt7^Yp5-I#_ZFGB(V#i?80t_JI+xMVf9)5MlUHQ+dup^ru4Y=p;a`IJWCs zD4uaHC^Cde^wxO&L@_HE$d@dKzAqtQLAchX0@oS6d?EKUM+>d>75+!v2WIX_bxV zp;a#<9QLR}$E4qXIKWsoLNe$NaReZRjOBb+kXM85X2`PCQh~Xo&quSnEZEgvAtlbW zHfmBJm}*rYJ#e#=zhDhG^?cDY3w)o7+A?n^PQ=q6Y#Df_T}ICh1%_M-1N83azYv>6 zPJwG3jKsQ0)gE=mC#!eKMBIIQq#gzXFKzEPA{=5{8#Y&^K9wH0MN(tSHRJ>5;{ z_9(G8{ZXCvP10dYjZ%V!kfyZ>YmA{xPkMAS{JZI5B-*W9^iE70Q*xfbc%;hYYwd7@ z3N*#}HHAJ}K0bf1F_BwcwmG9EjkRWVVqN;nBWR8a#`r4ab%Ct*>cC8a`&hc1T`5;L zD0k{2SIU0+B;W{|_FNh~LA3fClWUMUb;SeyIW^K)DX=mSE%&WdF)YTdB|?s@;`)2xARlJ|j4nt#+gw1-()fWMIa) z3Nt+8?z{Uylv-zJ(p*5nBu|G1DK-7}I-`&9UqllB%IW@>gaPLI&w0fnl)S)J!31-n zNg;w3Y+D%5H8%G=&^RS37lZvI2yskzivD`34r{rO>zu9y?M0%Rd(;U(5LrV2C& zyJK+$suT<)<*E%D`ettc1AEJ`o?}Qzer?K0bA{9UA>ig+Il(bws@(es<%j~K~ zeqlT%R_W^41-Tw6T#&Kvj4MNRfydlppmB6Opjuf${>A4unPSvUFL@fiz2)px2qgI0 zuP||nOvXOozg5K4NduWfrg>U_v~teP035>xCaHYnZSnUQSFw3M?Rqs`%0B6@2Vja0 zYs>XhzLQn)j?t91>F@N_^Bj3*-q}?Tn~d&H z0q^>U91ZWy7)C8>nz-qaLfg(NbOhUB1uz3x?(9qYWRq|~WAsXS7BKqtG2JGg9~kO! zT~#?|V5P^>9<7`RB6vxXi@qM)dBqS?V48 z!>pXu!DS;~r}hR*pR)Inx9z+e+N(E9mQk)PLdlSQTD=qy2vqhB0gvQn>^;OxC)*&- z#(8gv1fL`MU2V|GkR40Sye@@jN`!Mf z)U2Wh!+UtlYS*)??&6hzd3MG^cs0Z4;9CebQBu`!{s4Oo9_Q+J8m6G0w&Q7GTi#wB zw8d665_*ZRKyyQDi~=3D;(?D}V#1C|ybLGKh^C zq%hqmmhh+-6A~=f!O|7Wi$hh@nL=n!Cw$RckOcJ_W_5ckA&^_a{8 zdM%YVXHRVHcn>F^A8!^n5z%$bsHUO$E0#fF9} zqH>_mY@}3mQC9n7^`^N}t7>r<&ca7TxszgU#>KWyC|5*=z;>M1-<}RhOPq~ zZphIiU=cVbz;M2i4amlKXCY8nfYFk!X&R`gC1>7onx3l-pU#*n-K>_$rBkzxWt_8~ z<6#V5T|t*Sg!PvHjWlBN(Q+p=W(96nyE;Ov`d)M?1U8jg+vq2-J8nj=Mn;ap zcZ)oO?UJm##&M?%CF;clA5m)6Jy>TKJy)YR#M6>O`;tEq$iwBcWbmgRiEUa->?XUa z|IM-7Lj_Ppb(3qCAwIm_=Rq002V4(1ThH3!_K-~_;R=xck>D}RG3C|9){A&KZ1h8b ze1m;9cWq9?9~jn0IijSwGMyA%S`P%L3#yV{xWi>Zufz*J->Dt*1d`UxXDeEpdSx=$ zcLrBpxpxIB1#CyKQP2rMy>;E+7jO0dEZ%|wAdMWaJ3zk3QAK>v6OkQY+A44JAe3D(Z*(II(#@Wm)2kD@41YrF9(-!;y}_uD3- z6c-m=9H3RC5qSqT^sPEZ=4jdp6iY*Nuh0# zQZqe#V_G;(C0l$7J`F(L?mmD0wu=Yg6#_i~WLGH`WIiX@w|wHa%Rhq19>4`~mE)nw zJHZJ#PJF-ZJO~I6&|E9^M@~!aijAuOO$mS$QPovdp^Ur130jquL`2fRp8kJx1Z)8N zeLBPY25pxH6dR4y_qvwZfQf*24Sb2Xk8QjWPE_^Gr=6birUq8I?Q-er zPY;4-B;n~5my6%ed;9c9Lq2{I#I?__|M$NKA7}qm&`Wg*vP{naMERdj@R^_5beBw9 z>9`O3zsHE=PyAF;$%YG!AL@Yq=bz7i-0}kK&WUD~e-9D;$5qcK9HXL<{&hVNXSMG6 zet($%QPPv#FrpL9X1~1Vy=&%Y)FwWh|9p|n3jAZJIV7)AvXd(BbWzaeim!!0+I+X%0WphLuucK} z`se+e%l@PMoVt(;m&+vXmJH3xYxnwCeyI5*1>X=;dri8mY#GGbV(DD zDRjq10p2Fr2k~+#GT&qJ)?9X7OZ6%8`-dPVl;UySkKBB%smaW`NHcW(AglikNb{(X z^8{u){5@s8;zx3k2b#iCYxNuJq}uQ2^5tkp4;^AmS1psxlS?kifnct+g7UzY^@u{f z5u&*D;>sW;y?4gs#u#iRN|EmJPd#NV(f8NZqQx>M^@60Xnx`+WTo-HVO=8yK`4<2W z8Vbl?#2g)LP}mB@kvzKZYEj)}SMB6qp)3oc_2?y!5-?HU=~s45#3~^&#eezSJQxc0 zj$U$oh;BRbX+33YZ|{l!Y_u&_N5V2);uPG=qq^_2K^_S9s}5B1D!#fm#{$l;l;e1A z94ef%;jZA;D)>A$0!ZM=N@$_4pPvHI0(Inl$i{!dpk(Ken7PUb&t4b4;w!ecayClP zCkQaMYW1LErTFD5`e>1XvA|v~!90aZ5QT=SMsT{<-y95(n;{_FO84TpoZkJ^i&=7v z&@lxK$5=tPx1Cc16)Xa`7^^)UtT%#`ItDkvV}7B#h4w>pUT6f6@q)rD-Lv2I1E zPneoK8*{_NM8o+gb8$O``En457P+U3_e#2|2SZ|(1H-lUH0Szrw+7KH)R2*+qgYO} z%Etn+4dkwg5}~UgjXE6@n;WXvzhjiw&xVI~$aGntQz`w?WyDCY zTuWDEwxx7`9NWN~WroYnlCkouhMtDkL{}9aqQon- z4vZLEp6|$I7%!Nhs(YpAdW+d28hSh>Iz1L&73#Lc?yJt!NCqy)sx5BUa6NlEC!jN$ zSFTNo+2xsjyD6(Sqj(JCu&9Tj@anED9D{If6qc@YmyZn>QIEJR#toUl`6eu@ngNrs zyL5jQddy!fd1?!)+ajdlT-4^c<;eWv-%ug?sjF1M4{RO{UWLhov>p(XRT<%gfmmT+ zq2_yi%@qyw4^u{-uE9&-2A;!*nVeR*ECzBsPtp4ii8Mfz%5fTCH;%O4sjk#1M61kFlw(p+WqA?ow>I!-6C}f zb|+-~2wkc&@)`1^XiD4&k;#89lE#op;6&FBi@;51jM0kw;T(O!d`DzR%3GLmkYucP zM*KZ5=f+5r#hT4=^VH=4bJ+#~;`765rwUQ$_E)7en8)=3yYJUTh97y`)lSh?U6GXd zQi)M|+itSRaA5uVoMrEN=s6vUq|v>iB|IQAUWD2dMyh1vur9<~w)8-H_LuzX^%snO zHS|KU8)iQB6x#2aR+>Vf{}dYV`b-weEBaNeKBE-g?x7H!I)uzFHwvetPb$owDh6cu zNWmn^HUR~>wPRFuZml6ti}jk#93yoRN%HhVE>;iW3NN*u@S2>&cLeO_zaQ4VC56u$aL)gH zevT?s0zbx#I1PXFCFpa| z`M;hxzye5}avj@(lwOP#Rp>*S@0a__oqB@?GQ&8(OtE^C2?=iRnK||m`VO^q?1FXR zhU!M#2SSYyUWF|9%j23V0A72$nO=NPc(*-AXR}6a-|2F^6)5grXe0{jWQx+)7<0z}Tf{)Pa zEi~d4P7b+7lufK#DvaBp+!$k8CWHQHy&4{>T;jNoucP zqD*?{73+34AgQiviD78HwcKJb%cwE1sZUXnUrhCf1i2sgmH?mT~#%#=v#T6 zvz6S2_zKm`oE+yU24_!lAtN%1FfoxKV4xeu*cpy4_`M856w4@GSt_kv4e;-cs#yY% zd+>z|<2ov|W3-p;pPAD*`^N+#n(ld}j=3p8sKBBX!kWU5#w2sh24z8GJ2Y}P$1bSX z(twq77Y*TigQH}DxSa1T`g26DyaTq9Yb1gD`s_ciF8im1E4i*&7CRdh@PP&{{ZF!g zkF9g1!uU{aJU2taYq4{@%Atz_-mdo(-&w9J_|d+y{5$q+?UaGNe%6u`qDdT@wrDKo z+jii=s64{$yh#Uu??ftkwc-$scmait)9`FD*ZfbCpaxDUptz=pnFRA{Um)c^&;SCK z$ZY-7-^=;asJF=!q56u4kI$#?AWxbQt(eC87`k(r4w;6`XDq)+GiyL?Zkg40;5jOi-wAI>xxLmMUYOF|T?wdgkD$Mz zIgA#96>U_|FQ(WR5wfn;>x;;n`f_UC&)ywB>8>V-%-MKXV3wk*O*x#XP^o;l zTA5pA07L09dy>n6NQuwlWRs^1@lrdO;WTi0z7SbDz~uh(k@;zIU)z$_pg0XRGaRYk zJq}FP^xu6d^$Kq1R&yJ{P&7SXkh5}x?~VtJynBr8a#o8g(%S28yWO|Tg(8ny2S(=h z(K?4@bF0`woi`c4G`U3IQSi&MOyV`yQ1)nsDC^8Gu5p91942<-lp|B0{|Y$0DAB)Y z=_+@2*Dyih%$h8{oMH|JnA_M-n4kgLvushSW`1vJ8nVhOsBYtC6YPt7Yow5~(q>UU zdI5j9V7Z1h0OsVoL#nq87EJ`vr;Dt@C!%522kV>Ig3_=mk&r$QQyO;KCC$YRUVLFp zoq}ER0v)iKOHH>0vR4$Py@yU+N%k3%>McgOw#CyZP%fJN@)dg$3Jh_2h+D&=@??(m zm$hqT0YW+pVQWrH0Y!jX zdH?qK$>!A{0h{>@_h6kIhz8A!U-;+KFS6}j)?jHhcX`KQot2HeMT(qj3fT*qh+962 zCeG!{5@tk=r%zgoGoeF#dMdfKTl8IpiwhN5pl^2lG_>%gS`e7|CPVr~9CuFLMY|*c zkxS`q%BpQuP#IwL zr~a@JJ7kow6(;%3yH2?K+aE{_Eh0he(>cc_a@Ew3ogc5L%MXZw@QbE%8^!hfjK}Z) zxW?qk@9PdiAwyXMX{l9P0#E;VqMbh$vBzn(IYceGZdizQe*Cuc4WSr~jNjpirf}|~ z`aFK{DGM?+96RV$xaT|Ds;{Yr*S>)e=YL$xqY-nW$X4i-JnD(uTa(1jGztQyK%-Cb z&DpQ?)0`Ukb86*7!$_g(oG=9eBjMyZ^=-SDj2~;oCE(9Bk9(g>J*=z9B)_J>kod)~ zI76vxVCoQt0WydA8-!X0^X=dLibVc=NB$dTtFL6KXletFGjaewB3cU=wz9}MNHR9|>B7VZH)8TK!ifKP`;+r^!j&Fh_#QkVj5QNs z$6+!E87iSa{^-O!Ylv#emkCjRsczNiYwGYz zKkz6EV!lUzc{2|Yo{fy}mr6Rq`7%GiEFc&4>ak5J&GNjTQ^$bwO0^HYFc*Pb6c#+a z^=g~W7Y>YW9o>I%{*e9@;R^rd4ylJudjEN?V>?0Y@jl zuDE{=qK_m%b7e^n#W9Vg0>VuIwx#H;x7~GJy!`8u?vkUC?2@Q24vajA{_xL~gCVr0f zGs`EOTL$gC)>zEmu{D;D!|6A#7oUb_FzhypgJC_RfA2o8bJD9n+)668{8rvP|EW#l ze}J8zqwvCKk}=rOj8^=`d8JU(k_wCTnoM5*yU5#=m@`t-0=Biiy%5$GWBZEQOO!81 z-I3iG_1j0Jr=+*%F&?Dt?LudX7HFf^a)DwhY? zY4s#jU(V^Z!O2`{fv3EbvMZwQFZ0c;@N>v1-mICZb-gP*z7i-B8{sHLpQ?G=;sRJX zwex`_K!^ir-{W$$5zRpUQhHz*3E2*2eM=V_m z*D9Pd%B%6bfsJC*pIv~g$hn0F`*!gAhRob3mA*+^f%|@VvDQxnvLEV4-^zwA&N8@a z2?Is(?$JYLfZb!D+QUqGbG1M&=MK!?XM07F*4M;}t(Yg__m|{~QsaksRjeiv(ee;J zCbp^B!l>N9)Q*{I%YQSwcRAXH^(G>p4~E$Yvp}EEdGJMXATKsfi5UaA`CK`W!6K78 z|K=~c_Ws8pyhO9j_sAJg%V_cSv_-htoP~nm`a2E+Zsuj%%7gpQ%*Q=n&E!#YBvitE zp5~iWO6*i}O@G#`*JQsyT)9!Bc>k_x2~8aP(ZWmQm=p$tdl2_3s}^GI-fCAM|at%Jj^^ax-r2GpVs#X$;T4 zaWyk|fzOqxy8C?M-NB^vh{hu^T-9>Wj5SUbKmuO;Q^11twmaz1) zqxel>;!?J>=K%2OrmQ`x;MHEMF2_8?Nt%qUx&owM$1rh0b{TVa(hS6goW*u4t1(!c z%w}rYg$6=%jl;NsIa!*K~O(yO>)XlvD*;JdC**=Vl zu2&AKZjxcIV}Yh-+SOI{M_?nhA);rLiw0vNRVrM=d>*kzSmMoM0P&jqjEaB)AD=0! zd##5vu^FJy;BB|v*sY6?R5>!Lw5@R1UN1AY^@Ns-AYV9^W@b|_9s;sP%5fi7SZm-x z-+IYmr7j}V2L)(@PoIWQ^L@*^^Z4Tr?#!a)vH!b+w4_YZoyDAZy58Ki((X9@gn*@ zdlU$}E;Xe**f$Si_|Pak4fY69)j@l8I&BCsyde81PrOtfc-zZsJzHLJCAei~2HBIy zYBc|_2@A;c@_TFjy@y_d2Wf>n6akF@BH^M{41*HpnxLxZy@!U@;W=I!gSchVklROM6)H#-;*$~w2!wmNiV9nE`1*=f8Tpzzi_gYPme`iu zYcq#iEHyeqU8`!226P#RJ$R-Mi7^?umXuIkfA%;57joIYjwc1{FZ9kY-(wdg6AT zmd$F?d2tW6(6u^fuZ`|qQPX<%Kn(d=k9DZ(sh)=(N19bGKJArtLrWu&dn}y zYVp;TqT=BcASOgp2E%~_&+!iayN2Np4;dd_e2?Q1Y`k}h^@erd7IkM^N+xBp&#Q#D z1tyEa64+ndYvPsKpGWlfX*!z!+ zjO>EtN#Q34uNf9F*D9;iq@EtceWEkCE?MuGVmZ_-&!`@UUbanrZNCQHzm&IJ5CUR4+7?BHc#`%;x^VBsUxWE z9&vE9$!k;vAg-%!xp)e`9X>1+rfFeCg%=DFne{RS^eIC?#@2N^QA@$eFfk2hpQGZ6 zyIBgwTt@gXH<|`Pz~KOYl3?K;p*pjlTHL}=L95g#2*|~WO?fqeg!E*OSTFv)DOTa> zS9OV2M#PW}YR>1d4cXn4y4 ziB&k7f2opZ0B&~!#>43OBK$+KfXn*!rXxekZfBoWT?^Cxeox7=dF|1lR$PD7IEbS{ z0_zcbvg0~q$esZJkfY<8i<5o9Js)2T) z#VT>g)3Bvxru0KqxHV>*JpApHDL%-iO{mA6&-Aj-tAm-^tu$m(p_;<5@BrA<&P*4l z)R&k{eHK$);5i21tYGQV;qW@HDcMCClpM&?`lGDB4Jc9dJhA^w4VgVjhy50-yhC$#{rw*SUQyU3k;+G2-c&t}8a0I>77-9>Ak zTzN6-iuz2_H@hOK_p8`=a`Y6W zV99cO<5tD>FhylaIs-zpVW9z8J*5v$@lckGc{ z(CZDTM$bWhS7aNiq-CLziH~nZDw%HW%}$xlLgZtXYv7q4sMR-zft}ZI0A#(S=i}?e zzcuvviZGVG+oNR^3d4imgB3cwD)B0hmN(>y_Y?H;W@4#*yI5P6)O%as>XFkcUQ(V9 z2c4sP`f#PXj;V=qrkoGOfoT`E@p@6?*RE$8p^%2kc~s$WV=-R0Z5Y(sb}}nGQL%V+ zQN1GkzM}KdqAN#TT49!FU9MU(uxUitPq>dL@PJWvGTrey`uT#;A}sh-{^D0 zNnzBnJuz6}$KLBD+9ptY(?@aAiUQg7>-9g*UO!;5Ri{Sof6~%rUcEsEU|5_%o2r#E5~w> zpIs8>DHym(Hial{F(c}gRyJ|scEQ-Lv!O(3lI3dt@kN4gNNP>~$_n5T(lHEzRhZa8 z7s#4lJUPcu7AT|0G%Ka&Ss&pPP5E(3x|X$IL%7FR4#Xzl5+foRg!yVZaEe#&tce)C z*Zs`-ekj7lB8H4Q5$|c2gndL7zCVdR$bUEGjOHjU6Ot20kOr!NT` zN$+Fq%guLrNomru>DP->Ho^+dm0iO^^jb>3Jn{~zBty?*Qu{?m-YF{tETal6d!#xf zvTA^B4<1mb-?bvaUUAr~8X26E@5!d+U6c}KT+DUcjh{Q>nYU%!us!?Ndo*P8e9oCb z^_sccLrV0c4#OWKLp*?t^zreHH=oM?k7gLwX?#F zM{p0YjtvUn91UJRX$#SPRZd`lds(`Icp#TZ*u)@0kyz*IOc!~_=WZ;M-hk-#yqy%6 zE+!>PYjkHJo^f}R8hexz%d`YOz6EY^?aUhRnrCtGPKL4eK}~DkxTp5TeqQ-g|RU5D^ei5eXnAAOeD+*NmfpC=fbQqtXPV z*U+LM5PFpk5lILTdI^NI_u$|>^UU}>@AuDlz3+E@Kd$_h9M0Ki?X}ll`(EXa{fRd+ zBXQarQ8(wlk+elTn=+riTR%610nSgH6|xX%#=zO#Tu!KR2C3}Q^RL0;QlvR~5vQpL znONw(SMRqbj`OT&`C_szIYk+0m&zH6jn(NUUR1s#C-Z8shH&PP1rC@z3y`C7jX{M- znt;uX{;Z78l}?L`fd3{{RUqg*R-S37f2%(B)xnF7sYRb1Yk($QYu;?Oc?W=smBVU{ zPvL$;QrkWs?OzvL)bM`Z?p_7TlX6phV$;=_QNZ%eLUIBr$(6!UCt?yX#JJ5+!J18jo952fn&LZZ?p@kWGL5JNB&%(fIU6m3Ms|Y$edbp%wQtu7!@=(<0CC^4& zahsi&!=CR#qx^a{-_Iz$xMR$beuME`)M0;=Zk*Id^EA1)*AcS-wNpkd-s6}-e!PHv zBCF*&LBd7h)CAk1{z;6u#dZt$r0<=Fqp8uq=#Bp>78=pGdOmghQog2GJ1J55zNXT( z{_Hb4oRg@Tz=*4Yrh$Z{Ox|%W(1kKyDPSA%*1jL#efu7$W{X_!VA1@JmW5>%{}9>9 z^9<6UluFC;I7ZaCV%^43dfvmpK(P#MWMR2Wp@zJjm_At5lJq$;QkTcr2U@qh4M3jU4q$Tl&uN*c-&HUW7W3QVH#Z;s|vOb+O zzI6d!r<4Tn3v`#BGXrrPKc9dbxMC5BNxg0#Sgxota&$enWw2WknZT7X{}cugvdzZ> zPA6wN*as>KcyzUCe(}|W>M!dZAHv8ynOwDnBb|euZe!pdAiIVf;@&kGR;ltQLp^`5 zy&G^xX{jpjuV9Ti_8N+P= zx#eR2PZ#K4ZUAS_Gtq^`jgP9|z9H7W{4yrSi+g)O$P_3*`@%|kPZKMCzgxorh0eSA zIW8nsoh*!esl0ia2NXi~a+1dc_vSibE;5DAy|`|a3Z0Zu1&)JmPfButXf%@RkULHW z>vnYc&{o!)L(Di_|6}&a6R$E4Op=EC)v(NG!)_0$1o*~%QWZ@YeH5-0wdftE*r3Z< z-QP5RJ1c_leokTionQS;gB^^4-*8U1v%o&DU^Kp%M;*!2(98U#NXH0)|WROstO;bvYhd8pgvVR^ythA{^x(JL)jZA-)>+pt|>C}O>&|LD2B94U^J zzd!<~JD4ZSPF#WL3SwdjL+xf~xIjZ{>YBTVUhPUyGuRrH=N|k%AINUEKwrvF(7)a} z!)f$2zXqNzlaVRCTY+SRRNQ!jFUbRnNGo>F?8>&2w1=jTy)~{NevYAze-->pNQ=!P zCHGCeBRzh7Z}MIV(e?J7BdDkL>*c zdLQR42UN7XF!&*tin7@Lcg=Qg?U{w?ut zc}jIkO}(-w-~8QzoLZoB&0@%@sVJZ%w!L>9CfXet#SXcclsS64qDK#K@xS~m(*n34 z1KFdoxh({ei_umiyREBs?&GDHLQuK6f=Ho(zPnTRNUB=N)6UWl1ra{|TtKl-y{Ecy zWgS2b)!q;qx)bGTIYFcsje5Dwr&%bQix#TBL#T2rNL4PnX=6Lnoogzn3lPn0{dh9c zW-g85{^T@qJ#D8T1>@*`bZZzE1X&AU^F9v-optM;8(qEb({=bBN7v`03gfcopu%HT z3Lbd9#Mxg0(t-Yt-N!danA|D1y9)yA(Sh?K)?nXkQ&M>81nL)cndp?cTqx zdVQ}^_G{O_0D%|ZvDbPfWzNKD8-I+txg1s5S901MHnS*L`Y8K=h-IRd*__HH$AGEu z-TqBXC3>6vKmiMC_uMlNRB)UBV~GGB?? z^s(;uo|bFv8qAObXfouIMGPs&!n~(Ew}X=>9h?D_u({aYo!gi9YwXWjo)2zONLhUn z9K(nqPSC^G{$s^@Qeq4BLj6y{^TVkSfy4{J%mb3;jHCK1A8%PW%yR4B zV3xik$8BJlmIK9H^|`ue7IIE1qERvpv7MKgAPIeT9?4`U@=Opg}B{Aum zsBm#(o|YvL)T@^PRo@W4%3XX7O^Ch{kT}| z;#suurWa{GAqAd|bgUr7O61q#y`XZGA4W4)e{nHc*U8ECzMQ2ZGs-?*1@yb<1Yq#b zeLYTTBH7b@Cq`zt7Mn)wc9_=&CnIwZDvy9FYmaV$N-m{&!^BGRbD6nbz4~@Gm`=}Q z60@l?!w^e2786bRtkx!+Im5IrX9rZsZ;;iKIYb3)3tkUad)cOWb-vJUx9MJvwAq=~ z?0PdD@{mv^7I{*xmo4p8e~*w~Yu}e$IQDtBOegzh z@Dih6UE#XsD^Ji^TYSG!x$l!Ot~t-~?~N6##^iYb$SS*)!~V)I_+5a?!^8U4eq*0K z0+6(ey31F(XIaXXh5+`nCD7X1cxaA|VT;-$pqv)Qz%DufiM37h!xI6o8rUoZ?Oitx zt2T52s2<^?Vd7<`v38jb#uZJ zbLTq)jn6goTtenM+sB%CtbP0ipt1}p4WmY_jA!en5Ys&P*vBGY;-$?Dq>alLRzJ~( zy0Or>u63CWPWQ{@XwxOtwK%V(N`~5|4S?xZU+cQmSZ!Z4sZ82X^rV#yWU1Pp+!T1P z%6~M_K6nAUgCYQ>aa=$QA`!~Rp8p7L##Tkh8SNX_3#FY!+VnnyY`CP*fBT~$)L$cY zf5bNfCJJ`BpNnlSzLU;?h<7K;XAzd#6UXSbROr0G!IpB6USa~}vc9mBbS zZfsq;Q*9iAQ;cKR!k;^WVyUpd4A77%)@#npp4jCaygg`m-BluIH)QvN5aXW%4`k51 zY+8evAI$#1DP9PI%JAR#@Bd5dEvNFtjE4LB1-=0D1THc_y#LI*+>&0V~^ zB`*rO@R|+6>8pYNF}nQrp$VEnuc7XYxvT*ZOwNhj2iauOo!`RKXR$&%^18AAaZdj~ zAJ6|kn9$H8?hObU_+$E`TqhD(l)HHZpH9MxHPK({CN{Y)klvOF@6O`(9#O+zW4lbL ztIzAi7momUkgVVHeE%BZzih8!y{ucan*|V7_=8Y)4<}-n(pLb4{!dH`?*R&b&H8X} z<|Wnt&*T4J6u#Ey0wouQ5Qwo5OX8B>Z3}qKag1^9>$%(N2R2GI)K6`ce%$ELxWfJZ zN7D(-)U6-O=SQUmB~u=-7R~pkE9N2 z)_1;g1-)bX2FaOafB3@J`_Vtx7l5Ejoy%@ciD_rqmFExA1MQBxU;gw_><20XsR`X-yypiz^opo*ug`7zwf$ ztkvf2pU;i_{#=2B@1I!|Hs^q52wkAq#X^zTRp?grem3apMNS6hS052NW~pHll1I&aEiJFO|LlogEt-g=s?G5e%;rBDp)Dq} zSYIfM{JZFReFn}Kmi#+2YIdEn{o+lE;Q54$i$u@QyWJ>5WG}o8-!ZlJZ9aE_t@;Nm zjioHIJv=yHDrXo>x){}Wm>C}@FON}L%q7_Nfpt?nf_Px4Jnw>qW2)@GiWvg@C%L;V zG5`0seHYn|7fM`Wt~zZnCKRIiE011CMO#}pvkLAl_l{G38BW9ilZgg~xrtqr4+9N8 ze=av~A3DeR^!eTI{U-lvFeF`n6>~1x8u@fcbkuN{7e(J#u{7um%=D7*P=p7={6gUZ zIxb!1d;+~ zAH&!3n5ABRcTuSxoldrdF8%Dqf)={sm*Og_H|co9Is=;%A=6&HQHMnEF0B@@$UaY>#3Mu0yZUQ!*~Hec$SW zn9ud0;xmsAp{n-BI6P)XZFAQ^9*VuH;QFmu1{du$=A?2-)} z*Q7iS4xlYAMWdn_97 z!hJnRH@Is=Xp?;u*W79Luts=otGlwzQZDOvVL522wS4jQ3XnjIr-jbg@?sYpL(-nu zY=TF5gcMxUrHG<>eXq{TXE#XM$TK4A&BOR{QW|`?lRc^j8JiEtSGxcvf;=AGvembo zw@>g`g6D%Rc9aKB%3v!@x0*S!$IXE@%|ypM+Z?()kd6AOcCUo^uSs1t05Jsp{1~_w zv82$o^LARR$^iw$y}K_P1rcT~RmjCHc`q{csubV7Y&N&x9Dq zK<^~L2?A6Iu3lGE(a>@W1yVOw&Bzacj=uLZOxSgy&nU|q01NMjkFve1yL31n38<+^ zJQF;sI@}mqwd2*h?Exzy!*K&GFH?H?UjU2&-L-4_ziBwbceKe1WbKS=abUW8T*^c8 z)noONBO`&^vH3<`s)lO4Pb@F!I>L2$G}{Eovkn0~>$vpxj~?V#Hf1MGj4@vzi+2*Y zhQX=RURkS&=I6^N6%RV2_?Xlo{L(G)0whH$V(m8}%k?@&idZYjVGiloce-}BS-w%R zD-6bmn6k-k>)Y~G%Dm|fdfP^p}{^YA4KjpL|05pM9M(lyLHIpzE)&Y zQs$lv5W-VLbk(VM0*|1Ud?vDMwc-x{e0M-LWve;ROWh(>0I0=&^&_{5B`mW2uxaAL zERhzeTUFnkY8c02H*0vaHln52k(kkRn(cAS^?rJ7hl?YFXg`l8^`}e94mc%#Om@BYep}lgs;)KDX%J=<0{ z-FEL5q^}8yPkz}dZERpc0X=%IGKmUggB;r)m&{+22bOR;iJA_OSYNC9}6s4esT3JrSoTRF<-6J!pf&RrP&ffL*E0m!^K zz!hUlQ8Z3m0I2TWC!=2;^(gTp95k(*S0uOde%l4OGSz=ub;}po&@$+a*nTPEUwVCB zj{?Z~v&fscvbn&Swnz3@AY9|rWeNx|%g}*}+)7z+?yQ)EtI+ouKQiH2UzVYb;EseM}QQJ{*bJDilKgC5Rif1-e``SC+9IiVTlMK%@ z8Pq&s^8guu-bZF{90HxfCK%J#*mF-(%u56ptBDTq!NNnyOD%PDpBpCbD;}WNK39aO zQ%N&m{1-pn&m|iro_4G#zGWL&fc&pwzLZciymvdIgm!pqd6)5HUEHYj3PV*_t@?G_ z*q|hI_JQc52lMr|=bG<#MZRQ*oE6knS4=#M!msI&AB-rJtGMCbERAO`>G5j;ro8vg zkGvf%%vA%^nA!1xE?RBpO@W$`U&Zt&451k6)Uj@$Z_hkU`S^BKKsn$LO>hloU1>(& z; zff<;z8ni-Hdsa{aM7i0yn2vs4el7XOPdO*oh!kkfF?5)@&=^rOtEE-KwX@{ap`BPv zW1(OF=Z*L&j}OH_5{S(}$(7mZFGpxzp(3;fMx|M|6A=gtEs%$$0a~S7c zAJ~a<;rLx@2pyaG&|D}Zu1I++6gZVxGp_wJw{}-`sRE)%ad#y;_pX;Il1)2&^npM6 zc5^iaq-2%o#F%G7ZM!9pyOO|a9tc8syC815+%0oJ{$6{JqO7V|vO~e~R+qJ{PS$Fo zuI&`OoZO{&vp$(H4tSSc)dPe&*v&^7&eE>oS20b*GKNBFfBn#}Vyz_~oe%7PcK^2z z6KdODqxO~l!o_Xok3F~;g`9;Y`gGp>) z=WSFBbdp$Ol>UK3_L*FR6WLJBw|aoKV1#l3`n%to<}%M13m)39?ecRPZU=~38(j{& z@{WJo3t;_uZ~PH`0BODze2h;oJ|A1tKJFXq=9>pOpTJA}H7jpzj_Y=FG1q?)7~tz< z7*LEa^sCofi?LhZ)kvr7sir=&c=YP`7Vw8dK&q!RBg6?gz3BM(naeX$Hj;hGO6$ zKuSZXNm<`fVm%|RR5_SW{_uNEN8_7{AW0WX2OYIl82td^>w-}0s8`=G~qTA zcz!9`shSld2%sRD7G6uNF-((ciS@O3?GZKJ-jPQvsGpVRlMUMLWcxFK1CzK(>y2`M zT(C=waW7vZbDfn1P}J;S40)L1;8yL>&Yxo{*M&Nk^~LbP16~7oF5EJ$kGEy^c%)T8 z;KAke?*93EioE^X*|f(`g&T)5LxlYaqs!+LDt5hq@^REL^tDB)+g`Nv{XvNUoez(J zmS2g?P{0LXA01Zz!TD7(@>j7+<-+zM{A8?30pO-nrG=pr$y_JvOKvtZBzvEz(_+TY zC!k$OKe091E->F-+iI3`Ad{=9v>2#V;FVCx6+`r@c*)A*Q9mm&fOf0G4o2?O74JSVw)Esr5q@CL`~e~?GH%bxN+|`|0er}B!BI&>rJ)5 zbw!^*ulc~{iM!7r<2NzpjrOgBJ6GO)ou8wX%u9O79ESR8S1YUbOq6Cc+*SJ>FtSD* zb=M!#-B72GS^~z8zNuOUux<4t^9l`9FL_6=Jj~y5y8URo-wgj{OAjVHbWKWI2$yrF zrmww%dI2B^#Q%)wxO`-J2N9Dgt8PaQ(_QO*`7-0}Oh(GOB{N9t$g^v|r|o#BNx$t_ zxn!2vg%#+Jsg^g8|%*;p6h8}a<{yALFRQ7ThU6M_L&?h{fU^- zgjOaznQ=W_%Np=-fn1N+MJ9Y)nOhs1&?;A8*C>!EanXf)?A&yCOKczb-isQbXVyic zTt>q|oy}X9gyWSM$0FFQMBrXI9sWv5b1%44=j=8fv&3BJ-{Hy8Je$*lz-~CY>Fk=U zyIqnTWv<;rvn!@+QC^?}Nri9;@2Q}x9a$kaslJz=KbwjAwXZ$H>;kI_TF@q!AJo>f z|8-bNZkNhyItW-VC>{g1zLA85lb8Rz)mcu#HMa7JfH5J$A4^S#DC7ZvDd|84=r>*NP z+Fo?==^CwPK`B(w&(#cxeFHr3vAjI)TJs}xGV2>-)J+5G| z(AjeEts9^ zFVz-BogS!Db3nuNJGW?R=_}Gz+ExFTy zs{uIr z=>|M%)T9Lm+TiH;Z>R`R-v{7q-=Q9lH$IybaVXha^+>aVsRxeThVzq5GCVfP1pHWQ z>@c$WuJgC4pyV z3;XDMQ^qDC<)LIkQ|y0xK_Jm#A%K!@K2hbrDav^Xvn@ zo39_>Y!fS28Q4jNdaF6uJI#J^(PI43C+AP&;_QzZzg-xf{W_EN$>Q8nmgvIKym$$* z3el-jXt*M$yp*N>d#C$z6)N~B2icxir$AEH_YSh2ExXGLiho@B+WELUk+0#`FY&TJ z@p7Dw7X4jGCi<-GFKo5T>#bCOA@#(~E^*`zDW}a>g_pfozSR~X8EVmlY)G;ZuD^U@|xP*Q&? zy8FWiklo_y?=C(U(-7~&o;fJC?~j{G{`*ZCkW3e4*ir+fm%V(y(cJPO7sH=#+T$+h zMDxi?0o9=IUPbAm!XWo&Zg0AItUhIJB*SYty3%UCIEUSj(uFf+pqcxyhv$}qhnHD? zYih$>1qS}m7JxKwO7bSaI8h%u*4=*DCjsaDn+U|48~^|DOTh+Ec)4#M+bKYzI-7s0 z0Q{qHr+;7ppHB3QOIqIUZ~sz{|M~6zBDvhAK?10&EmMsMwIhs;k4#gvm+Xz|^$fL_ zw{~a-V5Yh0^8t`+(HUBF^+;eg2Qa`%>b13&7=Detwy#5eNZkbKzox?h1|uRs=i=1V z`dUKybk-P8fNL{=%l7R%BMrNhfc_F^SC68is@>cC_|=)YHL+LNAfiPxxz=uB)qBz+|J+#TNBT<|pa zgeyb`+*;2@ZKKWt!#~FHntg6sJ36B&iNOlo<1hAMW?tO8g*2WLE+vKZ;p1-CCyoad zc?C?tLOaFn1v@y?VVpRP^!BEX`@TRmw0XXY)zLM7?pv2+8LtM z2?>K_jXE(P0o%RWy}duhMyW*rQVjc>^(jDsQIHb{L*^SpKkA8lC`Mm9B0V(gD7-()Msrxg9U0h51 zKfd`)AP(j;T)P?N>OtzRR0%k*+=6Rn9Y1x@kx--RG%*T|lnP?o#NdfrA)Tj&R^y7M zI~PRsI8issN9d>*N7-h^u?*A2;?)T>BIQod0_n6Kz5-MwShoNUX~DigPP+U^GS{`l z#N{J;`T|uXc}NI50%w3^%BEh>Z49dqHJ* zC=n3`X+EZM@)2rjerH<%MJFy(4HbqRXpg5li{KP_JPm#xCxpwaOGu;UV`O=9|`QCme~1}(L^+@$D|=5W+d@ND$TSi({tyH)y43P)Tk^un2#j)NXbL%cYU}dN@Eme#d@KMqCB28aIMM@ zJGU_284eEMgJ5S$o?@%io#+qg%f^6;OUIs4UR&0LfoT~YulgKtQf#C^US-kw7ZN3P zo6eC*+F}&TdUY0qYRFqpc!VG}JE}FC{~)?rI^~rN=F%3&t3|dM4BknB`cynf{dr2E z-D1~@=jsk&43qibY-K(nO82Avvf}AUVMxobyT+p9Z@c+zS(roET`^V@7e|ohX)TG} zwO(@? zCEwC8oLm@OH?}MkCaKl1W$Bz~0r9`&)P-=5iMT4a#6m%&>DQ-Cw?bW9ID>Dv;7*Ex zSj`Gs)#Thwyl0#i!%S1P#cJvUuihnvYd1`8R6w^Tat^SbX;!QZsnZ)W;r?b23Jwjq z_!I}i)wZtPHLg`h@03e;kKDHE9NgIGpBnCOBIdIqlY}T7ukbT1m`u~5$|)a5`>OMG z$Y2Ja3cWpMs&0Lxr5ky)kVZo^AOron--1yx=GYOh21m5_IsZ4LDu|N$atP10A6SpL za7e?h)udt9&+DekH%7#5_OI=~L5b3x@-1+vOUrmE9^C81Em<{}nZ@hluB>#UAA>Iu zZU_$Obn%g;tl99980(Na z$&S>kH63yU=~c~}kg;k4PO1`pnl8?^l&;U404zC|B=u;MT3Wie+{AQHl93Pvf<%H#t=<58 zgB~m0*?VyU<8x{m#2CX>z%M}(RVzY*T@Jx_hTp7ss_D-I=K3Yz|Nh%nd3yrG|7`WZ zmMzf7A7&eojP1s9Gpk>G%|wrSLOKZ~8HJ+7HQd%Yoa}9kQczLoDjm zYYGOJbygkC&UltBdA-;oWTb!KJF`6GLa&u%NoxKs&1+(saPEpqF6-0KMg-TRI#Cwr z7QC^~b<9|FXm#n$%EZ**I=9(}@F7XclC6iu`Af;r?HNP5o8WOJFnmm-~_n z!x{PIrBI!H1e(uHPkqT+ScD$YR&Y?hc8Nu(+L7m3>{*mk;3dla;(n_k6W$?nZXap} zO$PTV;`RtRnAs)Wm?K^W1j@SmSVZa+pk)oc`tgwUn+ir0yA25#%3FzBd8M?-rd`u& zJ=Kz#S6I8Dk17>P;!U75ejMz*xw?KvTk}*oO10mcrQ;4W3>WRa*h0P!b*Ne+!r6F$ zgfyASig&l=sMly8hv27=Aq(JCuWq{O-LyazGLP&*A^Vta^jpu#ZaT4{SEnnDC8Uz^ zc>C!FwUHr5ZTv*G_rbyF*SuHeaXTUP$LlHbL4~Ue%2rskK01p>ORN<@YSFFOg4v29 zVag8iSP&EX9-0y8B}W-1dkNGJ;^96Su9I7hW9szj(M{~?ttscX4~G~DQ#Cb$2*@$& zRbTg4;?Ka`A}miQX?hAP!$>}`qne9+G@od57z7Y>hSqoA&mr=8Ki52VpuEO^b$UY21_!fTU3|Ru)h4E3DEW-4=K(Vc?xVSLUQ)#QiRXHnx&I=aIi-xE-RCo>*#ytt6(0H=oeA^T9=@q($h}uME2g zq_Wi^ONcLP-LQ)s&g%AI3c>bM#g_i+~OjQ zbS3{sJ7=!8*c7hIHGs70e*7_gZj4CasutuHsl9D5)((Ei-DI=TH0wtx%O`R`fxY6Z z^Jr0_yFJD3fCVNiQCn+g4N_U6tdbhtc_+1!Z<(&KUdRYo%xFTx7-{e_TxN;*s zJ-d-yIzq$tkDcip$3T@3PevYIMnGWp@KeVYsHH1-VdB;z*gwF2{Z-~-B%jpH)@D$? zwnS@PU1=a+OtVMl5+;*Qjt^ExaBpS|MYV&eQ-Gn_T3}%s9Y^k(nU$wU<)3xi0UZkB zqjVRq$-`HJc1}3=rO#5;>pAKEgf}bq0#CoXLx7+1oTwJ5sfSLL615shXtKxl#OZ_L zKT-!gZ-VRj1#@KG3T0EfVQ>Lin07Z{z|oH^?-d-iFrA+;H~2mra-`D1wO@B+OrreG zcC~no-~v*iKW~ac9y^%nG9o=E8W1g3cUF!-NbHT$?Mp-kajg^SJ2Wddy5|i&g7|oI z;nLyk5`_LOj?|7;4D>7@m|Sr!G1NNxFaoZs+Si7k3Qi5G>`H9F;N8aH6R^o@z|j$I zc&aUc9CX0-t-7(*daXQJ8NpHKpl=1jAyO`&!!#n281o0)Sp^CjO_KT;^0 zDj$b7H(afN4oPlkDBM(8CdU9~p}wM%AUZ2`ojhTTeVErBpMjt+6g2| ztx(>nCDoS3yS|o4MIKLQ$eH+KovRprhuqyobv^;xT zyaKi2E3zjYQtsH{*67MsL-}(A%d=`*E_AtC(j(GpDf)0XttnyNrQeO1wo=nTh8rpO z^}bliHn7)5C z%a!(tkm66zGSo5j<%5QukGIu%Mm3$3RVZ`-J#`LV37ZDuN&CeL8`qaSl^<2ttarN4| ztQyCTN2oL8<@p#YfVJGB!1^$mavCovPjSVQ)OfvA^k6r=>CK8oKUq2E2dD3ub__o^ za1=3Drjd%aoJhsLnu{ad>D%26GiD}1Q_ygB{{)Ltp>e5d=>^rZNcS*?KwZbRyZ4kC zXRJm%DnrZ#OHXAh!g4%jJ{J+|#~Lwf&1T0lkv8rG-KkstSgGD&!0A5<@QiUif}9B+ znmpxMn-mCA^`CseuO+6_QW0*8lqYUi!S@yoD7g4%(IVuP3 z(t*>iFXL;|?EN>UC}2alqrv2^)CwGl^07ZAR zP?oHOURg{nA2S5M15Oxg2ms-AOlD5Cbz|A;YbY2TMKuo6J-s!~rj}sIfVMZ-_b(g!GRo2_pKd(n`@x}$%xvK> zle`F=ns&ZCoqe#s?HX8nS4n>i`2Zk=8g(}P|Iu~y?dkvRbpV9a+|rWX_{;3oo$V+- zhvFH=fggaCyI^*!AoAIkxJ4L%69Mp5j9MUI<=_8D_{zN6{gRUPZ~A>L;eb=F$N=vm zk zjG)v#sG7~O_{2{g0)M{=wD=4c_ygphmunV(+}|Pl_scVpFOMF5E%f)1>!MF{o%!JZ zU7h}%3=y2Q=1;E*|31WopgT?~`4(+2|-@E+JIZbT07N<5^pa1*i9nfNSx>fN%L@-k_ z%*-&aRXH9H85{}syO3b^A!2-Jd$fWl9GRVJW5$&*;UN&nllzai{&vF}jJ8<&!3IoQ zRn68_vC7}hXp22fKG@)mQ!$)AVCDYqu_d1cCx$f((JqWb4IlLoqx$KYX*neQv$PgT!^RMOFOLJ_W{J=>Pp2)ta) z-A}v;N3ri2%bUv61V@;|IVai;82wXl;gGmJP73>vRe|5>A}C=AWt1{dmyf&8Y> zFR!Y=MyMMaRs6J3b?M^~<}Z-)@`3lyvDiI*Wv(T*9{b0n{cAFf>M4w`A46BK7Y34s z;4u&>QUjdbm;>dc-;Gp=rmkj(dg+BUI)|H^Zn9&%H8kgrC39zi06c!`t%=5@rS zQ!L|1zFxQqX;ZhhxpKnM#B{ePgsBsCA(}1oBQpx~> zA%HB#6_0DVIP-)o=&5N3(#Jnt!}n+mZ-y__=6FuOWYgnKj5#p1vr$4+4ilYxkF<9+ z4sZuRY$Iw?u!(@Bfs$0KHn_FLt2|JZJ!UK_H7&yLkxmy}7lwk)d6fC9&Up~F@Si;F zZDK)-)=`TdNttlzr6{5nwql3| z2I7IB@>RpPnc`Ynf@AwvnW1B8aNZ$k{r{Wtn|u1ZDS)}o5+~-#6`pPTAe4cu+h6~vV#YO zL=Qw!E5^5{XV!<7o@xe7>8&j%mr@*uS{ukltwZpl%?FnX1-2+@t=QzyH#cCa+V}Lw z)bF818@*Vc88`L!jYY%NFIZ~&`l`vDb*5PeY&AZR`|41Q?wh&^?H4I}i`tIyDpqr2<>=Sj6C1Bo@9{KQ!I_ zSzNwvW}|g)2|GNt+siA++3M3pvlLtDE}_wDmch*IVzvbRmq!m)|7qMj0l>(NRTfa! zx6|RPPb8AkcodVa#o%@vwOJiF`*FN+A93*HE^PW>l&&vdbUrc%?&Q*LXr;gS9$u@^ z9D2-ntuUwY5Y(v~NA#UZ-b73Qv-Z_T5ETg#tD}F4801C8%FGcBQih`@A_gl}g_Lfo z8xV(HAuLCad91Z)u9a5==)M#9zBMT9ZPe`>)f5BtDeD6X1JlZ$c7(RQLGvHvC1Wy) z@6PusMdm1~9WT%~SeEnUXfGh-g{QyESc}qXxva%h9Hp(MfvQ)KYi$t^{o1Sd7Qo#d z=P&m!>Wj%s-C}I_mA85bR66vTDMKTiyS3CqWm|__aqd+AtJ8u^4Ii_a8n!A~o*ix7 zMA*83Vub=}-yVI8S6J6fU4ft z(%VNAUo;&&V1B~}cM?=I(;^Ubxt*L%BsiX}=lf%z zu2)jVC-Pl-VBl4bB@4uL7Yf=)8uVz9uFGxYadD(H^0AFl9MAe_*I zrcf3JtcyQtu#;V_#I(ff#_~={w4y!^NvA@aAN7(Vbkipe67&Z zm}xpYhIr%ASjhrLtg%&HyO7wYp%6Dt>I|~F(LV%}~g>g zShwwC`}Cs6D~4TdE3^P~RHI6b=1+_n3n-(LG@m95uZc%sEDYhF;GwW>lp|PES31CNRQLg`N zcAOA!@pTrBQ}O&I=SAS9(ES61&~a9OPxgLogETpp!s{nay| zl#Vt-=&KpjRFYZ|)INuceeVIY3axJ*Ty7ao+d*SrQC)~Wf)Q(du!+TkBB#V;>z4-C zQ$|f0+h1fNtov_#_k`^CyxT<7;Do=~@LJE{0@iw0!EVXG4!1Bhxca8O!R@3uDlP&O zQIQ^aI^mO2N%$Ex@tbNr-&b)7i6$zbszh0H=*CmWmfcUC|cAk>&r@)B>quJtG+8`D+?zfiA7pPMnJF18)?i&*y&@=T69-gh4Db>3wAp#vxsWd2iyFgp z2=4j0#1RncnJa+yH%51>oQ%-pw#ppd%{Os>1#`2-8M!QcR<&Bs&ub`ovr`0Z?fGnF zyJ+4zbW7!-?r4y!Q@5s7<7iZo3|F&=socrIaq`V!zgoO!rncsY)bT-Fdeo;r98#VS ztnB#)Uz>xo@rx;RQvkE@Z!OQJ?F5Xj62V-Dl(mw@E3N$20&bw$$u|5bYDPOW0oW|X zY6=3$r$j3sQ$O!qY>wIu((HczOsd&^yARfVh^G3kBcORHSfb=VRuBYOGa~LUu;OmZ z!xcLid^7Tsfs4W3Wdpk3)x6#Mz|){>F)t?!+-AROaDZ|V5K>xr3J?FD<_N|7DbV4b z`)_&%UQQtK&Vb{m;H?B3O?z*6qX6ocEfprMncsT4o zg16EEG%Hu4M9Qu6b~z$5c$w~_;BiU0=DU4r{=PK{enpUlY#KL z>6IyMH0v}t@U$8Sg7e+o1-Wlz2>a?J{=fs;H+J};Pq z7yI_z_z4KC*sASTQvvu}V~SUzd+&A0(ih#7HtxyJl^1)WM*rK7_r*BAXG|gerQ#|t z{c%S&rSI94#H|Fi2({urs5y6%_a?Ay6L?j`KfjixTTw&*U@Pgten+zkhGXu1d)RBn zp5@4d6bqJr`$~hcH%+=IYlDY>$b-HIIV8ZE(gyw*5A8e1f`6f!vo{vx_pzMuGx~!z zZ$th2sD()xe{iDC!oR<~$%4+_z!?8Cu>Ug>D7>?xr_*EVXdQjYDgxf&HAGO%K zSK@bve^2=F9<~? zxq4f#?-YG)+aZ9d18qf1ZwQT{5!#}2P+W9C-CU$#ojP*-^qs(5dWE`Xo?MV%;DpNk zht*(auuFAX7DDj4KQb$qw)jwzG@2D0)9G<%3BR&J=E6;ssL?#_Cw3=lE=J|c1q z|M#qBZ!0sG2Ix4#bnrrPG6!{FZAYE!8;{S2x8IHCHz~*Myt*GSOw*@fS)KKnPB>4N z%$l% zE<`}OX!9Xf(Bx&}3#Mb0EG?6)Av|{z!_gQ1P>B1zdt1aeD@f3iJ9)A8b>JgL)+qCG zId6?j>Q=hz>=XBWrBY55sFjK@ z+MxR+qM=5;E}i6K61H@-W$i>WFr&rUa-V}`pQbY_F%3~}aL@Avbpby{u@BQrOe(rkR z*DYNlWiNv>Sw@&}21w;odCZx+K_Sf8Ms5{mle|K$fieHWsV zY|hW8$PSpomTQvaYhQ>>EwAxMzs4-o1S>rIxYRy%gY~7eE?*VhWE$cFd9Q!khq~A* zbOO6v=~~LoOBt0}J+I7N|Il`D&3=e_iPk%J*T}BLE!G&B6Ph^35UGsf#%JjUk&x_A ztlOO{O9O=R#ZG3!Q*|(Cz-Men7D7YkhkZS9yestt_(0@1-p4@|RQn<<{Z*(=fCsWT zE!TNCWpN9~B=l6q6YTk`i93~3lps5&0O&T}+V(4>eF_uZv};YnCdD=Vmw3m94Hq>o zo%`kL1v}p^g*XR#4kJ)!<&3DdlI9w?eYNEQ_=}1ChqX20S1OmhYuFCm9p3f2zrIXy zi?y*I!4bzoVTyk~^CW`{V3$~ITE#0#1gnEqp2;hMSF zYx>U*IN%1mwmV!K`72o?#tzFbR%E^Uh4~|YuN+aT%($i${$Ghx_UOGYOxbz?r20I0>ZDo4W zM@MFz$pQB$b>&A9;jb$i2SZ5~A?$GVgf932_(wte)Oa?*rXJg6uqc(^OS3gR7e*gt zy*lriw!Y$7pso7xfT@Vr?7A=}KQ}5@QiAB24kQPV&J4Yb!^Z$^+P%vzVGhpf*u94BU$kn!G48Xpn*Je{J@Tj9kjlyEFB=38CGcwmk-e3 z{4z+h1z-SRf^Es!JX`Cpn{6r>Ry@0rG1^&-$v*v(OQPCwPTAZ{5#uijJHG9oCiQI? zaF*GXT}|}pXR!VKKclpTHP~3pal=$46<5T2wk@}vR8&3@wQ8T1bCNR*->ZAqg}U8L z#=k^O%{0x!geMw4FGg}>+#97v7q=8gmvxrnZ?A^OtB#H(^sHk&<#YuB^-pJWVqc*g%~q3^DOrI zn#D|sH=l3Tsr&4dt`Ed1G2ug*IK|HjXoo8_ktdAd3LF!!P*>Q{O72uOhIT;E zKVQDw!Q^Kn2sK1Jr|DJn_2@&8zhoKrPviL?Cw#rD^}g(bRJ`>scMZtMOu9g(n4yu|sU_I_1$Y&e7Z9uD(X zTw(TW!}2!7JYBaxc}|9b{^$OhHF;BE)gu5p4|TA;7)>)EJD2#^pzJ?T>-xv-E{~jO z-AL0yC;;#gjONz7K8>h}!LA}rPTCe9g zF2x*L-@1Z`idUPvC6|TC>$}l^M1SBm@B8K7*Dvo4udvxvWxk#&dAD7XigD4<$K76( zKqvOvt&7X8=PeiHuAY_r{IWyB^Q)GA+HL3c^3Y)o$!#jP$4IN(d@p%HrPrsVrkU%HC?$@@#+VQ zB*{Z-Bw3MbEm2!fTw8zWn_&rz;@TehV}D+iNXGy1oBx`9N_V?&gZIJXT;7>|F`1u^ zOE#@rg77FT8oK-n%Yex|R?OMxOip`HepvDMH_0kuB<0LdkRCF%^J9Oz3O;LRTyv?r z&HwoChbDkD`Fpp6+xA8&G^yLSYI06O?*b+Ap`-}!ChIh?sry||vX1`tMJxQkYf2^G zr2t?OT4OtV!?o088={jg*8wsM3~T z@PJ^s!i3c|24wq}C-2|YCziI`AF7s|nD0B+8@}2H`JRW`Cu6QzA7SQ;qp}y$dR@*& zcGMvAOm7a0(pToRFKEU{1kmIA=GJEMItY0rv;AdwQTl@2>i_I@9sWbvX4)s@xx-!w z(%^5IqK}ue(dn(~*!LXK=1TJ!KsYosr5|?>x96rP*DBPOAqfTKcN3v)Kxx|%NTa5C z9hkY5CSXhhB{D9VvA1WG+<0aPkL3n*m6~f}v}!*Ij5DK-s3rDA&8LhC0=hh~vpNAC zv_~UBPzzk^7c#}HM+^jGiDk6r`x~8^1LPWaj2lqYA0(dME~7d~49h$}L$tujb#S9n zPHGw?IP~atw5er+YfJMOs^W0-0Dhbb$C(n^mcTc`W_rP`OiO@Pfi=1PTbQSe=$*xf z^zV4gh}l|TMbnjUj~04ED_%9;*=zvB4qlrYMHMTd0gxKm$MH!|r&wLvRK@mu&eedC z=1|6~i$5zCysf=|(EDb3>@Pc;?6*EjdbpgDNa?t62q>+m6ic6fmXioS`=T%QL6-*j zXhg$vCx~YBrp8iOzqmHfPxMs#b0rUS|%RWj#)65oQCb*o^9xHQS+teJk-oG7lixQMc-O=Vv8rs&P74V&u zV|(R~opVswLd2J9#|@Pu4n7Yu>@|B$8Qqh)e@i+>=CSRh21x7qWq7rW2|;1YpgYEy zabF`}1>-J8OXVaEZCBwM>bonWJ+QG?(8?)aEH^sOr6i)j@~3-TI|hUG=*tV0k2=IP zS#TE!+>VYNB8CwUi*dyv*<_BZp@rvZ+RXqQshtWIy9g(3mBim)Sb}G>DB%#owFJ;) zr~NKD$*;9aM4s@c1As*80|JJXmxt`Q6s;Oe^AOkk>Il(PR2Xx>FU-btgL=?sI{M(I8BCr!6s zFdD;MMIz+cE!No*(AwYUYwjc+T(Y&o-+Ufb8}14(y;FqV8C9*2LIWY@{ z;}KzH$|=hg5B$ir56Tf;KwT^7;B$w;eV=!0839E)SD=Xy7hxZHsI$~NFhRy)L@_k) z1@JzOn@u}>P6q`ZTo^yS9fuD+`1V%nSgRYWD-Y-a5$3SaJ|<4@BaAviOFxz7q!&K_ zePkWRarnCmO?ASDEONKYzZV2Q68|h%40f-)-||d)Pv_|hW%*nO03@_$(_vt9TqENx z?hXe5T6O>c2q*^Sh73DFba&AYbzXMWtHP!{xTqDT0Q5M8(miT-bqs0)by;S_$u0l| zbb7nKw-O+HAoVy0xJtIVaHy1gU#?8;7`LH?vOxBQd@oA>m?ZJXh&~j9#{=1olBTFDE{Ll(#+?`2Y&vsW-3GiBx8!T;Wh>P$3|RxUyx}hqgqp2qU+mJ7eN19z zD?>6;6FlM^dUJZ;G^I03vfzrABJ9+xP6bANBwZQ>Zy1gs6x^tC21w=`PTC&*H~rB^ zi`@l_n)uUgC9TIjKk%6T)gxN^^RuS{I*3;J-CLAR3_rf3x(c#|&&bPwIr-{u)=UjV1`{q$;a zLvvLU-$-v%QhUA2o6SKt;vGcb$6%*mFLu1|sxkPq?Qu6p`tc)}71BPFS)jZb(+}DI zhG#`l_wkCScVq1EfDJf zujXC*X2sMGQyZP{xc$r}K1DkY>Ri8+3#(6zy_W2xyIp@Q)#0xFBr~EsKJLT?U&~MF z`>ZxAbp%mkv5q#=Hv<&8TMlChCp%caH;uL@=Vlk5GW0MwSF5)j?v`z&IGr(1Dman| zd~O|)C&D5DB`tp;u}qm;*H@;FFnZlR>`?+VDft6%y#Ror-;a(s;#9*DnGq)nLZIUb z83x$0s6_s0;n3}Xuw_B`p!;BEhUwgW&bf7w{JuN6MXRP9z#Y=2AC%v9b5)3!J=E*p z88@@3kqbW?p9q-JuHnxv_YOMXbNuWAQXh>bqNiL_$vod-!|kmJ=owhhZu#0bpFkkM zVCc%%+)1%))8rG6XO#7ApPD!`6k#c>v^`JY z(%672-~&i=g=q!SZV7z)Im+iF+H6lD!(!~lT){n{YOTb@#i|UZ6O{fw)LcnTdcjmjPXhG(Z>#kobRyCi0aIHLdL53s~u@l@6Wl8@0YlUw#`u0Qk&SW;0*olCSf{Rxj}`mZeI5Tlo6 z!COJkQ?&nlD96XGr7=ERe-9c>FTLToE_C?PTylPz#t(6Ju11ExAtiodA!oTQ`|+|Y z3WRuVZ{>aF7nTcAeJyz0tG@mg7A1k-c7{J(k8{<&$GM1@*Qux1FPC4IB*P-+gnPpS z)_<%e`7tHYy1^1i!UBKCzc)_~u7<4t9zau?&`8j~U-kmx+FkZ*xA+79pBn3biogH8 zT%I>C1j+&RLmfm?$jP&k>duV9NR3FQlTIlH+roJCcCpH0J00sv{X;o``*Q z-X8DS51L30 zeyOpUCT*TT1Ow$+tKvTk)ds)%S~sm$aaTe|jTH2AQ-o{9+AwekxS=vAXkWuZQMoT? zG`?>aj4Bl@qsD1k!je7@x6kPw3KzT?Fde?@Z5t2NTeHVXzmmQfOyqMCJ@Es&q^D(5 z;Ia-^jW8wN*Q+RZ(1^pLU^RdA-)dDj2E^yfP9r{Z+VFP2&u>~MXV38-f5oiX=T zCQ7+HRp%>lSZevA<{an#TJ^Vs3dF@9tV_00^l8#%fuW}G`ER9pV6=4jh7C7AO0+Nl z)))!(Dut+B&HJy$T|If#Lyh{11B85KV4Ou;b=~ay^gFqG4Or z)tvq`>+W~WUud5aE_K#0w}6%zR)%#Q#`3khgOKsK)f&`KCfhDd$E@b-Rie~sB4!*8 z8E-N@CgN?mHz|r-HVQCA5#I6bW&+5)^-gh>dQgZac8pzTyE*uAY;mb)9X5tE1DnTJ z$vs@)gLDPAPX!(dNCk4}5SSNIp`S%T0GYz^e=0u)fc-rA+`;aS7IP2ua{UT2gtJ;5 ztv7|DUcDKYQkQbnZz$lM{{X~;EX>wRIM7;Ib5Uw^;3L5`pE9W7&l)!$f8%LO7@Mta`#|ouM($PQdJ_B&wVR>O)nm zn)8g#)#6XbV7({gRLz;V?b<9bYy?#z6-@3u2EtwyUcYEUU3YRb?kd4knz@9MYHcUS&*+Xd6Py7!e+3M?dvm7;Txdal>ydAOBf+ zQs+818iAY|nozH9ouJA+)WXR*h0YU3?EfG`?Dp}lvU@DG^v`dSslB9S=00PoiCS!z zZJKA^+X<{6v6(0fYN$4NYfUs%K`aZ)s^o4~%6%|U$;Vgv`0O(ih5C^{_{}arNX?5z zo}9jK?U<%MZp?0ol1x`0eI+JEUibhYeiBQ{jx6tix;*E|s*@Jk5&4L|syHl{EobSx|nQ zl0iR+fkmrT%3U82zw^gqP!BxlQfbw4*AgkF%L6z+cOG211MwcvBBV!EfJPfZJwRT& zDZBxxqJ?&}-4y*yEK($$V{_B)pbMvD6*D93ih!>7p)ck2b4aM7zG_3;;rF3G56%GXa0l$ViJBgwQs|3$eHm#}x#9u?&7P z&eU&ezFf2{;1hr5hK4xA2Pia3)(GYv@P z&irUwO9hJNcn}M#)&3!nArGq`iSX3OXAg+6g;9z|~H9 zHkPfZG|8fv<7jg|-xAYRk$Ik|0r1!9;9DItKlTMJroz;+-96sZQZ(}2dhTC;)06%T zw0XmC=OxL_Rg72WF0K?#+fqEm0CN1AI7K)_);`N4%)j7cOcOVhwuJ(Ae2*K|kBn`K zM2VSAq$H+bxZRCP4el5HU)yNt77e+P3mV;>l^NLo`@(%$pRHOJ zb5DM@ttA>^6}x6uOTUOOs^T&axR?$(1zs*CQV*c5w zkC)o{C7U+H!h*8KUpnPYMRr=DBZq8$4MRM)WC@-!OQL)G3`DP+V*0e@5^46l@S<*7 zVx_9MbYTh6x!4AfXNU<|!*b#(qKTr&q7$NNy|75qhVI*KwKp`TcqbTS%VXqSnklPh z^z@LyyE;(-VaAanZ?cYkk5pdxs5}uM)yfDC%dq4rF+~ammq;Aq=d%?w%AHKm{la$P zFiF3^40fLW@?)IS;GOeb*#=K5fqy)zcr>r)feTEL(>cI=V$Z#QWW$Dok|g>Xa_8wI z+32t7!I5WS4TGmFR*bl$mK%>X@W(O?49sEaiJ;{>vo(sOB%;2^MKo3hfBZGk6q+g* zEv0qfEzkK>GVaKY@cI|cYd!_1sVX>EjMH2Y`2>gr6!W)&;=!iPFlrG>bdHKYWx|hm zuPfvD#Vkv`iG3vY(2Cr3ApFwc(-%UZIz^oC5bJsLmD=biP*BvWrDgL*h8EdKN*LXiwh45)o`CQ>#L%~;)_V1mv zvc@?o^mdxy;awrc{0+=mXW&%AdBeDni4t^U1>P=I5H5O+0(2Me^oU}~RO5qkZLX;_ z0jJeqF9@+=?}Le7-xj?dpJ{5%cY+DzMraL6aCDwll!mlC#{j<)H2Z)lP;aW4h{<#( z%0w%P;q;1D?lZcanvt}&Y8S0|5uI5$JLMnhGSR{Z03(*1C^Z?}xX5ScR;@cSgckze zuzb;SFv=f>_^&}`<2OElx`)0uM@~beAjiyFS+UnR79Sr|U5h45c&TahV^RsoeT-3i?qaEl&`9hU%^?zQ3x-QoVN@ zGO3L*LvAS317SiyE>i%xZW!#t1LN-sTu>Nvj7L4 z$Mfsg$EtItDC0X81;xp<54*EBBK%1AhV&;P0Y~TQ3TpAh;OgwJG!?Mz9M#&FU(r^T z-L?4{)N556epwOPU|c3~mo}y_y+#qX0lYLtQsl^&KMz0-$RBXZHa2*!puH8K#r)|X z4swkd7n%Wq-p)({v}X#pLOfx}<90Tj%D`{vUn#Srpnk#!PT<+FuzzWYBeHP@3Pt0| z3z6x83zx%fH0i%u>08_k7$xL6H&(Ru9%|;58-;6o+l4g{DdHe+!TkZ4b(hqiTpy5c z1LBNU7~+dIO8)mf!PTMZza6E}fA|alw&-#MdiK*KG?u`mvD$6{Qbnijf^6{IFVl}c zQ}wg=>E4y0!^5r()R>3E_BH2-i?hEXzI_HJwF72;ve*j~JhgH22!4-6OdMWqq?1^pXU*k=wK$e&ZGtGd_FctW8;Mf^6KA($ARpE<5I92egYw*4nyH~C#yrTJtFpMN zVi@>PJwc(91%|n+;vuTloMi)+4rd|Kbq-q-j~0}^Q5Pz|1~t~x&3ITi#%`s>><64x z(L%Oy>64ce_x~uI<<KcxU{`oVu}I^6e-xP>L##FIZD-s5J&{Bc03ZST|_t+-~9`RweBI%8sqEce?y z>L((PHY_Cz=qyT%?Xp~eQ|J-Ij>4sf^cJ2J6oBg8odyWn=a4;6GWE@r24v@qjOo5o zODOr06#%XTe2xc>v0`3rECCvL9Ou^ATfSf({Ft9*>>$>P%bB5FOOgAHuDrC{3MT%+ zmcj|44-SS63nFWIlW)nc$N4vfTh6qI!+2N##Ym1Q5nn?TFK83k=RZJAho*gwZnZ-V zq!BcM_-ta@lJv!WtGGJ&90T#WSb&?Ks<3sUp}RgtVwzs5(WHyZ-V(JE3D;jyhYr(M zx{w#-VL;-SE(Da_7@ML04rQEQNl^+rL2nEe1m8sRpG8FtMzKb-WZPbEtWH27Um%_* zAuX&#r;q0_gr|cX%P=2Zy$v-F6FEvEi+Q2@k#L1-qxq{8T4663Bt3;H1;{`$@mh&u zi(Ex31%DW zbi#7RN=e#Ua7oC8GJ0G@FR{no5*iE|0(9!j`jlrChHb!gm(wx(0q+|5->eZXFk*W+ zNE|gQ_0}X-qq9@=t0~*%7LyUQ(j~s6b2Uh>AbDrA`mq?<$Ef=9dw@ zV0(I}o+!961MxFZFSSJI$D-O0)dqThTzN&v(8?u9*}Wse*OMJN&Ya2g#yV1K%m77I z@#r7VKWS~4f*rah&`RuTIM~l)RXgdUoJ&Qg)Vce*O!b!s&T(VF!=qjnVWY*@OSF_Q zr?ENuT6eMhkq1l78-pJwWf$Scn-X3nk#GyMdL?PJM^00mYfsy(e#!-<)G{^lJYiLR z0r=!lXCwZ8tiI8Rb#VvhMs%CsXwT?p(Q-y-sgcQ*&u{uB@J)tLXz@`IH~t7?pE(OD z>HtT(ks@~eUEIxvsl1qPwy8y^x-QI&09T4yHDCJYd5R}W#Q$bmzz9sonr zF>VbZw|ldH>f@VQigZ;=yBRTYbta39KBLs9YyM^|jcyqr9)rP#gHo~vmzVcR#U%O4q7cqS9(P6^fqvS`-pAYKI{dvDJhCIMIs^W5twyz&_im2ihWdpN_TnLc(5lK|$vMem5Ok?C zikr9CD%O%AqylV#02$&O=)qAAc=2UY=p?q&k95yxK>ysk*ap|yorL&O(a}M!FvxHc z#Vs*k5E~1cq|Ue}(rl=_bjSr(8;dN*uoAl1-ux0ktU)45v{X-upTCHB?glddir#P) z5AuYSed$7B$9NO|#hO~GocVF6oA`WC;E^v=oOAYE#L1R6E4jWf2azND=iAHfZ$CqJ4Yr~kRnZ;|3|_Fu}BM}LU%}^xRtATqlxYgm)??RDHm|ug*1%yE zJ?sIb&2%d;l-$gh_N;tPj^Eh&D%W{ZivTl3teIKNA)(gqKz$#(?9><2V}p-4^>)0W znAvrP2Cy?v2X0w>kehfBSH$STmBMOPg zUwR3+c{H5=DesOraxe4s-9ovVs#o@5;rJAR1DWHt9DJ)!isptyTMkfv>>IgvtTvA6 zuEz_3aTTx6|2WjUrqV5G+P8SYFg80N)9G?nQ7MN4v{QKI#7@}fR1Z?!3kpOofxH<@ zy3sexaF86xeQuw}#7xaX59DkaiqOyGRf~#D@7xNQ;^l#Dd$9576ZWO9Ru?pfCzmRF zqGNj+#)Un!v<{T$U0V8Issn5uzP~nO2#bTiNO~oY+~;&u2FNbyl%}7Rky4;1482q1UxD)oM z9aR_x2WT}gaEiz**K^?ii6wnvX4^X{m_a|j#U2?56O9gh6{!S%o^Ow7x)u5@HBJN)=Ko(DJ?;b zk;!YIp*Y8HEyt@2^(tj)_s!uPmj5KJpmq?aMHx&NFOlxoUzov=zNwLMgDE6>iim-4 zf{lDN&O6F)WZQT6_y*%4PTQzL&dp=|@xEXBxT6uMDBtiC-e%%1Uh=4EuH0?=()t2! zP0DH@s(lO9Rpu0Tv-hx30Avuem2wFH?7l@iY=!Knkb2&*@x?!@#-;7q5pG|Y00!*} z6EO0|26;$&wf-izlIw?2N_r-(X2|S1VW|fPfpGH@=vRvo+2XhF1Oy))gC41{dTJ)B z#_Kg|+Cc1JDKgc|Fj~3I2aD~>!T}$CIpC~pi!aR66E8L5B~rqOGcyr{UA4wJCNv>|EEi5^;}T~jr0n-nJmoZd|u*>*vME3D@6~XqxdCL ze%KH;bQKWXjrzr;1b@)Ff!_s+3Tk4>x%7@!x}kWD7X@0BKDh#?P(fU|j>!lF$S+Av z#*XT6fBYkE8RCjJd-o>1<4hf9|GY!3?#AdGyGTTLM0 zYb<+oR|=Dy$EUHRBu$t~;5;o&OAafl7;LIq1sPY-ym&u|D&xui?5pr*pus<8Rr%yY z-7(6wyG?_`>TjSZAC{Uwu*G}05>Rn1o#8xwc5`E4%y7^iC0B{O{B~|B#li5Vy!0DZ z0+~WDTgh@Z;C$Klb&@hc~rqeMQM`LwW`ct=!?=m%~$m28XAW ze`%dL?Nk}L-W=px88mLMk%?+OI4rcdJnMzP)N)Gu`UUvA0;kQ!naCUGt3|ah1jZ$T z0of)gswQ-PCg)W?7-ohn*@e2!rq9@}V#y(zbF>1vG||Vm>4bI_Z8<>1>Zn{Q^>!}< zTeqv8Rv^U9g&a#H#?0^lm4GBa= z=kV^JQT0_JEpVD!ZQtX`x~9E zJQPtfRbcGXkIt*odpkbvVO-_+m2l-=>n3Bys0+^y0NBog|KSU1NPQf}G*uDpZ}GL> zjN+0u?RGo`WUnI-RJ;<6IbeC_bUwVSSgc7Hn+o=4vri-Vj1+0)-KlmLM)&&dBt5=I zSKBD1&Qk1mZX@)IX8+|#!~sDPM(H-m)8wt#kB(hr4@jN)X>N2c!j#LkJ1}6%g_D`h zuxwfRXrW*g`OA3p4^`RK_`B?lzp5tigBkNn?0pwB`^m~FYppH>d8hp`8Jl0`0m$^t z0|3+EBDUS*DUjaHlV6n9TH&s?gG~SHALsKwEuZTn8vb8ulKl_bd>!)ezZ>5zflM6! zf0&_e9o~`fpKl|9(fps_5{#)A3$n%c+1B^Ri=7#(g?@mjHtr7SJEGZCk|7}&A$XW! zFbgvG=Tx?sfl|WpzLwnu9VN!|dtaH+e8+T?9RrF0{G{I4W8se*6FnEHwjgwZM)q@WLi>NA1G82OFa_z*23Rcic0ByFYTAM>2* zQTJb4my)!wb(=SbZ4(PWEsa}pu7)rZQ`JH5w{6?jZxJ*baEA{tMpO||eFji6>khY#CZionw{(?yjX}7=8@lg~MTn=C7X*w#pu2KEKlFY5 z(n=993xo{M<&1yr29*x79REg zQRdG!0H6I0KufQ{M2$6{WZ*wgN8%0QU>?^pTo^Htgbr^QTaHKl>SNb47Ic$wp^ zAb_Px=gEGsqKq%sOn>0Ly77H|{`x=<_;;>5Iz-xutjIsTt*7z)#$T*`c*0z@dlCekM&4*C*11=ffIbj2EO|0)=)r)oC zAgm0SUceD<25n8zbnN_Of}hv-*vz20pk%yg48fM-77QwINF_Td*#ZDyNv|HxXE@wiaN@&ajWy z^BYmL@St8F%2dV4g>yZ{(|LM3sK+YDQSN# zSsyu5@9gb89Y^|I#-Z27tZ4Le?la)K)W&yBIRhIqa>!$1_DJ!sq=Tx}uLq$4H@D+s zO&SoN->j-@){c(Z2g#GD!STyKN>eE|Epq zr-0B#W{ajF&WEwy%go9gfG^}PeNhPez6wh>G9Bf}j&^Rti=kCsFP*r5PT_IW_@dbB zy~}3xugtG)OnDceoYJA3-0&!Ua&Q+`G|9>-JkI?{&hcq}Mr@TLrNRcl$jML1Ia%+# z1T81hkc3yj2%~{t+L|xVs5?U_UrarxHokzD7GS%(3)?Rrc0y*WVpRAS3(Mvjdzzv~ zreMDJ!_xt!=Al%v+i>^(2Z41UHA6+XC4>6RYT;&*gXoz|O3z{wbIY&8kWSN@wQ(7M zK7AwVUPtd>Z@|d`J=x>(qGga+yPnBBCgVVVW#&Ii&ldFo3icNDPnD9f_9>BHd3V99 z(I>CDlX8u^!O&~`m4sKcU6=YCyDk?ryLPROUINU>yo4U8Hyj)1APN~TAq}>PT;YXt908+e z@WN4Xy0{Oe?NOc}>)2~!Zs=PW_AOxmex~>8LV0`{eGQ^85uBw2z4Bu#+&6*?$-Z;0f&L9%i)*VsWf9Lg1n2O$)kW&>i zM!Ry7(%h6;&L5}iD>00xWBDckb7hI)(#7}wp~8}cE9UqR>!F|s`nNnLM@>urhdGaZ zI^(OvfHoh|X|$%DXpQgE`1hFtbo4eTgS#|{s?svzd`ynJVuvOtsLMDODZPIaquB|dXw!h9$ zC*fWJ6nV18|_ z=V?0g0uRo-pqUQsG~MpSQ%=DWFKQ7*8kKbeP5VCHqcH7!} zvvdxoevR)sH%V%CH5mL<50LNWX+vm(@p^2ReSoyf4nrm~N4QBN z+)W19ew`ynjeuqh-~8^2uEw>QbAux!)69bI!QEa9wc(9l=UAm{YQa36&Qa6Q z@Z&p*e&CwKjQ(~<^Md9jpG~s4rOFw1Gq`uWV$!!)o=(k+dVwA%2Lbg%Xx*i26mS|PXz?R6$^Ol&M)`vD z4VaJVh?$_yI$F60yZ;j=4y37yVWlwz!2B-vDzqZva9Chsh+HFJ0(*kH`dXBqSg*FDxR$%Zb`4q<;z%bR7G%MTzHvTksi`t|X5fs%&aTHep2I;0pbIW5t||$9h20UA&GQ?G2x6pDIFe=a$H5@mY5K{Jh)jl@>r@ zQQBV(e2jAd7?g>Ich@M}*rny6O!kR@RpK^{T2-!sT$S$KmNFx}B`|s+skl)ihZ8OB zbtBTP+PMX=uO{5`JH`rQS5c$s@ukuJg~6*cbuhUeN3H-ovk}ubKt-}vJI%|uc0(t^ zZrr>-{?++JZ8ydks}_*W=ABfTnoI=f-tJ6ModfS9$2;1h5=Ms_ijT5{9!1^lDvHYr zV|rJ>8nr$^OQdg8Ge;X+qUFXJ+(Y7L5`HS^YgeH%dm1&m<}v;NYhP@exu{x|h{i@r zB_q6Zn_fp;Omvz~HcI3#f68uwt@o0@`Q9BBMuUhKiP5sAD+l?Qd5T_Op(milg2

z?m{#t^P$^}dY3=Yc`J8Z4p%U8J0O&c&!C*Y`2gR+6`!tC)nVJDAgA^N0|f^z{0#lc z$S&?wZ;cc%pu=4)f8frT-Jn1}`47j`zf5sO` zd(;SyE2KyKmU4xdoi_qBU9~n9&M5tavDjt>3?al2vd0Gia1Y>gy^G0j5>ZQ_lp?<_ zM0jI-GDVX=R1`$|T8@|qe-R;_?&NK_6_`P}8WFsSOkMZe_rfb)nI~v;u0`6S<#h}%~iW!yqu#^yH%zq*g zHvoONMt3!r-RmFoAZD+pt2Gg%4@MYg;9npP(t1}vUT~uy^@yfHG?q}bo&>pae*Na> zdn4|7_jFe)R|DK)MJE~puI=kME^h`-mT|!CtWi?z`J}NPi`os p=}Yrj>tFK!*4yl96oY=>^6lmEXQ}|qX~Tv~=dI3_{(Af2{{q6BVrT#W diff --git a/docs/trx-check-passing.png b/docs/trx-check-passing.png index 1a635cfa9ee5e867a222744b36f1a2c424a52966..33b92308fe32230ce60fc1cd4d472e18ac652d52 100755 GIT binary patch literal 91001 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�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

ckX2G}qm!ku(SwN%4a%YC0oiyLle`{c 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 13", + "npm": ">= 6" + } + }, + "node_modules/@actions/core": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/@actions/core/-/core-1.2.6.tgz", + "integrity": "sha512-ZQYitnqiyBc3D+k7LsgSBmMDVkOVidaagDG7j3fOym77jNunWRuYx7VSHa9GNfFZh+zh61xsCjRj4JxMZlDqTA==" + }, + "node_modules/@actions/exec": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@actions/exec/-/exec-1.0.4.tgz", + "integrity": "sha512-4DPChWow9yc9W3WqEbUj8Nr86xkpyE29ZzWjXucHItclLbEW6jr80Zx4nqv18QL6KK65+cifiQZXvnqgTV6oHw==", + "dependencies": { + "@actions/io": "^1.0.1" + } + }, + "node_modules/@actions/github": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@actions/github/-/github-4.0.0.tgz", + "integrity": "sha512-Ej/Y2E+VV6sR9X7pWL5F3VgEWrABaT292DRqRU6R4hnQjPtC/zD3nagxVdXWiRQvYDh8kHXo7IDmG42eJ/dOMA==", + "dependencies": { + "@actions/http-client": "^1.0.8", + "@octokit/core": "^3.0.0", + "@octokit/plugin-paginate-rest": "^2.2.3", + "@octokit/plugin-rest-endpoint-methods": "^4.0.0" + } + }, + "node_modules/@actions/http-client": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/@actions/http-client/-/http-client-1.0.9.tgz", + "integrity": "sha512-0O4SsJ7q+MK0ycvXPl2e6bMXV7dxAXOGjrXS1eTF9s2S401Tp6c/P3c3Joz04QefC1J6Gt942Wl2jbm3f4mLcg==", + "dependencies": { + "tunnel": "0.0.6" + } + }, + "node_modules/@actions/io": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@actions/io/-/io-1.0.2.tgz", + "integrity": "sha512-J8KuFqVPr3p6U8W93DOXlXW6zFvrQAJANdS+vw0YhusLIq+bszW8zmK2Fh1C2kDPX8FMvwIl1OUcFgvJoXLbAg==" + }, + "node_modules/@babel/code-frame": { + "version": "7.5.5", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.5.5.tgz", + "integrity": "sha512-27d4lZoomVyo51VegxI20xZPuSHusqbQag/ztrBC7wegWoQ1nLREPVSKSW8byhTlzTKyNE4ifaTA6lCp7JjpFw==", + "dev": true, + "dependencies": { + "@babel/highlight": "^7.0.0" + } + }, + "node_modules/@babel/core": { + "version": "7.7.4", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.7.4.tgz", + "integrity": "sha512-+bYbx56j4nYBmpsWtnPUsKW3NdnYxbqyfrP2w9wILBuHzdfIKz9prieZK0DFPyIzkjYVUe4QkusGL07r5pXznQ==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.5.5", + "@babel/generator": "^7.7.4", + "@babel/helpers": "^7.7.4", + "@babel/parser": "^7.7.4", + "@babel/template": "^7.7.4", + "@babel/traverse": "^7.7.4", + "@babel/types": "^7.7.4", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "json5": "^2.1.0", + "lodash": "^4.17.13", + "resolve": "^1.3.2", + "semver": "^5.4.1", + "source-map": "^0.5.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/@babel/generator": { + "version": "7.7.4", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.7.4.tgz", + "integrity": "sha512-m5qo2WgdOJeyYngKImbkyQrnUN1mPceaG5BV+G0E3gWsa4l/jCSryWJdM2x8OuGAOyh+3d5pVYfZWCiNFtynxg==", + "dev": true, + "dependencies": { + "@babel/types": "^7.7.4", + "jsesc": "^2.5.1", + "lodash": "^4.17.13", + "source-map": "^0.5.0" + } + }, + "node_modules/@babel/helper-function-name": { + "version": "7.7.4", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.7.4.tgz", + "integrity": "sha512-AnkGIdiBhEuiwdoMnKm7jfPfqItZhgRaZfMg1XX3bS25INOnLPjPG1Ppnajh8eqgt5kPJnfqrRHqFqmjKDZLzQ==", + "dev": true, + "dependencies": { + "@babel/helper-get-function-arity": "^7.7.4", + "@babel/template": "^7.7.4", + "@babel/types": "^7.7.4" + } + }, + "node_modules/@babel/helper-get-function-arity": { + "version": "7.7.4", + "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.7.4.tgz", + "integrity": "sha512-QTGKEdCkjgzgfJ3bAyRwF4yyT3pg+vDgan8DSivq1eS0gwi+KGKE5x8kRcbeFTb/673mkO5SN1IZfmCfA5o+EA==", + "dev": true, + "dependencies": { + "@babel/types": "^7.7.4" + } + }, + "node_modules/@babel/helper-member-expression-to-functions": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.12.1.tgz", + "integrity": "sha512-k0CIe3tXUKTRSoEx1LQEPFU9vRQfqHtl+kf8eNnDqb4AUJEy5pz6aIiog+YWtVm2jpggjS1laH68bPsR+KWWPQ==", + "dev": true, + "dependencies": { + "@babel/types": "^7.12.1" + } + }, + "node_modules/@babel/helper-member-expression-to-functions/node_modules/@babel/types": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.12.1.tgz", + "integrity": "sha512-BzSY3NJBKM4kyatSOWh3D/JJ2O3CVzBybHWxtgxnggaxEuaSTTDqeiSb/xk9lrkw2Tbqyivw5ZU4rT+EfznQsA==", + "dev": true, + "dependencies": { + "@babel/helper-validator-identifier": "^7.10.4", + "lodash": "^4.17.19", + "to-fast-properties": "^2.0.0" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.12.5", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.12.5.tgz", + "integrity": "sha512-SR713Ogqg6++uexFRORf/+nPXMmWIn80TALu0uaFb+iQIUoR7bOC7zBWyzBs5b3tBBJXuyD0cRu1F15GyzjOWA==", + "dev": true, + "dependencies": { + "@babel/types": "^7.12.5" + } + }, + "node_modules/@babel/helper-module-imports/node_modules/@babel/types": { + "version": "7.12.5", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.12.5.tgz", + "integrity": "sha512-gyTcvz7JFa4V45C0Zklv//GmFOAal5fL23OWpBLqc4nZ4Yrz67s4kCNwSK1Gu0MXGTU8mRY3zJYtacLdKXlzig==", + "dev": true, + "dependencies": { + "@babel/helper-validator-identifier": "^7.10.4", + "lodash": "^4.17.19", + "to-fast-properties": "^2.0.0" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.12.1.tgz", + "integrity": "sha512-QQzehgFAZ2bbISiCpmVGfiGux8YVFXQ0abBic2Envhej22DVXV9nCFaS5hIQbkyo1AdGb+gNME2TSh3hYJVV/w==", + "dev": true, + "dependencies": { + "@babel/helper-module-imports": "^7.12.1", + "@babel/helper-replace-supers": "^7.12.1", + "@babel/helper-simple-access": "^7.12.1", + "@babel/helper-split-export-declaration": "^7.11.0", + "@babel/helper-validator-identifier": "^7.10.4", + "@babel/template": "^7.10.4", + "@babel/traverse": "^7.12.1", + "@babel/types": "^7.12.1", + "lodash": "^4.17.19" + } + }, + "node_modules/@babel/helper-module-transforms/node_modules/@babel/code-frame": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.10.4.tgz", + "integrity": "sha512-vG6SvB6oYEhvgisZNFRmRCUkLz11c7rp+tbNTynGqc6mS1d5ATd/sGyV6W0KZZnXRKMTzZDRgQT3Ou9jhpAfUg==", + "dev": true, + "dependencies": { + "@babel/highlight": "^7.10.4" + } + }, + "node_modules/@babel/helper-module-transforms/node_modules/@babel/generator": { + "version": "7.12.5", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.12.5.tgz", + "integrity": "sha512-m16TQQJ8hPt7E+OS/XVQg/7U184MLXtvuGbCdA7na61vha+ImkyyNM/9DDA0unYCVZn3ZOhng+qz48/KBOT96A==", + "dev": true, + "dependencies": { + "@babel/types": "^7.12.5", + "jsesc": "^2.5.1", + "source-map": "^0.5.0" + } + }, + "node_modules/@babel/helper-module-transforms/node_modules/@babel/helper-function-name": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.10.4.tgz", + "integrity": "sha512-YdaSyz1n8gY44EmN7x44zBn9zQ1Ry2Y+3GTA+3vH6Mizke1Vw0aWDM66FOYEPw8//qKkmqOckrGgTYa+6sceqQ==", + "dev": true, + "dependencies": { + "@babel/helper-get-function-arity": "^7.10.4", + "@babel/template": "^7.10.4", + "@babel/types": "^7.10.4" + } + }, + "node_modules/@babel/helper-module-transforms/node_modules/@babel/helper-get-function-arity": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.10.4.tgz", + "integrity": "sha512-EkN3YDB+SRDgiIUnNgcmiD361ti+AVbL3f3Henf6dqqUyr5dMsorno0lJWJuLhDhkI5sYEpgj6y9kB8AOU1I2A==", + "dev": true, + "dependencies": { + "@babel/types": "^7.10.4" + } + }, + "node_modules/@babel/helper-module-transforms/node_modules/@babel/helper-split-export-declaration": { + "version": "7.11.0", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.11.0.tgz", + "integrity": "sha512-74Vejvp6mHkGE+m+k5vHY93FX2cAtrw1zXrZXRlG4l410Nm9PxfEiVTn1PjDPV5SnmieiueY4AFg2xqhNFuuZg==", + "dev": true, + "dependencies": { + "@babel/types": "^7.11.0" + } + }, + "node_modules/@babel/helper-module-transforms/node_modules/@babel/highlight": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.10.4.tgz", + "integrity": "sha512-i6rgnR/YgPEQzZZnbTHHuZdlE8qyoBNalD6F+q4vAFlcMEcqmkoG+mPqJYJCo63qPf74+Y1UZsl3l6f7/RIkmA==", + "dev": true, + "dependencies": { + "@babel/helper-validator-identifier": "^7.10.4", + "chalk": "^2.0.0", + "js-tokens": "^4.0.0" + } + }, + "node_modules/@babel/helper-module-transforms/node_modules/@babel/parser": { + "version": "7.12.5", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.12.5.tgz", + "integrity": "sha512-FVM6RZQ0mn2KCf1VUED7KepYeUWoVShczewOCfm3nzoBybaih51h+sYVVGthW9M6lPByEPTQf+xm27PBdlpwmQ==", + "dev": true, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/helper-module-transforms/node_modules/@babel/template": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.10.4.tgz", + "integrity": "sha512-ZCjD27cGJFUB6nmCB1Enki3r+L5kJveX9pq1SvAUKoICy6CZ9yD8xO086YXdYhvNjBdnekm4ZnaP5yC8Cs/1tA==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.10.4", + "@babel/parser": "^7.10.4", + "@babel/types": "^7.10.4" + } + }, + "node_modules/@babel/helper-module-transforms/node_modules/@babel/traverse": { + "version": "7.12.5", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.12.5.tgz", + "integrity": "sha512-xa15FbQnias7z9a62LwYAA5SZZPkHIXpd42C6uW68o8uTuua96FHZy1y61Va5P/i83FAAcMpW8+A/QayntzuqA==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.10.4", + "@babel/generator": "^7.12.5", + "@babel/helper-function-name": "^7.10.4", + "@babel/helper-split-export-declaration": "^7.11.0", + "@babel/parser": "^7.12.5", + "@babel/types": "^7.12.5", + "debug": "^4.1.0", + "globals": "^11.1.0", + "lodash": "^4.17.19" + } + }, + "node_modules/@babel/helper-module-transforms/node_modules/@babel/types": { + "version": "7.12.5", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.12.5.tgz", + "integrity": "sha512-gyTcvz7JFa4V45C0Zklv//GmFOAal5fL23OWpBLqc4nZ4Yrz67s4kCNwSK1Gu0MXGTU8mRY3zJYtacLdKXlzig==", + "dev": true, + "dependencies": { + "@babel/helper-validator-identifier": "^7.10.4", + "lodash": "^4.17.19", + "to-fast-properties": "^2.0.0" + } + }, + "node_modules/@babel/helper-optimise-call-expression": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.10.4.tgz", + "integrity": "sha512-n3UGKY4VXwXThEiKrgRAoVPBMqeoPgHVqiHZOanAJCG9nQUL2pLRQirUzl0ioKclHGpGqRgIOkgcIJaIWLpygg==", + "dev": true, + "dependencies": { + "@babel/types": "^7.10.4" + } + }, + "node_modules/@babel/helper-optimise-call-expression/node_modules/@babel/types": { + "version": "7.11.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.11.0.tgz", + "integrity": "sha512-O53yME4ZZI0jO1EVGtF1ePGl0LHirG4P1ibcD80XyzZcKhcMFeCXmh4Xb1ifGBIV233Qg12x4rBfQgA+tmOukA==", + "dev": true, + "dependencies": { + "@babel/helper-validator-identifier": "^7.10.4", + "lodash": "^4.17.19", + "to-fast-properties": "^2.0.0" + } + }, + "node_modules/@babel/helper-plugin-utils": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.0.0.tgz", + "integrity": "sha512-CYAOUCARwExnEixLdB6sDm2dIJ/YgEAKDM1MOeMeZu9Ld/bDgVo8aiWrXwcY7OBh+1Ea2uUcVRcxKk0GJvW7QA==", + "dev": true + }, + "node_modules/@babel/helper-replace-supers": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.12.1.tgz", + "integrity": "sha512-zJjTvtNJnCFsCXVi5rUInstLd/EIVNmIKA1Q9ynESmMBWPWd+7sdR+G4/wdu+Mppfep0XLyG2m7EBPvjCeFyrw==", + "dev": true, + "dependencies": { + "@babel/helper-member-expression-to-functions": "^7.12.1", + "@babel/helper-optimise-call-expression": "^7.10.4", + "@babel/traverse": "^7.12.1", + "@babel/types": "^7.12.1" + } + }, + "node_modules/@babel/helper-replace-supers/node_modules/@babel/code-frame": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.10.4.tgz", + "integrity": "sha512-vG6SvB6oYEhvgisZNFRmRCUkLz11c7rp+tbNTynGqc6mS1d5ATd/sGyV6W0KZZnXRKMTzZDRgQT3Ou9jhpAfUg==", + "dev": true, + "dependencies": { + "@babel/highlight": "^7.10.4" + } + }, + "node_modules/@babel/helper-replace-supers/node_modules/@babel/generator": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.12.1.tgz", + "integrity": "sha512-DB+6rafIdc9o72Yc3/Ph5h+6hUjeOp66pF0naQBgUFFuPqzQwIlPTm3xZR7YNvduIMtkDIj2t21LSQwnbCrXvg==", + "dev": true, + "dependencies": { + "@babel/types": "^7.12.1", + "jsesc": "^2.5.1", + "source-map": "^0.5.0" + } + }, + "node_modules/@babel/helper-replace-supers/node_modules/@babel/helper-function-name": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.10.4.tgz", + "integrity": "sha512-YdaSyz1n8gY44EmN7x44zBn9zQ1Ry2Y+3GTA+3vH6Mizke1Vw0aWDM66FOYEPw8//qKkmqOckrGgTYa+6sceqQ==", + "dev": true, + "dependencies": { + "@babel/helper-get-function-arity": "^7.10.4", + "@babel/template": "^7.10.4", + "@babel/types": "^7.10.4" + } + }, + "node_modules/@babel/helper-replace-supers/node_modules/@babel/helper-get-function-arity": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.10.4.tgz", + "integrity": "sha512-EkN3YDB+SRDgiIUnNgcmiD361ti+AVbL3f3Henf6dqqUyr5dMsorno0lJWJuLhDhkI5sYEpgj6y9kB8AOU1I2A==", + "dev": true, + "dependencies": { + "@babel/types": "^7.10.4" + } + }, + "node_modules/@babel/helper-replace-supers/node_modules/@babel/helper-split-export-declaration": { + "version": "7.11.0", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.11.0.tgz", + "integrity": "sha512-74Vejvp6mHkGE+m+k5vHY93FX2cAtrw1zXrZXRlG4l410Nm9PxfEiVTn1PjDPV5SnmieiueY4AFg2xqhNFuuZg==", + "dev": true, + "dependencies": { + "@babel/types": "^7.11.0" + } + }, + "node_modules/@babel/helper-replace-supers/node_modules/@babel/highlight": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.10.4.tgz", + "integrity": "sha512-i6rgnR/YgPEQzZZnbTHHuZdlE8qyoBNalD6F+q4vAFlcMEcqmkoG+mPqJYJCo63qPf74+Y1UZsl3l6f7/RIkmA==", + "dev": true, + "dependencies": { + "@babel/helper-validator-identifier": "^7.10.4", + "chalk": "^2.0.0", + "js-tokens": "^4.0.0" + } + }, + "node_modules/@babel/helper-replace-supers/node_modules/@babel/parser": { + "version": "7.12.3", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.12.3.tgz", + "integrity": "sha512-kFsOS0IbsuhO5ojF8Hc8z/8vEIOkylVBrjiZUbLTE3XFe0Qi+uu6HjzQixkFaqr0ZPAMZcBVxEwmsnsLPZ2Xsw==", + "dev": true, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/helper-replace-supers/node_modules/@babel/template": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.10.4.tgz", + "integrity": "sha512-ZCjD27cGJFUB6nmCB1Enki3r+L5kJveX9pq1SvAUKoICy6CZ9yD8xO086YXdYhvNjBdnekm4ZnaP5yC8Cs/1tA==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.10.4", + "@babel/parser": "^7.10.4", + "@babel/types": "^7.10.4" + } + }, + "node_modules/@babel/helper-replace-supers/node_modules/@babel/traverse": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.12.1.tgz", + "integrity": "sha512-MA3WPoRt1ZHo2ZmoGKNqi20YnPt0B1S0GTZEPhhd+hw2KGUzBlHuVunj6K4sNuK+reEvyiPwtp0cpaqLzJDmAw==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.10.4", + "@babel/generator": "^7.12.1", + "@babel/helper-function-name": "^7.10.4", + "@babel/helper-split-export-declaration": "^7.11.0", + "@babel/parser": "^7.12.1", + "@babel/types": "^7.12.1", + "debug": "^4.1.0", + "globals": "^11.1.0", + "lodash": "^4.17.19" + } + }, + "node_modules/@babel/helper-replace-supers/node_modules/@babel/types": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.12.1.tgz", + "integrity": "sha512-BzSY3NJBKM4kyatSOWh3D/JJ2O3CVzBybHWxtgxnggaxEuaSTTDqeiSb/xk9lrkw2Tbqyivw5ZU4rT+EfznQsA==", + "dev": true, + "dependencies": { + "@babel/helper-validator-identifier": "^7.10.4", + "lodash": "^4.17.19", + "to-fast-properties": "^2.0.0" + } + }, + "node_modules/@babel/helper-simple-access": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.12.1.tgz", + "integrity": "sha512-OxBp7pMrjVewSSC8fXDFrHrBcJATOOFssZwv16F3/6Xtc138GHybBfPbm9kfiqQHKhYQrlamWILwlDCeyMFEaA==", + "dev": true, + "dependencies": { + "@babel/types": "^7.12.1" + } + }, + "node_modules/@babel/helper-simple-access/node_modules/@babel/types": { + "version": "7.12.5", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.12.5.tgz", + "integrity": "sha512-gyTcvz7JFa4V45C0Zklv//GmFOAal5fL23OWpBLqc4nZ4Yrz67s4kCNwSK1Gu0MXGTU8mRY3zJYtacLdKXlzig==", + "dev": true, + "dependencies": { + "@babel/helper-validator-identifier": "^7.10.4", + "lodash": "^4.17.19", + "to-fast-properties": "^2.0.0" + } + }, + "node_modules/@babel/helper-split-export-declaration": { + "version": "7.7.4", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.7.4.tgz", + "integrity": "sha512-guAg1SXFcVr04Guk9eq0S4/rWS++sbmyqosJzVs8+1fH5NI+ZcmkaSkc7dmtAFbHFva6yRJnjW3yAcGxjueDug==", + "dev": true, + "dependencies": { + "@babel/types": "^7.7.4" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.10.4.tgz", + "integrity": "sha512-3U9y+43hz7ZM+rzG24Qe2mufW5KhvFg/NhnNph+i9mgCtdTCtMJuI1TMkrIUiK7Ix4PYlRF9I5dhqaLYA/ADXw==", + "dev": true + }, + "node_modules/@babel/helpers": { + "version": "7.7.4", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.7.4.tgz", + "integrity": "sha512-ak5NGZGJ6LV85Q1Zc9gn2n+ayXOizryhjSUBTdu5ih1tlVCJeuQENzc4ItyCVhINVXvIT/ZQ4mheGIsfBkpskg==", + "dev": true, + "dependencies": { + "@babel/template": "^7.7.4", + "@babel/traverse": "^7.7.4", + "@babel/types": "^7.7.4" + } + }, + "node_modules/@babel/highlight": { + "version": "7.5.0", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.5.0.tgz", + "integrity": "sha512-7dV4eu9gBxoM0dAnj/BCFDW9LFU0zvTrkq0ugM7pnHEgguOEeOz1so2ZghEdzviYzQEED0r4EAgpsBChKy1TRQ==", + "dev": true, + "dependencies": { + "chalk": "^2.0.0", + "esutils": "^2.0.2", + "js-tokens": "^4.0.0" + } + }, + "node_modules/@babel/parser": { + "version": "7.7.4", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.7.4.tgz", + "integrity": "sha512-jIwvLO0zCL+O/LmEJQjWA75MQTWwx3c3u2JOTDK5D3/9egrWRRA0/0hk9XXywYnXZVVpzrBYeIQTmhwUaePI9g==", + "dev": true, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/plugin-syntax-async-generators": { + "version": "7.8.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", + "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "node_modules/@babel/plugin-syntax-async-generators/node_modules/@babel/helper-plugin-utils": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz", + "integrity": "sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==", + "dev": true + }, + "node_modules/@babel/plugin-syntax-bigint": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz", + "integrity": "sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "node_modules/@babel/plugin-syntax-bigint/node_modules/@babel/helper-plugin-utils": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz", + "integrity": "sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==", + "dev": true + }, + "node_modules/@babel/plugin-syntax-class-properties": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.1.tgz", + "integrity": "sha512-U40A76x5gTwmESz+qiqssqmeEsKvcSyvtgktrm0uzcARAmM9I1jR221f6Oq+GmHrcD+LvZDag1UTOTe2fL3TeA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + } + }, + "node_modules/@babel/plugin-syntax-class-properties/node_modules/@babel/helper-plugin-utils": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz", + "integrity": "sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==", + "dev": true + }, + "node_modules/@babel/plugin-syntax-import-meta": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", + "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + } + }, + "node_modules/@babel/plugin-syntax-import-meta/node_modules/@babel/helper-plugin-utils": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz", + "integrity": "sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==", + "dev": true + }, + "node_modules/@babel/plugin-syntax-json-strings": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", + "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "node_modules/@babel/plugin-syntax-json-strings/node_modules/@babel/helper-plugin-utils": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz", + "integrity": "sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==", + "dev": true + }, + "node_modules/@babel/plugin-syntax-logical-assignment-operators": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", + "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + } + }, + "node_modules/@babel/plugin-syntax-logical-assignment-operators/node_modules/@babel/helper-plugin-utils": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz", + "integrity": "sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==", + "dev": true + }, + "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", + "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "node_modules/@babel/plugin-syntax-nullish-coalescing-operator/node_modules/@babel/helper-plugin-utils": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz", + "integrity": "sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==", + "dev": true + }, + "node_modules/@babel/plugin-syntax-numeric-separator": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", + "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + } + }, + "node_modules/@babel/plugin-syntax-numeric-separator/node_modules/@babel/helper-plugin-utils": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz", + "integrity": "sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==", + "dev": true + }, + "node_modules/@babel/plugin-syntax-object-rest-spread": { + "version": "7.7.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.7.4.tgz", + "integrity": "sha512-mObR+r+KZq0XhRVS2BrBKBpr5jqrqzlPvS9C9vuOf5ilSwzloAl7RPWLrgKdWS6IreaVrjHxTjtyqFiOisaCwg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "node_modules/@babel/plugin-syntax-optional-catch-binding": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", + "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "node_modules/@babel/plugin-syntax-optional-catch-binding/node_modules/@babel/helper-plugin-utils": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz", + "integrity": "sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==", + "dev": true + }, + "node_modules/@babel/plugin-syntax-optional-chaining": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", + "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "node_modules/@babel/plugin-syntax-optional-chaining/node_modules/@babel/helper-plugin-utils": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz", + "integrity": "sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==", + "dev": true + }, + "node_modules/@babel/plugin-syntax-top-level-await": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.12.1.tgz", + "integrity": "sha512-i7ooMZFS+a/Om0crxZodrTzNEPJHZrlMVGMTEpFAj6rYY/bKCddB0Dk/YxfPuYXOopuhKk/e1jV6h+WUU9XN3A==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + } + }, + "node_modules/@babel/plugin-syntax-top-level-await/node_modules/@babel/helper-plugin-utils": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz", + "integrity": "sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==", + "dev": true + }, + "node_modules/@babel/template": { + "version": "7.7.4", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.7.4.tgz", + "integrity": "sha512-qUzihgVPguAzXCK7WXw8pqs6cEwi54s3E+HrejlkuWO6ivMKx9hZl3Y2fSXp9i5HgyWmj7RKP+ulaYnKM4yYxw==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.0.0", + "@babel/parser": "^7.7.4", + "@babel/types": "^7.7.4" + } + }, + "node_modules/@babel/traverse": { + "version": "7.7.4", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.7.4.tgz", + "integrity": "sha512-P1L58hQyupn8+ezVA2z5KBm4/Zr4lCC8dwKCMYzsa5jFMDMQAzaBNy9W5VjB+KAmBjb40U7a/H6ao+Xo+9saIw==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.5.5", + "@babel/generator": "^7.7.4", + "@babel/helper-function-name": "^7.7.4", + "@babel/helper-split-export-declaration": "^7.7.4", + "@babel/parser": "^7.7.4", + "@babel/types": "^7.7.4", + "debug": "^4.1.0", + "globals": "^11.1.0", + "lodash": "^4.17.13" + } + }, + "node_modules/@babel/types": { + "version": "7.7.4", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.7.4.tgz", + "integrity": "sha512-cz5Ji23KCi4T+YIE/BolWosrJuSmoZeN1EFnRtBwF+KKLi8GG/Z2c2hOJJeCXPk4mwk4QFvTmwIodJowXgttRA==", + "dev": true, + "dependencies": { + "esutils": "^2.0.2", + "lodash": "^4.17.13", + "to-fast-properties": "^2.0.0" + } + }, + "node_modules/@cnakazawa/watch": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@cnakazawa/watch/-/watch-1.0.3.tgz", + "integrity": "sha512-r5160ogAvGyHsal38Kux7YYtodEKOj89RGb28ht1jh3SJb08VwRwAKKJL0bGb04Zd/3r9FL3BFIc3bBidYffCA==", + "dev": true, + "dependencies": { + "exec-sh": "^0.3.2", + "minimist": "^1.2.0" + }, + "bin": { + "watch": "cli.js" + }, + "engines": { + "node": ">=0.1.95" + } + }, + "node_modules/@cnakazawa/watch/node_modules/minimist": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", + "dev": true + }, + "node_modules/@eslint/eslintrc": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.3.0.tgz", + "integrity": "sha512-1JTKgrOKAHVivSvOYw+sJOunkBjUOvjqWk1DPja7ZFhIS2mX/4EgTT8M7eTK9jrKhL/FvXXEbQwIs3pg1xp3dg==", + "dev": true, + "dependencies": { + "ajv": "^6.12.4", + "debug": "^4.1.1", + "espree": "^7.3.0", + "globals": "^12.1.0", + "ignore": "^4.0.6", + "import-fresh": "^3.2.1", + "js-yaml": "^3.13.1", + "lodash": "^4.17.20", + "minimatch": "^3.0.4", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/@eslint/eslintrc/node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + } + }, + "node_modules/@eslint/eslintrc/node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "node_modules/@eslint/eslintrc/node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true + }, + "node_modules/@eslint/eslintrc/node_modules/globals": { + "version": "12.4.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-12.4.0.tgz", + "integrity": "sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg==", + "dev": true, + "dependencies": { + "type-fest": "^0.8.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@eslint/eslintrc/node_modules/js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "dev": true, + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/@eslint/eslintrc/node_modules/lodash": { + "version": "4.17.20", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.20.tgz", + "integrity": "sha512-PlhdFcillOINfeV7Ni6oF1TAEayyZBoZ8bcshTHqOYJYlrqzRK5hagpagky5o4HfCzzd1TRkXPMFq6cKk9rGmA==", + "dev": true + }, + "node_modules/@istanbuljs/load-nyc-config": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", + "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", + "dev": true, + "dependencies": { + "camelcase": "^5.3.1", + "find-up": "^4.1.0", + "get-package-type": "^0.1.0", + "js-yaml": "^3.13.1", + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "dev": true, + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/schema": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.2.tgz", + "integrity": "sha512-tsAQNx32a8CoFhjhijUIhI4kccIAgmGhy8LZMZgGfmXcpMbPRUqn5LWmgRttILi6yeGmBJd2xsPkFMs0PzgPCw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/console": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/@jest/console/-/console-24.9.0.tgz", + "integrity": "sha512-Zuj6b8TnKXi3q4ymac8EQfc3ea/uhLeCGThFqXeC8H9/raaH8ARPUTdId+XyGd03Z4In0/VjD2OYFcBF09fNLQ==", + "dev": true, + "dependencies": { + "@jest/source-map": "^24.9.0", + "chalk": "^2.0.1", + "slash": "^2.0.0" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/@jest/core": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/@jest/core/-/core-24.9.0.tgz", + "integrity": "sha512-Fogg3s4wlAr1VX7q+rhV9RVnUv5tD7VuWfYy1+whMiWUrvl7U3QJSJyWcDio9Lq2prqYsZaeTv2Rz24pWGkJ2A==", + "dev": true, + "dependencies": { + "@jest/console": "^24.7.1", + "@jest/reporters": "^24.9.0", + "@jest/test-result": "^24.9.0", + "@jest/transform": "^24.9.0", + "@jest/types": "^24.9.0", + "ansi-escapes": "^3.0.0", + "chalk": "^2.0.1", + "exit": "^0.1.2", + "graceful-fs": "^4.1.15", + "jest-changed-files": "^24.9.0", + "jest-config": "^24.9.0", + "jest-haste-map": "^24.9.0", + "jest-message-util": "^24.9.0", + "jest-regex-util": "^24.3.0", + "jest-resolve": "^24.9.0", + "jest-resolve-dependencies": "^24.9.0", + "jest-runner": "^24.9.0", + "jest-runtime": "^24.9.0", + "jest-snapshot": "^24.9.0", + "jest-util": "^24.9.0", + "jest-validate": "^24.9.0", + "jest-watcher": "^24.9.0", + "micromatch": "^3.1.10", + "p-each-series": "^1.0.0", + "realpath-native": "^1.1.0", + "rimraf": "^2.5.4", + "slash": "^2.0.0", + "strip-ansi": "^5.0.0" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/@jest/core/node_modules/strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "dev": true, + "dependencies": { + "ansi-regex": "^4.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@jest/environment": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-24.9.0.tgz", + "integrity": "sha512-5A1QluTPhvdIPFYnO3sZC3smkNeXPVELz7ikPbhUj0bQjB07EoE9qtLrem14ZUYWdVayYbsjVwIiL4WBIMV4aQ==", + "dev": true, + "dependencies": { + "@jest/fake-timers": "^24.9.0", + "@jest/transform": "^24.9.0", + "@jest/types": "^24.9.0", + "jest-mock": "^24.9.0" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/@jest/fake-timers": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-24.9.0.tgz", + "integrity": "sha512-eWQcNa2YSwzXWIMC5KufBh3oWRIijrQFROsIqt6v/NS9Io/gknw1jsAC9c+ih/RQX4A3O7SeWAhQeN0goKhT9A==", + "dev": true, + "dependencies": { + "@jest/types": "^24.9.0", + "jest-message-util": "^24.9.0", + "jest-mock": "^24.9.0" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/@jest/globals": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-26.6.2.tgz", + "integrity": "sha512-85Ltnm7HlB/KesBUuALwQ68YTU72w9H2xW9FjZ1eL1U3lhtefjjl5c2MiUbpXt/i6LaPRvoOFJ22yCBSfQ0JIA==", + "dev": true, + "dependencies": { + "@jest/environment": "^26.6.2", + "@jest/types": "^26.6.2", + "expect": "^26.6.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@jest/globals/node_modules/@jest/environment": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-26.6.2.tgz", + "integrity": "sha512-nFy+fHl28zUrRsCeMB61VDThV1pVTtlEokBRgqPrcT1JNq4yRNIyTHfyht6PqtUvY9IsuLGTrbG8kPXjSZIZwA==", + "dev": true, + "dependencies": { + "@jest/fake-timers": "^26.6.2", + "@jest/types": "^26.6.2", + "@types/node": "*", + "jest-mock": "^26.6.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@jest/globals/node_modules/@jest/fake-timers": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-26.6.2.tgz", + "integrity": "sha512-14Uleatt7jdzefLPYM3KLcnUl1ZNikaKq34enpb5XG9i81JpppDb5muZvonvKyrl7ftEHkKS5L5/eB/kxJ+bvA==", + "dev": true, + "dependencies": { + "@jest/types": "^26.6.2", + "@sinonjs/fake-timers": "^6.0.1", + "@types/node": "*", + "jest-message-util": "^26.6.2", + "jest-mock": "^26.6.2", + "jest-util": "^26.6.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@jest/globals/node_modules/@jest/types": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz", + "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==", + "dev": true, + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@jest/globals/node_modules/@types/istanbul-reports": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.0.tgz", + "integrity": "sha512-nwKNbvnwJ2/mndE9ItP/zc2TCzw6uuodnF4EHYWD+gCQDVBuRQL5UzbZD0/ezy1iKsFU2ZQiDqg4M9dN4+wZgA==", + "dev": true, + "dependencies": { + "@types/istanbul-lib-report": "*" + } + }, + "node_modules/@jest/globals/node_modules/@types/stack-utils": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.0.tgz", + "integrity": "sha512-RJJrrySY7A8havqpGObOB4W92QXKJo63/jFLLgpvOtsGUqbQZ9Sbgl35KMm1DjC6j7AvmmU2bIno+3IyEaemaw==", + "dev": true + }, + "node_modules/@jest/globals/node_modules/@types/yargs": { + "version": "15.0.9", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.9.tgz", + "integrity": "sha512-HmU8SeIRhZCWcnRskCs36Q1Q00KBV6Cqh/ora8WN1+22dY07AZdn6Gel8QZ3t26XYPImtcL8WV/eqjhVmMEw4g==", + "dev": true, + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/@jest/globals/node_modules/ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/globals/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/globals/node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "dependencies": { + "fill-range": "^7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/globals/node_modules/chalk": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", + "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@jest/globals/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@jest/globals/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/@jest/globals/node_modules/diff-sequences": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-26.6.2.tgz", + "integrity": "sha512-Mv/TDa3nZ9sbc5soK+OoA74BsS3mL37yixCvUAQkiuA4Wz6YtwP/K47n2rv2ovzHZvoiQeA5FTQOschKkEwB0Q==", + "dev": true, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@jest/globals/node_modules/escape-string-regexp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", + "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/globals/node_modules/expect": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/expect/-/expect-26.6.2.tgz", + "integrity": "sha512-9/hlOBkQl2l/PLHJx6JjoDF6xPKcJEsUlWKb23rKE7KzeDqUZKXKNMW27KIue5JMdBV9HgmoJPcc8HtO85t9IA==", + "dev": true, + "dependencies": { + "@jest/types": "^26.6.2", + "ansi-styles": "^4.0.0", + "jest-get-type": "^26.3.0", + "jest-matcher-utils": "^26.6.2", + "jest-message-util": "^26.6.2", + "jest-regex-util": "^26.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@jest/globals/node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/globals/node_modules/graceful-fs": { + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.4.tgz", + "integrity": "sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw==", + "dev": true + }, + "node_modules/@jest/globals/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/globals/node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/@jest/globals/node_modules/jest-diff": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-26.6.2.tgz", + "integrity": "sha512-6m+9Z3Gv9wN0WFVasqjCL/06+EFCMTqDEUl/b87HYK2rAPTyfz4ZIuSlPhY51PIQRWx5TaxeF1qmXKe9gfN3sA==", + "dev": true, + "dependencies": { + "chalk": "^4.0.0", + "diff-sequences": "^26.6.2", + "jest-get-type": "^26.3.0", + "pretty-format": "^26.6.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@jest/globals/node_modules/jest-get-type": { + "version": "26.3.0", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-26.3.0.tgz", + "integrity": "sha512-TpfaviN1R2pQWkIihlfEanwOXK0zcxrKEE4MlU6Tn7keoXdN6/3gK/xl0yEh8DOunn5pOVGKf8hB4R9gVh04ig==", + "dev": true, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@jest/globals/node_modules/jest-matcher-utils": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-26.6.2.tgz", + "integrity": "sha512-llnc8vQgYcNqDrqRDXWwMr9i7rS5XFiCwvh6DTP7Jqa2mqpcCBBlpCbn+trkG0KNhPu/h8rzyBkriOtBstvWhw==", + "dev": true, + "dependencies": { + "chalk": "^4.0.0", + "jest-diff": "^26.6.2", + "jest-get-type": "^26.3.0", + "pretty-format": "^26.6.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@jest/globals/node_modules/jest-message-util": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-26.6.2.tgz", + "integrity": "sha512-rGiLePzQ3AzwUshu2+Rn+UMFk0pHN58sOG+IaJbk5Jxuqo3NYO1U2/MIR4S1sKgsoYSXSzdtSa0TgrmtUwEbmA==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.0.0", + "@jest/types": "^26.6.2", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "micromatch": "^4.0.2", + "pretty-format": "^26.6.2", + "slash": "^3.0.0", + "stack-utils": "^2.0.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@jest/globals/node_modules/jest-mock": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-26.6.2.tgz", + "integrity": "sha512-YyFjePHHp1LzpzYcmgqkJ0nm0gg/lJx2aZFzFy1S6eUqNjXsOqTK10zNRff2dNfssgokjkG65OlWNcIlgd3zew==", + "dev": true, + "dependencies": { + "@jest/types": "^26.6.2", + "@types/node": "*" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@jest/globals/node_modules/jest-regex-util": { + "version": "26.0.0", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-26.0.0.tgz", + "integrity": "sha512-Gv3ZIs/nA48/Zvjrl34bf+oD76JHiGDUxNOVgUjh3j890sblXryjY4rss71fPtD/njchl6PSE2hIhvyWa1eT0A==", + "dev": true, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@jest/globals/node_modules/jest-util": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-26.6.2.tgz", + "integrity": "sha512-MDW0fKfsn0OI7MS7Euz6h8HNDXVQ0gaM9uW6RjfDmd1DAFcaxX9OqIakHIqhbnmF08Cf2DLDG+ulq8YQQ0Lp0Q==", + "dev": true, + "dependencies": { + "@jest/types": "^26.6.2", + "@types/node": "*", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "is-ci": "^2.0.0", + "micromatch": "^4.0.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@jest/globals/node_modules/micromatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", + "dev": true, + "dependencies": { + "braces": "^3.0.1", + "picomatch": "^2.0.5" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/globals/node_modules/pretty-format": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-26.6.2.tgz", + "integrity": "sha512-7AeGuCYNGmycyQbCqd/3PWH4eOoX/OiCa0uphp57NVTeAGdJGaAliecxwBDHYQCIvrW7aDBZCYeNTP/WX69mkg==", + "dev": true, + "dependencies": { + "@jest/types": "^26.6.2", + "ansi-regex": "^5.0.0", + "ansi-styles": "^4.0.0", + "react-is": "^17.0.1" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/@jest/globals/node_modules/react-is": { + "version": "17.0.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.1.tgz", + "integrity": "sha512-NAnt2iGDXohE5LI7uBnLnqvLQMtzhkiAOLXTmv+qnF9Ky7xAPcX8Up/xWIhxvLVGJvuLiNc4xQLtuqDRzb4fSA==", + "dev": true + }, + "node_modules/@jest/globals/node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/globals/node_modules/stack-utils": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.2.tgz", + "integrity": "sha512-0H7QK2ECz3fyZMzQ8rH0j2ykpfbnd20BFtfg/SqVC2+sCTtcw0aDTGB7dk+de4U4uUeuz6nOtJcrkFFLG1B0Rg==", + "dev": true, + "dependencies": { + "escape-string-regexp": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@jest/globals/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/globals/node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/@jest/reporters": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-24.9.0.tgz", + "integrity": "sha512-mu4X0yjaHrffOsWmVLzitKmmmWSQ3GGuefgNscUSWNiUNcEOSEQk9k3pERKEQVBb0Cnn88+UESIsZEMH3o88Gw==", + "dev": true, + "dependencies": { + "@jest/environment": "^24.9.0", + "@jest/test-result": "^24.9.0", + "@jest/transform": "^24.9.0", + "@jest/types": "^24.9.0", + "chalk": "^2.0.1", + "exit": "^0.1.2", + "glob": "^7.1.2", + "istanbul-lib-coverage": "^2.0.2", + "istanbul-lib-instrument": "^3.0.1", + "istanbul-lib-report": "^2.0.4", + "istanbul-lib-source-maps": "^3.0.1", + "istanbul-reports": "^2.2.6", + "jest-haste-map": "^24.9.0", + "jest-resolve": "^24.9.0", + "jest-runtime": "^24.9.0", + "jest-util": "^24.9.0", + "jest-worker": "^24.6.0", + "node-notifier": "^5.4.2", + "slash": "^2.0.0", + "source-map": "^0.6.0", + "string-length": "^2.0.0" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/@jest/reporters/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@jest/source-map": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-24.9.0.tgz", + "integrity": "sha512-/Xw7xGlsZb4MJzNDgB7PW5crou5JqWiBQaz6xyPd3ArOg2nfn/PunV8+olXbbEZzNl591o5rWKE9BRDaFAuIBg==", + "dev": true, + "dependencies": { + "callsites": "^3.0.0", + "graceful-fs": "^4.1.15", + "source-map": "^0.6.0" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/@jest/source-map/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@jest/test-result": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-24.9.0.tgz", + "integrity": "sha512-XEFrHbBonBJ8dGp2JmF8kP/nQI/ImPpygKHwQ/SY+es59Z3L5PI4Qb9TQQMAEeYsThG1xF0k6tmG0tIKATNiiA==", + "dev": true, + "dependencies": { + "@jest/console": "^24.9.0", + "@jest/types": "^24.9.0", + "@types/istanbul-lib-coverage": "^2.0.0" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/@jest/test-sequencer": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-24.9.0.tgz", + "integrity": "sha512-6qqsU4o0kW1dvA95qfNog8v8gkRN9ph6Lz7r96IvZpHdNipP2cBcb07J1Z45mz/VIS01OHJ3pY8T5fUY38tg4A==", + "dev": true, + "dependencies": { + "@jest/test-result": "^24.9.0", + "jest-haste-map": "^24.9.0", + "jest-runner": "^24.9.0", + "jest-runtime": "^24.9.0" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/@jest/transform": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-24.9.0.tgz", + "integrity": "sha512-TcQUmyNRxV94S0QpMOnZl0++6RMiqpbH/ZMccFB/amku6Uwvyb1cjYX7xkp5nGNkbX4QPH/FcB6q1HBTHynLmQ==", + "dev": true, + "dependencies": { + "@babel/core": "^7.1.0", + "@jest/types": "^24.9.0", + "babel-plugin-istanbul": "^5.1.0", + "chalk": "^2.0.1", + "convert-source-map": "^1.4.0", + "fast-json-stable-stringify": "^2.0.0", + "graceful-fs": "^4.1.15", + "jest-haste-map": "^24.9.0", + "jest-regex-util": "^24.9.0", + "jest-util": "^24.9.0", + "micromatch": "^3.1.10", + "pirates": "^4.0.1", + "realpath-native": "^1.1.0", + "slash": "^2.0.0", + "source-map": "^0.6.1", + "write-file-atomic": "2.4.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/@jest/transform/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@jest/types": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-24.9.0.tgz", + "integrity": "sha512-XKK7ze1apu5JWQ5eZjHITP66AX+QsLlbaJRBGYr8pNzwcAE2JVkwnf0yqjHTsDRcjR0mujy/NmZMXw5kl+kGBw==", + "dev": true, + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^1.1.1", + "@types/yargs": "^13.0.0" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.3.tgz", + "integrity": "sha512-eGmwYQn3gxo4r7jdQnkrrN6bY478C3P+a/y72IJukF8LjB6ZHeB3c+Ehacj3sYeSmUXGlnA67/PmbM9CVwL7Dw==", + "dev": true, + "dependencies": { + "@nodelib/fs.stat": "2.0.3", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.stat": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.3.tgz", + "integrity": "sha512-bQBFruR2TAwoevBEd/NWMoAAtNGzTRgdrqnYCc7dhzfoNvqPzLyqlEQnzZ3kVnNrSp25iyxE00/3h2fqGAGArA==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.walk": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.4.tgz", + "integrity": "sha512-1V9XOY4rDW0rehzbrcqAmHnz8e7SKvX27gh8Gt2WgB0+pdzdiLV83p72kZPU+jvMbS1qU5mauP2iOvO8rhmurQ==", + "dev": true, + "dependencies": { + "@nodelib/fs.scandir": "2.1.3", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@octokit/auth-token": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/@octokit/auth-token/-/auth-token-2.4.2.tgz", + "integrity": "sha512-jE/lE/IKIz2v1+/P0u4fJqv0kYwXOTujKemJMFr6FeopsxlIK3+wKDCJGnysg81XID5TgZQbIfuJ5J0lnTiuyQ==", + "dependencies": { + "@octokit/types": "^5.0.0" + } + }, + "node_modules/@octokit/core": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/@octokit/core/-/core-3.1.3.tgz", + "integrity": "sha512-s5UyENGUQBB+ocEOulXq6UH5J16fxuKY2J7ZYrIu9oJYAn0nCwM8hC8o4L23HEzU0SFzNEX86+ffc1T3Vr2ybg==", + "dependencies": { + "@octokit/auth-token": "^2.4.0", + "@octokit/graphql": "^4.3.1", + "@octokit/request": "^5.4.0", + "@octokit/types": "^5.0.0", + "before-after-hook": "^2.1.0", + "universal-user-agent": "^6.0.0" + } + }, + "node_modules/@octokit/endpoint": { + "version": "6.0.8", + "resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-6.0.8.tgz", + "integrity": "sha512-MuRrgv+bM4Q+e9uEvxAB/Kf+Sj0O2JAOBA131uo1o6lgdq1iS8ejKwtqHgdfY91V3rN9R/hdGKFiQYMzVzVBEQ==", + "dependencies": { + "@octokit/types": "^5.0.0", + "is-plain-object": "^5.0.0", + "universal-user-agent": "^6.0.0" + } + }, + "node_modules/@octokit/endpoint/node_modules/is-plain-object": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", + "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@octokit/graphql": { + "version": "4.5.6", + "resolved": "https://registry.npmjs.org/@octokit/graphql/-/graphql-4.5.6.tgz", + "integrity": "sha512-Rry+unqKTa3svswT2ZAuqenpLrzJd+JTv89LTeVa5UM/5OX8o4KTkPL7/1ABq4f/ZkELb0XEK/2IEoYwykcLXg==", + "dependencies": { + "@octokit/request": "^5.3.0", + "@octokit/types": "^5.0.0", + "universal-user-agent": "^6.0.0" + } + }, + "node_modules/@octokit/plugin-paginate-rest": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-2.4.0.tgz", + "integrity": "sha512-YT6Klz3LLH6/nNgi0pheJnUmTFW4kVnxGft+v8Itc41IIcjl7y1C8TatmKQBbCSuTSNFXO5pCENnqg6sjwpJhg==", + "dependencies": { + "@octokit/types": "^5.5.0" + } + }, + "node_modules/@octokit/plugin-rest-endpoint-methods": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-4.2.0.tgz", + "integrity": "sha512-1/qn1q1C1hGz6W/iEDm9DoyNoG/xdFDt78E3eZ5hHeUfJTLJgyAMdj9chL/cNBHjcjd+FH5aO1x0VCqR2RE0mw==", + "dependencies": { + "@octokit/types": "^5.5.0", + "deprecation": "^2.3.1" + } + }, + "node_modules/@octokit/request": { + "version": "5.4.9", + "resolved": "https://registry.npmjs.org/@octokit/request/-/request-5.4.9.tgz", + "integrity": "sha512-CzwVvRyimIM1h2n9pLVYfTDmX9m+KHSgCpqPsY8F1NdEK8IaWqXhSBXsdjOBFZSpEcxNEeg4p0UO9cQ8EnOCLA==", + "dependencies": { + "@octokit/endpoint": "^6.0.1", + "@octokit/request-error": "^2.0.0", + "@octokit/types": "^5.0.0", + "deprecation": "^2.0.0", + "is-plain-object": "^5.0.0", + "node-fetch": "^2.6.1", + "once": "^1.4.0", + "universal-user-agent": "^6.0.0" + } + }, + "node_modules/@octokit/request-error": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@octokit/request-error/-/request-error-2.0.2.tgz", + "integrity": "sha512-2BrmnvVSV1MXQvEkrb9zwzP0wXFNbPJij922kYBTLIlIafukrGOb+ABBT2+c6wZiuyWDH1K1zmjGQ0toN/wMWw==", + "dependencies": { + "@octokit/types": "^5.0.1", + "deprecation": "^2.0.0", + "once": "^1.4.0" + } + }, + "node_modules/@octokit/request/node_modules/is-plain-object": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", + "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@octokit/types": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/@octokit/types/-/types-5.5.0.tgz", + "integrity": "sha512-UZ1pErDue6bZNjYOotCNveTXArOMZQFG6hKJfOnGnulVCMcVVi7YIIuuR4WfBhjo7zgpmzn/BkPDnUXtNx+PcQ==", + "dependencies": { + "@types/node": ">= 8" + } + }, + "node_modules/@octokit/webhooks": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@octokit/webhooks/-/webhooks-7.21.0.tgz", + "integrity": "sha512-Mj7Pa6JZgSjfzQfYF3Bf5KpyhzEBv4kHbj2EjCB/vMQiZCiiW30j5rS6t/d0ZN0FBrlSOuJIT+YU8IJt30VyWA==", + "dependencies": { + "@octokit/request-error": "^2.0.2", + "aggregate-error": "^3.1.0", + "debug": "^4.0.0" + } + }, + "node_modules/@sinonjs/commons": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.1.tgz", + "integrity": "sha512-892K+kWUUi3cl+LlqEWIDrhvLgdL79tECi8JZUyq6IviKy/DNhuzCRlbHUjxK89f4ypPMMaFnFuR9Ie6DoIMsw==", + "dev": true, + "dependencies": { + "type-detect": "4.0.8" + } + }, + "node_modules/@sinonjs/fake-timers": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-6.0.1.tgz", + "integrity": "sha512-MZPUxrmFubI36XS1DI3qmI0YdN1gks62JtFZvxR67ljjSNCeK6U08Zx4msEWOXuofgqUt6zPHSi1H9fbjR/NRA==", + "dev": true, + "dependencies": { + "@sinonjs/commons": "^1.7.0" + } + }, + "node_modules/@types/babel__core": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.3.tgz", + "integrity": "sha512-8fBo0UR2CcwWxeX7WIIgJ7lXjasFxoYgRnFHUj+hRvKkpiBJbxhdAPTCY6/ZKM0uxANFVzt4yObSLuTiTnazDA==", + "dev": true, + "dependencies": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0", + "@types/babel__generator": "*", + "@types/babel__template": "*", + "@types/babel__traverse": "*" + } + }, + "node_modules/@types/babel__generator": { + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.0.tgz", + "integrity": "sha512-c1mZUu4up5cp9KROs/QAw0gTeHrw/x7m52LcnvMxxOZ03DmLwPV0MlGmlgzV3cnSdjhJOZsj7E7FHeioai+egw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__template": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.0.2.tgz", + "integrity": "sha512-/K6zCpeW7Imzgab2bLkLEbz0+1JlFSrUMdw7KoIIu+IUdu51GWaBZpd3y1VXGVXzynvGa4DaIaxNZHiON3GXUg==", + "dev": true, + "dependencies": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__traverse": { + "version": "7.0.8", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.0.8.tgz", + "integrity": "sha512-yGeB2dHEdvxjP0y4UbRtQaSkXJ9649fYCmIdRoul5kfAoGCwxuCbMhag0k3RPfnuh9kPGm8x89btcfDEXdVWGw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.3.0" + } + }, + "node_modules/@types/graceful-fs": { + "version": "4.1.4", + "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.4.tgz", + "integrity": "sha512-mWA/4zFQhfvOA8zWkXobwJvBD7vzcxgrOQ0J5CH1votGqdq9m7+FwtGaqyCZqC3NyyBkc9z4m+iry4LlqcMWJg==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/he": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@types/he/-/he-1.1.1.tgz", + "integrity": "sha512-jpzrsR1ns0n3kyWt92QfOUQhIuJGQ9+QGa7M62rO6toe98woQjnsnzjdMtsQXCdvjjmqjS2ZBCC7xKw0cdzU+Q==" + }, + "node_modules/@types/istanbul-lib-coverage": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.1.tgz", + "integrity": "sha512-hRJD2ahnnpLgsj6KWMYSrmXkM3rm2Dl1qkx6IOFD5FnuNPXJIG5L0dhgKXCYTRMGzU4n0wImQ/xfmRc4POUFlg==", + "dev": true + }, + "node_modules/@types/istanbul-lib-report": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-1.1.1.tgz", + "integrity": "sha512-3BUTyMzbZa2DtDI2BkERNC6jJw2Mr2Y0oGI7mRxYNBPxppbtEK1F66u3bKwU2g+wxwWI7PAoRpJnOY1grJqzHg==", + "dev": true, + "dependencies": { + "@types/istanbul-lib-coverage": "*" + } + }, + "node_modules/@types/istanbul-reports": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-1.1.1.tgz", + "integrity": "sha512-UpYjBi8xefVChsCoBpKShdxTllC9pwISirfoZsUa2AAdQg/Jd2KQGtSbw+ya7GPo7x/wAPlH6JBhKhAsXUEZNA==", + "dev": true, + "dependencies": { + "@types/istanbul-lib-coverage": "*", + "@types/istanbul-lib-report": "*" + } + }, + "node_modules/@types/jest": { + "version": "26.0.20", + "resolved": "https://registry.npmjs.org/@types/jest/-/jest-26.0.20.tgz", + "integrity": "sha512-9zi2Y+5USJRxd0FsahERhBwlcvFh6D2GLQnY2FH2BzK8J9s9omvNHIbvABwIluXa0fD8XVKMLTO0aOEuUfACAA==", + "dev": true, + "dependencies": { + "jest-diff": "^26.0.0", + "pretty-format": "^26.0.0" + } + }, + "node_modules/@types/jest/node_modules/@jest/types": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz", + "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==", + "dev": true, + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@types/jest/node_modules/@types/istanbul-reports": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.0.tgz", + "integrity": "sha512-nwKNbvnwJ2/mndE9ItP/zc2TCzw6uuodnF4EHYWD+gCQDVBuRQL5UzbZD0/ezy1iKsFU2ZQiDqg4M9dN4+wZgA==", + "dev": true, + "dependencies": { + "@types/istanbul-lib-report": "*" + } + }, + "node_modules/@types/jest/node_modules/@types/yargs": { + "version": "15.0.12", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.12.tgz", + "integrity": "sha512-f+fD/fQAo3BCbCDlrUpznF1A5Zp9rB0noS5vnoormHSIPFKL0Z2DcUJ3Gxp5ytH4uLRNxy7AwYUC9exZzqGMAw==", + "dev": true, + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/@types/jest/node_modules/ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@types/jest/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@types/jest/node_modules/chalk": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", + "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@types/jest/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@types/jest/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/@types/jest/node_modules/diff-sequences": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-26.6.2.tgz", + "integrity": "sha512-Mv/TDa3nZ9sbc5soK+OoA74BsS3mL37yixCvUAQkiuA4Wz6YtwP/K47n2rv2ovzHZvoiQeA5FTQOschKkEwB0Q==", + "dev": true, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@types/jest/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@types/jest/node_modules/jest-diff": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-26.6.2.tgz", + "integrity": "sha512-6m+9Z3Gv9wN0WFVasqjCL/06+EFCMTqDEUl/b87HYK2rAPTyfz4ZIuSlPhY51PIQRWx5TaxeF1qmXKe9gfN3sA==", + "dev": true, + "dependencies": { + "chalk": "^4.0.0", + "diff-sequences": "^26.6.2", + "jest-get-type": "^26.3.0", + "pretty-format": "^26.6.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@types/jest/node_modules/jest-get-type": { + "version": "26.3.0", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-26.3.0.tgz", + "integrity": "sha512-TpfaviN1R2pQWkIihlfEanwOXK0zcxrKEE4MlU6Tn7keoXdN6/3gK/xl0yEh8DOunn5pOVGKf8hB4R9gVh04ig==", + "dev": true, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@types/jest/node_modules/pretty-format": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-26.6.2.tgz", + "integrity": "sha512-7AeGuCYNGmycyQbCqd/3PWH4eOoX/OiCa0uphp57NVTeAGdJGaAliecxwBDHYQCIvrW7aDBZCYeNTP/WX69mkg==", + "dev": true, + "dependencies": { + "@jest/types": "^26.6.2", + "ansi-regex": "^5.0.0", + "ansi-styles": "^4.0.0", + "react-is": "^17.0.1" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/@types/jest/node_modules/react-is": { + "version": "17.0.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.1.tgz", + "integrity": "sha512-NAnt2iGDXohE5LI7uBnLnqvLQMtzhkiAOLXTmv+qnF9Ky7xAPcX8Up/xWIhxvLVGJvuLiNc4xQLtuqDRzb4fSA==", + "dev": true + }, + "node_modules/@types/jest/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@types/json-schema": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.3.tgz", + "integrity": "sha512-Il2DtDVRGDcqjDtE+rF8iqg1CArehSK84HZJCT7AMITlyXRBpuPhqGLDQMowraqqu1coEaimg4ZOqggt6L6L+A==", + "dev": true + }, + "node_modules/@types/json5": { + "version": "0.0.29", + "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", + "integrity": "sha1-7ihweulOEdK4J7y+UnC86n8+ce4=", + "dev": true + }, + "node_modules/@types/node": { + "version": "14.14.25", + "resolved": "https://registry.npmjs.org/@types/node/-/node-14.14.25.tgz", + "integrity": "sha512-EPpXLOVqDvisVxtlbvzfyqSsFeQxltFbluZNRndIb8tr9KiBnYNLzrc1N3pyKUCww2RNrfHDViqDWWE1LCJQtQ==" + }, + "node_modules/@types/normalize-package-data": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.0.tgz", + "integrity": "sha512-f5j5b/Gf71L+dbqxIpQ4Z2WlmI/mPJ0fOkGGmFgtb6sAu97EPczzbS3/tJKxmcYDj55OX6ssqwDAWOHIYDRDGA==", + "dev": true + }, + "node_modules/@types/parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==", + "dev": true + }, + "node_modules/@types/prettier": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.1.5.tgz", + "integrity": "sha512-UEyp8LwZ4Dg30kVU2Q3amHHyTn1jEdhCIE59ANed76GaT1Vp76DD3ZWSAxgCrw6wJ0TqeoBpqmfUHiUDPs//HQ==", + "dev": true + }, + "node_modules/@types/stack-utils": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-1.0.1.tgz", + "integrity": "sha512-l42BggppR6zLmpfU6fq9HEa2oGPEI8yrSPL3GITjfRInppYFahObbIQOQK3UGxEnyQpltZLaPe75046NOZQikw==", + "dev": true + }, + "node_modules/@types/yargs": { + "version": "13.0.3", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-13.0.3.tgz", + "integrity": "sha512-K8/LfZq2duW33XW/tFwEAfnZlqIfVsoyRB3kfXdPXYhl0nfM8mmh7GS0jg7WrX2Dgq/0Ha/pR1PaR+BvmWwjiQ==", + "dev": true, + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/@types/yargs-parser": { + "version": "13.1.0", + "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-13.1.0.tgz", + "integrity": "sha512-gCubfBUZ6KxzoibJ+SCUc/57Ms1jz5NjHe4+dI2krNmU5zCPAphyLJYyTOg06ueIyfj+SaCUqmzun7ImlxDcKg==", + "dev": true + }, + "node_modules/@typescript-eslint/eslint-plugin": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-3.7.0.tgz", + "integrity": "sha512-4OEcPON3QIx0ntsuiuFP/TkldmBGXf0uKxPQlGtS/W2F3ndYm8Vgdpj/woPJkzUc65gd3iR+qi3K8SDQP/obFg==", + "dev": true, + "dependencies": { + "@typescript-eslint/experimental-utils": "3.7.0", + "debug": "^4.1.1", + "functional-red-black-tree": "^1.0.1", + "regexpp": "^3.0.0", + "semver": "^7.3.2", + "tsutils": "^3.17.1" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/experimental-utils": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-3.7.0.tgz", + "integrity": "sha512-xpfXXAfZqhhqs5RPQBfAFrWDHoNxD5+sVB5A46TF58Bq1hRfVROrWHcQHHUM9aCBdy9+cwATcvCbRg8aIRbaHQ==", + "dev": true, + "dependencies": { + "@types/json-schema": "^7.0.3", + "@typescript-eslint/types": "3.7.0", + "@typescript-eslint/typescript-estree": "3.7.0", + "eslint-scope": "^5.0.0", + "eslint-utils": "^2.0.0" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/types": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-3.7.0.tgz", + "integrity": "sha512-reCaK+hyKkKF+itoylAnLzFeNYAEktB0XVfSQvf0gcVgpz1l49Lt6Vo9x4MVCCxiDydA0iLAjTF/ODH0pbfnpg==", + "dev": true, + "engines": { + "node": "^8.10.0 || ^10.13.0 || >=11.10.1" + } + }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/typescript-estree": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-3.7.0.tgz", + "integrity": "sha512-xr5oobkYRebejlACGr1TJ0Z/r0a2/HUf0SXqPvlgUMwiMqOCu/J+/Dr9U3T0IxpE5oLFSkqMx1FE/dKaZ8KsOQ==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "3.7.0", + "@typescript-eslint/visitor-keys": "3.7.0", + "debug": "^4.1.1", + "glob": "^7.1.6", + "is-glob": "^4.0.1", + "lodash": "^4.17.15", + "semver": "^7.3.2", + "tsutils": "^3.17.1" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/visitor-keys": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-3.7.0.tgz", + "integrity": "sha512-k5PiZdB4vklUpUX4NBncn5RBKty8G3ihTY+hqJsCdMuD0v4jofI5xuqwnVcWxfv6iTm2P/dfEa2wMUnsUY8ODw==", + "dev": true, + "dependencies": { + "eslint-visitor-keys": "^1.1.0" + }, + "engines": { + "node": "^8.10.0 || ^10.13.0 || >=11.10.1" + } + }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/semver": { + "version": "7.3.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.2.tgz", + "integrity": "sha512-OrOb32TeeambH6UrhtShmF7CRDqhL6/5XpPNp2DuRH6+9QLw/orhp72j87v8Qa1ScDkvrrBNpZcDejAirJmfXQ==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@typescript-eslint/experimental-utils": { + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-4.7.0.tgz", + "integrity": "sha512-cymzovXAiD4EF+YoHAB5Oh02MpnXjvyaOb+v+BdpY7lsJXZQN34oIETeUwVT2XfV9rSNpXaIcknDLfupO/tUoA==", + "dev": true, + "dependencies": { + "@types/json-schema": "^7.0.3", + "@typescript-eslint/scope-manager": "4.7.0", + "@typescript-eslint/types": "4.7.0", + "@typescript-eslint/typescript-estree": "4.7.0", + "eslint-scope": "^5.0.0", + "eslint-utils": "^2.0.0" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/@typescript-eslint/experimental-utils/node_modules/@typescript-eslint/types": { + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.7.0.tgz", + "integrity": "sha512-uLszFe0wExJc+I7q0Z/+BnP7wao/kzX0hB5vJn4LIgrfrMLgnB2UXoReV19lkJQS1a1mHWGGODSxnBx6JQC3Sg==", + "dev": true, + "engines": { + "node": "^8.10.0 || ^10.13.0 || >=11.10.1" + } + }, + "node_modules/@typescript-eslint/experimental-utils/node_modules/@typescript-eslint/typescript-estree": { + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-4.7.0.tgz", + "integrity": "sha512-5XZRQznD1MfUmxu1t8/j2Af4OxbA7EFU2rbo0No7meb46eHgGkSieFdfV6omiC/DGIBhH9H9gXn7okBbVOm8jw==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "4.7.0", + "@typescript-eslint/visitor-keys": "4.7.0", + "debug": "^4.1.1", + "globby": "^11.0.1", + "is-glob": "^4.0.1", + "lodash": "^4.17.15", + "semver": "^7.3.2", + "tsutils": "^3.17.1" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/@typescript-eslint/experimental-utils/node_modules/@typescript-eslint/visitor-keys": { + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.7.0.tgz", + "integrity": "sha512-aDJDWuCRsf1lXOtignlfiPODkzSxxop7D0rZ91L6ZuMlcMCSh0YyK+gAfo5zN/ih6WxMwhoXgJWC3cWQdaKC+A==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "4.7.0", + "eslint-visitor-keys": "^2.0.0" + }, + "engines": { + "node": "^8.10.0 || ^10.13.0 || >=11.10.1" + } + }, + "node_modules/@typescript-eslint/experimental-utils/node_modules/eslint-visitor-keys": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.0.0.tgz", + "integrity": "sha512-QudtT6av5WXels9WjIM7qz1XD1cWGvX4gGXvp/zBn9nXG02D0utdU3Em2m/QjTnrsk6bBjmCygl3rmj118msQQ==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/@typescript-eslint/experimental-utils/node_modules/semver": { + "version": "7.3.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.2.tgz", + "integrity": "sha512-OrOb32TeeambH6UrhtShmF7CRDqhL6/5XpPNp2DuRH6+9QLw/orhp72j87v8Qa1ScDkvrrBNpZcDejAirJmfXQ==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@typescript-eslint/parser": { + "version": "4.15.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-4.15.0.tgz", + "integrity": "sha512-L6Dtbq8Bc7g2aZwnIBETpmUa9XDKCMzKVwAArnGp5Mn7PRNFjf3mUzq8UeBjL3K8t311hvevnyqXAMSmxO8Gpg==", + "dev": true, + "dependencies": { + "@typescript-eslint/scope-manager": "4.15.0", + "@typescript-eslint/types": "4.15.0", + "@typescript-eslint/typescript-estree": "4.15.0", + "debug": "^4.1.1" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/scope-manager": { + "version": "4.15.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-4.15.0.tgz", + "integrity": "sha512-CSNBZnCC2jEA/a+pR9Ljh8Y+5TY5qgbPz7ICEk9WCpSEgT6Pi7H2RIjxfrrbUXvotd6ta+i27sssKEH8Azm75g==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "4.15.0", + "@typescript-eslint/visitor-keys": "4.15.0" + }, + "engines": { + "node": "^8.10.0 || ^10.13.0 || >=11.10.1" + } + }, + "node_modules/@typescript-eslint/scope-manager": { + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-4.7.0.tgz", + "integrity": "sha512-ILITvqwDJYbcDCROj6+Ob0oCKNg3SH46iWcNcTIT9B5aiVssoTYkhKjxOMNzR1F7WSJkik4zmuqve5MdnA0DyA==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "4.7.0", + "@typescript-eslint/visitor-keys": "4.7.0" + }, + "engines": { + "node": "^8.10.0 || ^10.13.0 || >=11.10.1" + } + }, + "node_modules/@typescript-eslint/scope-manager/node_modules/@typescript-eslint/types": { + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.7.0.tgz", + "integrity": "sha512-uLszFe0wExJc+I7q0Z/+BnP7wao/kzX0hB5vJn4LIgrfrMLgnB2UXoReV19lkJQS1a1mHWGGODSxnBx6JQC3Sg==", + "dev": true, + "engines": { + "node": "^8.10.0 || ^10.13.0 || >=11.10.1" + } + }, + "node_modules/@typescript-eslint/scope-manager/node_modules/@typescript-eslint/visitor-keys": { + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.7.0.tgz", + "integrity": "sha512-aDJDWuCRsf1lXOtignlfiPODkzSxxop7D0rZ91L6ZuMlcMCSh0YyK+gAfo5zN/ih6WxMwhoXgJWC3cWQdaKC+A==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "4.7.0", + "eslint-visitor-keys": "^2.0.0" + }, + "engines": { + "node": "^8.10.0 || ^10.13.0 || >=11.10.1" + } + }, + "node_modules/@typescript-eslint/scope-manager/node_modules/eslint-visitor-keys": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.0.0.tgz", + "integrity": "sha512-QudtT6av5WXels9WjIM7qz1XD1cWGvX4gGXvp/zBn9nXG02D0utdU3Em2m/QjTnrsk6bBjmCygl3rmj118msQQ==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/@typescript-eslint/types": { + "version": "4.15.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.15.0.tgz", + "integrity": "sha512-su4RHkJhS+iFwyqyXHcS8EGPlUVoC+XREfy5daivjLur9JP8GhvTmDipuRpcujtGC4M+GYhUOJCPDE3rC5NJrg==", + "dev": true, + "engines": { + "node": "^8.10.0 || ^10.13.0 || >=11.10.1" + } + }, + "node_modules/@typescript-eslint/typescript-estree": { + "version": "4.15.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-4.15.0.tgz", + "integrity": "sha512-jG6xTmcNbi6xzZq0SdWh7wQ9cMb2pqXaUp6bUZOMsIlu5aOlxGxgE/t6L/gPybybQGvdguajXGkZKSndZJpksA==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "4.15.0", + "@typescript-eslint/visitor-keys": "4.15.0", + "debug": "^4.1.1", + "globby": "^11.0.1", + "is-glob": "^4.0.1", + "semver": "^7.3.2", + "tsutils": "^3.17.1" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/semver": { + "version": "7.3.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.4.tgz", + "integrity": "sha512-tCfb2WLjqFAtXn4KEdxIhalnRtoKFN7nAwj0B3ZXCbQloV2tq5eDbcTmT68JJD3nRJq24/XgxtQKFIpQdtvmVw==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@typescript-eslint/visitor-keys": { + "version": "4.15.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.15.0.tgz", + "integrity": "sha512-RnDtJwOwFucWFAMjG3ghCG/ikImFJFEg20DI7mn4pHEx3vC48lIAoyjhffvfHmErRDboUPC7p9Z2il4CLb7qxA==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "4.15.0", + "eslint-visitor-keys": "^2.0.0" + }, + "engines": { + "node": "^8.10.0 || ^10.13.0 || >=11.10.1" + } + }, + "node_modules/@typescript-eslint/visitor-keys/node_modules/eslint-visitor-keys": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.0.0.tgz", + "integrity": "sha512-QudtT6av5WXels9WjIM7qz1XD1cWGvX4gGXvp/zBn9nXG02D0utdU3Em2m/QjTnrsk6bBjmCygl3rmj118msQQ==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/@vercel/ncc": { + "version": "0.27.0", + "resolved": "https://registry.npmjs.org/@vercel/ncc/-/ncc-0.27.0.tgz", + "integrity": "sha512-DllIJQapnU2YwewIhh/4dYesmMQw3h2cFtabECc/zSJHqUbNa0eJuEkRa6DXbZvh1YPWBtYQoPV17NlDpBw1Vw==", + "dev": true, + "bin": { + "ncc": "dist/ncc/cli.js" + } + }, + "node_modules/abab": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.3.tgz", + "integrity": "sha512-tsFzPpcttalNjFBCFMqsKYQcWxxen1pgJR56by//QwvJc4/OUS3kPOOttx2tSIfjsylB0pYu7f5D3K1RCxUnUg==", + "dev": true + }, + "node_modules/acorn": { + "version": "6.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.1.tgz", + "integrity": "sha512-ZVA9k326Nwrj3Cj9jlh3wGFutC2ZornPNARZwsNYqQYgN0EsV2d53w5RN/co65Ohn4sUAUtb1rSUAOD6XN9idA==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-globals": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-4.3.4.tgz", + "integrity": "sha512-clfQEh21R+D0leSbUdWf3OcfqyaCSAQ8Ryq00bofSekfr9W8u1jyYZo6ir0xu9Gtcf7BjcHJpnbZH7JOCpP60A==", + "dev": true, + "dependencies": { + "acorn": "^6.0.1", + "acorn-walk": "^6.0.1" + } + }, + "node_modules/acorn-jsx": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.1.tgz", + "integrity": "sha512-K0Ptm/47OKfQRpNQ2J/oIN/3QYiK6FwW+eJbILhsdxh2WTLdl+30o8aGdTbm5JbffpFFAg/g+zi1E+jvJha5ng==", + "dev": true + }, + "node_modules/acorn-walk": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-6.2.0.tgz", + "integrity": "sha512-7evsyfH1cLOCdAzZAd43Cic04yKydNx0cF+7tiA19p1XnLLPU4dpCQOqpjqwokFe//vS0QqfqqjCS2JkiIs0cA==", + "dev": true, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/aggregate-error": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "dependencies": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/ajv": { + "version": "6.10.2", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.10.2.tgz", + "integrity": "sha512-TXtUUEYHuaTEbLZWIKUr5pmBuhDLy+8KYtPYdcV8qC+pOZL+NKqYwvWSRrVXHn+ZmRRAu8vJTAznH7Oag6RVRw==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^2.0.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + } + }, + "node_modules/ansi-colors": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz", + "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/ansi-escapes": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.2.0.tgz", + "integrity": "sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/anymatch": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz", + "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", + "dev": true, + "dependencies": { + "micromatch": "^3.1.4", + "normalize-path": "^2.1.1" + } + }, + "node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true + }, + "node_modules/arr-diff": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", + "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/arr-flatten": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", + "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/arr-union": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", + "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/array-equal": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/array-equal/-/array-equal-1.0.0.tgz", + "integrity": "sha1-jCpe8kcv2ep0KwTHenUJO6J1fJM=", + "dev": true + }, + "node_modules/array-includes": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.1.tgz", + "integrity": "sha512-c2VXaCHl7zPsvpkFsw4nxvFie4fh1ur9bpcgsVkIjqn0H/Xwdg+7fv3n2r/isyS8EBj5b06M9kHyZuIr4El6WQ==", + "dev": true, + "dependencies": { + "define-properties": "^1.1.3", + "es-abstract": "^1.17.0", + "is-string": "^1.0.5" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/array-includes/node_modules/es-abstract": { + "version": "1.17.6", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.6.tgz", + "integrity": "sha512-Fr89bON3WFyUi5EvAeI48QTWX0AyekGgLA8H+c+7fbfCkJwRWRMLd8CQedNEyJuoYYhmtEqY92pgte1FAhBlhw==", + "dev": true, + "dependencies": { + "es-to-primitive": "^1.2.1", + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.1", + "is-callable": "^1.2.0", + "is-regex": "^1.1.0", + "object-inspect": "^1.7.0", + "object-keys": "^1.1.1", + "object.assign": "^4.1.0", + "string.prototype.trimend": "^1.0.1", + "string.prototype.trimstart": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/array-includes/node_modules/is-callable": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.0.tgz", + "integrity": "sha512-pyVD9AaGLxtg6srb2Ng6ynWJqkHU9bEM087AKck0w8QwDarTfNcpIYoU8x8Hv2Icm8u6kFJM18Dag8lyqGkviw==", + "dev": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/array-includes/node_modules/is-regex": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.0.tgz", + "integrity": "sha512-iI97M8KTWID2la5uYXlkbSDQIg4F6o1sYboZKKTDpnDQMLtUL86zxhgDet3Q2SriaYsyGqZ6Mn2SjbRKeLHdqw==", + "dev": true, + "dependencies": { + "has-symbols": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/array-union": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", + "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/array-unique": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", + "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/array.prototype.flat": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.2.3.tgz", + "integrity": "sha512-gBlRZV0VSmfPIeWfuuy56XZMvbVfbEUnOXUvt3F/eUUUSyzlgLxhEX4YAEpxNAogRGehPSnfXyPtYyKAhkzQhQ==", + "dev": true, + "dependencies": { + "define-properties": "^1.1.3", + "es-abstract": "^1.17.0-next.1" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/array.prototype.flat/node_modules/es-abstract": { + "version": "1.17.6", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.6.tgz", + "integrity": "sha512-Fr89bON3WFyUi5EvAeI48QTWX0AyekGgLA8H+c+7fbfCkJwRWRMLd8CQedNEyJuoYYhmtEqY92pgte1FAhBlhw==", + "dev": true, + "dependencies": { + "es-to-primitive": "^1.2.1", + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.1", + "is-callable": "^1.2.0", + "is-regex": "^1.1.0", + "object-inspect": "^1.7.0", + "object-keys": "^1.1.1", + "object.assign": "^4.1.0", + "string.prototype.trimend": "^1.0.1", + "string.prototype.trimstart": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/array.prototype.flat/node_modules/is-callable": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.0.tgz", + "integrity": "sha512-pyVD9AaGLxtg6srb2Ng6ynWJqkHU9bEM087AKck0w8QwDarTfNcpIYoU8x8Hv2Icm8u6kFJM18Dag8lyqGkviw==", + "dev": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/array.prototype.flat/node_modules/is-regex": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.0.tgz", + "integrity": "sha512-iI97M8KTWID2la5uYXlkbSDQIg4F6o1sYboZKKTDpnDQMLtUL86zxhgDet3Q2SriaYsyGqZ6Mn2SjbRKeLHdqw==", + "dev": true, + "dependencies": { + "has-symbols": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/asn1": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz", + "integrity": "sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==", + "dev": true, + "dependencies": { + "safer-buffer": "~2.1.0" + } + }, + "node_modules/assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", + "dev": true, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/assign-symbols": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", + "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/astral-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-1.0.0.tgz", + "integrity": "sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/async-limiter": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.1.tgz", + "integrity": "sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==", + "dev": true + }, + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", + "dev": true + }, + "node_modules/atob": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", + "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", + "dev": true, + "bin": { + "atob": "bin/atob.js" + }, + "engines": { + "node": ">= 4.5.0" + } + }, + "node_modules/aws-sign2": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", + "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/aws4": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.9.0.tgz", + "integrity": "sha512-Uvq6hVe90D0B2WEnUqtdgY1bATGz3mw33nH9Y+dmA+w5DHvUmBgkr5rM/KCHpCsiFNRUfokW/szpPPgMK2hm4A==", + "dev": true + }, + "node_modules/babel-jest": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-24.9.0.tgz", + "integrity": "sha512-ntuddfyiN+EhMw58PTNL1ph4C9rECiQXjI4nMMBKBaNjXvqLdkXpPRcMSr4iyBrJg/+wz9brFUD6RhOAT6r4Iw==", + "dev": true, + "dependencies": { + "@jest/transform": "^24.9.0", + "@jest/types": "^24.9.0", + "@types/babel__core": "^7.1.0", + "babel-plugin-istanbul": "^5.1.0", + "babel-preset-jest": "^24.9.0", + "chalk": "^2.4.2", + "slash": "^2.0.0" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/babel-plugin-istanbul": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-5.2.0.tgz", + "integrity": "sha512-5LphC0USA8t4i1zCtjbbNb6jJj/9+X6P37Qfirc/70EQ34xKlMW+a1RHGwxGI+SwWpNwZ27HqvzAobeqaXwiZw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.0.0", + "find-up": "^3.0.0", + "istanbul-lib-instrument": "^3.3.0", + "test-exclude": "^5.2.3" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/babel-plugin-istanbul/node_modules/find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dev": true, + "dependencies": { + "locate-path": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/babel-plugin-istanbul/node_modules/locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dev": true, + "dependencies": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/babel-plugin-istanbul/node_modules/p-limit": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.1.tgz", + "integrity": "sha512-85Tk+90UCVWvbDavCLKPOLC9vvY8OwEX/RtKF+/1OADJMVlFfEHOiMTPVyxg7mk/dKa+ipdHm0OUkTvCpMTuwg==", + "dev": true, + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/babel-plugin-istanbul/node_modules/p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dev": true, + "dependencies": { + "p-limit": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/babel-plugin-istanbul/node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/babel-plugin-jest-hoist": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-24.9.0.tgz", + "integrity": "sha512-2EMA2P8Vp7lG0RAzr4HXqtYwacfMErOuv1U3wrvxHX6rD1sV6xS3WXG3r8TRQ2r6w8OhvSdWt+z41hQNwNm3Xw==", + "dev": true, + "dependencies": { + "@types/babel__traverse": "^7.0.6" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/babel-preset-current-node-syntax": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.0.tgz", + "integrity": "sha512-mGkvkpocWJes1CmMKtgGUwCeeq0pOhALyymozzDWYomHTbDLwueDYG6p4TK1YOeYHCzBzYPsWkgTto10JubI1Q==", + "dev": true, + "dependencies": { + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-bigint": "^7.8.3", + "@babel/plugin-syntax-class-properties": "^7.8.3", + "@babel/plugin-syntax-import-meta": "^7.8.3", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.8.3", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.8.3", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", + "@babel/plugin-syntax-optional-chaining": "^7.8.3", + "@babel/plugin-syntax-top-level-await": "^7.8.3" + } + }, + "node_modules/babel-preset-current-node-syntax/node_modules/@babel/helper-plugin-utils": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz", + "integrity": "sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==", + "dev": true + }, + "node_modules/babel-preset-current-node-syntax/node_modules/@babel/plugin-syntax-object-rest-spread": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", + "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "node_modules/babel-preset-jest": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-24.9.0.tgz", + "integrity": "sha512-izTUuhE4TMfTRPF92fFwD2QfdXaZW08qvWTFCI51V8rW5x00UuPgc3ajRoWofXOuxjfcOM5zzSYsQS3H8KGCAg==", + "dev": true, + "dependencies": { + "@babel/plugin-syntax-object-rest-spread": "^7.0.0", + "babel-plugin-jest-hoist": "^24.9.0" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/balanced-match": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", + "dev": true + }, + "node_modules/base": { + "version": "0.11.2", + "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", + "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", + "dev": true, + "dependencies": { + "cache-base": "^1.0.1", + "class-utils": "^0.3.5", + "component-emitter": "^1.2.1", + "define-property": "^1.0.0", + "isobject": "^3.0.1", + "mixin-deep": "^1.2.0", + "pascalcase": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/base/node_modules/define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "dev": true, + "dependencies": { + "is-descriptor": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/base/node_modules/is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, + "dependencies": { + "kind-of": "^6.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/base/node_modules/is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, + "dependencies": { + "kind-of": "^6.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/base/node_modules/is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, + "dependencies": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/bcrypt-pbkdf": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", + "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", + "dev": true, + "dependencies": { + "tweetnacl": "^0.14.3" + } + }, + "node_modules/before-after-hook": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/before-after-hook/-/before-after-hook-2.1.0.tgz", + "integrity": "sha512-IWIbu7pMqyw3EAJHzzHbWa85b6oud/yfKYg5rqB5hNE8CeMi3nX+2C2sj0HswfblST86hpVEOAb9x34NZd6P7A==" + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "dev": true, + "dependencies": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/braces/node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "dependencies": { + "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/browser-process-hrtime": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-0.1.3.tgz", + "integrity": "sha512-bRFnI4NnjO6cnyLmOV/7PVoDEMJChlcfN0z4s1YMBY989/SvlfMI1lgCnkFUs53e9gQF+w7qu7XdllSTiSl8Aw==", + "dev": true + }, + "node_modules/browser-resolve": { + "version": "1.11.3", + "resolved": "https://registry.npmjs.org/browser-resolve/-/browser-resolve-1.11.3.tgz", + "integrity": "sha512-exDi1BYWB/6raKHmDTCicQfTkqwN5fioMFV4j8BsfMU4R2DK/QfZfK7kOVkmWCNANf0snkBzqGqAJBao9gZMdQ==", + "dev": true, + "dependencies": { + "resolve": "1.1.7" + } + }, + "node_modules/browser-resolve/node_modules/resolve": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.1.7.tgz", + "integrity": "sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs=", + "dev": true + }, + "node_modules/bs-logger": { + "version": "0.2.6", + "resolved": "https://registry.npmjs.org/bs-logger/-/bs-logger-0.2.6.tgz", + "integrity": "sha512-pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog==", + "dev": true, + "dependencies": { + "fast-json-stable-stringify": "2.x" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/bser": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz", + "integrity": "sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==", + "dev": true, + "dependencies": { + "node-int64": "^0.4.0" + } + }, + "node_modules/buffer-from": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", + "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==", + "dev": true + }, + "node_modules/cache-base": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", + "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", + "dev": true, + "dependencies": { + "collection-visit": "^1.0.0", + "component-emitter": "^1.2.1", + "get-value": "^2.0.6", + "has-value": "^1.0.0", + "isobject": "^3.0.1", + "set-value": "^2.0.0", + "to-object-path": "^0.3.0", + "union-value": "^1.0.0", + "unset-value": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/capture-exit": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/capture-exit/-/capture-exit-2.0.0.tgz", + "integrity": "sha512-PiT/hQmTonHhl/HFGN+Lx3JJUznrVYJ3+AQsnthneZbvW7x+f08Tk7yLJTLEOUvBTbduLeeBkxEaYXUOUrRq6g==", + "dev": true, + "dependencies": { + "rsvp": "^4.8.4" + }, + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/caseless": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", + "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", + "dev": true + }, + "node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/ci-info": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz", + "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==", + "dev": true + }, + "node_modules/cjs-module-lexer": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-0.6.0.tgz", + "integrity": "sha512-uc2Vix1frTfnuzxxu1Hp4ktSvM3QaI4oXl4ZUqL1wjTu/BGki9TrCWoqLTg/drR1KwAEarXuRFCG2Svr1GxPFw==", + "dev": true + }, + "node_modules/class-utils": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", + "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", + "dev": true, + "dependencies": { + "arr-union": "^3.1.0", + "define-property": "^0.2.5", + "isobject": "^3.0.0", + "static-extend": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/class-utils/node_modules/define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "dependencies": { + "is-descriptor": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", + "engines": { + "node": ">=6" + } + }, + "node_modules/cli-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", + "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", + "dev": true, + "dependencies": { + "restore-cursor": "^3.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cli-truncate": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-2.1.0.tgz", + "integrity": "sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg==", + "dev": true, + "dependencies": { + "slice-ansi": "^3.0.0", + "string-width": "^4.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cli-truncate/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cli-truncate/node_modules/astral-regex": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", + "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/cli-truncate/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/cli-truncate/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/cli-truncate/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/cli-truncate/node_modules/slice-ansi": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-3.0.0.tgz", + "integrity": "sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cliui": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", + "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", + "dev": true, + "dependencies": { + "string-width": "^3.1.0", + "strip-ansi": "^5.2.0", + "wrap-ansi": "^5.1.0" + } + }, + "node_modules/cliui/node_modules/string-width": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "dev": true, + "dependencies": { + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/cliui/node_modules/strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "dev": true, + "dependencies": { + "ansi-regex": "^4.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/co": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", + "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=", + "dev": true, + "engines": { + "iojs": ">= 1.0.0", + "node": ">= 0.12.0" + } + }, + "node_modules/collect-v8-coverage": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.1.tgz", + "integrity": "sha512-iBPtljfCNcTKNAto0KEtDfZ3qzjJvqE3aTGZsbhjSBlorqpXJlaWWtPO35D+ZImoC3KWejX64o+yPGxhWSTzfg==", + "dev": true + }, + "node_modules/collection-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", + "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", + "dev": true, + "dependencies": { + "map-visit": "^1.0.0", + "object-visit": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true + }, + "node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "dev": true, + "dependencies": { + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/commander": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-6.2.1.tgz", + "integrity": "sha512-U7VdrJFnJgo4xjrHpTzu0yrHPGImdsmD95ZlgYSEajAn2JKzDhDTPG9kBTefmObL2w/ngeZnilk+OV9CG3d7UA==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/compare-versions": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/compare-versions/-/compare-versions-3.6.0.tgz", + "integrity": "sha512-W6Af2Iw1z4CB7q4uU4hv646dW9GQuBM+YpC0UvUCWSD8w90SJjp+ujJuXaEMtAXBtSqGfMPuFOVn4/+FlaqfBA==", + "dev": true + }, + "node_modules/component-emitter": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", + "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==", + "dev": true + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", + "dev": true + }, + "node_modules/contains-path": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/contains-path/-/contains-path-0.1.0.tgz", + "integrity": "sha1-/ozxhP9mcLa67wGp1IYaXL7EEgo=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/convert-source-map": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.7.0.tgz", + "integrity": "sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA==", + "dev": true, + "dependencies": { + "safe-buffer": "~5.1.1" + } + }, + "node_modules/copy-descriptor": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", + "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", + "dev": true + }, + "node_modules/cosmiconfig": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.0.0.tgz", + "integrity": "sha512-pondGvTuVYDk++upghXJabWzL6Kxu6f26ljFw64Swq9v6sQPUL3EUlVDV56diOjpCayKihL6hVe8exIACU4XcA==", + "dev": true, + "dependencies": { + "@types/parse-json": "^4.0.0", + "import-fresh": "^3.2.1", + "parse-json": "^5.0.0", + "path-type": "^4.0.0", + "yaml": "^1.10.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/cosmiconfig/node_modules/parse-json": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.1.0.tgz", + "integrity": "sha512-+mi/lmVVNKFNVyLXV31ERiy2CY5E1/F6QtJFEzoChPRwwngMNXRDQ9GJ5WdE2Z2P4AujsOi0/+2qHID68KwfIQ==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cosmiconfig/node_modules/path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/cross-spawn": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", + "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "dev": true, + "dependencies": { + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + }, + "engines": { + "node": ">=4.8" + } + }, + "node_modules/cross-spawn/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/cssom": { + "version": "0.3.8", + "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.3.8.tgz", + "integrity": "sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==", + "dev": true + }, + "node_modules/cssstyle": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-1.4.0.tgz", + "integrity": "sha512-GBrLZYZ4X4x6/QEoBnIrqb8B/f5l4+8me2dkom/j1Gtbxy0kBv6OGzKuAsGM75bkGwGAFkt56Iwg28S3XTZgSA==", + "dev": true, + "dependencies": { + "cssom": "0.3.x" + } + }, + "node_modules/dashdash": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", + "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", + "dev": true, + "dependencies": { + "assert-plus": "^1.0.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/data-urls": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-1.1.0.tgz", + "integrity": "sha512-YTWYI9se1P55u58gL5GkQHW4P6VJBJ5iBT+B5a7i2Tjadhv52paJG0qHX4A0OR6/t52odI64KP2YvFpkDOi3eQ==", + "dev": true, + "dependencies": { + "abab": "^2.0.0", + "whatwg-mimetype": "^2.2.0", + "whatwg-url": "^7.0.0" + } + }, + "node_modules/data-urls/node_modules/whatwg-url": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-7.1.0.tgz", + "integrity": "sha512-WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg==", + "dev": true, + "dependencies": { + "lodash.sortby": "^4.7.0", + "tr46": "^1.0.1", + "webidl-conversions": "^4.0.2" + } + }, + "node_modules/debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/decimal.js": { + "version": "10.2.1", + "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.2.1.tgz", + "integrity": "sha512-KaL7+6Fw6i5A2XSnsbhm/6B+NuEA7TZ4vqxnd5tXz9sbKtrN9Srj8ab4vKVdK8YAqZO9P1kg45Y6YLoduPf+kw==", + "dev": true + }, + "node_modules/decode-uri-component": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", + "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=", + "dev": true, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/dedent": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz", + "integrity": "sha1-JJXduvbrh0q7Dhvp3yLS5aVEMmw=", + "dev": true + }, + "node_modules/deep-is": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", + "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", + "dev": true + }, + "node_modules/deepmerge": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.2.2.tgz", + "integrity": "sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/define-properties": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", + "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", + "dev": true, + "dependencies": { + "object-keys": "^1.0.12" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/define-property": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", + "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", + "dev": true, + "dependencies": { + "is-descriptor": "^1.0.2", + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/define-property/node_modules/is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, + "dependencies": { + "kind-of": "^6.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/define-property/node_modules/is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, + "dependencies": { + "kind-of": "^6.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/define-property/node_modules/is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, + "dependencies": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", + "dev": true, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/deprecation": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/deprecation/-/deprecation-2.3.1.tgz", + "integrity": "sha512-xmHIy4F3scKVwMsQ4WnVaS8bHOx0DmVwRywosKhaILI0ywMDWPtBSku2HNxRvF7jtwDRsoEwYQSfbxj8b7RlJQ==" + }, + "node_modules/detect-newline": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-2.1.0.tgz", + "integrity": "sha1-9B8cEL5LAOh7XxPaaAdZ8sW/0+I=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/diff-sequences": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-24.9.0.tgz", + "integrity": "sha512-Dj6Wk3tWyTE+Fo1rW8v0Xhwk80um6yFYKbuAxc9c3EZxIHFDYwbi34Uk42u1CdnIiVorvt4RmlSDjIPyzGC2ew==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/dir-glob": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "dev": true, + "dependencies": { + "path-type": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/dir-glob/node_modules/path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "dev": true, + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/domexception": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/domexception/-/domexception-1.0.1.tgz", + "integrity": "sha512-raigMkn7CJNNo6Ihro1fzG7wr3fHuYVytzquZKX5n0yizGsTcYgzdIUwj1X9pK0VvjeihV+XiclP+DjwbsSKug==", + "dev": true, + "dependencies": { + "webidl-conversions": "^4.0.2" + } + }, + "node_modules/ecc-jsbn": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", + "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", + "dev": true, + "dependencies": { + "jsbn": "~0.1.0", + "safer-buffer": "^2.1.0" + } + }, + "node_modules/emittery": { + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.7.2.tgz", + "integrity": "sha512-A8OG5SR/ij3SsJdWDJdkkSYUjQdCUx6APQXem0SaEePBSRg4eymGYwBkKo1Y6DU+af/Jn2dBQqDBvjnr9Vi8nQ==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/emoji-regex": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", + "dev": true + }, + "node_modules/end-of-stream": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", + "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", + "dev": true, + "dependencies": { + "once": "^1.4.0" + } + }, + "node_modules/enquirer": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz", + "integrity": "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==", + "dev": true, + "dependencies": { + "ansi-colors": "^4.1.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "dev": true, + "dependencies": { + "is-arrayish": "^0.2.1" + } + }, + "node_modules/es-abstract": { + "version": "1.16.2", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.16.2.tgz", + "integrity": "sha512-jYo/J8XU2emLXl3OLwfwtuFfuF2w6DYPs+xy9ZfVyPkDcrauu6LYrw/q2TyCtrbc/KUdCiC5e9UajRhgNkVopA==", + "dev": true, + "dependencies": { + "es-to-primitive": "^1.2.1", + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.1", + "is-callable": "^1.1.4", + "is-regex": "^1.0.4", + "object-inspect": "^1.7.0", + "object-keys": "^1.1.1", + "string.prototype.trimleft": "^2.1.0", + "string.prototype.trimright": "^2.1.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-to-primitive": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", + "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", + "dev": true, + "dependencies": { + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/escodegen": { + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.12.0.tgz", + "integrity": "sha512-TuA+EhsanGcme5T3R0L80u4t8CpbXQjegRmf7+FPTJrtCTErXFeelblRgHQa1FofEzqYYJmJ/OqjTwREp9qgmg==", + "dev": true, + "dependencies": { + "esprima": "^3.1.3", + "estraverse": "^4.2.0", + "esutils": "^2.0.2", + "optionator": "^0.8.1", + "source-map": "~0.6.1" + }, + "bin": { + "escodegen": "bin/escodegen.js", + "esgenerate": "bin/esgenerate.js" + }, + "engines": { + "node": ">=4.0" + }, + "optionalDependencies": { + "source-map": "~0.6.1" + } + }, + "node_modules/escodegen/node_modules/esprima": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-3.1.3.tgz", + "integrity": "sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM=", + "dev": true, + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/escodegen/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "optional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/eslint": { + "version": "7.19.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.19.0.tgz", + "integrity": "sha512-CGlMgJY56JZ9ZSYhJuhow61lMPPjUzWmChFya71Z/jilVos7mR/jPgaEfVGgMBY5DshbKdG8Ezb8FDCHcoMEMg==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.0.0", + "@eslint/eslintrc": "^0.3.0", + "ajv": "^6.10.0", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.0.1", + "doctrine": "^3.0.0", + "enquirer": "^2.3.5", + "eslint-scope": "^5.1.1", + "eslint-utils": "^2.1.0", + "eslint-visitor-keys": "^2.0.0", + "espree": "^7.3.1", + "esquery": "^1.2.0", + "esutils": "^2.0.2", + "file-entry-cache": "^6.0.0", + "functional-red-black-tree": "^1.0.1", + "glob-parent": "^5.0.0", + "globals": "^12.1.0", + "ignore": "^4.0.6", + "import-fresh": "^3.0.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "js-yaml": "^3.13.1", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash": "^4.17.20", + "minimatch": "^3.0.4", + "natural-compare": "^1.4.0", + "optionator": "^0.9.1", + "progress": "^2.0.0", + "regexpp": "^3.1.0", + "semver": "^7.2.1", + "strip-ansi": "^6.0.0", + "strip-json-comments": "^3.1.0", + "table": "^6.0.4", + "text-table": "^0.2.0", + "v8-compile-cache": "^2.0.3" + }, + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/eslint-config-prettier": { + "version": "6.11.0", + "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-6.11.0.tgz", + "integrity": "sha512-oB8cpLWSAjOVFEJhhyMZh6NOEOtBVziaqdDQ86+qhDHFbZXoRTM7pNSvFRfW/W/L/LrQ38C99J5CGuRBBzBsdA==", + "dev": true, + "dependencies": { + "get-stdin": "^6.0.0" + }, + "bin": { + "eslint-config-prettier-check": "bin/cli.js" + } + }, + "node_modules/eslint-import-resolver-node": { + "version": "0.3.4", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.4.tgz", + "integrity": "sha512-ogtf+5AB/O+nM6DIeBUNr2fuT7ot9Qg/1harBfBtaP13ekEWFQEEMP94BCB7zaNW3gyY+8SHYF00rnqYwXKWOA==", + "dev": true, + "dependencies": { + "debug": "^2.6.9", + "resolve": "^1.13.1" + } + }, + "node_modules/eslint-import-resolver-node/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/eslint-import-resolver-node/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + }, + "node_modules/eslint-module-utils": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.6.0.tgz", + "integrity": "sha512-6j9xxegbqe8/kZY8cYpcp0xhbK0EgJlg3g9mib3/miLaExuuwc3n5UEfSnU6hWMbT0FAYVvDbL9RrRgpUeQIvA==", + "dev": true, + "dependencies": { + "debug": "^2.6.9", + "pkg-dir": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/eslint-module-utils/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/eslint-module-utils/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + }, + "node_modules/eslint-plugin-eslint-comments": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-eslint-comments/-/eslint-plugin-eslint-comments-3.2.0.tgz", + "integrity": "sha512-0jkOl0hfojIHHmEHgmNdqv4fmh7300NdpA9FFpF7zaoLvB/QeXOGNLIo86oAveJFrfB1p05kC8hpEMHM8DwWVQ==", + "dev": true, + "dependencies": { + "escape-string-regexp": "^1.0.5", + "ignore": "^5.0.5" + }, + "engines": { + "node": ">=6.5.0" + } + }, + "node_modules/eslint-plugin-eslint-comments/node_modules/ignore": { + "version": "5.1.8", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.8.tgz", + "integrity": "sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/eslint-plugin-github": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-github/-/eslint-plugin-github-4.1.1.tgz", + "integrity": "sha512-MzCh4P4zVvR/13AHtumzZ3znq0cbUE7lXehyBEpFURD/EHdx/+7qW+0c+ySTrteImpX9LGLJFTYNtu10BifkbQ==", + "dev": true, + "dependencies": { + "@typescript-eslint/eslint-plugin": ">=2.25.0", + "@typescript-eslint/parser": ">=2.25.0", + "eslint-config-prettier": ">=6.10.1", + "eslint-plugin-eslint-comments": ">=3.0.1", + "eslint-plugin-import": ">=2.20.1", + "eslint-plugin-prettier": ">=3.1.2", + "eslint-rule-documentation": ">=1.0.0", + "prettier": ">=1.12.0", + "svg-element-attributes": ">=1.3.1" + }, + "bin": { + "eslint-ignore-errors": "bin/eslint-ignore-errors.js" + } + }, + "node_modules/eslint-plugin-import": { + "version": "2.22.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.22.0.tgz", + "integrity": "sha512-66Fpf1Ln6aIS5Gr/55ts19eUuoDhAbZgnr6UxK5hbDx6l/QgQgx61AePq+BV4PP2uXQFClgMVzep5zZ94qqsxg==", + "dev": true, + "dependencies": { + "array-includes": "^3.1.1", + "array.prototype.flat": "^1.2.3", + "contains-path": "^0.1.0", + "debug": "^2.6.9", + "doctrine": "1.5.0", + "eslint-import-resolver-node": "^0.3.3", + "eslint-module-utils": "^2.6.0", + "has": "^1.0.3", + "minimatch": "^3.0.4", + "object.values": "^1.1.1", + "read-pkg-up": "^2.0.0", + "resolve": "^1.17.0", + "tsconfig-paths": "^3.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/eslint-plugin-import/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/eslint-plugin-import/node_modules/doctrine": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-1.5.0.tgz", + "integrity": "sha1-N53Ocw9hZvds76TmcHoVmwLFpvo=", + "dev": true, + "dependencies": { + "esutils": "^2.0.2", + "isarray": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/eslint-plugin-import/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + }, + "node_modules/eslint-plugin-import/node_modules/read-pkg-up": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-2.0.0.tgz", + "integrity": "sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4=", + "dev": true, + "dependencies": { + "find-up": "^2.0.0", + "read-pkg": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/eslint-plugin-import/node_modules/resolve": { + "version": "1.17.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.17.0.tgz", + "integrity": "sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w==", + "dev": true, + "dependencies": { + "path-parse": "^1.0.6" + } + }, + "node_modules/eslint-plugin-jest": { + "version": "24.1.3", + "resolved": "https://registry.npmjs.org/eslint-plugin-jest/-/eslint-plugin-jest-24.1.3.tgz", + "integrity": "sha512-dNGGjzuEzCE3d5EPZQ/QGtmlMotqnYWD/QpCZ1UuZlrMAdhG5rldh0N0haCvhGnUkSeuORS5VNROwF9Hrgn3Lg==", + "dev": true, + "dependencies": { + "@typescript-eslint/experimental-utils": "^4.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/eslint-plugin-prettier": { + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-3.1.4.tgz", + "integrity": "sha512-jZDa8z76klRqo+TdGDTFJSavwbnWK2ZpqGKNZ+VvweMW516pDUMmQ2koXvxEE4JhzNvTv+radye/bWGBmA6jmg==", + "dev": true, + "dependencies": { + "prettier-linter-helpers": "^1.0.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/eslint-rule-documentation": { + "version": "1.0.23", + "resolved": "https://registry.npmjs.org/eslint-rule-documentation/-/eslint-rule-documentation-1.0.23.tgz", + "integrity": "sha512-pWReu3fkohwyvztx/oQWWgld2iad25TfUdi6wvhhaDPIQjHU/pyvlKgXFw1kX31SQK2Nq9MH+vRDWB0ZLy8fYw==", + "dev": true, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/eslint-scope": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.0.tgz", + "integrity": "sha512-iiGRvtxWqgtx5m8EyQUJihBloE4EnYeGE/bz1wSPwJE6tZuJUtHlhqDM4Xj2ukE8Dyy1+HCZ4hE0fzIVMzb58w==", + "dev": true, + "dependencies": { + "esrecurse": "^4.1.0", + "estraverse": "^4.1.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/eslint-utils": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz", + "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==", + "dev": true, + "dependencies": { + "eslint-visitor-keys": "^1.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/eslint-visitor-keys": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.1.0.tgz", + "integrity": "sha512-8y9YjtM1JBJU/A9Kc+SbaOV4y29sSWckBwMHa+FGtVj5gN/sbnKDf6xJUl+8g7FAij9LVaP8C24DUiH/f/2Z9A==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/eslint/node_modules/ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/eslint/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/eslint/node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "node_modules/eslint/node_modules/chalk": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", + "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/eslint/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/eslint/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/eslint/node_modules/cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dev": true, + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/eslint/node_modules/eslint-scope": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", + "dev": true, + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/eslint/node_modules/eslint-visitor-keys": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.0.0.tgz", + "integrity": "sha512-QudtT6av5WXels9WjIM7qz1XD1cWGvX4gGXvp/zBn9nXG02D0utdU3Em2m/QjTnrsk6bBjmCygl3rmj118msQQ==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/eslint/node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dev": true, + "dependencies": { + "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/eslint/node_modules/esrecurse/node_modules/estraverse": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", + "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/eslint/node_modules/globals": { + "version": "12.4.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-12.4.0.tgz", + "integrity": "sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg==", + "dev": true, + "dependencies": { + "type-fest": "^0.8.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/eslint/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/eslint/node_modules/js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "dev": true, + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/eslint/node_modules/levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "dev": true, + "dependencies": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/eslint/node_modules/lodash": { + "version": "4.17.20", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.20.tgz", + "integrity": "sha512-PlhdFcillOINfeV7Ni6oF1TAEayyZBoZ8bcshTHqOYJYlrqzRK5hagpagky5o4HfCzzd1TRkXPMFq6cKk9rGmA==", + "dev": true + }, + "node_modules/eslint/node_modules/optionator": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", + "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", + "dev": true, + "dependencies": { + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0", + "word-wrap": "^1.2.3" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/eslint/node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/eslint/node_modules/prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", + "dev": true, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/eslint/node_modules/semver": { + "version": "7.3.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.4.tgz", + "integrity": "sha512-tCfb2WLjqFAtXn4KEdxIhalnRtoKFN7nAwj0B3ZXCbQloV2tq5eDbcTmT68JJD3nRJq24/XgxtQKFIpQdtvmVw==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/eslint/node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/eslint/node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/eslint/node_modules/strip-ansi": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/eslint/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/eslint/node_modules/type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "dev": true, + "dependencies": { + "prelude-ls": "^1.2.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/eslint/node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/espree": { + "version": "7.3.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-7.3.1.tgz", + "integrity": "sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g==", + "dev": true, + "dependencies": { + "acorn": "^7.4.0", + "acorn-jsx": "^5.3.1", + "eslint-visitor-keys": "^1.3.0" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/espree/node_modules/acorn": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/espree/node_modules/eslint-visitor-keys": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", + "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "dev": true, + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/esquery": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", + "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", + "dev": true, + "dependencies": { + "estraverse": "^5.1.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/esquery/node_modules/estraverse": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", + "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esrecurse": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.1.tgz", + "integrity": "sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==", + "dev": true, + "dependencies": { + "estraverse": "^4.1.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/exec-sh": { + "version": "0.3.4", + "resolved": "https://registry.npmjs.org/exec-sh/-/exec-sh-0.3.4.tgz", + "integrity": "sha512-sEFIkc61v75sWeOe72qyrqg2Qg0OuLESziUDk/O/z2qgS15y2gWVFrI6f2Qn/qw/0/NCfCEsmNA4zOjkwEZT1A==", + "dev": true + }, + "node_modules/execa": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz", + "integrity": "sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==", + "dev": true, + "dependencies": { + "cross-spawn": "^6.0.0", + "get-stream": "^4.0.0", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/exit": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", + "integrity": "sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=", + "dev": true, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/expand-brackets": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", + "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", + "dev": true, + "dependencies": { + "debug": "^2.3.3", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "posix-character-classes": "^0.1.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/expand-brackets/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/expand-brackets/node_modules/define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "dependencies": { + "is-descriptor": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/expand-brackets/node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "dependencies": { + "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/expand-brackets/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + }, + "node_modules/expect": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/expect/-/expect-24.9.0.tgz", + "integrity": "sha512-wvVAx8XIol3Z5m9zvZXiyZOQ+sRJqNTIm6sGjdWlaZIeupQGO3WbYI+15D/AmEwZywL6wtJkbAbJtzkOfBuR0Q==", + "dev": true, + "dependencies": { + "@jest/types": "^24.9.0", + "ansi-styles": "^3.2.0", + "jest-get-type": "^24.9.0", + "jest-matcher-utils": "^24.9.0", + "jest-message-util": "^24.9.0", + "jest-regex-util": "^24.9.0" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", + "dev": true + }, + "node_modules/extend-shallow": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", + "dev": true, + "dependencies": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/extend-shallow/node_modules/is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dev": true, + "dependencies": { + "is-plain-object": "^2.0.4" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/extglob": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", + "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", + "dev": true, + "dependencies": { + "array-unique": "^0.3.2", + "define-property": "^1.0.0", + "expand-brackets": "^2.1.4", + "extend-shallow": "^2.0.1", + "fragment-cache": "^0.2.1", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/extglob/node_modules/define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "dev": true, + "dependencies": { + "is-descriptor": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/extglob/node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "dependencies": { + "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/extglob/node_modules/is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, + "dependencies": { + "kind-of": "^6.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/extglob/node_modules/is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, + "dependencies": { + "kind-of": "^6.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/extglob/node_modules/is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, + "dependencies": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/extsprintf": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", + "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", + "dev": true, + "engines": [ + "node >=0.6.0" + ] + }, + "node_modules/fast-deep-equal": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", + "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", + "dev": true + }, + "node_modules/fast-diff": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.2.0.tgz", + "integrity": "sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==", + "dev": true + }, + "node_modules/fast-glob": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.4.tgz", + "integrity": "sha512-kr/Oo6PX51265qeuCYsyGypiO5uJFgBS0jksyG7FUeCyQzNwYnzrNIMR1NXfkZXsMYXYLRAHgISHBz8gQcxKHQ==", + "dev": true, + "dependencies": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.0", + "merge2": "^1.3.0", + "micromatch": "^4.0.2", + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/fast-glob/node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "dependencies": { + "fill-range": "^7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/fast-glob/node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/fast-glob/node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/fast-glob/node_modules/micromatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", + "dev": true, + "dependencies": { + "braces": "^3.0.1", + "picomatch": "^2.0.5" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/fast-glob/node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz", + "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=", + "dev": true + }, + "node_modules/fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", + "dev": true + }, + "node_modules/fast-xml-parser": { + "version": "3.18.0", + "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-3.18.0.tgz", + "integrity": "sha512-tRrwShhppv0K5GKEtuVs92W0VGDaVltZAwtHbpjNF+JOT7cjIFySBGTEOmdBslXYyWYaZwEX/g4Su8ZeKg0LKQ==", + "bin": { + "xml2js": "cli.js" + } + }, + "node_modules/fastq": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.8.0.tgz", + "integrity": "sha512-SMIZoZdLh/fgofivvIkmknUXyPnvxRE3DhtZ5Me3Mrsk5gyPL42F0xr51TdRXskBxHfMp+07bcYzfsYEsSQA9Q==", + "dev": true, + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/fb-watchman": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.0.tgz", + "integrity": "sha1-VOmr99+i8mzZsWNsWIwa/AXeXVg=", + "dev": true, + "dependencies": { + "bser": "^2.0.0" + } + }, + "node_modules/figures": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", + "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", + "dev": true, + "dependencies": { + "escape-string-regexp": "^1.0.5" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/file-entry-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.0.tgz", + "integrity": "sha512-fqoO76jZ3ZnYrXLDRxBR1YvOvc0k844kcOg40bgsPrE25LAb/PDqTY+ho64Xh2c8ZXgIKldchCFHczG2UVRcWA==", + "dev": true, + "dependencies": { + "flat-cache": "^3.0.4" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/fill-range": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", + "dev": true, + "dependencies": { + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fill-range/node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "dependencies": { + "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "dev": true, + "dependencies": { + "locate-path": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/find-versions": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/find-versions/-/find-versions-4.0.0.tgz", + "integrity": "sha512-wgpWy002tA+wgmO27buH/9KzyEOQnKsG/R0yrcjPT9BOFm0zRBVQbZ95nRGXWMywS8YR5knRbpohio0bcJABxQ==", + "dev": true, + "dependencies": { + "semver-regex": "^3.1.2" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/flat-cache": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", + "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", + "dev": true, + "dependencies": { + "flatted": "^3.1.0", + "rimraf": "^3.0.2" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/flat-cache/node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + } + }, + "node_modules/flatted": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.1.1.tgz", + "integrity": "sha512-zAoAQiudy+r5SvnSw3KJy5os/oRJYHzrzja/tBDqrZtNhUw8bt6y8OBzMWcjWr+8liV8Eb6yOhw8WZ7VFZ5ZzA==", + "dev": true + }, + "node_modules/for-in": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", + "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/forever-agent": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", + "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/form-data": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", + "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", + "dev": true, + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.6", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 0.12" + } + }, + "node_modules/fragment-cache": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", + "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", + "dev": true, + "dependencies": { + "map-cache": "^0.2.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", + "dev": true + }, + "node_modules/fsevents": { + "version": "1.2.9", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.9.tgz", + "integrity": "sha512-oeyj2H3EjjonWcFjD5NvZNE9Rqe4UW+nQBU2HNeKw0koVLEFIhtyETyAakeAM3de7Z/SW5kcA+fZUait9EApnw==", + "bundleDependencies": [ + "abbrev", + "ansi-regex", + "aproba", + "are-we-there-yet", + "balanced-match", + "brace-expansion", + "chownr", + "code-point-at", + "concat-map", + "console-control-strings", + "core-util-is", + "debug", + "deep-extend", + "delegates", + "detect-libc", + "fs-minipass", + "fs.realpath", + "gauge", + "glob", + "has-unicode", + "iconv-lite", + "ignore-walk", + "inflight", + "inherits", + "ini", + "is-fullwidth-code-point", + "isarray", + "minimatch", + "minimist", + "minipass", + "minizlib", + "mkdirp", + "ms", + "needle", + "node-pre-gyp", + "nopt", + "npm-bundled", + "npm-packlist", + "npmlog", + "number-is-nan", + "object-assign", + "once", + "os-homedir", + "os-tmpdir", + "osenv", + "path-is-absolute", + "process-nextick-args", + "rc", + "readable-stream", + "rimraf", + "safe-buffer", + "safer-buffer", + "sax", + "semver", + "set-blocking", + "signal-exit", + "string-width", + "string_decoder", + "strip-ansi", + "strip-json-comments", + "tar", + "util-deprecate", + "wide-align", + "wrappy", + "yallist" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "dependencies": { + "nan": "^2.12.1", + "node-pre-gyp": "^0.12.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/fsevents/node_modules/abbrev": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", + "dev": true, + "inBundle": true, + "license": "ISC", + "optional": true + }, + "node_modules/fsevents/node_modules/ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "dev": true, + "inBundle": true, + "license": "MIT", + "optional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fsevents/node_modules/aproba": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", + "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", + "dev": true, + "inBundle": true, + "license": "ISC", + "optional": true + }, + "node_modules/fsevents/node_modules/are-we-there-yet": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz", + "integrity": "sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w==", + "dev": true, + "inBundle": true, + "license": "ISC", + "optional": true, + "dependencies": { + "delegates": "^1.0.0", + "readable-stream": "^2.0.6" + } + }, + "node_modules/fsevents/node_modules/balanced-match": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", + "dev": true, + "inBundle": true, + "license": "MIT", + "optional": true + }, + "node_modules/fsevents/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "inBundle": true, + "license": "MIT", + "optional": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/fsevents/node_modules/chownr": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.1.tgz", + "integrity": "sha512-j38EvO5+LHX84jlo6h4UzmOwi0UgW61WRyPtJz4qaadK5eY3BTS5TY/S1Stc3Uk2lIM6TPevAlULiEJwie860g==", + "dev": true, + "inBundle": true, + "license": "ISC", + "optional": true + }, + "node_modules/fsevents/node_modules/code-point-at": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", + "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", + "dev": true, + "inBundle": true, + "license": "MIT", + "optional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fsevents/node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", + "dev": true, + "inBundle": true, + "license": "MIT", + "optional": true + }, + "node_modules/fsevents/node_modules/console-control-strings": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", + "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=", + "dev": true, + "inBundle": true, + "license": "ISC", + "optional": true + }, + "node_modules/fsevents/node_modules/core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", + "dev": true, + "inBundle": true, + "license": "MIT", + "optional": true + }, + "node_modules/fsevents/node_modules/debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "dev": true, + "inBundle": true, + "license": "MIT", + "optional": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/fsevents/node_modules/deep-extend": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", + "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", + "dev": true, + "inBundle": true, + "license": "MIT", + "optional": true, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/fsevents/node_modules/delegates": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", + "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=", + "dev": true, + "inBundle": true, + "license": "MIT", + "optional": true + }, + "node_modules/fsevents/node_modules/detect-libc": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz", + "integrity": "sha1-+hN8S9aY7fVc1c0CrFWfkaTEups=", + "dev": true, + "inBundle": true, + "license": "Apache-2.0", + "optional": true, + "bin": { + "detect-libc": "bin/detect-libc.js" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/fsevents/node_modules/fs-minipass": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-1.2.5.tgz", + "integrity": "sha512-JhBl0skXjUPCFH7x6x61gQxrKyXsxB5gcgePLZCwfyCGGsTISMoIeObbrvVeP6Xmyaudw4TT43qV2Gz+iyd2oQ==", + "dev": true, + "inBundle": true, + "license": "ISC", + "optional": true, + "dependencies": { + "minipass": "^2.2.1" + } + }, + "node_modules/fsevents/node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", + "dev": true, + "inBundle": true, + "license": "ISC", + "optional": true + }, + "node_modules/fsevents/node_modules/gauge": { + "version": "2.7.4", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", + "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", + "dev": true, + "inBundle": true, + "license": "ISC", + "optional": true, + "dependencies": { + "aproba": "^1.0.3", + "console-control-strings": "^1.0.0", + "has-unicode": "^2.0.0", + "object-assign": "^4.1.0", + "signal-exit": "^3.0.0", + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1", + "wide-align": "^1.1.0" + } + }, + "node_modules/fsevents/node_modules/glob": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz", + "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==", + "dev": true, + "inBundle": true, + "license": "ISC", + "optional": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + } + }, + "node_modules/fsevents/node_modules/has-unicode": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", + "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=", + "dev": true, + "inBundle": true, + "license": "ISC", + "optional": true + }, + "node_modules/fsevents/node_modules/iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "dev": true, + "inBundle": true, + "license": "MIT", + "optional": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fsevents/node_modules/ignore-walk": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-3.0.1.tgz", + "integrity": "sha512-DTVlMx3IYPe0/JJcYP7Gxg7ttZZu3IInhuEhbchuqneY9wWe5Ojy2mXLBaQFUQmo0AW2r3qG7m1mg86js+gnlQ==", + "dev": true, + "inBundle": true, + "license": "ISC", + "optional": true, + "dependencies": { + "minimatch": "^3.0.4" + } + }, + "node_modules/fsevents/node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "dev": true, + "inBundle": true, + "license": "ISC", + "optional": true, + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/fsevents/node_modules/inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", + "dev": true, + "inBundle": true, + "license": "ISC", + "optional": true + }, + "node_modules/fsevents/node_modules/ini": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz", + "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==", + "dev": true, + "inBundle": true, + "license": "ISC", + "optional": true, + "engines": { + "node": "*" + } + }, + "node_modules/fsevents/node_modules/is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "dev": true, + "inBundle": true, + "license": "MIT", + "optional": true, + "dependencies": { + "number-is-nan": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fsevents/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true, + "inBundle": true, + "license": "MIT", + "optional": true + }, + "node_modules/fsevents/node_modules/minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "dev": true, + "inBundle": true, + "license": "ISC", + "optional": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/fsevents/node_modules/minimist": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", + "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", + "dev": true, + "inBundle": true, + "license": "MIT", + "optional": true + }, + "node_modules/fsevents/node_modules/minipass": { + "version": "2.3.5", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-2.3.5.tgz", + "integrity": "sha512-Gi1W4k059gyRbyVUZQ4mEqLm0YIUiGYfvxhF6SIlk3ui1WVxMTGfGdQ2SInh3PDrRTVvPKgULkpJtT4RH10+VA==", + "dev": true, + "inBundle": true, + "license": "ISC", + "optional": true, + "dependencies": { + "safe-buffer": "^5.1.2", + "yallist": "^3.0.0" + } + }, + "node_modules/fsevents/node_modules/minizlib": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-1.2.1.tgz", + "integrity": "sha512-7+4oTUOWKg7AuL3vloEWekXY2/D20cevzsrNT2kGWm+39J9hGTCBv8VI5Pm5lXZ/o3/mdR4f8rflAPhnQb8mPA==", + "dev": true, + "inBundle": true, + "license": "MIT", + "optional": true, + "dependencies": { + "minipass": "^2.2.1" + } + }, + "node_modules/fsevents/node_modules/mkdirp": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "dev": true, + "inBundle": true, + "license": "MIT", + "optional": true, + "dependencies": { + "minimist": "0.0.8" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, + "node_modules/fsevents/node_modules/ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true, + "inBundle": true, + "license": "MIT", + "optional": true + }, + "node_modules/fsevents/node_modules/needle": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/needle/-/needle-2.3.0.tgz", + "integrity": "sha512-QBZu7aAFR0522EyaXZM0FZ9GLpq6lvQ3uq8gteiDUp7wKdy0lSd2hPlgFwVuW1CBkfEs9PfDQsQzZghLs/psdg==", + "dev": true, + "inBundle": true, + "license": "MIT", + "optional": true, + "dependencies": { + "debug": "^4.1.0", + "iconv-lite": "^0.4.4", + "sax": "^1.2.4" + }, + "bin": { + "needle": "bin/needle" + }, + "engines": { + "node": ">= 4.4.x" + } + }, + "node_modules/fsevents/node_modules/node-pre-gyp": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/node-pre-gyp/-/node-pre-gyp-0.12.0.tgz", + "integrity": "sha512-4KghwV8vH5k+g2ylT+sLTjy5wmUOb9vPhnM8NHvRf9dHmnW/CndrFXy2aRPaPST6dugXSdHXfeaHQm77PIz/1A==", + "dev": true, + "inBundle": true, + "license": "BSD-3-Clause", + "optional": true, + "dependencies": { + "detect-libc": "^1.0.2", + "mkdirp": "^0.5.1", + "needle": "^2.2.1", + "nopt": "^4.0.1", + "npm-packlist": "^1.1.6", + "npmlog": "^4.0.2", + "rc": "^1.2.7", + "rimraf": "^2.6.1", + "semver": "^5.3.0", + "tar": "^4" + }, + "bin": { + "node-pre-gyp": "bin/node-pre-gyp" + } + }, + "node_modules/fsevents/node_modules/nopt": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-4.0.1.tgz", + "integrity": "sha1-0NRoWv1UFRk8jHUFYC0NF81kR00=", + "dev": true, + "inBundle": true, + "license": "ISC", + "optional": true, + "dependencies": { + "abbrev": "1", + "osenv": "^0.1.4" + }, + "bin": { + "nopt": "bin/nopt.js" + } + }, + "node_modules/fsevents/node_modules/npm-bundled": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-1.0.6.tgz", + "integrity": "sha512-8/JCaftHwbd//k6y2rEWp6k1wxVfpFzB6t1p825+cUb7Ym2XQfhwIC5KwhrvzZRJu+LtDE585zVaS32+CGtf0g==", + "dev": true, + "inBundle": true, + "license": "ISC", + "optional": true + }, + "node_modules/fsevents/node_modules/npm-packlist": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-1.4.1.tgz", + "integrity": "sha512-+TcdO7HJJ8peiiYhvPxsEDhF3PJFGUGRcFsGve3vxvxdcpO2Z4Z7rkosRM0kWj6LfbK/P0gu3dzk5RU1ffvFcw==", + "dev": true, + "inBundle": true, + "license": "ISC", + "optional": true, + "dependencies": { + "ignore-walk": "^3.0.1", + "npm-bundled": "^1.0.1" + } + }, + "node_modules/fsevents/node_modules/npmlog": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", + "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", + "dev": true, + "inBundle": true, + "license": "ISC", + "optional": true, + "dependencies": { + "are-we-there-yet": "~1.1.2", + "console-control-strings": "~1.1.0", + "gauge": "~2.7.3", + "set-blocking": "~2.0.0" + } + }, + "node_modules/fsevents/node_modules/number-is-nan": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", + "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", + "dev": true, + "inBundle": true, + "license": "MIT", + "optional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fsevents/node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", + "dev": true, + "inBundle": true, + "license": "MIT", + "optional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fsevents/node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "dev": true, + "inBundle": true, + "license": "ISC", + "optional": true, + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/fsevents/node_modules/os-homedir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", + "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", + "dev": true, + "inBundle": true, + "license": "MIT", + "optional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fsevents/node_modules/os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", + "dev": true, + "inBundle": true, + "license": "MIT", + "optional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fsevents/node_modules/osenv": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.5.tgz", + "integrity": "sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==", + "dev": true, + "inBundle": true, + "license": "ISC", + "optional": true, + "dependencies": { + "os-homedir": "^1.0.0", + "os-tmpdir": "^1.0.0" + } + }, + "node_modules/fsevents/node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", + "dev": true, + "inBundle": true, + "license": "MIT", + "optional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fsevents/node_modules/process-nextick-args": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.0.tgz", + "integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==", + "dev": true, + "inBundle": true, + "license": "MIT", + "optional": true + }, + "node_modules/fsevents/node_modules/rc": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", + "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", + "dev": true, + "inBundle": true, + "license": "(BSD-2-Clause OR MIT OR Apache-2.0)", + "optional": true, + "dependencies": { + "deep-extend": "^0.6.0", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" + }, + "bin": { + "rc": "cli.js" + } + }, + "node_modules/fsevents/node_modules/rc/node_modules/minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "dev": true, + "inBundle": true, + "license": "MIT", + "optional": true + }, + "node_modules/fsevents/node_modules/readable-stream": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", + "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", + "dev": true, + "inBundle": true, + "license": "MIT", + "optional": true, + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/fsevents/node_modules/rimraf": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", + "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", + "dev": true, + "inBundle": true, + "license": "ISC", + "optional": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + } + }, + "node_modules/fsevents/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true, + "inBundle": true, + "license": "MIT", + "optional": true + }, + "node_modules/fsevents/node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "dev": true, + "inBundle": true, + "license": "MIT", + "optional": true + }, + "node_modules/fsevents/node_modules/sax": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", + "dev": true, + "inBundle": true, + "license": "ISC", + "optional": true + }, + "node_modules/fsevents/node_modules/semver": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", + "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", + "dev": true, + "inBundle": true, + "license": "ISC", + "optional": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/fsevents/node_modules/set-blocking": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", + "dev": true, + "inBundle": true, + "license": "ISC", + "optional": true + }, + "node_modules/fsevents/node_modules/signal-exit": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", + "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=", + "dev": true, + "inBundle": true, + "license": "ISC", + "optional": true + }, + "node_modules/fsevents/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "inBundle": true, + "license": "MIT", + "optional": true, + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/fsevents/node_modules/string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "dev": true, + "inBundle": true, + "license": "MIT", + "optional": true, + "dependencies": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fsevents/node_modules/strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dev": true, + "inBundle": true, + "license": "MIT", + "optional": true, + "dependencies": { + "ansi-regex": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fsevents/node_modules/strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", + "dev": true, + "inBundle": true, + "license": "MIT", + "optional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fsevents/node_modules/tar": { + "version": "4.4.8", + "resolved": "https://registry.npmjs.org/tar/-/tar-4.4.8.tgz", + "integrity": "sha512-LzHF64s5chPQQS0IYBn9IN5h3i98c12bo4NCO7e0sGM2llXQ3p2FGC5sdENN4cTW48O915Sh+x+EXx7XW96xYQ==", + "dev": true, + "inBundle": true, + "license": "ISC", + "optional": true, + "dependencies": { + "chownr": "^1.1.1", + "fs-minipass": "^1.2.5", + "minipass": "^2.3.4", + "minizlib": "^1.1.1", + "mkdirp": "^0.5.0", + "safe-buffer": "^5.1.2", + "yallist": "^3.0.2" + }, + "engines": { + "node": ">=4.5" + } + }, + "node_modules/fsevents/node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", + "dev": true, + "inBundle": true, + "license": "MIT", + "optional": true + }, + "node_modules/fsevents/node_modules/wide-align": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz", + "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==", + "dev": true, + "inBundle": true, + "license": "ISC", + "optional": true, + "dependencies": { + "string-width": "^1.0.2 || 2" + } + }, + "node_modules/fsevents/node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", + "dev": true, + "inBundle": true, + "license": "ISC", + "optional": true + }, + "node_modules/fsevents/node_modules/yallist": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.0.3.tgz", + "integrity": "sha512-S+Zk8DEWE6oKpV+vI3qWkaK+jSbIK86pCwe2IF/xwIpQ8jEuxpw9NyaGjmp9+BoJv5FV2piqCDcoCtStppiq2A==", + "dev": true, + "inBundle": true, + "license": "ISC", + "optional": true + }, + "node_modules/function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", + "dev": true + }, + "node_modules/functional-red-black-tree": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", + "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", + "dev": true + }, + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true, + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/get-own-enumerable-property-symbols": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.2.tgz", + "integrity": "sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g==", + "dev": true + }, + "node_modules/get-package-type": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", + "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", + "dev": true, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/get-stdin": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-6.0.0.tgz", + "integrity": "sha512-jp4tHawyV7+fkkSKyvjuLZswblUtz+SQKzSWnBbii16BuZksJlU1wuBYXY75r+duh/llF1ur6oNwi+2ZzjKZ7g==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/get-stream": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", + "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", + "dev": true, + "dependencies": { + "pump": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/get-value": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", + "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/getpass": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", + "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", + "dev": true, + "dependencies": { + "assert-plus": "^1.0.0" + } + }, + "node_modules/glob": { + "version": "7.1.6", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", + "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", + "dev": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + } + }, + "node_modules/glob-parent": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz", + "integrity": "sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/globby": { + "version": "11.0.1", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.0.1.tgz", + "integrity": "sha512-iH9RmgwCmUJHi2z5o2l3eTtGBtXek1OYlHrbcxOYugyHLmAsZrPj43OtHThd62Buh/Vv6VyCBD2bdyWcGNQqoQ==", + "dev": true, + "dependencies": { + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.1.1", + "ignore": "^5.1.4", + "merge2": "^1.3.0", + "slash": "^3.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/globby/node_modules/ignore": { + "version": "5.1.8", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.8.tgz", + "integrity": "sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/globby/node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.3.tgz", + "integrity": "sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ==", + "dev": true + }, + "node_modules/growly": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/growly/-/growly-1.3.0.tgz", + "integrity": "sha1-8QdIy+dq+WS3yWyTxrzCivEgwIE=", + "dev": true + }, + "node_modules/har-schema": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", + "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/har-validator": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.3.tgz", + "integrity": "sha512-sNvOCzEQNr/qrvJgc3UG/kD4QtlHycrzwS+6mfTrrSq97BvaYcPZZI1ZSqGSPR73Cxn4LKTD4PttRwfU7jWq5g==", + "dev": true, + "dependencies": { + "ajv": "^6.5.5", + "har-schema": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "dev": true, + "dependencies": { + "function-bind": "^1.1.1" + }, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/has-symbols": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz", + "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==", + "dev": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/has-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", + "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", + "dev": true, + "dependencies": { + "get-value": "^2.0.6", + "has-values": "^1.0.0", + "isobject": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/has-values": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz", + "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=", + "dev": true, + "dependencies": { + "is-number": "^3.0.0", + "kind-of": "^4.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/has-values/node_modules/kind-of": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", + "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", + "dev": true, + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/he": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", + "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", + "bin": { + "he": "bin/he" + } + }, + "node_modules/hosted-git-info": { + "version": "2.8.5", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.5.tgz", + "integrity": "sha512-kssjab8CvdXfcXMXVcvsXum4Hwdq9XGtRD3TteMEvEbq0LXyiNQr6AprqKqfeaDXze7SxWvRxdpwE6ku7ikLkg==", + "dev": true + }, + "node_modules/html-encoding-sniffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-1.0.2.tgz", + "integrity": "sha512-71lZziiDnsuabfdYiUeWdCVyKuqwWi23L8YeIgV9jSSZHCtb6wB1BKWooH7L3tn4/FuZJMVWyNaIDr4RGmaSYw==", + "dev": true, + "dependencies": { + "whatwg-encoding": "^1.0.1" + } + }, + "node_modules/html-escaper": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", + "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", + "dev": true + }, + "node_modules/http-signature": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", + "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", + "dev": true, + "dependencies": { + "assert-plus": "^1.0.0", + "jsprim": "^1.2.2", + "sshpk": "^1.7.0" + }, + "engines": { + "node": ">=0.8", + "npm": ">=1.3.7" + } + }, + "node_modules/human-signals": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-1.1.1.tgz", + "integrity": "sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==", + "dev": true, + "engines": { + "node": ">=8.12.0" + } + }, + "node_modules/husky": { + "version": "4.3.8", + "resolved": "https://registry.npmjs.org/husky/-/husky-4.3.8.tgz", + "integrity": "sha512-LCqqsB0PzJQ/AlCgfrfzRe3e3+NvmefAdKQhRYpxS4u6clblBoDdzzvHi8fmxKRzvMxPY/1WZWzomPZww0Anow==", + "dev": true, + "dependencies": { + "chalk": "^4.0.0", + "ci-info": "^2.0.0", + "compare-versions": "^3.6.0", + "cosmiconfig": "^7.0.0", + "find-versions": "^4.0.0", + "opencollective-postinstall": "^2.0.2", + "pkg-dir": "^5.0.0", + "please-upgrade-node": "^3.2.0", + "slash": "^3.0.0", + "which-pm-runs": "^1.0.0" + }, + "bin": { + "husky-run": "bin/run.js", + "husky-upgrade": "lib/upgrader/bin.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/husky/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/husky/node_modules/chalk": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", + "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/husky/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/husky/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/husky/node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dev": true, + "dependencies": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/husky/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/husky/node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dev": true, + "dependencies": { + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/husky/node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/husky/node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dev": true, + "dependencies": { + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/husky/node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/husky/node_modules/pkg-dir": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-5.0.0.tgz", + "integrity": "sha512-NPE8TDbzl/3YQYY7CSS228s3g2ollTFnc+Qi3tqmqJp9Vg2ovUpixcJEo2HJScN2Ez+kEaal6y70c0ehqJBJeA==", + "dev": true, + "dependencies": { + "find-up": "^5.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/husky/node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/husky/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "dev": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ignore": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", + "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/import-fresh": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.2.1.tgz", + "integrity": "sha512-6e1q1cnWP2RXD9/keSkxHScg508CdXqXWgWBaETNhyuBFz+kUZlKboh+ISK+bU++DmbHimVBrOz/zzPe0sZ3sQ==", + "dev": true, + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/import-local": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-2.0.0.tgz", + "integrity": "sha512-b6s04m3O+s3CGSbqDIyP4R6aAwAeYlVq9+WUWep6iHa8ETRf9yei1U48C5MmfJmV9AiLYYBKPMq/W+/WRpQmCQ==", + "dev": true, + "dependencies": { + "pkg-dir": "^3.0.0", + "resolve-cwd": "^2.0.0" + }, + "bin": { + "import-local-fixture": "fixtures/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/import-local/node_modules/find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dev": true, + "dependencies": { + "locate-path": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/import-local/node_modules/locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dev": true, + "dependencies": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/import-local/node_modules/p-limit": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.1.tgz", + "integrity": "sha512-85Tk+90UCVWvbDavCLKPOLC9vvY8OwEX/RtKF+/1OADJMVlFfEHOiMTPVyxg7mk/dKa+ipdHm0OUkTvCpMTuwg==", + "dev": true, + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/import-local/node_modules/p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dev": true, + "dependencies": { + "p-limit": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/import-local/node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/import-local/node_modules/pkg-dir": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", + "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", + "dev": true, + "dependencies": { + "find-up": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", + "dev": true, + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "dev": true, + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true + }, + "node_modules/invariant": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", + "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", + "dev": true, + "dependencies": { + "loose-envify": "^1.0.0" + } + }, + "node_modules/ip-regex": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/ip-regex/-/ip-regex-2.1.0.tgz", + "integrity": "sha1-+ni/XS5pE8kRzp+BnuUUa7bYROk=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", + "dev": true, + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-accessor-descriptor/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", + "dev": true + }, + "node_modules/is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", + "dev": true + }, + "node_modules/is-callable": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.4.tgz", + "integrity": "sha512-r5p9sxJjYnArLjObpjA4xu5EKI3CuKHkJXMhT7kwbpUyIFD1n5PMAsoPvWnvtZiNz7LjkYDRZhd7FlI0eMijEA==", + "dev": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/is-ci": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz", + "integrity": "sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==", + "dev": true, + "dependencies": { + "ci-info": "^2.0.0" + }, + "bin": { + "is-ci": "bin.js" + } + }, + "node_modules/is-core-module": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.0.0.tgz", + "integrity": "sha512-jq1AH6C8MuteOoBPwkxHafmByhL9j5q4OaPGdbuD+ZtQJVzH+i6E3BJDQcBA09k57i2Hh2yQbEG8yObZ0jdlWw==", + "dev": true, + "dependencies": { + "has": "^1.0.3" + } + }, + "node_modules/is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", + "dev": true, + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-data-descriptor/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-date-object": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.1.tgz", + "integrity": "sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY=", + "dev": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "dev": true, + "dependencies": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-descriptor/node_modules/kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/is-generator-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz", + "integrity": "sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/is-glob": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", + "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", + "dev": true, + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "dev": true, + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-number/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", + "integrity": "sha1-PkcprB9f3gJc19g6iW2rn09n2w8=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, + "dependencies": { + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-potential-custom-element-name": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.0.tgz", + "integrity": "sha1-DFLlS8yjkbssSUsh6GJtczbG45c=", + "dev": true + }, + "node_modules/is-regex": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.4.tgz", + "integrity": "sha1-VRdIm1RwkbCTDglWVM7SXul+lJE=", + "dev": true, + "dependencies": { + "has": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/is-regexp": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-regexp/-/is-regexp-1.0.0.tgz", + "integrity": "sha1-/S2INUXEa6xaYz57mgnof6LLUGk=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-string": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.5.tgz", + "integrity": "sha512-buY6VNRjhQMiF1qWDouloZlQbRhDPCebwxSjxMjxgemYT46YMd2NR0/H+fBhEfWX4A/w9TBJ+ol+okqJKFE6vQ==", + "dev": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/is-symbol": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.3.tgz", + "integrity": "sha512-OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ==", + "dev": true, + "dependencies": { + "has-symbols": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", + "dev": true + }, + "node_modules/is-windows": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", + "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-wsl": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", + "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", + "dev": true + }, + "node_modules/isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/isstream": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", + "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", + "dev": true + }, + "node_modules/istanbul-lib-coverage": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.5.tgz", + "integrity": "sha512-8aXznuEPCJvGnMSRft4udDRDtb1V3pkQkMMI5LI+6HuQz5oQ4J2UFn1H82raA3qJtyOLkkwVqICBQkjnGtn5mA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/istanbul-lib-instrument": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-3.3.0.tgz", + "integrity": "sha512-5nnIN4vo5xQZHdXno/YDXJ0G+I3dAm4XgzfSVTPLQpj/zAV2dV6Juy0yaf10/zrJOJeHoN3fraFe+XRq2bFVZA==", + "dev": true, + "dependencies": { + "@babel/generator": "^7.4.0", + "@babel/parser": "^7.4.3", + "@babel/template": "^7.4.0", + "@babel/traverse": "^7.4.3", + "@babel/types": "^7.4.0", + "istanbul-lib-coverage": "^2.0.5", + "semver": "^6.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/istanbul-lib-report": { + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-2.0.8.tgz", + "integrity": "sha512-fHBeG573EIihhAblwgxrSenp0Dby6tJMFR/HvlerBsrCTD5bkUuoNtn3gVh29ZCS824cGGBPn7Sg7cNk+2xUsQ==", + "dev": true, + "dependencies": { + "istanbul-lib-coverage": "^2.0.5", + "make-dir": "^2.1.0", + "supports-color": "^6.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/istanbul-lib-report/node_modules/supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/istanbul-lib-source-maps": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-3.0.6.tgz", + "integrity": "sha512-R47KzMtDJH6X4/YW9XTx+jrLnZnscW4VpNN+1PViSYTejLVPWv7oov+Duf8YQSPyVRUvueQqz1TcsC6mooZTXw==", + "dev": true, + "dependencies": { + "debug": "^4.1.1", + "istanbul-lib-coverage": "^2.0.5", + "make-dir": "^2.1.0", + "rimraf": "^2.6.3", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/istanbul-lib-source-maps/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/istanbul-reports": { + "version": "2.2.7", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-2.2.7.tgz", + "integrity": "sha512-uu1F/L1o5Y6LzPVSVZXNOoD/KXpJue9aeLRd0sM9uMXfZvzomB0WxVamWb5ue8kA2vVWEmW7EG+A5n3f1kqHKg==", + "dev": true, + "dependencies": { + "html-escaper": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/jest": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest/-/jest-24.9.0.tgz", + "integrity": "sha512-YvkBL1Zm7d2B1+h5fHEOdyjCG+sGMz4f8D86/0HiqJ6MB4MnDc8FgP5vdWsGnemOQro7lnYo8UakZ3+5A0jxGw==", + "dev": true, + "dependencies": { + "import-local": "^2.0.0", + "jest-cli": "^24.9.0" + }, + "bin": { + "jest": "bin/jest.js" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/jest-changed-files": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-24.9.0.tgz", + "integrity": "sha512-6aTWpe2mHF0DhL28WjdkO8LyGjs3zItPET4bMSeXU6T3ub4FPMw+mcOcbdGXQOAfmLcxofD23/5Bl9Z4AkFwqg==", + "dev": true, + "dependencies": { + "@jest/types": "^24.9.0", + "execa": "^1.0.0", + "throat": "^4.0.0" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/jest-circus": { + "version": "26.6.3", + "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-26.6.3.tgz", + "integrity": "sha512-ACrpWZGcQMpbv13XbzRzpytEJlilP/Su0JtNCi5r/xLpOUhnaIJr8leYYpLEMgPFURZISEHrnnpmB54Q/UziPw==", + "dev": true, + "dependencies": { + "@babel/traverse": "^7.1.0", + "@jest/environment": "^26.6.2", + "@jest/test-result": "^26.6.2", + "@jest/types": "^26.6.2", + "@types/babel__traverse": "^7.0.4", + "@types/node": "*", + "chalk": "^4.0.0", + "co": "^4.6.0", + "dedent": "^0.7.0", + "expect": "^26.6.2", + "is-generator-fn": "^2.0.0", + "jest-each": "^26.6.2", + "jest-matcher-utils": "^26.6.2", + "jest-message-util": "^26.6.2", + "jest-runner": "^26.6.3", + "jest-runtime": "^26.6.3", + "jest-snapshot": "^26.6.2", + "jest-util": "^26.6.2", + "pretty-format": "^26.6.2", + "stack-utils": "^2.0.2", + "throat": "^5.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-circus/node_modules/@babel/generator": { + "version": "7.12.5", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.12.5.tgz", + "integrity": "sha512-m16TQQJ8hPt7E+OS/XVQg/7U184MLXtvuGbCdA7na61vha+ImkyyNM/9DDA0unYCVZn3ZOhng+qz48/KBOT96A==", + "dev": true, + "dependencies": { + "@babel/types": "^7.12.5", + "jsesc": "^2.5.1", + "source-map": "^0.5.0" + } + }, + "node_modules/jest-circus/node_modules/@babel/generator/node_modules/source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/jest-circus/node_modules/@babel/helper-function-name": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.10.4.tgz", + "integrity": "sha512-YdaSyz1n8gY44EmN7x44zBn9zQ1Ry2Y+3GTA+3vH6Mizke1Vw0aWDM66FOYEPw8//qKkmqOckrGgTYa+6sceqQ==", + "dev": true, + "dependencies": { + "@babel/helper-get-function-arity": "^7.10.4", + "@babel/template": "^7.10.4", + "@babel/types": "^7.10.4" + } + }, + "node_modules/jest-circus/node_modules/@babel/helper-get-function-arity": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.10.4.tgz", + "integrity": "sha512-EkN3YDB+SRDgiIUnNgcmiD361ti+AVbL3f3Henf6dqqUyr5dMsorno0lJWJuLhDhkI5sYEpgj6y9kB8AOU1I2A==", + "dev": true, + "dependencies": { + "@babel/types": "^7.10.4" + } + }, + "node_modules/jest-circus/node_modules/@babel/helper-split-export-declaration": { + "version": "7.11.0", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.11.0.tgz", + "integrity": "sha512-74Vejvp6mHkGE+m+k5vHY93FX2cAtrw1zXrZXRlG4l410Nm9PxfEiVTn1PjDPV5SnmieiueY4AFg2xqhNFuuZg==", + "dev": true, + "dependencies": { + "@babel/types": "^7.11.0" + } + }, + "node_modules/jest-circus/node_modules/@babel/helpers": { + "version": "7.12.5", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.12.5.tgz", + "integrity": "sha512-lgKGMQlKqA8meJqKsW6rUnc4MdUk35Ln0ATDqdM1a/UpARODdI4j5Y5lVfUScnSNkJcdCRAaWkspykNoFg9sJA==", + "dev": true, + "dependencies": { + "@babel/template": "^7.10.4", + "@babel/traverse": "^7.12.5", + "@babel/types": "^7.12.5" + } + }, + "node_modules/jest-circus/node_modules/@babel/helpers/node_modules/@babel/code-frame": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.10.4.tgz", + "integrity": "sha512-vG6SvB6oYEhvgisZNFRmRCUkLz11c7rp+tbNTynGqc6mS1d5ATd/sGyV6W0KZZnXRKMTzZDRgQT3Ou9jhpAfUg==", + "dev": true, + "dependencies": { + "@babel/highlight": "^7.10.4" + } + }, + "node_modules/jest-circus/node_modules/@babel/helpers/node_modules/@babel/traverse": { + "version": "7.12.5", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.12.5.tgz", + "integrity": "sha512-xa15FbQnias7z9a62LwYAA5SZZPkHIXpd42C6uW68o8uTuua96FHZy1y61Va5P/i83FAAcMpW8+A/QayntzuqA==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.10.4", + "@babel/generator": "^7.12.5", + "@babel/helper-function-name": "^7.10.4", + "@babel/helper-split-export-declaration": "^7.11.0", + "@babel/parser": "^7.12.5", + "@babel/types": "^7.12.5", + "debug": "^4.1.0", + "globals": "^11.1.0", + "lodash": "^4.17.19" + } + }, + "node_modules/jest-circus/node_modules/@babel/highlight": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.10.4.tgz", + "integrity": "sha512-i6rgnR/YgPEQzZZnbTHHuZdlE8qyoBNalD6F+q4vAFlcMEcqmkoG+mPqJYJCo63qPf74+Y1UZsl3l6f7/RIkmA==", + "dev": true, + "dependencies": { + "@babel/helper-validator-identifier": "^7.10.4", + "chalk": "^2.0.0", + "js-tokens": "^4.0.0" + } + }, + "node_modules/jest-circus/node_modules/@babel/highlight/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/jest-circus/node_modules/@babel/highlight/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/jest-circus/node_modules/@babel/highlight/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/jest-circus/node_modules/@babel/highlight/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true + }, + "node_modules/jest-circus/node_modules/@babel/highlight/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/jest-circus/node_modules/@babel/highlight/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/jest-circus/node_modules/@babel/highlight/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/jest-circus/node_modules/@babel/parser": { + "version": "7.12.5", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.12.5.tgz", + "integrity": "sha512-FVM6RZQ0mn2KCf1VUED7KepYeUWoVShczewOCfm3nzoBybaih51h+sYVVGthW9M6lPByEPTQf+xm27PBdlpwmQ==", + "dev": true, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/jest-circus/node_modules/@babel/template": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.10.4.tgz", + "integrity": "sha512-ZCjD27cGJFUB6nmCB1Enki3r+L5kJveX9pq1SvAUKoICy6CZ9yD8xO086YXdYhvNjBdnekm4ZnaP5yC8Cs/1tA==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.10.4", + "@babel/parser": "^7.10.4", + "@babel/types": "^7.10.4" + } + }, + "node_modules/jest-circus/node_modules/@babel/template/node_modules/@babel/code-frame": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.10.4.tgz", + "integrity": "sha512-vG6SvB6oYEhvgisZNFRmRCUkLz11c7rp+tbNTynGqc6mS1d5ATd/sGyV6W0KZZnXRKMTzZDRgQT3Ou9jhpAfUg==", + "dev": true, + "dependencies": { + "@babel/highlight": "^7.10.4" + } + }, + "node_modules/jest-circus/node_modules/@babel/types": { + "version": "7.12.5", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.12.5.tgz", + "integrity": "sha512-gyTcvz7JFa4V45C0Zklv//GmFOAal5fL23OWpBLqc4nZ4Yrz67s4kCNwSK1Gu0MXGTU8mRY3zJYtacLdKXlzig==", + "dev": true, + "dependencies": { + "@babel/helper-validator-identifier": "^7.10.4", + "lodash": "^4.17.19", + "to-fast-properties": "^2.0.0" + } + }, + "node_modules/jest-circus/node_modules/@jest/console": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/console/-/console-26.6.2.tgz", + "integrity": "sha512-IY1R2i2aLsLr7Id3S6p2BA82GNWryt4oSvEXLAKc+L2zdi89dSkE8xC1C+0kpATG4JhBJREnQOH7/zmccM2B0g==", + "dev": true, + "dependencies": { + "@jest/types": "^26.6.2", + "@types/node": "*", + "chalk": "^4.0.0", + "jest-message-util": "^26.6.2", + "jest-util": "^26.6.2", + "slash": "^3.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-circus/node_modules/@jest/environment": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-26.6.2.tgz", + "integrity": "sha512-nFy+fHl28zUrRsCeMB61VDThV1pVTtlEokBRgqPrcT1JNq4yRNIyTHfyht6PqtUvY9IsuLGTrbG8kPXjSZIZwA==", + "dev": true, + "dependencies": { + "@jest/fake-timers": "^26.6.2", + "@jest/types": "^26.6.2", + "@types/node": "*", + "jest-mock": "^26.6.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-circus/node_modules/@jest/fake-timers": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-26.6.2.tgz", + "integrity": "sha512-14Uleatt7jdzefLPYM3KLcnUl1ZNikaKq34enpb5XG9i81JpppDb5muZvonvKyrl7ftEHkKS5L5/eB/kxJ+bvA==", + "dev": true, + "dependencies": { + "@jest/types": "^26.6.2", + "@sinonjs/fake-timers": "^6.0.1", + "@types/node": "*", + "jest-message-util": "^26.6.2", + "jest-mock": "^26.6.2", + "jest-util": "^26.6.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-circus/node_modules/@jest/source-map": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-26.6.2.tgz", + "integrity": "sha512-YwYcCwAnNmOVsZ8mr3GfnzdXDAl4LaenZP5z+G0c8bzC9/dugL8zRmxZzdoTl4IaS3CryS1uWnROLPFmb6lVvA==", + "dev": true, + "dependencies": { + "callsites": "^3.0.0", + "graceful-fs": "^4.2.4", + "source-map": "^0.6.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-circus/node_modules/@jest/test-result": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-26.6.2.tgz", + "integrity": "sha512-5O7H5c/7YlojphYNrK02LlDIV2GNPYisKwHm2QTKjNZeEzezCbwYs9swJySv2UfPMyZ0VdsmMv7jIlD/IKYQpQ==", + "dev": true, + "dependencies": { + "@jest/console": "^26.6.2", + "@jest/types": "^26.6.2", + "@types/istanbul-lib-coverage": "^2.0.0", + "collect-v8-coverage": "^1.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-circus/node_modules/@jest/test-sequencer": { + "version": "26.6.3", + "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-26.6.3.tgz", + "integrity": "sha512-YHlVIjP5nfEyjlrSr8t/YdNfU/1XEt7c5b4OxcXCjyRhjzLYu/rO69/WHPuYcbCWkz8kAeZVZp2N2+IOLLEPGw==", + "dev": true, + "dependencies": { + "@jest/test-result": "^26.6.2", + "graceful-fs": "^4.2.4", + "jest-haste-map": "^26.6.2", + "jest-runner": "^26.6.3", + "jest-runtime": "^26.6.3" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-circus/node_modules/@jest/transform": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-26.6.2.tgz", + "integrity": "sha512-E9JjhUgNzvuQ+vVAL21vlyfy12gP0GhazGgJC4h6qUt1jSdUXGWJ1wfu/X7Sd8etSgxV4ovT1pb9v5D6QW4XgA==", + "dev": true, + "dependencies": { + "@babel/core": "^7.1.0", + "@jest/types": "^26.6.2", + "babel-plugin-istanbul": "^6.0.0", + "chalk": "^4.0.0", + "convert-source-map": "^1.4.0", + "fast-json-stable-stringify": "^2.0.0", + "graceful-fs": "^4.2.4", + "jest-haste-map": "^26.6.2", + "jest-regex-util": "^26.0.0", + "jest-util": "^26.6.2", + "micromatch": "^4.0.2", + "pirates": "^4.0.1", + "slash": "^3.0.0", + "source-map": "^0.6.1", + "write-file-atomic": "^3.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-circus/node_modules/@jest/types": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz", + "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==", + "dev": true, + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-circus/node_modules/@types/babel__core": { + "version": "7.1.12", + "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.12.tgz", + "integrity": "sha512-wMTHiiTiBAAPebqaPiPDLFA4LYPKr6Ph0Xq/6rq1Ur3v66HXyG+clfR9CNETkD7MQS8ZHvpQOtA53DLws5WAEQ==", + "dev": true, + "dependencies": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0", + "@types/babel__generator": "*", + "@types/babel__template": "*", + "@types/babel__traverse": "*" + } + }, + "node_modules/jest-circus/node_modules/@types/istanbul-reports": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.0.tgz", + "integrity": "sha512-nwKNbvnwJ2/mndE9ItP/zc2TCzw6uuodnF4EHYWD+gCQDVBuRQL5UzbZD0/ezy1iKsFU2ZQiDqg4M9dN4+wZgA==", + "dev": true, + "dependencies": { + "@types/istanbul-lib-report": "*" + } + }, + "node_modules/jest-circus/node_modules/@types/stack-utils": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.0.tgz", + "integrity": "sha512-RJJrrySY7A8havqpGObOB4W92QXKJo63/jFLLgpvOtsGUqbQZ9Sbgl35KMm1DjC6j7AvmmU2bIno+3IyEaemaw==", + "dev": true + }, + "node_modules/jest-circus/node_modules/@types/yargs": { + "version": "15.0.9", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.9.tgz", + "integrity": "sha512-HmU8SeIRhZCWcnRskCs36Q1Q00KBV6Cqh/ora8WN1+22dY07AZdn6Gel8QZ3t26XYPImtcL8WV/eqjhVmMEw4g==", + "dev": true, + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/jest-circus/node_modules/acorn": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/jest-circus/node_modules/acorn-globals": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-6.0.0.tgz", + "integrity": "sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg==", + "dev": true, + "dependencies": { + "acorn": "^7.1.1", + "acorn-walk": "^7.1.1" + } + }, + "node_modules/jest-circus/node_modules/acorn-walk": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz", + "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==", + "dev": true, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/jest-circus/node_modules/ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-circus/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-circus/node_modules/anymatch": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", + "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", + "dev": true, + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/jest-circus/node_modules/babel-jest": { + "version": "26.6.3", + "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-26.6.3.tgz", + "integrity": "sha512-pl4Q+GAVOHwvjrck6jKjvmGhnO3jHX/xuB9d27f+EJZ/6k+6nMuPjorrYp7s++bKKdANwzElBWnLWaObvTnaZA==", + "dev": true, + "dependencies": { + "@jest/transform": "^26.6.2", + "@jest/types": "^26.6.2", + "@types/babel__core": "^7.1.7", + "babel-plugin-istanbul": "^6.0.0", + "babel-preset-jest": "^26.6.2", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "slash": "^3.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-circus/node_modules/babel-plugin-istanbul": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.0.0.tgz", + "integrity": "sha512-AF55rZXpe7trmEylbaE1Gv54wn6rwU03aptvRoVIGP8YykoSxqdVLV1TfwflBCE/QtHmqtP8SWlTENqbK8GCSQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.0.0", + "@istanbuljs/load-nyc-config": "^1.0.0", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-instrument": "^4.0.0", + "test-exclude": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-circus/node_modules/babel-plugin-jest-hoist": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-26.6.2.tgz", + "integrity": "sha512-PO9t0697lNTmcEHH69mdtYiOIkkOlj9fySqfO3K1eCcdISevLAE0xY59VLLUj0SoiPiTX/JU2CYFpILydUa5Lw==", + "dev": true, + "dependencies": { + "@babel/template": "^7.3.3", + "@babel/types": "^7.3.3", + "@types/babel__core": "^7.0.0", + "@types/babel__traverse": "^7.0.6" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-circus/node_modules/babel-preset-jest": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-26.6.2.tgz", + "integrity": "sha512-YvdtlVm9t3k777c5NPQIv6cxFFFapys25HiUmuSgHwIZhfifweR5c5Sf5nwE3MAbfu327CYSvps8Yx6ANLyleQ==", + "dev": true, + "dependencies": { + "babel-plugin-jest-hoist": "^26.6.2", + "babel-preset-current-node-syntax": "^1.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-circus/node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "dependencies": { + "fill-range": "^7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-circus/node_modules/browser-process-hrtime": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz", + "integrity": "sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==", + "dev": true + }, + "node_modules/jest-circus/node_modules/camelcase": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.2.0.tgz", + "integrity": "sha512-c7wVvbw3f37nuobQNtgsgG9POC9qMbNuMQmTCqZv23b6MIz0fcYpBiOlv9gEN/hdLdnZTDQhg6e9Dq5M1vKvfg==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/jest-circus/node_modules/chalk": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", + "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/jest-circus/node_modules/cliui": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", + "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", + "dev": true, + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^6.2.0" + } + }, + "node_modules/jest-circus/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-circus/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/jest-circus/node_modules/cssom": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.4.4.tgz", + "integrity": "sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw==", + "dev": true + }, + "node_modules/jest-circus/node_modules/cssstyle": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-2.3.0.tgz", + "integrity": "sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==", + "dev": true, + "dependencies": { + "cssom": "~0.3.6" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-circus/node_modules/cssstyle/node_modules/cssom": { + "version": "0.3.8", + "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.3.8.tgz", + "integrity": "sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==", + "dev": true + }, + "node_modules/jest-circus/node_modules/data-urls": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-2.0.0.tgz", + "integrity": "sha512-X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ==", + "dev": true, + "dependencies": { + "abab": "^2.0.3", + "whatwg-mimetype": "^2.3.0", + "whatwg-url": "^8.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/jest-circus/node_modules/detect-newline": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz", + "integrity": "sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-circus/node_modules/diff-sequences": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-26.6.2.tgz", + "integrity": "sha512-Mv/TDa3nZ9sbc5soK+OoA74BsS3mL37yixCvUAQkiuA4Wz6YtwP/K47n2rv2ovzHZvoiQeA5FTQOschKkEwB0Q==", + "dev": true, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-circus/node_modules/domexception": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/domexception/-/domexception-2.0.1.tgz", + "integrity": "sha512-yxJ2mFy/sibVQlu5qHjOkf9J3K6zgmCxgJ94u2EdvDOV09H+32LtRswEcUsmUWN72pVLOEnTSRaIVVzVQgS0dg==", + "dev": true, + "dependencies": { + "webidl-conversions": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-circus/node_modules/domexception/node_modules/webidl-conversions": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-5.0.0.tgz", + "integrity": "sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-circus/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "node_modules/jest-circus/node_modules/escape-string-regexp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", + "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-circus/node_modules/escodegen": { + "version": "1.14.3", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.14.3.tgz", + "integrity": "sha512-qFcX0XJkdg+PB3xjZZG/wKSuT1PnQWx57+TVSjIMmILd2yC/6ByYElPwJnslDsuWuSAp4AwJGumarAAmJch5Kw==", + "dev": true, + "dependencies": { + "esprima": "^4.0.1", + "estraverse": "^4.2.0", + "esutils": "^2.0.2", + "optionator": "^0.8.1", + "source-map": "~0.6.1" + }, + "bin": { + "escodegen": "bin/escodegen.js", + "esgenerate": "bin/esgenerate.js" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/jest-circus/node_modules/expect": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/expect/-/expect-26.6.2.tgz", + "integrity": "sha512-9/hlOBkQl2l/PLHJx6JjoDF6xPKcJEsUlWKb23rKE7KzeDqUZKXKNMW27KIue5JMdBV9HgmoJPcc8HtO85t9IA==", + "dev": true, + "dependencies": { + "@jest/types": "^26.6.2", + "ansi-styles": "^4.0.0", + "jest-get-type": "^26.3.0", + "jest-matcher-utils": "^26.6.2", + "jest-message-util": "^26.6.2", + "jest-regex-util": "^26.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-circus/node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-circus/node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-circus/node_modules/fsevents": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.2.0.tgz", + "integrity": "sha512-pKnaUh2TNvk+/egJdBw1h46LwyLx8BzEq+MGCf/RMCVfEHHsGOCWG00dqk91kUPPArIIwMBg9T/virxwzP03cA==", + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/jest-circus/node_modules/graceful-fs": { + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.4.tgz", + "integrity": "sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw==", + "dev": true + }, + "node_modules/jest-circus/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-circus/node_modules/html-encoding-sniffer": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz", + "integrity": "sha512-D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ==", + "dev": true, + "dependencies": { + "whatwg-encoding": "^1.0.5" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/jest-circus/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-circus/node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/jest-circus/node_modules/istanbul-lib-coverage": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.0.tgz", + "integrity": "sha512-UiUIqxMgRDET6eR+o5HbfRYP1l0hqkWOs7vNxC/mggutCMUIhWMm8gAHb8tHlyfD3/l6rlgNA5cKdDzEAf6hEg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-circus/node_modules/istanbul-lib-instrument": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.3.tgz", + "integrity": "sha512-BXgQl9kf4WTCPCCpmFGoJkz/+uhvm7h7PFKUYxh7qarQd3ER33vHG//qaE8eN25l07YqZPpHXU9I09l/RD5aGQ==", + "dev": true, + "dependencies": { + "@babel/core": "^7.7.5", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.0.0", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-circus/node_modules/istanbul-lib-instrument/node_modules/@babel/code-frame": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.10.4.tgz", + "integrity": "sha512-vG6SvB6oYEhvgisZNFRmRCUkLz11c7rp+tbNTynGqc6mS1d5ATd/sGyV6W0KZZnXRKMTzZDRgQT3Ou9jhpAfUg==", + "dev": true, + "dependencies": { + "@babel/highlight": "^7.10.4" + } + }, + "node_modules/jest-circus/node_modules/istanbul-lib-instrument/node_modules/@babel/core": { + "version": "7.12.3", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.12.3.tgz", + "integrity": "sha512-0qXcZYKZp3/6N2jKYVxZv0aNCsxTSVCiK72DTiTYZAu7sjg73W0/aynWjMbiGd87EQL4WyA8reiJVh92AVla9g==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.10.4", + "@babel/generator": "^7.12.1", + "@babel/helper-module-transforms": "^7.12.1", + "@babel/helpers": "^7.12.1", + "@babel/parser": "^7.12.3", + "@babel/template": "^7.10.4", + "@babel/traverse": "^7.12.1", + "@babel/types": "^7.12.1", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.1", + "json5": "^2.1.2", + "lodash": "^4.17.19", + "resolve": "^1.3.2", + "semver": "^5.4.1", + "source-map": "^0.5.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/jest-circus/node_modules/istanbul-lib-instrument/node_modules/@babel/core/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/jest-circus/node_modules/istanbul-lib-instrument/node_modules/@babel/traverse": { + "version": "7.12.5", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.12.5.tgz", + "integrity": "sha512-xa15FbQnias7z9a62LwYAA5SZZPkHIXpd42C6uW68o8uTuua96FHZy1y61Va5P/i83FAAcMpW8+A/QayntzuqA==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.10.4", + "@babel/generator": "^7.12.5", + "@babel/helper-function-name": "^7.10.4", + "@babel/helper-split-export-declaration": "^7.11.0", + "@babel/parser": "^7.12.5", + "@babel/types": "^7.12.5", + "debug": "^4.1.0", + "globals": "^11.1.0", + "lodash": "^4.17.19" + } + }, + "node_modules/jest-circus/node_modules/istanbul-lib-instrument/node_modules/source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/jest-circus/node_modules/jest-config": { + "version": "26.6.3", + "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-26.6.3.tgz", + "integrity": "sha512-t5qdIj/bCj2j7NFVHb2nFB4aUdfucDn3JRKgrZnplb8nieAirAzRSHP8uDEd+qV6ygzg9Pz4YG7UTJf94LPSyg==", + "dev": true, + "dependencies": { + "@babel/core": "^7.1.0", + "@jest/test-sequencer": "^26.6.3", + "@jest/types": "^26.6.2", + "babel-jest": "^26.6.3", + "chalk": "^4.0.0", + "deepmerge": "^4.2.2", + "glob": "^7.1.1", + "graceful-fs": "^4.2.4", + "jest-environment-jsdom": "^26.6.2", + "jest-environment-node": "^26.6.2", + "jest-get-type": "^26.3.0", + "jest-jasmine2": "^26.6.3", + "jest-regex-util": "^26.0.0", + "jest-resolve": "^26.6.2", + "jest-util": "^26.6.2", + "jest-validate": "^26.6.2", + "micromatch": "^4.0.2", + "pretty-format": "^26.6.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-circus/node_modules/jest-diff": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-26.6.2.tgz", + "integrity": "sha512-6m+9Z3Gv9wN0WFVasqjCL/06+EFCMTqDEUl/b87HYK2rAPTyfz4ZIuSlPhY51PIQRWx5TaxeF1qmXKe9gfN3sA==", + "dev": true, + "dependencies": { + "chalk": "^4.0.0", + "diff-sequences": "^26.6.2", + "jest-get-type": "^26.3.0", + "pretty-format": "^26.6.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-circus/node_modules/jest-docblock": { + "version": "26.0.0", + "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-26.0.0.tgz", + "integrity": "sha512-RDZ4Iz3QbtRWycd8bUEPxQsTlYazfYn/h5R65Fc6gOfwozFhoImx+affzky/FFBuqISPTqjXomoIGJVKBWoo0w==", + "dev": true, + "dependencies": { + "detect-newline": "^3.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-circus/node_modules/jest-each": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-26.6.2.tgz", + "integrity": "sha512-Mer/f0KaATbjl8MCJ+0GEpNdqmnVmDYqCTJYTvoo7rqmRiDllmp2AYN+06F93nXcY3ur9ShIjS+CO/uD+BbH4A==", + "dev": true, + "dependencies": { + "@jest/types": "^26.6.2", + "chalk": "^4.0.0", + "jest-get-type": "^26.3.0", + "jest-util": "^26.6.2", + "pretty-format": "^26.6.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-circus/node_modules/jest-environment-jsdom": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-26.6.2.tgz", + "integrity": "sha512-jgPqCruTlt3Kwqg5/WVFyHIOJHsiAvhcp2qiR2QQstuG9yWox5+iHpU3ZrcBxW14T4fe5Z68jAfLRh7joCSP2Q==", + "dev": true, + "dependencies": { + "@jest/environment": "^26.6.2", + "@jest/fake-timers": "^26.6.2", + "@jest/types": "^26.6.2", + "@types/node": "*", + "jest-mock": "^26.6.2", + "jest-util": "^26.6.2", + "jsdom": "^16.4.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-circus/node_modules/jest-environment-node": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-26.6.2.tgz", + "integrity": "sha512-zhtMio3Exty18dy8ee8eJ9kjnRyZC1N4C1Nt/VShN1apyXc8rWGtJ9lI7vqiWcyyXS4BVSEn9lxAM2D+07/Tag==", + "dev": true, + "dependencies": { + "@jest/environment": "^26.6.2", + "@jest/fake-timers": "^26.6.2", + "@jest/types": "^26.6.2", + "@types/node": "*", + "jest-mock": "^26.6.2", + "jest-util": "^26.6.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-circus/node_modules/jest-get-type": { + "version": "26.3.0", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-26.3.0.tgz", + "integrity": "sha512-TpfaviN1R2pQWkIihlfEanwOXK0zcxrKEE4MlU6Tn7keoXdN6/3gK/xl0yEh8DOunn5pOVGKf8hB4R9gVh04ig==", + "dev": true, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-circus/node_modules/jest-haste-map": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-26.6.2.tgz", + "integrity": "sha512-easWIJXIw71B2RdR8kgqpjQrbMRWQBgiBwXYEhtGUTaX+doCjBheluShdDMeR8IMfJiTqH4+zfhtg29apJf/8w==", + "dev": true, + "dependencies": { + "@jest/types": "^26.6.2", + "@types/graceful-fs": "^4.1.2", + "@types/node": "*", + "anymatch": "^3.0.3", + "fb-watchman": "^2.0.0", + "fsevents": "^2.1.2", + "graceful-fs": "^4.2.4", + "jest-regex-util": "^26.0.0", + "jest-serializer": "^26.6.2", + "jest-util": "^26.6.2", + "jest-worker": "^26.6.2", + "micromatch": "^4.0.2", + "sane": "^4.0.3", + "walker": "^1.0.7" + }, + "engines": { + "node": ">= 10.14.2" + }, + "optionalDependencies": { + "fsevents": "^2.1.2" + } + }, + "node_modules/jest-circus/node_modules/jest-jasmine2": { + "version": "26.6.3", + "resolved": "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-26.6.3.tgz", + "integrity": "sha512-kPKUrQtc8aYwBV7CqBg5pu+tmYXlvFlSFYn18ev4gPFtrRzB15N2gW/Roew3187q2w2eHuu0MU9TJz6w0/nPEg==", + "dev": true, + "dependencies": { + "@babel/traverse": "^7.1.0", + "@jest/environment": "^26.6.2", + "@jest/source-map": "^26.6.2", + "@jest/test-result": "^26.6.2", + "@jest/types": "^26.6.2", + "@types/node": "*", + "chalk": "^4.0.0", + "co": "^4.6.0", + "expect": "^26.6.2", + "is-generator-fn": "^2.0.0", + "jest-each": "^26.6.2", + "jest-matcher-utils": "^26.6.2", + "jest-message-util": "^26.6.2", + "jest-runtime": "^26.6.3", + "jest-snapshot": "^26.6.2", + "jest-util": "^26.6.2", + "pretty-format": "^26.6.2", + "throat": "^5.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-circus/node_modules/jest-leak-detector": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-26.6.2.tgz", + "integrity": "sha512-i4xlXpsVSMeKvg2cEKdfhh0H39qlJlP5Ex1yQxwF9ubahboQYMgTtz5oML35AVA3B4Eu+YsmwaiKVev9KCvLxg==", + "dev": true, + "dependencies": { + "jest-get-type": "^26.3.0", + "pretty-format": "^26.6.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-circus/node_modules/jest-matcher-utils": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-26.6.2.tgz", + "integrity": "sha512-llnc8vQgYcNqDrqRDXWwMr9i7rS5XFiCwvh6DTP7Jqa2mqpcCBBlpCbn+trkG0KNhPu/h8rzyBkriOtBstvWhw==", + "dev": true, + "dependencies": { + "chalk": "^4.0.0", + "jest-diff": "^26.6.2", + "jest-get-type": "^26.3.0", + "pretty-format": "^26.6.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-circus/node_modules/jest-message-util": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-26.6.2.tgz", + "integrity": "sha512-rGiLePzQ3AzwUshu2+Rn+UMFk0pHN58sOG+IaJbk5Jxuqo3NYO1U2/MIR4S1sKgsoYSXSzdtSa0TgrmtUwEbmA==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.0.0", + "@jest/types": "^26.6.2", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "micromatch": "^4.0.2", + "pretty-format": "^26.6.2", + "slash": "^3.0.0", + "stack-utils": "^2.0.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-circus/node_modules/jest-mock": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-26.6.2.tgz", + "integrity": "sha512-YyFjePHHp1LzpzYcmgqkJ0nm0gg/lJx2aZFzFy1S6eUqNjXsOqTK10zNRff2dNfssgokjkG65OlWNcIlgd3zew==", + "dev": true, + "dependencies": { + "@jest/types": "^26.6.2", + "@types/node": "*" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-circus/node_modules/jest-pnp-resolver": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.2.tgz", + "integrity": "sha512-olV41bKSMm8BdnuMsewT4jqlZ8+3TCARAXjZGT9jcoSnrfUnRCqnMoF9XEeoWjbzObpqF9dRhHQj0Xb9QdF6/w==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/jest-circus/node_modules/jest-regex-util": { + "version": "26.0.0", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-26.0.0.tgz", + "integrity": "sha512-Gv3ZIs/nA48/Zvjrl34bf+oD76JHiGDUxNOVgUjh3j890sblXryjY4rss71fPtD/njchl6PSE2hIhvyWa1eT0A==", + "dev": true, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-circus/node_modules/jest-resolve": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-26.6.2.tgz", + "integrity": "sha512-sOxsZOq25mT1wRsfHcbtkInS+Ek7Q8jCHUB0ZUTP0tc/c41QHriU/NunqMfCUWsL4H3MHpvQD4QR9kSYhS7UvQ==", + "dev": true, + "dependencies": { + "@jest/types": "^26.6.2", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "jest-pnp-resolver": "^1.2.2", + "jest-util": "^26.6.2", + "read-pkg-up": "^7.0.1", + "resolve": "^1.18.1", + "slash": "^3.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-circus/node_modules/jest-resolve/node_modules/resolve": { + "version": "1.18.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.18.1.tgz", + "integrity": "sha512-lDfCPaMKfOJXjy0dPayzPdF1phampNWr3qFCjAu+rw/qbQmr5jWH5xN2hwh9QKfw9E5v4hwV7A+jrCmL8yjjqA==", + "dev": true, + "dependencies": { + "is-core-module": "^2.0.0", + "path-parse": "^1.0.6" + } + }, + "node_modules/jest-circus/node_modules/jest-runner": { + "version": "26.6.3", + "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-26.6.3.tgz", + "integrity": "sha512-atgKpRHnaA2OvByG/HpGA4g6CSPS/1LK0jK3gATJAoptC1ojltpmVlYC3TYgdmGp+GLuhzpH30Gvs36szSL2JQ==", + "dev": true, + "dependencies": { + "@jest/console": "^26.6.2", + "@jest/environment": "^26.6.2", + "@jest/test-result": "^26.6.2", + "@jest/types": "^26.6.2", + "@types/node": "*", + "chalk": "^4.0.0", + "emittery": "^0.7.1", + "exit": "^0.1.2", + "graceful-fs": "^4.2.4", + "jest-config": "^26.6.3", + "jest-docblock": "^26.0.0", + "jest-haste-map": "^26.6.2", + "jest-leak-detector": "^26.6.2", + "jest-message-util": "^26.6.2", + "jest-resolve": "^26.6.2", + "jest-runtime": "^26.6.3", + "jest-util": "^26.6.2", + "jest-worker": "^26.6.2", + "source-map-support": "^0.5.6", + "throat": "^5.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-circus/node_modules/jest-runtime": { + "version": "26.6.3", + "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-26.6.3.tgz", + "integrity": "sha512-lrzyR3N8sacTAMeonbqpnSka1dHNux2uk0qqDXVkMv2c/A3wYnvQ4EXuI013Y6+gSKSCxdaczvf4HF0mVXHRdw==", + "dev": true, + "dependencies": { + "@jest/console": "^26.6.2", + "@jest/environment": "^26.6.2", + "@jest/fake-timers": "^26.6.2", + "@jest/globals": "^26.6.2", + "@jest/source-map": "^26.6.2", + "@jest/test-result": "^26.6.2", + "@jest/transform": "^26.6.2", + "@jest/types": "^26.6.2", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0", + "cjs-module-lexer": "^0.6.0", + "collect-v8-coverage": "^1.0.0", + "exit": "^0.1.2", + "glob": "^7.1.3", + "graceful-fs": "^4.2.4", + "jest-config": "^26.6.3", + "jest-haste-map": "^26.6.2", + "jest-message-util": "^26.6.2", + "jest-mock": "^26.6.2", + "jest-regex-util": "^26.0.0", + "jest-resolve": "^26.6.2", + "jest-snapshot": "^26.6.2", + "jest-util": "^26.6.2", + "jest-validate": "^26.6.2", + "slash": "^3.0.0", + "strip-bom": "^4.0.0", + "yargs": "^15.4.1" + }, + "bin": { + "jest-runtime": "bin/jest-runtime.js" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-circus/node_modules/jest-serializer": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-26.6.2.tgz", + "integrity": "sha512-S5wqyz0DXnNJPd/xfIzZ5Xnp1HrJWBczg8mMfMpN78OJ5eDxXyf+Ygld9wX1DnUWbIbhM1YDY95NjR4CBXkb2g==", + "dev": true, + "dependencies": { + "@types/node": "*", + "graceful-fs": "^4.2.4" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-circus/node_modules/jest-snapshot": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-26.6.2.tgz", + "integrity": "sha512-OLhxz05EzUtsAmOMzuupt1lHYXCNib0ECyuZ/PZOx9TrZcC8vL0x+DUG3TL+GLX3yHG45e6YGjIm0XwDc3q3og==", + "dev": true, + "dependencies": { + "@babel/types": "^7.0.0", + "@jest/types": "^26.6.2", + "@types/babel__traverse": "^7.0.4", + "@types/prettier": "^2.0.0", + "chalk": "^4.0.0", + "expect": "^26.6.2", + "graceful-fs": "^4.2.4", + "jest-diff": "^26.6.2", + "jest-get-type": "^26.3.0", + "jest-haste-map": "^26.6.2", + "jest-matcher-utils": "^26.6.2", + "jest-message-util": "^26.6.2", + "jest-resolve": "^26.6.2", + "natural-compare": "^1.4.0", + "pretty-format": "^26.6.2", + "semver": "^7.3.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-circus/node_modules/jest-snapshot/node_modules/semver": { + "version": "7.3.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.2.tgz", + "integrity": "sha512-OrOb32TeeambH6UrhtShmF7CRDqhL6/5XpPNp2DuRH6+9QLw/orhp72j87v8Qa1ScDkvrrBNpZcDejAirJmfXQ==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/jest-circus/node_modules/jest-util": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-26.6.2.tgz", + "integrity": "sha512-MDW0fKfsn0OI7MS7Euz6h8HNDXVQ0gaM9uW6RjfDmd1DAFcaxX9OqIakHIqhbnmF08Cf2DLDG+ulq8YQQ0Lp0Q==", + "dev": true, + "dependencies": { + "@jest/types": "^26.6.2", + "@types/node": "*", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "is-ci": "^2.0.0", + "micromatch": "^4.0.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-circus/node_modules/jest-validate": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-26.6.2.tgz", + "integrity": "sha512-NEYZ9Aeyj0i5rQqbq+tpIOom0YS1u2MVu6+euBsvpgIme+FOfRmoC4R5p0JiAUpaFvFy24xgrpMknarR/93XjQ==", + "dev": true, + "dependencies": { + "@jest/types": "^26.6.2", + "camelcase": "^6.0.0", + "chalk": "^4.0.0", + "jest-get-type": "^26.3.0", + "leven": "^3.1.0", + "pretty-format": "^26.6.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-circus/node_modules/jest-worker": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-26.6.2.tgz", + "integrity": "sha512-KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ==", + "dev": true, + "dependencies": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^7.0.0" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/jest-circus/node_modules/jsdom": { + "version": "16.4.0", + "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-16.4.0.tgz", + "integrity": "sha512-lYMm3wYdgPhrl7pDcRmvzPhhrGVBeVhPIqeHjzeiHN3DFmD1RBpbExbi8vU7BJdH8VAZYovR8DMt0PNNDM7k8w==", + "dev": true, + "dependencies": { + "abab": "^2.0.3", + "acorn": "^7.1.1", + "acorn-globals": "^6.0.0", + "cssom": "^0.4.4", + "cssstyle": "^2.2.0", + "data-urls": "^2.0.0", + "decimal.js": "^10.2.0", + "domexception": "^2.0.1", + "escodegen": "^1.14.1", + "html-encoding-sniffer": "^2.0.1", + "is-potential-custom-element-name": "^1.0.0", + "nwsapi": "^2.2.0", + "parse5": "5.1.1", + "request": "^2.88.2", + "request-promise-native": "^1.0.8", + "saxes": "^5.0.0", + "symbol-tree": "^3.2.4", + "tough-cookie": "^3.0.1", + "w3c-hr-time": "^1.0.2", + "w3c-xmlserializer": "^2.0.0", + "webidl-conversions": "^6.1.0", + "whatwg-encoding": "^1.0.5", + "whatwg-mimetype": "^2.3.0", + "whatwg-url": "^8.0.0", + "ws": "^7.2.3", + "xml-name-validator": "^3.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/jest-circus/node_modules/json5": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.1.3.tgz", + "integrity": "sha512-KXPvOm8K9IJKFM0bmdn8QXh7udDh1g/giieX0NLCaMnb4hEiVFqnop2ImTXCc5e0/oHz3LTqmHGtExn5hfMkOA==", + "dev": true, + "dependencies": { + "minimist": "^1.2.5" + }, + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/jest-circus/node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-circus/node_modules/micromatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", + "dev": true, + "dependencies": { + "braces": "^3.0.1", + "picomatch": "^2.0.5" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-circus/node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/jest-circus/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/jest-circus/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-circus/node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/jest-circus/node_modules/parse-json": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.1.0.tgz", + "integrity": "sha512-+mi/lmVVNKFNVyLXV31ERiy2CY5E1/F6QtJFEzoChPRwwngMNXRDQ9GJ5WdE2Z2P4AujsOi0/+2qHID68KwfIQ==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-circus/node_modules/parse5": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-5.1.1.tgz", + "integrity": "sha512-ugq4DFI0Ptb+WWjAdOK16+u/nHfiIrcE+sh8kZMaM0WllQKLI9rOUq6c2b7cwPkXdzfQESqvoqK6ug7U/Yyzug==", + "dev": true + }, + "node_modules/jest-circus/node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-circus/node_modules/pretty-format": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-26.6.2.tgz", + "integrity": "sha512-7AeGuCYNGmycyQbCqd/3PWH4eOoX/OiCa0uphp57NVTeAGdJGaAliecxwBDHYQCIvrW7aDBZCYeNTP/WX69mkg==", + "dev": true, + "dependencies": { + "@jest/types": "^26.6.2", + "ansi-regex": "^5.0.0", + "ansi-styles": "^4.0.0", + "react-is": "^17.0.1" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/jest-circus/node_modules/react-is": { + "version": "17.0.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.1.tgz", + "integrity": "sha512-NAnt2iGDXohE5LI7uBnLnqvLQMtzhkiAOLXTmv+qnF9Ky7xAPcX8Up/xWIhxvLVGJvuLiNc4xQLtuqDRzb4fSA==", + "dev": true + }, + "node_modules/jest-circus/node_modules/read-pkg": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", + "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", + "dev": true, + "dependencies": { + "@types/normalize-package-data": "^2.4.0", + "normalize-package-data": "^2.5.0", + "parse-json": "^5.0.0", + "type-fest": "^0.6.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-circus/node_modules/read-pkg-up": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz", + "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==", + "dev": true, + "dependencies": { + "find-up": "^4.1.0", + "read-pkg": "^5.2.0", + "type-fest": "^0.8.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-circus/node_modules/read-pkg/node_modules/type-fest": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", + "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-circus/node_modules/request": { + "version": "2.88.2", + "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", + "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", + "dev": true, + "dependencies": { + "aws-sign2": "~0.7.0", + "aws4": "^1.8.0", + "caseless": "~0.12.0", + "combined-stream": "~1.0.6", + "extend": "~3.0.2", + "forever-agent": "~0.6.1", + "form-data": "~2.3.2", + "har-validator": "~5.1.3", + "http-signature": "~1.2.0", + "is-typedarray": "~1.0.0", + "isstream": "~0.1.2", + "json-stringify-safe": "~5.0.1", + "mime-types": "~2.1.19", + "oauth-sign": "~0.9.0", + "performance-now": "^2.1.0", + "qs": "~6.5.2", + "safe-buffer": "^5.1.2", + "tough-cookie": "~2.5.0", + "tunnel-agent": "^0.6.0", + "uuid": "^3.3.2" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/jest-circus/node_modules/request/node_modules/tough-cookie": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", + "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", + "dev": true, + "dependencies": { + "psl": "^1.1.28", + "punycode": "^2.1.1" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/jest-circus/node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-circus/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/jest-circus/node_modules/stack-utils": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.2.tgz", + "integrity": "sha512-0H7QK2ECz3fyZMzQ8rH0j2ykpfbnd20BFtfg/SqVC2+sCTtcw0aDTGB7dk+de4U4uUeuz6nOtJcrkFFLG1B0Rg==", + "dev": true, + "dependencies": { + "escape-string-regexp": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/jest-circus/node_modules/string-width": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", + "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-circus/node_modules/strip-ansi": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-circus/node_modules/strip-bom": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", + "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-circus/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-circus/node_modules/test-exclude": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", + "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", + "dev": true, + "dependencies": { + "@istanbuljs/schema": "^0.1.2", + "glob": "^7.1.4", + "minimatch": "^3.0.4" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-circus/node_modules/throat": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/throat/-/throat-5.0.0.tgz", + "integrity": "sha512-fcwX4mndzpLQKBS1DVYhGAcYaYt7vsHNIvQV+WXMvnow5cgjPphq5CaayLaGsjRdSCKZFNGt7/GYAuXaNOiYCA==", + "dev": true + }, + "node_modules/jest-circus/node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/jest-circus/node_modules/tough-cookie": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-3.0.1.tgz", + "integrity": "sha512-yQyJ0u4pZsv9D4clxO69OEjLWYw+jbgspjTue4lTQZLfV0c5l1VmK2y1JK8E9ahdpltPOaAThPcp5nKPUgSnsg==", + "dev": true, + "dependencies": { + "ip-regex": "^2.1.0", + "psl": "^1.1.28", + "punycode": "^2.1.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/jest-circus/node_modules/tr46": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-2.0.2.tgz", + "integrity": "sha512-3n1qG+/5kg+jrbTzwAykB5yRYtQCTqOGKq5U5PE3b0a1/mzo6snDhjGS0zJVJunO0NrT3Dg1MLy5TjWP/UJppg==", + "dev": true, + "dependencies": { + "punycode": "^2.1.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-circus/node_modules/w3c-hr-time": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz", + "integrity": "sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ==", + "dev": true, + "dependencies": { + "browser-process-hrtime": "^1.0.0" + } + }, + "node_modules/jest-circus/node_modules/webidl-conversions": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-6.1.0.tgz", + "integrity": "sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w==", + "dev": true, + "engines": { + "node": ">=10.4" + } + }, + "node_modules/jest-circus/node_modules/whatwg-url": { + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-8.4.0.tgz", + "integrity": "sha512-vwTUFf6V4zhcPkWp/4CQPr1TW9Ml6SF4lVyaIMBdJw5i6qUUJ1QWM4Z6YYVkfka0OUIzVo/0aNtGVGk256IKWw==", + "dev": true, + "dependencies": { + "lodash.sortby": "^4.7.0", + "tr46": "^2.0.2", + "webidl-conversions": "^6.1.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/jest-circus/node_modules/wrap-ansi": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", + "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-circus/node_modules/write-file-atomic": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz", + "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==", + "dev": true, + "dependencies": { + "imurmurhash": "^0.1.4", + "is-typedarray": "^1.0.0", + "signal-exit": "^3.0.2", + "typedarray-to-buffer": "^3.1.5" + } + }, + "node_modules/jest-circus/node_modules/ws": { + "version": "7.3.1", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.3.1.tgz", + "integrity": "sha512-D3RuNkynyHmEJIpD2qrgVkc9DQ23OrN/moAwZX4L8DfvszsJxpjQuUq3LMx6HoYji9fbIOBY18XWBsAux1ZZUA==", + "dev": true, + "engines": { + "node": ">=8.3.0" + } + }, + "node_modules/jest-circus/node_modules/yargs": { + "version": "15.4.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz", + "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==", + "dev": true, + "dependencies": { + "cliui": "^6.0.0", + "decamelize": "^1.2.0", + "find-up": "^4.1.0", + "get-caller-file": "^2.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^2.0.0", + "set-blocking": "^2.0.0", + "string-width": "^4.2.0", + "which-module": "^2.0.0", + "y18n": "^4.0.0", + "yargs-parser": "^18.1.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-circus/node_modules/yargs-parser": { + "version": "18.1.3", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", + "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", + "dev": true, + "dependencies": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/jest-circus/node_modules/yargs-parser/node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/jest-config": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-24.9.0.tgz", + "integrity": "sha512-RATtQJtVYQrp7fvWg6f5y3pEFj9I+H8sWw4aKxnDZ96mob5i5SD6ZEGWgMLXQ4LE8UurrjbdlLWdUeo+28QpfQ==", + "dev": true, + "dependencies": { + "@babel/core": "^7.1.0", + "@jest/test-sequencer": "^24.9.0", + "@jest/types": "^24.9.0", + "babel-jest": "^24.9.0", + "chalk": "^2.0.1", + "glob": "^7.1.1", + "jest-environment-jsdom": "^24.9.0", + "jest-environment-node": "^24.9.0", + "jest-get-type": "^24.9.0", + "jest-jasmine2": "^24.9.0", + "jest-regex-util": "^24.3.0", + "jest-resolve": "^24.9.0", + "jest-util": "^24.9.0", + "jest-validate": "^24.9.0", + "micromatch": "^3.1.10", + "pretty-format": "^24.9.0", + "realpath-native": "^1.1.0" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/jest-diff": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-24.9.0.tgz", + "integrity": "sha512-qMfrTs8AdJE2iqrTp0hzh7kTd2PQWrsFyj9tORoKmu32xjPjeE4NyjVRDz8ybYwqS2ik8N4hsIpiVTyFeo2lBQ==", + "dev": true, + "dependencies": { + "chalk": "^2.0.1", + "diff-sequences": "^24.9.0", + "jest-get-type": "^24.9.0", + "pretty-format": "^24.9.0" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/jest-docblock": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-24.9.0.tgz", + "integrity": "sha512-F1DjdpDMJMA1cN6He0FNYNZlo3yYmOtRUnktrT9Q37njYzC5WEaDdmbynIgy0L/IvXvvgsG8OsqhLPXTpfmZAA==", + "dev": true, + "dependencies": { + "detect-newline": "^2.1.0" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/jest-each": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-24.9.0.tgz", + "integrity": "sha512-ONi0R4BvW45cw8s2Lrx8YgbeXL1oCQ/wIDwmsM3CqM/nlblNCPmnC3IPQlMbRFZu3wKdQ2U8BqM6lh3LJ5Bsog==", + "dev": true, + "dependencies": { + "@jest/types": "^24.9.0", + "chalk": "^2.0.1", + "jest-get-type": "^24.9.0", + "jest-util": "^24.9.0", + "pretty-format": "^24.9.0" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/jest-environment-jsdom": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-24.9.0.tgz", + "integrity": "sha512-Zv9FV9NBRzLuALXjvRijO2351DRQeLYXtpD4xNvfoVFw21IOKNhZAEUKcbiEtjTkm2GsJ3boMVgkaR7rN8qetA==", + "dev": true, + "dependencies": { + "@jest/environment": "^24.9.0", + "@jest/fake-timers": "^24.9.0", + "@jest/types": "^24.9.0", + "jest-mock": "^24.9.0", + "jest-util": "^24.9.0", + "jsdom": "^11.5.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/jest-environment-node": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-24.9.0.tgz", + "integrity": "sha512-6d4V2f4nxzIzwendo27Tr0aFm+IXWa0XEUnaH6nU0FMaozxovt+sfRvh4J47wL1OvF83I3SSTu0XK+i4Bqe7uA==", + "dev": true, + "dependencies": { + "@jest/environment": "^24.9.0", + "@jest/fake-timers": "^24.9.0", + "@jest/types": "^24.9.0", + "jest-mock": "^24.9.0", + "jest-util": "^24.9.0" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/jest-get-type": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-24.9.0.tgz", + "integrity": "sha512-lUseMzAley4LhIcpSP9Jf+fTrQ4a1yHQwLNeeVa2cEmbCGeoZAtYPOIv8JaxLD/sUpKxetKGP+gsHl8f8TSj8Q==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/jest-haste-map": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-24.9.0.tgz", + "integrity": "sha512-kfVFmsuWui2Sj1Rp1AJ4D9HqJwE4uwTlS/vO+eRUaMmd54BFpli2XhMQnPC2k4cHFVbB2Q2C+jtI1AGLgEnCjQ==", + "dev": true, + "dependencies": { + "@jest/types": "^24.9.0", + "anymatch": "^2.0.0", + "fb-watchman": "^2.0.0", + "fsevents": "^1.2.7", + "graceful-fs": "^4.1.15", + "invariant": "^2.2.4", + "jest-serializer": "^24.9.0", + "jest-util": "^24.9.0", + "jest-worker": "^24.9.0", + "micromatch": "^3.1.10", + "sane": "^4.0.3", + "walker": "^1.0.7" + }, + "engines": { + "node": ">= 6" + }, + "optionalDependencies": { + "fsevents": "^1.2.7" + } + }, + "node_modules/jest-jasmine2": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-24.9.0.tgz", + "integrity": "sha512-Cq7vkAgaYKp+PsX+2/JbTarrk0DmNhsEtqBXNwUHkdlbrTBLtMJINADf2mf5FkowNsq8evbPc07/qFO0AdKTzw==", + "dev": true, + "dependencies": { + "@babel/traverse": "^7.1.0", + "@jest/environment": "^24.9.0", + "@jest/test-result": "^24.9.0", + "@jest/types": "^24.9.0", + "chalk": "^2.0.1", + "co": "^4.6.0", + "expect": "^24.9.0", + "is-generator-fn": "^2.0.0", + "jest-each": "^24.9.0", + "jest-matcher-utils": "^24.9.0", + "jest-message-util": "^24.9.0", + "jest-runtime": "^24.9.0", + "jest-snapshot": "^24.9.0", + "jest-util": "^24.9.0", + "pretty-format": "^24.9.0", + "throat": "^4.0.0" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/jest-leak-detector": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-24.9.0.tgz", + "integrity": "sha512-tYkFIDsiKTGwb2FG1w8hX9V0aUb2ot8zY/2nFg087dUageonw1zrLMP4W6zsRO59dPkTSKie+D4rhMuP9nRmrA==", + "dev": true, + "dependencies": { + "jest-get-type": "^24.9.0", + "pretty-format": "^24.9.0" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/jest-matcher-utils": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-24.9.0.tgz", + "integrity": "sha512-OZz2IXsu6eaiMAwe67c1T+5tUAtQyQx27/EMEkbFAGiw52tB9em+uGbzpcgYVpA8wl0hlxKPZxrly4CXU/GjHA==", + "dev": true, + "dependencies": { + "chalk": "^2.0.1", + "jest-diff": "^24.9.0", + "jest-get-type": "^24.9.0", + "pretty-format": "^24.9.0" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/jest-message-util": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-24.9.0.tgz", + "integrity": "sha512-oCj8FiZ3U0hTP4aSui87P4L4jC37BtQwUMqk+zk/b11FR19BJDeZsZAvIHutWnmtw7r85UmR3CEWZ0HWU2mAlw==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.0.0", + "@jest/test-result": "^24.9.0", + "@jest/types": "^24.9.0", + "@types/stack-utils": "^1.0.1", + "chalk": "^2.0.1", + "micromatch": "^3.1.10", + "slash": "^2.0.0", + "stack-utils": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/jest-mock": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-24.9.0.tgz", + "integrity": "sha512-3BEYN5WbSq9wd+SyLDES7AHnjH9A/ROBwmz7l2y+ol+NtSFO8DYiEBzoO1CeFc9a8DYy10EO4dDFVv/wN3zl1w==", + "dev": true, + "dependencies": { + "@jest/types": "^24.9.0" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/jest-pnp-resolver": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.1.tgz", + "integrity": "sha512-pgFw2tm54fzgYvc/OHrnysABEObZCUNFnhjoRjaVOCN8NYc032/gVjPaHD4Aq6ApkSieWtfKAFQtmDKAmhupnQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/jest-regex-util": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-24.9.0.tgz", + "integrity": "sha512-05Cmb6CuxaA+Ys6fjr3PhvV3bGQmO+2p2La4hFbU+W5uOc479f7FdLXUWXw4pYMAhhSZIuKHwSXSu6CsSBAXQA==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/jest-resolve": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-24.9.0.tgz", + "integrity": "sha512-TaLeLVL1l08YFZAt3zaPtjiVvyy4oSA6CRe+0AFPPVX3Q/VI0giIWWoAvoS5L96vj9Dqxj4fB5p2qrHCmTU/MQ==", + "dev": true, + "dependencies": { + "@jest/types": "^24.9.0", + "browser-resolve": "^1.11.3", + "chalk": "^2.0.1", + "jest-pnp-resolver": "^1.2.1", + "realpath-native": "^1.1.0" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/jest-resolve-dependencies": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-24.9.0.tgz", + "integrity": "sha512-Fm7b6AlWnYhT0BXy4hXpactHIqER7erNgIsIozDXWl5dVm+k8XdGVe1oTg1JyaFnOxarMEbax3wyRJqGP2Pq+g==", + "dev": true, + "dependencies": { + "@jest/types": "^24.9.0", + "jest-regex-util": "^24.3.0", + "jest-snapshot": "^24.9.0" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/jest-runner": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-24.9.0.tgz", + "integrity": "sha512-KksJQyI3/0mhcfspnxxEOBueGrd5E4vV7ADQLT9ESaCzz02WnbdbKWIf5Mkaucoaj7obQckYPVX6JJhgUcoWWg==", + "dev": true, + "dependencies": { + "@jest/console": "^24.7.1", + "@jest/environment": "^24.9.0", + "@jest/test-result": "^24.9.0", + "@jest/types": "^24.9.0", + "chalk": "^2.4.2", + "exit": "^0.1.2", + "graceful-fs": "^4.1.15", + "jest-config": "^24.9.0", + "jest-docblock": "^24.3.0", + "jest-haste-map": "^24.9.0", + "jest-jasmine2": "^24.9.0", + "jest-leak-detector": "^24.9.0", + "jest-message-util": "^24.9.0", + "jest-resolve": "^24.9.0", + "jest-runtime": "^24.9.0", + "jest-util": "^24.9.0", + "jest-worker": "^24.6.0", + "source-map-support": "^0.5.6", + "throat": "^4.0.0" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/jest-runtime": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-24.9.0.tgz", + "integrity": "sha512-8oNqgnmF3v2J6PVRM2Jfuj8oX3syKmaynlDMMKQ4iyzbQzIG6th5ub/lM2bCMTmoTKM3ykcUYI2Pw9xwNtjMnw==", + "dev": true, + "dependencies": { + "@jest/console": "^24.7.1", + "@jest/environment": "^24.9.0", + "@jest/source-map": "^24.3.0", + "@jest/transform": "^24.9.0", + "@jest/types": "^24.9.0", + "@types/yargs": "^13.0.0", + "chalk": "^2.0.1", + "exit": "^0.1.2", + "glob": "^7.1.3", + "graceful-fs": "^4.1.15", + "jest-config": "^24.9.0", + "jest-haste-map": "^24.9.0", + "jest-message-util": "^24.9.0", + "jest-mock": "^24.9.0", + "jest-regex-util": "^24.3.0", + "jest-resolve": "^24.9.0", + "jest-snapshot": "^24.9.0", + "jest-util": "^24.9.0", + "jest-validate": "^24.9.0", + "realpath-native": "^1.1.0", + "slash": "^2.0.0", + "strip-bom": "^3.0.0", + "yargs": "^13.3.0" + }, + "bin": { + "jest-runtime": "bin/jest-runtime.js" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/jest-serializer": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-24.9.0.tgz", + "integrity": "sha512-DxYipDr8OvfrKH3Kel6NdED3OXxjvxXZ1uIY2I9OFbGg+vUkkg7AGvi65qbhbWNPvDckXmzMPbK3u3HaDO49bQ==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/jest-snapshot": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-24.9.0.tgz", + "integrity": "sha512-uI/rszGSs73xCM0l+up7O7a40o90cnrk429LOiK3aeTvfC0HHmldbd81/B7Ix81KSFe1lwkbl7GnBGG4UfuDew==", + "dev": true, + "dependencies": { + "@babel/types": "^7.0.0", + "@jest/types": "^24.9.0", + "chalk": "^2.0.1", + "expect": "^24.9.0", + "jest-diff": "^24.9.0", + "jest-get-type": "^24.9.0", + "jest-matcher-utils": "^24.9.0", + "jest-message-util": "^24.9.0", + "jest-resolve": "^24.9.0", + "mkdirp": "^0.5.1", + "natural-compare": "^1.4.0", + "pretty-format": "^24.9.0", + "semver": "^6.2.0" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/jest-util": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-24.9.0.tgz", + "integrity": "sha512-x+cZU8VRmOJxbA1K5oDBdxQmdq0OIdADarLxk0Mq+3XS4jgvhG/oKGWcIDCtPG0HgjxOYvF+ilPJQsAyXfbNOg==", + "dev": true, + "dependencies": { + "@jest/console": "^24.9.0", + "@jest/fake-timers": "^24.9.0", + "@jest/source-map": "^24.9.0", + "@jest/test-result": "^24.9.0", + "@jest/types": "^24.9.0", + "callsites": "^3.0.0", + "chalk": "^2.0.1", + "graceful-fs": "^4.1.15", + "is-ci": "^2.0.0", + "mkdirp": "^0.5.1", + "slash": "^2.0.0", + "source-map": "^0.6.0" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/jest-util/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/jest-validate": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-24.9.0.tgz", + "integrity": "sha512-HPIt6C5ACwiqSiwi+OfSSHbK8sG7akG8eATl+IPKaeIjtPOeBUd/g3J7DghugzxrGjI93qS/+RPKe1H6PqvhRQ==", + "dev": true, + "dependencies": { + "@jest/types": "^24.9.0", + "camelcase": "^5.3.1", + "chalk": "^2.0.1", + "jest-get-type": "^24.9.0", + "leven": "^3.1.0", + "pretty-format": "^24.9.0" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/jest-watcher": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-24.9.0.tgz", + "integrity": "sha512-+/fLOfKPXXYJDYlks62/4R4GoT+GU1tYZed99JSCOsmzkkF7727RqKrjNAxtfO4YpGv11wybgRvCjR73lK2GZw==", + "dev": true, + "dependencies": { + "@jest/test-result": "^24.9.0", + "@jest/types": "^24.9.0", + "@types/yargs": "^13.0.0", + "ansi-escapes": "^3.0.0", + "chalk": "^2.0.1", + "jest-util": "^24.9.0", + "string-length": "^2.0.0" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/jest-worker": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-24.9.0.tgz", + "integrity": "sha512-51PE4haMSXcHohnSMdM42anbvZANYTqMrr52tVKPqqsPJMzoP6FYYDVqahX/HrAoKEKz3uUPzSvKs9A3qR4iVw==", + "dev": true, + "dependencies": { + "merge-stream": "^2.0.0", + "supports-color": "^6.1.0" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/jest-worker/node_modules/supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/jest/node_modules/jest-cli": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-24.9.0.tgz", + "integrity": "sha512-+VLRKyitT3BWoMeSUIHRxV/2g8y9gw91Jh5z2UmXZzkZKpbC08CSehVxgHUwTpy+HwGcns/tqafQDJW7imYvGg==", + "dev": true, + "dependencies": { + "@jest/core": "^24.9.0", + "@jest/test-result": "^24.9.0", + "@jest/types": "^24.9.0", + "chalk": "^2.0.1", + "exit": "^0.1.2", + "import-local": "^2.0.0", + "is-ci": "^2.0.0", + "jest-config": "^24.9.0", + "jest-util": "^24.9.0", + "jest-validate": "^24.9.0", + "prompts": "^2.0.1", + "realpath-native": "^1.1.0", + "yargs": "^13.3.0" + }, + "bin": { + "jest": "bin/jest.js" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true + }, + "node_modules/js-yaml": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.0.0.tgz", + "integrity": "sha512-pqon0s+4ScYUvX30wxQi3PogGFAlUyH0awepWvwkj4jD4v+ova3RiYw8bmA6x2rDrEaj8i/oWKoRxpVNW+Re8Q==", + "dev": true, + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", + "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", + "dev": true + }, + "node_modules/jsdom": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-11.12.0.tgz", + "integrity": "sha512-y8Px43oyiBM13Zc1z780FrfNLJCXTL40EWlty/LXUtcjykRBNgLlCjWXpfSPBl2iv+N7koQN+dvqszHZgT/Fjw==", + "dev": true, + "dependencies": { + "abab": "^2.0.0", + "acorn": "^5.5.3", + "acorn-globals": "^4.1.0", + "array-equal": "^1.0.0", + "cssom": ">= 0.3.2 < 0.4.0", + "cssstyle": "^1.0.0", + "data-urls": "^1.0.0", + "domexception": "^1.0.1", + "escodegen": "^1.9.1", + "html-encoding-sniffer": "^1.0.2", + "left-pad": "^1.3.0", + "nwsapi": "^2.0.7", + "parse5": "4.0.0", + "pn": "^1.1.0", + "request": "^2.87.0", + "request-promise-native": "^1.0.5", + "sax": "^1.2.4", + "symbol-tree": "^3.2.2", + "tough-cookie": "^2.3.4", + "w3c-hr-time": "^1.0.1", + "webidl-conversions": "^4.0.2", + "whatwg-encoding": "^1.0.3", + "whatwg-mimetype": "^2.1.0", + "whatwg-url": "^6.4.1", + "ws": "^5.2.0", + "xml-name-validator": "^3.0.0" + } + }, + "node_modules/jsdom/node_modules/acorn": { + "version": "5.7.4", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.7.4.tgz", + "integrity": "sha512-1D++VG7BhrtvQpNbBzovKNc1FLGGEE/oGe7b9xJm/RFHMBeUaUGpluV9RLjZa47YFdPcDAenEYuq9pQPcMdLJg==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "dev": true, + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/json-parse-better-errors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", + "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", + "dev": true + }, + "node_modules/json-parse-even-better-errors": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.0.tgz", + "integrity": "sha512-o3aP+RsWDJZayj1SbHNQAI8x0v3T3SKiGoZlNYfbUP1S3omJQ6i9CnqADqkSPaOAxwua4/1YWx5CM7oiChJt2Q==", + "dev": true + }, + "node_modules/json-schema": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", + "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=", + "dev": true + }, + "node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "node_modules/json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", + "dev": true + }, + "node_modules/json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=", + "dev": true + }, + "node_modules/json5": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.1.1.tgz", + "integrity": "sha512-l+3HXD0GEI3huGq1njuqtzYK8OYJyXMkOLtQ53pjWh89tvWS2h6l+1zMkYWqlb57+SiQodKZyvMEFb2X+KrFhQ==", + "dev": true, + "dependencies": { + "minimist": "^1.2.0" + }, + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/json5/node_modules/minimist": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", + "dev": true + }, + "node_modules/jsprim": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", + "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", + "dev": true, + "engines": [ + "node >=0.6.0" + ], + "dependencies": { + "assert-plus": "1.0.0", + "extsprintf": "1.3.0", + "json-schema": "0.2.3", + "verror": "1.10.0" + } + }, + "node_modules/kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/kleur": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", + "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/left-pad": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/left-pad/-/left-pad-1.3.0.tgz", + "integrity": "sha512-XI5MPzVNApjAyhQzphX8BkmKsKUxD4LdyK24iZeQGinBN9yTQT3bFlCBy/aVx2HrNcqQGsdot8ghrjyrvMCoEA==", + "dev": true + }, + "node_modules/leven": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", + "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/levn": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", + "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", + "dev": true, + "dependencies": { + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/lines-and-columns": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.1.6.tgz", + "integrity": "sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA=", + "dev": true + }, + "node_modules/lint-staged": { + "version": "10.5.4", + "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-10.5.4.tgz", + "integrity": "sha512-EechC3DdFic/TdOPgj/RB3FicqE6932LTHCUm0Y2fsD9KGlLB+RwJl2q1IYBIvEsKzDOgn0D4gll+YxG5RsrKg==", + "dev": true, + "dependencies": { + "chalk": "^4.1.0", + "cli-truncate": "^2.1.0", + "commander": "^6.2.0", + "cosmiconfig": "^7.0.0", + "debug": "^4.2.0", + "dedent": "^0.7.0", + "enquirer": "^2.3.6", + "execa": "^4.1.0", + "listr2": "^3.2.2", + "log-symbols": "^4.0.0", + "micromatch": "^4.0.2", + "normalize-path": "^3.0.0", + "please-upgrade-node": "^3.2.0", + "string-argv": "0.3.1", + "stringify-object": "^3.3.0" + }, + "bin": { + "lint-staged": "bin/lint-staged.js" + } + }, + "node_modules/lint-staged/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/lint-staged/node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "dependencies": { + "fill-range": "^7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/lint-staged/node_modules/chalk": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", + "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/lint-staged/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/lint-staged/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/lint-staged/node_modules/cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dev": true, + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/lint-staged/node_modules/debug": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", + "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", + "dev": true, + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + } + }, + "node_modules/lint-staged/node_modules/execa": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-4.1.0.tgz", + "integrity": "sha512-j5W0//W7f8UxAn8hXVnwG8tLwdiUy4FJLcSupCg6maBYZDpyBvTApK7KyuI4bKj8KOh1r2YH+6ucuYtJv1bTZA==", + "dev": true, + "dependencies": { + "cross-spawn": "^7.0.0", + "get-stream": "^5.0.0", + "human-signals": "^1.1.1", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.0", + "onetime": "^5.1.0", + "signal-exit": "^3.0.2", + "strip-final-newline": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/lint-staged/node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/lint-staged/node_modules/get-stream": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", + "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", + "dev": true, + "dependencies": { + "pump": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/lint-staged/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/lint-staged/node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/lint-staged/node_modules/is-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.0.tgz", + "integrity": "sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/lint-staged/node_modules/micromatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", + "dev": true, + "dependencies": { + "braces": "^3.0.1", + "picomatch": "^2.0.5" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/lint-staged/node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/lint-staged/node_modules/npm-run-path": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", + "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", + "dev": true, + "dependencies": { + "path-key": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/lint-staged/node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/lint-staged/node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/lint-staged/node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/lint-staged/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/lint-staged/node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/lint-staged/node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/listr2": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/listr2/-/listr2-3.3.1.tgz", + "integrity": "sha512-8Zoxe7s/8nNr4bJ8bdAduHD8uJce+exmMmUWTXlq0WuUdffnH3muisHPHPFtW2vvOfohIsq7FGCaguUxN/h3Iw==", + "dev": true, + "dependencies": { + "chalk": "^4.1.0", + "cli-truncate": "^2.1.0", + "figures": "^3.2.0", + "indent-string": "^4.0.0", + "log-update": "^4.0.0", + "p-map": "^4.0.0", + "rxjs": "^6.6.3", + "through": "^2.3.8", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/listr2/node_modules/ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/listr2/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/listr2/node_modules/chalk": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", + "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/listr2/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/listr2/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/listr2/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/listr2/node_modules/strip-ansi": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/listr2/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/listr2/node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/load-json-file": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz", + "integrity": "sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=", + "dev": true, + "dependencies": { + "graceful-fs": "^4.1.2", + "parse-json": "^2.2.0", + "pify": "^2.0.0", + "strip-bom": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/locate-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "dev": true, + "dependencies": { + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/lodash": { + "version": "4.17.19", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.19.tgz", + "integrity": "sha512-JNvd8XER9GQX0v2qJgsaN/mzFCNA5BRe/j8JN9d+tWyGLSodKQHKFicdwNYzWwI3wjRnaKPsGj1XkBjx/F96DQ==", + "dev": true + }, + "node_modules/lodash.memoize": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", + "integrity": "sha1-vMbEmkKihA7Zl/Mj6tpezRguC/4=", + "dev": true + }, + "node_modules/lodash.sortby": { + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/lodash.sortby/-/lodash.sortby-4.7.0.tgz", + "integrity": "sha1-7dFMgk4sycHgsKG0K7UhBRakJDg=", + "dev": true + }, + "node_modules/log-symbols": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.0.0.tgz", + "integrity": "sha512-FN8JBzLx6CzeMrB0tg6pqlGU1wCrXW+ZXGH481kfsBqer0hToTIiHdjH4Mq8xJUbvATujKCvaREGWpGUionraA==", + "dev": true, + "dependencies": { + "chalk": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/log-symbols/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/log-symbols/node_modules/chalk": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", + "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/log-symbols/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/log-symbols/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/log-symbols/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/log-symbols/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/log-update": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/log-update/-/log-update-4.0.0.tgz", + "integrity": "sha512-9fkkDevMefjg0mmzWFBW8YkFP91OrizzkW3diF7CpG+S2EYdy4+TVfGwz1zeF8x7hCx1ovSPTOE9Ngib74qqUg==", + "dev": true, + "dependencies": { + "ansi-escapes": "^4.3.0", + "cli-cursor": "^3.1.0", + "slice-ansi": "^4.0.0", + "wrap-ansi": "^6.2.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/log-update/node_modules/ansi-escapes": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.1.tgz", + "integrity": "sha512-JWF7ocqNrp8u9oqpgV+wH5ftbt+cfvv+PTjOvKLT3AdYly/LmORARfEVT1iyjwN+4MqE5UmVKoAdIBqeoCHgLA==", + "dev": true, + "dependencies": { + "type-fest": "^0.11.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/log-update/node_modules/ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/log-update/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/log-update/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/log-update/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/log-update/node_modules/strip-ansi": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/log-update/node_modules/type-fest": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.11.0.tgz", + "integrity": "sha512-OdjXJxnCN1AvyLSzeKIgXTXxV+99ZuXl3Hpo9XpJAv9MBcHrrJOQ5kV7ypXOuQie+AmWG25hLbiKdwYTifzcfQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/log-update/node_modules/wrap-ansi": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", + "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/loose-envify": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", + "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", + "dev": true, + "dependencies": { + "js-tokens": "^3.0.0 || ^4.0.0" + }, + "bin": { + "loose-envify": "cli.js" + } + }, + "node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "dev": true, + "dependencies": { + "pify": "^4.0.1", + "semver": "^5.6.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/make-dir/node_modules/pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/make-dir/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/make-error": { + "version": "1.3.6", + "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", + "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", + "dev": true + }, + "node_modules/makeerror": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.11.tgz", + "integrity": "sha1-4BpckQnyr3lmDk6LlYd5AYT1qWw=", + "dev": true, + "dependencies": { + "tmpl": "1.0.x" + } + }, + "node_modules/map-cache": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", + "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/map-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", + "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", + "dev": true, + "dependencies": { + "object-visit": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "dev": true + }, + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/micromatch": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", + "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "dev": true, + "dependencies": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/mime-db": { + "version": "1.42.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.42.0.tgz", + "integrity": "sha512-UbfJCR4UAVRNgMpfImz05smAXK7+c+ZntjaA26ANtkXLlOe947Aag5zdIcKQULAiF9Cq4WxBi9jUs5zkA84bYQ==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.25", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.25.tgz", + "integrity": "sha512-5KhStqB5xpTAeGqKBAMgwaYMnQik7teQN4IAzC7npDv6kzeU6prfkR67bc87J1kWMPGkoaZSq1npmexMgkmEVg==", + "dev": true, + "dependencies": { + "mime-db": "1.42.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/minimist": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", + "dev": true + }, + "node_modules/mixin-deep": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz", + "integrity": "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==", + "dev": true, + "dependencies": { + "for-in": "^1.0.2", + "is-extendable": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/mixin-deep/node_modules/is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dev": true, + "dependencies": { + "is-plain-object": "^2.0.4" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/mkdirp": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", + "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", + "dev": true, + "dependencies": { + "minimist": "^1.2.5" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, + "node_modules/mkdirp/node_modules/minimist": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", + "dev": true + }, + "node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + }, + "node_modules/nan": { + "version": "2.14.0", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.14.0.tgz", + "integrity": "sha512-INOFj37C7k3AfaNTtX8RhsTw7qRy7eLET14cROi9+5HAVbbHuIWUHEauBv5qT4Av2tWasiTY1Jw6puUNqRJXQg==", + "dev": true, + "optional": true + }, + "node_modules/nanomatch": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", + "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==", + "dev": true, + "dependencies": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "fragment-cache": "^0.2.1", + "is-windows": "^1.0.2", + "kind-of": "^6.0.2", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", + "dev": true + }, + "node_modules/nice-try": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", + "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", + "dev": true + }, + "node_modules/node-fetch": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.1.tgz", + "integrity": "sha512-V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw==", + "engines": { + "node": "4.x || >=6.0.0" + } + }, + "node_modules/node-int64": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", + "integrity": "sha1-h6kGXNs1XTGC2PlM4RGIuCXGijs=", + "dev": true + }, + "node_modules/node-modules-regexp": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz", + "integrity": "sha1-jZ2+KJZKSsVxLpExZCEHxx6Q7EA=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/node-notifier": { + "version": "5.4.3", + "resolved": "https://registry.npmjs.org/node-notifier/-/node-notifier-5.4.3.tgz", + "integrity": "sha512-M4UBGcs4jeOK9CjTsYwkvH6/MzuUmGCyTW+kCY7uO+1ZVr0+FHGdPdIf5CCLqAaxnRrWidyoQlNkMIIVwbKB8Q==", + "dev": true, + "dependencies": { + "growly": "^1.3.0", + "is-wsl": "^1.1.0", + "semver": "^5.5.0", + "shellwords": "^0.1.1", + "which": "^1.3.0" + } + }, + "node_modules/node-notifier/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/normalize-package-data": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "dev": true, + "dependencies": { + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" + } + }, + "node_modules/normalize-package-data/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/normalize-path": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", + "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", + "dev": true, + "dependencies": { + "remove-trailing-separator": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/npm-run-path": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", + "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", + "dev": true, + "dependencies": { + "path-key": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/nwsapi": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.0.tgz", + "integrity": "sha512-h2AatdwYH+JHiZpv7pt/gSX1XoRGb7L/qSIeuqA6GwYoF9w1vP1cw42TO0aI2pNyshRK5893hNSl+1//vHK7hQ==", + "dev": true + }, + "node_modules/oauth-sign": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", + "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/object-copy": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", + "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", + "dev": true, + "dependencies": { + "copy-descriptor": "^0.1.0", + "define-property": "^0.2.5", + "kind-of": "^3.0.3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-copy/node_modules/define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "dependencies": { + "is-descriptor": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-copy/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-inspect": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.7.0.tgz", + "integrity": "sha512-a7pEHdh1xKIAgTySUGgLMx/xwDZskN1Ud6egYYN3EdRW4ZMPNEDUTF+hwy2LUC+Bl+SyLXANnwz/jyh/qutKUw==", + "dev": true + }, + "node_modules/object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "dev": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object-visit": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", + "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", + "dev": true, + "dependencies": { + "isobject": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object.assign": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz", + "integrity": "sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==", + "dev": true, + "dependencies": { + "define-properties": "^1.1.2", + "function-bind": "^1.1.1", + "has-symbols": "^1.0.0", + "object-keys": "^1.0.11" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.getownpropertydescriptors": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.0.3.tgz", + "integrity": "sha1-h1jIRvW0B62rDyNuCYbxSwUcqhY=", + "dev": true, + "dependencies": { + "define-properties": "^1.1.2", + "es-abstract": "^1.5.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/object.pick": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", + "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", + "dev": true, + "dependencies": { + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object.values": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.1.tgz", + "integrity": "sha512-WTa54g2K8iu0kmS/us18jEmdv1a4Wi//BZ/DTVYEcH0XhLM5NYdpDHja3gt57VrZLcNAO2WGA+KpWsDBaHt6eA==", + "dev": true, + "dependencies": { + "define-properties": "^1.1.3", + "es-abstract": "^1.17.0-next.1", + "function-bind": "^1.1.1", + "has": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.values/node_modules/es-abstract": { + "version": "1.17.6", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.6.tgz", + "integrity": "sha512-Fr89bON3WFyUi5EvAeI48QTWX0AyekGgLA8H+c+7fbfCkJwRWRMLd8CQedNEyJuoYYhmtEqY92pgte1FAhBlhw==", + "dev": true, + "dependencies": { + "es-to-primitive": "^1.2.1", + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.1", + "is-callable": "^1.2.0", + "is-regex": "^1.1.0", + "object-inspect": "^1.7.0", + "object-keys": "^1.1.1", + "object.assign": "^4.1.0", + "string.prototype.trimend": "^1.0.1", + "string.prototype.trimstart": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.values/node_modules/is-callable": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.0.tgz", + "integrity": "sha512-pyVD9AaGLxtg6srb2Ng6ynWJqkHU9bEM087AKck0w8QwDarTfNcpIYoU8x8Hv2Icm8u6kFJM18Dag8lyqGkviw==", + "dev": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.values/node_modules/is-regex": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.0.tgz", + "integrity": "sha512-iI97M8KTWID2la5uYXlkbSDQIg4F6o1sYboZKKTDpnDQMLtUL86zxhgDet3Q2SriaYsyGqZ6Mn2SjbRKeLHdqw==", + "dev": true, + "dependencies": { + "has-symbols": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "dev": true, + "dependencies": { + "mimic-fn": "^2.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/opencollective-postinstall": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/opencollective-postinstall/-/opencollective-postinstall-2.0.3.tgz", + "integrity": "sha512-8AV/sCtuzUeTo8gQK5qDZzARrulB3egtLzFgteqB2tcT4Mw7B8Kt7JcDHmltjz6FOAHsvTevk70gZEbhM4ZS9Q==", + "dev": true, + "bin": { + "opencollective-postinstall": "index.js" + } + }, + "node_modules/optionator": { + "version": "0.8.3", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", + "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==", + "dev": true, + "dependencies": { + "deep-is": "~0.1.3", + "fast-levenshtein": "~2.0.6", + "levn": "~0.3.0", + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2", + "word-wrap": "~1.2.3" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/p-each-series": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-each-series/-/p-each-series-1.0.0.tgz", + "integrity": "sha1-kw89Et0fUOdDRFeiLNbwSsatf3E=", + "dev": true, + "dependencies": { + "p-reduce": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/p-finally": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", + "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/p-limit": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", + "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", + "dev": true, + "dependencies": { + "p-try": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/p-locate": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "dev": true, + "dependencies": { + "p-limit": "^1.1.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/p-map": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", + "dev": true, + "dependencies": { + "aggregate-error": "^3.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/p-reduce": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-reduce/-/p-reduce-1.0.0.tgz", + "integrity": "sha1-GMKw3ZNqRpClKfgjH1ig/bakffo=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/p-try": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", + "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dev": true, + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/parse-json": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", + "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", + "dev": true, + "dependencies": { + "error-ex": "^1.2.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/parse5": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-4.0.0.tgz", + "integrity": "sha512-VrZ7eOd3T1Fk4XWNXMgiGBK/z0MG48BWG2uQNU4I72fkQuKUTZpl+u9k+CxEG0twMVzSmXEEz12z5Fnw1jIQFA==", + "dev": true + }, + "node_modules/pascalcase": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", + "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/path-parse": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", + "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==", + "dev": true + }, + "node_modules/path-type": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-2.0.0.tgz", + "integrity": "sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM=", + "dev": true, + "dependencies": { + "pify": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/performance-now": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", + "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", + "dev": true + }, + "node_modules/picomatch": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.2.tgz", + "integrity": "sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg==", + "dev": true, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/pirates": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.1.tgz", + "integrity": "sha512-WuNqLTbMI3tmfef2TKxlQmAiLHKtFhlsCZnPIpuv2Ow0RDVO8lfy1Opf4NUzlMXLjPl+Men7AuVdX6TA+s+uGA==", + "dev": true, + "dependencies": { + "node-modules-regexp": "^1.0.0" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/pkg-dir": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", + "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", + "dev": true, + "dependencies": { + "find-up": "^2.1.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/please-upgrade-node": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/please-upgrade-node/-/please-upgrade-node-3.2.0.tgz", + "integrity": "sha512-gQR3WpIgNIKwBMVLkpMUeR3e1/E1y42bqDQZfql+kDeXd8COYfM8PQA4X6y7a8u9Ua9FHmsrrmirW2vHs45hWg==", + "dev": true, + "dependencies": { + "semver-compare": "^1.0.0" + } + }, + "node_modules/pn": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/pn/-/pn-1.1.0.tgz", + "integrity": "sha512-2qHaIQr2VLRFoxe2nASzsV6ef4yOOH+Fi9FBOVH6cqeSgUnoyySPZkxzLuzd+RYOQTRpROA0ztTMqxROKSb/nA==", + "dev": true + }, + "node_modules/posix-character-classes": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", + "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/prelude-ls": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", + "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=", + "dev": true, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/prettier": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.2.1.tgz", + "integrity": "sha512-PqyhM2yCjg/oKkFPtTGUojv7gnZAoG80ttl45O6x2Ug/rMJw4wcc9k6aaf2hibP7BGVCCM33gZoGjyvt9mm16Q==", + "dev": true, + "bin": { + "prettier": "bin-prettier.js" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/prettier-linter-helpers": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz", + "integrity": "sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==", + "dev": true, + "dependencies": { + "fast-diff": "^1.1.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/pretty-format": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-24.9.0.tgz", + "integrity": "sha512-00ZMZUiHaJrNfk33guavqgvfJS30sLYf0f8+Srklv0AMPodGGHcoHgksZ3OThYnIvOd+8yMCn0YiEOogjlgsnA==", + "dev": true, + "dependencies": { + "@jest/types": "^24.9.0", + "ansi-regex": "^4.0.0", + "ansi-styles": "^3.2.0", + "react-is": "^16.8.4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/progress": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", + "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", + "dev": true, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/prompts": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.3.0.tgz", + "integrity": "sha512-NfbbPPg/74fT7wk2XYQ7hAIp9zJyZp5Fu19iRbORqqy1BhtrkZ0fPafBU+7bmn8ie69DpT0R6QpJIN2oisYjJg==", + "dev": true, + "dependencies": { + "kleur": "^3.0.3", + "sisteransi": "^1.0.3" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/psl": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.5.0.tgz", + "integrity": "sha512-4vqUjKi2huMu1OJiLhi3jN6jeeKvMZdI1tYgi/njW5zV52jNLgSAZSdN16m9bJFe61/cT8ulmw4qFitV9QRsEA==", + "dev": true + }, + "node_modules/pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "dev": true, + "dependencies": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "node_modules/punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/qs": { + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", + "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==", + "dev": true, + "engines": { + "node": ">=0.6" + } + }, + "node_modules/react-is": { + "version": "16.12.0", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.12.0.tgz", + "integrity": "sha512-rPCkf/mWBtKc97aLL9/txD8DZdemK0vkA3JMLShjlJB3Pj3s+lpf1KaBzMfQrAmhMQB0n1cU/SUGgKKBCe837Q==", + "dev": true + }, + "node_modules/read-pkg": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-2.0.0.tgz", + "integrity": "sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg=", + "dev": true, + "dependencies": { + "load-json-file": "^2.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/read-pkg-up": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-4.0.0.tgz", + "integrity": "sha512-6etQSH7nJGsK0RbG/2TeDzZFa8shjQ1um+SwQQ5cwKy0dhSXdOncEhb1CPpvQG4h7FyOV6EB6YlV0yJvZQNAkA==", + "dev": true, + "dependencies": { + "find-up": "^3.0.0", + "read-pkg": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/read-pkg-up/node_modules/find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dev": true, + "dependencies": { + "locate-path": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/read-pkg-up/node_modules/load-json-file": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", + "integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=", + "dev": true, + "dependencies": { + "graceful-fs": "^4.1.2", + "parse-json": "^4.0.0", + "pify": "^3.0.0", + "strip-bom": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/read-pkg-up/node_modules/locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dev": true, + "dependencies": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/read-pkg-up/node_modules/p-limit": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.1.tgz", + "integrity": "sha512-85Tk+90UCVWvbDavCLKPOLC9vvY8OwEX/RtKF+/1OADJMVlFfEHOiMTPVyxg7mk/dKa+ipdHm0OUkTvCpMTuwg==", + "dev": true, + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/read-pkg-up/node_modules/p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dev": true, + "dependencies": { + "p-limit": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/read-pkg-up/node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/read-pkg-up/node_modules/parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", + "dev": true, + "dependencies": { + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/read-pkg-up/node_modules/path-type": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", + "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", + "dev": true, + "dependencies": { + "pify": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/read-pkg-up/node_modules/pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/read-pkg-up/node_modules/read-pkg": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", + "integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=", + "dev": true, + "dependencies": { + "load-json-file": "^4.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/realpath-native": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/realpath-native/-/realpath-native-1.1.0.tgz", + "integrity": "sha512-wlgPA6cCIIg9gKz0fgAPjnzh4yR/LnXovwuo9hvyGvx3h8nX4+/iLZplfUWasXpqD8BdnGnP5njOFjkUwPzvjA==", + "dev": true, + "dependencies": { + "util.promisify": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/regex-not": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", + "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", + "dev": true, + "dependencies": { + "extend-shallow": "^3.0.2", + "safe-regex": "^1.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/regexpp": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.1.0.tgz", + "integrity": "sha512-ZOIzd8yVsQQA7j8GCSlPGXwg5PfmA1mrq0JP4nGhh54LaKN3xdai/vHUDu74pKwV8OxseMS65u2NImosQcSD0Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/remove-trailing-separator": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", + "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=", + "dev": true + }, + "node_modules/repeat-element": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz", + "integrity": "sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/repeat-string": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", + "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=", + "dev": true, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/request": { + "version": "2.88.0", + "resolved": "https://registry.npmjs.org/request/-/request-2.88.0.tgz", + "integrity": "sha512-NAqBSrijGLZdM0WZNsInLJpkJokL72XYjUpnB0iwsRgxh7dB6COrHnTBNwN0E+lHDAJzu7kLAkDeY08z2/A0hg==", + "dev": true, + "dependencies": { + "aws-sign2": "~0.7.0", + "aws4": "^1.8.0", + "caseless": "~0.12.0", + "combined-stream": "~1.0.6", + "extend": "~3.0.2", + "forever-agent": "~0.6.1", + "form-data": "~2.3.2", + "har-validator": "~5.1.0", + "http-signature": "~1.2.0", + "is-typedarray": "~1.0.0", + "isstream": "~0.1.2", + "json-stringify-safe": "~5.0.1", + "mime-types": "~2.1.19", + "oauth-sign": "~0.9.0", + "performance-now": "^2.1.0", + "qs": "~6.5.2", + "safe-buffer": "^5.1.2", + "tough-cookie": "~2.4.3", + "tunnel-agent": "^0.6.0", + "uuid": "^3.3.2" + }, + "engines": { + "node": ">= 4" + } + }, + "node_modules/request-promise-core": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/request-promise-core/-/request-promise-core-1.1.3.tgz", + "integrity": "sha512-QIs2+ArIGQVp5ZYbWD5ZLCY29D5CfWizP8eWnm8FoGD1TX61veauETVQbrV60662V0oFBkrDOuaBI8XgtuyYAQ==", + "dev": true, + "dependencies": { + "lodash": "^4.17.15" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/request-promise-native": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/request-promise-native/-/request-promise-native-1.0.8.tgz", + "integrity": "sha512-dapwLGqkHtwL5AEbfenuzjTYg35Jd6KPytsC2/TLkVMz8rm+tNt72MGUWT1RP/aYawMpN6HqbNGBQaRcBtjQMQ==", + "dev": true, + "dependencies": { + "request-promise-core": "1.1.3", + "stealthy-require": "^1.1.1", + "tough-cookie": "^2.3.3" + }, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/request/node_modules/punycode": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", + "dev": true + }, + "node_modules/request/node_modules/tough-cookie": { + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.4.3.tgz", + "integrity": "sha512-Q5srk/4vDM54WJsJio3XNn6K2sCG+CQ8G5Wz6bZhRZoAe/+TxjWB/GlFAnYEbkYVlON9FMk/fE3h2RLpPXo4lQ==", + "dev": true, + "dependencies": { + "psl": "^1.1.24", + "punycode": "^1.4.1" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/require-from-string": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", + "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/require-main-filename": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", + "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", + "dev": true + }, + "node_modules/resolve": { + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.13.1.tgz", + "integrity": "sha512-CxqObCX8K8YtAhOBRg+lrcdn+LK+WYOS8tSjqSFbjtrI5PnS63QPhZl4+yKfrU9tdsbMu9Anr/amegT87M9Z6w==", + "dev": true, + "dependencies": { + "path-parse": "^1.0.6" + } + }, + "node_modules/resolve-cwd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-2.0.0.tgz", + "integrity": "sha1-AKn3OHVW4nA46uIyyqNypqWbZlo=", + "dev": true, + "dependencies": { + "resolve-from": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/resolve-cwd/node_modules/resolve-from": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz", + "integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/resolve-url": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", + "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=", + "dev": true + }, + "node_modules/restore-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", + "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", + "dev": true, + "dependencies": { + "onetime": "^5.1.0", + "signal-exit": "^3.0.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/ret": { + "version": "0.1.15", + "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", + "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==", + "dev": true, + "engines": { + "node": ">=0.12" + } + }, + "node_modules/reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "dev": true, + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/rimraf": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", + "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", + "dev": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + } + }, + "node_modules/rsvp": { + "version": "4.8.5", + "resolved": "https://registry.npmjs.org/rsvp/-/rsvp-4.8.5.tgz", + "integrity": "sha512-nfMOlASu9OnRJo1mbEk2cz0D56a1MBNrJ7orjRZQG10XDyuvwksKbuXNp6qa+kbn839HwjwhBzhFmdsaEAfauA==", + "dev": true, + "engines": { + "node": "6.* || >= 7.*" + } + }, + "node_modules/run-parallel": { + "version": "1.1.9", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.1.9.tgz", + "integrity": "sha512-DEqnSRTDw/Tc3FXf49zedI638Z9onwUotBMiUFKmrO2sdFKIbXamXGQ3Axd4qgphxKB4kw/qP1w5kTxnfU1B9Q==", + "dev": true + }, + "node_modules/rxjs": { + "version": "6.6.3", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.3.tgz", + "integrity": "sha512-trsQc+xYYXZ3urjOiJOuCOa5N3jAZ3eiSpQB5hIT8zGlL2QfnHLJ2r7GMkBGuIausdJN1OneaI6gQlsqNHHmZQ==", + "dev": true, + "dependencies": { + "tslib": "^1.9.0" + }, + "engines": { + "npm": ">=2.0.0" + } + }, + "node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "node_modules/safe-regex": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", + "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", + "dev": true, + "dependencies": { + "ret": "~0.1.10" + } + }, + "node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "dev": true + }, + "node_modules/sane": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/sane/-/sane-4.1.0.tgz", + "integrity": "sha512-hhbzAgTIX8O7SHfp2c8/kREfEn4qO/9q8C9beyY6+tvZ87EpoZ3i1RIEvp27YBswnNbY9mWd6paKVmKbAgLfZA==", + "dev": true, + "dependencies": { + "@cnakazawa/watch": "^1.0.3", + "anymatch": "^2.0.0", + "capture-exit": "^2.0.0", + "exec-sh": "^0.3.2", + "execa": "^1.0.0", + "fb-watchman": "^2.0.0", + "micromatch": "^3.1.4", + "minimist": "^1.1.1", + "walker": "~1.0.5" + }, + "bin": { + "sane": "src/cli.js" + }, + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/sax": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", + "dev": true + }, + "node_modules/saxes": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/saxes/-/saxes-5.0.1.tgz", + "integrity": "sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw==", + "dev": true, + "dependencies": { + "xmlchars": "^2.2.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/semver-compare": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/semver-compare/-/semver-compare-1.0.0.tgz", + "integrity": "sha1-De4hahyUGrN+nvsXiPavxf9VN/w=", + "dev": true + }, + "node_modules/semver-regex": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/semver-regex/-/semver-regex-3.1.2.tgz", + "integrity": "sha512-bXWyL6EAKOJa81XG1OZ/Yyuq+oT0b2YLlxx7c+mrdYPaPbnj6WgVULXhinMIeZGufuUBu/eVRqXEhiv4imfwxA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/set-blocking": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", + "dev": true + }, + "node_modules/set-value": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz", + "integrity": "sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==", + "dev": true, + "dependencies": { + "extend-shallow": "^2.0.1", + "is-extendable": "^0.1.1", + "is-plain-object": "^2.0.3", + "split-string": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/set-value/node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "dependencies": { + "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", + "dev": true, + "dependencies": { + "shebang-regex": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/shebang-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/shellwords": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/shellwords/-/shellwords-0.1.1.tgz", + "integrity": "sha512-vFwSUfQvqybiICwZY5+DAWIPLKsWO31Q91JSKl3UYv+K5c2QRPzn0qzec6QPu1Qc9eHYItiP3NdJqNVqetYAww==", + "dev": true + }, + "node_modules/signal-exit": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", + "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=", + "dev": true + }, + "node_modules/sisteransi": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.4.tgz", + "integrity": "sha512-/ekMoM4NJ59ivGSfKapeG+FWtrmWvA1p6FBZwXrqojw90vJu8lBmrTxCMuBCydKtkaUe2zt4PlxeTKpjwMbyig==", + "dev": true + }, + "node_modules/slash": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz", + "integrity": "sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/slice-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", + "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/slice-ansi/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/slice-ansi/node_modules/astral-regex": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", + "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/slice-ansi/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/slice-ansi/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/slice-ansi/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/snapdragon": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", + "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", + "dev": true, + "dependencies": { + "base": "^0.11.1", + "debug": "^2.2.0", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "map-cache": "^0.2.2", + "source-map": "^0.5.6", + "source-map-resolve": "^0.5.0", + "use": "^3.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon-node": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz", + "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", + "dev": true, + "dependencies": { + "define-property": "^1.0.0", + "isobject": "^3.0.0", + "snapdragon-util": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon-node/node_modules/define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "dev": true, + "dependencies": { + "is-descriptor": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon-node/node_modules/is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, + "dependencies": { + "kind-of": "^6.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon-node/node_modules/is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, + "dependencies": { + "kind-of": "^6.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon-node/node_modules/is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, + "dependencies": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon-util": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", + "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", + "dev": true, + "dependencies": { + "kind-of": "^3.2.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon-util/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/snapdragon/node_modules/define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "dependencies": { + "is-descriptor": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon/node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "dependencies": { + "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + }, + "node_modules/source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-resolve": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.2.tgz", + "integrity": "sha512-MjqsvNwyz1s0k81Goz/9vRBe9SZdB09Bdw+/zYyO+3CuPk6fouTaxscHkgtE8jKvf01kVfl8riHzERQ/kefaSA==", + "dev": true, + "dependencies": { + "atob": "^2.1.1", + "decode-uri-component": "^0.2.0", + "resolve-url": "^0.2.1", + "source-map-url": "^0.4.0", + "urix": "^0.1.0" + } + }, + "node_modules/source-map-support": { + "version": "0.5.16", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.16.tgz", + "integrity": "sha512-efyLRJDr68D9hBBNIPWFjhpFzURh+KJykQwvMyW5UiZzYwoF6l4YMMDIJJEyFWxWCqfyxLzz6tSfUFR+kXXsVQ==", + "dev": true, + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "node_modules/source-map-support/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-url": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz", + "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=", + "dev": true + }, + "node_modules/spdx-correct": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.0.tgz", + "integrity": "sha512-lr2EZCctC2BNR7j7WzJ2FpDznxky1sjfxvvYEyzxNyb6lZXHODmEoJeFu4JupYlkfha1KZpJyoqiJ7pgA1qq8Q==", + "dev": true, + "dependencies": { + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/spdx-exceptions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.2.0.tgz", + "integrity": "sha512-2XQACfElKi9SlVb1CYadKDXvoajPgBVPn/gOQLrTvHdElaVhr7ZEbqJaRnJLVNeaI4cMEAgVCeBMKF6MWRDCRA==", + "dev": true + }, + "node_modules/spdx-expression-parse": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz", + "integrity": "sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg==", + "dev": true, + "dependencies": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/spdx-license-ids": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.5.tgz", + "integrity": "sha512-J+FWzZoynJEXGphVIS+XEh3kFSjZX/1i9gFBaWQcB+/tmpe2qUsSBABpcxqxnAxFdiUFEgAX1bjYGQvIZmoz9Q==", + "dev": true + }, + "node_modules/split-string": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", + "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", + "dev": true, + "dependencies": { + "extend-shallow": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", + "dev": true + }, + "node_modules/sshpk": { + "version": "1.16.1", + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz", + "integrity": "sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==", + "dev": true, + "dependencies": { + "asn1": "~0.2.3", + "assert-plus": "^1.0.0", + "bcrypt-pbkdf": "^1.0.0", + "dashdash": "^1.12.0", + "ecc-jsbn": "~0.1.1", + "getpass": "^0.1.1", + "jsbn": "~0.1.0", + "safer-buffer": "^2.0.2", + "tweetnacl": "~0.14.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/stack-utils": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-1.0.2.tgz", + "integrity": "sha512-MTX+MeG5U994cazkjd/9KNAapsHnibjMLnfXodlkXw76JEea0UiNzrqidzo1emMwk7w5Qhc9jd4Bn9TBb1MFwA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/static-extend": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", + "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", + "dev": true, + "dependencies": { + "define-property": "^0.2.5", + "object-copy": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/static-extend/node_modules/define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "dependencies": { + "is-descriptor": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/stealthy-require": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/stealthy-require/-/stealthy-require-1.1.1.tgz", + "integrity": "sha1-NbCYdbT/SfJqd35QmzCQoyJr8ks=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/string-argv": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/string-argv/-/string-argv-0.3.1.tgz", + "integrity": "sha512-a1uQGz7IyVy9YwhqjZIZu1c8JO8dNIe20xBmSS6qu9kv++k3JGzCVmprbNN5Kn+BgzD5E7YYwg1CcjuJMRNsvg==", + "dev": true, + "engines": { + "node": ">=0.6.19" + } + }, + "node_modules/string-length": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/string-length/-/string-length-2.0.0.tgz", + "integrity": "sha1-1A27aGo6zpYMHP/KVivyxF+DY+0=", + "dev": true, + "dependencies": { + "astral-regex": "^1.0.0", + "strip-ansi": "^4.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/string-width": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", + "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width/node_modules/ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "node_modules/string-width/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width/node_modules/strip-ansi": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/string.prototype.trimend": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.1.tgz", + "integrity": "sha512-LRPxFUaTtpqYsTeNKaFOw3R4bxIzWOnbQ837QfBylo8jIxtcbK/A/sMV7Q+OAV/vWo+7s25pOE10KYSjaSO06g==", + "dev": true, + "dependencies": { + "define-properties": "^1.1.3", + "es-abstract": "^1.17.5" + } + }, + "node_modules/string.prototype.trimend/node_modules/es-abstract": { + "version": "1.17.6", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.6.tgz", + "integrity": "sha512-Fr89bON3WFyUi5EvAeI48QTWX0AyekGgLA8H+c+7fbfCkJwRWRMLd8CQedNEyJuoYYhmtEqY92pgte1FAhBlhw==", + "dev": true, + "dependencies": { + "es-to-primitive": "^1.2.1", + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.1", + "is-callable": "^1.2.0", + "is-regex": "^1.1.0", + "object-inspect": "^1.7.0", + "object-keys": "^1.1.1", + "object.assign": "^4.1.0", + "string.prototype.trimend": "^1.0.1", + "string.prototype.trimstart": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/string.prototype.trimend/node_modules/is-callable": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.0.tgz", + "integrity": "sha512-pyVD9AaGLxtg6srb2Ng6ynWJqkHU9bEM087AKck0w8QwDarTfNcpIYoU8x8Hv2Icm8u6kFJM18Dag8lyqGkviw==", + "dev": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/string.prototype.trimend/node_modules/is-regex": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.0.tgz", + "integrity": "sha512-iI97M8KTWID2la5uYXlkbSDQIg4F6o1sYboZKKTDpnDQMLtUL86zxhgDet3Q2SriaYsyGqZ6Mn2SjbRKeLHdqw==", + "dev": true, + "dependencies": { + "has-symbols": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/string.prototype.trimleft": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/string.prototype.trimleft/-/string.prototype.trimleft-2.1.0.tgz", + "integrity": "sha512-FJ6b7EgdKxxbDxc79cOlok6Afd++TTs5szo+zJTUyow3ycrRfJVE2pq3vcN53XexvKZu/DJMDfeI/qMiZTrjTw==", + "dev": true, + "dependencies": { + "define-properties": "^1.1.3", + "function-bind": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/string.prototype.trimright": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/string.prototype.trimright/-/string.prototype.trimright-2.1.0.tgz", + "integrity": "sha512-fXZTSV55dNBwv16uw+hh5jkghxSnc5oHq+5K/gXgizHwAvMetdAJlHqqoFC1FSDVPYWLkAKl2cxpUT41sV7nSg==", + "dev": true, + "dependencies": { + "define-properties": "^1.1.3", + "function-bind": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/string.prototype.trimstart": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.1.tgz", + "integrity": "sha512-XxZn+QpvrBI1FOcg6dIpxUPgWCPuNXvMD72aaRaUQv1eD4e/Qy8i/hFTe0BUmD60p/QA6bh1avmuPTfNjqVWRw==", + "dev": true, + "dependencies": { + "define-properties": "^1.1.3", + "es-abstract": "^1.17.5" + } + }, + "node_modules/string.prototype.trimstart/node_modules/es-abstract": { + "version": "1.17.6", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.6.tgz", + "integrity": "sha512-Fr89bON3WFyUi5EvAeI48QTWX0AyekGgLA8H+c+7fbfCkJwRWRMLd8CQedNEyJuoYYhmtEqY92pgte1FAhBlhw==", + "dev": true, + "dependencies": { + "es-to-primitive": "^1.2.1", + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.1", + "is-callable": "^1.2.0", + "is-regex": "^1.1.0", + "object-inspect": "^1.7.0", + "object-keys": "^1.1.1", + "object.assign": "^4.1.0", + "string.prototype.trimend": "^1.0.1", + "string.prototype.trimstart": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/string.prototype.trimstart/node_modules/is-callable": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.0.tgz", + "integrity": "sha512-pyVD9AaGLxtg6srb2Ng6ynWJqkHU9bEM087AKck0w8QwDarTfNcpIYoU8x8Hv2Icm8u6kFJM18Dag8lyqGkviw==", + "dev": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/string.prototype.trimstart/node_modules/is-regex": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.0.tgz", + "integrity": "sha512-iI97M8KTWID2la5uYXlkbSDQIg4F6o1sYboZKKTDpnDQMLtUL86zxhgDet3Q2SriaYsyGqZ6Mn2SjbRKeLHdqw==", + "dev": true, + "dependencies": { + "has-symbols": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/stringify-object": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/stringify-object/-/stringify-object-3.3.0.tgz", + "integrity": "sha512-rHqiFh1elqCQ9WPLIC8I0Q/g/wj5J1eMkyoiD6eoQApWHP0FtlK7rqnhmabL5VUY9JQCcqwwvlOaSuutekgyrw==", + "dev": true, + "dependencies": { + "get-own-enumerable-property-symbols": "^3.0.0", + "is-obj": "^1.0.1", + "is-regexp": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "dependencies": { + "ansi-regex": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/strip-ansi/node_modules/ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/strip-eof": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", + "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/strip-final-newline": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", + "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/svg-element-attributes": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/svg-element-attributes/-/svg-element-attributes-1.3.1.tgz", + "integrity": "sha512-Bh05dSOnJBf3miNMqpsormfNtfidA/GxQVakhtn0T4DECWKeXQRQUceYjJ+OxYiiLdGe4Jo9iFV8wICFapFeIA==", + "dev": true + }, + "node_modules/symbol-tree": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz", + "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==", + "dev": true + }, + "node_modules/table": { + "version": "6.0.7", + "resolved": "https://registry.npmjs.org/table/-/table-6.0.7.tgz", + "integrity": "sha512-rxZevLGTUzWna/qBLObOe16kB2RTnnbhciwgPbMMlazz1yZGVEgnZK762xyVdVznhqxrfCeBMmMkgOOaPwjH7g==", + "dev": true, + "dependencies": { + "ajv": "^7.0.2", + "lodash": "^4.17.20", + "slice-ansi": "^4.0.0", + "string-width": "^4.2.0" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/table/node_modules/ajv": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-7.0.4.tgz", + "integrity": "sha512-xzzzaqgEQfmuhbhAoqjJ8T/1okb6gAzXn/eQRNpAN1AEUoHJTNF9xCDRTtf/s3SKldtZfa+RJeTs+BQq+eZ/sw==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + } + }, + "node_modules/table/node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true + }, + "node_modules/table/node_modules/json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "dev": true + }, + "node_modules/table/node_modules/lodash": { + "version": "4.17.20", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.20.tgz", + "integrity": "sha512-PlhdFcillOINfeV7Ni6oF1TAEayyZBoZ8bcshTHqOYJYlrqzRK5hagpagky5o4HfCzzd1TRkXPMFq6cKk9rGmA==", + "dev": true + }, + "node_modules/test-exclude": { + "version": "5.2.3", + "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-5.2.3.tgz", + "integrity": "sha512-M+oxtseCFO3EDtAaGH7iiej3CBkzXqFMbzqYAACdzKui4eZA+pq3tZEwChvOdNfa7xxy8BfbmgJSIr43cC/+2g==", + "dev": true, + "dependencies": { + "glob": "^7.1.3", + "minimatch": "^3.0.4", + "read-pkg-up": "^4.0.0", + "require-main-filename": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", + "dev": true + }, + "node_modules/throat": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/throat/-/throat-4.1.0.tgz", + "integrity": "sha1-iQN8vJLFarGJJua6TLsgDhVnKmo=", + "dev": true + }, + "node_modules/through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", + "dev": true + }, + "node_modules/tmpl": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.4.tgz", + "integrity": "sha1-I2QN17QtAEM5ERQIIOXPRA5SHdE=", + "dev": true + }, + "node_modules/to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/to-object-path": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", + "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=", + "dev": true, + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/to-object-path/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/to-regex": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz", + "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", + "dev": true, + "dependencies": { + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "regex-not": "^1.0.2", + "safe-regex": "^1.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/to-regex-range": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", + "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", + "dev": true, + "dependencies": { + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/tough-cookie": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", + "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", + "dev": true, + "dependencies": { + "psl": "^1.1.28", + "punycode": "^2.1.1" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/tr46": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-1.0.1.tgz", + "integrity": "sha1-qLE/1r/SSJUZZ0zN5VujaTtwbQk=", + "dev": true, + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/ts-jest": { + "version": "24.3.0", + "resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-24.3.0.tgz", + "integrity": "sha512-Hb94C/+QRIgjVZlJyiWwouYUF+siNJHJHknyspaOcZ+OQAIdFG/UrdQVXw/0B8Z3No34xkUXZJpOTy9alOWdVQ==", + "dev": true, + "dependencies": { + "bs-logger": "0.x", + "buffer-from": "1.x", + "fast-json-stable-stringify": "2.x", + "json5": "2.x", + "lodash.memoize": "4.x", + "make-error": "1.x", + "mkdirp": "0.x", + "resolve": "1.x", + "semver": "^5.5", + "yargs-parser": "10.x" + }, + "bin": { + "ts-jest": "cli.js" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/ts-jest/node_modules/camelcase": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", + "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/ts-jest/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/ts-jest/node_modules/yargs-parser": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-10.1.0.tgz", + "integrity": "sha512-VCIyR1wJoEBZUqk5PA+oOBF6ypbwh5aNB3I50guxAL/quggdfs4TtNHQrSazFA3fYZ+tEqfs0zIGlv0c/rgjbQ==", + "dev": true, + "dependencies": { + "camelcase": "^4.1.0" + } + }, + "node_modules/tsconfig-paths": { + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.9.0.tgz", + "integrity": "sha512-dRcuzokWhajtZWkQsDVKbWyY+jgcLC5sqJhg2PSgf4ZkH2aHPvaOY8YWGhmjb68b5qqTfasSsDO9k7RUiEmZAw==", + "dev": true, + "dependencies": { + "@types/json5": "^0.0.29", + "json5": "^1.0.1", + "minimist": "^1.2.0", + "strip-bom": "^3.0.0" + } + }, + "node_modules/tsconfig-paths/node_modules/json5": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", + "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", + "dev": true, + "dependencies": { + "minimist": "^1.2.0" + }, + "bin": { + "json5": "lib/cli.js" + } + }, + "node_modules/tslib": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.10.0.tgz", + "integrity": "sha512-qOebF53frne81cf0S9B41ByenJ3/IuH8yJKngAX35CmiZySA0khhkovshKK+jGCaMnVomla7gVlIcc3EvKPbTQ==", + "dev": true + }, + "node_modules/tsutils": { + "version": "3.17.1", + "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.17.1.tgz", + "integrity": "sha512-kzeQ5B8H3w60nFY2g8cJIuH7JDpsALXySGtwGJ0p2LSjLgay3NdIpqq5SoOBe46bKDW2iq25irHCr8wjomUS2g==", + "dev": true, + "dependencies": { + "tslib": "^1.8.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/tunnel": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/tunnel/-/tunnel-0.0.6.tgz", + "integrity": "sha512-1h/Lnq9yajKY2PEbBadPXj3VxsDDu844OnaAo52UVmIzIvwwtBPIuNvkjuzBlTWpfJyUbG3ez0KSBibQkj4ojg==", + "engines": { + "node": ">=0.6.11 <=0.7.0 || >=0.7.3" + } + }, + "node_modules/tunnel-agent": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", + "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", + "dev": true, + "dependencies": { + "safe-buffer": "^5.0.1" + }, + "engines": { + "node": "*" + } + }, + "node_modules/tweetnacl": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", + "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", + "dev": true + }, + "node_modules/type-check": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", + "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=", + "dev": true, + "dependencies": { + "prelude-ls": "~1.1.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/type-detect": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", + "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/type-fest": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", + "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/typedarray-to-buffer": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", + "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==", + "dev": true, + "dependencies": { + "is-typedarray": "^1.0.0" + } + }, + "node_modules/typescript": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.1.3.tgz", + "integrity": "sha512-B3ZIOf1IKeH2ixgHhj6la6xdwR9QrLC5d1VKeCSY4tvkqhF2eqd9O7txNlS0PO3GrBAFIdr3L1ndNwteUbZLYg==", + "dev": true, + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=4.2.0" + } + }, + "node_modules/union-value": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz", + "integrity": "sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==", + "dev": true, + "dependencies": { + "arr-union": "^3.1.0", + "get-value": "^2.0.6", + "is-extendable": "^0.1.1", + "set-value": "^2.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/universal-user-agent": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/universal-user-agent/-/universal-user-agent-6.0.0.tgz", + "integrity": "sha512-isyNax3wXoKaulPDZWHQqbmIx1k2tb9fb3GGDBRxCscfYV2Ch7WxPArBsFEG8s/safwXTT7H4QGhaIkTp9447w==" + }, + "node_modules/unset-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", + "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=", + "dev": true, + "dependencies": { + "has-value": "^0.3.1", + "isobject": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/unset-value/node_modules/has-value": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz", + "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=", + "dev": true, + "dependencies": { + "get-value": "^2.0.3", + "has-values": "^0.1.4", + "isobject": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/unset-value/node_modules/has-value/node_modules/isobject": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", + "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", + "dev": true, + "dependencies": { + "isarray": "1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/unset-value/node_modules/has-values": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", + "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/uri-js": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz", + "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==", + "dev": true, + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/urix": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", + "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=", + "dev": true + }, + "node_modules/use": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", + "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/util.promisify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/util.promisify/-/util.promisify-1.0.0.tgz", + "integrity": "sha512-i+6qA2MPhvoKLuxnJNpXAGhg7HphQOSUq2LKMZD0m15EiskXUkMvKdF4Uui0WYeCUGea+o2cw/ZuwehtfsrNkA==", + "dev": true, + "dependencies": { + "define-properties": "^1.1.2", + "object.getownpropertydescriptors": "^2.0.3" + } + }, + "node_modules/uuid": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.3.tgz", + "integrity": "sha512-pW0No1RGHgzlpHJO1nsVrHKpOEIxkGg1xB+v0ZmdNH5OAeAwzAVrCnI2/6Mtx+Uys6iaylxa+D3g4j63IKKjSQ==", + "dev": true, + "bin": { + "uuid": "bin/uuid" + } + }, + "node_modules/v8-compile-cache": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.2.0.tgz", + "integrity": "sha512-gTpR5XQNKFwOd4clxfnhaqvfqMpqEwr4tOtCyz4MtYZX2JYhfr1JvBFKdS+7K/9rfpZR3VLX+YWBbKoxCgS43Q==", + "dev": true + }, + "node_modules/validate-npm-package-license": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", + "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", + "dev": true, + "dependencies": { + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" + } + }, + "node_modules/verror": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", + "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", + "dev": true, + "engines": [ + "node >=0.6.0" + ], + "dependencies": { + "assert-plus": "^1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "^1.2.0" + } + }, + "node_modules/w3c-hr-time": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.1.tgz", + "integrity": "sha1-gqwr/2PZUOqeMYmlimViX+3xkEU=", + "dev": true, + "dependencies": { + "browser-process-hrtime": "^0.1.2" + } + }, + "node_modules/w3c-xmlserializer": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-2.0.0.tgz", + "integrity": "sha512-4tzD0mF8iSiMiNs30BiLO3EpfGLZUT2MSX/G+o7ZywDzliWQ3OPtTZ0PTC3B3ca1UAf4cJMHB+2Bf56EriJuRA==", + "dev": true, + "dependencies": { + "xml-name-validator": "^3.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/walker": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.7.tgz", + "integrity": "sha1-L3+bj9ENZ3JisYqITijRlhjgKPs=", + "dev": true, + "dependencies": { + "makeerror": "1.0.x" + } + }, + "node_modules/webidl-conversions": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-4.0.2.tgz", + "integrity": "sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==", + "dev": true + }, + "node_modules/whatwg-encoding": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz", + "integrity": "sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw==", + "dev": true, + "dependencies": { + "iconv-lite": "0.4.24" + } + }, + "node_modules/whatwg-mimetype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz", + "integrity": "sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g==", + "dev": true + }, + "node_modules/whatwg-url": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-6.5.0.tgz", + "integrity": "sha512-rhRZRqx/TLJQWUpQ6bmrt2UV4f0HCQ463yQuONJqC6fO2VoEb1pTYddbe59SkYq87aoM5A3bdhMZiUiVws+fzQ==", + "dev": true, + "dependencies": { + "lodash.sortby": "^4.7.0", + "tr46": "^1.0.1", + "webidl-conversions": "^4.0.2" + } + }, + "node_modules/which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "which": "bin/which" + } + }, + "node_modules/which-module": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", + "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", + "dev": true + }, + "node_modules/which-pm-runs": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/which-pm-runs/-/which-pm-runs-1.0.0.tgz", + "integrity": "sha1-Zws6+8VS4LVd9rd4DKdGFfI60cs=", + "dev": true + }, + "node_modules/word-wrap": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", + "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/wrap-ansi": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", + "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", + "dev": true, + "dependencies": { + "ansi-styles": "^3.2.0", + "string-width": "^3.0.0", + "strip-ansi": "^5.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/wrap-ansi/node_modules/string-width": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "dev": true, + "dependencies": { + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/wrap-ansi/node_modules/strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "dev": true, + "dependencies": { + "ansi-regex": "^4.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" + }, + "node_modules/write-file-atomic": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.4.1.tgz", + "integrity": "sha512-TGHFeZEZMnv+gBFRfjAcxL5bPHrsGKtnb4qsFAws7/vlh+QfwAaySIw4AXP9ZskTTh5GWu3FLuJhsWVdiJPGvg==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.1.11", + "imurmurhash": "^0.1.4", + "signal-exit": "^3.0.2" + } + }, + "node_modules/ws": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/ws/-/ws-5.2.2.tgz", + "integrity": "sha512-jaHFD6PFv6UgoIVda6qZllptQsMlDEJkTQcybzzXDYM1XO9Y8em691FGMPmM46WGyLU4z9KMgQN+qrux/nhlHA==", + "dev": true, + "dependencies": { + "async-limiter": "~1.0.0" + } + }, + "node_modules/xml-name-validator": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-3.0.0.tgz", + "integrity": "sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==", + "dev": true + }, + "node_modules/xmlchars": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz", + "integrity": "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==", + "dev": true + }, + "node_modules/y18n": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz", + "integrity": "sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==", + "dev": true + }, + "node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/yaml": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.0.tgz", + "integrity": "sha512-yr2icI4glYaNG+KWONODapy2/jDdMSDnrONSjblABjD9B4Z5LgiircSt8m8sRZFNi08kG9Sm0uSHtEmP3zaEGg==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/yargs": { + "version": "13.3.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.0.tgz", + "integrity": "sha512-2eehun/8ALW8TLoIl7MVaRUrg+yCnenu8B4kBlRxj3GJGDKU1Og7sMXPNm1BYyM1DOJmTZ4YeN/Nwxv+8XJsUA==", + "dev": true, + "dependencies": { + "cliui": "^5.0.0", + "find-up": "^3.0.0", + "get-caller-file": "^2.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^2.0.0", + "set-blocking": "^2.0.0", + "string-width": "^3.0.0", + "which-module": "^2.0.0", + "y18n": "^4.0.0", + "yargs-parser": "^13.1.1" + } + }, + "node_modules/yargs-parser": { + "version": "13.1.2", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz", + "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==", + "dev": true, + "dependencies": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + } + }, + "node_modules/yargs/node_modules/find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dev": true, + "dependencies": { + "locate-path": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/yargs/node_modules/locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dev": true, + "dependencies": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/yargs/node_modules/p-limit": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.1.tgz", + "integrity": "sha512-85Tk+90UCVWvbDavCLKPOLC9vvY8OwEX/RtKF+/1OADJMVlFfEHOiMTPVyxg7mk/dKa+ipdHm0OUkTvCpMTuwg==", + "dev": true, + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/yargs/node_modules/p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dev": true, + "dependencies": { + "p-limit": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/yargs/node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/yargs/node_modules/string-width": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "dev": true, + "dependencies": { + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/yargs/node_modules/strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "dev": true, + "dependencies": { + "ansi-regex": "^4.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "dev": true, + "engines": { + "node": ">=10" + } + } + }, "dependencies": { "@actions/core": { "version": "1.2.6", @@ -4320,24 +17563,32 @@ "dependencies": { "abbrev": { "version": "1.1.1", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", "bundled": true, "dev": true, "optional": true }, "ansi-regex": { "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", "bundled": true, "dev": true, "optional": true }, "aproba": { "version": "1.2.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", + "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", "bundled": true, "dev": true, "optional": true }, "are-we-there-yet": { "version": "1.1.5", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz", + "integrity": "sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w==", "bundled": true, "dev": true, "optional": true, @@ -4348,12 +17599,16 @@ }, "balanced-match": { "version": "1.0.0", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", "bundled": true, "dev": true, "optional": true }, "brace-expansion": { "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", "bundled": true, "dev": true, "optional": true, @@ -4364,36 +17619,48 @@ }, "chownr": { "version": "1.1.1", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.1.tgz", + "integrity": "sha512-j38EvO5+LHX84jlo6h4UzmOwi0UgW61WRyPtJz4qaadK5eY3BTS5TY/S1Stc3Uk2lIM6TPevAlULiEJwie860g==", "bundled": true, "dev": true, "optional": true }, "code-point-at": { "version": "1.1.0", + "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", + "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", "bundled": true, "dev": true, "optional": true }, "concat-map": { "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", "bundled": true, "dev": true, "optional": true }, "console-control-strings": { "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", + "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=", "bundled": true, "dev": true, "optional": true }, "core-util-is": { "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", "bundled": true, "dev": true, "optional": true }, "debug": { "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", "bundled": true, "dev": true, "optional": true, @@ -4403,24 +17670,32 @@ }, "deep-extend": { "version": "0.6.0", + "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", + "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", "bundled": true, "dev": true, "optional": true }, "delegates": { "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", + "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=", "bundled": true, "dev": true, "optional": true }, "detect-libc": { "version": "1.0.3", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz", + "integrity": "sha1-+hN8S9aY7fVc1c0CrFWfkaTEups=", "bundled": true, "dev": true, "optional": true }, "fs-minipass": { "version": "1.2.5", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-1.2.5.tgz", + "integrity": "sha512-JhBl0skXjUPCFH7x6x61gQxrKyXsxB5gcgePLZCwfyCGGsTISMoIeObbrvVeP6Xmyaudw4TT43qV2Gz+iyd2oQ==", "bundled": true, "dev": true, "optional": true, @@ -4430,12 +17705,16 @@ }, "fs.realpath": { "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", "bundled": true, "dev": true, "optional": true }, "gauge": { "version": "2.7.4", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", + "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", "bundled": true, "dev": true, "optional": true, @@ -4452,6 +17731,8 @@ }, "glob": { "version": "7.1.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz", + "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==", "bundled": true, "dev": true, "optional": true, @@ -4466,12 +17747,16 @@ }, "has-unicode": { "version": "2.0.1", + "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", + "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=", "bundled": true, "dev": true, "optional": true }, "iconv-lite": { "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", "bundled": true, "dev": true, "optional": true, @@ -4481,6 +17766,8 @@ }, "ignore-walk": { "version": "3.0.1", + "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-3.0.1.tgz", + "integrity": "sha512-DTVlMx3IYPe0/JJcYP7Gxg7ttZZu3IInhuEhbchuqneY9wWe5Ojy2mXLBaQFUQmo0AW2r3qG7m1mg86js+gnlQ==", "bundled": true, "dev": true, "optional": true, @@ -4490,6 +17777,8 @@ }, "inflight": { "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", "bundled": true, "dev": true, "optional": true, @@ -4500,18 +17789,24 @@ }, "inherits": { "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", "bundled": true, "dev": true, "optional": true }, "ini": { "version": "1.3.5", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz", + "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==", "bundled": true, "dev": true, "optional": true }, "is-fullwidth-code-point": { "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", "bundled": true, "dev": true, "optional": true, @@ -4521,12 +17816,16 @@ }, "isarray": { "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", "bundled": true, "dev": true, "optional": true }, "minimatch": { "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", "bundled": true, "dev": true, "optional": true, @@ -4536,12 +17835,16 @@ }, "minimist": { "version": "0.0.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", + "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", "bundled": true, "dev": true, "optional": true }, "minipass": { "version": "2.3.5", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-2.3.5.tgz", + "integrity": "sha512-Gi1W4k059gyRbyVUZQ4mEqLm0YIUiGYfvxhF6SIlk3ui1WVxMTGfGdQ2SInh3PDrRTVvPKgULkpJtT4RH10+VA==", "bundled": true, "dev": true, "optional": true, @@ -4552,6 +17855,8 @@ }, "minizlib": { "version": "1.2.1", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-1.2.1.tgz", + "integrity": "sha512-7+4oTUOWKg7AuL3vloEWekXY2/D20cevzsrNT2kGWm+39J9hGTCBv8VI5Pm5lXZ/o3/mdR4f8rflAPhnQb8mPA==", "bundled": true, "dev": true, "optional": true, @@ -4561,6 +17866,8 @@ }, "mkdirp": { "version": "0.5.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", "bundled": true, "dev": true, "optional": true, @@ -4570,12 +17877,16 @@ }, "ms": { "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", "bundled": true, "dev": true, "optional": true }, "needle": { "version": "2.3.0", + "resolved": "https://registry.npmjs.org/needle/-/needle-2.3.0.tgz", + "integrity": "sha512-QBZu7aAFR0522EyaXZM0FZ9GLpq6lvQ3uq8gteiDUp7wKdy0lSd2hPlgFwVuW1CBkfEs9PfDQsQzZghLs/psdg==", "bundled": true, "dev": true, "optional": true, @@ -4587,6 +17898,8 @@ }, "node-pre-gyp": { "version": "0.12.0", + "resolved": "https://registry.npmjs.org/node-pre-gyp/-/node-pre-gyp-0.12.0.tgz", + "integrity": "sha512-4KghwV8vH5k+g2ylT+sLTjy5wmUOb9vPhnM8NHvRf9dHmnW/CndrFXy2aRPaPST6dugXSdHXfeaHQm77PIz/1A==", "bundled": true, "dev": true, "optional": true, @@ -4605,6 +17918,8 @@ }, "nopt": { "version": "4.0.1", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-4.0.1.tgz", + "integrity": "sha1-0NRoWv1UFRk8jHUFYC0NF81kR00=", "bundled": true, "dev": true, "optional": true, @@ -4615,12 +17930,16 @@ }, "npm-bundled": { "version": "1.0.6", + "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-1.0.6.tgz", + "integrity": "sha512-8/JCaftHwbd//k6y2rEWp6k1wxVfpFzB6t1p825+cUb7Ym2XQfhwIC5KwhrvzZRJu+LtDE585zVaS32+CGtf0g==", "bundled": true, "dev": true, "optional": true }, "npm-packlist": { "version": "1.4.1", + "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-1.4.1.tgz", + "integrity": "sha512-+TcdO7HJJ8peiiYhvPxsEDhF3PJFGUGRcFsGve3vxvxdcpO2Z4Z7rkosRM0kWj6LfbK/P0gu3dzk5RU1ffvFcw==", "bundled": true, "dev": true, "optional": true, @@ -4631,6 +17950,8 @@ }, "npmlog": { "version": "4.1.2", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", + "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", "bundled": true, "dev": true, "optional": true, @@ -4643,18 +17964,24 @@ }, "number-is-nan": { "version": "1.0.1", + "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", + "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", "bundled": true, "dev": true, "optional": true }, "object-assign": { "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", "bundled": true, "dev": true, "optional": true }, "once": { "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", "bundled": true, "dev": true, "optional": true, @@ -4664,18 +17991,24 @@ }, "os-homedir": { "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", + "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", "bundled": true, "dev": true, "optional": true }, "os-tmpdir": { "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", "bundled": true, "dev": true, "optional": true }, "osenv": { "version": "0.1.5", + "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.5.tgz", + "integrity": "sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==", "bundled": true, "dev": true, "optional": true, @@ -4686,18 +18019,24 @@ }, "path-is-absolute": { "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", "bundled": true, "dev": true, "optional": true }, "process-nextick-args": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.0.tgz", + "integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==", "bundled": true, "dev": true, "optional": true }, "rc": { "version": "1.2.8", + "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", + "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", "bundled": true, "dev": true, "optional": true, @@ -4710,6 +18049,8 @@ "dependencies": { "minimist": { "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", "bundled": true, "dev": true, "optional": true @@ -4718,6 +18059,8 @@ }, "readable-stream": { "version": "2.3.6", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", + "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", "bundled": true, "dev": true, "optional": true, @@ -4733,6 +18076,8 @@ }, "rimraf": { "version": "2.6.3", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", + "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", "bundled": true, "dev": true, "optional": true, @@ -4742,62 +18087,80 @@ }, "safe-buffer": { "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", "bundled": true, "dev": true, "optional": true }, "safer-buffer": { "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", "bundled": true, "dev": true, "optional": true }, "sax": { "version": "1.2.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", "bundled": true, "dev": true, "optional": true }, "semver": { "version": "5.7.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", + "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", "bundled": true, "dev": true, "optional": true }, "set-blocking": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", "bundled": true, "dev": true, "optional": true }, "signal-exit": { "version": "3.0.2", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", + "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=", "bundled": true, "dev": true, "optional": true }, - "string-width": { - "version": "1.0.2", + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", "bundled": true, "dev": true, "optional": true, "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" + "safe-buffer": "~5.1.0" } }, - "string_decoder": { - "version": "1.1.1", + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", "bundled": true, "dev": true, "optional": true, "requires": { - "safe-buffer": "~5.1.0" + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" } }, "strip-ansi": { "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", "bundled": true, "dev": true, "optional": true, @@ -4807,12 +18170,16 @@ }, "strip-json-comments": { "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", "bundled": true, "dev": true, "optional": true }, "tar": { "version": "4.4.8", + "resolved": "https://registry.npmjs.org/tar/-/tar-4.4.8.tgz", + "integrity": "sha512-LzHF64s5chPQQS0IYBn9IN5h3i98c12bo4NCO7e0sGM2llXQ3p2FGC5sdENN4cTW48O915Sh+x+EXx7XW96xYQ==", "bundled": true, "dev": true, "optional": true, @@ -4828,12 +18195,16 @@ }, "util-deprecate": { "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", "bundled": true, "dev": true, "optional": true }, "wide-align": { "version": "1.1.3", + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz", + "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==", "bundled": true, "dev": true, "optional": true, @@ -4843,12 +18214,16 @@ }, "wrappy": { "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", "bundled": true, "dev": true, "optional": true }, "yallist": { "version": "3.0.3", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.0.3.tgz", + "integrity": "sha512-S+Zk8DEWE6oKpV+vI3qWkaK+jSbIK86pCwe2IF/xwIpQ8jEuxpw9NyaGjmp9+BoJv5FV2piqCDcoCtStppiq2A==", "bundled": true, "dev": true, "optional": true diff --git a/package.json b/package.json index e1ba0891..31f94478 100644 --- a/package.json +++ b/package.json @@ -11,7 +11,7 @@ "lint": "eslint src/**/*.ts", "lint-fix": "eslint --fix src/**/*.ts", "package": "ncc build --source-map --license licenses.txt", - "test": "jest", + "test": "jest", "all": "npm run build && npm run format && npm run lint && npm run package && npm test" }, "repository": { @@ -59,14 +59,14 @@ "eslint": "^7.19.0", "eslint-plugin-github": "^4.1.1", "eslint-plugin-jest": "^24.1.3", + "husky": "^4.3.8", "jest": "^24.9.0", "jest-circus": "^26.6.3", "js-yaml": "^4.0.0", + "lint-staged": "^10.5.4", "prettier": "2.2.1", "ts-jest": "^24.3.0", - "typescript": "^4.1.3", - "husky": "^4.3.8", - "lint-staged": "^10.5.4" + "typescript": "^4.1.3" }, "jest": { "testEnvironment": "node" diff --git a/src/main.ts b/src/main.ts index 182f1cdc..5f4e1658 100644 --- a/src/main.ts +++ b/src/main.ts @@ -29,7 +29,7 @@ export async function run(): Promise { if (ignoreTestFailures) { core.warning(`Workflow configured to ignore test failures`) } else { - core.error(`At least one failing test was found`) + core.setFailed('At least one failing test was found') } } core.setOutput('test-outcome', failingTestsFound ? 'Failed' : 'Passed') diff --git a/src/markup.ts b/src/markup.ts index 3c68d04d..7d2cade2 100644 --- a/src/markup.ts +++ b/src/markup.ts @@ -4,14 +4,18 @@ export function getMarkupForTrx(testData: TrxDataWrapper): string { const failedCount = testData.TrxData.TestRun.ResultSummary.Counters._failed const passedCount = testData.TrxData.TestRun.ResultSummary.Counters._passed const totalCount = testData.TrxData.TestRun.ResultSummary.Counters._total + const testOutcome = testData.TrxData.TestRun.ResultSummary._outcome const badgeCountText = failedCount > 0 ? `${`${failedCount}/${totalCount}`}` : `${`${passedCount}/${totalCount}`}` - const badgeStatusText = failedCount > 0 ? 'FAILED' : 'PASSED' - const badgeColor = failedCount > 0 ? 'red' : 'brightgreen' + const badgeStatusText = + failedCount > 0 || testOutcome === 'Failed' ? 'FAILED' : 'PASSED' + + const badgeColor = + failedCount > 0 || testOutcome === 'Failed' ? 'red' : 'brightgreen' return ` ![Generic badge](https://img.shields.io/badge/${badgeCountText}-${badgeStatusText}-${badgeColor}.svg) @@ -141,17 +145,39 @@ function getTestCounters(testData: TrxDataWrapper): string { function getTestResultsMarkup(testData: TrxDataWrapper): string { let resultsMarkup = '' - const unittests = testData.TrxData.TestRun.TestDefinitions.UnitTest - if (Array.isArray(unittests)) { - for (const data of unittests) { - resultsMarkup += getSingletestMarkup(data, testData) - } - return resultsMarkup.trim() + if (testData.IsEmpty) { + return getNoResultsMarkup(testData) } else { - return getSingletestMarkup(unittests as UnitTest, testData) + const unittests = testData.TrxData.TestRun.TestDefinitions.UnitTest + if (Array.isArray(unittests)) { + for (const data of unittests) { + resultsMarkup += getSingletestMarkup(data, testData) + } + return resultsMarkup.trim() + } else { + return getSingletestMarkup(unittests as UnitTest, testData) + } } } +function getNoResultsMarkup(testData: TrxDataWrapper): string { + const runInfo = testData.TrxData.TestRun.ResultSummary.RunInfos.RunInfo + const testResultIcon = getTestOutcomeIcon(runInfo._outcome) + const resultsMarkup = ` +
+ ${testResultIcon} ${runInfo._computerName} + + + + + + +
Run Info${runInfo.Text}
+
+` + return resultsMarkup +} + function getSingletestMarkup(data: UnitTest, testData: TrxDataWrapper): string { let resultsMarkup = '' const testResult = getUnitTestResult( @@ -251,7 +277,7 @@ function getUnitTestResult( function getTestOutcomeIcon(testOutcome: string): string { if (testOutcome === 'Passed') return ':heavy_check_mark:' - if (testOutcome === 'Failed') return ':x:' + if (testOutcome === 'Failed' || testOutcome === 'Error') return ':x:' if (testOutcome === 'NotExecuted') return ':radio_button:' return ':grey_question:' diff --git a/src/types/types.ts b/src/types/types.ts index df843798..af7f4917 100644 --- a/src/types/types.ts +++ b/src/types/types.ts @@ -107,6 +107,7 @@ export interface Counters { export interface ResultSummary { _outcome: string Counters: Counters + RunInfos: RunInfos } export interface TestRun { @@ -122,12 +123,24 @@ export interface TestRun { ResultSummary: ResultSummary } +export interface RunInfos { + RunInfo: RunInfo +} + +export interface RunInfo { + Text: string + _computerName: string + _outcome: string + _timestamp: Date +} + export interface TrxData { TestRun: TestRun } export interface TrxDataWrapper { TrxData: TrxData + IsEmpty: boolean ReportMetaData: { TrxFilePath: string ReportName: string diff --git a/src/utils.ts b/src/utils.ts index aba59cc7..3d4630bc 100644 --- a/src/utils.ts +++ b/src/utils.ts @@ -64,9 +64,16 @@ export async function transformTrxToJson( if (xmlParser.validate(xmlData.toString()) === true) { const jsonString = xmlParser.parse(xmlData, options, true) - const reportHeaders = getReportHeaders(jsonString) + const testData = jsonString as TrxData + const runInfos = testData.TestRun.ResultSummary.RunInfos + if (runInfos && runInfos.RunInfo._outcome === 'Failed') { + core.warning('There is trouble') + } + + const reportHeaders = getReportHeaders(testData) trxDataWrapper = { TrxData: jsonString as TrxData, + IsEmpty: IsEmpty(testData), ReportMetaData: { TrxFilePath: filePath, ReportName: `${reportHeaders.reportName}-check`, @@ -82,6 +89,10 @@ export async function transformTrxToJson( return trxDataWrapper } +function IsEmpty(testData: TrxData): boolean { + return testData.TestRun.TestDefinitions ? false : true +} + export async function readTrxFile(filePath: string): Promise { return await promises.readFile(filePath, 'utf8') } @@ -113,15 +124,22 @@ function getReportHeaders( ): {reportName: string; reportTitle: string} { let reportTitle = '' let reportName = '' - const unittests = data.TestRun.TestDefinitions.UnitTest + const isEmpty = IsEmpty(data) - const storage = getAssemblyName(unittests) + if (isEmpty) { + reportTitle = data.TestRun.ResultSummary.RunInfos.RunInfo._computerName + reportName = data.TestRun.ResultSummary.RunInfos.RunInfo._computerName.toUpperCase() + } else { + const unittests = data.TestRun?.TestDefinitions?.UnitTest + + const storage = getAssemblyName(unittests) - const dllName = storage.split('/').pop() + const dllName = storage.split('/').pop() - if (dllName) { - reportTitle = dllName.replace('.dll', '').toUpperCase().replace('.', ' ') - reportName = dllName.replace('.dll', '').toUpperCase() + if (dllName) { + reportTitle = dllName.replace('.dll', '').toUpperCase().replace('.', ' ') + reportName = dllName.replace('.dll', '').toUpperCase() + } } return {reportName, reportTitle} @@ -129,11 +147,15 @@ function getReportHeaders( function getAssemblyName(unittests: UnitTest[]): string { if (Array.isArray(unittests)) { - core.info('Its an array') + core.debug('Its an array') return unittests[0]._storage } else { const ut = unittests as UnitTest - core.info(`Its not an array: ${ut._storage}`) - return ut._storage + if (ut) { + core.debug(`Its not an array: ${ut._storage}`) + return ut._storage + } else { + return 'NOT FOUND' + } } } diff --git a/test-data/failing-tests/no-tests.trx b/test-data/failing-tests/no-tests.trx new file mode 100644 index 00000000..156ba5a4 --- /dev/null +++ b/test-data/failing-tests/no-tests.trx @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + [xUnit.net 00:00:00.00] xUnit.net VSTest Adapter v2.4.0 (64-bit .NET Core 3.1.14) + + + + + No test is available in /app/build/Waters.Trending.Server.AcceptanceTests.dll. Make sure that test discoverer & executors are registered and platform & framework version settings are appropriate and try again. + + + + \ No newline at end of file diff --git a/test-data/failing-tests/test-host-error.trx b/test-data/failing-tests/test-host-error.trx new file mode 100644 index 00000000..8f07991c --- /dev/null +++ b/test-data/failing-tests/test-host-error.trx @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + Testhost process exited with error: It was not possible to find any compatible framework version +The framework 'Microsoft.NETCore.App', version '3.1.0' was not found. + - The following frameworks were found: + 5.0.3 at [/usr/share/dotnet/shared/Microsoft.NETCore.App] +You can resolve the problem by installing the specified framework and/or SDK. +The specified framework can be found at: + - https://aka.ms/dotnet-core-applaunch?framework=Microsoft.NETCore.App&framework_version=3.1.0&arch=x64&rid=debian.10-x64 +. Please check the diagnostic logs for more information. + + + + \ No newline at end of file