From 0e961e165fd180b0568392201a96c4328bc79ec7 Mon Sep 17 00:00:00 2001 From: Rene Vergara Date: Mon, 11 Apr 2022 09:48:34 -0500 Subject: [PATCH] Initial public commit --- .browserslistrc | 17 + .editorconfig | 16 + .gitignore | 48 + LICENSE | 20 + README.md | 5 + angular.json | 110 + backend/app.js | 631 + backend/config/db.js | 6 + backend/config/fullnode.js | 6 + backend/models/country.js | 9 + backend/models/item.js | 10 + backend/models/order.js | 19 + backend/models/owner.js | 24 + backend/models/payment.js | 11 + backend/models/post.js | 8 + backend/models/price.js | 10 + backend/models/tx.js | 12 + backend/models/user.js | 12 + backend/models/zectxs.js | 12 + karma.conf.js | 44 + package-lock.json | 22386 ++++++++++++++++ package.json | 53 + server.js | 19 + src/app/app-routing.module.ts | 26 + src/app/app.component.css | 12 + src/app/app.component.html | 8 + src/app/app.component.spec.ts | 35 + src/app/app.component.ts | 16 + src/app/app.module.ts | 101 + src/app/auth-guard.service.ts | 62 + src/app/business/business.component.css | 18 + src/app/business/business.component.html | 90 + src/app/business/business.component.spec.ts | 25 + src/app/business/business.component.ts | 204 + src/app/cancel/cancel.component.css | 7 + src/app/cancel/cancel.component.html | 24 + src/app/cancel/cancel.component.ts | 29 + src/app/checkout/checkout.component.css | 3 + src/app/checkout/checkout.component.html | 25 + src/app/checkout/checkout.component.ts | 50 + src/app/country.model.ts | 5 + src/app/fullnode.service.ts | 96 + src/app/header/header.component.css | 29 + src/app/header/header.component.html | 14 + src/app/header/header.component.ts | 91 + src/app/item.model.ts | 7 + src/app/items/item-add/item-add.component.css | 7 + .../items/item-add/item-add.component.html | 13 + src/app/items/item-add/item-add.component.ts | 45 + .../item-create/item-create.component.css | 7 + .../item-create/item-create.component.html | 25 + .../item-create/item-create.component.ts | 58 + .../item-delete/item-delete.component.css | 3 + .../item-delete/item-delete.component.html | 10 + .../item-delete/item-delete.component.ts | 32 + .../items/item-list/item-list.component.css | 30 + .../items/item-list/item-list.component.html | 42 + .../items/item-list/item-list.component.ts | 180 + src/app/items/item.model.ts | 7 + src/app/items/items.service.ts | 62 + src/app/items/lineitem.model.ts | 5 + src/app/listorders/listorders.component.css | 32 + src/app/listorders/listorders.component.html | 47 + src/app/listorders/listorders.component.ts | 53 + src/app/login/login.component.css | 31 + src/app/login/login.component.html | 48 + src/app/login/login.component.ts | 220 + src/app/node-resolver.service.ts | 23 + src/app/order/order.component.css | 10 + src/app/order/order.component.html | 41 + src/app/order/order.component.ts | 124 + src/app/order/order.model.ts | 14 + src/app/order/order.service.ts | 225 + src/app/owner.model.ts | 22 + src/app/payment.model.ts | 7 + src/app/receipt-qr/receipt-qr.component.css | 4 + src/app/receipt-qr/receipt-qr.component.html | 13 + .../receipt-qr/receipt-qr.component.spec.ts | 25 + src/app/receipt-qr/receipt-qr.component.ts | 38 + src/app/receipt.service.spec.ts | 16 + src/app/receipt.service.ts | 91 + src/app/receipt/receipt.component.css | 36 + src/app/receipt/receipt.component.html | 44 + src/app/receipt/receipt.component.spec.ts | 25 + src/app/receipt/receipt.component.ts | 55 + src/app/scan/scan.component.css | 12 + src/app/scan/scan.component.html | 27 + src/app/scan/scan.component.ts | 56 + src/app/searchoptions.pipe.ts | 15 + src/app/settings/settings.component.css | 7 + src/app/settings/settings.component.html | 24 + src/app/settings/settings.component.ts | 69 + src/app/terms/terms.component.css | 8 + src/app/terms/terms.component.html | 106 + src/app/terms/terms.component.spec.ts | 25 + src/app/terms/terms.component.ts | 22 + src/app/tx.model.ts | 7 + src/app/user.model.ts | 9 + src/app/user.service.ts | 208 + src/app/viewer/viewer.component.css | 13 + src/app/viewer/viewer.component.html | 30 + src/app/viewer/viewer.component.ts | 133 + src/assets/.gitkeep | 0 src/assets/logo-new-white.png | Bin 0 -> 70785 bytes src/assets/spartan-zec.png | Bin 0 -> 985 bytes src/assets/zcash.jpg | Bin 0 -> 10164 bytes src/assets/zcash.png | Bin 0 -> 83846 bytes src/assets/zec-roboto.png | Bin 0 -> 767 bytes src/assets/zec.png | Bin 0 -> 1791 bytes src/assets/zgo-prp.png | Bin 0 -> 541936 bytes src/custom-theme.scss | 11 + src/environments/environment.prod.ts | 3 + src/environments/environment.ts | 16 + src/favicon.ico | Bin 0 -> 1218 bytes src/index.html | 17 + src/main.ts | 12 + src/polyfills.ts | 65 + src/styles.css | 27 + src/styles.scss | 1 + src/test.ts | 27 + tsconfig.app.json | 15 + tsconfig.json | 30 + tsconfig.spec.json | 18 + 123 files changed, 27248 insertions(+) create mode 100644 .browserslistrc create mode 100644 .editorconfig create mode 100644 .gitignore create mode 100644 LICENSE create mode 100644 README.md create mode 100644 angular.json create mode 100644 backend/app.js create mode 100644 backend/config/db.js create mode 100644 backend/config/fullnode.js create mode 100644 backend/models/country.js create mode 100644 backend/models/item.js create mode 100644 backend/models/order.js create mode 100644 backend/models/owner.js create mode 100644 backend/models/payment.js create mode 100644 backend/models/post.js create mode 100644 backend/models/price.js create mode 100644 backend/models/tx.js create mode 100644 backend/models/user.js create mode 100644 backend/models/zectxs.js create mode 100644 karma.conf.js create mode 100644 package-lock.json create mode 100644 package.json create mode 100644 server.js create mode 100644 src/app/app-routing.module.ts create mode 100644 src/app/app.component.css create mode 100644 src/app/app.component.html create mode 100644 src/app/app.component.spec.ts create mode 100644 src/app/app.component.ts create mode 100644 src/app/app.module.ts create mode 100644 src/app/auth-guard.service.ts create mode 100644 src/app/business/business.component.css create mode 100644 src/app/business/business.component.html create mode 100644 src/app/business/business.component.spec.ts create mode 100644 src/app/business/business.component.ts create mode 100644 src/app/cancel/cancel.component.css create mode 100644 src/app/cancel/cancel.component.html create mode 100644 src/app/cancel/cancel.component.ts create mode 100644 src/app/checkout/checkout.component.css create mode 100644 src/app/checkout/checkout.component.html create mode 100644 src/app/checkout/checkout.component.ts create mode 100644 src/app/country.model.ts create mode 100644 src/app/fullnode.service.ts create mode 100644 src/app/header/header.component.css create mode 100644 src/app/header/header.component.html create mode 100644 src/app/header/header.component.ts create mode 100644 src/app/item.model.ts create mode 100644 src/app/items/item-add/item-add.component.css create mode 100644 src/app/items/item-add/item-add.component.html create mode 100644 src/app/items/item-add/item-add.component.ts create mode 100644 src/app/items/item-create/item-create.component.css create mode 100644 src/app/items/item-create/item-create.component.html create mode 100644 src/app/items/item-create/item-create.component.ts create mode 100644 src/app/items/item-delete/item-delete.component.css create mode 100644 src/app/items/item-delete/item-delete.component.html create mode 100644 src/app/items/item-delete/item-delete.component.ts create mode 100644 src/app/items/item-list/item-list.component.css create mode 100644 src/app/items/item-list/item-list.component.html create mode 100644 src/app/items/item-list/item-list.component.ts create mode 100644 src/app/items/item.model.ts create mode 100644 src/app/items/items.service.ts create mode 100644 src/app/items/lineitem.model.ts create mode 100644 src/app/listorders/listorders.component.css create mode 100644 src/app/listorders/listorders.component.html create mode 100644 src/app/listorders/listorders.component.ts create mode 100644 src/app/login/login.component.css create mode 100644 src/app/login/login.component.html create mode 100644 src/app/login/login.component.ts create mode 100644 src/app/node-resolver.service.ts create mode 100644 src/app/order/order.component.css create mode 100644 src/app/order/order.component.html create mode 100644 src/app/order/order.component.ts create mode 100644 src/app/order/order.model.ts create mode 100644 src/app/order/order.service.ts create mode 100644 src/app/owner.model.ts create mode 100644 src/app/payment.model.ts create mode 100644 src/app/receipt-qr/receipt-qr.component.css create mode 100644 src/app/receipt-qr/receipt-qr.component.html create mode 100644 src/app/receipt-qr/receipt-qr.component.spec.ts create mode 100644 src/app/receipt-qr/receipt-qr.component.ts create mode 100644 src/app/receipt.service.spec.ts create mode 100644 src/app/receipt.service.ts create mode 100644 src/app/receipt/receipt.component.css create mode 100644 src/app/receipt/receipt.component.html create mode 100644 src/app/receipt/receipt.component.spec.ts create mode 100644 src/app/receipt/receipt.component.ts create mode 100644 src/app/scan/scan.component.css create mode 100644 src/app/scan/scan.component.html create mode 100644 src/app/scan/scan.component.ts create mode 100644 src/app/searchoptions.pipe.ts create mode 100644 src/app/settings/settings.component.css create mode 100644 src/app/settings/settings.component.html create mode 100644 src/app/settings/settings.component.ts create mode 100644 src/app/terms/terms.component.css create mode 100644 src/app/terms/terms.component.html create mode 100644 src/app/terms/terms.component.spec.ts create mode 100644 src/app/terms/terms.component.ts create mode 100644 src/app/tx.model.ts create mode 100644 src/app/user.model.ts create mode 100644 src/app/user.service.ts create mode 100644 src/app/viewer/viewer.component.css create mode 100644 src/app/viewer/viewer.component.html create mode 100644 src/app/viewer/viewer.component.ts create mode 100644 src/assets/.gitkeep create mode 100644 src/assets/logo-new-white.png create mode 100644 src/assets/spartan-zec.png create mode 100644 src/assets/zcash.jpg create mode 100644 src/assets/zcash.png create mode 100644 src/assets/zec-roboto.png create mode 100644 src/assets/zec.png create mode 100644 src/assets/zgo-prp.png create mode 100644 src/custom-theme.scss create mode 100644 src/environments/environment.prod.ts create mode 100644 src/environments/environment.ts create mode 100644 src/favicon.ico create mode 100644 src/index.html create mode 100644 src/main.ts create mode 100644 src/polyfills.ts create mode 100644 src/styles.css create mode 100644 src/styles.scss create mode 100644 src/test.ts create mode 100644 tsconfig.app.json create mode 100644 tsconfig.json create mode 100644 tsconfig.spec.json diff --git a/.browserslistrc b/.browserslistrc new file mode 100644 index 0000000..427441d --- /dev/null +++ b/.browserslistrc @@ -0,0 +1,17 @@ +# This file is used by the build system to adjust CSS and JS output to support the specified browsers below. +# For additional information regarding the format and rule options, please see: +# https://github.com/browserslist/browserslist#queries + +# For the full list of supported browsers by the Angular framework, please see: +# https://angular.io/guide/browser-support + +# You can see what browsers were selected by your queries by running: +# npx browserslist + +last 1 Chrome version +last 1 Firefox version +last 2 Edge major versions +last 2 Safari major versions +last 2 iOS major versions +Firefox ESR +not IE 11 # Angular supports IE 11 only as an opt-in. To opt-in, remove the 'not' prefix on this line. diff --git a/.editorconfig b/.editorconfig new file mode 100644 index 0000000..59d9a3a --- /dev/null +++ b/.editorconfig @@ -0,0 +1,16 @@ +# Editor configuration, see https://editorconfig.org +root = true + +[*] +charset = utf-8 +indent_style = space +indent_size = 2 +insert_final_newline = true +trim_trailing_whitespace = true + +[*.ts] +quote_type = single + +[*.md] +max_line_length = off +trim_trailing_whitespace = false diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..ae22f0b --- /dev/null +++ b/.gitignore @@ -0,0 +1,48 @@ +# See http://help.github.com/ignore-files/ for more about ignoring files. + +# compiled output +/dist +/tmp +/out-tsc +# Only exists if Bazel was run +/bazel-out + +# dependencies +/node_modules + +# profiling files +chrome-profiler-events*.json + +# IDEs and editors +/.idea +.project +.classpath +.c9/ +*.launch +.settings/ +*.sublime-workspace + +# IDE - VSCode +.vscode/* +!.vscode/settings.json +!.vscode/tasks.json +!.vscode/launch.json +!.vscode/extensions.json +.history/* + +# misc +/.sass-cache +/connect.lock +/coverage +/libpeerconnection.log +npm-debug.log +yarn-error.log +testem.log +/typings + +# System Files +.DS_Store +Thumbs.db + +txs.json +.angular diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..dd436ba --- /dev/null +++ b/LICENSE @@ -0,0 +1,20 @@ +The MIT License (MIT) +Copyright © 2022 Vergara Technologies LLC + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the “Software”), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/README.md b/README.md new file mode 100644 index 0000000..29fdabc --- /dev/null +++ b/README.md @@ -0,0 +1,5 @@ +# ZGo - The Zcash Register + +A Point-of-Sale application for accepting payments in [Zcash](https://z.cash/) + +Visit our [ZGo Homepage](https://zgo.cash/) for more details. diff --git a/angular.json b/angular.json new file mode 100644 index 0000000..8ff5a41 --- /dev/null +++ b/angular.json @@ -0,0 +1,110 @@ +{ + "$schema": "./node_modules/@angular/cli/lib/config/schema.json", + "cli": { + "analytics": false + }, + "version": 1, + "newProjectRoot": "projects", + "projects": { + "zgo": { + "projectType": "application", + "schematics": { + "@schematics/angular:application": { + "strict": true + } + }, + "root": "", + "sourceRoot": "src", + "prefix": "app", + "architect": { + "build": { + "builder": "@angular-devkit/build-angular:browser", + "options": { + "outputPath": "dist/zgo", + "index": "src/index.html", + "main": "src/main.ts", + "polyfills": "src/polyfills.ts", + "tsConfig": "tsconfig.app.json", + "assets": [ + "src/favicon.ico", + "src/assets" + ], + "styles": [ + "src/styles.scss" + ], + "scripts": [] + }, + "configurations": { + "production": { + "budgets": [ + { + "type": "initial", + "maximumWarning": "500kb", + "maximumError": "1mb" + }, + { + "type": "anyComponentStyle", + "maximumWarning": "2kb", + "maximumError": "4kb" + } + ], + "fileReplacements": [ + { + "replace": "src/environments/environment.ts", + "with": "src/environments/environment.prod.ts" + } + ], + "outputHashing": "all" + }, + "development": { + "buildOptimizer": false, + "optimization": false, + "vendorChunk": true, + "extractLicenses": false, + "sourceMap": true, + "namedChunks": true + } + }, + "defaultConfiguration": "production" + }, + "serve": { + "builder": "@angular-devkit/build-angular:dev-server", + "configurations": { + "production": { + "browserTarget": "zgo:build:production" + }, + "development": { + "browserTarget": "zgo:build:development" + } + }, + "defaultConfiguration": "development" + }, + "extract-i18n": { + "builder": "@angular-devkit/build-angular:extract-i18n", + "options": { + "browserTarget": "zgo:build" + } + }, + "test": { + "builder": "@angular-devkit/build-angular:karma", + "options": { + "main": "src/test.ts", + "polyfills": "src/polyfills.ts", + "tsConfig": "tsconfig.spec.json", + "karmaConfig": "karma.conf.js", + "assets": [ + "src/favicon.ico", + "src/assets" + ], + "styles": [ + "./node_modules/@angular/material/prebuilt-themes/indigo-pink.css", + "src/styles.css" + ], + "scripts": [] + } + } + } + } + }, + "defaultProject": "zgo" +} diff --git a/backend/app.js b/backend/app.js new file mode 100644 index 0000000..31051c1 --- /dev/null +++ b/backend/app.js @@ -0,0 +1,631 @@ +const express = require('express'); +const app = express(); +const bodyparser = require('body-parser'); +const cors = require('cors'); +const crypto = require('crypto'); +const postmodel = require('./models/post'); +const usermodel = require('./models/user'); +const ownermodel = require('./models/owner'); +const itemmodel = require('./models/item'); +const ordermodel = require('./models/order'); +const pricemodel = require('./models/price'); +const txmodel = require('./models/tx'); +const paymentmodel = require('./models/payment'); +const zecTxModel = require('./models/zectxs.js'); +const countryModel = require('./models/country.js'); +const mongoose = require('mongoose'); +const stdrpc = require('stdrpc'); +const CoinGecko = require('coingecko-api'); +var URLSafeBase64 = require('urlsafe-base64'); +var Buffer = require('buffer/').Buffer; + +var db = require('./config/db'); +mongoose.connect('mongodb://'+db.user+':'+db.password+'@'+db.server+'/'+db.database).then(() => { + console.log("connecting-- ", db.database); +}).catch(() => { + console.log("connection failed!"); +}); + +var fullnode = require('./config/fullnode'); +const rpc = stdrpc({ + url: fullnode.url, + username: fullnode.username, + password: fullnode.password +}); + +var async = require('async'); + +const CoinGeckoClient = new CoinGecko(); + +var intervalObject = setInterval( function() { + CoinGeckoClient.simple.price({ + ids: ['zcash'], + vs_currencies: ['usd', 'gbp', 'eur', 'cad', 'aud'] + }).then((data) => { + pricemodel.findOneAndUpdate({currency: 'usd'}, { price: data.data.zcash.usd, timestamp: Date.now()}, {new:true, upsert:true}, function(err,docs) { + if(err) { + console.log(err); + } + }); + pricemodel.findOneAndUpdate({currency: 'gbp'}, { price: data.data.zcash.gbp, timestamp: Date.now()}, {new:true, upsert:true}, function(err,docs) { + if(err) { + console.log(err); + } + }); + pricemodel.findOneAndUpdate({currency: 'eur'}, { price: data.data.zcash.eur, timestamp: Date.now()}, {new:true, upsert:true}, function(err,docs) { + if(err) { + console.log(err); + } + }); + pricemodel.findOneAndUpdate({currency: 'cad'}, { price: data.data.zcash.cad, timestamp: Date.now()}, {new:true, upsert:true}, function(err,docs) { + if(err) { + console.log(err); + } + }); + pricemodel.findOneAndUpdate({currency: 'aud'}, { price: data.data.zcash.aud, timestamp: Date.now()}, {new:true, upsert:true}, function(err,docs) { + if(err) { + console.log(err); + } + }); + }).catch((err) => { + console.log(err); + }); +}, 90000); + +function hexToString(hexString) { + var str = ''; + for (var n=0; n < hexString.length; n +=2) { + str += String.fromCharCode(parseInt(hexString.substr(n, 2), 16)); + } + return str; +} + +function sendPin(pin, address) { + //var memo = URLSafeBase64.encode(Buffer.from('ZGO pin: '.concat(pin))); + var memo = Buffer.from('ZGo PIN: '.concat(pin)).toString('hex'); + //console.log(typeof(memo)); + var amounts = [ + { + address: address, + amount: 0.00000001, + memo: memo + } + ]; + rpc.z_sendmany(fullnode.addr, amounts).catch((err) => { + console.log('Sendmany', err); + }); +} + +var blockInterval = setInterval( function() { + console.log('Node periodic Zcash scan'); + rpc.z_listreceivedbyaddress(fullnode.addr, 1).then(txs => { + var re = /.*ZGO::(.*)\sReply-To:\s(z\w+)/; + var pay = /.*ZGOp::(.*)/; + async.each (txs, function(txData, callback) { + var memo = hexToString(txData.memo).replace(/\0/g, ''); + if (!txData.change) { + zecTxModel.updateOne({txid: txData.txid}, { txid: txData.txid, confirmations: txData.confirmations, amount:txData.amount, memo: memo}, {new:true, upsert:true}, function(err,docs) { + if (err) { + console.log(err); + } + }); + } + if (re.test(memo) && txData.confirmations < 100) { + //console.log('Processing tx:', memo); + var match = re.exec(memo); + if (match != null) { + var address = match[2]; + var session = match[1]; + var blocktime = txData.blocktime; + var amount = txData.amount; + var expiration = blocktime; + //console.log(' ', session, blocktime); + txmodel.updateOne({txid: txData.txid}, { txid: txData.txid, address: address, session: session, confirmations: txData.confirmations, amount:txData.amount, memo: memo}, {new:true, upsert:true}, function(err,docs) { + if (err) { + console.log(err); + } + }); + if (txData.confirmations >= 2 ) { + usermodel.findOne({address: address, session: session, blocktime: blocktime}).then(function(doc){ + if (doc == null){ + console.log('User not found', session, blocktime); + const n = crypto.randomInt(0, 10000000); + const pin = n.toString().padStart(6, '0'); + sendPin(pin, address); + var user = new usermodel({ + address: address, + session: session, + blocktime: blocktime, + pin: pin, + validated: false + }); + user.save(function(error) { + if (error) { + console.log(error); + } + + console.log('User saved'); + }); + } + }); + } + } + } + var exptime = 0; + if (pay.test(memo) && txData.confirmations < 100) { + var match2 = pay.exec(memo); + if (match2 != null) { + var session = match2[1]; + } + if (txData.amount >= 0.001 && txData.amount < 0.005){ + exptime = txData.blocktime + 3600; + } else if (txData.amount >= 0.005 && txData.amount < 0.025){ + exptime = txData.blocktime + 24*3600; + } else if (txData.amount >= 0.025 && txData.amount < 0.1) { + exptime = txData.blocktime + 7*24*3600; + } else if (txData.amount >= 0.1) { + exptime = txData.blocktime + 4*7*24*3600; + } + + usermodel.findOne({session: session}).then(function(doc){ + if(doc != null) { + paymentmodel.findOne({address: doc.address, blocktime: txData.blocktime, amount: txData.amount}).then(function(payments){ + if(payments == null){ + var payment = new paymentmodel({ + address: doc.address, + blocktime: txData.blocktime, + expiration: new Date(exptime * 1000), + amount: txData.amount, + session: doc.session + }); + + payment.save(function(error) { + if (error) { + console.log(error); + } else { + console.log('Payment saved'); + } + }); + } + }); + } + }); + } + }, function (err) { + if (err) { + console.log(err); + } + console.log('Txs synced'); + }); + + }); +}, 75000); + +var payCheck = setInterval( function() { + + ownermodel.find({}).then((documents) => { + if(documents.length > 0){ + //console.log(documents); + async.each (documents, function(document, callback) { + paymentmodel.findOne({ address: document.address, expiration: {$gt: Date.now()}}).then(payment => { + if (payment != null){ + document.paid = true; + document.save(); + } else { + document.paid = false; + document.save(); + } + }); + }, function (err) { + if (err) { + console.log(err); + } else { + console.log("Owners checked for payment"); + } + }); + } + }); +}, 60000); + +app.use(cors()); +app.options('*', cors()); + +app.use(bodyparser.json()); + +app.use((req, res, next) => { + res.setHeader("Access-Control-Allow-Origin", "*"); + res.setHeader("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept"); + res.setHeader("Access-Control-Allow-Methods", "GET, POST, PATCH, DELETE, OPTIONS"); + next(); +}); + +app.use((req, res, next) => { + if (req.headers.authorization !== 'YourAPIkey' ) { + return res.status(401).send('Authorization required.'); + } else { + next(); + } +}); + + +app.get('/api/countries', (req, res, next) => { + console.log('Get: /api/countries'); + countryModel.find({}).then((documents) => { + if (documents != null) { + res.status(200).json({ + message: 'Country data found', + countries: documents + }); + } else { + res.status(204).json({ + message: 'No country data available' + }); + } + }); +}); + +app.get('/api/users', (req, res, next) => { + console.log('Get: /api/users'); + usermodel.find({'address': req.query.address, 'session': req.query.session, 'expired': { $ne: true}}). + then((documents) => { + if (documents != null) { + res.status(200).json({ + message: 'Users found successfully', + users: documents + }); + } else { + res.status(204).json({ + message: 'User not found', + users: null + }); + } + }); +}); + +app.get('/api/pending', (req, res, next) => { + console.log('Get: /api/pending', req.query.session); + txmodel.find({'session': req.query.session, 'confirmations': {$lt: 10}}). + then((documents) => { + if (documents.length > 0) { + //console.log('pending', documents); + res.status(200).json({ + message: 'Found pending txs', + txs: documents + }); + } else { + //console.log('pending not found', documents); + res.status(204).json({ + message: 'No txs found', + txs: null + }); + } + }); +}); + +app.get('/api/getuser', (req, res, next) => { + console.log('Get: /api/getuser/', req.query.session); + usermodel.find({'session': req.query.session, 'expired': { $ne: true }}). + then((documents) => { + if(documents.length > 0){ + //console.log(documents); + console.log(' found user'); + res.status(200).json({ + message: 'User found!', + user: documents + }); + } else { + console.log(' did not find user'); + res.status(204).json({ + message: 'User not found!', + user: null + }); + } + }); +}); + +app.get('/api/blockheight', (req, res, next) => { + console.log('Get: /api/blockheight'); + rpc.getblock("-1", 1).then(block => { + res.status(200).json({ + message: 'Found block', + height: block.height + }); + }); +}); + +app.get('/api/txs', (req, res, next) => { + console.log('Get: /api/txs'); + rpc.z_listreceivedbyaddress(fullnode.addr, 10).then(txs => { + res.status(200).json({ + message: 'Transactions found', + txs: txs + }); + }); +}); + +app.get('/api/getaddr', (req, res, next) => { + console.log('Get: /api/getaddr'); + res.status(200).json({ + message: 'Sending address', + addr: fullnode.addr + }); +}); + +app.get('/api/getowner', (req, res, next) => { + console.log('Get: /api/getowner'); + ownermodel.find({'address': req.query.address}).then((documents) => { + if(documents.length > 0){ + //console.log(documents); + res.status(200).json({ + message: 'Owner found!', + owner: documents + }); + } else { + res.status(204).json({ + message: 'Owner not found!', + owner: null + }); + } + }); + +}); + +app.post('/api/addowner', (req, res, next) => { + console.log('Post: /api/addowner'); + const owner = new ownermodel(req.body.owner); + owner.save(); + res.status(201).json({ + message: 'Owner added successfully' + }); +}); + +app.post('/api/validateuser', (req, res, next) => { + console.log('Post: /api/validateuser'); + usermodel.findByIdAndUpdate(req.body.user._id, req.body.user, + function(err, docs) { + if (err) { + console.log(err); + } else { + res.status(201).json({ + message: 'User Validated', + user: docs + }); + } + }); +}); + +app.post('/api/updateowner', (req, res, next) => { + console.log('Post: /api/updateowner'); + ownermodel.findByIdAndUpdate(req.body.owner._id, req.body.owner, + function(err, docs) { + if (err) { + console.log(err); + } else { + console.log(docs); + res.status(201).json({ + message: 'Owner updated', + owner: docs + }); + } + }); +}); + +app.get('/api/getitems', (req, res, next) => { + console.log('Get: /api/getitems'); + //console.log('getitems', req.query.address); + if (req.query.address.length > 0 ) { + const items = itemmodel.find({user: req.query.address}).then((documents) => { + if(documents.length > 0){ + //console.log(documents); + res.status(200).json({ + message: 'items found!', + items: documents + }); + } else { + res.status(204).json({ + message: 'items not found!', + items: [] + }); + } + }); + } else { + res.status(204).json({ + message: 'no address', + items: [] + }); + } +}); + +app.post('/api/item', (req, res, next) => { + console.log('Post: /api/item', req.body.item); + if ( req.body.item._id == null ) { + const item = new itemmodel(req.body.item); + item.save(); + res.status(201).json({ + message: 'Item added' + }); + } else { + console.log('Editing', req.body.item._id); + itemmodel.findByIdAndUpdate(req.body.item._id, {'name': req.body.item.name, 'description': req.body.item.description, 'cost': req.body.item.cost}, + function(err, docs) { + if (err) { + console.log(err); + } else { + res.status(201).json({ + message: 'Item updated' + }); + } + }); + } +}); + +app.delete('/api/item/:id', (req, res, next) => { + console.log('delete endpoint', req.params.id); + itemmodel.findByIdAndDelete(req.params.id, function (err, docs) { + if (err) { + console.log(err); + } else { + res.status(200).json({ + message: 'Item deleted' + }); + } + }); +}); + +app.delete('/api/user/:id', (req, res, next) => { + console.log("Delete user", req.params.id); + usermodel.findByIdAndUpdate(req.params.id, {expired: true}, function(err, docs) { + if (err) { + console.log(err); + } else { + res.status(200).json({ + message: 'User session deleted' + }); + } + }); +}); + +app.get('/api/price', (req, res, next) => { + console.log('Get /api/price'); + const price = pricemodel.findOne({currency: req.query.currency}).then((document) => { + if (document != null) { + res.status(200).json({ + message: 'price found!', + price: document + }); + } else { + res.status(204).json({ + message: 'no price found!', + order: null + }); + } + }); +}); + +app.get('/api/allorders', (req, res, next) => { + console.log('Get /api/allorders'); + if (req.query.address.length > 0) { + const orders = ordermodel.find({address: req.query.address, closed: true}).then((documents) => { + if (documents != null) { + res.status(200).json({ + message: 'orders found!', + orders: documents + }); + } else { + res.status(204).json({ + message: 'no orders found', + orders: null + }); + } + }); + } +}); + +app.get('/api/receipt', (req, res, next) => { + console.log('Get /api/receipt'); + if (req.query.id.length > 0) { + const order = ordermodel.findOne({_id: req.query.id}).then((documents) => { + if (documents != null) { + console.log(documents); + res.status(200).json({ + message: 'order found!', + order: documents + }); + } else { + res.status(204).json({ + message: 'no order found!', + order: null + }); + } + }); + } else { + res.status(204).json({ + message: 'no valid ID received', + order: null + }); + } +}); + +app.get('/api/order', (req, res, next) => { + console.log('Get /api/order'); + if (req.query.session.length > 0) { + const order = ordermodel.findOne({session: req.query.session, closed: false}).then((documents) => { + if (documents != null) { + console.log(documents); + res.status(200).json({ + message: 'order found!', + order: documents + }); + } else { + res.status(204).json({ + message: 'no order found!', + order: null + }); + } + }); + } else { + res.status(204).json({ + message: 'no session received', + order: null + }); + } +}); + +app.post('/api/order', (req, res, next) => { + console.log('Post /api/order', req.body); + if(req.body.order._id == null) { + const order = new ordermodel(req.body.order); + order.save(); + res.status(200).json({ + message: 'Order added', + order: order + }); + } else { + ordermodel.findByIdAndUpdate(req.body.order._id, { + address: req.body.order.address, + session: req.body.order.session, + price: req.body.order.price, + total: req.body.order.total, + currency: req.body.order.currency, + totalZec: req.body.order.totalZec, + closed: req.body.order.closed + }, function(err, docs) { + if(err) { + console.log(err); + } else { + res.status(200).json({ + message: 'Order updated' + }); + } + }); + } +}); + +app.post('/api/lineitem', (req, res, next) => { + console.log('Post /api/lineitem'); + ordermodel.findByIdAndUpdate(req.body.order_id, { $push: {lines: req.body.line}}, function(err,docs) { + if (err) { + console.log(err); + } else { + res.status(200).json({ + message: 'Item added to order' + }); + } + }); +}); + +app.delete('/api/order/:id', (req, res, next) => { + console.log('delete order endpoint', req.params.id); + ordermodel.findByIdAndDelete(req.params.id, function (err, docs) { + if (err) { + console.log(err); + } else { + console.log(docs); + res.status(200).json({ + message: 'Order deleted' + }); + } + }); +}); + +module.exports = app; diff --git a/backend/config/db.js b/backend/config/db.js new file mode 100644 index 0000000..f3fe8e7 --- /dev/null +++ b/backend/config/db.js @@ -0,0 +1,6 @@ +module.exports = { + server : 'localhost:27017', + user: 'dbuser', + password: 'dbpasswd', + database: 'zgo' +} diff --git a/backend/config/fullnode.js b/backend/config/fullnode.js new file mode 100644 index 0000000..1f733f8 --- /dev/null +++ b/backend/config/fullnode.js @@ -0,0 +1,6 @@ +module.exports = { + url: 'http://localhost:8232', + username: 'user', + password: 'passwd', + addr: 'zaddress123123123123123123....' +} diff --git a/backend/models/country.js b/backend/models/country.js new file mode 100644 index 0000000..520cead --- /dev/null +++ b/backend/models/country.js @@ -0,0 +1,9 @@ +const mongoose = require('mongoose'); + +const countrySchema = mongoose.Schema({ + name: {type: String, required: true}, + code: {type: Number, required: true} +}); + + +module.exports = mongoose.model('Country', countrySchema); diff --git a/backend/models/item.js b/backend/models/item.js new file mode 100644 index 0000000..d45aa7d --- /dev/null +++ b/backend/models/item.js @@ -0,0 +1,10 @@ +const mongoose = require('mongoose'); + +const itemSchema = mongoose.Schema({ + name: {type: String, required: true}, + description: {type: String, required: true}, + user: {type: String, required: true}, + cost: {type: Number, required: true} +}); + +module.exports = mongoose.model('Item', itemSchema); diff --git a/backend/models/order.js b/backend/models/order.js new file mode 100644 index 0000000..70044da --- /dev/null +++ b/backend/models/order.js @@ -0,0 +1,19 @@ +const mongoose = require('mongoose'); + +const orderSchema = mongoose.Schema({ + address: {type: String, required: true}, + session: {type: String, required: true}, + timestamp: {type: Date, required: true, default: Date.now}, + closed: { type: Boolean, required: true, default:false }, + price: { type: Number, required: true}, + currency: {type: String, required: true}, + total: { type: Number}, + totalZec: {type: Number}, + lines: [{ + qty: {type: Number, required: true, default: 1}, + name: { type: String, required: true}, + cost: { type: Number, required: true, default: 0} + }] +}); + +module.exports = mongoose.model('Order', orderSchema); diff --git a/backend/models/owner.js b/backend/models/owner.js new file mode 100644 index 0000000..f4205b9 --- /dev/null +++ b/backend/models/owner.js @@ -0,0 +1,24 @@ +const mongoose = require('mongoose'); + +const ownerSchema = mongoose.Schema({ + address: {type: String, required:true, unique:true}, + name: {type: String, required:true}, + currency: {type: String, required:true, default: 'usd'}, + tax: {type: Boolean, required: true, default: false}, + taxValue: {type: Number }, + vat: {type: Boolean, required:true, default: false}, + vatValue: {type: Number }, + first: {type: String, required:true}, + last: {type: String, required:true}, + email: {type: String, required:true}, + street: {type: String, required:true}, + city: {type: String, required: true}, + state: {type: String, required: true}, + postal: {type: String, required: true}, + phone: {type: String}, + website: {type: String}, + paid: {type: Boolean, required: true, default: false}, + zats: {type: Boolean, required: true, default: false} +}); + +module.exports = mongoose.model('Owner', ownerSchema); diff --git a/backend/models/payment.js b/backend/models/payment.js new file mode 100644 index 0000000..576b709 --- /dev/null +++ b/backend/models/payment.js @@ -0,0 +1,11 @@ +const mongoose = require('mongoose'); + +const paymentSchema = mongoose.Schema({ + address: {type: String, required: true}, + blocktime: {type: Number, required: true}, + expiration: {type: Date, required: true}, + amount: {type: Number, required: true}, + session: {type: String, required: true} +}); + +module.exports = mongoose.model('Payment', paymentSchema); diff --git a/backend/models/post.js b/backend/models/post.js new file mode 100644 index 0000000..80130e2 --- /dev/null +++ b/backend/models/post.js @@ -0,0 +1,8 @@ +const mongoose = require('mongoose'); + +const postSchema = mongoose.Schema({ + title: {type: String, required:true}, + content: {type: String, required:true} +}); + +module.exports = mongoose.model('Post', postSchema); diff --git a/backend/models/price.js b/backend/models/price.js new file mode 100644 index 0000000..7d3aaeb --- /dev/null +++ b/backend/models/price.js @@ -0,0 +1,10 @@ +const mongoose = require('mongoose'); + +const priceSchema = mongoose.Schema({ + currency: {type: String, required: true}, + price: {type: Number, required: true}, + timestamp: {type: Date, required: true, default: Date.now} +}); + + +module.exports = mongoose.model('Price', priceSchema); diff --git a/backend/models/tx.js b/backend/models/tx.js new file mode 100644 index 0000000..0140616 --- /dev/null +++ b/backend/models/tx.js @@ -0,0 +1,12 @@ +const mongoose = require('mongoose'); + +const txSchema = mongoose.Schema({ + address: {type: String}, + session: {type: String, required:true}, + confirmations: {type: Number, required:true}, + amount: {type: Number, required:true}, + txid: {type:String, required:true, unique: true}, + memo: {type:String} +}); + +module.exports = mongoose.model('Tx', txSchema); diff --git a/backend/models/user.js b/backend/models/user.js new file mode 100644 index 0000000..11a983b --- /dev/null +++ b/backend/models/user.js @@ -0,0 +1,12 @@ +const mongoose = require('mongoose'); + +const userSchema = mongoose.Schema({ + address: {type: String, required:true}, + session: {type: String, required:true}, + blocktime: {type: Number, required:true}, + pin: {type: String, required:true}, + validated: {type: Boolean, required:true}, + expired: {type: Boolean, required:true, default: false} +}); + +module.exports = mongoose.model('User', userSchema); diff --git a/backend/models/zectxs.js b/backend/models/zectxs.js new file mode 100644 index 0000000..8ad2553 --- /dev/null +++ b/backend/models/zectxs.js @@ -0,0 +1,12 @@ +const mongoose = require('mongoose'); + +const ZecTxSchema = mongoose.Schema({ + address: {type: String}, + session: {type: String, required:true}, + confirmations: {type: Number, required:true}, + amount: {type: Number, required:true}, + txid: {type:String, required:true, unique: true}, + memo: {type:String} +}); + +module.exports = mongoose.model('ZecTx', ZecTxSchema); diff --git a/karma.conf.js b/karma.conf.js new file mode 100644 index 0000000..f0a43fa --- /dev/null +++ b/karma.conf.js @@ -0,0 +1,44 @@ +// Karma configuration file, see link for more information +// https://karma-runner.github.io/1.0/config/configuration-file.html + +module.exports = function (config) { + config.set({ + basePath: '', + frameworks: ['jasmine', '@angular-devkit/build-angular'], + plugins: [ + require('karma-jasmine'), + require('karma-chrome-launcher'), + require('karma-jasmine-html-reporter'), + require('karma-coverage'), + require('@angular-devkit/build-angular/plugins/karma') + ], + client: { + jasmine: { + // you can add configuration options for Jasmine here + // the possible options are listed at https://jasmine.github.io/api/edge/Configuration.html + // for example, you can disable the random execution with `random: false` + // or set a specific seed with `seed: 4321` + }, + clearContext: false // leave Jasmine Spec Runner output visible in browser + }, + jasmineHtmlReporter: { + suppressAll: true // removes the duplicated traces + }, + coverageReporter: { + dir: require('path').join(__dirname, './coverage/zgo'), + subdir: '.', + reporters: [ + { type: 'html' }, + { type: 'text-summary' } + ] + }, + reporters: ['progress', 'kjhtml'], + port: 9876, + colors: true, + logLevel: config.LOG_INFO, + autoWatch: true, + browsers: ['Chrome'], + singleRun: false, + restartOnFileChange: true + }); +}; diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000..c8d9a6b --- /dev/null +++ b/package-lock.json @@ -0,0 +1,22386 @@ +{ + "name": "zgo", + "version": "0.0.0", + "lockfileVersion": 2, + "requires": true, + "packages": { + "": { + "name": "zgo", + "version": "0.0.0", + "dependencies": { + "@angular/animations": "~13.0.2", + "@angular/cdk": "^12.2.8", + "@angular/common": "~13.0.2", + "@angular/compiler": "~13.0.2", + "@angular/core": "~13.0.2", + "@angular/forms": "~13.0.2", + "@angular/material": "^12.2.8", + "@angular/platform-browser": "~13.0.2", + "@angular/platform-browser-dynamic": "~13.0.2", + "@angular/router": "~13.0.2", + "@supercharge/request-ip": "^1.1.2", + "angular-local-storage": "^0.7.1", + "async": "^3.2.2", + "coingecko-api": "^1.0.10", + "easyqrcodejs": "^4.4.6", + "material-design-icons": "^3.0.1", + "mongoose": "^6.0.13", + "rxjs": "~6.6.0", + "stdrpc": "^1.3.0", + "tslib": "^2.3.0", + "urlsafe-base64": "^1.0.0", + "uuid": "^8.3.2", + "zone.js": "~0.11.4" + }, + "devDependencies": { + "@angular-devkit/build-angular": "~13.0.2", + "@angular/cli": "~13.0.2", + "@angular/compiler-cli": "~13.0.2", + "@types/jasmine": "~3.8.0", + "@types/node": "^12.20.33", + "@types/urlsafe-base64": "^1.0.28", + "@types/uuid": "^8.3.1", + "jasmine-core": "~3.8.0", + "karma": "~6.3.0", + "karma-chrome-launcher": "~3.1.0", + "karma-coverage": "~2.0.3", + "karma-jasmine": "~4.0.0", + "karma-jasmine-html-reporter": "~1.7.0", + "typescript": "~4.4.4" + } + }, + "node_modules/@ampproject/remapping": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-1.0.1.tgz", + "integrity": "sha512-Ta9bMA3EtUHDaZJXqUoT5cn/EecwOp+SXpKJqxDbDuMbLvEMu6YTyDDuvTWeStODfdmXyfMo7LymQyPkN3BicA==", + "dev": true, + "dependencies": { + "@jridgewell/resolve-uri": "1.0.0", + "sourcemap-codec": "1.4.8" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@angular-devkit/architect": { + "version": "0.1300.2", + "resolved": "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.1300.2.tgz", + "integrity": "sha512-cCTPFKZlR+Szt+X/l/eo4KBYnRba2NiCpFNPVsujitm7JqCXkjab7NDlf+2XMVD8vZl/kR1hfyF6O9ywYmhEFA==", + "dev": true, + "dependencies": { + "@angular-devkit/core": "13.0.2", + "rxjs": "6.6.7" + }, + "engines": { + "node": "^12.20.0 || ^14.15.0 || >=16.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + } + }, + "node_modules/@angular-devkit/build-angular": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@angular-devkit/build-angular/-/build-angular-13.0.2.tgz", + "integrity": "sha512-BIxRt+kgl2hrJOGzttMdhIm0P4inErZh9/aJyz6nOKa3XgsS7cDzEwph7TJqHTuEP4n+orl8hpbZOuxCUCvdVA==", + "dev": true, + "dependencies": { + "@ampproject/remapping": "1.0.1", + "@angular-devkit/architect": "0.1300.2", + "@angular-devkit/build-webpack": "0.1300.2", + "@angular-devkit/core": "13.0.2", + "@babel/core": "7.15.8", + "@babel/generator": "7.15.8", + "@babel/helper-annotate-as-pure": "7.15.4", + "@babel/plugin-proposal-async-generator-functions": "7.15.8", + "@babel/plugin-transform-async-to-generator": "7.14.5", + "@babel/plugin-transform-runtime": "7.15.8", + "@babel/preset-env": "7.15.8", + "@babel/runtime": "7.15.4", + "@babel/template": "7.15.4", + "@discoveryjs/json-ext": "0.5.5", + "@ngtools/webpack": "13.0.2", + "ansi-colors": "4.1.1", + "babel-loader": "8.2.3", + "babel-plugin-istanbul": "6.1.1", + "browserslist": "^4.9.1", + "cacache": "15.3.0", + "caniuse-lite": "^1.0.30001032", + "circular-dependency-plugin": "5.2.2", + "copy-webpack-plugin": "9.0.1", + "core-js": "3.19.0", + "critters": "0.0.14", + "css-loader": "6.5.0", + "esbuild-wasm": "0.13.12", + "glob": "7.2.0", + "https-proxy-agent": "5.0.0", + "inquirer": "8.2.0", + "karma-source-map-support": "1.4.0", + "less": "4.1.2", + "less-loader": "10.2.0", + "license-webpack-plugin": "3.0.0", + "loader-utils": "3.0.0", + "mini-css-extract-plugin": "2.4.3", + "minimatch": "3.0.4", + "open": "8.4.0", + "ora": "5.4.1", + "parse5-html-rewriting-stream": "6.0.1", + "piscina": "3.1.0", + "postcss": "8.3.11", + "postcss-import": "14.0.2", + "postcss-loader": "6.2.0", + "postcss-preset-env": "6.7.0", + "regenerator-runtime": "0.13.9", + "resolve-url-loader": "4.0.0", + "rxjs": "6.6.7", + "sass": "1.43.4", + "sass-loader": "12.3.0", + "semver": "7.3.5", + "source-map-loader": "3.0.0", + "source-map-support": "0.5.20", + "stylus": "0.55.0", + "stylus-loader": "6.2.0", + "terser": "5.9.0", + "text-table": "0.2.0", + "tree-kill": "1.2.2", + "tslib": "2.3.1", + "webpack": "5.60.0", + "webpack-dev-middleware": "5.2.1", + "webpack-dev-server": "4.4.0", + "webpack-merge": "5.8.0", + "webpack-subresource-integrity": "5.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.15.0 || >=16.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + }, + "optionalDependencies": { + "esbuild": "0.13.12" + }, + "peerDependencies": { + "@angular/compiler-cli": "^13.0.0", + "@angular/localize": "^13.0.0", + "@angular/service-worker": "^13.0.0", + "karma": "^6.3.0", + "ng-packagr": "^13.0.0", + "protractor": "^7.0.0", + "tailwindcss": "^2.0.0", + "typescript": "~4.4.3" + }, + "peerDependenciesMeta": { + "@angular/localize": { + "optional": true + }, + "@angular/service-worker": { + "optional": true + }, + "karma": { + "optional": true + }, + "ng-packagr": { + "optional": true + }, + "protractor": { + "optional": true + }, + "tailwindcss": { + "optional": true + } + } + }, + "node_modules/@angular-devkit/build-webpack": { + "version": "0.1300.2", + "resolved": "https://registry.npmjs.org/@angular-devkit/build-webpack/-/build-webpack-0.1300.2.tgz", + "integrity": "sha512-cl5L7VwbLlpCnaiIIcS6vOdOdDPWReN7Yhl9HIEazFNZ1MCq9lOkLWmF8cvCwmbX7hv5uibeJmHhRXiihkAwOA==", + "dev": true, + "dependencies": { + "@angular-devkit/architect": "0.1300.2", + "rxjs": "6.6.7" + }, + "engines": { + "node": "^12.20.0 || ^14.15.0 || >=16.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + }, + "peerDependencies": { + "webpack": "^5.30.0", + "webpack-dev-server": "^4.0.0" + } + }, + "node_modules/@angular-devkit/core": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-13.0.2.tgz", + "integrity": "sha512-I4co4GH+iu0tns+UXfMtjJISO+cLpaUuiEH6kf0wF5cqjaIeluA9UjIRnxuNbdTW8iE2xVj/UWhQfHe/Ncp76w==", + "dev": true, + "dependencies": { + "ajv": "8.6.3", + "ajv-formats": "2.1.1", + "fast-json-stable-stringify": "2.1.0", + "magic-string": "0.25.7", + "rxjs": "6.6.7", + "source-map": "0.7.3" + }, + "engines": { + "node": "^12.20.0 || ^14.15.0 || >=16.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + }, + "peerDependencies": { + "chokidar": "^3.5.2" + }, + "peerDependenciesMeta": { + "chokidar": { + "optional": true + } + } + }, + "node_modules/@angular-devkit/schematics": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-13.0.2.tgz", + "integrity": "sha512-qrTe1teQptgP8gmVy6QX0T4dNfnNipEv+cM2cr7JXOmkPpwF+6oBDrTRIJ55t6rziqrXHJ3rxjKm1aHAxFrIEQ==", + "dev": true, + "dependencies": { + "@angular-devkit/core": "13.0.2", + "jsonc-parser": "3.0.0", + "magic-string": "0.25.7", + "ora": "5.4.1", + "rxjs": "6.6.7" + }, + "engines": { + "node": "^12.20.0 || ^14.15.0 || >=16.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + } + }, + "node_modules/@angular/animations": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@angular/animations/-/animations-13.0.2.tgz", + "integrity": "sha512-ROR70rM6E13pIJzaYf0Su/ALSoBm5fIMjozey636pAq21TxTy5IfhgaBjv/vflC9psbpaySGw2H5XnwejP0gSw==", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^12.20.0 || ^14.15.0 || >=16.10.0" + }, + "peerDependencies": { + "@angular/core": "13.0.2" + } + }, + "node_modules/@angular/cdk": { + "version": "12.2.13", + "resolved": "https://registry.npmjs.org/@angular/cdk/-/cdk-12.2.13.tgz", + "integrity": "sha512-zSKRhECyFqhingIeyRInIyTvYErt4gWo+x5DQr0b7YLUbU8DZSwWnG4w76Ke2s4U8T7ry1jpJBHoX/e8YBpGMg==", + "dependencies": { + "tslib": "^2.2.0" + }, + "optionalDependencies": { + "parse5": "^5.0.0" + }, + "peerDependencies": { + "@angular/common": "^12.0.0 || ^13.0.0-0", + "@angular/core": "^12.0.0 || ^13.0.0-0", + "rxjs": "^6.5.3 || ^7.0.0" + } + }, + "node_modules/@angular/cli": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@angular/cli/-/cli-13.0.2.tgz", + "integrity": "sha512-eFEVZR56q1zCCBfp7e7sqmrqbHhdDd/1QGv9FYD+2HoC1VHYQf5w+NyWofQhx7a+tnGGqoR28LYzSsL7fFW8pw==", + "dev": true, + "hasInstallScript": true, + "dependencies": { + "@angular-devkit/architect": "0.1300.2", + "@angular-devkit/core": "13.0.2", + "@angular-devkit/schematics": "13.0.2", + "@schematics/angular": "13.0.2", + "@yarnpkg/lockfile": "1.1.0", + "ansi-colors": "4.1.1", + "debug": "4.3.2", + "ini": "2.0.0", + "inquirer": "8.2.0", + "jsonc-parser": "3.0.0", + "npm-package-arg": "8.1.5", + "npm-pick-manifest": "6.1.1", + "open": "8.4.0", + "ora": "5.4.1", + "pacote": "12.0.2", + "resolve": "1.20.0", + "semver": "7.3.5", + "symbol-observable": "4.0.0", + "uuid": "8.3.2" + }, + "bin": { + "ng": "bin/ng.js" + }, + "engines": { + "node": "^12.20.0 || ^14.15.0 || >=16.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + } + }, + "node_modules/@angular/common": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@angular/common/-/common-13.0.2.tgz", + "integrity": "sha512-UxWzNAU/o9pP02AYB5MrnIlShirfO631NolmvP0jTSEmym1nAeDOwZIYlkgfcJMHFXFc7DBnE2XOGaTZ8if3kw==", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^12.20.0 || ^14.15.0 || >=16.10.0" + }, + "peerDependencies": { + "@angular/core": "13.0.2", + "rxjs": "^6.5.3 || ^7.4.0" + } + }, + "node_modules/@angular/compiler": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-13.0.2.tgz", + "integrity": "sha512-EvIFT8y5VNICrnPgiamv/z9hfQ7KjLCM52g4ssXGCeGPVj58OEfslEc3jO4BCJG7xuLm7dCuSRV0pBlJNTSYFg==", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^12.20.0 || ^14.15.0 || >=16.10.0" + } + }, + "node_modules/@angular/compiler-cli": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@angular/compiler-cli/-/compiler-cli-13.0.2.tgz", + "integrity": "sha512-KVDntMBoPoAPdpyO3LxR2U3BO3ja5fY5Im5rzynjBCC3dnwAPPKoIlYZlFY/5ov6yVoVleeb/BOovYxHuxZBsA==", + "dev": true, + "dependencies": { + "@babel/core": "^7.8.6", + "canonical-path": "1.0.0", + "chokidar": "^3.0.0", + "convert-source-map": "^1.5.1", + "dependency-graph": "^0.11.0", + "magic-string": "^0.25.0", + "reflect-metadata": "^0.1.2", + "semver": "^7.0.0", + "sourcemap-codec": "^1.4.8", + "tslib": "^2.3.0", + "yargs": "^17.2.1" + }, + "bin": { + "ng-xi18n": "bundles/src/bin/ng_xi18n.js", + "ngc": "bundles/src/bin/ngc.js", + "ngcc": "bundles/ngcc/main-ngcc.js" + }, + "engines": { + "node": "^12.20.0 || ^14.15.0 || >=16.10.0" + }, + "peerDependencies": { + "@angular/compiler": "13.0.2", + "typescript": ">=4.4.2 <4.5" + } + }, + "node_modules/@angular/core": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@angular/core/-/core-13.0.2.tgz", + "integrity": "sha512-6Jbct50lncMqzwLILzfmwQRK8eOEMv0quCL3pQptEpYPSlPqKz6QRxD76BykSUOs7XYJ/KdZmu3uGcT2Q/DUVg==", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^12.20.0 || ^14.15.0 || >=16.10.0" + }, + "peerDependencies": { + "rxjs": "^6.5.3 || ^7.4.0", + "zone.js": "~0.11.4" + } + }, + "node_modules/@angular/forms": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@angular/forms/-/forms-13.0.2.tgz", + "integrity": "sha512-JGgEOTH/OYr7/RlqJUPSzKQF/a55UM5PD6CgpUjAXKrCV18+zhofO05g+ibIZH3OfONntthcbKEXxMTX2EEQqg==", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^12.20.0 || ^14.15.0 || >=16.10.0" + }, + "peerDependencies": { + "@angular/common": "13.0.2", + "@angular/core": "13.0.2", + "@angular/platform-browser": "13.0.2", + "rxjs": "^6.5.3 || ^7.4.0" + } + }, + "node_modules/@angular/material": { + "version": "12.2.13", + "resolved": "https://registry.npmjs.org/@angular/material/-/material-12.2.13.tgz", + "integrity": "sha512-6g2GyN4qp2D+DqY2AwrQuPB3cd9gybvQVXvNRbTPXEulHr+LgGei00ySdFHFp6RvdGSMZ4i3LM1Fq3VkFxhCfQ==", + "dependencies": { + "tslib": "^2.2.0" + }, + "peerDependencies": { + "@angular/animations": "^12.0.0 || ^13.0.0-0", + "@angular/cdk": "12.2.13", + "@angular/common": "^12.0.0 || ^13.0.0-0", + "@angular/core": "^12.0.0 || ^13.0.0-0", + "@angular/forms": "^12.0.0 || ^13.0.0-0", + "rxjs": "^6.5.3 || ^7.0.0" + } + }, + "node_modules/@angular/platform-browser": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-13.0.2.tgz", + "integrity": "sha512-fkLGr9Vj2cvFzXefyhNaqwXX90+WbpYj5cCii7S1HcbJ9qSM5ZenLp1t8mGRhmWI7odY4BrFskWOChlWFrLEkA==", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^12.20.0 || ^14.15.0 || >=16.10.0" + }, + "peerDependencies": { + "@angular/animations": "13.0.2", + "@angular/common": "13.0.2", + "@angular/core": "13.0.2" + }, + "peerDependenciesMeta": { + "@angular/animations": { + "optional": true + } + } + }, + "node_modules/@angular/platform-browser-dynamic": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-13.0.2.tgz", + "integrity": "sha512-2wZX2oop3A1kWFcbRYqe8AxBQjT35DXf1qlGyFQoMn7D0vOAprg6X1hUK2XBItRrvwRWh3hSVhzkustTIl+r6g==", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^12.20.0 || ^14.15.0 || >=16.10.0" + }, + "peerDependencies": { + "@angular/common": "13.0.2", + "@angular/compiler": "13.0.2", + "@angular/core": "13.0.2", + "@angular/platform-browser": "13.0.2" + } + }, + "node_modules/@angular/router": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@angular/router/-/router-13.0.2.tgz", + "integrity": "sha512-AfmT845dcYPvNbUdV2ALlf++szZP3ie2d0eu7JyGWe3anV1fbDcg76RhjxFK8yVUxryrCQtEnot1VEEVlhGkyw==", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^12.20.0 || ^14.15.0 || >=16.10.0" + }, + "peerDependencies": { + "@angular/common": "13.0.2", + "@angular/core": "13.0.2", + "@angular/platform-browser": "13.0.2", + "rxjs": "^6.5.3 || ^7.4.0" + } + }, + "node_modules/@assemblyscript/loader": { + "version": "0.10.1", + "resolved": "https://registry.npmjs.org/@assemblyscript/loader/-/loader-0.10.1.tgz", + "integrity": "sha512-H71nDOOL8Y7kWRLqf6Sums+01Q5msqBW2KhDUTemh1tvY04eSkSXrK0uj/4mmY0Xr16/3zyZmsrxN7CKuRbNRg==", + "dev": true + }, + "node_modules/@babel/code-frame": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.16.0.tgz", + "integrity": "sha512-IF4EOMEV+bfYwOmNxGzSnjR2EmQod7f1UXOpZM3l4i4o4QNwzjtJAu/HxdjHq0aYBvdqMuQEY1eg0nqW9ZPORA==", + "dev": true, + "dependencies": { + "@babel/highlight": "^7.16.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/compat-data": { + "version": "7.16.4", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.16.4.tgz", + "integrity": "sha512-1o/jo7D+kC9ZjHX5v+EHrdjl3PhxMrLSOTGsOdHJ+KL8HCaEK6ehrVL2RS6oHDZp+L7xLirLrPmQtEng769J/Q==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core": { + "version": "7.15.8", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.15.8.tgz", + "integrity": "sha512-3UG9dsxvYBMYwRv+gS41WKHno4K60/9GPy1CJaH6xy3Elq8CTtvtjT5R5jmNhXfCYLX2mTw+7/aq5ak/gOE0og==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.15.8", + "@babel/generator": "^7.15.8", + "@babel/helper-compilation-targets": "^7.15.4", + "@babel/helper-module-transforms": "^7.15.8", + "@babel/helpers": "^7.15.4", + "@babel/parser": "^7.15.8", + "@babel/template": "^7.15.4", + "@babel/traverse": "^7.15.4", + "@babel/types": "^7.15.6", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.1.2", + "semver": "^6.3.0", + "source-map": "^0.5.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@babel/core/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/@babel/core/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/@babel/generator": { + "version": "7.15.8", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.15.8.tgz", + "integrity": "sha512-ECmAKstXbp1cvpTTZciZCgfOt6iN64lR0d+euv3UZisU5awfRawOvg07Utn/qBGuH4bRIEZKrA/4LzZyXhZr8g==", + "dev": true, + "dependencies": { + "@babel/types": "^7.15.6", + "jsesc": "^2.5.1", + "source-map": "^0.5.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "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/@babel/helper-annotate-as-pure": { + "version": "7.15.4", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.15.4.tgz", + "integrity": "sha512-QwrtdNvUNsPCj2lfNQacsGSQvGX8ee1ttrBrcozUP2Sv/jylewBP/8QFe6ZkBsC8T/GYWonNAWJV4aRR9AL2DA==", + "dev": true, + "dependencies": { + "@babel/types": "^7.15.4" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-builder-binary-assignment-operator-visitor": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.16.0.tgz", + "integrity": "sha512-9KuleLT0e77wFUku6TUkqZzCEymBdtuQQ27MhEKzf9UOOJu3cYj98kyaDAzxpC7lV6DGiZFuC8XqDsq8/Kl6aQ==", + "dev": true, + "dependencies": { + "@babel/helper-explode-assignable-expression": "^7.16.0", + "@babel/types": "^7.16.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets": { + "version": "7.16.3", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.16.3.tgz", + "integrity": "sha512-vKsoSQAyBmxS35JUOOt+07cLc6Nk/2ljLIHwmq2/NM6hdioUaqEXq/S+nXvbvXbZkNDlWOymPanJGOc4CBjSJA==", + "dev": true, + "dependencies": { + "@babel/compat-data": "^7.16.0", + "@babel/helper-validator-option": "^7.14.5", + "browserslist": "^4.17.5", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-compilation-targets/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/@babel/helper-create-class-features-plugin": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.16.0.tgz", + "integrity": "sha512-XLwWvqEaq19zFlF5PTgOod4bUA+XbkR4WLQBct1bkzmxJGB0ZEJaoKF4c8cgH9oBtCDuYJ8BP5NB9uFiEgO5QA==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.16.0", + "@babel/helper-function-name": "^7.16.0", + "@babel/helper-member-expression-to-functions": "^7.16.0", + "@babel/helper-optimise-call-expression": "^7.16.0", + "@babel/helper-replace-supers": "^7.16.0", + "@babel/helper-split-export-declaration": "^7.16.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-create-class-features-plugin/node_modules/@babel/helper-annotate-as-pure": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.16.0.tgz", + "integrity": "sha512-ItmYF9vR4zA8cByDocY05o0LGUkp1zhbTQOH1NFyl5xXEqlTJQCEJjieriw+aFpxo16swMxUnUiKS7a/r4vtHg==", + "dev": true, + "dependencies": { + "@babel/types": "^7.16.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-create-regexp-features-plugin": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.16.0.tgz", + "integrity": "sha512-3DyG0zAFAZKcOp7aVr33ddwkxJ0Z0Jr5V99y3I690eYLpukJsJvAbzTy1ewoCqsML8SbIrjH14Jc/nSQ4TvNPA==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.16.0", + "regexpu-core": "^4.7.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-create-regexp-features-plugin/node_modules/@babel/helper-annotate-as-pure": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.16.0.tgz", + "integrity": "sha512-ItmYF9vR4zA8cByDocY05o0LGUkp1zhbTQOH1NFyl5xXEqlTJQCEJjieriw+aFpxo16swMxUnUiKS7a/r4vtHg==", + "dev": true, + "dependencies": { + "@babel/types": "^7.16.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-define-polyfill-provider": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.2.4.tgz", + "integrity": "sha512-OrpPZ97s+aPi6h2n1OXzdhVis1SGSsMU2aMHgLcOKfsp4/v1NWpx3CWT3lBj5eeBq9cDkPkh+YCfdF7O12uNDQ==", + "dev": true, + "dependencies": { + "@babel/helper-compilation-targets": "^7.13.0", + "@babel/helper-module-imports": "^7.12.13", + "@babel/helper-plugin-utils": "^7.13.0", + "@babel/traverse": "^7.13.0", + "debug": "^4.1.1", + "lodash.debounce": "^4.0.8", + "resolve": "^1.14.2", + "semver": "^6.1.2" + }, + "peerDependencies": { + "@babel/core": "^7.4.0-0" + } + }, + "node_modules/@babel/helper-define-polyfill-provider/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/@babel/helper-explode-assignable-expression": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.16.0.tgz", + "integrity": "sha512-Hk2SLxC9ZbcOhLpg/yMznzJ11W++lg5GMbxt1ev6TXUiJB0N42KPC+7w8a+eWGuqDnUYuwStJoZHM7RgmIOaGQ==", + "dev": true, + "dependencies": { + "@babel/types": "^7.16.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-function-name": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.16.0.tgz", + "integrity": "sha512-BZh4mEk1xi2h4HFjWUXRQX5AEx4rvaZxHgax9gcjdLWdkjsY7MKt5p0otjsg5noXw+pB+clMCjw+aEVYADMjog==", + "dev": true, + "dependencies": { + "@babel/helper-get-function-arity": "^7.16.0", + "@babel/template": "^7.16.0", + "@babel/types": "^7.16.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-function-name/node_modules/@babel/template": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.16.0.tgz", + "integrity": "sha512-MnZdpFD/ZdYhXwiunMqqgyZyucaYsbL0IrjoGjaVhGilz+x8YB++kRfygSOIj1yOtWKPlx7NBp+9I1RQSgsd5A==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.16.0", + "@babel/parser": "^7.16.0", + "@babel/types": "^7.16.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-get-function-arity": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.16.0.tgz", + "integrity": "sha512-ASCquNcywC1NkYh/z7Cgp3w31YW8aojjYIlNg4VeJiHkqyP4AzIvr4qx7pYDb4/s8YcsZWqqOSxgkvjUz1kpDQ==", + "dev": true, + "dependencies": { + "@babel/types": "^7.16.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-hoist-variables": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.16.0.tgz", + "integrity": "sha512-1AZlpazjUR0EQZQv3sgRNfM9mEVWPK3M6vlalczA+EECcPz3XPh6VplbErL5UoMpChhSck5wAJHthlj1bYpcmg==", + "dev": true, + "dependencies": { + "@babel/types": "^7.16.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-member-expression-to-functions": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.16.0.tgz", + "integrity": "sha512-bsjlBFPuWT6IWhl28EdrQ+gTvSvj5tqVP5Xeftp07SEuz5pLnsXZuDkDD3Rfcxy0IsHmbZ+7B2/9SHzxO0T+sQ==", + "dev": true, + "dependencies": { + "@babel/types": "^7.16.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.16.0.tgz", + "integrity": "sha512-kkH7sWzKPq0xt3H1n+ghb4xEMP8k0U7XV3kkB+ZGy69kDk2ySFW1qPi06sjKzFY3t1j6XbJSqr4mF9L7CYVyhg==", + "dev": true, + "dependencies": { + "@babel/types": "^7.16.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.16.0.tgz", + "integrity": "sha512-My4cr9ATcaBbmaEa8M0dZNA74cfI6gitvUAskgDtAFmAqyFKDSHQo5YstxPbN+lzHl2D9l/YOEFqb2mtUh4gfA==", + "dev": true, + "dependencies": { + "@babel/helper-module-imports": "^7.16.0", + "@babel/helper-replace-supers": "^7.16.0", + "@babel/helper-simple-access": "^7.16.0", + "@babel/helper-split-export-declaration": "^7.16.0", + "@babel/helper-validator-identifier": "^7.15.7", + "@babel/template": "^7.16.0", + "@babel/traverse": "^7.16.0", + "@babel/types": "^7.16.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-transforms/node_modules/@babel/template": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.16.0.tgz", + "integrity": "sha512-MnZdpFD/ZdYhXwiunMqqgyZyucaYsbL0IrjoGjaVhGilz+x8YB++kRfygSOIj1yOtWKPlx7NBp+9I1RQSgsd5A==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.16.0", + "@babel/parser": "^7.16.0", + "@babel/types": "^7.16.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-optimise-call-expression": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.16.0.tgz", + "integrity": "sha512-SuI467Gi2V8fkofm2JPnZzB/SUuXoJA5zXe/xzyPP2M04686RzFKFHPK6HDVN6JvWBIEW8tt9hPR7fXdn2Lgpw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.16.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-plugin-utils": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.14.5.tgz", + "integrity": "sha512-/37qQCE3K0vvZKwoK4XU/irIJQdIfCJuhU5eKnNxpFDsOkgFaUAwbv+RYw6eYgsC0E4hS7r5KqGULUogqui0fQ==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-remap-async-to-generator": { + "version": "7.16.4", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.16.4.tgz", + "integrity": "sha512-vGERmmhR+s7eH5Y/cp8PCVzj4XEjerq8jooMfxFdA5xVtAk9Sh4AQsrWgiErUEBjtGrBtOFKDUcWQFW4/dFwMA==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.16.0", + "@babel/helper-wrap-function": "^7.16.0", + "@babel/types": "^7.16.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-remap-async-to-generator/node_modules/@babel/helper-annotate-as-pure": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.16.0.tgz", + "integrity": "sha512-ItmYF9vR4zA8cByDocY05o0LGUkp1zhbTQOH1NFyl5xXEqlTJQCEJjieriw+aFpxo16swMxUnUiKS7a/r4vtHg==", + "dev": true, + "dependencies": { + "@babel/types": "^7.16.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-replace-supers": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.16.0.tgz", + "integrity": "sha512-TQxuQfSCdoha7cpRNJvfaYxxxzmbxXw/+6cS7V02eeDYyhxderSoMVALvwupA54/pZcOTtVeJ0xccp1nGWladA==", + "dev": true, + "dependencies": { + "@babel/helper-member-expression-to-functions": "^7.16.0", + "@babel/helper-optimise-call-expression": "^7.16.0", + "@babel/traverse": "^7.16.0", + "@babel/types": "^7.16.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-simple-access": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.16.0.tgz", + "integrity": "sha512-o1rjBT/gppAqKsYfUdfHq5Rk03lMQrkPHG1OWzHWpLgVXRH4HnMM9Et9CVdIqwkCQlobnGHEJMsgWP/jE1zUiw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.16.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-skip-transparent-expression-wrappers": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.16.0.tgz", + "integrity": "sha512-+il1gTy0oHwUsBQZyJvukbB4vPMdcYBrFHa0Uc4AizLxbq6BOYC51Rv4tWocX9BLBDLZ4kc6qUFpQ6HRgL+3zw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.16.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-split-export-declaration": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.16.0.tgz", + "integrity": "sha512-0YMMRpuDFNGTHNRiiqJX19GjNXA4H0E8jZ2ibccfSxaCogbm3am5WN/2nQNj0YnQwGWM1J06GOcQ2qnh3+0paw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.16.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.15.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.15.7.tgz", + "integrity": "sha512-K4JvCtQqad9OY2+yTU8w+E82ywk/fe+ELNlt1G8z3bVGlZfn/hOcQQsUhGhW/N+tb3fxK800wLtKOE/aM0m72w==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-option": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.14.5.tgz", + "integrity": "sha512-OX8D5eeX4XwcroVW45NMvoYaIuFI+GQpA2a8Gi+X/U/cDUIRsV37qQfF905F0htTRCREQIB4KqPeaveRJUl3Ow==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-wrap-function": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.16.0.tgz", + "integrity": "sha512-VVMGzYY3vkWgCJML+qVLvGIam902mJW0FvT7Avj1zEe0Gn7D93aWdLblYARTxEw+6DhZmtzhBM2zv0ekE5zg1g==", + "dev": true, + "dependencies": { + "@babel/helper-function-name": "^7.16.0", + "@babel/template": "^7.16.0", + "@babel/traverse": "^7.16.0", + "@babel/types": "^7.16.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-wrap-function/node_modules/@babel/template": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.16.0.tgz", + "integrity": "sha512-MnZdpFD/ZdYhXwiunMqqgyZyucaYsbL0IrjoGjaVhGilz+x8YB++kRfygSOIj1yOtWKPlx7NBp+9I1RQSgsd5A==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.16.0", + "@babel/parser": "^7.16.0", + "@babel/types": "^7.16.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers": { + "version": "7.16.3", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.16.3.tgz", + "integrity": "sha512-Xn8IhDlBPhvYTvgewPKawhADichOsbkZuzN7qz2BusOM0brChsyXMDJvldWaYMMUNiCQdQzNEioXTp3sC8Nt8w==", + "dev": true, + "dependencies": { + "@babel/template": "^7.16.0", + "@babel/traverse": "^7.16.3", + "@babel/types": "^7.16.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers/node_modules/@babel/template": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.16.0.tgz", + "integrity": "sha512-MnZdpFD/ZdYhXwiunMqqgyZyucaYsbL0IrjoGjaVhGilz+x8YB++kRfygSOIj1yOtWKPlx7NBp+9I1RQSgsd5A==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.16.0", + "@babel/parser": "^7.16.0", + "@babel/types": "^7.16.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/highlight": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.16.0.tgz", + "integrity": "sha512-t8MH41kUQylBtu2+4IQA3atqevA2lRgqA2wyVB/YiWmsDSuylZZuXOUy9ric30hfzauEFfdsuk/eXTRrGrfd0g==", + "dev": true, + "dependencies": { + "@babel/helper-validator-identifier": "^7.15.7", + "chalk": "^2.0.0", + "js-tokens": "^4.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/parser": { + "version": "7.16.4", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.16.4.tgz", + "integrity": "sha512-6V0qdPUaiVHH3RtZeLIsc+6pDhbYzHR8ogA8w+f+Wc77DuXto19g2QUwveINoS34Uw+W8/hQDGJCx+i4n7xcng==", + "dev": true, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.16.0.tgz", + "integrity": "sha512-4tcFwwicpWTrpl9qjf7UsoosaArgImF85AxqCRZlgc3IQDvkUHjJpruXAL58Wmj+T6fypWTC/BakfEkwIL/pwA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/helper-skip-transparent-expression-wrappers": "^7.16.0", + "@babel/plugin-proposal-optional-chaining": "^7.16.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.13.0" + } + }, + "node_modules/@babel/plugin-proposal-async-generator-functions": { + "version": "7.15.8", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.15.8.tgz", + "integrity": "sha512-2Z5F2R2ibINTc63mY7FLqGfEbmofrHU9FitJW1Q7aPaKFhiPvSq6QEt/BoWN5oME3GVyjcRuNNSRbb9LC0CSWA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/helper-remap-async-to-generator": "^7.15.4", + "@babel/plugin-syntax-async-generators": "^7.8.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-class-properties": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.16.0.tgz", + "integrity": "sha512-mCF3HcuZSY9Fcx56Lbn+CGdT44ioBMMvjNVldpKtj8tpniETdLjnxdHI1+sDWXIM1nNt+EanJOZ3IG9lzVjs7A==", + "dev": true, + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.16.0", + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-class-static-block": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.16.0.tgz", + "integrity": "sha512-mAy3sdcY9sKAkf3lQbDiv3olOfiLqI51c9DR9b19uMoR2Z6r5pmGl7dfNFqEvqOyqbf1ta4lknK4gc5PJn3mfA==", + "dev": true, + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.16.0", + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/plugin-syntax-class-static-block": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.12.0" + } + }, + "node_modules/@babel/plugin-proposal-dynamic-import": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.16.0.tgz", + "integrity": "sha512-QGSA6ExWk95jFQgwz5GQ2Dr95cf7eI7TKutIXXTb7B1gCLTCz5hTjFTQGfLFBBiC5WSNi7udNwWsqbbMh1c4yQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/plugin-syntax-dynamic-import": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-export-namespace-from": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.16.0.tgz", + "integrity": "sha512-CjI4nxM/D+5wCnhD11MHB1AwRSAYeDT+h8gCdcVJZ/OK7+wRzFsf7PFPWVpVpNRkHMmMkQWAHpTq+15IXQ1diA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-json-strings": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.16.0.tgz", + "integrity": "sha512-kouIPuiv8mSi5JkEhzApg5Gn6hFyKPnlkO0a9YSzqRurH8wYzSlf6RJdzluAsbqecdW5pBvDJDfyDIUR/vLxvg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/plugin-syntax-json-strings": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-logical-assignment-operators": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.16.0.tgz", + "integrity": "sha512-pbW0fE30sVTYXXm9lpVQQ/Vc+iTeQKiXlaNRZPPN2A2VdlWyAtsUrsQ3xydSlDW00TFMK7a8m3cDTkBF5WnV3Q==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-nullish-coalescing-operator": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.16.0.tgz", + "integrity": "sha512-3bnHA8CAFm7cG93v8loghDYyQ8r97Qydf63BeYiGgYbjKKB/XP53W15wfRC7dvKfoiJ34f6Rbyyx2btExc8XsQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-numeric-separator": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.16.0.tgz", + "integrity": "sha512-FAhE2I6mjispy+vwwd6xWPyEx3NYFS13pikDBWUAFGZvq6POGs5eNchw8+1CYoEgBl9n11I3NkzD7ghn25PQ9Q==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/plugin-syntax-numeric-separator": "^7.10.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-object-rest-spread": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.16.0.tgz", + "integrity": "sha512-LU/+jp89efe5HuWJLmMmFG0+xbz+I2rSI7iLc1AlaeSMDMOGzWlc5yJrMN1d04osXN4sSfpo4O+azkBNBes0jg==", + "dev": true, + "dependencies": { + "@babel/compat-data": "^7.16.0", + "@babel/helper-compilation-targets": "^7.16.0", + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-transform-parameters": "^7.16.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-optional-catch-binding": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.16.0.tgz", + "integrity": "sha512-kicDo0A/5J0nrsCPbn89mTG3Bm4XgYi0CZtvex9Oyw7gGZE3HXGD0zpQNH+mo+tEfbo8wbmMvJftOwpmPy7aVw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-optional-chaining": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.16.0.tgz", + "integrity": "sha512-Y4rFpkZODfHrVo70Uaj6cC1JJOt3Pp0MdWSwIKtb8z1/lsjl9AmnB7ErRFV+QNGIfcY1Eruc2UMx5KaRnXjMyg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/helper-skip-transparent-expression-wrappers": "^7.16.0", + "@babel/plugin-syntax-optional-chaining": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-private-methods": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.16.0.tgz", + "integrity": "sha512-IvHmcTHDFztQGnn6aWq4t12QaBXTKr1whF/dgp9kz84X6GUcwq9utj7z2wFCUfeOup/QKnOlt2k0zxkGFx9ubg==", + "dev": true, + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.16.0", + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-private-property-in-object": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.16.0.tgz", + "integrity": "sha512-3jQUr/HBbMVZmi72LpjQwlZ55i1queL8KcDTQEkAHihttJnAPrcvG9ZNXIfsd2ugpizZo595egYV6xy+pv4Ofw==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.16.0", + "@babel/helper-create-class-features-plugin": "^7.16.0", + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-private-property-in-object/node_modules/@babel/helper-annotate-as-pure": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.16.0.tgz", + "integrity": "sha512-ItmYF9vR4zA8cByDocY05o0LGUkp1zhbTQOH1NFyl5xXEqlTJQCEJjieriw+aFpxo16swMxUnUiKS7a/r4vtHg==", + "dev": true, + "dependencies": { + "@babel/types": "^7.16.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-proposal-unicode-property-regex": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.16.0.tgz", + "integrity": "sha512-ti7IdM54NXv29cA4+bNNKEMS4jLMCbJgl+Drv+FgYy0erJLAxNAIXcNjNjrRZEcWq0xJHsNVwQezskMFpF8N9g==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.16.0", + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=4" + }, + "peerDependencies": { + "@babel/core": "^7.0.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" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-class-properties": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", + "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.12.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-class-static-block": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz", + "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-dynamic-import": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", + "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-export-namespace-from": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz", + "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.3" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "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" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "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" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "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" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "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" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "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" + }, + "peerDependencies": { + "@babel/core": "^7.0.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" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "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" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-private-property-in-object": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz", + "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-top-level-await": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", + "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-arrow-functions": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.16.0.tgz", + "integrity": "sha512-vIFb5250Rbh7roWARvCLvIJ/PtAU5Lhv7BtZ1u24COwpI9Ypjsh+bZcKk6rlIyalK+r0jOc1XQ8I4ovNxNrWrA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-async-to-generator": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.14.5.tgz", + "integrity": "sha512-szkbzQ0mNk0rpu76fzDdqSyPu0MuvpXgC+6rz5rpMb5OIRxdmHfQxrktL8CYolL2d8luMCZTR0DpIMIdL27IjA==", + "dev": true, + "dependencies": { + "@babel/helper-module-imports": "^7.14.5", + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/helper-remap-async-to-generator": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-block-scoped-functions": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.16.0.tgz", + "integrity": "sha512-V14As3haUOP4ZWrLJ3VVx5rCnrYhMSHN/jX7z6FAt5hjRkLsb0snPCmJwSOML5oxkKO4FNoNv7V5hw/y2bjuvg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-block-scoping": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.16.0.tgz", + "integrity": "sha512-27n3l67/R3UrXfizlvHGuTwsRIFyce3D/6a37GRxn28iyTPvNXaW4XvznexRh1zUNLPjbLL22Id0XQElV94ruw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-classes": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.16.0.tgz", + "integrity": "sha512-HUxMvy6GtAdd+GKBNYDWCIA776byUQH8zjnfjxwT1P1ARv/wFu8eBDpmXQcLS/IwRtrxIReGiplOwMeyO7nsDQ==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.16.0", + "@babel/helper-function-name": "^7.16.0", + "@babel/helper-optimise-call-expression": "^7.16.0", + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/helper-replace-supers": "^7.16.0", + "@babel/helper-split-export-declaration": "^7.16.0", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-classes/node_modules/@babel/helper-annotate-as-pure": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.16.0.tgz", + "integrity": "sha512-ItmYF9vR4zA8cByDocY05o0LGUkp1zhbTQOH1NFyl5xXEqlTJQCEJjieriw+aFpxo16swMxUnUiKS7a/r4vtHg==", + "dev": true, + "dependencies": { + "@babel/types": "^7.16.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-transform-computed-properties": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.16.0.tgz", + "integrity": "sha512-63l1dRXday6S8V3WFY5mXJwcRAnPYxvFfTlt67bwV1rTyVTM5zrp0DBBb13Kl7+ehkCVwIZPumPpFP/4u70+Tw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-destructuring": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.16.0.tgz", + "integrity": "sha512-Q7tBUwjxLTsHEoqktemHBMtb3NYwyJPTJdM+wDwb0g8PZ3kQUIzNvwD5lPaqW/p54TXBc/MXZu9Jr7tbUEUM8Q==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-dotall-regex": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.16.0.tgz", + "integrity": "sha512-FXlDZfQeLILfJlC6I1qyEwcHK5UpRCFkaoVyA1nk9A1L1Yu583YO4un2KsLBsu3IJb4CUbctZks8tD9xPQubLw==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.16.0", + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-duplicate-keys": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.16.0.tgz", + "integrity": "sha512-LIe2kcHKAZOJDNxujvmp6z3mfN6V9lJxubU4fJIGoQCkKe3Ec2OcbdlYP+vW++4MpxwG0d1wSDOJtQW5kLnkZQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-exponentiation-operator": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.16.0.tgz", + "integrity": "sha512-OwYEvzFI38hXklsrbNivzpO3fh87skzx8Pnqi4LoSYeav0xHlueSoCJrSgTPfnbyzopo5b3YVAJkFIcUpK2wsw==", + "dev": true, + "dependencies": { + "@babel/helper-builder-binary-assignment-operator-visitor": "^7.16.0", + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-for-of": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.16.0.tgz", + "integrity": "sha512-5QKUw2kO+GVmKr2wMYSATCTTnHyscl6sxFRAY+rvN7h7WB0lcG0o4NoV6ZQU32OZGVsYUsfLGgPQpDFdkfjlJQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-function-name": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.16.0.tgz", + "integrity": "sha512-lBzMle9jcOXtSOXUpc7tvvTpENu/NuekNJVova5lCCWCV9/U1ho2HH2y0p6mBg8fPm/syEAbfaaemYGOHCY3mg==", + "dev": true, + "dependencies": { + "@babel/helper-function-name": "^7.16.0", + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-literals": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.16.0.tgz", + "integrity": "sha512-gQDlsSF1iv9RU04clgXqRjrPyyoJMTclFt3K1cjLmTKikc0s/6vE3hlDeEVC71wLTRu72Fq7650kABrdTc2wMQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-member-expression-literals": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.16.0.tgz", + "integrity": "sha512-WRpw5HL4Jhnxw8QARzRvwojp9MIE7Tdk3ez6vRyUk1MwgjJN0aNpRoXainLR5SgxmoXx/vsXGZ6OthP6t/RbUg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-amd": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.16.0.tgz", + "integrity": "sha512-rWFhWbCJ9Wdmzln1NmSCqn7P0RAD+ogXG/bd9Kg5c7PKWkJtkiXmYsMBeXjDlzHpVTJ4I/hnjs45zX4dEv81xw==", + "dev": true, + "dependencies": { + "@babel/helper-module-transforms": "^7.16.0", + "@babel/helper-plugin-utils": "^7.14.5", + "babel-plugin-dynamic-import-node": "^2.3.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-commonjs": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.16.0.tgz", + "integrity": "sha512-Dzi+NWqyEotgzk/sb7kgQPJQf7AJkQBWsVp1N6JWc1lBVo0vkElUnGdr1PzUBmfsCCN5OOFya3RtpeHk15oLKQ==", + "dev": true, + "dependencies": { + "@babel/helper-module-transforms": "^7.16.0", + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/helper-simple-access": "^7.16.0", + "babel-plugin-dynamic-import-node": "^2.3.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-systemjs": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.16.0.tgz", + "integrity": "sha512-yuGBaHS3lF1m/5R+6fjIke64ii5luRUg97N2wr+z1sF0V+sNSXPxXDdEEL/iYLszsN5VKxVB1IPfEqhzVpiqvg==", + "dev": true, + "dependencies": { + "@babel/helper-hoist-variables": "^7.16.0", + "@babel/helper-module-transforms": "^7.16.0", + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/helper-validator-identifier": "^7.15.7", + "babel-plugin-dynamic-import-node": "^2.3.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-umd": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.16.0.tgz", + "integrity": "sha512-nx4f6no57himWiHhxDM5pjwhae5vLpTK2zCnDH8+wNLJy0TVER/LJRHl2bkt6w9Aad2sPD5iNNoUpY3X9sTGDg==", + "dev": true, + "dependencies": { + "@babel/helper-module-transforms": "^7.16.0", + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-named-capturing-groups-regex": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.16.0.tgz", + "integrity": "sha512-LogN88uO+7EhxWc8WZuQ8vxdSyVGxhkh8WTC3tzlT8LccMuQdA81e9SGV6zY7kY2LjDhhDOFdQVxdGwPyBCnvg==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.16.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-transform-new-target": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.16.0.tgz", + "integrity": "sha512-fhjrDEYv2DBsGN/P6rlqakwRwIp7rBGLPbrKxwh7oVt5NNkIhZVOY2GRV+ULLsQri1bDqwDWnU3vhlmx5B2aCw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-object-super": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.16.0.tgz", + "integrity": "sha512-fds+puedQHn4cPLshoHcR1DTMN0q1V9ou0mUjm8whx9pGcNvDrVVrgw+KJzzCaiTdaYhldtrUps8DWVMgrSEyg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/helper-replace-supers": "^7.16.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-parameters": { + "version": "7.16.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.16.3.tgz", + "integrity": "sha512-3MaDpJrOXT1MZ/WCmkOFo7EtmVVC8H4EUZVrHvFOsmwkk4lOjQj8rzv8JKUZV4YoQKeoIgk07GO+acPU9IMu/w==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-property-literals": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.16.0.tgz", + "integrity": "sha512-XLldD4V8+pOqX2hwfWhgwXzGdnDOThxaNTgqagOcpBgIxbUvpgU2FMvo5E1RyHbk756WYgdbS0T8y0Cj9FKkWQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-regenerator": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.16.0.tgz", + "integrity": "sha512-JAvGxgKuwS2PihiSFaDrp94XOzzTUeDeOQlcKzVAyaPap7BnZXK/lvMDiubkPTdotPKOIZq9xWXWnggUMYiExg==", + "dev": true, + "dependencies": { + "regenerator-transform": "^0.14.2" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-reserved-words": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.16.0.tgz", + "integrity": "sha512-Dgs8NNCehHSvXdhEhln8u/TtJxfVwGYCgP2OOr5Z3Ar+B+zXicEOKNTyc+eca2cuEOMtjW6m9P9ijOt8QdqWkg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-runtime": { + "version": "7.15.8", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.15.8.tgz", + "integrity": "sha512-+6zsde91jMzzvkzuEA3k63zCw+tm/GvuuabkpisgbDMTPQsIMHllE3XczJFFtEHLjjhKQFZmGQVRdELetlWpVw==", + "dev": true, + "dependencies": { + "@babel/helper-module-imports": "^7.15.4", + "@babel/helper-plugin-utils": "^7.14.5", + "babel-plugin-polyfill-corejs2": "^0.2.2", + "babel-plugin-polyfill-corejs3": "^0.2.5", + "babel-plugin-polyfill-regenerator": "^0.2.2", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-runtime/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/@babel/plugin-transform-shorthand-properties": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.16.0.tgz", + "integrity": "sha512-iVb1mTcD8fuhSv3k99+5tlXu5N0v8/DPm2mO3WACLG6al1CGZH7v09HJyUb1TtYl/Z+KrM6pHSIJdZxP5A+xow==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-spread": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.16.0.tgz", + "integrity": "sha512-Ao4MSYRaLAQczZVp9/7E7QHsCuK92yHRrmVNRe/SlEJjhzivq0BSn8mEraimL8wizHZ3fuaHxKH0iwzI13GyGg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/helper-skip-transparent-expression-wrappers": "^7.16.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-sticky-regex": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.16.0.tgz", + "integrity": "sha512-/ntT2NljR9foobKk4E/YyOSwcGUXtYWv5tinMK/3RkypyNBNdhHUaq6Orw5DWq9ZcNlS03BIlEALFeQgeVAo4Q==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-template-literals": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.16.0.tgz", + "integrity": "sha512-Rd4Ic89hA/f7xUSJQk5PnC+4so50vBoBfxjdQAdvngwidM8jYIBVxBZ/sARxD4e0yMXRbJVDrYf7dyRtIIKT6Q==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-typeof-symbol": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.16.0.tgz", + "integrity": "sha512-++V2L8Bdf4vcaHi2raILnptTBjGEFxn5315YU+e8+EqXIucA+q349qWngCLpUYqqv233suJ6NOienIVUpS9cqg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-escapes": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.16.0.tgz", + "integrity": "sha512-VFi4dhgJM7Bpk8lRc5CMaRGlKZ29W9C3geZjt9beuzSUrlJxsNwX7ReLwaL6WEvsOf2EQkyIJEPtF8EXjB/g2A==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-regex": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.16.0.tgz", + "integrity": "sha512-jHLK4LxhHjvCeZDWyA9c+P9XH1sOxRd1RO9xMtDVRAOND/PczPqizEtVdx4TQF/wyPaewqpT+tgQFYMnN/P94A==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.16.0", + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/preset-env": { + "version": "7.15.8", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.15.8.tgz", + "integrity": "sha512-rCC0wH8husJgY4FPbHsiYyiLxSY8oMDJH7Rl6RQMknbN9oDDHhM9RDFvnGM2MgkbUJzSQB4gtuwygY5mCqGSsA==", + "dev": true, + "dependencies": { + "@babel/compat-data": "^7.15.0", + "@babel/helper-compilation-targets": "^7.15.4", + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/helper-validator-option": "^7.14.5", + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.15.4", + "@babel/plugin-proposal-async-generator-functions": "^7.15.8", + "@babel/plugin-proposal-class-properties": "^7.14.5", + "@babel/plugin-proposal-class-static-block": "^7.15.4", + "@babel/plugin-proposal-dynamic-import": "^7.14.5", + "@babel/plugin-proposal-export-namespace-from": "^7.14.5", + "@babel/plugin-proposal-json-strings": "^7.14.5", + "@babel/plugin-proposal-logical-assignment-operators": "^7.14.5", + "@babel/plugin-proposal-nullish-coalescing-operator": "^7.14.5", + "@babel/plugin-proposal-numeric-separator": "^7.14.5", + "@babel/plugin-proposal-object-rest-spread": "^7.15.6", + "@babel/plugin-proposal-optional-catch-binding": "^7.14.5", + "@babel/plugin-proposal-optional-chaining": "^7.14.5", + "@babel/plugin-proposal-private-methods": "^7.14.5", + "@babel/plugin-proposal-private-property-in-object": "^7.15.4", + "@babel/plugin-proposal-unicode-property-regex": "^7.14.5", + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-class-properties": "^7.12.13", + "@babel/plugin-syntax-class-static-block": "^7.14.5", + "@babel/plugin-syntax-dynamic-import": "^7.8.3", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.10.4", + "@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-private-property-in-object": "^7.14.5", + "@babel/plugin-syntax-top-level-await": "^7.14.5", + "@babel/plugin-transform-arrow-functions": "^7.14.5", + "@babel/plugin-transform-async-to-generator": "^7.14.5", + "@babel/plugin-transform-block-scoped-functions": "^7.14.5", + "@babel/plugin-transform-block-scoping": "^7.15.3", + "@babel/plugin-transform-classes": "^7.15.4", + "@babel/plugin-transform-computed-properties": "^7.14.5", + "@babel/plugin-transform-destructuring": "^7.14.7", + "@babel/plugin-transform-dotall-regex": "^7.14.5", + "@babel/plugin-transform-duplicate-keys": "^7.14.5", + "@babel/plugin-transform-exponentiation-operator": "^7.14.5", + "@babel/plugin-transform-for-of": "^7.15.4", + "@babel/plugin-transform-function-name": "^7.14.5", + "@babel/plugin-transform-literals": "^7.14.5", + "@babel/plugin-transform-member-expression-literals": "^7.14.5", + "@babel/plugin-transform-modules-amd": "^7.14.5", + "@babel/plugin-transform-modules-commonjs": "^7.15.4", + "@babel/plugin-transform-modules-systemjs": "^7.15.4", + "@babel/plugin-transform-modules-umd": "^7.14.5", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.14.9", + "@babel/plugin-transform-new-target": "^7.14.5", + "@babel/plugin-transform-object-super": "^7.14.5", + "@babel/plugin-transform-parameters": "^7.15.4", + "@babel/plugin-transform-property-literals": "^7.14.5", + "@babel/plugin-transform-regenerator": "^7.14.5", + "@babel/plugin-transform-reserved-words": "^7.14.5", + "@babel/plugin-transform-shorthand-properties": "^7.14.5", + "@babel/plugin-transform-spread": "^7.15.8", + "@babel/plugin-transform-sticky-regex": "^7.14.5", + "@babel/plugin-transform-template-literals": "^7.14.5", + "@babel/plugin-transform-typeof-symbol": "^7.14.5", + "@babel/plugin-transform-unicode-escapes": "^7.14.5", + "@babel/plugin-transform-unicode-regex": "^7.14.5", + "@babel/preset-modules": "^0.1.4", + "@babel/types": "^7.15.6", + "babel-plugin-polyfill-corejs2": "^0.2.2", + "babel-plugin-polyfill-corejs3": "^0.2.5", + "babel-plugin-polyfill-regenerator": "^0.2.2", + "core-js-compat": "^3.16.0", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/preset-env/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/@babel/preset-modules": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.5.tgz", + "integrity": "sha512-A57th6YRG7oR3cq/yt/Y84MvGgE0eJG2F1JLhKuyG+jFxEgrd/HAMJatiFtmOiZurz+0DkrvbheCLaV5f2JfjA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/plugin-proposal-unicode-property-regex": "^7.4.4", + "@babel/plugin-transform-dotall-regex": "^7.4.4", + "@babel/types": "^7.4.4", + "esutils": "^2.0.2" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/runtime": { + "version": "7.15.4", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.15.4.tgz", + "integrity": "sha512-99catp6bHCaxr4sJ/DbTGgHS4+Rs2RVd2g7iOap6SLGPDknRK9ztKNsE/Fg6QhSeh1FGE5f6gHGQmvvn3I3xhw==", + "dev": true, + "dependencies": { + "regenerator-runtime": "^0.13.4" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/template": { + "version": "7.15.4", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.15.4.tgz", + "integrity": "sha512-UgBAfEa1oGuYgDIPM2G+aHa4Nlo9Lh6mGD2bDBGMTbYnc38vulXPuC1MGjYILIEmlwl6Rd+BPR9ee3gm20CBtg==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.14.5", + "@babel/parser": "^7.15.4", + "@babel/types": "^7.15.4" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse": { + "version": "7.16.3", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.16.3.tgz", + "integrity": "sha512-eolumr1vVMjqevCpwVO99yN/LoGL0EyHiLO5I043aYQvwOJ9eR5UsZSClHVCzfhBduMAsSzgA/6AyqPjNayJag==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.16.0", + "@babel/generator": "^7.16.0", + "@babel/helper-function-name": "^7.16.0", + "@babel/helper-hoist-variables": "^7.16.0", + "@babel/helper-split-export-declaration": "^7.16.0", + "@babel/parser": "^7.16.3", + "@babel/types": "^7.16.0", + "debug": "^4.1.0", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse/node_modules/@babel/generator": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.16.0.tgz", + "integrity": "sha512-RR8hUCfRQn9j9RPKEVXo9LiwoxLPYn6hNZlvUOR8tSnaxlD0p0+la00ZP9/SnRt6HchKr+X0fO2r8vrETiJGew==", + "dev": true, + "dependencies": { + "@babel/types": "^7.16.0", + "jsesc": "^2.5.1", + "source-map": "^0.5.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse/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/@babel/types": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.16.0.tgz", + "integrity": "sha512-PJgg/k3SdLsGb3hhisFvtLOw5ts113klrpLuIPtCJIU+BB24fqq6lf8RWqKJEjzqXR9AEH1rIb5XTqwBHB+kQg==", + "dev": true, + "dependencies": { + "@babel/helper-validator-identifier": "^7.15.7", + "to-fast-properties": "^2.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@csstools/convert-colors": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@csstools/convert-colors/-/convert-colors-1.4.0.tgz", + "integrity": "sha512-5a6wqoJV/xEdbRNKVo6I4hO3VjyDq//8q2f9I6PBAvMesJHFauXDorcNCsr9RzvsZnaWi5NYCcfyqP1QeFHFbw==", + "dev": true, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/@discoveryjs/json-ext": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.5.tgz", + "integrity": "sha512-6nFkfkmSeV/rqSaS4oWHgmpnYw194f6hmWF5is6b0J1naJZoiD0NTc9AiUwPHvWsowkjuHErCZT1wa0jg+BLIA==", + "dev": true, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/@gar/promisify": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@gar/promisify/-/promisify-1.1.2.tgz", + "integrity": "sha512-82cpyJyKRoQoRi+14ibCeGPu0CwypgtBAdBhq1WfvagpCZNKqwXbKwXllYSMG91DhmG4jt9gN8eP6lGOtozuaw==", + "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/schema": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", + "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-1.0.0.tgz", + "integrity": "sha512-9oLAnygRMi8Q5QkYEU4XWK04B+nuoXoxjRvRxgjuChkLZFBja0YPSgdZ7dZtwhncLBcQe/I/E+fLuk5qxcYVJA==", + "dev": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@ngtools/webpack": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@ngtools/webpack/-/webpack-13.0.2.tgz", + "integrity": "sha512-eCtPydszVvKtkvL4HeDMvWC3IqTF/xZF6CTumMweRNInc6mTZiwwLwLDk8pg3xVp3ttZUOwV17BUnEs4/Q4qMA==", + "dev": true, + "engines": { + "node": "^12.20.0 || ^14.15.0 || >=16.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + }, + "peerDependencies": { + "@angular/compiler-cli": "^13.0.0", + "typescript": "~4.4.3", + "webpack": "^5.30.0" + } + }, + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "dev": true, + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "dev": true, + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@npmcli/fs": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-1.0.0.tgz", + "integrity": "sha512-8ltnOpRR/oJbOp8vaGUnipOi3bqkcW+sLHFlyXIr08OGHmVJLB1Hn7QtGXbYcpVtH1gAYZTlmDXtE4YV0+AMMQ==", + "dev": true, + "dependencies": { + "@gar/promisify": "^1.0.1", + "semver": "^7.3.5" + } + }, + "node_modules/@npmcli/git": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-2.1.0.tgz", + "integrity": "sha512-/hBFX/QG1b+N7PZBFs0bi+evgRZcK9nWBxQKZkGoXUT5hJSwl5c4d7y8/hm+NQZRPhQ67RzFaj5UM9YeyKoryw==", + "dev": true, + "dependencies": { + "@npmcli/promise-spawn": "^1.3.2", + "lru-cache": "^6.0.0", + "mkdirp": "^1.0.4", + "npm-pick-manifest": "^6.1.1", + "promise-inflight": "^1.0.1", + "promise-retry": "^2.0.1", + "semver": "^7.3.5", + "which": "^2.0.2" + } + }, + "node_modules/@npmcli/git/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/@npmcli/installed-package-contents": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/@npmcli/installed-package-contents/-/installed-package-contents-1.0.7.tgz", + "integrity": "sha512-9rufe0wnJusCQoLpV9ZPKIVP55itrM5BxOXs10DmdbRfgWtHy1LDyskbwRnBghuB0PrF7pNPOqREVtpz4HqzKw==", + "dev": true, + "dependencies": { + "npm-bundled": "^1.1.1", + "npm-normalize-package-bin": "^1.0.1" + }, + "bin": { + "installed-package-contents": "index.js" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/@npmcli/move-file": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@npmcli/move-file/-/move-file-1.1.2.tgz", + "integrity": "sha512-1SUf/Cg2GzGDyaf15aR9St9TWlb+XvbZXWpDx8YKs7MLzMH/BCeopv+y9vzrzgkfykCGuWOlSu3mZhj2+FQcrg==", + "dev": true, + "dependencies": { + "mkdirp": "^1.0.4", + "rimraf": "^3.0.2" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@npmcli/node-gyp": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@npmcli/node-gyp/-/node-gyp-1.0.3.tgz", + "integrity": "sha512-fnkhw+fmX65kiLqk6E3BFLXNC26rUhK90zVwe2yncPliVT/Qos3xjhTLE59Df8KnPlcwIERXKVlU1bXoUQ+liA==", + "dev": true + }, + "node_modules/@npmcli/promise-spawn": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-1.3.2.tgz", + "integrity": "sha512-QyAGYo/Fbj4MXeGdJcFzZ+FkDkomfRBrPM+9QYJSg+PxgAUL+LU3FneQk37rKR2/zjqkCV1BLHccX98wRXG3Sg==", + "dev": true, + "dependencies": { + "infer-owner": "^1.0.4" + } + }, + "node_modules/@npmcli/run-script": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-2.0.0.tgz", + "integrity": "sha512-fSan/Pu11xS/TdaTpTB0MRn9guwGU8dye+x56mEVgBEd/QsybBbYcAL0phPXi8SGWFEChkQd6M9qL4y6VOpFig==", + "dev": true, + "dependencies": { + "@npmcli/node-gyp": "^1.0.2", + "@npmcli/promise-spawn": "^1.3.2", + "node-gyp": "^8.2.0", + "read-package-json-fast": "^2.0.1" + } + }, + "node_modules/@schematics/angular": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@schematics/angular/-/angular-13.0.2.tgz", + "integrity": "sha512-qdzgd/CT6Y3U/98f/n66pnIMY5RuLW7WAmz+KQiuqaLgYWZNUbqYtAoxFI5ABTSKQoZSjjfescWL2R3XN9g3Xw==", + "dev": true, + "dependencies": { + "@angular-devkit/core": "13.0.2", + "@angular-devkit/schematics": "13.0.2", + "jsonc-parser": "3.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.15.0 || >=16.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + } + }, + "node_modules/@supercharge/request-ip": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@supercharge/request-ip/-/request-ip-1.1.2.tgz", + "integrity": "sha512-mtryG/uiSIVT0ga8A/F9hNEuBSbDxW7/m9PEtxIHqdkE/vr766m17mtLPhrXA4q4T+Qw44+33mg3Rtkl7o+OvQ==" + }, + "node_modules/@tootallnate/once": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz", + "integrity": "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/@types/component-emitter": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/@types/component-emitter/-/component-emitter-1.2.11.tgz", + "integrity": "sha512-SRXjM+tfsSlA9VuG8hGO2nft2p8zjXCK1VcC6N4NXbBbYbSia9kzCChYQajIjzIqOOOuh5Ock6MmV2oux4jDZQ==", + "dev": true + }, + "node_modules/@types/cookie": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/@types/cookie/-/cookie-0.4.1.tgz", + "integrity": "sha512-XW/Aa8APYr6jSVVA1y/DEIZX0/GMKLEVekNG727R8cs56ahETkRAy/3DR7+fJyh7oUgGwNQaRfXCun0+KbWY7Q==", + "dev": true + }, + "node_modules/@types/cors": { + "version": "2.8.12", + "resolved": "https://registry.npmjs.org/@types/cors/-/cors-2.8.12.tgz", + "integrity": "sha512-vt+kDhq/M2ayberEtJcIN/hxXy1Pk+59g2FV/ZQceeaTyCtCucjL2Q7FXlFjtWn4n15KCr1NE2lNNFhp0lEThw==", + "dev": true + }, + "node_modules/@types/eslint": { + "version": "7.29.0", + "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-7.29.0.tgz", + "integrity": "sha512-VNcvioYDH8/FxaeTKkM4/TiTwt6pBV9E3OfGmvaw8tPl0rrHCJ4Ll15HRT+pMiFAf/MLQvAzC+6RzUMEL9Ceng==", + "dev": true, + "dependencies": { + "@types/estree": "*", + "@types/json-schema": "*" + } + }, + "node_modules/@types/eslint-scope": { + "version": "3.7.1", + "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.1.tgz", + "integrity": "sha512-SCFeogqiptms4Fg29WpOTk5nHIzfpKCemSN63ksBQYKTcXoJEmJagV+DhVmbapZzY4/5YaOV1nZwrsU79fFm1g==", + "dev": true, + "dependencies": { + "@types/eslint": "*", + "@types/estree": "*" + } + }, + "node_modules/@types/estree": { + "version": "0.0.50", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.50.tgz", + "integrity": "sha512-C6N5s2ZFtuZRj54k2/zyRhNDjJwwcViAM3Nbm8zjBpbqAdZ00mr0CFxvSKeO8Y/e03WVFLpQMdHYVfUd6SB+Hw==", + "dev": true + }, + "node_modules/@types/http-proxy": { + "version": "1.17.7", + "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.7.tgz", + "integrity": "sha512-9hdj6iXH64tHSLTY+Vt2eYOGzSogC+JQ2H7bdPWkuh7KXP5qLllWx++t+K9Wk556c3dkDdPws/SpMRi0sdCT1w==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/jasmine": { + "version": "3.8.2", + "resolved": "https://registry.npmjs.org/@types/jasmine/-/jasmine-3.8.2.tgz", + "integrity": "sha512-u5h7dqzy2XpXTzhOzSNQUQpKGFvROF8ElNX9P/TJvsHnTg/JvsAseVsGWQAQQldqanYaM+5kwxW909BBFAUYsg==", + "dev": true + }, + "node_modules/@types/json-schema": { + "version": "7.0.9", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.9.tgz", + "integrity": "sha512-qcUXuemtEu+E5wZSJHNxUXeCZhAfXKQ41D+duX+VYPde7xyEVZci+/oXKJL13tnRs9lR2pr4fod59GT6/X1/yQ==", + "dev": true + }, + "node_modules/@types/node": { + "version": "12.20.37", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.37.tgz", + "integrity": "sha512-i1KGxqcvJaLQali+WuypQnXwcplhtNtjs66eNsZpp2P2FL/trJJxx/VWsM0YCL2iMoIJrbXje48lvIQAQ4p2ZA==" + }, + "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/retry": { + "version": "0.12.1", + "resolved": "https://registry.npmjs.org/@types/retry/-/retry-0.12.1.tgz", + "integrity": "sha512-xoDlM2S4ortawSWORYqsdU+2rxdh4LRW9ytc3zmT37RIKQh6IHyKwwtKhKis9ah8ol07DCkZxPt8BBvPjC6v4g==", + "dev": true + }, + "node_modules/@types/urlsafe-base64": { + "version": "1.0.28", + "resolved": "https://registry.npmjs.org/@types/urlsafe-base64/-/urlsafe-base64-1.0.28.tgz", + "integrity": "sha1-LPIJhRjpjHMKfgDeeaRV4CaaP00=", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/uuid": { + "version": "8.3.1", + "resolved": "https://registry.npmjs.org/@types/uuid/-/uuid-8.3.1.tgz", + "integrity": "sha512-Y2mHTRAbqfFkpjldbkHGY8JIzRN6XqYRliG8/24FcHm2D2PwW24fl5xMRTVGdrb7iMrwCaIEbLWerGIkXuFWVg==", + "dev": true + }, + "node_modules/@types/webidl-conversions": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/@types/webidl-conversions/-/webidl-conversions-6.1.1.tgz", + "integrity": "sha512-XAahCdThVuCFDQLT7R7Pk/vqeObFNL3YqRyFZg+AqAP/W1/w3xHaIxuW7WszQqTbIBOPRcItYJIou3i/mppu3Q==" + }, + "node_modules/@types/whatwg-url": { + "version": "8.2.1", + "resolved": "https://registry.npmjs.org/@types/whatwg-url/-/whatwg-url-8.2.1.tgz", + "integrity": "sha512-2YubE1sjj5ifxievI5Ge1sckb9k/Er66HyR2c+3+I6VDUUg1TLPdYYTEbQ+DjRkS4nTxMJhgWfSfMRD2sl2EYQ==", + "dependencies": { + "@types/node": "*", + "@types/webidl-conversions": "*" + } + }, + "node_modules/@webassemblyjs/ast": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.1.tgz", + "integrity": "sha512-ukBh14qFLjxTQNTXocdyksN5QdM28S1CxHt2rdskFyL+xFV7VremuBLVbmCePj+URalXBENx/9Lm7lnhihtCSw==", + "dev": true, + "dependencies": { + "@webassemblyjs/helper-numbers": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1" + } + }, + "node_modules/@webassemblyjs/floating-point-hex-parser": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.1.tgz", + "integrity": "sha512-iGRfyc5Bq+NnNuX8b5hwBrRjzf0ocrJPI6GWFodBFzmFnyvrQ83SHKhmilCU/8Jv67i4GJZBMhEzltxzcNagtQ==", + "dev": true + }, + "node_modules/@webassemblyjs/helper-api-error": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.1.tgz", + "integrity": "sha512-RlhS8CBCXfRUR/cwo2ho9bkheSXG0+NwooXcc3PAILALf2QLdFyj7KGsKRbVc95hZnhnERon4kW/D3SZpp6Tcg==", + "dev": true + }, + "node_modules/@webassemblyjs/helper-buffer": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.1.tgz", + "integrity": "sha512-gwikF65aDNeeXa8JxXa2BAk+REjSyhrNC9ZwdT0f8jc4dQQeDQ7G4m0f2QCLPJiMTTO6wfDmRmj/pW0PsUvIcA==", + "dev": true + }, + "node_modules/@webassemblyjs/helper-numbers": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.1.tgz", + "integrity": "sha512-vDkbxiB8zfnPdNK9Rajcey5C0w+QJugEglN0of+kmO8l7lDb77AnlKYQF7aarZuCrv+l0UvqL+68gSDr3k9LPQ==", + "dev": true, + "dependencies": { + "@webassemblyjs/floating-point-hex-parser": "1.11.1", + "@webassemblyjs/helper-api-error": "1.11.1", + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@webassemblyjs/helper-wasm-bytecode": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.1.tgz", + "integrity": "sha512-PvpoOGiJwXeTrSf/qfudJhwlvDQxFgelbMqtq52WWiXC6Xgg1IREdngmPN3bs4RoO83PnL/nFrxucXj1+BX62Q==", + "dev": true + }, + "node_modules/@webassemblyjs/helper-wasm-section": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.1.tgz", + "integrity": "sha512-10P9No29rYX1j7F3EVPX3JvGPQPae+AomuSTPiF9eBQeChHI6iqjMIwR9JmOJXwpnn/oVGDk7I5IlskuMwU/pg==", + "dev": true, + "dependencies": { + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-buffer": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1", + "@webassemblyjs/wasm-gen": "1.11.1" + } + }, + "node_modules/@webassemblyjs/ieee754": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.1.tgz", + "integrity": "sha512-hJ87QIPtAMKbFq6CGTkZYJivEwZDbQUgYd3qKSadTNOhVY7p+gfP6Sr0lLRVTaG1JjFj+r3YchoqRYxNH3M0GQ==", + "dev": true, + "dependencies": { + "@xtuc/ieee754": "^1.2.0" + } + }, + "node_modules/@webassemblyjs/leb128": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.1.tgz", + "integrity": "sha512-BJ2P0hNZ0u+Th1YZXJpzW6miwqQUGcIHT1G/sf72gLVD9DZ5AdYTqPNbHZh6K1M5VmKvFXwGSWZADz+qBWxeRw==", + "dev": true, + "dependencies": { + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@webassemblyjs/utf8": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.1.tgz", + "integrity": "sha512-9kqcxAEdMhiwQkHpkNiorZzqpGrodQQ2IGrHHxCy+Ozng0ofyMA0lTqiLkVs1uzTRejX+/O0EOT7KxqVPuXosQ==", + "dev": true + }, + "node_modules/@webassemblyjs/wasm-edit": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.1.tgz", + "integrity": "sha512-g+RsupUC1aTHfR8CDgnsVRVZFJqdkFHpsHMfJuWQzWU3tvnLC07UqHICfP+4XyL2tnr1amvl1Sdp06TnYCmVkA==", + "dev": true, + "dependencies": { + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-buffer": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1", + "@webassemblyjs/helper-wasm-section": "1.11.1", + "@webassemblyjs/wasm-gen": "1.11.1", + "@webassemblyjs/wasm-opt": "1.11.1", + "@webassemblyjs/wasm-parser": "1.11.1", + "@webassemblyjs/wast-printer": "1.11.1" + } + }, + "node_modules/@webassemblyjs/wasm-gen": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.1.tgz", + "integrity": "sha512-F7QqKXwwNlMmsulj6+O7r4mmtAlCWfO/0HdgOxSklZfQcDu0TpLiD1mRt/zF25Bk59FIjEuGAIyn5ei4yMfLhA==", + "dev": true, + "dependencies": { + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1", + "@webassemblyjs/ieee754": "1.11.1", + "@webassemblyjs/leb128": "1.11.1", + "@webassemblyjs/utf8": "1.11.1" + } + }, + "node_modules/@webassemblyjs/wasm-opt": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.1.tgz", + "integrity": "sha512-VqnkNqnZlU5EB64pp1l7hdm3hmQw7Vgqa0KF/KCNO9sIpI6Fk6brDEiX+iCOYrvMuBWDws0NkTOxYEb85XQHHw==", + "dev": true, + "dependencies": { + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-buffer": "1.11.1", + "@webassemblyjs/wasm-gen": "1.11.1", + "@webassemblyjs/wasm-parser": "1.11.1" + } + }, + "node_modules/@webassemblyjs/wasm-parser": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.1.tgz", + "integrity": "sha512-rrBujw+dJu32gYB7/Lup6UhdkPx9S9SnobZzRVL7VcBH9Bt9bCBLEuX/YXOOtBsOZ4NQrRykKhffRWHvigQvOA==", + "dev": true, + "dependencies": { + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-api-error": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1", + "@webassemblyjs/ieee754": "1.11.1", + "@webassemblyjs/leb128": "1.11.1", + "@webassemblyjs/utf8": "1.11.1" + } + }, + "node_modules/@webassemblyjs/wast-printer": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.11.1.tgz", + "integrity": "sha512-IQboUWM4eKzWW+N/jij2sRatKMh99QEelo3Eb2q0qXkvPRISAj8Qxtmw5itwqK+TTkBuUIE45AxYPToqPtL5gg==", + "dev": true, + "dependencies": { + "@webassemblyjs/ast": "1.11.1", + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@xtuc/ieee754": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", + "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", + "dev": true + }, + "node_modules/@xtuc/long": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", + "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", + "dev": true + }, + "node_modules/@yarnpkg/lockfile": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz", + "integrity": "sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==", + "dev": true + }, + "node_modules/abab": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.5.tgz", + "integrity": "sha512-9IK9EadsbHo6jLWIpxpR6pL0sazTXV6+SQv25ZB+F7Bj9mJNaOc4nCRabwd5M/JwmUa8idz6Eci6eKfJryPs6Q==", + "dev": true + }, + "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 + }, + "node_modules/accepts": { + "version": "1.3.7", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.7.tgz", + "integrity": "sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA==", + "dev": true, + "dependencies": { + "mime-types": "~2.1.24", + "negotiator": "0.6.2" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/acorn": { + "version": "8.5.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.5.0.tgz", + "integrity": "sha512-yXbYeFy+jUuYd3/CDcg2NkIYE991XYX/bje7LmjJigUciaeO1JR4XxXgCIV1/Zc/dRuFEyw1L0pbA+qynJkW5Q==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-import-assertions": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.8.0.tgz", + "integrity": "sha512-m7VZ3jwz4eK6A4Vtt8Ew1/mNbP24u0FhdyfA7fSvnJR6LMdfOYnmuIrrJAgrYfYJ10F/otaHTtrtrtmHdMNzEw==", + "dev": true, + "peerDependencies": { + "acorn": "^8" + } + }, + "node_modules/adjust-sourcemap-loader": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/adjust-sourcemap-loader/-/adjust-sourcemap-loader-4.0.0.tgz", + "integrity": "sha512-OXwN5b9pCUXNQHJpwwD2qP40byEmSgzj8B4ydSN0uMNYWiFmJ6x6KwUllMmfk8Rwu/HJDFR7U8ubsWBoN0Xp0A==", + "dev": true, + "dependencies": { + "loader-utils": "^2.0.0", + "regex-parser": "^2.2.11" + }, + "engines": { + "node": ">=8.9" + } + }, + "node_modules/adjust-sourcemap-loader/node_modules/big.js": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", + "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/adjust-sourcemap-loader/node_modules/loader-utils": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.2.tgz", + "integrity": "sha512-TM57VeHptv569d/GKh6TAYdzKblwDNiumOdkFnejjD0XwTH87K90w3O7AiJRqdQoXygvi1VQTJTLGhJl7WqA7A==", + "dev": true, + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^2.1.2" + }, + "engines": { + "node": ">=8.9.0" + } + }, + "node_modules/agent-base": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", + "dev": true, + "dependencies": { + "debug": "4" + }, + "engines": { + "node": ">= 6.0.0" + } + }, + "node_modules/agentkeepalive": { + "version": "4.1.4", + "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.1.4.tgz", + "integrity": "sha512-+V/rGa3EuU74H6wR04plBb7Ks10FbtUQgRj/FQOG7uUIEuaINI+AiqJR1k6t3SVNs7o7ZjIdus6706qqzVq8jQ==", + "dev": true, + "dependencies": { + "debug": "^4.1.0", + "depd": "^1.1.2", + "humanize-ms": "^1.2.1" + }, + "engines": { + "node": ">= 8.0.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==", + "dev": true, + "dependencies": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/ajv": { + "version": "8.6.3", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.6.3.tgz", + "integrity": "sha512-SMJOdDP6LqTkD0Uq8qLi+gMwSt0imXLSV080qFVwJCpH9U6Mb+SUGHAXM0KNbcBPguytWyvFxcHgMLe2D2XSpw==", + "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" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ajv-formats": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz", + "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==", + "dev": true, + "dependencies": { + "ajv": "^8.0.0" + }, + "peerDependencies": { + "ajv": "^8.0.0" + }, + "peerDependenciesMeta": { + "ajv": { + "optional": true + } + } + }, + "node_modules/angular-local-storage": { + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/angular-local-storage/-/angular-local-storage-0.7.1.tgz", + "integrity": "sha1-+9JzB2PCn6mvVyXgGGx4BiHozdI=" + }, + "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": "4.3.2", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", + "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", + "dev": true, + "dependencies": { + "type-fest": "^0.21.3" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ansi-html-community": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/ansi-html-community/-/ansi-html-community-0.0.8.tgz", + "integrity": "sha512-1APHAyr3+PCamwNw3bXCPp4HFLONZt/yIH0sZp0/469KWNTEy+qN5jQ3GVX6DMZ1UXAi34yVwtTeaG/HpBuuzw==", + "dev": true, + "engines": [ + "node >= 0.8.0" + ], + "bin": { + "ansi-html": "bin/ansi-html" + } + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "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": "3.1.2", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", + "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", + "dev": true, + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/aproba": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", + "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", + "dev": true + }, + "node_modules/are-we-there-yet": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.7.tgz", + "integrity": "sha512-nxwy40TuMiUGqMyRHgCSWZ9FM4VAoRP4xUYSTv5ImRog+h9yISPbVH7H8fASCIzYn9wlEv4zvFL7uKDMCFQm3g==", + "dev": true, + "dependencies": { + "delegates": "^1.0.0", + "readable-stream": "^2.0.6" + } + }, + "node_modules/are-we-there-yet/node_modules/readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dev": 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/are-we-there-yet/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, + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "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/array-flatten": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-2.1.2.tgz", + "integrity": "sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ==", + "dev": true + }, + "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/async": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.2.tgz", + "integrity": "sha512-H0E+qZaDEfx/FY4t7iLRv1W2fFI6+pyCeTw1uN20AQPiwqwM6ojPxHxdLv4z8hi2DtnW9BOckSspLucW7pIE5g==" + }, + "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/autoprefixer": { + "version": "9.8.8", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-9.8.8.tgz", + "integrity": "sha512-eM9d/swFopRt5gdJ7jrpCwgvEMIayITpojhkkSMRsFHYuH5bkSQ4p/9qTEHtmNudUZh22Tehu7I6CxAW0IXTKA==", + "dev": true, + "dependencies": { + "browserslist": "^4.12.0", + "caniuse-lite": "^1.0.30001109", + "normalize-range": "^0.1.2", + "num2fraction": "^1.2.2", + "picocolors": "^0.2.1", + "postcss": "^7.0.32", + "postcss-value-parser": "^4.1.0" + }, + "bin": { + "autoprefixer": "bin/autoprefixer" + }, + "funding": { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/autoprefixer" + } + }, + "node_modules/autoprefixer/node_modules/picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "node_modules/autoprefixer/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/autoprefixer/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/axios": { + "version": "0.21.4", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.4.tgz", + "integrity": "sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg==", + "dependencies": { + "follow-redirects": "^1.14.0" + } + }, + "node_modules/babel-loader": { + "version": "8.2.3", + "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.2.3.tgz", + "integrity": "sha512-n4Zeta8NC3QAsuyiizu0GkmRcQ6clkV9WFUnUf1iXP//IeSKbWjofW3UHyZVwlOB4y039YQKefawyTn64Zwbuw==", + "dev": true, + "dependencies": { + "find-cache-dir": "^3.3.1", + "loader-utils": "^1.4.0", + "make-dir": "^3.1.0", + "schema-utils": "^2.6.5" + }, + "engines": { + "node": ">= 8.9" + }, + "peerDependencies": { + "@babel/core": "^7.0.0", + "webpack": ">=2" + } + }, + "node_modules/babel-loader/node_modules/big.js": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", + "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/babel-loader/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/babel-loader/node_modules/loader-utils": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz", + "integrity": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==", + "dev": true, + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^1.0.1" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/babel-plugin-dynamic-import-node": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz", + "integrity": "sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ==", + "dev": true, + "dependencies": { + "object.assign": "^4.1.0" + } + }, + "node_modules/babel-plugin-istanbul": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", + "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", + "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": "^5.0.4", + "test-exclude": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-plugin-polyfill-corejs2": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.2.3.tgz", + "integrity": "sha512-NDZ0auNRzmAfE1oDDPW2JhzIMXUk+FFe2ICejmt5T4ocKgiQx3e0VCRx9NCAidcMtL2RUZaWtXnmjTCkx0tcbA==", + "dev": true, + "dependencies": { + "@babel/compat-data": "^7.13.11", + "@babel/helper-define-polyfill-provider": "^0.2.4", + "semver": "^6.1.1" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/babel-plugin-polyfill-corejs2/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/babel-plugin-polyfill-corejs3": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.2.5.tgz", + "integrity": "sha512-ninF5MQNwAX9Z7c9ED+H2pGt1mXdP4TqzlHKyPIYmJIYz0N+++uwdM7RnJukklhzJ54Q84vA4ZJkgs7lu5vqcw==", + "dev": true, + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.2.2", + "core-js-compat": "^3.16.2" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/babel-plugin-polyfill-regenerator": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.2.3.tgz", + "integrity": "sha512-JVE78oRZPKFIeUqFGrSORNzQnrDwZR16oiWeGM8ZyjBn2XAT5OjP+wXx5ESuo33nUsFUEJYjtklnsKbxW5L+7g==", + "dev": true, + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.2.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true + }, + "node_modules/base64-arraybuffer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-1.0.1.tgz", + "integrity": "sha512-vFIUq7FdLtjZMhATwDul5RZWv2jpXQ09Pd6jcVEOvIsqCWTRFD/ONHNfyOS8dA/Ippi5dsIgpyKWKZaAKZltbA==", + "dev": true, + "engines": { + "node": ">= 0.6.0" + } + }, + "node_modules/base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/base64id": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/base64id/-/base64id-2.0.0.tgz", + "integrity": "sha512-lGe34o6EHj9y3Kts9R4ZYs/Gr+6N7MCaMlIFA3F1R2O5/m7K06AxfSeO5530PEERE6/WyEg3lsuyw4GHlPZHog==", + "dev": true, + "engines": { + "node": "^4.5.0 || >= 5.9" + } + }, + "node_modules/basic-auth": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/basic-auth/-/basic-auth-2.0.1.tgz", + "integrity": "sha512-NF+epuEdnUYVlGuhaxbbq+dvJttwLnGY+YixlXlME5KpQ5W3CnXA5cVTneY3SPbPDRkcjMbifrwmFYcClgOZeg==", + "dependencies": { + "safe-buffer": "5.1.2" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/batch": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", + "integrity": "sha1-3DQxT05nkxgJP8dgJyUl+UvyXBY=", + "dev": true + }, + "node_modules/big.js": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/big.js/-/big.js-6.1.1.tgz", + "integrity": "sha512-1vObw81a8ylZO5ePrtMay0n018TcftpTA5HFKDaSuiUDBo8biRBtjIobw60OpwuvrGk+FsxKamqN4cnmj/eXdg==", + "dev": true, + "engines": { + "node": "*" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/bigjs" + } + }, + "node_modules/binary-extensions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/bl": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", + "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", + "dev": true, + "dependencies": { + "buffer": "^5.5.0", + "inherits": "^2.0.4", + "readable-stream": "^3.4.0" + } + }, + "node_modules/body-parser": { + "version": "1.19.0", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.19.0.tgz", + "integrity": "sha512-dhEPs72UPbDnAQJ9ZKMNTP6ptJaionhP5cBb541nXPlW60Jepo9RV/a4fX4XWW9CuFNK22krhrj1+rgzifNCsw==", + "dev": true, + "dependencies": { + "bytes": "3.1.0", + "content-type": "~1.0.4", + "debug": "2.6.9", + "depd": "~1.1.2", + "http-errors": "1.7.2", + "iconv-lite": "0.4.24", + "on-finished": "~2.3.0", + "qs": "6.7.0", + "raw-body": "2.4.0", + "type-is": "~1.6.17" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/body-parser/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/body-parser/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/bonjour": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/bonjour/-/bonjour-3.5.0.tgz", + "integrity": "sha1-jokKGD2O6aI5OzhExpGkK897yfU=", + "dev": true, + "dependencies": { + "array-flatten": "^2.1.0", + "deep-equal": "^1.0.1", + "dns-equal": "^1.0.0", + "dns-txt": "^2.0.2", + "multicast-dns": "^6.0.1", + "multicast-dns-service-types": "^1.1.0" + } + }, + "node_modules/boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=", + "dev": true + }, + "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": "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/browserslist": { + "version": "4.18.1", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.18.1.tgz", + "integrity": "sha512-8ScCzdpPwR2wQh8IT82CA2VgDwjHyqMovPBZSNH54+tm4Jk2pCuv90gmAdH6J84OCRWi0b4gMe6O6XPXuJnjgQ==", + "dev": true, + "dependencies": { + "caniuse-lite": "^1.0.30001280", + "electron-to-chromium": "^1.3.896", + "escalade": "^3.1.1", + "node-releases": "^2.0.1", + "picocolors": "^1.0.0" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + } + }, + "node_modules/bson": { + "version": "4.5.4", + "resolved": "https://registry.npmjs.org/bson/-/bson-4.5.4.tgz", + "integrity": "sha512-wIt0bPACnx8Ju9r6IsS2wVtGDHBr9Dxb+U29A1YED2pu8XOhS8aKjOnLZ8sxyXkPwanoK7iWWVhS1+coxde6xA==", + "dependencies": { + "buffer": "^5.6.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/buffer": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" + } + }, + "node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", + "dev": true + }, + "node_modules/buffer-indexof": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/buffer-indexof/-/buffer-indexof-1.1.1.tgz", + "integrity": "sha512-4/rOEg86jivtPTeOUUT61jJO1Ya1TrR/OkqCSZDyq84WJh3LuuiphBYJN+fm5xufIk4XAFcEwte/8WzC8If/1g==", + "dev": true + }, + "node_modules/builtins": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/builtins/-/builtins-1.0.3.tgz", + "integrity": "sha1-y5T662HIaWRR2zZTThQi+U8K7og=", + "dev": true + }, + "node_modules/bytes": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz", + "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/cacache": { + "version": "15.3.0", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-15.3.0.tgz", + "integrity": "sha512-VVdYzXEn+cnbXpFgWs5hTT7OScegHVmLhJIR8Ufqk3iFD6A6j5iSX1KuBTfNEv4tdJWE2PzA6IVFtcLC7fN9wQ==", + "dev": true, + "dependencies": { + "@npmcli/fs": "^1.0.0", + "@npmcli/move-file": "^1.0.1", + "chownr": "^2.0.0", + "fs-minipass": "^2.0.0", + "glob": "^7.1.4", + "infer-owner": "^1.0.4", + "lru-cache": "^6.0.0", + "minipass": "^3.1.1", + "minipass-collect": "^1.0.2", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.2", + "mkdirp": "^1.0.3", + "p-map": "^4.0.0", + "promise-inflight": "^1.0.1", + "rimraf": "^3.0.2", + "ssri": "^8.0.1", + "tar": "^6.0.2", + "unique-filename": "^1.1.1" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/call-bind": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", + "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "dev": true, + "dependencies": { + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "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/caniuse-lite": { + "version": "1.0.30001282", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001282.tgz", + "integrity": "sha512-YhF/hG6nqBEllymSIjLtR2iWDDnChvhnVJqp+vloyt2tEHFG1yBR+ac2B/rOw0qOK0m0lEXU2dv4E/sMk5P9Kg==", + "dev": true, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + } + }, + "node_modules/canonical-path": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/canonical-path/-/canonical-path-1.0.0.tgz", + "integrity": "sha512-feylzsbDxi1gPZ1IjystzIQZagYYLvfKrSuygUCgf7z6x790VEzze5QEkdSV1U58RA7Hi0+v6fv4K54atOzATg==", + "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/chardet": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", + "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", + "dev": true + }, + "node_modules/chokidar": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.2.tgz", + "integrity": "sha512-ekGhOnNVPgT77r4K/U3GDhu+FQ2S8TnK/s2KbIGXi0SZWuwkZ2QNyfWdZW+TVfn84DpEP7rLeCt2UI6bJ8GwbQ==", + "dev": true, + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/chownr": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", + "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/chrome-trace-event": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz", + "integrity": "sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==", + "dev": true, + "engines": { + "node": ">=6.0" + } + }, + "node_modules/circular-dependency-plugin": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/circular-dependency-plugin/-/circular-dependency-plugin-5.2.2.tgz", + "integrity": "sha512-g38K9Cm5WRwlaH6g03B9OEz/0qRizI+2I7n+Gz+L5DxXJAPAiWQvwlYNm1V1jkdpUv95bOe/ASm2vfi/G560jQ==", + "dev": true, + "engines": { + "node": ">=6.0.0" + }, + "peerDependencies": { + "webpack": ">=4.0.1" + } + }, + "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==", + "dev": true, + "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-spinners": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.6.1.tgz", + "integrity": "sha512-x/5fWmGMnbKQAaNwN+UZlV79qBLM9JFnJuJ03gIi5whrob0xV0ofNVHy9DhwGdsMJQc2OKv0oGmLzvaqvAVv+g==", + "dev": true, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/cli-width": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz", + "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==", + "dev": true, + "engines": { + "node": ">= 10" + } + }, + "node_modules/cliui": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "dev": true, + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" + } + }, + "node_modules/clone": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", + "integrity": "sha1-2jCcwmPfFZlMaIypAheco8fNfH4=", + "dev": true, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/clone-deep": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz", + "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==", + "dev": true, + "dependencies": { + "is-plain-object": "^2.0.4", + "kind-of": "^6.0.2", + "shallow-clone": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "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, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/coingecko-api": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/coingecko-api/-/coingecko-api-1.0.10.tgz", + "integrity": "sha512-7YLLC85+daxAw5QlBWoHVBVpJRwoPr4HtwanCr8V/WRjoyHTa1Lb9DQAvv4MDJZHiz4no6HGnDQnddtjV35oRA==" + }, + "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/colorette": { + "version": "2.0.16", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.16.tgz", + "integrity": "sha512-hUewv7oMjCp+wkBv5Rm0v87eJhq4woh5rSR+42YSQJKecCqgIqNkZ6lAlQms/BwHPJA5NKMRlpxPRv0n8HQW6g==", + "dev": true + }, + "node_modules/colors": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/colors/-/colors-1.4.0.tgz", + "integrity": "sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA==", + "dev": true, + "engines": { + "node": ">=0.1.90" + } + }, + "node_modules/commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "dev": true + }, + "node_modules/commondir": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", + "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", + "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/compressible": { + "version": "2.0.18", + "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", + "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", + "dev": true, + "dependencies": { + "mime-db": ">= 1.43.0 < 2" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/compression": { + "version": "1.7.4", + "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.4.tgz", + "integrity": "sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==", + "dev": true, + "dependencies": { + "accepts": "~1.3.5", + "bytes": "3.0.0", + "compressible": "~2.0.16", + "debug": "2.6.9", + "on-headers": "~1.0.2", + "safe-buffer": "5.1.2", + "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/compression/node_modules/bytes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", + "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/compression/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/compression/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/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/connect": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/connect/-/connect-3.7.0.tgz", + "integrity": "sha512-ZqRXc+tZukToSNmh5C2iWMSoV3X1YUcPbqEM4DkEG5tNQXrQUZCNVGGv3IuicnkMtPfGf3Xtp8WCXs295iQ1pQ==", + "dev": true, + "dependencies": { + "debug": "2.6.9", + "finalhandler": "1.1.2", + "parseurl": "~1.3.3", + "utils-merge": "1.0.1" + }, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/connect-history-api-fallback": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-1.6.0.tgz", + "integrity": "sha512-e54B99q/OUoH64zYYRf3HBP5z24G38h5D3qXu23JGRoigpX5Ss4r9ZnDk3g0Z8uQC2x2lPaJ+UlWBc1ZWBWdLg==", + "dev": true, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/connect/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/connect/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/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 + }, + "node_modules/content-disposition": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.3.tgz", + "integrity": "sha512-ExO0774ikEObIAEV9kDo50o+79VCUdEB6n6lzKgGwupcVeRlhrj3qGAfwq8G6uBJjkqLrhT0qEYFcWng8z1z0g==", + "dev": true, + "dependencies": { + "safe-buffer": "5.1.2" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/content-type": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", + "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/convert-source-map": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz", + "integrity": "sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==", + "dev": true, + "dependencies": { + "safe-buffer": "~5.1.1" + } + }, + "node_modules/cookie": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.1.tgz", + "integrity": "sha512-ZwrFkGJxUR3EIoXtO+yVE69Eb7KlixbaeAWfBQB9vVsNn/o+Yw69gBWSSDK825hQNdN+wF8zELf3dFNl/kxkUA==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=", + "dev": true + }, + "node_modules/copy-anything": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/copy-anything/-/copy-anything-2.0.3.tgz", + "integrity": "sha512-GK6QUtisv4fNS+XcI7shX0Gx9ORg7QqIznyfho79JTnX1XhLiyZHfftvGiziqzRiEi/Bjhgpi+D2o7HxJFPnDQ==", + "dev": true, + "dependencies": { + "is-what": "^3.12.0" + } + }, + "node_modules/copy-webpack-plugin": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-9.0.1.tgz", + "integrity": "sha512-14gHKKdYIxF84jCEgPgYXCPpldbwpxxLbCmA7LReY7gvbaT555DgeBWBgBZM116tv/fO6RRJrsivBqRyRlukhw==", + "dev": true, + "dependencies": { + "fast-glob": "^3.2.5", + "glob-parent": "^6.0.0", + "globby": "^11.0.3", + "normalize-path": "^3.0.0", + "p-limit": "^3.1.0", + "schema-utils": "^3.0.0", + "serialize-javascript": "^6.0.0" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.1.0" + } + }, + "node_modules/copy-webpack-plugin/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" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/copy-webpack-plugin/node_modules/ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "dev": true, + "peerDependencies": { + "ajv": "^6.9.1" + } + }, + "node_modules/copy-webpack-plugin/node_modules/glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/copy-webpack-plugin/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/copy-webpack-plugin/node_modules/schema-utils": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", + "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", + "dev": true, + "dependencies": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/core-js": { + "version": "3.19.0", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.19.0.tgz", + "integrity": "sha512-L1TpFRWXZ76vH1yLM+z6KssLZrP8Z6GxxW4auoCj+XiViOzNPJCAuTIkn03BGdFe6Z5clX5t64wRIRypsZQrUg==", + "dev": true, + "hasInstallScript": true, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } + }, + "node_modules/core-js-compat": { + "version": "3.19.1", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.19.1.tgz", + "integrity": "sha512-Q/VJ7jAF/y68+aUsQJ/afPOewdsGkDtcMb40J8MbuWKlK3Y+wtHq8bTHKPj2WKWLIqmS5JhHs4CzHtz6pT2W6g==", + "dev": true, + "dependencies": { + "browserslist": "^4.17.6", + "semver": "7.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } + }, + "node_modules/core-js-compat/node_modules/semver": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.0.0.tgz", + "integrity": "sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/core-util-is": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", + "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==", + "dev": true + }, + "node_modules/cors": { + "version": "2.8.5", + "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz", + "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==", + "dev": true, + "dependencies": { + "object-assign": "^4", + "vary": "^1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/cosmiconfig": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.0.1.tgz", + "integrity": "sha512-a1YWNUV2HwGimB7dU2s1wUMurNKjpx60HxBB6xUM8Re+2s1g1IIfJvFR0/iCF+XHdE0GMTKTuLR32UQff4TEyQ==", + "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/critters": { + "version": "0.0.14", + "resolved": "https://registry.npmjs.org/critters/-/critters-0.0.14.tgz", + "integrity": "sha512-YiBoGKfU8/xg+tVMw0KfMBgmr0TWa1JGmRXDzbQRQQaDarGUcZZtZEB25QyYrLasQZAnvqoZhSg2GW0zdsQkYQ==", + "dev": true, + "dependencies": { + "chalk": "^4.1.0", + "css-select": "^4.1.3", + "parse5": "^6.0.1", + "parse5-htmlparser2-tree-adapter": "^6.0.1", + "postcss": "^8.3.7", + "pretty-bytes": "^5.3.0" + } + }, + "node_modules/critters/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" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/critters/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/critters/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/critters/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/critters/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/critters/node_modules/parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", + "dev": true + }, + "node_modules/critters/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/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/cross-spawn/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/css": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/css/-/css-3.0.0.tgz", + "integrity": "sha512-DG9pFfwOrzc+hawpmqX/dHYHJG+Bsdb0klhyi1sDneOgGOXy9wQIC8hzyVp1e4NRYDBdxcylvywPkkXCHAzTyQ==", + "dev": true, + "dependencies": { + "inherits": "^2.0.4", + "source-map": "^0.6.1", + "source-map-resolve": "^0.6.0" + } + }, + "node_modules/css-blank-pseudo": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/css-blank-pseudo/-/css-blank-pseudo-0.1.4.tgz", + "integrity": "sha512-LHz35Hr83dnFeipc7oqFDmsjHdljj3TQtxGGiNWSOsTLIAubSm4TEz8qCaKFpk7idaQ1GfWscF4E6mgpBysA1w==", + "dev": true, + "dependencies": { + "postcss": "^7.0.5" + }, + "bin": { + "css-blank-pseudo": "cli.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/css-blank-pseudo/node_modules/picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "node_modules/css-blank-pseudo/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/css-blank-pseudo/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/css-has-pseudo": { + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/css-has-pseudo/-/css-has-pseudo-0.10.0.tgz", + "integrity": "sha512-Z8hnfsZu4o/kt+AuFzeGpLVhFOGO9mluyHBaA2bA8aCGTwah5sT3WV/fTHH8UNZUytOIImuGPrl/prlb4oX4qQ==", + "dev": true, + "dependencies": { + "postcss": "^7.0.6", + "postcss-selector-parser": "^5.0.0-rc.4" + }, + "bin": { + "css-has-pseudo": "cli.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/css-has-pseudo/node_modules/cssesc": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-2.0.0.tgz", + "integrity": "sha512-MsCAG1z9lPdoO/IUMLSBWBSVxVtJ1395VGIQ+Fc2gNdkQ1hNDnQdw3YhA71WJCBW1vdwA0cAnk/DnW6bqoEUYg==", + "dev": true, + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/css-has-pseudo/node_modules/picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "node_modules/css-has-pseudo/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/css-has-pseudo/node_modules/postcss-selector-parser": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-5.0.0.tgz", + "integrity": "sha512-w+zLE5Jhg6Liz8+rQOWEAwtwkyqpfnmsinXjXg6cY7YIONZZtgvE0v2O0uhQBs0peNomOJwWRKt6JBfTdTd3OQ==", + "dev": true, + "dependencies": { + "cssesc": "^2.0.0", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/css-has-pseudo/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/css-loader": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-6.5.0.tgz", + "integrity": "sha512-VmuSdQa3K+wJsl39i7X3qGBM5+ZHmtTnv65fqMGI+fzmHoYmszTVvTqC1XN8JwWDViCB1a8wgNim5SV4fb37xg==", + "dev": true, + "dependencies": { + "icss-utils": "^5.1.0", + "postcss": "^8.2.15", + "postcss-modules-extract-imports": "^3.0.0", + "postcss-modules-local-by-default": "^4.0.0", + "postcss-modules-scope": "^3.0.0", + "postcss-modules-values": "^4.0.0", + "postcss-value-parser": "^4.1.0", + "semver": "^7.3.5" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.0.0" + } + }, + "node_modules/css-prefers-color-scheme": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/css-prefers-color-scheme/-/css-prefers-color-scheme-3.1.1.tgz", + "integrity": "sha512-MTu6+tMs9S3EUqzmqLXEcgNRbNkkD/TGFvowpeoWJn5Vfq7FMgsmRQs9X5NXAURiOBmOxm/lLjsDNXDE6k9bhg==", + "dev": true, + "dependencies": { + "postcss": "^7.0.5" + }, + "bin": { + "css-prefers-color-scheme": "cli.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/css-prefers-color-scheme/node_modules/picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "node_modules/css-prefers-color-scheme/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/css-prefers-color-scheme/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/css-select": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.1.3.tgz", + "integrity": "sha512-gT3wBNd9Nj49rAbmtFHj1cljIAOLYSX1nZ8CB7TBO3INYckygm5B7LISU/szY//YmdiSLbJvDLOx9VnMVpMBxA==", + "dev": true, + "dependencies": { + "boolbase": "^1.0.0", + "css-what": "^5.0.0", + "domhandler": "^4.2.0", + "domutils": "^2.6.0", + "nth-check": "^2.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/css-what": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-5.1.0.tgz", + "integrity": "sha512-arSMRWIIFY0hV8pIxZMEfmMI47Wj3R/aWpZDDxWYCPEiOMv6tfOrnpDtgxBYPEQD4V0Y/958+1TdC3iWTFcUPw==", + "dev": true, + "engines": { + "node": ">= 6" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/css/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/cssdb": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/cssdb/-/cssdb-4.4.0.tgz", + "integrity": "sha512-LsTAR1JPEM9TpGhl/0p3nQecC2LJ0kD8X5YARu1hk/9I1gril5vDtMZyNxcEpxxDj34YNck/ucjuoUd66K03oQ==", + "dev": true + }, + "node_modules/cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "dev": true, + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/custom-event": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/custom-event/-/custom-event-1.0.1.tgz", + "integrity": "sha1-XQKkaFCt8bSjF5RqOSj8y1v9BCU=", + "dev": true + }, + "node_modules/date-format": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/date-format/-/date-format-3.0.0.tgz", + "integrity": "sha512-eyTcpKOcamdhWJXj56DpQMo1ylSQpcGtGKXcU0Tb97+K56/CF5amAqqqNj0+KvA0iw2ynxtHWFsPDSClCxe48w==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/debug": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", + "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==", + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": 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/deep-equal": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.1.1.tgz", + "integrity": "sha512-yd9c5AdiqVcR+JjcwUQb9DkhJc8ngNr0MahEBGvDiJw8puWab2yZlh+nkasOnZP+EGTAP6rRp2JzJhJZzvNF8g==", + "dev": true, + "dependencies": { + "is-arguments": "^1.0.4", + "is-date-object": "^1.0.1", + "is-regex": "^1.0.4", + "object-is": "^1.0.1", + "object-keys": "^1.1.1", + "regexp.prototype.flags": "^1.2.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/default-gateway": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/default-gateway/-/default-gateway-6.0.3.tgz", + "integrity": "sha512-fwSOJsbbNzZ/CUFpqFBqYfYNLj1NbMPm8MMCIzHjC83iSJRBEGmDUxU+WP661BaBQImeC2yHwXtz+P/O9o+XEg==", + "dev": true, + "dependencies": { + "execa": "^5.0.0" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/defaults": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.3.tgz", + "integrity": "sha1-xlYFHpgX2f8I7YgUd/P+QBnz730=", + "dev": true, + "dependencies": { + "clone": "^1.0.2" + } + }, + "node_modules/define-lazy-prop": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", + "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "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/del": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/del/-/del-6.0.0.tgz", + "integrity": "sha512-1shh9DQ23L16oXSZKB2JxpL7iMy2E0S9d517ptA1P8iw0alkPtQcrKH7ru31rYtKwF499HkTu+DRzq3TCKDFRQ==", + "dev": true, + "dependencies": { + "globby": "^11.0.1", + "graceful-fs": "^4.2.4", + "is-glob": "^4.0.1", + "is-path-cwd": "^2.2.0", + "is-path-inside": "^3.0.2", + "p-map": "^4.0.0", + "rimraf": "^3.0.2", + "slash": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/delegates": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", + "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=", + "dev": true + }, + "node_modules/denque": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/denque/-/denque-2.0.1.tgz", + "integrity": "sha512-tfiWc6BQLXNLpNiR5iGd0Ocu3P3VpxfzFiqubLgMfhfOw9WyvgJBd46CClNn9k3qfbjvT//0cf7AlYRX/OslMQ==", + "engines": { + "node": ">=0.10" + } + }, + "node_modules/depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/dependency-graph": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/dependency-graph/-/dependency-graph-0.11.0.tgz", + "integrity": "sha512-JeMq7fEshyepOWDfcfHK06N3MhyPhz++vtqWhMT5O9A3K42rdsEDpfdVqjaqaAhsw6a+ZqeDvQVtD0hFHQWrzg==", + "dev": true, + "engines": { + "node": ">= 0.6.0" + } + }, + "node_modules/destroy": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", + "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=", + "dev": true + }, + "node_modules/detect-node": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz", + "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==", + "dev": true + }, + "node_modules/di": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/di/-/di-0.0.1.tgz", + "integrity": "sha1-gGZJMmzqp8qjMG112YXqJ0i6kTw=", + "dev": true + }, + "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/dns-equal": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/dns-equal/-/dns-equal-1.0.0.tgz", + "integrity": "sha1-s55/HabrCnW6nBcySzR1PEfgZU0=", + "dev": true + }, + "node_modules/dns-packet": { + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-1.3.4.tgz", + "integrity": "sha512-BQ6F4vycLXBvdrJZ6S3gZewt6rcrks9KBgM9vrhW+knGRqc8uEdT7fuCwloc7nny5xNoMJ17HGH0R/6fpo8ECA==", + "dev": true, + "dependencies": { + "ip": "^1.1.0", + "safe-buffer": "^5.0.1" + } + }, + "node_modules/dns-txt": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/dns-txt/-/dns-txt-2.0.2.tgz", + "integrity": "sha1-uR2Ab10nGI5Ks+fRB9iBocxGQrY=", + "dev": true, + "dependencies": { + "buffer-indexof": "^1.0.0" + } + }, + "node_modules/dom-serialize": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/dom-serialize/-/dom-serialize-2.2.1.tgz", + "integrity": "sha1-ViromZ9Evl6jB29UGdzVnrQ6yVs=", + "dev": true, + "dependencies": { + "custom-event": "~1.0.0", + "ent": "~2.2.0", + "extend": "^3.0.0", + "void-elements": "^2.0.0" + } + }, + "node_modules/dom-serializer": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.3.2.tgz", + "integrity": "sha512-5c54Bk5Dw4qAxNOI1pFEizPSjVsx5+bpJKmL2kPn8JhBUq2q09tTCa3mjijun2NfK78NMouDYNMBkOrPZiS+ig==", + "dev": true, + "dependencies": { + "domelementtype": "^2.0.1", + "domhandler": "^4.2.0", + "entities": "^2.0.0" + }, + "funding": { + "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" + } + }, + "node_modules/domelementtype": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.2.0.tgz", + "integrity": "sha512-DtBMo82pv1dFtUmHyr48beiuq792Sxohr+8Hm9zoxklYPfa6n0Z3Byjj2IV7bmr2IyqClnqEQhfgHJJ5QF0R5A==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ] + }, + "node_modules/domhandler": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.2.2.tgz", + "integrity": "sha512-PzE9aBMsdZO8TK4BnuJwH0QT41wgMbRzuZrHUcpYncEjmQazq8QEaBWgLG7ZyC/DAZKEgglpIA6j4Qn/HmxS3w==", + "dev": true, + "dependencies": { + "domelementtype": "^2.2.0" + }, + "engines": { + "node": ">= 4" + }, + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" + } + }, + "node_modules/domutils": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", + "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", + "dev": true, + "dependencies": { + "dom-serializer": "^1.0.1", + "domelementtype": "^2.2.0", + "domhandler": "^4.2.0" + }, + "funding": { + "url": "https://github.com/fb55/domutils?sponsor=1" + } + }, + "node_modules/easyqrcodejs": { + "version": "4.4.6", + "resolved": "https://registry.npmjs.org/easyqrcodejs/-/easyqrcodejs-4.4.6.tgz", + "integrity": "sha512-LP24ScT1io86Sv6Cp1rKLCDBmSRBbnqWsF32qfykWV3ojW6iVUN2paaiaUy5tjJ/dAw+YCJ/qkrfy7MrAihY/A==" + }, + "node_modules/ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=", + "dev": true + }, + "node_modules/electron-to-chromium": { + "version": "1.3.901", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.901.tgz", + "integrity": "sha512-ToJdV2vzwT2jeAsw8zIggTFllJ4Kxvwghk39AhJEHHlIxor10wsFI3wo69p8nFc0s/ATWBqugPv/k3nW4Y9Mww==", + "dev": true + }, + "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/emojis-list": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", + "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/encoding": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", + "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", + "dev": true, + "optional": true, + "dependencies": { + "iconv-lite": "^0.6.2" + } + }, + "node_modules/encoding/node_modules/iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "dev": true, + "optional": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/engine.io": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-6.0.1.tgz", + "integrity": "sha512-Y53UaciUh2Rmx5MiogtMxOQcfh7pnemday+Bb4QDg0Wjmnvo/VTvuEyNGQgYmh8L7VOe8Je1QuiqjLNDelMqLA==", + "dev": true, + "dependencies": { + "@types/cookie": "^0.4.1", + "@types/cors": "^2.8.12", + "@types/node": ">=10.0.0", + "accepts": "~1.3.4", + "base64id": "2.0.0", + "cookie": "~0.4.1", + "cors": "~2.8.5", + "debug": "~4.3.1", + "engine.io-parser": "~5.0.0", + "ws": "~8.2.3" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/engine.io-parser": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-5.0.2.tgz", + "integrity": "sha512-wuiO7qO/OEkPJSFueuATIXtrxF7/6GTbAO9QLv7nnbjwZ5tYhLm9zxvLwxstRs0dcT0KUlWTjtIOs1T86jt12g==", + "dev": true, + "dependencies": { + "base64-arraybuffer": "~1.0.1" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/enhanced-resolve": { + "version": "5.8.3", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.8.3.tgz", + "integrity": "sha512-EGAbGvH7j7Xt2nc0E7D99La1OiEs8LnyimkRgwExpUMScN6O+3x9tIWs7PLQZVNx4YD+00skHXPXi1yQHpAmZA==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.2.4", + "tapable": "^2.2.0" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/ent": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/ent/-/ent-2.2.0.tgz", + "integrity": "sha1-6WQhkyWiHQX0RGai9obtbOX13R0=", + "dev": true + }, + "node_modules/entities": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", + "dev": true, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/env-paths": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", + "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/err-code": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/err-code/-/err-code-2.0.3.tgz", + "integrity": "sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==", + "dev": true + }, + "node_modules/errno": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.8.tgz", + "integrity": "sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A==", + "dev": true, + "optional": true, + "dependencies": { + "prr": "~1.0.1" + }, + "bin": { + "errno": "cli.js" + } + }, + "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-module-lexer": { + "version": "0.9.3", + "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.9.3.tgz", + "integrity": "sha512-1HQ2M2sPtxwnvOvT1ZClHyQDiggdNjURWpY2we6aMKCQiUVxTmVs2UYPLIrD84sS+kMdUwfBSylbJPwNnBrnHQ==", + "dev": true + }, + "node_modules/esbuild": { + "version": "0.13.12", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.13.12.tgz", + "integrity": "sha512-vTKKUt+yoz61U/BbrnmlG9XIjwpdIxmHB8DlPR0AAW6OdS+nBQBci6LUHU2q9WbBobMEIQxxDpKbkmOGYvxsow==", + "dev": true, + "hasInstallScript": true, + "optional": true, + "bin": { + "esbuild": "bin/esbuild" + }, + "optionalDependencies": { + "esbuild-android-arm64": "0.13.12", + "esbuild-darwin-64": "0.13.12", + "esbuild-darwin-arm64": "0.13.12", + "esbuild-freebsd-64": "0.13.12", + "esbuild-freebsd-arm64": "0.13.12", + "esbuild-linux-32": "0.13.12", + "esbuild-linux-64": "0.13.12", + "esbuild-linux-arm": "0.13.12", + "esbuild-linux-arm64": "0.13.12", + "esbuild-linux-mips64le": "0.13.12", + "esbuild-linux-ppc64le": "0.13.12", + "esbuild-netbsd-64": "0.13.12", + "esbuild-openbsd-64": "0.13.12", + "esbuild-sunos-64": "0.13.12", + "esbuild-windows-32": "0.13.12", + "esbuild-windows-64": "0.13.12", + "esbuild-windows-arm64": "0.13.12" + } + }, + "node_modules/esbuild-android-arm64": { + "version": "0.13.12", + "resolved": "https://registry.npmjs.org/esbuild-android-arm64/-/esbuild-android-arm64-0.13.12.tgz", + "integrity": "sha512-TSVZVrb4EIXz6KaYjXfTzPyyRpXV5zgYIADXtQsIenjZ78myvDGaPi11o4ZSaHIwFHsuwkB6ne5SZRBwAQ7maw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/esbuild-darwin-64": { + "version": "0.13.12", + "resolved": "https://registry.npmjs.org/esbuild-darwin-64/-/esbuild-darwin-64-0.13.12.tgz", + "integrity": "sha512-c51C+N+UHySoV2lgfWSwwmlnLnL0JWj/LzuZt9Ltk9ub1s2Y8cr6SQV5W3mqVH1egUceew6KZ8GyI4nwu+fhsw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/esbuild-darwin-arm64": { + "version": "0.13.12", + "resolved": "https://registry.npmjs.org/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.13.12.tgz", + "integrity": "sha512-JvAMtshP45Hd8A8wOzjkY1xAnTKTYuP/QUaKp5eUQGX+76GIie3fCdUUr2ZEKdvpSImNqxiZSIMziEiGB5oUmQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/esbuild-freebsd-64": { + "version": "0.13.12", + "resolved": "https://registry.npmjs.org/esbuild-freebsd-64/-/esbuild-freebsd-64-0.13.12.tgz", + "integrity": "sha512-r6On/Skv9f0ZjTu6PW5o7pdXr8aOgtFOEURJZYf1XAJs0IQ+gW+o1DzXjVkIoT+n1cm3N/t1KRJfX71MPg/ZUA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ] + }, + "node_modules/esbuild-freebsd-arm64": { + "version": "0.13.12", + "resolved": "https://registry.npmjs.org/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.13.12.tgz", + "integrity": "sha512-F6LmI2Q1gii073kmBE3NOTt/6zLL5zvZsxNLF8PMAwdHc+iBhD1vzfI8uQZMJA1IgXa3ocr3L3DJH9fLGXy6Yw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ] + }, + "node_modules/esbuild-linux-32": { + "version": "0.13.12", + "resolved": "https://registry.npmjs.org/esbuild-linux-32/-/esbuild-linux-32-0.13.12.tgz", + "integrity": "sha512-U1UZwG3UIwF7/V4tCVAo/nkBV9ag5KJiJTt+gaCmLVWH3bPLX7y+fNlhIWZy8raTMnXhMKfaTvWZ9TtmXzvkuQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/esbuild-linux-64": { + "version": "0.13.12", + "resolved": "https://registry.npmjs.org/esbuild-linux-64/-/esbuild-linux-64-0.13.12.tgz", + "integrity": "sha512-YpXSwtu2NxN3N4ifJxEdsgd6Q5d8LYqskrAwjmoCT6yQnEHJSF5uWcxv783HWN7lnGpJi9KUtDvYsnMdyGw71Q==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/esbuild-linux-arm": { + "version": "0.13.12", + "resolved": "https://registry.npmjs.org/esbuild-linux-arm/-/esbuild-linux-arm-0.13.12.tgz", + "integrity": "sha512-SyiT/JKxU6J+DY2qUiSLZJqCAftIt3uoGejZ0HDnUM2MGJqEGSGh7p1ecVL2gna3PxS4P+j6WAehCwgkBPXNIw==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/esbuild-linux-arm64": { + "version": "0.13.12", + "resolved": "https://registry.npmjs.org/esbuild-linux-arm64/-/esbuild-linux-arm64-0.13.12.tgz", + "integrity": "sha512-sgDNb8kb3BVodtAlcFGgwk+43KFCYjnFOaOfJibXnnIojNWuJHpL6aQJ4mumzNWw8Rt1xEtDQyuGK9f+Y24jGA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/esbuild-linux-mips64le": { + "version": "0.13.12", + "resolved": "https://registry.npmjs.org/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.13.12.tgz", + "integrity": "sha512-qQJHlZBG+QwVIA8AbTEtbvF084QgDi4DaUsUnA+EolY1bxrG+UyOuGflM2ZritGhfS/k7THFjJbjH2wIeoKA2g==", + "cpu": [ + "mips64el" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/esbuild-linux-ppc64le": { + "version": "0.13.12", + "resolved": "https://registry.npmjs.org/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.13.12.tgz", + "integrity": "sha512-2dSnm1ldL7Lppwlo04CGQUpwNn5hGqXI38OzaoPOkRsBRWFBozyGxTFSee/zHFS+Pdh3b28JJbRK3owrrRgWNw==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/esbuild-netbsd-64": { + "version": "0.13.12", + "resolved": "https://registry.npmjs.org/esbuild-netbsd-64/-/esbuild-netbsd-64-0.13.12.tgz", + "integrity": "sha512-D4raxr02dcRiQNbxOLzpqBzcJNFAdsDNxjUbKkDMZBkL54Z0vZh4LRndycdZAMcIdizC/l/Yp/ZsBdAFxc5nbA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "netbsd" + ] + }, + "node_modules/esbuild-openbsd-64": { + "version": "0.13.12", + "resolved": "https://registry.npmjs.org/esbuild-openbsd-64/-/esbuild-openbsd-64-0.13.12.tgz", + "integrity": "sha512-KuLCmYMb2kh05QuPJ+va60bKIH5wHL8ypDkmpy47lzwmdxNsuySeCMHuTv5o2Af1RUn5KLO5ZxaZeq4GEY7DaQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ] + }, + "node_modules/esbuild-sunos-64": { + "version": "0.13.12", + "resolved": "https://registry.npmjs.org/esbuild-sunos-64/-/esbuild-sunos-64-0.13.12.tgz", + "integrity": "sha512-jBsF+e0woK3miKI8ufGWKG3o3rY9DpHvCVRn5eburMIIE+2c+y3IZ1srsthKyKI6kkXLvV4Cf/E7w56kLipMXw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "sunos" + ] + }, + "node_modules/esbuild-wasm": { + "version": "0.13.12", + "resolved": "https://registry.npmjs.org/esbuild-wasm/-/esbuild-wasm-0.13.12.tgz", + "integrity": "sha512-eGdiSewbnJffEvyA0qQmr+w3HurBMVp4QhOfICzeeoL9naC8qC3PFaw6hZaqSgks5DXnQONtUGUFLsX3eXpq8A==", + "dev": true, + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/esbuild-windows-32": { + "version": "0.13.12", + "resolved": "https://registry.npmjs.org/esbuild-windows-32/-/esbuild-windows-32-0.13.12.tgz", + "integrity": "sha512-L9m4lLFQrFeR7F+eLZXG82SbXZfUhyfu6CexZEil6vm+lc7GDCE0Q8DiNutkpzjv1+RAbIGVva9muItQ7HVTkQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/esbuild-windows-64": { + "version": "0.13.12", + "resolved": "https://registry.npmjs.org/esbuild-windows-64/-/esbuild-windows-64-0.13.12.tgz", + "integrity": "sha512-k4tX4uJlSbSkfs78W5d9+I9gpd+7N95W7H2bgOMFPsYREVJs31+Q2gLLHlsnlY95zBoPQMIzHooUIsixQIBjaQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/esbuild-windows-arm64": { + "version": "0.13.12", + "resolved": "https://registry.npmjs.org/esbuild-windows-arm64/-/esbuild-windows-arm64-0.13.12.tgz", + "integrity": "sha512-2tTv/BpYRIvuwHpp2M960nG7uvL+d78LFW/ikPItO+2GfK51CswIKSetSpDii+cjz8e9iSPgs+BU4o8nWICBwQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/escalade": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=", + "dev": true + }, + "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/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/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/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/esrecurse/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "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/etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/eventemitter-asyncresource": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/eventemitter-asyncresource/-/eventemitter-asyncresource-1.0.0.tgz", + "integrity": "sha512-39F7TBIV0G7gTelxwbEqnwhp90eqCPON1k0NwNfwhgKn4Co4ybUbj2pECcXT0B3ztRKZ7Pw1JujUUgmQJHcVAQ==", + "dev": true + }, + "node_modules/eventemitter3": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", + "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==", + "dev": true + }, + "node_modules/events": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", + "dev": true, + "engines": { + "node": ">=0.8.x" + } + }, + "node_modules/execa": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", + "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", + "dev": true, + "dependencies": { + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.0", + "human-signals": "^2.1.0", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.1", + "onetime": "^5.1.2", + "signal-exit": "^3.0.3", + "strip-final-newline": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, + "node_modules/express": { + "version": "4.17.1", + "resolved": "https://registry.npmjs.org/express/-/express-4.17.1.tgz", + "integrity": "sha512-mHJ9O79RqluphRrcw2X/GTh3k9tVv8YcoyY4Kkh4WDMUYKRZUq0h1o0w2rrrxBqM7VoeUVqgb27xlEMXTnYt4g==", + "dev": true, + "dependencies": { + "accepts": "~1.3.7", + "array-flatten": "1.1.1", + "body-parser": "1.19.0", + "content-disposition": "0.5.3", + "content-type": "~1.0.4", + "cookie": "0.4.0", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "~1.1.2", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "~1.1.2", + "fresh": "0.5.2", + "merge-descriptors": "1.0.1", + "methods": "~1.1.2", + "on-finished": "~2.3.0", + "parseurl": "~1.3.3", + "path-to-regexp": "0.1.7", + "proxy-addr": "~2.0.5", + "qs": "6.7.0", + "range-parser": "~1.2.1", + "safe-buffer": "5.1.2", + "send": "0.17.1", + "serve-static": "1.14.1", + "setprototypeof": "1.1.1", + "statuses": "~1.5.0", + "type-is": "~1.6.18", + "utils-merge": "1.0.1", + "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/express/node_modules/array-flatten": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=", + "dev": true + }, + "node_modules/express/node_modules/cookie": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.0.tgz", + "integrity": "sha512-+Hp8fLp57wnUSt0tY0tHEXh4voZRDnoIrZPqlo3DPiI4y9lwg/jqx+1Om94/W6ZaPDOUbnjOt/99w66zk+l1Xg==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/express/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/express/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/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/external-editor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", + "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", + "dev": true, + "dependencies": { + "chardet": "^0.7.0", + "iconv-lite": "^0.4.24", + "tmp": "^0.0.33" + }, + "engines": { + "node": ">=4" + } + }, + "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/fast-glob": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.7.tgz", + "integrity": "sha512-rYGMRwip6lUMvYD3BTScMwT1HtAs2d71SMv66Vrxs0IekGZEjhM0pcMfjQPnknBt2zeCwQMEupiN02ZP4DiT1Q==", + "dev": true, + "dependencies": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.4" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true + }, + "node_modules/fastq": { + "version": "1.13.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.13.0.tgz", + "integrity": "sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==", + "dev": true, + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/faye-websocket": { + "version": "0.11.4", + "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.4.tgz", + "integrity": "sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g==", + "dev": true, + "dependencies": { + "websocket-driver": ">=0.5.1" + }, + "engines": { + "node": ">=0.8.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" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "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/finalhandler": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz", + "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==", + "dev": true, + "dependencies": { + "debug": "2.6.9", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "on-finished": "~2.3.0", + "parseurl": "~1.3.3", + "statuses": "~1.5.0", + "unpipe": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/finalhandler/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/finalhandler/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/find-cache-dir": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz", + "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==", + "dev": true, + "dependencies": { + "commondir": "^1.0.1", + "make-dir": "^3.0.2", + "pkg-dir": "^4.1.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/avajs/find-cache-dir?sponsor=1" + } + }, + "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/flatted": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.2.tgz", + "integrity": "sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA==", + "dev": true + }, + "node_modules/flatten": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/flatten/-/flatten-1.0.3.tgz", + "integrity": "sha512-dVsPA/UwQ8+2uoFe5GHtiBMu48dWLTdsuEd7CKGlZlD78r1TTWBvDuFaFGKCo/ZfEr95Uk56vZoX86OsHkUeIg==", + "deprecated": "flatten is deprecated in favor of utility frameworks such as lodash.", + "dev": true + }, + "node_modules/follow-redirects": { + "version": "1.14.5", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.5.tgz", + "integrity": "sha512-wtphSXy7d4/OR+MvIFbCVBDzZ5520qV8XfPklSN5QtxuMUJZ+b0Wnst1e1lCDocfzuCkHqj8k0FpZqO+UIaKNA==", + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], + "engines": { + "node": ">=4.0" + }, + "peerDependenciesMeta": { + "debug": { + "optional": true + } + } + }, + "node_modules/forwarded": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", + "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/fs-extra": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", + "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + }, + "engines": { + "node": ">=6 <7 || >=8" + } + }, + "node_modules/fs-minipass": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", + "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", + "dev": true, + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/fs-monkey": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/fs-monkey/-/fs-monkey-1.0.3.tgz", + "integrity": "sha512-cybjIfiiE+pTWicSCLFHSrXZ6EilF30oh91FDP9S2B051prEa7QWfrVTQm10/dDpswBDXZugPa1Ogu8Yh+HV0Q==", + "dev": true + }, + "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": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "dev": true, + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "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/gauge": { + "version": "2.7.4", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", + "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", + "dev": 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/gauge/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, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/gauge/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, + "dependencies": { + "number-is-nan": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/gauge/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, + "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/gauge/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, + "dependencies": { + "ansi-regex": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "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-intrinsic": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz", + "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==", + "dev": true, + "dependencies": { + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "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-stream": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", + "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/glob": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", + "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", + "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": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/glob-to-regexp": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", + "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", + "dev": true + }, + "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.4", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.0.4.tgz", + "integrity": "sha512-9O4MVG9ioZJ08ffbcyVYyLOJLk5JQ688pJ4eMGLpdWLHq/Wr1D9BlriLQyL0E+jbkuePVZXYFj47QM/v093wHg==", + "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" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.8", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.8.tgz", + "integrity": "sha512-qkIilPUYcNhJpd33n0GBXTB1MMPp14TxEsEs0pTrsSVucApsYzW5V+Q8Qxhik6KU3evy+qkAAowTByymK0avdg==", + "dev": true + }, + "node_modules/handle-thing": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz", + "integrity": "sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==", + "dev": true + }, + "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.2", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz", + "integrity": "sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-tostringtag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", + "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", + "dev": true, + "dependencies": { + "has-symbols": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "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 + }, + "node_modules/hdr-histogram-js": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/hdr-histogram-js/-/hdr-histogram-js-2.0.1.tgz", + "integrity": "sha512-uPZxl1dAFnjUFHWLZmt93vUUvtHeaBay9nVNHu38SdOjMSF/4KqJUqa1Seuj08ptU1rEb6AHvB41X8n/zFZ74Q==", + "dev": true, + "dependencies": { + "@assemblyscript/loader": "^0.10.1", + "base64-js": "^1.2.0", + "pako": "^1.0.3" + } + }, + "node_modules/hdr-histogram-percentiles-obj": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/hdr-histogram-percentiles-obj/-/hdr-histogram-percentiles-obj-3.0.0.tgz", + "integrity": "sha512-7kIufnBqdsBGcSZLPJwqHT3yhk1QTsSlFsVD3kx5ixH/AlgBs9yM1q6DPhXZ8f8gtdqgh7N7/5btRLpQsS2gHw==", + "dev": true + }, + "node_modules/hosted-git-info": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.0.2.tgz", + "integrity": "sha512-c9OGXbZ3guC/xOlCg1Ci/VgWlwsqDv1yMQL1CWqXDL0hDjXuNcq0zuR4xqPSuasI3kqFDhqSyTjREz5gzq0fXg==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/hpack.js": { + "version": "2.1.6", + "resolved": "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz", + "integrity": "sha1-h3dMCUnlE/QuhFdbPEVoH63ioLI=", + "dev": true, + "dependencies": { + "inherits": "^2.0.1", + "obuf": "^1.0.0", + "readable-stream": "^2.0.1", + "wbuf": "^1.1.0" + } + }, + "node_modules/hpack.js/node_modules/readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dev": 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/hpack.js/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, + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/html-entities": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-2.3.2.tgz", + "integrity": "sha512-c3Ab/url5ksaT0WyleslpBEthOzWhrjQbg75y7XUsfSzi3Dgzt0l8w5e7DylRn15MTlMMD58dTfzddNS2kcAjQ==", + "dev": true + }, + "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-cache-semantics": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz", + "integrity": "sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==", + "dev": true + }, + "node_modules/http-deceiver": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz", + "integrity": "sha1-+nFolEq5pRnTN8sL7HKE3D5yPYc=", + "dev": true + }, + "node_modules/http-errors": { + "version": "1.7.2", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.2.tgz", + "integrity": "sha512-uUQBt3H/cSIVfch6i1EuPNy/YsRSOUBXTVfZ+yR7Zjez3qjBz6i9+i4zjNaoqcoFVI4lQJ5plg63TvGfRSDCRg==", + "dev": true, + "dependencies": { + "depd": "~1.1.2", + "inherits": "2.0.3", + "setprototypeof": "1.1.1", + "statuses": ">= 1.5.0 < 2", + "toidentifier": "1.0.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/http-errors/node_modules/inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", + "dev": true + }, + "node_modules/http-parser-js": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.3.tgz", + "integrity": "sha512-t7hjvef/5HEK7RWTdUzVUhl8zkEu+LlaE0IYzdMuvbSDipxBRpOn4Uhw8ZyECEa808iVT8XCjzo6xmYt4CiLZg==", + "dev": true + }, + "node_modules/http-proxy": { + "version": "1.18.1", + "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.1.tgz", + "integrity": "sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==", + "dev": true, + "dependencies": { + "eventemitter3": "^4.0.0", + "follow-redirects": "^1.0.0", + "requires-port": "^1.0.0" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/http-proxy-agent": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz", + "integrity": "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==", + "dev": true, + "dependencies": { + "@tootallnate/once": "1", + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/http-proxy-middleware": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-2.0.1.tgz", + "integrity": "sha512-cfaXRVoZxSed/BmkA7SwBVNI9Kj7HFltaE5rqYOub5kWzWZ+gofV2koVN1j2rMW7pEfSSlCHGJ31xmuyFyfLOg==", + "dev": true, + "dependencies": { + "@types/http-proxy": "^1.17.5", + "http-proxy": "^1.18.1", + "is-glob": "^4.0.1", + "is-plain-obj": "^3.0.0", + "micromatch": "^4.0.2" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/https-proxy-agent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.0.tgz", + "integrity": "sha512-EkYm5BcKUGiduxzSt3Eppko+PiNWNEpa4ySk9vTC6wDsQJW9rHSa+UhGNJoRYp7bz6Ht1eaRIa6QaJqO5rCFbA==", + "dev": true, + "dependencies": { + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/human-signals": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", + "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", + "dev": true, + "engines": { + "node": ">=10.17.0" + } + }, + "node_modules/humanize-ms": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/humanize-ms/-/humanize-ms-1.2.1.tgz", + "integrity": "sha1-xG4xWaKT9riW2ikxbYtv6Lt5u+0=", + "dev": true, + "dependencies": { + "ms": "^2.0.0" + } + }, + "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/icss-utils": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-5.1.0.tgz", + "integrity": "sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==", + "dev": true, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/ignore": { + "version": "5.1.9", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.9.tgz", + "integrity": "sha512-2zeMQpbKz5dhZ9IwL0gbxSW5w0NK/MSAMtNuhgIHEPmaU3vPdKPL0UdvUCXs5SS4JAwsBxysK5sFMW8ocFiVjQ==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/ignore-walk": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-4.0.1.tgz", + "integrity": "sha512-rzDQLaW4jQbh2YrOFlJdCtX8qgJTehFRYiUB2r1osqTeDzV/3+Jh8fz1oAPzUThf3iku8Ds4IDqawI5d8mUiQw==", + "dev": true, + "dependencies": { + "minimatch": "^3.0.4" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/image-size": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/image-size/-/image-size-0.5.5.tgz", + "integrity": "sha1-Cd/Uq50g4p6xw+gLiZA3jfnjy5w=", + "dev": true, + "optional": true, + "bin": { + "image-size": "bin/image-size.js" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "dev": true, + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/import-fresh/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/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==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/indexes-of": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/indexes-of/-/indexes-of-1.0.1.tgz", + "integrity": "sha1-8w9xbI4r00bHtn0985FVZqfAVgc=", + "dev": true + }, + "node_modules/infer-owner": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz", + "integrity": "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==", + "dev": true + }, + "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/ini": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ini/-/ini-2.0.0.tgz", + "integrity": "sha512-7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/inquirer": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-8.2.0.tgz", + "integrity": "sha512-0crLweprevJ02tTuA6ThpoAERAGyVILC4sS74uib58Xf/zSr1/ZWtmm7D5CI+bSQEaA04f0K7idaHpQbSWgiVQ==", + "dev": true, + "dependencies": { + "ansi-escapes": "^4.2.1", + "chalk": "^4.1.1", + "cli-cursor": "^3.1.0", + "cli-width": "^3.0.0", + "external-editor": "^3.0.3", + "figures": "^3.0.0", + "lodash": "^4.17.21", + "mute-stream": "0.0.8", + "ora": "^5.4.1", + "run-async": "^2.4.0", + "rxjs": "^7.2.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0", + "through": "^2.3.6" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/inquirer/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" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/inquirer/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/inquirer/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/inquirer/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/inquirer/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/inquirer/node_modules/rxjs": { + "version": "7.4.0", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.4.0.tgz", + "integrity": "sha512-7SQDi7xeTMCJpqViXh8gL/lebcwlp3d831F05+9B44A4B0WfsEwUQHR64gsH1kvJ+Ep/J9K2+n1hVl1CsGN23w==", + "dev": true, + "dependencies": { + "tslib": "~2.1.0" + } + }, + "node_modules/inquirer/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/inquirer/node_modules/tslib": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.1.0.tgz", + "integrity": "sha512-hcVC3wYEziELGGmEEXue7D75zbwIIVUMWAVbHItGPx0ziyXxrOMQx4rQEVEV45Ut/1IotuEvwqPopzIOkDMf0A==", + "dev": true + }, + "node_modules/internal-ip": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/internal-ip/-/internal-ip-6.2.0.tgz", + "integrity": "sha512-D8WGsR6yDt8uq7vDMu7mjcR+yRMm3dW8yufyChmszWRjcSHuxLBkR3GdS2HZAjodsaGuCvXeEJpueisXJULghg==", + "dev": true, + "dependencies": { + "default-gateway": "^6.0.0", + "ipaddr.js": "^1.9.1", + "is-ip": "^3.1.0", + "p-event": "^4.2.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/internal-ip?sponsor=1" + } + }, + "node_modules/internal-ip/node_modules/ipaddr.js": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", + "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", + "dev": true, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/ip": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.5.tgz", + "integrity": "sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo=", + "dev": true + }, + "node_modules/ip-regex": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ip-regex/-/ip-regex-4.3.0.tgz", + "integrity": "sha512-B9ZWJxHHOHUhUjCPrMpLD4xEq35bUTClHM1S6CBU5ixQnkZmwipwgc96vAd7AAGM9TGHvJR+Uss+/Ak6UphK+Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/ipaddr.js": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.0.1.tgz", + "integrity": "sha512-1qTgH9NG+IIJ4yfKs2e6Pp1bZg8wbDbKHT21HrLIeYBTRLgMYKnMTPAuI3Lcs61nfx5h1xlXnbJtH1kX5/d/ng==", + "dev": true, + "engines": { + "node": ">= 10" + } + }, + "node_modules/is-arguments": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz", + "integrity": "sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "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-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dev": true, + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-core-module": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.8.0.tgz", + "integrity": "sha512-vd15qHsaqrRL7dtH6QNuy0ndJmRDrS9HAM1CAiSifNUFv4x1a0CCVsj18hJ1mShxIG6T2i1sO78MkP56r0nYRw==", + "dev": true, + "dependencies": { + "has": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-date-object": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", + "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", + "dev": true, + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-docker": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", + "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", + "dev": true, + "bin": { + "is-docker": "cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "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": "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/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dev": true, + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-interactive": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-1.0.0.tgz", + "integrity": "sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-ip": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-ip/-/is-ip-3.1.0.tgz", + "integrity": "sha512-35vd5necO7IitFPjd/YBeqwWnyDWbuLH9ZXQdMfDA8TEo7pv5X8yfrvVO3xbJbLUlERCMvf6X0hTUamQxCYJ9Q==", + "dev": true, + "dependencies": { + "ip-regex": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-lambda": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-lambda/-/is-lambda-1.0.1.tgz", + "integrity": "sha1-PZh3iZ5qU+/AFgUEzeFfgubwYdU=", + "dev": true + }, + "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/is-path-cwd": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-2.2.0.tgz", + "integrity": "sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/is-path-inside": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", + "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-plain-obj": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-3.0.0.tgz", + "integrity": "sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "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-regex": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", + "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-unicode-supported": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", + "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-what": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/is-what/-/is-what-3.14.1.tgz", + "integrity": "sha512-sNxgpk9793nzSs7bA6JQJGeIuRBQhAaNGG77kzYQgMkrID+lS6SlK07K5LaptscDlSaIgH+GPFzf+d75FVxozA==", + "dev": true + }, + "node_modules/is-wsl": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", + "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", + "dev": true, + "dependencies": { + "is-docker": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "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/isbinaryfile": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-4.0.8.tgz", + "integrity": "sha512-53h6XFniq77YdW+spoRrebh0mnmTxRPTlcuIArO57lmMdq4uBKFKaeTjnb92oYWrSn/LVL+LT+Hap2tFQj8V+w==", + "dev": true, + "engines": { + "node": ">= 8.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/gjtorikian/" + } + }, + "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/istanbul-lib-coverage": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz", + "integrity": "sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-instrument": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.1.0.tgz", + "integrity": "sha512-czwUz525rkOFDJxfKK6mYfIs9zBKILyrZQxjz3ABhjQXhbhFsSbo1HW/BFcsDnfJYJWA6thRR5/TUY2qs5W99Q==", + "dev": true, + "dependencies": { + "@babel/core": "^7.12.3", + "@babel/parser": "^7.14.7", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-instrument/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/istanbul-lib-report": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", + "integrity": "sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==", + "dev": true, + "dependencies": { + "istanbul-lib-coverage": "^3.0.0", + "make-dir": "^3.0.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-report/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/istanbul-lib-report/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/istanbul-lib-source-maps": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", + "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", + "dev": true, + "dependencies": { + "debug": "^4.1.1", + "istanbul-lib-coverage": "^3.0.0", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=10" + } + }, + "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": "3.0.5", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.0.5.tgz", + "integrity": "sha512-5+19PlhnGabNWB7kOFnuxT8H3T/iIyQzIbQMxXsURmmvKg86P2sbkrGOT77VnHw0Qr0gc2XzRaRfMZYYbSQCJQ==", + "dev": true, + "dependencies": { + "html-escaper": "^2.0.0", + "istanbul-lib-report": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jasmine-core": { + "version": "3.8.0", + "resolved": "https://registry.npmjs.org/jasmine-core/-/jasmine-core-3.8.0.tgz", + "integrity": "sha512-zl0nZWDrmbCiKns0NcjkFGYkVTGCPUgoHypTaj+G2AzaWus7QGoXARSlYsSle2VRpSdfJmM+hzmFKzQNhF2kHg==", + "dev": true + }, + "node_modules/jest-worker": { + "version": "27.3.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.3.1.tgz", + "integrity": "sha512-ks3WCzsiZaOPJl/oMsDjaf0TRiSv7ctNgs0FqRr2nARsovz6AWWy4oLElwcquGSz692DzgZQrCLScPNs5YlC4g==", + "dev": true, + "dependencies": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/jest-worker/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-worker/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, + "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": "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/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.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", + "dev": true + }, + "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/json5": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.0.tgz", + "integrity": "sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA==", + "dev": true, + "dependencies": { + "minimist": "^1.2.5" + }, + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/jsonc-parser": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.0.0.tgz", + "integrity": "sha512-fQzRfAbIBnR0IQvftw9FJveWiHp72Fg20giDrHz6TdfB12UH/uue0D3hm57UB5KgAVuniLMCaS8P1IMj9NR7cA==", + "dev": true + }, + "node_modules/jsonfile": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", + "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", + "dev": true, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/jsonparse": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", + "integrity": "sha1-P02uSpH6wxX3EGL4UhzCOfE2YoA=", + "dev": true, + "engines": [ + "node >= 0.2.0" + ] + }, + "node_modules/kareem": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/kareem/-/kareem-2.3.2.tgz", + "integrity": "sha512-STHz9P7X2L4Kwn72fA4rGyqyXdmrMSdxqHx9IXon/FXluXieaFA6KJ2upcHAHxQPQ0LeM/OjLrhFxifHewOALQ==" + }, + "node_modules/karma": { + "version": "6.3.9", + "resolved": "https://registry.npmjs.org/karma/-/karma-6.3.9.tgz", + "integrity": "sha512-E/MqdLM9uVIhfuyVnrhlGBu4miafBdXEAEqCmwdEMh3n17C7UWC/8Kvm3AYKr91gc7scutekZ0xv6rxRaUCtnw==", + "dev": true, + "dependencies": { + "body-parser": "^1.19.0", + "braces": "^3.0.2", + "chokidar": "^3.5.1", + "colors": "^1.4.0", + "connect": "^3.7.0", + "di": "^0.0.1", + "dom-serialize": "^2.2.1", + "glob": "^7.1.7", + "graceful-fs": "^4.2.6", + "http-proxy": "^1.18.1", + "isbinaryfile": "^4.0.8", + "lodash": "^4.17.21", + "log4js": "^6.3.0", + "mime": "^2.5.2", + "minimatch": "^3.0.4", + "qjobs": "^1.2.0", + "range-parser": "^1.2.1", + "rimraf": "^3.0.2", + "socket.io": "^4.2.0", + "source-map": "^0.6.1", + "tmp": "^0.2.1", + "ua-parser-js": "^0.7.30", + "yargs": "^16.1.1" + }, + "bin": { + "karma": "bin/karma" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/karma-chrome-launcher": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/karma-chrome-launcher/-/karma-chrome-launcher-3.1.0.tgz", + "integrity": "sha512-3dPs/n7vgz1rxxtynpzZTvb9y/GIaW8xjAwcIGttLbycqoFtI7yo1NGnQi6oFTherRE+GIhCAHZC4vEqWGhNvg==", + "dev": true, + "dependencies": { + "which": "^1.2.1" + } + }, + "node_modules/karma-coverage": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/karma-coverage/-/karma-coverage-2.0.3.tgz", + "integrity": "sha512-atDvLQqvPcLxhED0cmXYdsPMCQuh6Asa9FMZW1bhNqlVEhJoB9qyZ2BY1gu7D/rr5GLGb5QzYO4siQskxaWP/g==", + "dev": true, + "dependencies": { + "istanbul-lib-coverage": "^3.0.0", + "istanbul-lib-instrument": "^4.0.1", + "istanbul-lib-report": "^3.0.0", + "istanbul-lib-source-maps": "^4.0.0", + "istanbul-reports": "^3.0.0", + "minimatch": "^3.0.4" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/karma-coverage/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/karma-coverage/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/karma-jasmine": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/karma-jasmine/-/karma-jasmine-4.0.1.tgz", + "integrity": "sha512-h8XDAhTiZjJKzfkoO1laMH+zfNlra+dEQHUAjpn5JV1zCPtOIVWGQjLBrqhnzQa/hrU2XrZwSyBa6XjEBzfXzw==", + "dev": true, + "dependencies": { + "jasmine-core": "^3.6.0" + }, + "engines": { + "node": ">= 10" + }, + "peerDependencies": { + "karma": "*" + } + }, + "node_modules/karma-jasmine-html-reporter": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/karma-jasmine-html-reporter/-/karma-jasmine-html-reporter-1.7.0.tgz", + "integrity": "sha512-pzum1TL7j90DTE86eFt48/s12hqwQuiD+e5aXx2Dc9wDEn2LfGq6RoAxEZZjFiN0RDSCOnosEKRZWxbQ+iMpQQ==", + "dev": true, + "peerDependencies": { + "jasmine-core": ">=3.8", + "karma": ">=0.9", + "karma-jasmine": ">=1.1" + } + }, + "node_modules/karma-source-map-support": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/karma-source-map-support/-/karma-source-map-support-1.4.0.tgz", + "integrity": "sha512-RsBECncGO17KAoJCYXjv+ckIz+Ii9NCi+9enk+rq6XC81ezYkb4/RHE6CTXdA7IOJqoF3wcaLfVG0CPmE5ca6A==", + "dev": true, + "dependencies": { + "source-map-support": "^0.5.5" + } + }, + "node_modules/karma/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/karma/node_modules/tmp": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz", + "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", + "dev": true, + "dependencies": { + "rimraf": "^3.0.0" + }, + "engines": { + "node": ">=8.17.0" + } + }, + "node_modules/karma/node_modules/yargs": { + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "dev": true, + "dependencies": { + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.0", + "y18n": "^5.0.5", + "yargs-parser": "^20.2.2" + }, + "engines": { + "node": ">=10" + } + }, + "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/klona": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/klona/-/klona-2.0.5.tgz", + "integrity": "sha512-pJiBpiXMbt7dkzXe8Ghj/u4FfXOOa98fPW+bihOJ4SjnoijweJrNThJfd3ifXpXhREjpoF2mZVH1GfS9LV3kHQ==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/koa-basic-auth": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/koa-basic-auth/-/koa-basic-auth-4.0.0.tgz", + "integrity": "sha512-eV1sGVAizDuFWNpY43VF3Z1ND4PotQZB/igxHNrcJXzXw+Flmj8Uv+4hP9LyNXyvqLJz/X5bmXeMu84AAGD9Jw==", + "dependencies": { + "basic-auth": "^2.0.0", + "tsscmp": "^1.0.6" + } + }, + "node_modules/less": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/less/-/less-4.1.2.tgz", + "integrity": "sha512-EoQp/Et7OSOVu0aJknJOtlXZsnr8XE8KwuzTHOLeVSEx8pVWUICc8Q0VYRHgzyjX78nMEyC/oztWFbgyhtNfDA==", + "dev": true, + "dependencies": { + "copy-anything": "^2.0.1", + "parse-node-version": "^1.0.1", + "tslib": "^2.3.0" + }, + "bin": { + "lessc": "bin/lessc" + }, + "engines": { + "node": ">=6" + }, + "optionalDependencies": { + "errno": "^0.1.1", + "graceful-fs": "^4.1.2", + "image-size": "~0.5.0", + "make-dir": "^2.1.0", + "mime": "^1.4.1", + "needle": "^2.5.2", + "source-map": "~0.6.0" + } + }, + "node_modules/less-loader": { + "version": "10.2.0", + "resolved": "https://registry.npmjs.org/less-loader/-/less-loader-10.2.0.tgz", + "integrity": "sha512-AV5KHWvCezW27GT90WATaDnfXBv99llDbtaj4bshq6DvAihMdNjaPDcUMa6EXKLRF+P2opFenJp89BXg91XLYg==", + "dev": true, + "dependencies": { + "klona": "^2.0.4" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "less": "^3.5.0 || ^4.0.0", + "webpack": "^5.0.0" + } + }, + "node_modules/less/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, + "optional": true, + "dependencies": { + "pify": "^4.0.1", + "semver": "^5.6.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/less/node_modules/mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "dev": true, + "optional": true, + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/less/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, + "optional": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/less/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true, + "optional": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/less/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/license-webpack-plugin": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/license-webpack-plugin/-/license-webpack-plugin-3.0.0.tgz", + "integrity": "sha512-Owp0mXaJu/09h9hvZTazMni/Ni7bjh4R4xIfLhWP1O2wrhhKtezAA8U42TTeNDpyDMUD2ljeGC8Jh9xSFnyq4Q==", + "dev": true, + "peerDependenciesMeta": { + "webpack": { + "optional": true + }, + "webpack-sources": { + "optional": true + } + } + }, + "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/loader-runner": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.2.0.tgz", + "integrity": "sha512-92+huvxMvYlMzMt0iIOukcwYBFpkYJdpl2xsZ7LrlayO7E8SOv+JJUEK17B/dJIHAOLMfh2dZZ/Y18WgmGtYNw==", + "dev": true, + "engines": { + "node": ">=6.11.5" + } + }, + "node_modules/loader-utils": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-3.0.0.tgz", + "integrity": "sha512-ry4RE7qen73BFLgihlbyllGIW9SVWLUD5Cq9VWtzrqhntOMOJl8yEjA89d5mCUTT0puCnHo4EecO6bz+BOAS8w==", + "dev": true, + "dependencies": { + "big.js": "^6.1.1" + }, + "engines": { + "node": ">= 12.13.0" + } + }, + "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/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "dev": true + }, + "node_modules/lodash.debounce": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", + "integrity": "sha1-gteb/zCmfEAF/9XiUVMArZyk168=", + "dev": true + }, + "node_modules/log-symbols": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", + "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", + "dev": true, + "dependencies": { + "chalk": "^4.1.0", + "is-unicode-supported": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "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" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/log-symbols/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "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/log4js": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/log4js/-/log4js-6.3.0.tgz", + "integrity": "sha512-Mc8jNuSFImQUIateBFwdOQcmC6Q5maU0VVvdC2R6XMb66/VnT+7WS4D/0EeNMZu1YODmJe5NIn2XftCzEocUgw==", + "dev": true, + "dependencies": { + "date-format": "^3.0.0", + "debug": "^4.1.1", + "flatted": "^2.0.1", + "rfdc": "^1.1.4", + "streamroller": "^2.2.4" + }, + "engines": { + "node": ">=8.0" + } + }, + "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/magic-string": { + "version": "0.25.7", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.7.tgz", + "integrity": "sha512-4CrMT5DOHTDk4HYDlzmwu4FVCcIYI8gauveasrdCu2IKIFOJ3f0v/8MDGJCDL9oD2ppz/Av1b0Nj345H9M+XIA==", + "dev": true, + "dependencies": { + "sourcemap-codec": "^1.4.4" + } + }, + "node_modules/make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "dependencies": { + "semver": "^6.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/make-dir/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/make-fetch-happen": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-9.1.0.tgz", + "integrity": "sha512-+zopwDy7DNknmwPQplem5lAZX/eCOzSvSNNcSKm5eVwTkOBzoktEfXsa9L23J/GIRhxRsaxzkPEhrJEpE2F4Gg==", + "dev": true, + "dependencies": { + "agentkeepalive": "^4.1.3", + "cacache": "^15.2.0", + "http-cache-semantics": "^4.1.0", + "http-proxy-agent": "^4.0.1", + "https-proxy-agent": "^5.0.0", + "is-lambda": "^1.0.1", + "lru-cache": "^6.0.0", + "minipass": "^3.1.3", + "minipass-collect": "^1.0.2", + "minipass-fetch": "^1.3.2", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^0.6.2", + "promise-retry": "^2.0.1", + "socks-proxy-agent": "^6.0.0", + "ssri": "^8.0.0" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/material-design-icons": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/material-design-icons/-/material-design-icons-3.0.1.tgz", + "integrity": "sha1-mnHEh0chjrylHlGmbaaCA4zct78=" + }, + "node_modules/media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/memfs": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/memfs/-/memfs-3.3.0.tgz", + "integrity": "sha512-BEE62uMfKOavX3iG7GYX43QJ+hAeeWnwIAuJ/R6q96jaMtiLzhsxHJC8B1L7fK7Pt/vXDRwb3SG/yBpNGDPqzg==", + "dev": true, + "dependencies": { + "fs-monkey": "1.0.3" + }, + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/memory-pager": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/memory-pager/-/memory-pager-1.5.0.tgz", + "integrity": "sha512-ZS4Bp4r/Zoeq6+NLJpP+0Zzm0pR8whtGPf1XExKLJBAczGMnSi3It14OiNCStjQjM6NU1okjQGSxgEZN8eBYKg==", + "optional": true + }, + "node_modules/merge-descriptors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", + "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=", + "dev": true + }, + "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/methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/micromatch": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz", + "integrity": "sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==", + "dev": true, + "dependencies": { + "braces": "^3.0.1", + "picomatch": "^2.2.3" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/mime": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.6.0.tgz", + "integrity": "sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==", + "dev": true, + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/mime-db": { + "version": "1.51.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.51.0.tgz", + "integrity": "sha512-5y8A56jg7XVQx2mbv1lu49NR4dokRnhZYTtL+KGfaa27uq4pSTXkwQkFJl4pkRMyNFz/EtYDSkiiEHx3F7UN6g==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.34", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.34.tgz", + "integrity": "sha512-6cP692WwGIs9XXdOO4++N+7qjqv0rqxxVvJ3VHPh/Sc9mVZcQP+ZGhkKiTvWMQRr2tbHkJP/Yn7Y0npb3ZBs4A==", + "dev": true, + "dependencies": { + "mime-db": "1.51.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/mini-css-extract-plugin": { + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-2.4.3.tgz", + "integrity": "sha512-zekavl9mZuGyk7COjsfFY/f655AX61EKE0AthXPrmDk+oZyjZ9WzO4WPjXnnO9xl8obK2kmM6rAQrBEmk+WK1g==", + "dev": true, + "dependencies": { + "schema-utils": "^3.1.0" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.0.0" + } + }, + "node_modules/mini-css-extract-plugin/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" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/mini-css-extract-plugin/node_modules/ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "dev": true, + "peerDependencies": { + "ajv": "^6.9.1" + } + }, + "node_modules/mini-css-extract-plugin/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/mini-css-extract-plugin/node_modules/schema-utils": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", + "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", + "dev": true, + "dependencies": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/minimalistic-assert": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", + "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", + "dev": true + }, + "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/minipass": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.1.5.tgz", + "integrity": "sha512-+8NzxD82XQoNKNrl1d/FSi+X8wAEWR+sbYAfIvub4Nz0d22plFG72CEVVaufV8PNf4qSslFTD8VMOxNVhHCjTw==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-collect": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-1.0.2.tgz", + "integrity": "sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==", + "dev": true, + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/minipass-fetch": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-1.4.1.tgz", + "integrity": "sha512-CGH1eblLq26Y15+Azk7ey4xh0J/XfJfrCox5LDJiKqI2Q2iwOLOKrlmIaODiSQS8d18jalF6y2K2ePUm0CmShw==", + "dev": true, + "dependencies": { + "minipass": "^3.1.0", + "minipass-sized": "^1.0.3", + "minizlib": "^2.0.0" + }, + "engines": { + "node": ">=8" + }, + "optionalDependencies": { + "encoding": "^0.1.12" + } + }, + "node_modules/minipass-flush": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz", + "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==", + "dev": true, + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/minipass-json-stream": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minipass-json-stream/-/minipass-json-stream-1.0.1.tgz", + "integrity": "sha512-ODqY18UZt/I8k+b7rl2AENgbWE8IDYam+undIJONvigAz8KR5GWblsFTEfQs0WODsjbSXWlm+JHEv8Gr6Tfdbg==", + "dev": true, + "dependencies": { + "jsonparse": "^1.3.1", + "minipass": "^3.0.0" + } + }, + "node_modules/minipass-pipeline": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", + "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==", + "dev": true, + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-sized": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/minipass-sized/-/minipass-sized-1.0.3.tgz", + "integrity": "sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g==", + "dev": true, + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minizlib": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", + "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", + "dev": true, + "dependencies": { + "minipass": "^3.0.0", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "dev": true, + "bin": { + "mkdirp": "bin/cmd.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/mongodb": { + "version": "4.1.4", + "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-4.1.4.tgz", + "integrity": "sha512-Cv/sk8on/tpvvqbEvR1h03mdyNdyvvO+WhtFlL4jrZ+DSsN/oSQHVqmJQI/sBCqqbOArFcYCAYDfyzqFwV4GSQ==", + "dependencies": { + "bson": "^4.5.4", + "denque": "^2.0.1", + "mongodb-connection-string-url": "^2.1.0" + }, + "engines": { + "node": ">=12.9.0" + }, + "optionalDependencies": { + "saslprep": "^1.0.3" + } + }, + "node_modules/mongodb-connection-string-url": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/mongodb-connection-string-url/-/mongodb-connection-string-url-2.2.0.tgz", + "integrity": "sha512-U0cDxLUrQrl7DZA828CA+o69EuWPWEJTwdMPozyd7cy/dbtncUZczMw7wRHcwMD7oKOn0NM2tF9jdf5FFVW9CA==", + "dependencies": { + "@types/whatwg-url": "^8.2.1", + "whatwg-url": "^11.0.0" + } + }, + "node_modules/mongoose": { + "version": "6.0.13", + "resolved": "https://registry.npmjs.org/mongoose/-/mongoose-6.0.13.tgz", + "integrity": "sha512-/M/YKgx23fCX+j0lwObaHbCibXnMjyWeQrXZf0WaQeS/hL86wQVSmaOxh+kZXfyLOUr+vT2Hl44o50GZHUrKWw==", + "dependencies": { + "bson": "^4.2.2", + "kareem": "2.3.2", + "mongodb": "4.1.4", + "mpath": "0.8.4", + "mquery": "4.0.0", + "ms": "2.1.2", + "regexp-clone": "1.0.0", + "sift": "13.5.2", + "sliced": "1.0.1" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mongoose" + } + }, + "node_modules/mpath": { + "version": "0.8.4", + "resolved": "https://registry.npmjs.org/mpath/-/mpath-0.8.4.tgz", + "integrity": "sha512-DTxNZomBcTWlrMW76jy1wvV37X/cNNxPW1y2Jzd4DZkAaC5ZGsm8bfGfNOthcDuRJujXLqiuS6o3Tpy0JEoh7g==", + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/mquery": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/mquery/-/mquery-4.0.0.tgz", + "integrity": "sha512-nGjm89lHja+T/b8cybAby6H0YgA4qYC/lx6UlwvHGqvTq8bDaNeCwl1sY8uRELrNbVWJzIihxVd+vphGGn1vBw==", + "dependencies": { + "debug": "4.x", + "regexp-clone": "^1.0.0", + "sliced": "1.0.1" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "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/multicast-dns": { + "version": "6.2.3", + "resolved": "https://registry.npmjs.org/multicast-dns/-/multicast-dns-6.2.3.tgz", + "integrity": "sha512-ji6J5enbMyGRHIAkAOu3WdV8nggqviKCEKtXcOqfphZZtQrmHKycfynJ2V7eVPUA4NhJ6V7Wf4TmGbTwKE9B6g==", + "dev": true, + "dependencies": { + "dns-packet": "^1.3.1", + "thunky": "^1.0.2" + }, + "bin": { + "multicast-dns": "cli.js" + } + }, + "node_modules/multicast-dns-service-types": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/multicast-dns-service-types/-/multicast-dns-service-types-1.1.0.tgz", + "integrity": "sha1-iZ8R2WhuXgXLkbNdXw5jt3PPyQE=", + "dev": true + }, + "node_modules/mute-stream": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", + "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", + "dev": true + }, + "node_modules/nanoid": { + "version": "3.1.30", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.30.tgz", + "integrity": "sha512-zJpuPDwOv8D2zq2WRoMe1HsfZthVewpel9CAvTfc/2mBD1uUT/agc5f7GHGWXlYkFvi1mVxe4IjvP2HNrop7nQ==", + "dev": true, + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/needle": { + "version": "2.9.1", + "resolved": "https://registry.npmjs.org/needle/-/needle-2.9.1.tgz", + "integrity": "sha512-6R9fqJ5Zcmf+uYaFgdIHmLwNldn5HbK8L5ybn7Uz+ylX/rnOsSp1AHcvQSrCaFN+qNM1wpymHqD7mVasEOlHGQ==", + "dev": true, + "optional": true, + "dependencies": { + "debug": "^3.2.6", + "iconv-lite": "^0.4.4", + "sax": "^1.2.4" + }, + "bin": { + "needle": "bin/needle" + }, + "engines": { + "node": ">= 4.4.x" + } + }, + "node_modules/needle/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "optional": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/negotiator": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz", + "integrity": "sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/neo-async": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", + "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", + "dev": true + }, + "node_modules/nice-napi": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/nice-napi/-/nice-napi-1.0.2.tgz", + "integrity": "sha512-px/KnJAJZf5RuBGcfD+Sp2pAKq0ytz8j+1NehvgIGFkvtvFrDM3T8E4x/JJODXK9WZow8RRGrbA9QQ3hs+pDhA==", + "dev": true, + "hasInstallScript": true, + "optional": true, + "os": [ + "!win32" + ], + "dependencies": { + "node-addon-api": "^3.0.0", + "node-gyp-build": "^4.2.2" + } + }, + "node_modules/node-addon-api": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-3.2.1.tgz", + "integrity": "sha512-mmcei9JghVNDYydghQmeDX8KoAm0FAiYyIcUt/N4nhyAipB17pllZQDOJD2fotxABnt4Mdz+dKTO7eftLg4d0A==", + "dev": true, + "optional": true + }, + "node_modules/node-forge": { + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.10.0.tgz", + "integrity": "sha512-PPmu8eEeG9saEUvI97fm4OYxXVB6bFvyNTyiUOBichBpFG8A1Ljw3bY62+5oOjDEMHRnd0Y7HQ+x7uzxOzC6JA==", + "dev": true, + "engines": { + "node": ">= 6.0.0" + } + }, + "node_modules/node-gyp": { + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-8.4.0.tgz", + "integrity": "sha512-Bi/oCm5bH6F+FmzfUxJpPaxMEyIhszULGR3TprmTeku8/dMFcdTcypk120NeZqEt54r1BrgEKtm2jJiuIKE28Q==", + "dev": true, + "dependencies": { + "env-paths": "^2.2.0", + "glob": "^7.1.4", + "graceful-fs": "^4.2.6", + "make-fetch-happen": "^9.1.0", + "nopt": "^5.0.0", + "npmlog": "^4.1.2", + "rimraf": "^3.0.2", + "semver": "^7.3.5", + "tar": "^6.1.2", + "which": "^2.0.2" + }, + "bin": { + "node-gyp": "bin/node-gyp.js" + }, + "engines": { + "node": ">= 10.12.0" + } + }, + "node_modules/node-gyp-build": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.3.0.tgz", + "integrity": "sha512-iWjXZvmboq0ja1pUGULQBexmxq8CV4xBhX7VDOTbL7ZR4FOowwY/VOtRxBN/yKxmdGoIp4j5ysNT4u3S2pDQ3Q==", + "dev": true, + "optional": true, + "bin": { + "node-gyp-build": "bin.js", + "node-gyp-build-optional": "optional.js", + "node-gyp-build-test": "build-test.js" + } + }, + "node_modules/node-gyp/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/node-releases": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.1.tgz", + "integrity": "sha512-CqyzN6z7Q6aMeF/ktcMVTzhAHCEpf8SOarwpzpf8pNBY2k5/oM34UHldUwp8VKI7uxct2HxSRdJjBaZeESzcxA==", + "dev": true + }, + "node_modules/nopt": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz", + "integrity": "sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==", + "dev": true, + "dependencies": { + "abbrev": "1" + }, + "bin": { + "nopt": "bin/nopt.js" + }, + "engines": { + "node": ">=6" + } + }, + "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/normalize-range": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", + "integrity": "sha1-LRDAa9/TEuqXd2laTShDlFa3WUI=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/npm-bundled": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-1.1.2.tgz", + "integrity": "sha512-x5DHup0SuyQcmL3s7Rx/YQ8sbw/Hzg0rj48eN0dV7hf5cmQq5PXIeioroH3raV1QC1yh3uTYuMThvEQF3iKgGQ==", + "dev": true, + "dependencies": { + "npm-normalize-package-bin": "^1.0.1" + } + }, + "node_modules/npm-install-checks": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-4.0.0.tgz", + "integrity": "sha512-09OmyDkNLYwqKPOnbI8exiOZU2GVVmQp7tgez2BPi5OZC8M82elDAps7sxC4l//uSUtotWqoEIDwjRvWH4qz8w==", + "dev": true, + "dependencies": { + "semver": "^7.1.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/npm-normalize-package-bin": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-1.0.1.tgz", + "integrity": "sha512-EPfafl6JL5/rU+ot6P3gRSCpPDW5VmIzX959Ob1+ySFUuuYHWHekXpwdUZcKP5C+DS4GEtdJluwBjnsNDl+fSA==", + "dev": true + }, + "node_modules/npm-package-arg": { + "version": "8.1.5", + "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-8.1.5.tgz", + "integrity": "sha512-LhgZrg0n0VgvzVdSm1oiZworPbTxYHUJCgtsJW8mGvlDpxTM1vSJc3m5QZeUkhAHIzbz3VCHd/R4osi1L1Tg/Q==", + "dev": true, + "dependencies": { + "hosted-git-info": "^4.0.1", + "semver": "^7.3.4", + "validate-npm-package-name": "^3.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/npm-packlist": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-3.0.0.tgz", + "integrity": "sha512-L/cbzmutAwII5glUcf2DBRNY/d0TFd4e/FnaZigJV6JD85RHZXJFGwCndjMWiiViiWSsWt3tiOLpI3ByTnIdFQ==", + "dev": true, + "dependencies": { + "glob": "^7.1.6", + "ignore-walk": "^4.0.1", + "npm-bundled": "^1.1.1", + "npm-normalize-package-bin": "^1.0.1" + }, + "bin": { + "npm-packlist": "bin/index.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/npm-pick-manifest": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-6.1.1.tgz", + "integrity": "sha512-dBsdBtORT84S8V8UTad1WlUyKIY9iMsAmqxHbLdeEeBNMLQDlDWWra3wYUx9EBEIiG/YwAy0XyNHDd2goAsfuA==", + "dev": true, + "dependencies": { + "npm-install-checks": "^4.0.0", + "npm-normalize-package-bin": "^1.0.1", + "npm-package-arg": "^8.1.2", + "semver": "^7.3.4" + } + }, + "node_modules/npm-registry-fetch": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-11.0.0.tgz", + "integrity": "sha512-jmlgSxoDNuhAtxUIG6pVwwtz840i994dL14FoNVZisrmZW5kWd63IUTNv1m/hyRSGSqWjCUp/YZlS1BJyNp9XA==", + "dev": true, + "dependencies": { + "make-fetch-happen": "^9.0.1", + "minipass": "^3.1.3", + "minipass-fetch": "^1.3.0", + "minipass-json-stream": "^1.0.1", + "minizlib": "^2.0.0", + "npm-package-arg": "^8.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "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/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, + "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/nth-check": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.0.1.tgz", + "integrity": "sha512-it1vE95zF6dTT9lBsYbxvqh0Soy4SPowchj0UBGj/V6cTPnXXtQOPUbhZ6CmGzAD/rW22LQK6E96pcdJXk4A4w==", + "dev": true, + "dependencies": { + "boolbase": "^1.0.0" + }, + "funding": { + "url": "https://github.com/fb55/nth-check?sponsor=1" + } + }, + "node_modules/num2fraction": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/num2fraction/-/num2fraction-1.2.2.tgz", + "integrity": "sha1-b2gragJ6Tp3fpFZM0lidHU5mnt4=", + "dev": true + }, + "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, + "engines": { + "node": ">=0.10.0" + } + }, + "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, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-is": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.5.tgz", + "integrity": "sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "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.assign": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz", + "integrity": "sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.0", + "define-properties": "^1.1.3", + "has-symbols": "^1.0.1", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/obuf": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz", + "integrity": "sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==", + "dev": true + }, + "node_modules/on-finished": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", + "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", + "dev": true, + "dependencies": { + "ee-first": "1.1.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/on-headers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", + "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "dev": true, + "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" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/open": { + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/open/-/open-8.4.0.tgz", + "integrity": "sha512-XgFPPM+B28FtCCgSb9I+s9szOC1vZRSwgWsRUA5ylIxRTgKozqjOCrVOqGsYABPYK5qnfqClxZTFBa8PKt2v6Q==", + "dev": true, + "dependencies": { + "define-lazy-prop": "^2.0.0", + "is-docker": "^2.1.1", + "is-wsl": "^2.2.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ora": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/ora/-/ora-5.4.1.tgz", + "integrity": "sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==", + "dev": true, + "dependencies": { + "bl": "^4.1.0", + "chalk": "^4.1.0", + "cli-cursor": "^3.1.0", + "cli-spinners": "^2.5.0", + "is-interactive": "^1.0.0", + "is-unicode-supported": "^0.1.0", + "log-symbols": "^4.1.0", + "strip-ansi": "^6.0.0", + "wcwidth": "^1.0.1" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ora/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" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/ora/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/ora/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/ora/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/ora/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/ora/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/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, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/p-event": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/p-event/-/p-event-4.2.0.tgz", + "integrity": "sha512-KXatOjCRXXkSePPb1Nbi0p0m+gQAwdlbhi4wQKJPI1HsMQS9g+Sqp2o+QHziPr7eYJyOZet836KoHEVM1mwOrQ==", + "dev": true, + "dependencies": { + "p-timeout": "^3.1.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "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": "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" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "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/p-locate/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" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "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" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-retry": { + "version": "4.6.1", + "resolved": "https://registry.npmjs.org/p-retry/-/p-retry-4.6.1.tgz", + "integrity": "sha512-e2xXGNhZOZ0lfgR9kL34iGlU8N/KO0xZnQxVEwdeOvpqNDQfdnxIYizvWtK8RglUa3bGqI8g0R/BdfzLMxRkiA==", + "dev": true, + "dependencies": { + "@types/retry": "^0.12.0", + "retry": "^0.13.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/p-retry/node_modules/retry": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz", + "integrity": "sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/p-timeout": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-3.2.0.tgz", + "integrity": "sha512-rhIwUycgwwKcP9yTOOFK/AKsAopjjCakVqLHePO3CC6Mir1Z99xT+R63jZxAT5lFZLa2inS5h+ZS2GvR99/FBg==", + "dev": true, + "dependencies": { + "p-finally": "^1.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "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/pacote": { + "version": "12.0.2", + "resolved": "https://registry.npmjs.org/pacote/-/pacote-12.0.2.tgz", + "integrity": "sha512-Ar3mhjcxhMzk+OVZ8pbnXdb0l8+pimvlsqBGRNkble2NVgyqOGE3yrCGi/lAYq7E7NRDMz89R1Wx5HIMCGgeYg==", + "dev": true, + "dependencies": { + "@npmcli/git": "^2.1.0", + "@npmcli/installed-package-contents": "^1.0.6", + "@npmcli/promise-spawn": "^1.2.0", + "@npmcli/run-script": "^2.0.0", + "cacache": "^15.0.5", + "chownr": "^2.0.0", + "fs-minipass": "^2.1.0", + "infer-owner": "^1.0.4", + "minipass": "^3.1.3", + "mkdirp": "^1.0.3", + "npm-package-arg": "^8.0.1", + "npm-packlist": "^3.0.0", + "npm-pick-manifest": "^6.0.0", + "npm-registry-fetch": "^11.0.0", + "promise-retry": "^2.0.1", + "read-package-json-fast": "^2.0.1", + "rimraf": "^3.0.2", + "ssri": "^8.0.1", + "tar": "^6.1.0" + }, + "bin": { + "pacote": "lib/bin.js" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16" + } + }, + "node_modules/pako": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", + "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==", + "dev": true + }, + "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": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "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" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/parse-node-version": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parse-node-version/-/parse-node-version-1.0.1.tgz", + "integrity": "sha512-3YHlOa/JgH6Mnpr05jP9eDG254US9ek25LyIxZlDItp2iJtwyaXQb57lBYLdT3MowkUFYEV2XXNAYIPlESvJlA==", + "dev": true, + "engines": { + "node": ">= 0.10" + } + }, + "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==", + "optional": true + }, + "node_modules/parse5-html-rewriting-stream": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5-html-rewriting-stream/-/parse5-html-rewriting-stream-6.0.1.tgz", + "integrity": "sha512-vwLQzynJVEfUlURxgnf51yAJDQTtVpNyGD8tKi2Za7m+akukNHxCcUQMAa/mUGLhCeicFdpy7Tlvj8ZNKadprg==", + "dev": true, + "dependencies": { + "parse5": "^6.0.1", + "parse5-sax-parser": "^6.0.1" + } + }, + "node_modules/parse5-html-rewriting-stream/node_modules/parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", + "dev": true + }, + "node_modules/parse5-htmlparser2-tree-adapter": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-6.0.1.tgz", + "integrity": "sha512-qPuWvbLgvDGilKc5BoicRovlT4MtYT6JfJyBOMDsKoiT+GiuP5qyrPCnR9HcPECIJJmZh5jRndyNThnhhb/vlA==", + "dev": true, + "dependencies": { + "parse5": "^6.0.1" + } + }, + "node_modules/parse5-htmlparser2-tree-adapter/node_modules/parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", + "dev": true + }, + "node_modules/parse5-sax-parser": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5-sax-parser/-/parse5-sax-parser-6.0.1.tgz", + "integrity": "sha512-kXX+5S81lgESA0LsDuGjAlBybImAChYRMT+/uKCEXFBFOeEhS52qUCydGhU3qLRD8D9DVjaUo821WK7DM4iCeg==", + "dev": true, + "dependencies": { + "parse5": "^6.0.1" + } + }, + "node_modules/parse5-sax-parser/node_modules/parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", + "dev": true + }, + "node_modules/parseurl": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "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/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": "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/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "dev": true + }, + "node_modules/path-to-regexp": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", + "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=", + "dev": true + }, + "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/picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", + "dev": true + }, + "node_modules/picomatch": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.0.tgz", + "integrity": "sha512-lY1Q/PiJGC2zOv/z391WOTD+Z02bCgsFfvxoXXf6h7kv9o+WmsmzYqrAwY63sNgOxE4xEdq0WyUnXfKeBrSvYw==", + "dev": true, + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "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/piscina": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/piscina/-/piscina-3.1.0.tgz", + "integrity": "sha512-KTW4sjsCD34MHrUbx9eAAbuUSpVj407hQSgk/6Epkg0pbRBmv4a3UX7Sr8wxm9xYqQLnsN4mFOjqGDzHAdgKQg==", + "dev": true, + "dependencies": { + "eventemitter-asyncresource": "^1.0.0", + "hdr-histogram-js": "^2.0.1", + "hdr-histogram-percentiles-obj": "^3.0.0" + }, + "optionalDependencies": { + "nice-napi": "^1.0.2" + } + }, + "node_modules/pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "dev": true, + "dependencies": { + "find-up": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/portfinder": { + "version": "1.0.28", + "resolved": "https://registry.npmjs.org/portfinder/-/portfinder-1.0.28.tgz", + "integrity": "sha512-Se+2isanIcEqf2XMHjyUKskczxbPH7dQnlMjXX6+dybayyHvAf/TCgyMRlzf/B6QDhAEFOGes0pzRo3by4AbMA==", + "dev": true, + "dependencies": { + "async": "^2.6.2", + "debug": "^3.1.1", + "mkdirp": "^0.5.5" + }, + "engines": { + "node": ">= 0.12.0" + } + }, + "node_modules/portfinder/node_modules/async": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.3.tgz", + "integrity": "sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==", + "dev": true, + "dependencies": { + "lodash": "^4.17.14" + } + }, + "node_modules/portfinder/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/portfinder/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/postcss": { + "version": "8.3.11", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.3.11.tgz", + "integrity": "sha512-hCmlUAIlUiav8Xdqw3Io4LcpA1DOt7h3LSTAC4G6JGHFFaWzI6qvFt9oilvl8BmkbBRX1IhM90ZAmpk68zccQA==", + "dev": true, + "dependencies": { + "nanoid": "^3.1.30", + "picocolors": "^1.0.0", + "source-map-js": "^0.6.2" + }, + "engines": { + "node": "^10 || ^12 || >=14" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-attribute-case-insensitive": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-attribute-case-insensitive/-/postcss-attribute-case-insensitive-4.0.2.tgz", + "integrity": "sha512-clkFxk/9pcdb4Vkn0hAHq3YnxBQ2p0CGD1dy24jN+reBck+EWxMbxSUqN4Yj7t0w8csl87K6p0gxBe1utkJsYA==", + "dev": true, + "dependencies": { + "postcss": "^7.0.2", + "postcss-selector-parser": "^6.0.2" + } + }, + "node_modules/postcss-attribute-case-insensitive/node_modules/picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "node_modules/postcss-attribute-case-insensitive/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-attribute-case-insensitive/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/postcss-color-functional-notation": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/postcss-color-functional-notation/-/postcss-color-functional-notation-2.0.1.tgz", + "integrity": "sha512-ZBARCypjEDofW4P6IdPVTLhDNXPRn8T2s1zHbZidW6rPaaZvcnCS2soYFIQJrMZSxiePJ2XIYTlcb2ztr/eT2g==", + "dev": true, + "dependencies": { + "postcss": "^7.0.2", + "postcss-values-parser": "^2.0.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-color-functional-notation/node_modules/picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "node_modules/postcss-color-functional-notation/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-color-functional-notation/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/postcss-color-gray": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/postcss-color-gray/-/postcss-color-gray-5.0.0.tgz", + "integrity": "sha512-q6BuRnAGKM/ZRpfDascZlIZPjvwsRye7UDNalqVz3s7GDxMtqPY6+Q871liNxsonUw8oC61OG+PSaysYpl1bnw==", + "dev": true, + "dependencies": { + "@csstools/convert-colors": "^1.4.0", + "postcss": "^7.0.5", + "postcss-values-parser": "^2.0.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-color-gray/node_modules/picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "node_modules/postcss-color-gray/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-color-gray/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/postcss-color-hex-alpha": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/postcss-color-hex-alpha/-/postcss-color-hex-alpha-5.0.3.tgz", + "integrity": "sha512-PF4GDel8q3kkreVXKLAGNpHKilXsZ6xuu+mOQMHWHLPNyjiUBOr75sp5ZKJfmv1MCus5/DWUGcK9hm6qHEnXYw==", + "dev": true, + "dependencies": { + "postcss": "^7.0.14", + "postcss-values-parser": "^2.0.1" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-color-hex-alpha/node_modules/picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "node_modules/postcss-color-hex-alpha/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-color-hex-alpha/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/postcss-color-mod-function": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/postcss-color-mod-function/-/postcss-color-mod-function-3.0.3.tgz", + "integrity": "sha512-YP4VG+xufxaVtzV6ZmhEtc+/aTXH3d0JLpnYfxqTvwZPbJhWqp8bSY3nfNzNRFLgB4XSaBA82OE4VjOOKpCdVQ==", + "dev": true, + "dependencies": { + "@csstools/convert-colors": "^1.4.0", + "postcss": "^7.0.2", + "postcss-values-parser": "^2.0.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-color-mod-function/node_modules/picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "node_modules/postcss-color-mod-function/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-color-mod-function/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/postcss-color-rebeccapurple": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-color-rebeccapurple/-/postcss-color-rebeccapurple-4.0.1.tgz", + "integrity": "sha512-aAe3OhkS6qJXBbqzvZth2Au4V3KieR5sRQ4ptb2b2O8wgvB3SJBsdG+jsn2BZbbwekDG8nTfcCNKcSfe/lEy8g==", + "dev": true, + "dependencies": { + "postcss": "^7.0.2", + "postcss-values-parser": "^2.0.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-color-rebeccapurple/node_modules/picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "node_modules/postcss-color-rebeccapurple/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-color-rebeccapurple/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/postcss-custom-media": { + "version": "7.0.8", + "resolved": "https://registry.npmjs.org/postcss-custom-media/-/postcss-custom-media-7.0.8.tgz", + "integrity": "sha512-c9s5iX0Ge15o00HKbuRuTqNndsJUbaXdiNsksnVH8H4gdc+zbLzr/UasOwNG6CTDpLFekVY4672eWdiiWu2GUg==", + "dev": true, + "dependencies": { + "postcss": "^7.0.14" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-custom-media/node_modules/picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "node_modules/postcss-custom-media/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-custom-media/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/postcss-custom-properties": { + "version": "8.0.11", + "resolved": "https://registry.npmjs.org/postcss-custom-properties/-/postcss-custom-properties-8.0.11.tgz", + "integrity": "sha512-nm+o0eLdYqdnJ5abAJeXp4CEU1c1k+eB2yMCvhgzsds/e0umabFrN6HoTy/8Q4K5ilxERdl/JD1LO5ANoYBeMA==", + "dev": true, + "dependencies": { + "postcss": "^7.0.17", + "postcss-values-parser": "^2.0.1" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-custom-properties/node_modules/picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "node_modules/postcss-custom-properties/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-custom-properties/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/postcss-custom-selectors": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/postcss-custom-selectors/-/postcss-custom-selectors-5.1.2.tgz", + "integrity": "sha512-DSGDhqinCqXqlS4R7KGxL1OSycd1lydugJ1ky4iRXPHdBRiozyMHrdu0H3o7qNOCiZwySZTUI5MV0T8QhCLu+w==", + "dev": true, + "dependencies": { + "postcss": "^7.0.2", + "postcss-selector-parser": "^5.0.0-rc.3" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-custom-selectors/node_modules/cssesc": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-2.0.0.tgz", + "integrity": "sha512-MsCAG1z9lPdoO/IUMLSBWBSVxVtJ1395VGIQ+Fc2gNdkQ1hNDnQdw3YhA71WJCBW1vdwA0cAnk/DnW6bqoEUYg==", + "dev": true, + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-custom-selectors/node_modules/picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "node_modules/postcss-custom-selectors/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-custom-selectors/node_modules/postcss-selector-parser": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-5.0.0.tgz", + "integrity": "sha512-w+zLE5Jhg6Liz8+rQOWEAwtwkyqpfnmsinXjXg6cY7YIONZZtgvE0v2O0uhQBs0peNomOJwWRKt6JBfTdTd3OQ==", + "dev": true, + "dependencies": { + "cssesc": "^2.0.0", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-custom-selectors/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/postcss-dir-pseudo-class": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/postcss-dir-pseudo-class/-/postcss-dir-pseudo-class-5.0.0.tgz", + "integrity": "sha512-3pm4oq8HYWMZePJY+5ANriPs3P07q+LW6FAdTlkFH2XqDdP4HeeJYMOzn0HYLhRSjBO3fhiqSwwU9xEULSrPgw==", + "dev": true, + "dependencies": { + "postcss": "^7.0.2", + "postcss-selector-parser": "^5.0.0-rc.3" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/postcss-dir-pseudo-class/node_modules/cssesc": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-2.0.0.tgz", + "integrity": "sha512-MsCAG1z9lPdoO/IUMLSBWBSVxVtJ1395VGIQ+Fc2gNdkQ1hNDnQdw3YhA71WJCBW1vdwA0cAnk/DnW6bqoEUYg==", + "dev": true, + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-dir-pseudo-class/node_modules/picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "node_modules/postcss-dir-pseudo-class/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-dir-pseudo-class/node_modules/postcss-selector-parser": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-5.0.0.tgz", + "integrity": "sha512-w+zLE5Jhg6Liz8+rQOWEAwtwkyqpfnmsinXjXg6cY7YIONZZtgvE0v2O0uhQBs0peNomOJwWRKt6JBfTdTd3OQ==", + "dev": true, + "dependencies": { + "cssesc": "^2.0.0", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-dir-pseudo-class/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/postcss-double-position-gradients": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/postcss-double-position-gradients/-/postcss-double-position-gradients-1.0.0.tgz", + "integrity": "sha512-G+nV8EnQq25fOI8CH/B6krEohGWnF5+3A6H/+JEpOncu5dCnkS1QQ6+ct3Jkaepw1NGVqqOZH6lqrm244mCftA==", + "dev": true, + "dependencies": { + "postcss": "^7.0.5", + "postcss-values-parser": "^2.0.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-double-position-gradients/node_modules/picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "node_modules/postcss-double-position-gradients/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-double-position-gradients/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/postcss-env-function": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/postcss-env-function/-/postcss-env-function-2.0.2.tgz", + "integrity": "sha512-rwac4BuZlITeUbiBq60h/xbLzXY43qOsIErngWa4l7Mt+RaSkT7QBjXVGTcBHupykkblHMDrBFh30zchYPaOUw==", + "dev": true, + "dependencies": { + "postcss": "^7.0.2", + "postcss-values-parser": "^2.0.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-env-function/node_modules/picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "node_modules/postcss-env-function/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-env-function/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/postcss-focus-visible": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-focus-visible/-/postcss-focus-visible-4.0.0.tgz", + "integrity": "sha512-Z5CkWBw0+idJHSV6+Bgf2peDOFf/x4o+vX/pwcNYrWpXFrSfTkQ3JQ1ojrq9yS+upnAlNRHeg8uEwFTgorjI8g==", + "dev": true, + "dependencies": { + "postcss": "^7.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-focus-visible/node_modules/picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "node_modules/postcss-focus-visible/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-focus-visible/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/postcss-focus-within": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-focus-within/-/postcss-focus-within-3.0.0.tgz", + "integrity": "sha512-W0APui8jQeBKbCGZudW37EeMCjDeVxKgiYfIIEo8Bdh5SpB9sxds/Iq8SEuzS0Q4YFOlG7EPFulbbxujpkrV2w==", + "dev": true, + "dependencies": { + "postcss": "^7.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-focus-within/node_modules/picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "node_modules/postcss-focus-within/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-focus-within/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/postcss-font-variant": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-font-variant/-/postcss-font-variant-4.0.1.tgz", + "integrity": "sha512-I3ADQSTNtLTTd8uxZhtSOrTCQ9G4qUVKPjHiDk0bV75QSxXjVWiJVJ2VLdspGUi9fbW9BcjKJoRvxAH1pckqmA==", + "dev": true, + "dependencies": { + "postcss": "^7.0.2" + } + }, + "node_modules/postcss-font-variant/node_modules/picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "node_modules/postcss-font-variant/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-font-variant/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/postcss-gap-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/postcss-gap-properties/-/postcss-gap-properties-2.0.0.tgz", + "integrity": "sha512-QZSqDaMgXCHuHTEzMsS2KfVDOq7ZFiknSpkrPJY6jmxbugUPTuSzs/vuE5I3zv0WAS+3vhrlqhijiprnuQfzmg==", + "dev": true, + "dependencies": { + "postcss": "^7.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-gap-properties/node_modules/picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "node_modules/postcss-gap-properties/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-gap-properties/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/postcss-image-set-function": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/postcss-image-set-function/-/postcss-image-set-function-3.0.1.tgz", + "integrity": "sha512-oPTcFFip5LZy8Y/whto91L9xdRHCWEMs3e1MdJxhgt4jy2WYXfhkng59fH5qLXSCPN8k4n94p1Czrfe5IOkKUw==", + "dev": true, + "dependencies": { + "postcss": "^7.0.2", + "postcss-values-parser": "^2.0.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-image-set-function/node_modules/picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "node_modules/postcss-image-set-function/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-image-set-function/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/postcss-import": { + "version": "14.0.2", + "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-14.0.2.tgz", + "integrity": "sha512-BJ2pVK4KhUyMcqjuKs9RijV5tatNzNa73e/32aBVE/ejYPe37iH+6vAu9WvqUkB5OAYgLHzbSvzHnorybJCm9g==", + "dev": true, + "dependencies": { + "postcss-value-parser": "^4.0.0", + "read-cache": "^1.0.0", + "resolve": "^1.1.7" + }, + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "postcss": "^8.0.0" + } + }, + "node_modules/postcss-initial": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/postcss-initial/-/postcss-initial-3.0.4.tgz", + "integrity": "sha512-3RLn6DIpMsK1l5UUy9jxQvoDeUN4gP939tDcKUHD/kM8SGSKbFAnvkpFpj3Bhtz3HGk1jWY5ZNWX6mPta5M9fg==", + "dev": true, + "dependencies": { + "postcss": "^7.0.2" + } + }, + "node_modules/postcss-initial/node_modules/picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "node_modules/postcss-initial/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-initial/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/postcss-lab-function": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/postcss-lab-function/-/postcss-lab-function-2.0.1.tgz", + "integrity": "sha512-whLy1IeZKY+3fYdqQFuDBf8Auw+qFuVnChWjmxm/UhHWqNHZx+B99EwxTvGYmUBqe3Fjxs4L1BoZTJmPu6usVg==", + "dev": true, + "dependencies": { + "@csstools/convert-colors": "^1.4.0", + "postcss": "^7.0.2", + "postcss-values-parser": "^2.0.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-lab-function/node_modules/picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "node_modules/postcss-lab-function/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-lab-function/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/postcss-loader": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-6.2.0.tgz", + "integrity": "sha512-H9hv447QjQJVDbHj3OUdciyAXY3v5+UDduzEytAlZCVHCpNAAg/mCSwhYYqZr9BiGYhmYspU8QXxZwiHTLn3yA==", + "dev": true, + "dependencies": { + "cosmiconfig": "^7.0.0", + "klona": "^2.0.4", + "semver": "^7.3.5" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "postcss": "^7.0.0 || ^8.0.1", + "webpack": "^5.0.0" + } + }, + "node_modules/postcss-logical": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-logical/-/postcss-logical-3.0.0.tgz", + "integrity": "sha512-1SUKdJc2vuMOmeItqGuNaC+N8MzBWFWEkAnRnLpFYj1tGGa7NqyVBujfRtgNa2gXR+6RkGUiB2O5Vmh7E2RmiA==", + "dev": true, + "dependencies": { + "postcss": "^7.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-logical/node_modules/picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "node_modules/postcss-logical/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-logical/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/postcss-media-minmax": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-media-minmax/-/postcss-media-minmax-4.0.0.tgz", + "integrity": "sha512-fo9moya6qyxsjbFAYl97qKO9gyre3qvbMnkOZeZwlsW6XYFsvs2DMGDlchVLfAd8LHPZDxivu/+qW2SMQeTHBw==", + "dev": true, + "dependencies": { + "postcss": "^7.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-media-minmax/node_modules/picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "node_modules/postcss-media-minmax/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-media-minmax/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/postcss-modules-extract-imports": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.0.0.tgz", + "integrity": "sha512-bdHleFnP3kZ4NYDhuGlVK+CMrQ/pqUm8bx/oGL93K6gVwiclvX5x0n76fYMKuIGKzlABOy13zsvqjb0f92TEXw==", + "dev": true, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-modules-local-by-default": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.0.tgz", + "integrity": "sha512-sT7ihtmGSF9yhm6ggikHdV0hlziDTX7oFoXtuVWeDd3hHObNkcHRo9V3yg7vCAY7cONyxJC/XXCmmiHHcvX7bQ==", + "dev": true, + "dependencies": { + "icss-utils": "^5.0.0", + "postcss-selector-parser": "^6.0.2", + "postcss-value-parser": "^4.1.0" + }, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-modules-scope": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-3.0.0.tgz", + "integrity": "sha512-hncihwFA2yPath8oZ15PZqvWGkWf+XUfQgUGamS4LqoP1anQLOsOJw0vr7J7IwLpoY9fatA2qiGUGmuZL0Iqlg==", + "dev": true, + "dependencies": { + "postcss-selector-parser": "^6.0.4" + }, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-modules-values": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz", + "integrity": "sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==", + "dev": true, + "dependencies": { + "icss-utils": "^5.0.0" + }, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-nesting": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/postcss-nesting/-/postcss-nesting-7.0.1.tgz", + "integrity": "sha512-FrorPb0H3nuVq0Sff7W2rnc3SmIcruVC6YwpcS+k687VxyxO33iE1amna7wHuRVzM8vfiYofXSBHNAZ3QhLvYg==", + "dev": true, + "dependencies": { + "postcss": "^7.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-nesting/node_modules/picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "node_modules/postcss-nesting/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-nesting/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/postcss-overflow-shorthand": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/postcss-overflow-shorthand/-/postcss-overflow-shorthand-2.0.0.tgz", + "integrity": "sha512-aK0fHc9CBNx8jbzMYhshZcEv8LtYnBIRYQD5i7w/K/wS9c2+0NSR6B3OVMu5y0hBHYLcMGjfU+dmWYNKH0I85g==", + "dev": true, + "dependencies": { + "postcss": "^7.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-overflow-shorthand/node_modules/picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "node_modules/postcss-overflow-shorthand/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-overflow-shorthand/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/postcss-page-break": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/postcss-page-break/-/postcss-page-break-2.0.0.tgz", + "integrity": "sha512-tkpTSrLpfLfD9HvgOlJuigLuk39wVTbbd8RKcy8/ugV2bNBUW3xU+AIqyxhDrQr1VUj1RmyJrBn1YWrqUm9zAQ==", + "dev": true, + "dependencies": { + "postcss": "^7.0.2" + } + }, + "node_modules/postcss-page-break/node_modules/picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "node_modules/postcss-page-break/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-page-break/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/postcss-place": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-place/-/postcss-place-4.0.1.tgz", + "integrity": "sha512-Zb6byCSLkgRKLODj/5mQugyuj9bvAAw9LqJJjgwz5cYryGeXfFZfSXoP1UfveccFmeq0b/2xxwcTEVScnqGxBg==", + "dev": true, + "dependencies": { + "postcss": "^7.0.2", + "postcss-values-parser": "^2.0.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-place/node_modules/picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "node_modules/postcss-place/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-place/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/postcss-preset-env": { + "version": "6.7.0", + "resolved": "https://registry.npmjs.org/postcss-preset-env/-/postcss-preset-env-6.7.0.tgz", + "integrity": "sha512-eU4/K5xzSFwUFJ8hTdTQzo2RBLbDVt83QZrAvI07TULOkmyQlnYlpwep+2yIK+K+0KlZO4BvFcleOCCcUtwchg==", + "dev": true, + "dependencies": { + "autoprefixer": "^9.6.1", + "browserslist": "^4.6.4", + "caniuse-lite": "^1.0.30000981", + "css-blank-pseudo": "^0.1.4", + "css-has-pseudo": "^0.10.0", + "css-prefers-color-scheme": "^3.1.1", + "cssdb": "^4.4.0", + "postcss": "^7.0.17", + "postcss-attribute-case-insensitive": "^4.0.1", + "postcss-color-functional-notation": "^2.0.1", + "postcss-color-gray": "^5.0.0", + "postcss-color-hex-alpha": "^5.0.3", + "postcss-color-mod-function": "^3.0.3", + "postcss-color-rebeccapurple": "^4.0.1", + "postcss-custom-media": "^7.0.8", + "postcss-custom-properties": "^8.0.11", + "postcss-custom-selectors": "^5.1.2", + "postcss-dir-pseudo-class": "^5.0.0", + "postcss-double-position-gradients": "^1.0.0", + "postcss-env-function": "^2.0.2", + "postcss-focus-visible": "^4.0.0", + "postcss-focus-within": "^3.0.0", + "postcss-font-variant": "^4.0.0", + "postcss-gap-properties": "^2.0.0", + "postcss-image-set-function": "^3.0.1", + "postcss-initial": "^3.0.0", + "postcss-lab-function": "^2.0.1", + "postcss-logical": "^3.0.0", + "postcss-media-minmax": "^4.0.0", + "postcss-nesting": "^7.0.0", + "postcss-overflow-shorthand": "^2.0.0", + "postcss-page-break": "^2.0.0", + "postcss-place": "^4.0.1", + "postcss-pseudo-class-any-link": "^6.0.0", + "postcss-replace-overflow-wrap": "^3.0.0", + "postcss-selector-matches": "^4.0.0", + "postcss-selector-not": "^4.0.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-preset-env/node_modules/picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "node_modules/postcss-preset-env/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-preset-env/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/postcss-pseudo-class-any-link": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/postcss-pseudo-class-any-link/-/postcss-pseudo-class-any-link-6.0.0.tgz", + "integrity": "sha512-lgXW9sYJdLqtmw23otOzrtbDXofUdfYzNm4PIpNE322/swES3VU9XlXHeJS46zT2onFO7V1QFdD4Q9LiZj8mew==", + "dev": true, + "dependencies": { + "postcss": "^7.0.2", + "postcss-selector-parser": "^5.0.0-rc.3" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-pseudo-class-any-link/node_modules/cssesc": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-2.0.0.tgz", + "integrity": "sha512-MsCAG1z9lPdoO/IUMLSBWBSVxVtJ1395VGIQ+Fc2gNdkQ1hNDnQdw3YhA71WJCBW1vdwA0cAnk/DnW6bqoEUYg==", + "dev": true, + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-pseudo-class-any-link/node_modules/picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "node_modules/postcss-pseudo-class-any-link/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-pseudo-class-any-link/node_modules/postcss-selector-parser": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-5.0.0.tgz", + "integrity": "sha512-w+zLE5Jhg6Liz8+rQOWEAwtwkyqpfnmsinXjXg6cY7YIONZZtgvE0v2O0uhQBs0peNomOJwWRKt6JBfTdTd3OQ==", + "dev": true, + "dependencies": { + "cssesc": "^2.0.0", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-pseudo-class-any-link/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/postcss-replace-overflow-wrap": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-replace-overflow-wrap/-/postcss-replace-overflow-wrap-3.0.0.tgz", + "integrity": "sha512-2T5hcEHArDT6X9+9dVSPQdo7QHzG4XKclFT8rU5TzJPDN7RIRTbO9c4drUISOVemLj03aezStHCR2AIcr8XLpw==", + "dev": true, + "dependencies": { + "postcss": "^7.0.2" + } + }, + "node_modules/postcss-replace-overflow-wrap/node_modules/picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "node_modules/postcss-replace-overflow-wrap/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-replace-overflow-wrap/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/postcss-selector-matches": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-selector-matches/-/postcss-selector-matches-4.0.0.tgz", + "integrity": "sha512-LgsHwQR/EsRYSqlwdGzeaPKVT0Ml7LAT6E75T8W8xLJY62CE4S/l03BWIt3jT8Taq22kXP08s2SfTSzaraoPww==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "postcss": "^7.0.2" + } + }, + "node_modules/postcss-selector-matches/node_modules/picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "node_modules/postcss-selector-matches/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-selector-matches/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/postcss-selector-not": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-selector-not/-/postcss-selector-not-4.0.1.tgz", + "integrity": "sha512-YolvBgInEK5/79C+bdFMyzqTg6pkYqDbzZIST/PDMqa/o3qtXenD05apBG2jLgT0/BQ77d4U2UK12jWpilqMAQ==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "postcss": "^7.0.2" + } + }, + "node_modules/postcss-selector-not/node_modules/picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "node_modules/postcss-selector-not/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-selector-not/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/postcss-selector-parser": { + "version": "6.0.6", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.6.tgz", + "integrity": "sha512-9LXrvaaX3+mcv5xkg5kFwqSzSH1JIObIx51PrndZwlmznwXRfxMddDvo9gve3gVR8ZTKgoFDdWkbRFmEhT4PMg==", + "dev": true, + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-value-parser": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.1.0.tgz", + "integrity": "sha512-97DXOFbQJhk71ne5/Mt6cOu6yxsSfM0QGQyl0L25Gca4yGWEGJaig7l7gbCX623VqTBNGLRLaVUCnNkcedlRSQ==", + "dev": true + }, + "node_modules/postcss-values-parser": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/postcss-values-parser/-/postcss-values-parser-2.0.1.tgz", + "integrity": "sha512-2tLuBsA6P4rYTNKCXYG/71C7j1pU6pK503suYOmn4xYrQIzW+opD+7FAFNuGSdZC/3Qfy334QbeMu7MEb8gOxg==", + "dev": true, + "dependencies": { + "flatten": "^1.0.2", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + }, + "engines": { + "node": ">=6.14.4" + } + }, + "node_modules/pretty-bytes": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-5.6.0.tgz", + "integrity": "sha512-FFw039TmrBqFK8ma/7OL3sDz/VytdtJr044/QUJtH0wK9lb9jLq9tJyIxUwtQJHwar2BqtiA4iCWSwo9JLkzFg==", + "dev": true, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/process-nextick-args": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", + "dev": true + }, + "node_modules/promise-inflight": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", + "integrity": "sha1-mEcocL8igTL8vdhoEputEsPAKeM=", + "dev": true + }, + "node_modules/promise-retry": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/promise-retry/-/promise-retry-2.0.1.tgz", + "integrity": "sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g==", + "dev": true, + "dependencies": { + "err-code": "^2.0.2", + "retry": "^0.12.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/proxy-addr": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", + "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", + "dev": true, + "dependencies": { + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/proxy-addr/node_modules/ipaddr.js": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", + "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", + "dev": true, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/prr": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", + "integrity": "sha1-0/wRS6BplaRexok/SEzrHXj19HY=", + "dev": true, + "optional": true + }, + "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==", + "engines": { + "node": ">=6" + } + }, + "node_modules/qjobs": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/qjobs/-/qjobs-1.2.0.tgz", + "integrity": "sha512-8YOJEHtxpySA3fFDyCRxA+UUV+fA+rTWnuWvylOK/NCjhY+b4ocCtmu8TtsWb+mYeU+GCHf/S66KZF/AsteKHg==", + "dev": true, + "engines": { + "node": ">=0.9" + } + }, + "node_modules/qs": { + "version": "6.7.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz", + "integrity": "sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==", + "dev": true, + "engines": { + "node": ">=0.6" + } + }, + "node_modules/querystring": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", + "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=", + "deprecated": "The querystring API is considered Legacy. new code should use the URLSearchParams API instead.", + "dev": true, + "engines": { + "node": ">=0.4.x" + } + }, + "node_modules/queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/randombytes": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "dev": true, + "dependencies": { + "safe-buffer": "^5.1.0" + } + }, + "node_modules/range-parser": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/raw-body": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.0.tgz", + "integrity": "sha512-4Oz8DUIwdvoa5qMJelxipzi/iJIi40O5cGV1wNYp5hvZP8ZN0T+jiNkL0QepXs+EsQ9XJ8ipEDoiH70ySUJP3Q==", + "dev": true, + "dependencies": { + "bytes": "3.1.0", + "http-errors": "1.7.2", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/read-cache": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz", + "integrity": "sha1-5mTvMRYRZsl1HNvo28+GtftY93Q=", + "dev": true, + "dependencies": { + "pify": "^2.3.0" + } + }, + "node_modules/read-package-json-fast": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/read-package-json-fast/-/read-package-json-fast-2.0.3.tgz", + "integrity": "sha512-W/BKtbL+dUjTuRL2vziuYhp76s5HZ9qQhd/dKfWIZveD0O40453QNyZhC0e63lqZrAQ4jiOapVoeJ7JrszenQQ==", + "dev": true, + "dependencies": { + "json-parse-even-better-errors": "^2.3.0", + "npm-normalize-package-bin": "^1.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "dev": true, + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dev": true, + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/reflect-metadata": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/reflect-metadata/-/reflect-metadata-0.1.13.tgz", + "integrity": "sha512-Ts1Y/anZELhSsjMcU605fU9RE4Oi3p5ORujwbIKXfWa+0Zxs510Qrmrce5/Jowq3cHSZSJqBjypxmHarc+vEWg==", + "dev": true + }, + "node_modules/regenerate": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", + "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==", + "dev": true + }, + "node_modules/regenerate-unicode-properties": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-9.0.0.tgz", + "integrity": "sha512-3E12UeNSPfjrgwjkR81m5J7Aw/T55Tu7nUyZVQYCKEOs+2dkxEY+DpPtZzO4YruuiPb7NkYLVcyJC4+zCbk5pA==", + "dev": true, + "dependencies": { + "regenerate": "^1.4.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/regenerator-runtime": { + "version": "0.13.9", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz", + "integrity": "sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA==", + "dev": true + }, + "node_modules/regenerator-transform": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.14.5.tgz", + "integrity": "sha512-eOf6vka5IO151Jfsw2NO9WpGX58W6wWmefK3I1zEGr0lOD0u8rwPaNqQL1aRxUaxLeKO3ArNh3VYg1KbaD+FFw==", + "dev": true, + "dependencies": { + "@babel/runtime": "^7.8.4" + } + }, + "node_modules/regex-parser": { + "version": "2.2.11", + "resolved": "https://registry.npmjs.org/regex-parser/-/regex-parser-2.2.11.tgz", + "integrity": "sha512-jbD/FT0+9MBU2XAZluI7w2OBs1RBi6p9M83nkoZayQXXU9e8Robt69FcZc7wU4eJD/YFTjn1JdCk3rbMJajz8Q==", + "dev": true + }, + "node_modules/regexp-clone": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/regexp-clone/-/regexp-clone-1.0.0.tgz", + "integrity": "sha512-TuAasHQNamyyJ2hb97IuBEif4qBHGjPHBS64sZwytpLEqtBQ1gPJTnOaQ6qmpET16cK14kkjbazl6+p0RRv0yw==" + }, + "node_modules/regexp.prototype.flags": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.3.1.tgz", + "integrity": "sha512-JiBdRBq91WlY7uRJ0ds7R+dU02i6LKi8r3BuQhNXn+kmeLN+EfHhfjqMRis1zJxnlu88hq/4dx0P2OP3APRTOA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/regexpu-core": { + "version": "4.8.0", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-4.8.0.tgz", + "integrity": "sha512-1F6bYsoYiz6is+oz70NWur2Vlh9KWtswuRuzJOfeYUrfPX2o8n74AnUVaOGDbUqVGO9fNHu48/pjJO4sNVwsOg==", + "dev": true, + "dependencies": { + "regenerate": "^1.4.2", + "regenerate-unicode-properties": "^9.0.0", + "regjsgen": "^0.5.2", + "regjsparser": "^0.7.0", + "unicode-match-property-ecmascript": "^2.0.0", + "unicode-match-property-value-ecmascript": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/regjsgen": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.5.2.tgz", + "integrity": "sha512-OFFT3MfrH90xIW8OOSyUrk6QHD5E9JOTeGodiJeBS3J6IwlgzJMNE/1bZklWz5oTg+9dCMyEetclvCVXOPoN3A==", + "dev": true + }, + "node_modules/regjsparser": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.7.0.tgz", + "integrity": "sha512-A4pcaORqmNMDVwUjWoTzuhwMGpP+NykpfqAsEgI1FSH/EzC7lrN5TMd+kN8YCovX+jMpu8eaqXgXPCa0g8FQNQ==", + "dev": true, + "dependencies": { + "jsesc": "~0.5.0" + }, + "bin": { + "regjsparser": "bin/parser" + } + }, + "node_modules/regjsparser/node_modules/jsesc": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", + "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=", + "dev": true, + "bin": { + "jsesc": "bin/jsesc" + } + }, + "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/requires-port": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", + "integrity": "sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8=", + "dev": true + }, + "node_modules/resolve": { + "version": "1.20.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.20.0.tgz", + "integrity": "sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==", + "dev": true, + "dependencies": { + "is-core-module": "^2.2.0", + "path-parse": "^1.0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "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/resolve-url-loader": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-url-loader/-/resolve-url-loader-4.0.0.tgz", + "integrity": "sha512-05VEMczVREcbtT7Bz+C+96eUO5HDNvdthIiMB34t7FcF8ehcu4wC0sSgPUubs3XW2Q3CNLJk/BJrCU9wVRymiA==", + "dev": true, + "dependencies": { + "adjust-sourcemap-loader": "^4.0.0", + "convert-source-map": "^1.7.0", + "loader-utils": "^2.0.0", + "postcss": "^7.0.35", + "source-map": "0.6.1" + }, + "engines": { + "node": ">=8.9" + }, + "peerDependencies": { + "rework": "1.0.1", + "rework-visit": "1.0.0" + }, + "peerDependenciesMeta": { + "rework": { + "optional": true + }, + "rework-visit": { + "optional": true + } + } + }, + "node_modules/resolve-url-loader/node_modules/big.js": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", + "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/resolve-url-loader/node_modules/loader-utils": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.2.tgz", + "integrity": "sha512-TM57VeHptv569d/GKh6TAYdzKblwDNiumOdkFnejjD0XwTH87K90w3O7AiJRqdQoXygvi1VQTJTLGhJl7WqA7A==", + "dev": true, + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^2.1.2" + }, + "engines": { + "node": ">=8.9.0" + } + }, + "node_modules/resolve-url-loader/node_modules/picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "node_modules/resolve-url-loader/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/resolve-url-loader/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/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/retry": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", + "integrity": "sha1-G0KmJmoh8HQh0bC1S33BZ7AcATs=", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "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/rfdc": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.3.0.tgz", + "integrity": "sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA==", + "dev": true + }, + "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" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/run-async": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", + "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==", + "dev": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "queue-microtask": "^1.2.2" + } + }, + "node_modules/rxjs": { + "version": "6.6.7", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", + "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", + "dependencies": { + "tslib": "^1.9.0" + }, + "engines": { + "npm": ">=2.0.0" + } + }, + "node_modules/rxjs/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "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==" + }, + "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/saslprep": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/saslprep/-/saslprep-1.0.3.tgz", + "integrity": "sha512-/MY/PEMbk2SuY5sScONwhUDsV2p77Znkb/q3nSVstq/yQzYJOH/Azh29p9oJLsl3LnQwSvZDKagDGBsBwSooag==", + "optional": true, + "dependencies": { + "sparse-bitfield": "^3.0.3" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/sass": { + "version": "1.43.4", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.43.4.tgz", + "integrity": "sha512-/ptG7KE9lxpGSYiXn7Ar+lKOv37xfWsZRtFYal2QHNigyVQDx685VFT/h7ejVr+R8w7H4tmUgtulsKl5YpveOg==", + "dev": true, + "dependencies": { + "chokidar": ">=3.0.0 <4.0.0" + }, + "bin": { + "sass": "sass.js" + }, + "engines": { + "node": ">=8.9.0" + } + }, + "node_modules/sass-loader": { + "version": "12.3.0", + "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-12.3.0.tgz", + "integrity": "sha512-6l9qwhdOb7qSrtOu96QQ81LVl8v6Dp9j1w3akOm0aWHyrTYtagDt5+kS32N4yq4hHk3M+rdqoRMH+lIdqvW6HA==", + "dev": true, + "dependencies": { + "klona": "^2.0.4", + "neo-async": "^2.6.2" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "fibers": ">= 3.1.0", + "node-sass": "^4.0.0 || ^5.0.0 || ^6.0.0", + "sass": "^1.3.0", + "webpack": "^5.0.0" + }, + "peerDependenciesMeta": { + "fibers": { + "optional": true + }, + "node-sass": { + "optional": true + }, + "sass": { + "optional": true + } + } + }, + "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/schema-utils": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz", + "integrity": "sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==", + "dev": true, + "dependencies": { + "@types/json-schema": "^7.0.5", + "ajv": "^6.12.4", + "ajv-keywords": "^3.5.2" + }, + "engines": { + "node": ">= 8.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/schema-utils/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" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/schema-utils/node_modules/ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "dev": true, + "peerDependencies": { + "ajv": "^6.9.1" + } + }, + "node_modules/schema-utils/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/select-hose": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz", + "integrity": "sha1-Yl2GWPhlr0Psliv8N2o3NZpJlMo=", + "dev": true + }, + "node_modules/selfsigned": { + "version": "1.10.11", + "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-1.10.11.tgz", + "integrity": "sha512-aVmbPOfViZqOZPgRBT0+3u4yZFHpmnIghLMlAcb5/xhp5ZtB/RVnKhz5vl2M32CLXAqR4kha9zfhNg0Lf/sxKA==", + "dev": true, + "dependencies": { + "node-forge": "^0.10.0" + } + }, + "node_modules/semver": { + "version": "7.3.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", + "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/send": { + "version": "0.17.1", + "resolved": "https://registry.npmjs.org/send/-/send-0.17.1.tgz", + "integrity": "sha512-BsVKsiGcQMFwT8UxypobUKyv7irCNRHk1T0G680vk88yf6LBByGcZJOTJCrTP2xVN6yI+XjPJcNuE3V4fT9sAg==", + "dev": true, + "dependencies": { + "debug": "2.6.9", + "depd": "~1.1.2", + "destroy": "~1.0.4", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "fresh": "0.5.2", + "http-errors": "~1.7.2", + "mime": "1.6.0", + "ms": "2.1.1", + "on-finished": "~2.3.0", + "range-parser": "~1.2.1", + "statuses": "~1.5.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/send/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/send/node_modules/debug/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/send/node_modules/mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "dev": true, + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/send/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 + }, + "node_modules/serialize-javascript": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.0.tgz", + "integrity": "sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag==", + "dev": true, + "dependencies": { + "randombytes": "^2.1.0" + } + }, + "node_modules/serve-index": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz", + "integrity": "sha1-03aNabHn2C5c4FD/9bRTvqEqkjk=", + "dev": true, + "dependencies": { + "accepts": "~1.3.4", + "batch": "0.6.1", + "debug": "2.6.9", + "escape-html": "~1.0.3", + "http-errors": "~1.6.2", + "mime-types": "~2.1.17", + "parseurl": "~1.3.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/serve-index/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/serve-index/node_modules/http-errors": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", + "integrity": "sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0=", + "dev": true, + "dependencies": { + "depd": "~1.1.2", + "inherits": "2.0.3", + "setprototypeof": "1.1.0", + "statuses": ">= 1.4.0 < 2" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/serve-index/node_modules/inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", + "dev": true + }, + "node_modules/serve-index/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/serve-index/node_modules/setprototypeof": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", + "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==", + "dev": true + }, + "node_modules/serve-static": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.14.1.tgz", + "integrity": "sha512-JMrvUwE54emCYWlTI+hGrGv5I8dEwmco/00EvkzIIsR7MqrHonbD9pO2MOfFnpFntl7ecpZs+3mW+XbQZu9QCg==", + "dev": true, + "dependencies": { + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "parseurl": "~1.3.3", + "send": "0.17.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "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/setprototypeof": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz", + "integrity": "sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==", + "dev": true + }, + "node_modules/shallow-clone": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz", + "integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==", + "dev": true, + "dependencies": { + "kind-of": "^6.0.2" + }, + "engines": { + "node": ">=8" + } + }, + "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/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/sift": { + "version": "13.5.2", + "resolved": "https://registry.npmjs.org/sift/-/sift-13.5.2.tgz", + "integrity": "sha512-+gxdEOMA2J+AI+fVsCqeNn7Tgx3M9ZN9jdi95939l1IJ8cZsqS8sqpJyOkic2SJk+1+98Uwryt/gL6XDaV+UZA==" + }, + "node_modules/signal-exit": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.5.tgz", + "integrity": "sha512-KWcOiKeQj6ZyXx7zq4YxSMgHRlod4czeBQZrPb8OKcohcqAXShm7E20kEMle9WBt26hFcAf0qLOcp5zmY7kOqQ==", + "dev": true + }, + "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/sliced": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/sliced/-/sliced-1.0.1.tgz", + "integrity": "sha1-CzpmK10Ewxd7GSa+qCsD+Dei70E=" + }, + "node_modules/smart-buffer": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", + "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", + "dev": true, + "engines": { + "node": ">= 6.0.0", + "npm": ">= 3.0.0" + } + }, + "node_modules/socket.io": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-4.3.2.tgz", + "integrity": "sha512-6S5tV4jcY6dbZ/lLzD6EkvNWI3s81JO6ABP/EpvOlK1NPOcIj3AS4khi6xXw6JlZCASq82HQV4SapfmVMMl2dg==", + "dev": true, + "dependencies": { + "accepts": "~1.3.4", + "base64id": "~2.0.0", + "debug": "~4.3.2", + "engine.io": "~6.0.0", + "socket.io-adapter": "~2.3.2", + "socket.io-parser": "~4.0.4" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/socket.io-adapter": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-2.3.3.tgz", + "integrity": "sha512-Qd/iwn3VskrpNO60BeRyCyr8ZWw9CPZyitW4AQwmRZ8zCiyDiL+znRnWX6tDHXnWn1sJrM1+b6Mn6wEDJJ4aYQ==", + "dev": true + }, + "node_modules/socket.io-parser": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-4.0.4.tgz", + "integrity": "sha512-t+b0SS+IxG7Rxzda2EVvyBZbvFPBCjJoyHuE0P//7OAsN23GItzDRdWa6ALxZI/8R5ygK7jAR6t028/z+7295g==", + "dev": true, + "dependencies": { + "@types/component-emitter": "^1.2.10", + "component-emitter": "~1.3.0", + "debug": "~4.3.1" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/sockjs": { + "version": "0.3.21", + "resolved": "https://registry.npmjs.org/sockjs/-/sockjs-0.3.21.tgz", + "integrity": "sha512-DhbPFGpxjc6Z3I+uX07Id5ZO2XwYsWOrYjaSeieES78cq+JaJvVe5q/m1uvjIQhXinhIeCFRH6JgXe+mvVMyXw==", + "dev": true, + "dependencies": { + "faye-websocket": "^0.11.3", + "uuid": "^3.4.0", + "websocket-driver": "^0.7.4" + } + }, + "node_modules/sockjs/node_modules/uuid": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", + "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", + "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.", + "dev": true, + "bin": { + "uuid": "bin/uuid" + } + }, + "node_modules/socks": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.6.1.tgz", + "integrity": "sha512-kLQ9N5ucj8uIcxrDwjm0Jsqk06xdpBjGNQtpXy4Q8/QY2k+fY7nZH8CARy+hkbG+SGAovmzzuauCpBlb8FrnBA==", + "dev": true, + "dependencies": { + "ip": "^1.1.5", + "smart-buffer": "^4.1.0" + }, + "engines": { + "node": ">= 10.13.0", + "npm": ">= 3.0.0" + } + }, + "node_modules/socks-proxy-agent": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-6.1.0.tgz", + "integrity": "sha512-57e7lwCN4Tzt3mXz25VxOErJKXlPfXmkMLnk310v/jwW20jWRVcgsOit+xNkN3eIEdB47GwnfAEBLacZ/wVIKg==", + "dev": true, + "dependencies": { + "agent-base": "^6.0.2", + "debug": "^4.3.1", + "socks": "^2.6.1" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/source-map": { + "version": "0.7.3", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", + "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/source-map-js": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-0.6.2.tgz", + "integrity": "sha512-/3GptzWzu0+0MBQFrDKzw/DvvMTUORvgY6k6jd/VS6iCR4RDTKWH6v6WPwQoUO8667uQEf9Oe38DxAYWY5F/Ug==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-loader": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/source-map-loader/-/source-map-loader-3.0.0.tgz", + "integrity": "sha512-GKGWqWvYr04M7tn8dryIWvb0s8YM41z82iQv01yBtIylgxax0CwvSy6gc2Y02iuXwEfGWRlMicH0nvms9UZphw==", + "dev": true, + "dependencies": { + "abab": "^2.0.5", + "iconv-lite": "^0.6.2", + "source-map-js": "^0.6.2" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.0.0" + } + }, + "node_modules/source-map-loader/node_modules/iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "dev": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-resolve": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.6.0.tgz", + "integrity": "sha512-KXBr9d/fO/bWo97NXsPIAW1bFSBOuCnjbNTBMO7N59hsv5i9yzRDfcYwwt0l04+VqnKC+EwzvJZIP/qkuMgR/w==", + "dev": true, + "dependencies": { + "atob": "^2.1.2", + "decode-uri-component": "^0.2.0" + } + }, + "node_modules/source-map-support": { + "version": "0.5.20", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.20.tgz", + "integrity": "sha512-n1lZZ8Ve4ksRqizaBQgxXDgKwttHDhyfQjA6YZZn8+AroHbsIz+JjwxQDxbp+7y5OYCI8t1Yk7etjD9CRd2hIw==", + "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/sourcemap-codec": { + "version": "1.4.8", + "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", + "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==", + "dev": true + }, + "node_modules/sparse-bitfield": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/sparse-bitfield/-/sparse-bitfield-3.0.3.tgz", + "integrity": "sha1-/0rm5oZWBWuks+eSqzM004JzyhE=", + "optional": true, + "dependencies": { + "memory-pager": "^1.0.2" + } + }, + "node_modules/spdy": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/spdy/-/spdy-4.0.2.tgz", + "integrity": "sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA==", + "dev": true, + "dependencies": { + "debug": "^4.1.0", + "handle-thing": "^2.0.0", + "http-deceiver": "^1.2.7", + "select-hose": "^2.0.0", + "spdy-transport": "^3.0.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/spdy-transport": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/spdy-transport/-/spdy-transport-3.0.0.tgz", + "integrity": "sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw==", + "dev": true, + "dependencies": { + "debug": "^4.1.0", + "detect-node": "^2.0.4", + "hpack.js": "^2.1.6", + "obuf": "^1.1.2", + "readable-stream": "^3.0.6", + "wbuf": "^1.7.3" + } + }, + "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/ssri": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-8.0.1.tgz", + "integrity": "sha512-97qShzy1AiyxvPNIkLWoGua7xoQzzPjQ0HAH4B0rWKo7SZ6USuPcrUiAFrws0UH8RrbWmgq3LMTObhPIHbbBeQ==", + "dev": true, + "dependencies": { + "minipass": "^3.1.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/statuses": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", + "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/stdrpc": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/stdrpc/-/stdrpc-1.3.0.tgz", + "integrity": "sha512-0/V7bDh/ipmDAA4kcCZV9YsVoq2B4p+IwtN48x7jHAVyipeObYwFvcEyaxwRke4FPm4DxYGziPluLye0ywOoiw==", + "dependencies": { + "axios": "^0.21.1", + "koa-basic-auth": "^4.0.0" + } + }, + "node_modules/streamroller": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/streamroller/-/streamroller-2.2.4.tgz", + "integrity": "sha512-OG79qm3AujAM9ImoqgWEY1xG4HX+Lw+yY6qZj9R1K2mhF5bEmQ849wvrb+4vt4jLMLzwXttJlQbOdPOQVRv7DQ==", + "dev": true, + "dependencies": { + "date-format": "^2.1.0", + "debug": "^4.1.1", + "fs-extra": "^8.1.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/streamroller/node_modules/date-format": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/date-format/-/date-format-2.1.0.tgz", + "integrity": "sha512-bYQuGLeFxhkxNOF3rcMtiZxvCBAquGzZm6oWA1oZ0g2THUzivaRhv8uOhdr19LmoobSOLoIAxeUK2RdbM8IFTA==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dev": true, + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/string_decoder/node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "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/stylus": { + "version": "0.55.0", + "resolved": "https://registry.npmjs.org/stylus/-/stylus-0.55.0.tgz", + "integrity": "sha512-MuzIIVRSbc8XxHH7FjkvWqkIcr1BvoMZoR/oFuAJDlh7VSaNJzrB4uJ38GRQa+mWjLXODAMzeDe0xi9GYbGwnw==", + "dev": true, + "dependencies": { + "css": "^3.0.0", + "debug": "~3.1.0", + "glob": "^7.1.6", + "mkdirp": "~1.0.4", + "safer-buffer": "^2.1.2", + "sax": "~1.2.4", + "semver": "^6.3.0", + "source-map": "^0.7.3" + }, + "bin": { + "stylus": "bin/stylus" + }, + "engines": { + "node": "*" + } + }, + "node_modules/stylus-loader": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/stylus-loader/-/stylus-loader-6.2.0.tgz", + "integrity": "sha512-5dsDc7qVQGRoc6pvCL20eYgRUxepZ9FpeK28XhdXaIPP6kXr6nI1zAAKFQgP5OBkOfKaURp4WUpJzspg1f01Gg==", + "dev": true, + "dependencies": { + "fast-glob": "^3.2.7", + "klona": "^2.0.4", + "normalize-path": "^3.0.0" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "stylus": ">=0.52.4", + "webpack": "^5.0.0" + } + }, + "node_modules/stylus/node_modules/debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/stylus/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/stylus/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/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/symbol-observable": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-4.0.0.tgz", + "integrity": "sha512-b19dMThMV4HVFynSAM1++gBHAbk2Tc/osgLIBZMKsyqh34jb2e8Os7T6ZW/Bt3pJFdBTd2JwAnAAEQV7rSNvcQ==", + "dev": true, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/tapable": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", + "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/tar": { + "version": "6.1.11", + "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.11.tgz", + "integrity": "sha512-an/KZQzQUkZCkuoAA64hM92X0Urb6VpRhAFllDzz44U2mcD5scmT3zBc4VgVpkugF580+DQn8eAFSyoQt0tznA==", + "dev": true, + "dependencies": { + "chownr": "^2.0.0", + "fs-minipass": "^2.0.0", + "minipass": "^3.0.0", + "minizlib": "^2.1.1", + "mkdirp": "^1.0.3", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/terser": { + "version": "5.9.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.9.0.tgz", + "integrity": "sha512-h5hxa23sCdpzcye/7b8YqbE5OwKca/ni0RQz1uRX3tGh8haaGHqcuSqbGRybuAKNdntZ0mDgFNXPJ48xQ2RXKQ==", + "dev": true, + "dependencies": { + "commander": "^2.20.0", + "source-map": "~0.7.2", + "source-map-support": "~0.5.20" + }, + "bin": { + "terser": "bin/terser" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/terser-webpack-plugin": { + "version": "5.2.5", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.2.5.tgz", + "integrity": "sha512-3luOVHku5l0QBeYS8r4CdHYWEGMmIj3H1U64jgkdZzECcSOJAyJ9TjuqcQZvw1Y+4AOBN9SeYJPJmFn2cM4/2g==", + "dev": true, + "dependencies": { + "jest-worker": "^27.0.6", + "schema-utils": "^3.1.1", + "serialize-javascript": "^6.0.0", + "source-map": "^0.6.1", + "terser": "^5.7.2" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.1.0" + }, + "peerDependenciesMeta": { + "@swc/core": { + "optional": true + }, + "esbuild": { + "optional": true + }, + "uglify-js": { + "optional": true + } + } + }, + "node_modules/terser-webpack-plugin/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" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/terser-webpack-plugin/node_modules/ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "dev": true, + "peerDependencies": { + "ajv": "^6.9.1" + } + }, + "node_modules/terser-webpack-plugin/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/terser-webpack-plugin/node_modules/schema-utils": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", + "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", + "dev": true, + "dependencies": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/terser-webpack-plugin/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/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/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/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/thunky": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/thunky/-/thunky-1.1.0.tgz", + "integrity": "sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==", + "dev": true + }, + "node_modules/tmp": { + "version": "0.0.33", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", + "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", + "dev": true, + "dependencies": { + "os-tmpdir": "~1.0.2" + }, + "engines": { + "node": ">=0.6.0" + } + }, + "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-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/toidentifier": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.0.tgz", + "integrity": "sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==", + "dev": true, + "engines": { + "node": ">=0.6" + } + }, + "node_modules/tr46": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-3.0.0.tgz", + "integrity": "sha512-l7FvfAHlcmulp8kr+flpQZmVwtu7nfRV7NZujtN0OqES8EL4O4e0qqzL0DC5gAvx/ZC/9lk6rhcUwYvkBnBnYA==", + "dependencies": { + "punycode": "^2.1.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/tree-kill": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.2.tgz", + "integrity": "sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==", + "dev": true, + "bin": { + "tree-kill": "cli.js" + } + }, + "node_modules/tslib": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", + "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" + }, + "node_modules/tsscmp": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/tsscmp/-/tsscmp-1.0.6.tgz", + "integrity": "sha512-LxhtAkPDTkVCMQjt2h6eBVY28KCjikZqZfMcC15YBeNjkgUpdCfBu5HoiOTDu86v6smE8yOjyEktJ8hlbANHQA==", + "engines": { + "node": ">=0.6.x" + } + }, + "node_modules/type-fest": { + "version": "0.21.3", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", + "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/type-is": { + "version": "1.6.18", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", + "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", + "dev": true, + "dependencies": { + "media-typer": "0.3.0", + "mime-types": "~2.1.24" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/typed-assert": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/typed-assert/-/typed-assert-1.0.8.tgz", + "integrity": "sha512-5NkbXZUlmCE73Fs7gvkp1XXJWHYetPkg60QnQ2NXQmBYNFxbBr2zA8GCtaH4K2s2WhOmSlgiSTmrjrcm5tnM5g==", + "dev": true + }, + "node_modules/typescript": { + "version": "4.4.4", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.4.4.tgz", + "integrity": "sha512-DqGhF5IKoBl8WNf8C1gu8q0xZSInh9j1kJJMqT3a94w1JzVaBU4EXOSMrz9yDqMT0xt3selp83fuFMQ0uzv6qA==", + "dev": true, + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=4.2.0" + } + }, + "node_modules/ua-parser-js": { + "version": "0.7.31", + "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.31.tgz", + "integrity": "sha512-qLK/Xe9E2uzmYI3qLeOmI0tEOt+TBBQyUIAh4aAgU05FVYzeZrKUdkAZfBNVGRaHVgV0TDkdEngJSw/SyQchkQ==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/ua-parser-js" + }, + { + "type": "paypal", + "url": "https://paypal.me/faisalman" + } + ], + "engines": { + "node": "*" + } + }, + "node_modules/unicode-canonical-property-names-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz", + "integrity": "sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-match-property-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz", + "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==", + "dev": true, + "dependencies": { + "unicode-canonical-property-names-ecmascript": "^2.0.0", + "unicode-property-aliases-ecmascript": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-match-property-value-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.0.0.tgz", + "integrity": "sha512-7Yhkc0Ye+t4PNYzOGKedDhXbYIBe1XEQYQxOPyhcXNMJ0WCABqqj6ckydd6pWRZTHV4GuCPKdBAUiMc60tsKVw==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-property-aliases-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.0.0.tgz", + "integrity": "sha512-5Zfuy9q/DFr4tfO7ZPeVXb1aPoeQSdeFMLpYuFebehDAhbuevLs5yxSZmIFN1tP5F9Wl4IpJrYojg85/zgyZHQ==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/uniq": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/uniq/-/uniq-1.0.1.tgz", + "integrity": "sha1-sxxa6CVIRKOoKBVBzisEuGWnNP8=", + "dev": true + }, + "node_modules/unique-filename": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz", + "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==", + "dev": true, + "dependencies": { + "unique-slug": "^2.0.0" + } + }, + "node_modules/unique-slug": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.2.tgz", + "integrity": "sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w==", + "dev": true, + "dependencies": { + "imurmurhash": "^0.1.4" + } + }, + "node_modules/universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", + "dev": true, + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/url": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", + "integrity": "sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE=", + "dev": true, + "dependencies": { + "punycode": "1.3.2", + "querystring": "0.2.0" + } + }, + "node_modules/url/node_modules/punycode": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", + "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=", + "dev": true + }, + "node_modules/urlsafe-base64": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/urlsafe-base64/-/urlsafe-base64-1.0.0.tgz", + "integrity": "sha1-I/iQaabGL0bPOh07ABac77kL4MY=" + }, + "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 + }, + "node_modules/utils-merge": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=", + "dev": true, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/uuid": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", + "bin": { + "uuid": "dist/bin/uuid" + } + }, + "node_modules/validate-npm-package-name": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-3.0.0.tgz", + "integrity": "sha1-X6kS2B630MdK/BQN5zF/DKffQ34=", + "dev": true, + "dependencies": { + "builtins": "^1.0.3" + } + }, + "node_modules/vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/void-elements": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/void-elements/-/void-elements-2.0.1.tgz", + "integrity": "sha1-wGavtYK7HLQSjWDqkjkulNXp2+w=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/watchpack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.2.0.tgz", + "integrity": "sha512-up4YAn/XHgZHIxFBVCdlMiWDj6WaLKpwVeGQk2I5thdYxF/KmF0aaz6TfJZ/hfl1h/XlcDr7k1KH7ThDagpFaA==", + "dev": true, + "dependencies": { + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.1.2" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/wbuf": { + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/wbuf/-/wbuf-1.7.3.tgz", + "integrity": "sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA==", + "dev": true, + "dependencies": { + "minimalistic-assert": "^1.0.0" + } + }, + "node_modules/wcwidth": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", + "integrity": "sha1-8LDc+RW8X/FSivrbLA4XtTLaL+g=", + "dev": true, + "dependencies": { + "defaults": "^1.0.3" + } + }, + "node_modules/webidl-conversions": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", + "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==", + "engines": { + "node": ">=12" + } + }, + "node_modules/webpack": { + "version": "5.60.0", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.60.0.tgz", + "integrity": "sha512-OL5GDYi2dKxnwJPSOg2tODgzDxAffN0osgWkZaBo/l3ikCxDFP+tuJT3uF7GyBE3SDBpKML/+a8EobyWAQO3DQ==", + "dev": true, + "dependencies": { + "@types/eslint-scope": "^3.7.0", + "@types/estree": "^0.0.50", + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/wasm-edit": "1.11.1", + "@webassemblyjs/wasm-parser": "1.11.1", + "acorn": "^8.4.1", + "acorn-import-assertions": "^1.7.6", + "browserslist": "^4.14.5", + "chrome-trace-event": "^1.0.2", + "enhanced-resolve": "^5.8.3", + "es-module-lexer": "^0.9.0", + "eslint-scope": "5.1.1", + "events": "^3.2.0", + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.2.4", + "json-parse-better-errors": "^1.0.2", + "loader-runner": "^4.2.0", + "mime-types": "^2.1.27", + "neo-async": "^2.6.2", + "schema-utils": "^3.1.0", + "tapable": "^2.1.1", + "terser-webpack-plugin": "^5.1.3", + "watchpack": "^2.2.0", + "webpack-sources": "^3.2.0" + }, + "bin": { + "webpack": "bin/webpack.js" + }, + "engines": { + "node": ">=10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependenciesMeta": { + "webpack-cli": { + "optional": true + } + } + }, + "node_modules/webpack-dev-middleware": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-5.2.1.tgz", + "integrity": "sha512-Kx1X+36Rn9JaZcQMrJ7qN3PMAuKmEDD9ZISjUj3Cgq4A6PtwYsC4mpaKotSRYH3iOF6HsUa8viHKS59FlyVifQ==", + "dev": true, + "dependencies": { + "colorette": "^2.0.10", + "memfs": "^3.2.2", + "mime-types": "^2.1.31", + "range-parser": "^1.2.1", + "schema-utils": "^3.1.0" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^4.0.0 || ^5.0.0" + } + }, + "node_modules/webpack-dev-middleware/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" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/webpack-dev-middleware/node_modules/ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "dev": true, + "peerDependencies": { + "ajv": "^6.9.1" + } + }, + "node_modules/webpack-dev-middleware/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/webpack-dev-middleware/node_modules/schema-utils": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", + "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", + "dev": true, + "dependencies": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/webpack-dev-server": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.4.0.tgz", + "integrity": "sha512-+S0XRIbsopVjPFjCO8I07FXYBWYqkFmuP56ucGMTs2hA/gV4q2M9xTmNo5Tg4o8ffRR+Nm3AsXnQXxKRyYovrA==", + "dev": true, + "dependencies": { + "ansi-html-community": "^0.0.8", + "bonjour": "^3.5.0", + "chokidar": "^3.5.2", + "colorette": "^2.0.10", + "compression": "^1.7.4", + "connect-history-api-fallback": "^1.6.0", + "del": "^6.0.0", + "express": "^4.17.1", + "graceful-fs": "^4.2.6", + "html-entities": "^2.3.2", + "http-proxy-middleware": "^2.0.0", + "internal-ip": "^6.2.0", + "ipaddr.js": "^2.0.1", + "open": "^8.0.9", + "p-retry": "^4.5.0", + "portfinder": "^1.0.28", + "schema-utils": "^3.1.0", + "selfsigned": "^1.10.11", + "serve-index": "^1.9.1", + "sockjs": "^0.3.21", + "spdy": "^4.0.2", + "strip-ansi": "^7.0.0", + "url": "^0.11.0", + "webpack-dev-middleware": "^5.2.1", + "ws": "^8.1.0" + }, + "bin": { + "webpack-dev-server": "bin/webpack-dev-server.js" + }, + "engines": { + "node": ">= 12.13.0" + }, + "peerDependencies": { + "webpack": "^4.37.0 || ^5.0.0" + }, + "peerDependenciesMeta": { + "webpack-cli": { + "optional": true + } + } + }, + "node_modules/webpack-dev-server/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" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/webpack-dev-server/node_modules/ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "dev": true, + "peerDependencies": { + "ajv": "^6.9.1" + } + }, + "node_modules/webpack-dev-server/node_modules/ansi-regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/webpack-dev-server/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/webpack-dev-server/node_modules/schema-utils": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", + "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", + "dev": true, + "dependencies": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/webpack-dev-server/node_modules/strip-ansi": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.0.1.tgz", + "integrity": "sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==", + "dev": true, + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "node_modules/webpack-merge": { + "version": "5.8.0", + "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.8.0.tgz", + "integrity": "sha512-/SaI7xY0831XwP6kzuwhKWVKDP9t1QY1h65lAFLbZqMPIuYcD9QAW4u9STIbU9kaJbPBB/geU/gLr1wDjOhQ+Q==", + "dev": true, + "dependencies": { + "clone-deep": "^4.0.1", + "wildcard": "^2.0.0" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/webpack-sources": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.2.tgz", + "integrity": "sha512-cp5qdmHnu5T8wRg2G3vZZHoJPN14aqQ89SyQ11NpGH5zEMDCclt49rzo+MaRazk7/UeILhAI+/sEtcM+7Fr0nw==", + "dev": true, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/webpack-subresource-integrity": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/webpack-subresource-integrity/-/webpack-subresource-integrity-5.0.0.tgz", + "integrity": "sha512-x9514FpLRydO+UAQ8DY4aLtCjxmdLkuQVcDFN1kGzuusREYJ1B0rzk/iIlWiL6dnvrhEGFj2+UsdxDkP8Z4UKg==", + "dev": true, + "dependencies": { + "typed-assert": "^1.0.8" + }, + "engines": { + "node": ">= 12" + }, + "peerDependencies": { + "html-webpack-plugin": ">= 5.0.0-beta.1 < 6", + "webpack": "^5.12.0" + }, + "peerDependenciesMeta": { + "html-webpack-plugin": { + "optional": true + } + } + }, + "node_modules/webpack/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" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/webpack/node_modules/ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "dev": true, + "peerDependencies": { + "ajv": "^6.9.1" + } + }, + "node_modules/webpack/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/webpack/node_modules/schema-utils": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", + "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", + "dev": true, + "dependencies": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/websocket-driver": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.4.tgz", + "integrity": "sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg==", + "dev": true, + "dependencies": { + "http-parser-js": ">=0.5.1", + "safe-buffer": ">=5.1.0", + "websocket-extensions": ">=0.1.1" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/websocket-extensions": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.4.tgz", + "integrity": "sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/whatwg-url": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-11.0.0.tgz", + "integrity": "sha512-RKT8HExMpoYx4igMiVMY83lN6UeITKJlBQ+vR/8ZJ8OCdSiN3RwCq+9gH0+Xzj0+5IrM6i4j/6LuvzbZIQgEcQ==", + "dependencies": { + "tr46": "^3.0.0", + "webidl-conversions": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "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/wide-align": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", + "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", + "dev": true, + "dependencies": { + "string-width": "^1.0.2 || 2 || 3 || 4" + } + }, + "node_modules/wildcard": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-2.0.0.tgz", + "integrity": "sha512-JcKqAHLPxcdb9KM49dufGXn2x3ssnfjbcaQdLlfZsL9rH9wgDQjUtDxbo8NE0F6SFvydeu1VhZe7hZuHsB2/pw==", + "dev": true + }, + "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" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-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" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/wrap-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/wrap-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/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", + "dev": true + }, + "node_modules/ws": { + "version": "8.2.3", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.2.3.tgz", + "integrity": "sha512-wBuoj1BDpC6ZQ1B7DWQBYVLphPWkm8i9Y0/3YdHjHKHiohOJ1ws+3OccDWtH+PoC9DZD5WOTrJvNbWvjS6JWaA==", + "dev": true, + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": "^5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "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.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", + "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/yargs": { + "version": "17.2.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.2.1.tgz", + "integrity": "sha512-XfR8du6ua4K6uLGm5S6fA+FIJom/MdJcFNVY8geLlp2v8GYbOXD4EB1tPNZsRn4vBzKGMgb5DRZMeWuFc2GO8Q==", + "dev": true, + "dependencies": { + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.0", + "y18n": "^5.0.5", + "yargs-parser": "^20.2.2" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/yargs-parser": { + "version": "20.2.9", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "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" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/zone.js": { + "version": "0.11.4", + "resolved": "https://registry.npmjs.org/zone.js/-/zone.js-0.11.4.tgz", + "integrity": "sha512-DDh2Ab+A/B+9mJyajPjHFPWfYU1H+pdun4wnnk0OcQTNjem1XQSZ2CDW+rfZEUDjv5M19SBqAkjZi0x5wuB5Qw==", + "dependencies": { + "tslib": "^2.0.0" + } + } + }, + "dependencies": { + "@ampproject/remapping": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-1.0.1.tgz", + "integrity": "sha512-Ta9bMA3EtUHDaZJXqUoT5cn/EecwOp+SXpKJqxDbDuMbLvEMu6YTyDDuvTWeStODfdmXyfMo7LymQyPkN3BicA==", + "dev": true, + "requires": { + "@jridgewell/resolve-uri": "1.0.0", + "sourcemap-codec": "1.4.8" + } + }, + "@angular-devkit/architect": { + "version": "0.1300.2", + "resolved": "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.1300.2.tgz", + "integrity": "sha512-cCTPFKZlR+Szt+X/l/eo4KBYnRba2NiCpFNPVsujitm7JqCXkjab7NDlf+2XMVD8vZl/kR1hfyF6O9ywYmhEFA==", + "dev": true, + "requires": { + "@angular-devkit/core": "13.0.2", + "rxjs": "6.6.7" + } + }, + "@angular-devkit/build-angular": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@angular-devkit/build-angular/-/build-angular-13.0.2.tgz", + "integrity": "sha512-BIxRt+kgl2hrJOGzttMdhIm0P4inErZh9/aJyz6nOKa3XgsS7cDzEwph7TJqHTuEP4n+orl8hpbZOuxCUCvdVA==", + "dev": true, + "requires": { + "@ampproject/remapping": "1.0.1", + "@angular-devkit/architect": "0.1300.2", + "@angular-devkit/build-webpack": "0.1300.2", + "@angular-devkit/core": "13.0.2", + "@babel/core": "7.15.8", + "@babel/generator": "7.15.8", + "@babel/helper-annotate-as-pure": "7.15.4", + "@babel/plugin-proposal-async-generator-functions": "7.15.8", + "@babel/plugin-transform-async-to-generator": "7.14.5", + "@babel/plugin-transform-runtime": "7.15.8", + "@babel/preset-env": "7.15.8", + "@babel/runtime": "7.15.4", + "@babel/template": "7.15.4", + "@discoveryjs/json-ext": "0.5.5", + "@ngtools/webpack": "13.0.2", + "ansi-colors": "4.1.1", + "babel-loader": "8.2.3", + "babel-plugin-istanbul": "6.1.1", + "browserslist": "^4.9.1", + "cacache": "15.3.0", + "caniuse-lite": "^1.0.30001032", + "circular-dependency-plugin": "5.2.2", + "copy-webpack-plugin": "9.0.1", + "core-js": "3.19.0", + "critters": "0.0.14", + "css-loader": "6.5.0", + "esbuild": "0.13.12", + "esbuild-wasm": "0.13.12", + "glob": "7.2.0", + "https-proxy-agent": "5.0.0", + "inquirer": "8.2.0", + "karma-source-map-support": "1.4.0", + "less": "4.1.2", + "less-loader": "10.2.0", + "license-webpack-plugin": "3.0.0", + "loader-utils": "3.0.0", + "mini-css-extract-plugin": "2.4.3", + "minimatch": "3.0.4", + "open": "8.4.0", + "ora": "5.4.1", + "parse5-html-rewriting-stream": "6.0.1", + "piscina": "3.1.0", + "postcss": "8.3.11", + "postcss-import": "14.0.2", + "postcss-loader": "6.2.0", + "postcss-preset-env": "6.7.0", + "regenerator-runtime": "0.13.9", + "resolve-url-loader": "4.0.0", + "rxjs": "6.6.7", + "sass": "1.43.4", + "sass-loader": "12.3.0", + "semver": "7.3.5", + "source-map-loader": "3.0.0", + "source-map-support": "0.5.20", + "stylus": "0.55.0", + "stylus-loader": "6.2.0", + "terser": "5.9.0", + "text-table": "0.2.0", + "tree-kill": "1.2.2", + "tslib": "2.3.1", + "webpack": "5.60.0", + "webpack-dev-middleware": "5.2.1", + "webpack-dev-server": "4.4.0", + "webpack-merge": "5.8.0", + "webpack-subresource-integrity": "5.0.0" + } + }, + "@angular-devkit/build-webpack": { + "version": "0.1300.2", + "resolved": "https://registry.npmjs.org/@angular-devkit/build-webpack/-/build-webpack-0.1300.2.tgz", + "integrity": "sha512-cl5L7VwbLlpCnaiIIcS6vOdOdDPWReN7Yhl9HIEazFNZ1MCq9lOkLWmF8cvCwmbX7hv5uibeJmHhRXiihkAwOA==", + "dev": true, + "requires": { + "@angular-devkit/architect": "0.1300.2", + "rxjs": "6.6.7" + } + }, + "@angular-devkit/core": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-13.0.2.tgz", + "integrity": "sha512-I4co4GH+iu0tns+UXfMtjJISO+cLpaUuiEH6kf0wF5cqjaIeluA9UjIRnxuNbdTW8iE2xVj/UWhQfHe/Ncp76w==", + "dev": true, + "requires": { + "ajv": "8.6.3", + "ajv-formats": "2.1.1", + "fast-json-stable-stringify": "2.1.0", + "magic-string": "0.25.7", + "rxjs": "6.6.7", + "source-map": "0.7.3" + } + }, + "@angular-devkit/schematics": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-13.0.2.tgz", + "integrity": "sha512-qrTe1teQptgP8gmVy6QX0T4dNfnNipEv+cM2cr7JXOmkPpwF+6oBDrTRIJ55t6rziqrXHJ3rxjKm1aHAxFrIEQ==", + "dev": true, + "requires": { + "@angular-devkit/core": "13.0.2", + "jsonc-parser": "3.0.0", + "magic-string": "0.25.7", + "ora": "5.4.1", + "rxjs": "6.6.7" + } + }, + "@angular/animations": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@angular/animations/-/animations-13.0.2.tgz", + "integrity": "sha512-ROR70rM6E13pIJzaYf0Su/ALSoBm5fIMjozey636pAq21TxTy5IfhgaBjv/vflC9psbpaySGw2H5XnwejP0gSw==", + "requires": { + "tslib": "^2.3.0" + } + }, + "@angular/cdk": { + "version": "12.2.13", + "resolved": "https://registry.npmjs.org/@angular/cdk/-/cdk-12.2.13.tgz", + "integrity": "sha512-zSKRhECyFqhingIeyRInIyTvYErt4gWo+x5DQr0b7YLUbU8DZSwWnG4w76Ke2s4U8T7ry1jpJBHoX/e8YBpGMg==", + "requires": { + "parse5": "^5.0.0", + "tslib": "^2.2.0" + } + }, + "@angular/cli": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@angular/cli/-/cli-13.0.2.tgz", + "integrity": "sha512-eFEVZR56q1zCCBfp7e7sqmrqbHhdDd/1QGv9FYD+2HoC1VHYQf5w+NyWofQhx7a+tnGGqoR28LYzSsL7fFW8pw==", + "dev": true, + "requires": { + "@angular-devkit/architect": "0.1300.2", + "@angular-devkit/core": "13.0.2", + "@angular-devkit/schematics": "13.0.2", + "@schematics/angular": "13.0.2", + "@yarnpkg/lockfile": "1.1.0", + "ansi-colors": "4.1.1", + "debug": "4.3.2", + "ini": "2.0.0", + "inquirer": "8.2.0", + "jsonc-parser": "3.0.0", + "npm-package-arg": "8.1.5", + "npm-pick-manifest": "6.1.1", + "open": "8.4.0", + "ora": "5.4.1", + "pacote": "12.0.2", + "resolve": "1.20.0", + "semver": "7.3.5", + "symbol-observable": "4.0.0", + "uuid": "8.3.2" + } + }, + "@angular/common": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@angular/common/-/common-13.0.2.tgz", + "integrity": "sha512-UxWzNAU/o9pP02AYB5MrnIlShirfO631NolmvP0jTSEmym1nAeDOwZIYlkgfcJMHFXFc7DBnE2XOGaTZ8if3kw==", + "requires": { + "tslib": "^2.3.0" + } + }, + "@angular/compiler": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-13.0.2.tgz", + "integrity": "sha512-EvIFT8y5VNICrnPgiamv/z9hfQ7KjLCM52g4ssXGCeGPVj58OEfslEc3jO4BCJG7xuLm7dCuSRV0pBlJNTSYFg==", + "requires": { + "tslib": "^2.3.0" + } + }, + "@angular/compiler-cli": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@angular/compiler-cli/-/compiler-cli-13.0.2.tgz", + "integrity": "sha512-KVDntMBoPoAPdpyO3LxR2U3BO3ja5fY5Im5rzynjBCC3dnwAPPKoIlYZlFY/5ov6yVoVleeb/BOovYxHuxZBsA==", + "dev": true, + "requires": { + "@babel/core": "^7.8.6", + "canonical-path": "1.0.0", + "chokidar": "^3.0.0", + "convert-source-map": "^1.5.1", + "dependency-graph": "^0.11.0", + "magic-string": "^0.25.0", + "reflect-metadata": "^0.1.2", + "semver": "^7.0.0", + "sourcemap-codec": "^1.4.8", + "tslib": "^2.3.0", + "yargs": "^17.2.1" + } + }, + "@angular/core": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@angular/core/-/core-13.0.2.tgz", + "integrity": "sha512-6Jbct50lncMqzwLILzfmwQRK8eOEMv0quCL3pQptEpYPSlPqKz6QRxD76BykSUOs7XYJ/KdZmu3uGcT2Q/DUVg==", + "requires": { + "tslib": "^2.3.0" + } + }, + "@angular/forms": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@angular/forms/-/forms-13.0.2.tgz", + "integrity": "sha512-JGgEOTH/OYr7/RlqJUPSzKQF/a55UM5PD6CgpUjAXKrCV18+zhofO05g+ibIZH3OfONntthcbKEXxMTX2EEQqg==", + "requires": { + "tslib": "^2.3.0" + } + }, + "@angular/material": { + "version": "12.2.13", + "resolved": "https://registry.npmjs.org/@angular/material/-/material-12.2.13.tgz", + "integrity": "sha512-6g2GyN4qp2D+DqY2AwrQuPB3cd9gybvQVXvNRbTPXEulHr+LgGei00ySdFHFp6RvdGSMZ4i3LM1Fq3VkFxhCfQ==", + "requires": { + "tslib": "^2.2.0" + } + }, + "@angular/platform-browser": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-13.0.2.tgz", + "integrity": "sha512-fkLGr9Vj2cvFzXefyhNaqwXX90+WbpYj5cCii7S1HcbJ9qSM5ZenLp1t8mGRhmWI7odY4BrFskWOChlWFrLEkA==", + "requires": { + "tslib": "^2.3.0" + } + }, + "@angular/platform-browser-dynamic": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-13.0.2.tgz", + "integrity": "sha512-2wZX2oop3A1kWFcbRYqe8AxBQjT35DXf1qlGyFQoMn7D0vOAprg6X1hUK2XBItRrvwRWh3hSVhzkustTIl+r6g==", + "requires": { + "tslib": "^2.3.0" + } + }, + "@angular/router": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@angular/router/-/router-13.0.2.tgz", + "integrity": "sha512-AfmT845dcYPvNbUdV2ALlf++szZP3ie2d0eu7JyGWe3anV1fbDcg76RhjxFK8yVUxryrCQtEnot1VEEVlhGkyw==", + "requires": { + "tslib": "^2.3.0" + } + }, + "@assemblyscript/loader": { + "version": "0.10.1", + "resolved": "https://registry.npmjs.org/@assemblyscript/loader/-/loader-0.10.1.tgz", + "integrity": "sha512-H71nDOOL8Y7kWRLqf6Sums+01Q5msqBW2KhDUTemh1tvY04eSkSXrK0uj/4mmY0Xr16/3zyZmsrxN7CKuRbNRg==", + "dev": true + }, + "@babel/code-frame": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.16.0.tgz", + "integrity": "sha512-IF4EOMEV+bfYwOmNxGzSnjR2EmQod7f1UXOpZM3l4i4o4QNwzjtJAu/HxdjHq0aYBvdqMuQEY1eg0nqW9ZPORA==", + "dev": true, + "requires": { + "@babel/highlight": "^7.16.0" + } + }, + "@babel/compat-data": { + "version": "7.16.4", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.16.4.tgz", + "integrity": "sha512-1o/jo7D+kC9ZjHX5v+EHrdjl3PhxMrLSOTGsOdHJ+KL8HCaEK6ehrVL2RS6oHDZp+L7xLirLrPmQtEng769J/Q==", + "dev": true + }, + "@babel/core": { + "version": "7.15.8", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.15.8.tgz", + "integrity": "sha512-3UG9dsxvYBMYwRv+gS41WKHno4K60/9GPy1CJaH6xy3Elq8CTtvtjT5R5jmNhXfCYLX2mTw+7/aq5ak/gOE0og==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.15.8", + "@babel/generator": "^7.15.8", + "@babel/helper-compilation-targets": "^7.15.4", + "@babel/helper-module-transforms": "^7.15.8", + "@babel/helpers": "^7.15.4", + "@babel/parser": "^7.15.8", + "@babel/template": "^7.15.4", + "@babel/traverse": "^7.15.4", + "@babel/types": "^7.15.6", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.1.2", + "semver": "^6.3.0", + "source-map": "^0.5.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + } + } + }, + "@babel/generator": { + "version": "7.15.8", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.15.8.tgz", + "integrity": "sha512-ECmAKstXbp1cvpTTZciZCgfOt6iN64lR0d+euv3UZisU5awfRawOvg07Utn/qBGuH4bRIEZKrA/4LzZyXhZr8g==", + "dev": true, + "requires": { + "@babel/types": "^7.15.6", + "jsesc": "^2.5.1", + "source-map": "^0.5.0" + }, + "dependencies": { + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + } + } + }, + "@babel/helper-annotate-as-pure": { + "version": "7.15.4", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.15.4.tgz", + "integrity": "sha512-QwrtdNvUNsPCj2lfNQacsGSQvGX8ee1ttrBrcozUP2Sv/jylewBP/8QFe6ZkBsC8T/GYWonNAWJV4aRR9AL2DA==", + "dev": true, + "requires": { + "@babel/types": "^7.15.4" + } + }, + "@babel/helper-builder-binary-assignment-operator-visitor": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.16.0.tgz", + "integrity": "sha512-9KuleLT0e77wFUku6TUkqZzCEymBdtuQQ27MhEKzf9UOOJu3cYj98kyaDAzxpC7lV6DGiZFuC8XqDsq8/Kl6aQ==", + "dev": true, + "requires": { + "@babel/helper-explode-assignable-expression": "^7.16.0", + "@babel/types": "^7.16.0" + } + }, + "@babel/helper-compilation-targets": { + "version": "7.16.3", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.16.3.tgz", + "integrity": "sha512-vKsoSQAyBmxS35JUOOt+07cLc6Nk/2ljLIHwmq2/NM6hdioUaqEXq/S+nXvbvXbZkNDlWOymPanJGOc4CBjSJA==", + "dev": true, + "requires": { + "@babel/compat-data": "^7.16.0", + "@babel/helper-validator-option": "^7.14.5", + "browserslist": "^4.17.5", + "semver": "^6.3.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, + "@babel/helper-create-class-features-plugin": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.16.0.tgz", + "integrity": "sha512-XLwWvqEaq19zFlF5PTgOod4bUA+XbkR4WLQBct1bkzmxJGB0ZEJaoKF4c8cgH9oBtCDuYJ8BP5NB9uFiEgO5QA==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.16.0", + "@babel/helper-function-name": "^7.16.0", + "@babel/helper-member-expression-to-functions": "^7.16.0", + "@babel/helper-optimise-call-expression": "^7.16.0", + "@babel/helper-replace-supers": "^7.16.0", + "@babel/helper-split-export-declaration": "^7.16.0" + }, + "dependencies": { + "@babel/helper-annotate-as-pure": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.16.0.tgz", + "integrity": "sha512-ItmYF9vR4zA8cByDocY05o0LGUkp1zhbTQOH1NFyl5xXEqlTJQCEJjieriw+aFpxo16swMxUnUiKS7a/r4vtHg==", + "dev": true, + "requires": { + "@babel/types": "^7.16.0" + } + } + } + }, + "@babel/helper-create-regexp-features-plugin": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.16.0.tgz", + "integrity": "sha512-3DyG0zAFAZKcOp7aVr33ddwkxJ0Z0Jr5V99y3I690eYLpukJsJvAbzTy1ewoCqsML8SbIrjH14Jc/nSQ4TvNPA==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.16.0", + "regexpu-core": "^4.7.1" + }, + "dependencies": { + "@babel/helper-annotate-as-pure": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.16.0.tgz", + "integrity": "sha512-ItmYF9vR4zA8cByDocY05o0LGUkp1zhbTQOH1NFyl5xXEqlTJQCEJjieriw+aFpxo16swMxUnUiKS7a/r4vtHg==", + "dev": true, + "requires": { + "@babel/types": "^7.16.0" + } + } + } + }, + "@babel/helper-define-polyfill-provider": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.2.4.tgz", + "integrity": "sha512-OrpPZ97s+aPi6h2n1OXzdhVis1SGSsMU2aMHgLcOKfsp4/v1NWpx3CWT3lBj5eeBq9cDkPkh+YCfdF7O12uNDQ==", + "dev": true, + "requires": { + "@babel/helper-compilation-targets": "^7.13.0", + "@babel/helper-module-imports": "^7.12.13", + "@babel/helper-plugin-utils": "^7.13.0", + "@babel/traverse": "^7.13.0", + "debug": "^4.1.1", + "lodash.debounce": "^4.0.8", + "resolve": "^1.14.2", + "semver": "^6.1.2" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, + "@babel/helper-explode-assignable-expression": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.16.0.tgz", + "integrity": "sha512-Hk2SLxC9ZbcOhLpg/yMznzJ11W++lg5GMbxt1ev6TXUiJB0N42KPC+7w8a+eWGuqDnUYuwStJoZHM7RgmIOaGQ==", + "dev": true, + "requires": { + "@babel/types": "^7.16.0" + } + }, + "@babel/helper-function-name": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.16.0.tgz", + "integrity": "sha512-BZh4mEk1xi2h4HFjWUXRQX5AEx4rvaZxHgax9gcjdLWdkjsY7MKt5p0otjsg5noXw+pB+clMCjw+aEVYADMjog==", + "dev": true, + "requires": { + "@babel/helper-get-function-arity": "^7.16.0", + "@babel/template": "^7.16.0", + "@babel/types": "^7.16.0" + }, + "dependencies": { + "@babel/template": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.16.0.tgz", + "integrity": "sha512-MnZdpFD/ZdYhXwiunMqqgyZyucaYsbL0IrjoGjaVhGilz+x8YB++kRfygSOIj1yOtWKPlx7NBp+9I1RQSgsd5A==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.16.0", + "@babel/parser": "^7.16.0", + "@babel/types": "^7.16.0" + } + } + } + }, + "@babel/helper-get-function-arity": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.16.0.tgz", + "integrity": "sha512-ASCquNcywC1NkYh/z7Cgp3w31YW8aojjYIlNg4VeJiHkqyP4AzIvr4qx7pYDb4/s8YcsZWqqOSxgkvjUz1kpDQ==", + "dev": true, + "requires": { + "@babel/types": "^7.16.0" + } + }, + "@babel/helper-hoist-variables": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.16.0.tgz", + "integrity": "sha512-1AZlpazjUR0EQZQv3sgRNfM9mEVWPK3M6vlalczA+EECcPz3XPh6VplbErL5UoMpChhSck5wAJHthlj1bYpcmg==", + "dev": true, + "requires": { + "@babel/types": "^7.16.0" + } + }, + "@babel/helper-member-expression-to-functions": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.16.0.tgz", + "integrity": "sha512-bsjlBFPuWT6IWhl28EdrQ+gTvSvj5tqVP5Xeftp07SEuz5pLnsXZuDkDD3Rfcxy0IsHmbZ+7B2/9SHzxO0T+sQ==", + "dev": true, + "requires": { + "@babel/types": "^7.16.0" + } + }, + "@babel/helper-module-imports": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.16.0.tgz", + "integrity": "sha512-kkH7sWzKPq0xt3H1n+ghb4xEMP8k0U7XV3kkB+ZGy69kDk2ySFW1qPi06sjKzFY3t1j6XbJSqr4mF9L7CYVyhg==", + "dev": true, + "requires": { + "@babel/types": "^7.16.0" + } + }, + "@babel/helper-module-transforms": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.16.0.tgz", + "integrity": "sha512-My4cr9ATcaBbmaEa8M0dZNA74cfI6gitvUAskgDtAFmAqyFKDSHQo5YstxPbN+lzHl2D9l/YOEFqb2mtUh4gfA==", + "dev": true, + "requires": { + "@babel/helper-module-imports": "^7.16.0", + "@babel/helper-replace-supers": "^7.16.0", + "@babel/helper-simple-access": "^7.16.0", + "@babel/helper-split-export-declaration": "^7.16.0", + "@babel/helper-validator-identifier": "^7.15.7", + "@babel/template": "^7.16.0", + "@babel/traverse": "^7.16.0", + "@babel/types": "^7.16.0" + }, + "dependencies": { + "@babel/template": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.16.0.tgz", + "integrity": "sha512-MnZdpFD/ZdYhXwiunMqqgyZyucaYsbL0IrjoGjaVhGilz+x8YB++kRfygSOIj1yOtWKPlx7NBp+9I1RQSgsd5A==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.16.0", + "@babel/parser": "^7.16.0", + "@babel/types": "^7.16.0" + } + } + } + }, + "@babel/helper-optimise-call-expression": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.16.0.tgz", + "integrity": "sha512-SuI467Gi2V8fkofm2JPnZzB/SUuXoJA5zXe/xzyPP2M04686RzFKFHPK6HDVN6JvWBIEW8tt9hPR7fXdn2Lgpw==", + "dev": true, + "requires": { + "@babel/types": "^7.16.0" + } + }, + "@babel/helper-plugin-utils": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.14.5.tgz", + "integrity": "sha512-/37qQCE3K0vvZKwoK4XU/irIJQdIfCJuhU5eKnNxpFDsOkgFaUAwbv+RYw6eYgsC0E4hS7r5KqGULUogqui0fQ==", + "dev": true + }, + "@babel/helper-remap-async-to-generator": { + "version": "7.16.4", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.16.4.tgz", + "integrity": "sha512-vGERmmhR+s7eH5Y/cp8PCVzj4XEjerq8jooMfxFdA5xVtAk9Sh4AQsrWgiErUEBjtGrBtOFKDUcWQFW4/dFwMA==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.16.0", + "@babel/helper-wrap-function": "^7.16.0", + "@babel/types": "^7.16.0" + }, + "dependencies": { + "@babel/helper-annotate-as-pure": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.16.0.tgz", + "integrity": "sha512-ItmYF9vR4zA8cByDocY05o0LGUkp1zhbTQOH1NFyl5xXEqlTJQCEJjieriw+aFpxo16swMxUnUiKS7a/r4vtHg==", + "dev": true, + "requires": { + "@babel/types": "^7.16.0" + } + } + } + }, + "@babel/helper-replace-supers": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.16.0.tgz", + "integrity": "sha512-TQxuQfSCdoha7cpRNJvfaYxxxzmbxXw/+6cS7V02eeDYyhxderSoMVALvwupA54/pZcOTtVeJ0xccp1nGWladA==", + "dev": true, + "requires": { + "@babel/helper-member-expression-to-functions": "^7.16.0", + "@babel/helper-optimise-call-expression": "^7.16.0", + "@babel/traverse": "^7.16.0", + "@babel/types": "^7.16.0" + } + }, + "@babel/helper-simple-access": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.16.0.tgz", + "integrity": "sha512-o1rjBT/gppAqKsYfUdfHq5Rk03lMQrkPHG1OWzHWpLgVXRH4HnMM9Et9CVdIqwkCQlobnGHEJMsgWP/jE1zUiw==", + "dev": true, + "requires": { + "@babel/types": "^7.16.0" + } + }, + "@babel/helper-skip-transparent-expression-wrappers": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.16.0.tgz", + "integrity": "sha512-+il1gTy0oHwUsBQZyJvukbB4vPMdcYBrFHa0Uc4AizLxbq6BOYC51Rv4tWocX9BLBDLZ4kc6qUFpQ6HRgL+3zw==", + "dev": true, + "requires": { + "@babel/types": "^7.16.0" + } + }, + "@babel/helper-split-export-declaration": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.16.0.tgz", + "integrity": "sha512-0YMMRpuDFNGTHNRiiqJX19GjNXA4H0E8jZ2ibccfSxaCogbm3am5WN/2nQNj0YnQwGWM1J06GOcQ2qnh3+0paw==", + "dev": true, + "requires": { + "@babel/types": "^7.16.0" + } + }, + "@babel/helper-validator-identifier": { + "version": "7.15.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.15.7.tgz", + "integrity": "sha512-K4JvCtQqad9OY2+yTU8w+E82ywk/fe+ELNlt1G8z3bVGlZfn/hOcQQsUhGhW/N+tb3fxK800wLtKOE/aM0m72w==", + "dev": true + }, + "@babel/helper-validator-option": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.14.5.tgz", + "integrity": "sha512-OX8D5eeX4XwcroVW45NMvoYaIuFI+GQpA2a8Gi+X/U/cDUIRsV37qQfF905F0htTRCREQIB4KqPeaveRJUl3Ow==", + "dev": true + }, + "@babel/helper-wrap-function": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.16.0.tgz", + "integrity": "sha512-VVMGzYY3vkWgCJML+qVLvGIam902mJW0FvT7Avj1zEe0Gn7D93aWdLblYARTxEw+6DhZmtzhBM2zv0ekE5zg1g==", + "dev": true, + "requires": { + "@babel/helper-function-name": "^7.16.0", + "@babel/template": "^7.16.0", + "@babel/traverse": "^7.16.0", + "@babel/types": "^7.16.0" + }, + "dependencies": { + "@babel/template": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.16.0.tgz", + "integrity": "sha512-MnZdpFD/ZdYhXwiunMqqgyZyucaYsbL0IrjoGjaVhGilz+x8YB++kRfygSOIj1yOtWKPlx7NBp+9I1RQSgsd5A==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.16.0", + "@babel/parser": "^7.16.0", + "@babel/types": "^7.16.0" + } + } + } + }, + "@babel/helpers": { + "version": "7.16.3", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.16.3.tgz", + "integrity": "sha512-Xn8IhDlBPhvYTvgewPKawhADichOsbkZuzN7qz2BusOM0brChsyXMDJvldWaYMMUNiCQdQzNEioXTp3sC8Nt8w==", + "dev": true, + "requires": { + "@babel/template": "^7.16.0", + "@babel/traverse": "^7.16.3", + "@babel/types": "^7.16.0" + }, + "dependencies": { + "@babel/template": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.16.0.tgz", + "integrity": "sha512-MnZdpFD/ZdYhXwiunMqqgyZyucaYsbL0IrjoGjaVhGilz+x8YB++kRfygSOIj1yOtWKPlx7NBp+9I1RQSgsd5A==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.16.0", + "@babel/parser": "^7.16.0", + "@babel/types": "^7.16.0" + } + } + } + }, + "@babel/highlight": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.16.0.tgz", + "integrity": "sha512-t8MH41kUQylBtu2+4IQA3atqevA2lRgqA2wyVB/YiWmsDSuylZZuXOUy9ric30hfzauEFfdsuk/eXTRrGrfd0g==", + "dev": true, + "requires": { + "@babel/helper-validator-identifier": "^7.15.7", + "chalk": "^2.0.0", + "js-tokens": "^4.0.0" + } + }, + "@babel/parser": { + "version": "7.16.4", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.16.4.tgz", + "integrity": "sha512-6V0qdPUaiVHH3RtZeLIsc+6pDhbYzHR8ogA8w+f+Wc77DuXto19g2QUwveINoS34Uw+W8/hQDGJCx+i4n7xcng==", + "dev": true + }, + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.16.0.tgz", + "integrity": "sha512-4tcFwwicpWTrpl9qjf7UsoosaArgImF85AxqCRZlgc3IQDvkUHjJpruXAL58Wmj+T6fypWTC/BakfEkwIL/pwA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/helper-skip-transparent-expression-wrappers": "^7.16.0", + "@babel/plugin-proposal-optional-chaining": "^7.16.0" + } + }, + "@babel/plugin-proposal-async-generator-functions": { + "version": "7.15.8", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.15.8.tgz", + "integrity": "sha512-2Z5F2R2ibINTc63mY7FLqGfEbmofrHU9FitJW1Q7aPaKFhiPvSq6QEt/BoWN5oME3GVyjcRuNNSRbb9LC0CSWA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/helper-remap-async-to-generator": "^7.15.4", + "@babel/plugin-syntax-async-generators": "^7.8.4" + } + }, + "@babel/plugin-proposal-class-properties": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.16.0.tgz", + "integrity": "sha512-mCF3HcuZSY9Fcx56Lbn+CGdT44ioBMMvjNVldpKtj8tpniETdLjnxdHI1+sDWXIM1nNt+EanJOZ3IG9lzVjs7A==", + "dev": true, + "requires": { + "@babel/helper-create-class-features-plugin": "^7.16.0", + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-proposal-class-static-block": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.16.0.tgz", + "integrity": "sha512-mAy3sdcY9sKAkf3lQbDiv3olOfiLqI51c9DR9b19uMoR2Z6r5pmGl7dfNFqEvqOyqbf1ta4lknK4gc5PJn3mfA==", + "dev": true, + "requires": { + "@babel/helper-create-class-features-plugin": "^7.16.0", + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/plugin-syntax-class-static-block": "^7.14.5" + } + }, + "@babel/plugin-proposal-dynamic-import": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.16.0.tgz", + "integrity": "sha512-QGSA6ExWk95jFQgwz5GQ2Dr95cf7eI7TKutIXXTb7B1gCLTCz5hTjFTQGfLFBBiC5WSNi7udNwWsqbbMh1c4yQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/plugin-syntax-dynamic-import": "^7.8.3" + } + }, + "@babel/plugin-proposal-export-namespace-from": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.16.0.tgz", + "integrity": "sha512-CjI4nxM/D+5wCnhD11MHB1AwRSAYeDT+h8gCdcVJZ/OK7+wRzFsf7PFPWVpVpNRkHMmMkQWAHpTq+15IXQ1diA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3" + } + }, + "@babel/plugin-proposal-json-strings": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.16.0.tgz", + "integrity": "sha512-kouIPuiv8mSi5JkEhzApg5Gn6hFyKPnlkO0a9YSzqRurH8wYzSlf6RJdzluAsbqecdW5pBvDJDfyDIUR/vLxvg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/plugin-syntax-json-strings": "^7.8.3" + } + }, + "@babel/plugin-proposal-logical-assignment-operators": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.16.0.tgz", + "integrity": "sha512-pbW0fE30sVTYXXm9lpVQQ/Vc+iTeQKiXlaNRZPPN2A2VdlWyAtsUrsQ3xydSlDW00TFMK7a8m3cDTkBF5WnV3Q==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" + } + }, + "@babel/plugin-proposal-nullish-coalescing-operator": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.16.0.tgz", + "integrity": "sha512-3bnHA8CAFm7cG93v8loghDYyQ8r97Qydf63BeYiGgYbjKKB/XP53W15wfRC7dvKfoiJ34f6Rbyyx2btExc8XsQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" + } + }, + "@babel/plugin-proposal-numeric-separator": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.16.0.tgz", + "integrity": "sha512-FAhE2I6mjispy+vwwd6xWPyEx3NYFS13pikDBWUAFGZvq6POGs5eNchw8+1CYoEgBl9n11I3NkzD7ghn25PQ9Q==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/plugin-syntax-numeric-separator": "^7.10.4" + } + }, + "@babel/plugin-proposal-object-rest-spread": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.16.0.tgz", + "integrity": "sha512-LU/+jp89efe5HuWJLmMmFG0+xbz+I2rSI7iLc1AlaeSMDMOGzWlc5yJrMN1d04osXN4sSfpo4O+azkBNBes0jg==", + "dev": true, + "requires": { + "@babel/compat-data": "^7.16.0", + "@babel/helper-compilation-targets": "^7.16.0", + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-transform-parameters": "^7.16.0" + } + }, + "@babel/plugin-proposal-optional-catch-binding": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.16.0.tgz", + "integrity": "sha512-kicDo0A/5J0nrsCPbn89mTG3Bm4XgYi0CZtvex9Oyw7gGZE3HXGD0zpQNH+mo+tEfbo8wbmMvJftOwpmPy7aVw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" + } + }, + "@babel/plugin-proposal-optional-chaining": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.16.0.tgz", + "integrity": "sha512-Y4rFpkZODfHrVo70Uaj6cC1JJOt3Pp0MdWSwIKtb8z1/lsjl9AmnB7ErRFV+QNGIfcY1Eruc2UMx5KaRnXjMyg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/helper-skip-transparent-expression-wrappers": "^7.16.0", + "@babel/plugin-syntax-optional-chaining": "^7.8.3" + } + }, + "@babel/plugin-proposal-private-methods": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.16.0.tgz", + "integrity": "sha512-IvHmcTHDFztQGnn6aWq4t12QaBXTKr1whF/dgp9kz84X6GUcwq9utj7z2wFCUfeOup/QKnOlt2k0zxkGFx9ubg==", + "dev": true, + "requires": { + "@babel/helper-create-class-features-plugin": "^7.16.0", + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-proposal-private-property-in-object": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.16.0.tgz", + "integrity": "sha512-3jQUr/HBbMVZmi72LpjQwlZ55i1queL8KcDTQEkAHihttJnAPrcvG9ZNXIfsd2ugpizZo595egYV6xy+pv4Ofw==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.16.0", + "@babel/helper-create-class-features-plugin": "^7.16.0", + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5" + }, + "dependencies": { + "@babel/helper-annotate-as-pure": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.16.0.tgz", + "integrity": "sha512-ItmYF9vR4zA8cByDocY05o0LGUkp1zhbTQOH1NFyl5xXEqlTJQCEJjieriw+aFpxo16swMxUnUiKS7a/r4vtHg==", + "dev": true, + "requires": { + "@babel/types": "^7.16.0" + } + } + } + }, + "@babel/plugin-proposal-unicode-property-regex": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.16.0.tgz", + "integrity": "sha512-ti7IdM54NXv29cA4+bNNKEMS4jLMCbJgl+Drv+FgYy0erJLAxNAIXcNjNjrRZEcWq0xJHsNVwQezskMFpF8N9g==", + "dev": true, + "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.16.0", + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@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, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-class-properties": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", + "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.12.13" + } + }, + "@babel/plugin-syntax-class-static-block": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz", + "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-syntax-dynamic-import": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", + "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-export-namespace-from": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz", + "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.3" + } + }, + "@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, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@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, + "requires": { + "@babel/helper-plugin-utils": "^7.10.4" + } + }, + "@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, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@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, + "requires": { + "@babel/helper-plugin-utils": "^7.10.4" + } + }, + "@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, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@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, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@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, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-private-property-in-object": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz", + "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-syntax-top-level-await": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", + "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-transform-arrow-functions": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.16.0.tgz", + "integrity": "sha512-vIFb5250Rbh7roWARvCLvIJ/PtAU5Lhv7BtZ1u24COwpI9Ypjsh+bZcKk6rlIyalK+r0jOc1XQ8I4ovNxNrWrA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-transform-async-to-generator": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.14.5.tgz", + "integrity": "sha512-szkbzQ0mNk0rpu76fzDdqSyPu0MuvpXgC+6rz5rpMb5OIRxdmHfQxrktL8CYolL2d8luMCZTR0DpIMIdL27IjA==", + "dev": true, + "requires": { + "@babel/helper-module-imports": "^7.14.5", + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/helper-remap-async-to-generator": "^7.14.5" + } + }, + "@babel/plugin-transform-block-scoped-functions": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.16.0.tgz", + "integrity": "sha512-V14As3haUOP4ZWrLJ3VVx5rCnrYhMSHN/jX7z6FAt5hjRkLsb0snPCmJwSOML5oxkKO4FNoNv7V5hw/y2bjuvg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-transform-block-scoping": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.16.0.tgz", + "integrity": "sha512-27n3l67/R3UrXfizlvHGuTwsRIFyce3D/6a37GRxn28iyTPvNXaW4XvznexRh1zUNLPjbLL22Id0XQElV94ruw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-transform-classes": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.16.0.tgz", + "integrity": "sha512-HUxMvy6GtAdd+GKBNYDWCIA776byUQH8zjnfjxwT1P1ARv/wFu8eBDpmXQcLS/IwRtrxIReGiplOwMeyO7nsDQ==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.16.0", + "@babel/helper-function-name": "^7.16.0", + "@babel/helper-optimise-call-expression": "^7.16.0", + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/helper-replace-supers": "^7.16.0", + "@babel/helper-split-export-declaration": "^7.16.0", + "globals": "^11.1.0" + }, + "dependencies": { + "@babel/helper-annotate-as-pure": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.16.0.tgz", + "integrity": "sha512-ItmYF9vR4zA8cByDocY05o0LGUkp1zhbTQOH1NFyl5xXEqlTJQCEJjieriw+aFpxo16swMxUnUiKS7a/r4vtHg==", + "dev": true, + "requires": { + "@babel/types": "^7.16.0" + } + } + } + }, + "@babel/plugin-transform-computed-properties": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.16.0.tgz", + "integrity": "sha512-63l1dRXday6S8V3WFY5mXJwcRAnPYxvFfTlt67bwV1rTyVTM5zrp0DBBb13Kl7+ehkCVwIZPumPpFP/4u70+Tw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-transform-destructuring": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.16.0.tgz", + "integrity": "sha512-Q7tBUwjxLTsHEoqktemHBMtb3NYwyJPTJdM+wDwb0g8PZ3kQUIzNvwD5lPaqW/p54TXBc/MXZu9Jr7tbUEUM8Q==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-transform-dotall-regex": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.16.0.tgz", + "integrity": "sha512-FXlDZfQeLILfJlC6I1qyEwcHK5UpRCFkaoVyA1nk9A1L1Yu583YO4un2KsLBsu3IJb4CUbctZks8tD9xPQubLw==", + "dev": true, + "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.16.0", + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-transform-duplicate-keys": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.16.0.tgz", + "integrity": "sha512-LIe2kcHKAZOJDNxujvmp6z3mfN6V9lJxubU4fJIGoQCkKe3Ec2OcbdlYP+vW++4MpxwG0d1wSDOJtQW5kLnkZQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-transform-exponentiation-operator": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.16.0.tgz", + "integrity": "sha512-OwYEvzFI38hXklsrbNivzpO3fh87skzx8Pnqi4LoSYeav0xHlueSoCJrSgTPfnbyzopo5b3YVAJkFIcUpK2wsw==", + "dev": true, + "requires": { + "@babel/helper-builder-binary-assignment-operator-visitor": "^7.16.0", + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-transform-for-of": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.16.0.tgz", + "integrity": "sha512-5QKUw2kO+GVmKr2wMYSATCTTnHyscl6sxFRAY+rvN7h7WB0lcG0o4NoV6ZQU32OZGVsYUsfLGgPQpDFdkfjlJQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-transform-function-name": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.16.0.tgz", + "integrity": "sha512-lBzMle9jcOXtSOXUpc7tvvTpENu/NuekNJVova5lCCWCV9/U1ho2HH2y0p6mBg8fPm/syEAbfaaemYGOHCY3mg==", + "dev": true, + "requires": { + "@babel/helper-function-name": "^7.16.0", + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-transform-literals": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.16.0.tgz", + "integrity": "sha512-gQDlsSF1iv9RU04clgXqRjrPyyoJMTclFt3K1cjLmTKikc0s/6vE3hlDeEVC71wLTRu72Fq7650kABrdTc2wMQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-transform-member-expression-literals": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.16.0.tgz", + "integrity": "sha512-WRpw5HL4Jhnxw8QARzRvwojp9MIE7Tdk3ez6vRyUk1MwgjJN0aNpRoXainLR5SgxmoXx/vsXGZ6OthP6t/RbUg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-transform-modules-amd": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.16.0.tgz", + "integrity": "sha512-rWFhWbCJ9Wdmzln1NmSCqn7P0RAD+ogXG/bd9Kg5c7PKWkJtkiXmYsMBeXjDlzHpVTJ4I/hnjs45zX4dEv81xw==", + "dev": true, + "requires": { + "@babel/helper-module-transforms": "^7.16.0", + "@babel/helper-plugin-utils": "^7.14.5", + "babel-plugin-dynamic-import-node": "^2.3.3" + } + }, + "@babel/plugin-transform-modules-commonjs": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.16.0.tgz", + "integrity": "sha512-Dzi+NWqyEotgzk/sb7kgQPJQf7AJkQBWsVp1N6JWc1lBVo0vkElUnGdr1PzUBmfsCCN5OOFya3RtpeHk15oLKQ==", + "dev": true, + "requires": { + "@babel/helper-module-transforms": "^7.16.0", + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/helper-simple-access": "^7.16.0", + "babel-plugin-dynamic-import-node": "^2.3.3" + } + }, + "@babel/plugin-transform-modules-systemjs": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.16.0.tgz", + "integrity": "sha512-yuGBaHS3lF1m/5R+6fjIke64ii5luRUg97N2wr+z1sF0V+sNSXPxXDdEEL/iYLszsN5VKxVB1IPfEqhzVpiqvg==", + "dev": true, + "requires": { + "@babel/helper-hoist-variables": "^7.16.0", + "@babel/helper-module-transforms": "^7.16.0", + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/helper-validator-identifier": "^7.15.7", + "babel-plugin-dynamic-import-node": "^2.3.3" + } + }, + "@babel/plugin-transform-modules-umd": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.16.0.tgz", + "integrity": "sha512-nx4f6no57himWiHhxDM5pjwhae5vLpTK2zCnDH8+wNLJy0TVER/LJRHl2bkt6w9Aad2sPD5iNNoUpY3X9sTGDg==", + "dev": true, + "requires": { + "@babel/helper-module-transforms": "^7.16.0", + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-transform-named-capturing-groups-regex": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.16.0.tgz", + "integrity": "sha512-LogN88uO+7EhxWc8WZuQ8vxdSyVGxhkh8WTC3tzlT8LccMuQdA81e9SGV6zY7kY2LjDhhDOFdQVxdGwPyBCnvg==", + "dev": true, + "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.16.0" + } + }, + "@babel/plugin-transform-new-target": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.16.0.tgz", + "integrity": "sha512-fhjrDEYv2DBsGN/P6rlqakwRwIp7rBGLPbrKxwh7oVt5NNkIhZVOY2GRV+ULLsQri1bDqwDWnU3vhlmx5B2aCw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-transform-object-super": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.16.0.tgz", + "integrity": "sha512-fds+puedQHn4cPLshoHcR1DTMN0q1V9ou0mUjm8whx9pGcNvDrVVrgw+KJzzCaiTdaYhldtrUps8DWVMgrSEyg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/helper-replace-supers": "^7.16.0" + } + }, + "@babel/plugin-transform-parameters": { + "version": "7.16.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.16.3.tgz", + "integrity": "sha512-3MaDpJrOXT1MZ/WCmkOFo7EtmVVC8H4EUZVrHvFOsmwkk4lOjQj8rzv8JKUZV4YoQKeoIgk07GO+acPU9IMu/w==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-transform-property-literals": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.16.0.tgz", + "integrity": "sha512-XLldD4V8+pOqX2hwfWhgwXzGdnDOThxaNTgqagOcpBgIxbUvpgU2FMvo5E1RyHbk756WYgdbS0T8y0Cj9FKkWQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-transform-regenerator": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.16.0.tgz", + "integrity": "sha512-JAvGxgKuwS2PihiSFaDrp94XOzzTUeDeOQlcKzVAyaPap7BnZXK/lvMDiubkPTdotPKOIZq9xWXWnggUMYiExg==", + "dev": true, + "requires": { + "regenerator-transform": "^0.14.2" + } + }, + "@babel/plugin-transform-reserved-words": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.16.0.tgz", + "integrity": "sha512-Dgs8NNCehHSvXdhEhln8u/TtJxfVwGYCgP2OOr5Z3Ar+B+zXicEOKNTyc+eca2cuEOMtjW6m9P9ijOt8QdqWkg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-transform-runtime": { + "version": "7.15.8", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.15.8.tgz", + "integrity": "sha512-+6zsde91jMzzvkzuEA3k63zCw+tm/GvuuabkpisgbDMTPQsIMHllE3XczJFFtEHLjjhKQFZmGQVRdELetlWpVw==", + "dev": true, + "requires": { + "@babel/helper-module-imports": "^7.15.4", + "@babel/helper-plugin-utils": "^7.14.5", + "babel-plugin-polyfill-corejs2": "^0.2.2", + "babel-plugin-polyfill-corejs3": "^0.2.5", + "babel-plugin-polyfill-regenerator": "^0.2.2", + "semver": "^6.3.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, + "@babel/plugin-transform-shorthand-properties": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.16.0.tgz", + "integrity": "sha512-iVb1mTcD8fuhSv3k99+5tlXu5N0v8/DPm2mO3WACLG6al1CGZH7v09HJyUb1TtYl/Z+KrM6pHSIJdZxP5A+xow==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-transform-spread": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.16.0.tgz", + "integrity": "sha512-Ao4MSYRaLAQczZVp9/7E7QHsCuK92yHRrmVNRe/SlEJjhzivq0BSn8mEraimL8wizHZ3fuaHxKH0iwzI13GyGg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/helper-skip-transparent-expression-wrappers": "^7.16.0" + } + }, + "@babel/plugin-transform-sticky-regex": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.16.0.tgz", + "integrity": "sha512-/ntT2NljR9foobKk4E/YyOSwcGUXtYWv5tinMK/3RkypyNBNdhHUaq6Orw5DWq9ZcNlS03BIlEALFeQgeVAo4Q==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-transform-template-literals": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.16.0.tgz", + "integrity": "sha512-Rd4Ic89hA/f7xUSJQk5PnC+4so50vBoBfxjdQAdvngwidM8jYIBVxBZ/sARxD4e0yMXRbJVDrYf7dyRtIIKT6Q==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-transform-typeof-symbol": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.16.0.tgz", + "integrity": "sha512-++V2L8Bdf4vcaHi2raILnptTBjGEFxn5315YU+e8+EqXIucA+q349qWngCLpUYqqv233suJ6NOienIVUpS9cqg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-transform-unicode-escapes": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.16.0.tgz", + "integrity": "sha512-VFi4dhgJM7Bpk8lRc5CMaRGlKZ29W9C3geZjt9beuzSUrlJxsNwX7ReLwaL6WEvsOf2EQkyIJEPtF8EXjB/g2A==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-transform-unicode-regex": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.16.0.tgz", + "integrity": "sha512-jHLK4LxhHjvCeZDWyA9c+P9XH1sOxRd1RO9xMtDVRAOND/PczPqizEtVdx4TQF/wyPaewqpT+tgQFYMnN/P94A==", + "dev": true, + "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.16.0", + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/preset-env": { + "version": "7.15.8", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.15.8.tgz", + "integrity": "sha512-rCC0wH8husJgY4FPbHsiYyiLxSY8oMDJH7Rl6RQMknbN9oDDHhM9RDFvnGM2MgkbUJzSQB4gtuwygY5mCqGSsA==", + "dev": true, + "requires": { + "@babel/compat-data": "^7.15.0", + "@babel/helper-compilation-targets": "^7.15.4", + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/helper-validator-option": "^7.14.5", + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.15.4", + "@babel/plugin-proposal-async-generator-functions": "^7.15.8", + "@babel/plugin-proposal-class-properties": "^7.14.5", + "@babel/plugin-proposal-class-static-block": "^7.15.4", + "@babel/plugin-proposal-dynamic-import": "^7.14.5", + "@babel/plugin-proposal-export-namespace-from": "^7.14.5", + "@babel/plugin-proposal-json-strings": "^7.14.5", + "@babel/plugin-proposal-logical-assignment-operators": "^7.14.5", + "@babel/plugin-proposal-nullish-coalescing-operator": "^7.14.5", + "@babel/plugin-proposal-numeric-separator": "^7.14.5", + "@babel/plugin-proposal-object-rest-spread": "^7.15.6", + "@babel/plugin-proposal-optional-catch-binding": "^7.14.5", + "@babel/plugin-proposal-optional-chaining": "^7.14.5", + "@babel/plugin-proposal-private-methods": "^7.14.5", + "@babel/plugin-proposal-private-property-in-object": "^7.15.4", + "@babel/plugin-proposal-unicode-property-regex": "^7.14.5", + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-class-properties": "^7.12.13", + "@babel/plugin-syntax-class-static-block": "^7.14.5", + "@babel/plugin-syntax-dynamic-import": "^7.8.3", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.10.4", + "@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-private-property-in-object": "^7.14.5", + "@babel/plugin-syntax-top-level-await": "^7.14.5", + "@babel/plugin-transform-arrow-functions": "^7.14.5", + "@babel/plugin-transform-async-to-generator": "^7.14.5", + "@babel/plugin-transform-block-scoped-functions": "^7.14.5", + "@babel/plugin-transform-block-scoping": "^7.15.3", + "@babel/plugin-transform-classes": "^7.15.4", + "@babel/plugin-transform-computed-properties": "^7.14.5", + "@babel/plugin-transform-destructuring": "^7.14.7", + "@babel/plugin-transform-dotall-regex": "^7.14.5", + "@babel/plugin-transform-duplicate-keys": "^7.14.5", + "@babel/plugin-transform-exponentiation-operator": "^7.14.5", + "@babel/plugin-transform-for-of": "^7.15.4", + "@babel/plugin-transform-function-name": "^7.14.5", + "@babel/plugin-transform-literals": "^7.14.5", + "@babel/plugin-transform-member-expression-literals": "^7.14.5", + "@babel/plugin-transform-modules-amd": "^7.14.5", + "@babel/plugin-transform-modules-commonjs": "^7.15.4", + "@babel/plugin-transform-modules-systemjs": "^7.15.4", + "@babel/plugin-transform-modules-umd": "^7.14.5", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.14.9", + "@babel/plugin-transform-new-target": "^7.14.5", + "@babel/plugin-transform-object-super": "^7.14.5", + "@babel/plugin-transform-parameters": "^7.15.4", + "@babel/plugin-transform-property-literals": "^7.14.5", + "@babel/plugin-transform-regenerator": "^7.14.5", + "@babel/plugin-transform-reserved-words": "^7.14.5", + "@babel/plugin-transform-shorthand-properties": "^7.14.5", + "@babel/plugin-transform-spread": "^7.15.8", + "@babel/plugin-transform-sticky-regex": "^7.14.5", + "@babel/plugin-transform-template-literals": "^7.14.5", + "@babel/plugin-transform-typeof-symbol": "^7.14.5", + "@babel/plugin-transform-unicode-escapes": "^7.14.5", + "@babel/plugin-transform-unicode-regex": "^7.14.5", + "@babel/preset-modules": "^0.1.4", + "@babel/types": "^7.15.6", + "babel-plugin-polyfill-corejs2": "^0.2.2", + "babel-plugin-polyfill-corejs3": "^0.2.5", + "babel-plugin-polyfill-regenerator": "^0.2.2", + "core-js-compat": "^3.16.0", + "semver": "^6.3.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, + "@babel/preset-modules": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.5.tgz", + "integrity": "sha512-A57th6YRG7oR3cq/yt/Y84MvGgE0eJG2F1JLhKuyG+jFxEgrd/HAMJatiFtmOiZurz+0DkrvbheCLaV5f2JfjA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/plugin-proposal-unicode-property-regex": "^7.4.4", + "@babel/plugin-transform-dotall-regex": "^7.4.4", + "@babel/types": "^7.4.4", + "esutils": "^2.0.2" + } + }, + "@babel/runtime": { + "version": "7.15.4", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.15.4.tgz", + "integrity": "sha512-99catp6bHCaxr4sJ/DbTGgHS4+Rs2RVd2g7iOap6SLGPDknRK9ztKNsE/Fg6QhSeh1FGE5f6gHGQmvvn3I3xhw==", + "dev": true, + "requires": { + "regenerator-runtime": "^0.13.4" + } + }, + "@babel/template": { + "version": "7.15.4", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.15.4.tgz", + "integrity": "sha512-UgBAfEa1oGuYgDIPM2G+aHa4Nlo9Lh6mGD2bDBGMTbYnc38vulXPuC1MGjYILIEmlwl6Rd+BPR9ee3gm20CBtg==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.14.5", + "@babel/parser": "^7.15.4", + "@babel/types": "^7.15.4" + } + }, + "@babel/traverse": { + "version": "7.16.3", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.16.3.tgz", + "integrity": "sha512-eolumr1vVMjqevCpwVO99yN/LoGL0EyHiLO5I043aYQvwOJ9eR5UsZSClHVCzfhBduMAsSzgA/6AyqPjNayJag==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.16.0", + "@babel/generator": "^7.16.0", + "@babel/helper-function-name": "^7.16.0", + "@babel/helper-hoist-variables": "^7.16.0", + "@babel/helper-split-export-declaration": "^7.16.0", + "@babel/parser": "^7.16.3", + "@babel/types": "^7.16.0", + "debug": "^4.1.0", + "globals": "^11.1.0" + }, + "dependencies": { + "@babel/generator": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.16.0.tgz", + "integrity": "sha512-RR8hUCfRQn9j9RPKEVXo9LiwoxLPYn6hNZlvUOR8tSnaxlD0p0+la00ZP9/SnRt6HchKr+X0fO2r8vrETiJGew==", + "dev": true, + "requires": { + "@babel/types": "^7.16.0", + "jsesc": "^2.5.1", + "source-map": "^0.5.0" + } + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + } + } + }, + "@babel/types": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.16.0.tgz", + "integrity": "sha512-PJgg/k3SdLsGb3hhisFvtLOw5ts113klrpLuIPtCJIU+BB24fqq6lf8RWqKJEjzqXR9AEH1rIb5XTqwBHB+kQg==", + "dev": true, + "requires": { + "@babel/helper-validator-identifier": "^7.15.7", + "to-fast-properties": "^2.0.0" + } + }, + "@csstools/convert-colors": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@csstools/convert-colors/-/convert-colors-1.4.0.tgz", + "integrity": "sha512-5a6wqoJV/xEdbRNKVo6I4hO3VjyDq//8q2f9I6PBAvMesJHFauXDorcNCsr9RzvsZnaWi5NYCcfyqP1QeFHFbw==", + "dev": true + }, + "@discoveryjs/json-ext": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.5.tgz", + "integrity": "sha512-6nFkfkmSeV/rqSaS4oWHgmpnYw194f6hmWF5is6b0J1naJZoiD0NTc9AiUwPHvWsowkjuHErCZT1wa0jg+BLIA==", + "dev": true + }, + "@gar/promisify": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@gar/promisify/-/promisify-1.1.2.tgz", + "integrity": "sha512-82cpyJyKRoQoRi+14ibCeGPu0CwypgtBAdBhq1WfvagpCZNKqwXbKwXllYSMG91DhmG4jt9gN8eP6lGOtozuaw==", + "dev": true + }, + "@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, + "requires": { + "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" + } + }, + "@istanbuljs/schema": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", + "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", + "dev": true + }, + "@jridgewell/resolve-uri": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-1.0.0.tgz", + "integrity": "sha512-9oLAnygRMi8Q5QkYEU4XWK04B+nuoXoxjRvRxgjuChkLZFBja0YPSgdZ7dZtwhncLBcQe/I/E+fLuk5qxcYVJA==", + "dev": true + }, + "@ngtools/webpack": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@ngtools/webpack/-/webpack-13.0.2.tgz", + "integrity": "sha512-eCtPydszVvKtkvL4HeDMvWC3IqTF/xZF6CTumMweRNInc6mTZiwwLwLDk8pg3xVp3ttZUOwV17BUnEs4/Q4qMA==", + "dev": true, + "requires": {} + }, + "@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "dev": true, + "requires": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + } + }, + "@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "dev": true + }, + "@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "dev": true, + "requires": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + } + }, + "@npmcli/fs": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-1.0.0.tgz", + "integrity": "sha512-8ltnOpRR/oJbOp8vaGUnipOi3bqkcW+sLHFlyXIr08OGHmVJLB1Hn7QtGXbYcpVtH1gAYZTlmDXtE4YV0+AMMQ==", + "dev": true, + "requires": { + "@gar/promisify": "^1.0.1", + "semver": "^7.3.5" + } + }, + "@npmcli/git": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-2.1.0.tgz", + "integrity": "sha512-/hBFX/QG1b+N7PZBFs0bi+evgRZcK9nWBxQKZkGoXUT5hJSwl5c4d7y8/hm+NQZRPhQ67RzFaj5UM9YeyKoryw==", + "dev": true, + "requires": { + "@npmcli/promise-spawn": "^1.3.2", + "lru-cache": "^6.0.0", + "mkdirp": "^1.0.4", + "npm-pick-manifest": "^6.1.1", + "promise-inflight": "^1.0.1", + "promise-retry": "^2.0.1", + "semver": "^7.3.5", + "which": "^2.0.2" + }, + "dependencies": { + "which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "requires": { + "isexe": "^2.0.0" + } + } + } + }, + "@npmcli/installed-package-contents": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/@npmcli/installed-package-contents/-/installed-package-contents-1.0.7.tgz", + "integrity": "sha512-9rufe0wnJusCQoLpV9ZPKIVP55itrM5BxOXs10DmdbRfgWtHy1LDyskbwRnBghuB0PrF7pNPOqREVtpz4HqzKw==", + "dev": true, + "requires": { + "npm-bundled": "^1.1.1", + "npm-normalize-package-bin": "^1.0.1" + } + }, + "@npmcli/move-file": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@npmcli/move-file/-/move-file-1.1.2.tgz", + "integrity": "sha512-1SUf/Cg2GzGDyaf15aR9St9TWlb+XvbZXWpDx8YKs7MLzMH/BCeopv+y9vzrzgkfykCGuWOlSu3mZhj2+FQcrg==", + "dev": true, + "requires": { + "mkdirp": "^1.0.4", + "rimraf": "^3.0.2" + } + }, + "@npmcli/node-gyp": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@npmcli/node-gyp/-/node-gyp-1.0.3.tgz", + "integrity": "sha512-fnkhw+fmX65kiLqk6E3BFLXNC26rUhK90zVwe2yncPliVT/Qos3xjhTLE59Df8KnPlcwIERXKVlU1bXoUQ+liA==", + "dev": true + }, + "@npmcli/promise-spawn": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-1.3.2.tgz", + "integrity": "sha512-QyAGYo/Fbj4MXeGdJcFzZ+FkDkomfRBrPM+9QYJSg+PxgAUL+LU3FneQk37rKR2/zjqkCV1BLHccX98wRXG3Sg==", + "dev": true, + "requires": { + "infer-owner": "^1.0.4" + } + }, + "@npmcli/run-script": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-2.0.0.tgz", + "integrity": "sha512-fSan/Pu11xS/TdaTpTB0MRn9guwGU8dye+x56mEVgBEd/QsybBbYcAL0phPXi8SGWFEChkQd6M9qL4y6VOpFig==", + "dev": true, + "requires": { + "@npmcli/node-gyp": "^1.0.2", + "@npmcli/promise-spawn": "^1.3.2", + "node-gyp": "^8.2.0", + "read-package-json-fast": "^2.0.1" + } + }, + "@schematics/angular": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@schematics/angular/-/angular-13.0.2.tgz", + "integrity": "sha512-qdzgd/CT6Y3U/98f/n66pnIMY5RuLW7WAmz+KQiuqaLgYWZNUbqYtAoxFI5ABTSKQoZSjjfescWL2R3XN9g3Xw==", + "dev": true, + "requires": { + "@angular-devkit/core": "13.0.2", + "@angular-devkit/schematics": "13.0.2", + "jsonc-parser": "3.0.0" + } + }, + "@supercharge/request-ip": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@supercharge/request-ip/-/request-ip-1.1.2.tgz", + "integrity": "sha512-mtryG/uiSIVT0ga8A/F9hNEuBSbDxW7/m9PEtxIHqdkE/vr766m17mtLPhrXA4q4T+Qw44+33mg3Rtkl7o+OvQ==" + }, + "@tootallnate/once": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz", + "integrity": "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==", + "dev": true + }, + "@types/component-emitter": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/@types/component-emitter/-/component-emitter-1.2.11.tgz", + "integrity": "sha512-SRXjM+tfsSlA9VuG8hGO2nft2p8zjXCK1VcC6N4NXbBbYbSia9kzCChYQajIjzIqOOOuh5Ock6MmV2oux4jDZQ==", + "dev": true + }, + "@types/cookie": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/@types/cookie/-/cookie-0.4.1.tgz", + "integrity": "sha512-XW/Aa8APYr6jSVVA1y/DEIZX0/GMKLEVekNG727R8cs56ahETkRAy/3DR7+fJyh7oUgGwNQaRfXCun0+KbWY7Q==", + "dev": true + }, + "@types/cors": { + "version": "2.8.12", + "resolved": "https://registry.npmjs.org/@types/cors/-/cors-2.8.12.tgz", + "integrity": "sha512-vt+kDhq/M2ayberEtJcIN/hxXy1Pk+59g2FV/ZQceeaTyCtCucjL2Q7FXlFjtWn4n15KCr1NE2lNNFhp0lEThw==", + "dev": true + }, + "@types/eslint": { + "version": "7.29.0", + "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-7.29.0.tgz", + "integrity": "sha512-VNcvioYDH8/FxaeTKkM4/TiTwt6pBV9E3OfGmvaw8tPl0rrHCJ4Ll15HRT+pMiFAf/MLQvAzC+6RzUMEL9Ceng==", + "dev": true, + "requires": { + "@types/estree": "*", + "@types/json-schema": "*" + } + }, + "@types/eslint-scope": { + "version": "3.7.1", + "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.1.tgz", + "integrity": "sha512-SCFeogqiptms4Fg29WpOTk5nHIzfpKCemSN63ksBQYKTcXoJEmJagV+DhVmbapZzY4/5YaOV1nZwrsU79fFm1g==", + "dev": true, + "requires": { + "@types/eslint": "*", + "@types/estree": "*" + } + }, + "@types/estree": { + "version": "0.0.50", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.50.tgz", + "integrity": "sha512-C6N5s2ZFtuZRj54k2/zyRhNDjJwwcViAM3Nbm8zjBpbqAdZ00mr0CFxvSKeO8Y/e03WVFLpQMdHYVfUd6SB+Hw==", + "dev": true + }, + "@types/http-proxy": { + "version": "1.17.7", + "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.7.tgz", + "integrity": "sha512-9hdj6iXH64tHSLTY+Vt2eYOGzSogC+JQ2H7bdPWkuh7KXP5qLllWx++t+K9Wk556c3dkDdPws/SpMRi0sdCT1w==", + "dev": true, + "requires": { + "@types/node": "*" + } + }, + "@types/jasmine": { + "version": "3.8.2", + "resolved": "https://registry.npmjs.org/@types/jasmine/-/jasmine-3.8.2.tgz", + "integrity": "sha512-u5h7dqzy2XpXTzhOzSNQUQpKGFvROF8ElNX9P/TJvsHnTg/JvsAseVsGWQAQQldqanYaM+5kwxW909BBFAUYsg==", + "dev": true + }, + "@types/json-schema": { + "version": "7.0.9", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.9.tgz", + "integrity": "sha512-qcUXuemtEu+E5wZSJHNxUXeCZhAfXKQ41D+duX+VYPde7xyEVZci+/oXKJL13tnRs9lR2pr4fod59GT6/X1/yQ==", + "dev": true + }, + "@types/node": { + "version": "12.20.37", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.37.tgz", + "integrity": "sha512-i1KGxqcvJaLQali+WuypQnXwcplhtNtjs66eNsZpp2P2FL/trJJxx/VWsM0YCL2iMoIJrbXje48lvIQAQ4p2ZA==" + }, + "@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 + }, + "@types/retry": { + "version": "0.12.1", + "resolved": "https://registry.npmjs.org/@types/retry/-/retry-0.12.1.tgz", + "integrity": "sha512-xoDlM2S4ortawSWORYqsdU+2rxdh4LRW9ytc3zmT37RIKQh6IHyKwwtKhKis9ah8ol07DCkZxPt8BBvPjC6v4g==", + "dev": true + }, + "@types/urlsafe-base64": { + "version": "1.0.28", + "resolved": "https://registry.npmjs.org/@types/urlsafe-base64/-/urlsafe-base64-1.0.28.tgz", + "integrity": "sha1-LPIJhRjpjHMKfgDeeaRV4CaaP00=", + "dev": true, + "requires": { + "@types/node": "*" + } + }, + "@types/uuid": { + "version": "8.3.1", + "resolved": "https://registry.npmjs.org/@types/uuid/-/uuid-8.3.1.tgz", + "integrity": "sha512-Y2mHTRAbqfFkpjldbkHGY8JIzRN6XqYRliG8/24FcHm2D2PwW24fl5xMRTVGdrb7iMrwCaIEbLWerGIkXuFWVg==", + "dev": true + }, + "@types/webidl-conversions": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/@types/webidl-conversions/-/webidl-conversions-6.1.1.tgz", + "integrity": "sha512-XAahCdThVuCFDQLT7R7Pk/vqeObFNL3YqRyFZg+AqAP/W1/w3xHaIxuW7WszQqTbIBOPRcItYJIou3i/mppu3Q==" + }, + "@types/whatwg-url": { + "version": "8.2.1", + "resolved": "https://registry.npmjs.org/@types/whatwg-url/-/whatwg-url-8.2.1.tgz", + "integrity": "sha512-2YubE1sjj5ifxievI5Ge1sckb9k/Er66HyR2c+3+I6VDUUg1TLPdYYTEbQ+DjRkS4nTxMJhgWfSfMRD2sl2EYQ==", + "requires": { + "@types/node": "*", + "@types/webidl-conversions": "*" + } + }, + "@webassemblyjs/ast": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.1.tgz", + "integrity": "sha512-ukBh14qFLjxTQNTXocdyksN5QdM28S1CxHt2rdskFyL+xFV7VremuBLVbmCePj+URalXBENx/9Lm7lnhihtCSw==", + "dev": true, + "requires": { + "@webassemblyjs/helper-numbers": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1" + } + }, + "@webassemblyjs/floating-point-hex-parser": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.1.tgz", + "integrity": "sha512-iGRfyc5Bq+NnNuX8b5hwBrRjzf0ocrJPI6GWFodBFzmFnyvrQ83SHKhmilCU/8Jv67i4GJZBMhEzltxzcNagtQ==", + "dev": true + }, + "@webassemblyjs/helper-api-error": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.1.tgz", + "integrity": "sha512-RlhS8CBCXfRUR/cwo2ho9bkheSXG0+NwooXcc3PAILALf2QLdFyj7KGsKRbVc95hZnhnERon4kW/D3SZpp6Tcg==", + "dev": true + }, + "@webassemblyjs/helper-buffer": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.1.tgz", + "integrity": "sha512-gwikF65aDNeeXa8JxXa2BAk+REjSyhrNC9ZwdT0f8jc4dQQeDQ7G4m0f2QCLPJiMTTO6wfDmRmj/pW0PsUvIcA==", + "dev": true + }, + "@webassemblyjs/helper-numbers": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.1.tgz", + "integrity": "sha512-vDkbxiB8zfnPdNK9Rajcey5C0w+QJugEglN0of+kmO8l7lDb77AnlKYQF7aarZuCrv+l0UvqL+68gSDr3k9LPQ==", + "dev": true, + "requires": { + "@webassemblyjs/floating-point-hex-parser": "1.11.1", + "@webassemblyjs/helper-api-error": "1.11.1", + "@xtuc/long": "4.2.2" + } + }, + "@webassemblyjs/helper-wasm-bytecode": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.1.tgz", + "integrity": "sha512-PvpoOGiJwXeTrSf/qfudJhwlvDQxFgelbMqtq52WWiXC6Xgg1IREdngmPN3bs4RoO83PnL/nFrxucXj1+BX62Q==", + "dev": true + }, + "@webassemblyjs/helper-wasm-section": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.1.tgz", + "integrity": "sha512-10P9No29rYX1j7F3EVPX3JvGPQPae+AomuSTPiF9eBQeChHI6iqjMIwR9JmOJXwpnn/oVGDk7I5IlskuMwU/pg==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-buffer": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1", + "@webassemblyjs/wasm-gen": "1.11.1" + } + }, + "@webassemblyjs/ieee754": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.1.tgz", + "integrity": "sha512-hJ87QIPtAMKbFq6CGTkZYJivEwZDbQUgYd3qKSadTNOhVY7p+gfP6Sr0lLRVTaG1JjFj+r3YchoqRYxNH3M0GQ==", + "dev": true, + "requires": { + "@xtuc/ieee754": "^1.2.0" + } + }, + "@webassemblyjs/leb128": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.1.tgz", + "integrity": "sha512-BJ2P0hNZ0u+Th1YZXJpzW6miwqQUGcIHT1G/sf72gLVD9DZ5AdYTqPNbHZh6K1M5VmKvFXwGSWZADz+qBWxeRw==", + "dev": true, + "requires": { + "@xtuc/long": "4.2.2" + } + }, + "@webassemblyjs/utf8": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.1.tgz", + "integrity": "sha512-9kqcxAEdMhiwQkHpkNiorZzqpGrodQQ2IGrHHxCy+Ozng0ofyMA0lTqiLkVs1uzTRejX+/O0EOT7KxqVPuXosQ==", + "dev": true + }, + "@webassemblyjs/wasm-edit": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.1.tgz", + "integrity": "sha512-g+RsupUC1aTHfR8CDgnsVRVZFJqdkFHpsHMfJuWQzWU3tvnLC07UqHICfP+4XyL2tnr1amvl1Sdp06TnYCmVkA==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-buffer": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1", + "@webassemblyjs/helper-wasm-section": "1.11.1", + "@webassemblyjs/wasm-gen": "1.11.1", + "@webassemblyjs/wasm-opt": "1.11.1", + "@webassemblyjs/wasm-parser": "1.11.1", + "@webassemblyjs/wast-printer": "1.11.1" + } + }, + "@webassemblyjs/wasm-gen": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.1.tgz", + "integrity": "sha512-F7QqKXwwNlMmsulj6+O7r4mmtAlCWfO/0HdgOxSklZfQcDu0TpLiD1mRt/zF25Bk59FIjEuGAIyn5ei4yMfLhA==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1", + "@webassemblyjs/ieee754": "1.11.1", + "@webassemblyjs/leb128": "1.11.1", + "@webassemblyjs/utf8": "1.11.1" + } + }, + "@webassemblyjs/wasm-opt": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.1.tgz", + "integrity": "sha512-VqnkNqnZlU5EB64pp1l7hdm3hmQw7Vgqa0KF/KCNO9sIpI6Fk6brDEiX+iCOYrvMuBWDws0NkTOxYEb85XQHHw==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-buffer": "1.11.1", + "@webassemblyjs/wasm-gen": "1.11.1", + "@webassemblyjs/wasm-parser": "1.11.1" + } + }, + "@webassemblyjs/wasm-parser": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.1.tgz", + "integrity": "sha512-rrBujw+dJu32gYB7/Lup6UhdkPx9S9SnobZzRVL7VcBH9Bt9bCBLEuX/YXOOtBsOZ4NQrRykKhffRWHvigQvOA==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-api-error": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1", + "@webassemblyjs/ieee754": "1.11.1", + "@webassemblyjs/leb128": "1.11.1", + "@webassemblyjs/utf8": "1.11.1" + } + }, + "@webassemblyjs/wast-printer": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.11.1.tgz", + "integrity": "sha512-IQboUWM4eKzWW+N/jij2sRatKMh99QEelo3Eb2q0qXkvPRISAj8Qxtmw5itwqK+TTkBuUIE45AxYPToqPtL5gg==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.11.1", + "@xtuc/long": "4.2.2" + } + }, + "@xtuc/ieee754": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", + "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", + "dev": true + }, + "@xtuc/long": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", + "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", + "dev": true + }, + "@yarnpkg/lockfile": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz", + "integrity": "sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==", + "dev": true + }, + "abab": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.5.tgz", + "integrity": "sha512-9IK9EadsbHo6jLWIpxpR6pL0sazTXV6+SQv25ZB+F7Bj9mJNaOc4nCRabwd5M/JwmUa8idz6Eci6eKfJryPs6Q==", + "dev": true + }, + "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 + }, + "accepts": { + "version": "1.3.7", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.7.tgz", + "integrity": "sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA==", + "dev": true, + "requires": { + "mime-types": "~2.1.24", + "negotiator": "0.6.2" + } + }, + "acorn": { + "version": "8.5.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.5.0.tgz", + "integrity": "sha512-yXbYeFy+jUuYd3/CDcg2NkIYE991XYX/bje7LmjJigUciaeO1JR4XxXgCIV1/Zc/dRuFEyw1L0pbA+qynJkW5Q==", + "dev": true + }, + "acorn-import-assertions": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.8.0.tgz", + "integrity": "sha512-m7VZ3jwz4eK6A4Vtt8Ew1/mNbP24u0FhdyfA7fSvnJR6LMdfOYnmuIrrJAgrYfYJ10F/otaHTtrtrtmHdMNzEw==", + "dev": true, + "requires": {} + }, + "adjust-sourcemap-loader": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/adjust-sourcemap-loader/-/adjust-sourcemap-loader-4.0.0.tgz", + "integrity": "sha512-OXwN5b9pCUXNQHJpwwD2qP40byEmSgzj8B4ydSN0uMNYWiFmJ6x6KwUllMmfk8Rwu/HJDFR7U8ubsWBoN0Xp0A==", + "dev": true, + "requires": { + "loader-utils": "^2.0.0", + "regex-parser": "^2.2.11" + }, + "dependencies": { + "big.js": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", + "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", + "dev": true + }, + "loader-utils": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.2.tgz", + "integrity": "sha512-TM57VeHptv569d/GKh6TAYdzKblwDNiumOdkFnejjD0XwTH87K90w3O7AiJRqdQoXygvi1VQTJTLGhJl7WqA7A==", + "dev": true, + "requires": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^2.1.2" + } + } + } + }, + "agent-base": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", + "dev": true, + "requires": { + "debug": "4" + } + }, + "agentkeepalive": { + "version": "4.1.4", + "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.1.4.tgz", + "integrity": "sha512-+V/rGa3EuU74H6wR04plBb7Ks10FbtUQgRj/FQOG7uUIEuaINI+AiqJR1k6t3SVNs7o7ZjIdus6706qqzVq8jQ==", + "dev": true, + "requires": { + "debug": "^4.1.0", + "depd": "^1.1.2", + "humanize-ms": "^1.2.1" + } + }, + "aggregate-error": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "dev": true, + "requires": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + } + }, + "ajv": { + "version": "8.6.3", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.6.3.tgz", + "integrity": "sha512-SMJOdDP6LqTkD0Uq8qLi+gMwSt0imXLSV080qFVwJCpH9U6Mb+SUGHAXM0KNbcBPguytWyvFxcHgMLe2D2XSpw==", + "dev": true, + "requires": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + } + }, + "ajv-formats": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz", + "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==", + "dev": true, + "requires": { + "ajv": "^8.0.0" + } + }, + "angular-local-storage": { + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/angular-local-storage/-/angular-local-storage-0.7.1.tgz", + "integrity": "sha1-+9JzB2PCn6mvVyXgGGx4BiHozdI=" + }, + "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 + }, + "ansi-escapes": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", + "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", + "dev": true, + "requires": { + "type-fest": "^0.21.3" + } + }, + "ansi-html-community": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/ansi-html-community/-/ansi-html-community-0.0.8.tgz", + "integrity": "sha512-1APHAyr3+PCamwNw3bXCPp4HFLONZt/yIH0sZp0/469KWNTEy+qN5jQ3GVX6DMZ1UXAi34yVwtTeaG/HpBuuzw==", + "dev": true + }, + "ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true + }, + "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, + "requires": { + "color-convert": "^1.9.0" + } + }, + "anymatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", + "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", + "dev": true, + "requires": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + } + }, + "aproba": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", + "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", + "dev": true + }, + "are-we-there-yet": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.7.tgz", + "integrity": "sha512-nxwy40TuMiUGqMyRHgCSWZ9FM4VAoRP4xUYSTv5ImRog+h9yISPbVH7H8fASCIzYn9wlEv4zvFL7uKDMCFQm3g==", + "dev": true, + "requires": { + "delegates": "^1.0.0", + "readable-stream": "^2.0.6" + }, + "dependencies": { + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dev": true, + "requires": { + "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" + } + }, + "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, + "requires": { + "safe-buffer": "~5.1.0" + } + } + } + }, + "argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "requires": { + "sprintf-js": "~1.0.2" + } + }, + "array-flatten": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-2.1.2.tgz", + "integrity": "sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ==", + "dev": true + }, + "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 + }, + "async": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.2.tgz", + "integrity": "sha512-H0E+qZaDEfx/FY4t7iLRv1W2fFI6+pyCeTw1uN20AQPiwqwM6ojPxHxdLv4z8hi2DtnW9BOckSspLucW7pIE5g==" + }, + "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 + }, + "autoprefixer": { + "version": "9.8.8", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-9.8.8.tgz", + "integrity": "sha512-eM9d/swFopRt5gdJ7jrpCwgvEMIayITpojhkkSMRsFHYuH5bkSQ4p/9qTEHtmNudUZh22Tehu7I6CxAW0IXTKA==", + "dev": true, + "requires": { + "browserslist": "^4.12.0", + "caniuse-lite": "^1.0.30001109", + "normalize-range": "^0.1.2", + "num2fraction": "^1.2.2", + "picocolors": "^0.2.1", + "postcss": "^7.0.32", + "postcss-value-parser": "^4.1.0" + }, + "dependencies": { + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + }, + "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 + } + } + }, + "axios": { + "version": "0.21.4", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.4.tgz", + "integrity": "sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg==", + "requires": { + "follow-redirects": "^1.14.0" + } + }, + "babel-loader": { + "version": "8.2.3", + "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.2.3.tgz", + "integrity": "sha512-n4Zeta8NC3QAsuyiizu0GkmRcQ6clkV9WFUnUf1iXP//IeSKbWjofW3UHyZVwlOB4y039YQKefawyTn64Zwbuw==", + "dev": true, + "requires": { + "find-cache-dir": "^3.3.1", + "loader-utils": "^1.4.0", + "make-dir": "^3.1.0", + "schema-utils": "^2.6.5" + }, + "dependencies": { + "big.js": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", + "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", + "dev": true + }, + "json5": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", + "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", + "dev": true, + "requires": { + "minimist": "^1.2.0" + } + }, + "loader-utils": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz", + "integrity": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==", + "dev": true, + "requires": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^1.0.1" + } + } + } + }, + "babel-plugin-dynamic-import-node": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz", + "integrity": "sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ==", + "dev": true, + "requires": { + "object.assign": "^4.1.0" + } + }, + "babel-plugin-istanbul": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", + "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0", + "@istanbuljs/load-nyc-config": "^1.0.0", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-instrument": "^5.0.4", + "test-exclude": "^6.0.0" + } + }, + "babel-plugin-polyfill-corejs2": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.2.3.tgz", + "integrity": "sha512-NDZ0auNRzmAfE1oDDPW2JhzIMXUk+FFe2ICejmt5T4ocKgiQx3e0VCRx9NCAidcMtL2RUZaWtXnmjTCkx0tcbA==", + "dev": true, + "requires": { + "@babel/compat-data": "^7.13.11", + "@babel/helper-define-polyfill-provider": "^0.2.4", + "semver": "^6.1.1" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, + "babel-plugin-polyfill-corejs3": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.2.5.tgz", + "integrity": "sha512-ninF5MQNwAX9Z7c9ED+H2pGt1mXdP4TqzlHKyPIYmJIYz0N+++uwdM7RnJukklhzJ54Q84vA4ZJkgs7lu5vqcw==", + "dev": true, + "requires": { + "@babel/helper-define-polyfill-provider": "^0.2.2", + "core-js-compat": "^3.16.2" + } + }, + "babel-plugin-polyfill-regenerator": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.2.3.tgz", + "integrity": "sha512-JVE78oRZPKFIeUqFGrSORNzQnrDwZR16oiWeGM8ZyjBn2XAT5OjP+wXx5ESuo33nUsFUEJYjtklnsKbxW5L+7g==", + "dev": true, + "requires": { + "@babel/helper-define-polyfill-provider": "^0.2.4" + } + }, + "balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true + }, + "base64-arraybuffer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-1.0.1.tgz", + "integrity": "sha512-vFIUq7FdLtjZMhATwDul5RZWv2jpXQ09Pd6jcVEOvIsqCWTRFD/ONHNfyOS8dA/Ippi5dsIgpyKWKZaAKZltbA==", + "dev": true + }, + "base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==" + }, + "base64id": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/base64id/-/base64id-2.0.0.tgz", + "integrity": "sha512-lGe34o6EHj9y3Kts9R4ZYs/Gr+6N7MCaMlIFA3F1R2O5/m7K06AxfSeO5530PEERE6/WyEg3lsuyw4GHlPZHog==", + "dev": true + }, + "basic-auth": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/basic-auth/-/basic-auth-2.0.1.tgz", + "integrity": "sha512-NF+epuEdnUYVlGuhaxbbq+dvJttwLnGY+YixlXlME5KpQ5W3CnXA5cVTneY3SPbPDRkcjMbifrwmFYcClgOZeg==", + "requires": { + "safe-buffer": "5.1.2" + } + }, + "batch": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", + "integrity": "sha1-3DQxT05nkxgJP8dgJyUl+UvyXBY=", + "dev": true + }, + "big.js": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/big.js/-/big.js-6.1.1.tgz", + "integrity": "sha512-1vObw81a8ylZO5ePrtMay0n018TcftpTA5HFKDaSuiUDBo8biRBtjIobw60OpwuvrGk+FsxKamqN4cnmj/eXdg==", + "dev": true + }, + "binary-extensions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "dev": true + }, + "bl": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", + "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", + "dev": true, + "requires": { + "buffer": "^5.5.0", + "inherits": "^2.0.4", + "readable-stream": "^3.4.0" + } + }, + "body-parser": { + "version": "1.19.0", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.19.0.tgz", + "integrity": "sha512-dhEPs72UPbDnAQJ9ZKMNTP6ptJaionhP5cBb541nXPlW60Jepo9RV/a4fX4XWW9CuFNK22krhrj1+rgzifNCsw==", + "dev": true, + "requires": { + "bytes": "3.1.0", + "content-type": "~1.0.4", + "debug": "2.6.9", + "depd": "~1.1.2", + "http-errors": "1.7.2", + "iconv-lite": "0.4.24", + "on-finished": "~2.3.0", + "qs": "6.7.0", + "raw-body": "2.4.0", + "type-is": "~1.6.17" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + } + } + }, + "bonjour": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/bonjour/-/bonjour-3.5.0.tgz", + "integrity": "sha1-jokKGD2O6aI5OzhExpGkK897yfU=", + "dev": true, + "requires": { + "array-flatten": "^2.1.0", + "deep-equal": "^1.0.1", + "dns-equal": "^1.0.0", + "dns-txt": "^2.0.2", + "multicast-dns": "^6.0.1", + "multicast-dns-service-types": "^1.1.0" + } + }, + "boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=", + "dev": true + }, + "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, + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "requires": { + "fill-range": "^7.0.1" + } + }, + "browserslist": { + "version": "4.18.1", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.18.1.tgz", + "integrity": "sha512-8ScCzdpPwR2wQh8IT82CA2VgDwjHyqMovPBZSNH54+tm4Jk2pCuv90gmAdH6J84OCRWi0b4gMe6O6XPXuJnjgQ==", + "dev": true, + "requires": { + "caniuse-lite": "^1.0.30001280", + "electron-to-chromium": "^1.3.896", + "escalade": "^3.1.1", + "node-releases": "^2.0.1", + "picocolors": "^1.0.0" + } + }, + "bson": { + "version": "4.5.4", + "resolved": "https://registry.npmjs.org/bson/-/bson-4.5.4.tgz", + "integrity": "sha512-wIt0bPACnx8Ju9r6IsS2wVtGDHBr9Dxb+U29A1YED2pu8XOhS8aKjOnLZ8sxyXkPwanoK7iWWVhS1+coxde6xA==", + "requires": { + "buffer": "^5.6.0" + } + }, + "buffer": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "requires": { + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" + } + }, + "buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", + "dev": true + }, + "buffer-indexof": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/buffer-indexof/-/buffer-indexof-1.1.1.tgz", + "integrity": "sha512-4/rOEg86jivtPTeOUUT61jJO1Ya1TrR/OkqCSZDyq84WJh3LuuiphBYJN+fm5xufIk4XAFcEwte/8WzC8If/1g==", + "dev": true + }, + "builtins": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/builtins/-/builtins-1.0.3.tgz", + "integrity": "sha1-y5T662HIaWRR2zZTThQi+U8K7og=", + "dev": true + }, + "bytes": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz", + "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==", + "dev": true + }, + "cacache": { + "version": "15.3.0", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-15.3.0.tgz", + "integrity": "sha512-VVdYzXEn+cnbXpFgWs5hTT7OScegHVmLhJIR8Ufqk3iFD6A6j5iSX1KuBTfNEv4tdJWE2PzA6IVFtcLC7fN9wQ==", + "dev": true, + "requires": { + "@npmcli/fs": "^1.0.0", + "@npmcli/move-file": "^1.0.1", + "chownr": "^2.0.0", + "fs-minipass": "^2.0.0", + "glob": "^7.1.4", + "infer-owner": "^1.0.4", + "lru-cache": "^6.0.0", + "minipass": "^3.1.1", + "minipass-collect": "^1.0.2", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.2", + "mkdirp": "^1.0.3", + "p-map": "^4.0.0", + "promise-inflight": "^1.0.1", + "rimraf": "^3.0.2", + "ssri": "^8.0.1", + "tar": "^6.0.2", + "unique-filename": "^1.1.1" + } + }, + "call-bind": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", + "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "dev": true, + "requires": { + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2" + } + }, + "callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true + }, + "camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true + }, + "caniuse-lite": { + "version": "1.0.30001282", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001282.tgz", + "integrity": "sha512-YhF/hG6nqBEllymSIjLtR2iWDDnChvhnVJqp+vloyt2tEHFG1yBR+ac2B/rOw0qOK0m0lEXU2dv4E/sMk5P9Kg==", + "dev": true + }, + "canonical-path": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/canonical-path/-/canonical-path-1.0.0.tgz", + "integrity": "sha512-feylzsbDxi1gPZ1IjystzIQZagYYLvfKrSuygUCgf7z6x790VEzze5QEkdSV1U58RA7Hi0+v6fv4K54atOzATg==", + "dev": true + }, + "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, + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, + "chardet": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", + "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", + "dev": true + }, + "chokidar": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.2.tgz", + "integrity": "sha512-ekGhOnNVPgT77r4K/U3GDhu+FQ2S8TnK/s2KbIGXi0SZWuwkZ2QNyfWdZW+TVfn84DpEP7rLeCt2UI6bJ8GwbQ==", + "dev": true, + "requires": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "fsevents": "~2.3.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + } + }, + "chownr": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", + "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", + "dev": true + }, + "chrome-trace-event": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz", + "integrity": "sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==", + "dev": true + }, + "circular-dependency-plugin": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/circular-dependency-plugin/-/circular-dependency-plugin-5.2.2.tgz", + "integrity": "sha512-g38K9Cm5WRwlaH6g03B9OEz/0qRizI+2I7n+Gz+L5DxXJAPAiWQvwlYNm1V1jkdpUv95bOe/ASm2vfi/G560jQ==", + "dev": true, + "requires": {} + }, + "clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", + "dev": true + }, + "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, + "requires": { + "restore-cursor": "^3.1.0" + } + }, + "cli-spinners": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.6.1.tgz", + "integrity": "sha512-x/5fWmGMnbKQAaNwN+UZlV79qBLM9JFnJuJ03gIi5whrob0xV0ofNVHy9DhwGdsMJQc2OKv0oGmLzvaqvAVv+g==", + "dev": true + }, + "cli-width": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz", + "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==", + "dev": true + }, + "cliui": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "dev": true, + "requires": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" + } + }, + "clone": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", + "integrity": "sha1-2jCcwmPfFZlMaIypAheco8fNfH4=", + "dev": true + }, + "clone-deep": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz", + "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==", + "dev": true, + "requires": { + "is-plain-object": "^2.0.4", + "kind-of": "^6.0.2", + "shallow-clone": "^3.0.0" + } + }, + "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 + }, + "coingecko-api": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/coingecko-api/-/coingecko-api-1.0.10.tgz", + "integrity": "sha512-7YLLC85+daxAw5QlBWoHVBVpJRwoPr4HtwanCr8V/WRjoyHTa1Lb9DQAvv4MDJZHiz4no6HGnDQnddtjV35oRA==" + }, + "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, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true + }, + "colorette": { + "version": "2.0.16", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.16.tgz", + "integrity": "sha512-hUewv7oMjCp+wkBv5Rm0v87eJhq4woh5rSR+42YSQJKecCqgIqNkZ6lAlQms/BwHPJA5NKMRlpxPRv0n8HQW6g==", + "dev": true + }, + "colors": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/colors/-/colors-1.4.0.tgz", + "integrity": "sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA==", + "dev": true + }, + "commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "dev": true + }, + "commondir": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", + "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", + "dev": true + }, + "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 + }, + "compressible": { + "version": "2.0.18", + "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", + "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", + "dev": true, + "requires": { + "mime-db": ">= 1.43.0 < 2" + } + }, + "compression": { + "version": "1.7.4", + "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.4.tgz", + "integrity": "sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==", + "dev": true, + "requires": { + "accepts": "~1.3.5", + "bytes": "3.0.0", + "compressible": "~2.0.16", + "debug": "2.6.9", + "on-headers": "~1.0.2", + "safe-buffer": "5.1.2", + "vary": "~1.1.2" + }, + "dependencies": { + "bytes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", + "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=", + "dev": true + }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + } + } + }, + "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 + }, + "connect": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/connect/-/connect-3.7.0.tgz", + "integrity": "sha512-ZqRXc+tZukToSNmh5C2iWMSoV3X1YUcPbqEM4DkEG5tNQXrQUZCNVGGv3IuicnkMtPfGf3Xtp8WCXs295iQ1pQ==", + "dev": true, + "requires": { + "debug": "2.6.9", + "finalhandler": "1.1.2", + "parseurl": "~1.3.3", + "utils-merge": "1.0.1" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + } + } + }, + "connect-history-api-fallback": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-1.6.0.tgz", + "integrity": "sha512-e54B99q/OUoH64zYYRf3HBP5z24G38h5D3qXu23JGRoigpX5Ss4r9ZnDk3g0Z8uQC2x2lPaJ+UlWBc1ZWBWdLg==", + "dev": 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=", + "dev": true + }, + "content-disposition": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.3.tgz", + "integrity": "sha512-ExO0774ikEObIAEV9kDo50o+79VCUdEB6n6lzKgGwupcVeRlhrj3qGAfwq8G6uBJjkqLrhT0qEYFcWng8z1z0g==", + "dev": true, + "requires": { + "safe-buffer": "5.1.2" + } + }, + "content-type": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", + "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==", + "dev": true + }, + "convert-source-map": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz", + "integrity": "sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.1" + } + }, + "cookie": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.1.tgz", + "integrity": "sha512-ZwrFkGJxUR3EIoXtO+yVE69Eb7KlixbaeAWfBQB9vVsNn/o+Yw69gBWSSDK825hQNdN+wF8zELf3dFNl/kxkUA==", + "dev": true + }, + "cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=", + "dev": true + }, + "copy-anything": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/copy-anything/-/copy-anything-2.0.3.tgz", + "integrity": "sha512-GK6QUtisv4fNS+XcI7shX0Gx9ORg7QqIznyfho79JTnX1XhLiyZHfftvGiziqzRiEi/Bjhgpi+D2o7HxJFPnDQ==", + "dev": true, + "requires": { + "is-what": "^3.12.0" + } + }, + "copy-webpack-plugin": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-9.0.1.tgz", + "integrity": "sha512-14gHKKdYIxF84jCEgPgYXCPpldbwpxxLbCmA7LReY7gvbaT555DgeBWBgBZM116tv/fO6RRJrsivBqRyRlukhw==", + "dev": true, + "requires": { + "fast-glob": "^3.2.5", + "glob-parent": "^6.0.0", + "globby": "^11.0.3", + "normalize-path": "^3.0.0", + "p-limit": "^3.1.0", + "schema-utils": "^3.0.0", + "serialize-javascript": "^6.0.0" + }, + "dependencies": { + "ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "requires": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + } + }, + "ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "dev": true, + "requires": {} + }, + "glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "dev": true, + "requires": { + "is-glob": "^4.0.3" + } + }, + "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 + }, + "schema-utils": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", + "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", + "dev": true, + "requires": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + } + } + } + }, + "core-js": { + "version": "3.19.0", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.19.0.tgz", + "integrity": "sha512-L1TpFRWXZ76vH1yLM+z6KssLZrP8Z6GxxW4auoCj+XiViOzNPJCAuTIkn03BGdFe6Z5clX5t64wRIRypsZQrUg==", + "dev": true + }, + "core-js-compat": { + "version": "3.19.1", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.19.1.tgz", + "integrity": "sha512-Q/VJ7jAF/y68+aUsQJ/afPOewdsGkDtcMb40J8MbuWKlK3Y+wtHq8bTHKPj2WKWLIqmS5JhHs4CzHtz6pT2W6g==", + "dev": true, + "requires": { + "browserslist": "^4.17.6", + "semver": "7.0.0" + }, + "dependencies": { + "semver": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.0.0.tgz", + "integrity": "sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A==", + "dev": true + } + } + }, + "core-util-is": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", + "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==", + "dev": true + }, + "cors": { + "version": "2.8.5", + "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz", + "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==", + "dev": true, + "requires": { + "object-assign": "^4", + "vary": "^1" + } + }, + "cosmiconfig": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.0.1.tgz", + "integrity": "sha512-a1YWNUV2HwGimB7dU2s1wUMurNKjpx60HxBB6xUM8Re+2s1g1IIfJvFR0/iCF+XHdE0GMTKTuLR32UQff4TEyQ==", + "dev": true, + "requires": { + "@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" + } + }, + "critters": { + "version": "0.0.14", + "resolved": "https://registry.npmjs.org/critters/-/critters-0.0.14.tgz", + "integrity": "sha512-YiBoGKfU8/xg+tVMw0KfMBgmr0TWa1JGmRXDzbQRQQaDarGUcZZtZEB25QyYrLasQZAnvqoZhSg2GW0zdsQkYQ==", + "dev": true, + "requires": { + "chalk": "^4.1.0", + "css-select": "^4.1.3", + "parse5": "^6.0.1", + "parse5-htmlparser2-tree-adapter": "^6.0.1", + "postcss": "^8.3.7", + "pretty-bytes": "^5.3.0" + }, + "dependencies": { + "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, + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "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, + "requires": { + "color-name": "~1.1.4" + } + }, + "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 + }, + "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 + }, + "parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", + "dev": true + }, + "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, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "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, + "requires": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "dependencies": { + "which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "requires": { + "isexe": "^2.0.0" + } + } + } + }, + "css": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/css/-/css-3.0.0.tgz", + "integrity": "sha512-DG9pFfwOrzc+hawpmqX/dHYHJG+Bsdb0klhyi1sDneOgGOXy9wQIC8hzyVp1e4NRYDBdxcylvywPkkXCHAzTyQ==", + "dev": true, + "requires": { + "inherits": "^2.0.4", + "source-map": "^0.6.1", + "source-map-resolve": "^0.6.0" + }, + "dependencies": { + "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 + } + } + }, + "css-blank-pseudo": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/css-blank-pseudo/-/css-blank-pseudo-0.1.4.tgz", + "integrity": "sha512-LHz35Hr83dnFeipc7oqFDmsjHdljj3TQtxGGiNWSOsTLIAubSm4TEz8qCaKFpk7idaQ1GfWscF4E6mgpBysA1w==", + "dev": true, + "requires": { + "postcss": "^7.0.5" + }, + "dependencies": { + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + }, + "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 + } + } + }, + "css-has-pseudo": { + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/css-has-pseudo/-/css-has-pseudo-0.10.0.tgz", + "integrity": "sha512-Z8hnfsZu4o/kt+AuFzeGpLVhFOGO9mluyHBaA2bA8aCGTwah5sT3WV/fTHH8UNZUytOIImuGPrl/prlb4oX4qQ==", + "dev": true, + "requires": { + "postcss": "^7.0.6", + "postcss-selector-parser": "^5.0.0-rc.4" + }, + "dependencies": { + "cssesc": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-2.0.0.tgz", + "integrity": "sha512-MsCAG1z9lPdoO/IUMLSBWBSVxVtJ1395VGIQ+Fc2gNdkQ1hNDnQdw3YhA71WJCBW1vdwA0cAnk/DnW6bqoEUYg==", + "dev": true + }, + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + }, + "postcss-selector-parser": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-5.0.0.tgz", + "integrity": "sha512-w+zLE5Jhg6Liz8+rQOWEAwtwkyqpfnmsinXjXg6cY7YIONZZtgvE0v2O0uhQBs0peNomOJwWRKt6JBfTdTd3OQ==", + "dev": true, + "requires": { + "cssesc": "^2.0.0", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + } + }, + "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 + } + } + }, + "css-loader": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-6.5.0.tgz", + "integrity": "sha512-VmuSdQa3K+wJsl39i7X3qGBM5+ZHmtTnv65fqMGI+fzmHoYmszTVvTqC1XN8JwWDViCB1a8wgNim5SV4fb37xg==", + "dev": true, + "requires": { + "icss-utils": "^5.1.0", + "postcss": "^8.2.15", + "postcss-modules-extract-imports": "^3.0.0", + "postcss-modules-local-by-default": "^4.0.0", + "postcss-modules-scope": "^3.0.0", + "postcss-modules-values": "^4.0.0", + "postcss-value-parser": "^4.1.0", + "semver": "^7.3.5" + } + }, + "css-prefers-color-scheme": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/css-prefers-color-scheme/-/css-prefers-color-scheme-3.1.1.tgz", + "integrity": "sha512-MTu6+tMs9S3EUqzmqLXEcgNRbNkkD/TGFvowpeoWJn5Vfq7FMgsmRQs9X5NXAURiOBmOxm/lLjsDNXDE6k9bhg==", + "dev": true, + "requires": { + "postcss": "^7.0.5" + }, + "dependencies": { + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + }, + "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 + } + } + }, + "css-select": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.1.3.tgz", + "integrity": "sha512-gT3wBNd9Nj49rAbmtFHj1cljIAOLYSX1nZ8CB7TBO3INYckygm5B7LISU/szY//YmdiSLbJvDLOx9VnMVpMBxA==", + "dev": true, + "requires": { + "boolbase": "^1.0.0", + "css-what": "^5.0.0", + "domhandler": "^4.2.0", + "domutils": "^2.6.0", + "nth-check": "^2.0.0" + } + }, + "css-what": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-5.1.0.tgz", + "integrity": "sha512-arSMRWIIFY0hV8pIxZMEfmMI47Wj3R/aWpZDDxWYCPEiOMv6tfOrnpDtgxBYPEQD4V0Y/958+1TdC3iWTFcUPw==", + "dev": true + }, + "cssdb": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/cssdb/-/cssdb-4.4.0.tgz", + "integrity": "sha512-LsTAR1JPEM9TpGhl/0p3nQecC2LJ0kD8X5YARu1hk/9I1gril5vDtMZyNxcEpxxDj34YNck/ucjuoUd66K03oQ==", + "dev": true + }, + "cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "dev": true + }, + "custom-event": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/custom-event/-/custom-event-1.0.1.tgz", + "integrity": "sha1-XQKkaFCt8bSjF5RqOSj8y1v9BCU=", + "dev": true + }, + "date-format": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/date-format/-/date-format-3.0.0.tgz", + "integrity": "sha512-eyTcpKOcamdhWJXj56DpQMo1ylSQpcGtGKXcU0Tb97+K56/CF5amAqqqNj0+KvA0iw2ynxtHWFsPDSClCxe48w==", + "dev": true + }, + "debug": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", + "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==", + "requires": { + "ms": "2.1.2" + } + }, + "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 + }, + "deep-equal": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.1.1.tgz", + "integrity": "sha512-yd9c5AdiqVcR+JjcwUQb9DkhJc8ngNr0MahEBGvDiJw8puWab2yZlh+nkasOnZP+EGTAP6rRp2JzJhJZzvNF8g==", + "dev": true, + "requires": { + "is-arguments": "^1.0.4", + "is-date-object": "^1.0.1", + "is-regex": "^1.0.4", + "object-is": "^1.0.1", + "object-keys": "^1.1.1", + "regexp.prototype.flags": "^1.2.0" + } + }, + "default-gateway": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/default-gateway/-/default-gateway-6.0.3.tgz", + "integrity": "sha512-fwSOJsbbNzZ/CUFpqFBqYfYNLj1NbMPm8MMCIzHjC83iSJRBEGmDUxU+WP661BaBQImeC2yHwXtz+P/O9o+XEg==", + "dev": true, + "requires": { + "execa": "^5.0.0" + } + }, + "defaults": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.3.tgz", + "integrity": "sha1-xlYFHpgX2f8I7YgUd/P+QBnz730=", + "dev": true, + "requires": { + "clone": "^1.0.2" + } + }, + "define-lazy-prop": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", + "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==", + "dev": true + }, + "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, + "requires": { + "object-keys": "^1.0.12" + } + }, + "del": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/del/-/del-6.0.0.tgz", + "integrity": "sha512-1shh9DQ23L16oXSZKB2JxpL7iMy2E0S9d517ptA1P8iw0alkPtQcrKH7ru31rYtKwF499HkTu+DRzq3TCKDFRQ==", + "dev": true, + "requires": { + "globby": "^11.0.1", + "graceful-fs": "^4.2.4", + "is-glob": "^4.0.1", + "is-path-cwd": "^2.2.0", + "is-path-inside": "^3.0.2", + "p-map": "^4.0.0", + "rimraf": "^3.0.2", + "slash": "^3.0.0" + } + }, + "delegates": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", + "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=", + "dev": true + }, + "denque": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/denque/-/denque-2.0.1.tgz", + "integrity": "sha512-tfiWc6BQLXNLpNiR5iGd0Ocu3P3VpxfzFiqubLgMfhfOw9WyvgJBd46CClNn9k3qfbjvT//0cf7AlYRX/OslMQ==" + }, + "depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=", + "dev": true + }, + "dependency-graph": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/dependency-graph/-/dependency-graph-0.11.0.tgz", + "integrity": "sha512-JeMq7fEshyepOWDfcfHK06N3MhyPhz++vtqWhMT5O9A3K42rdsEDpfdVqjaqaAhsw6a+ZqeDvQVtD0hFHQWrzg==", + "dev": true + }, + "destroy": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", + "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=", + "dev": true + }, + "detect-node": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz", + "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==", + "dev": true + }, + "di": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/di/-/di-0.0.1.tgz", + "integrity": "sha1-gGZJMmzqp8qjMG112YXqJ0i6kTw=", + "dev": true + }, + "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, + "requires": { + "path-type": "^4.0.0" + } + }, + "dns-equal": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/dns-equal/-/dns-equal-1.0.0.tgz", + "integrity": "sha1-s55/HabrCnW6nBcySzR1PEfgZU0=", + "dev": true + }, + "dns-packet": { + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-1.3.4.tgz", + "integrity": "sha512-BQ6F4vycLXBvdrJZ6S3gZewt6rcrks9KBgM9vrhW+knGRqc8uEdT7fuCwloc7nny5xNoMJ17HGH0R/6fpo8ECA==", + "dev": true, + "requires": { + "ip": "^1.1.0", + "safe-buffer": "^5.0.1" + } + }, + "dns-txt": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/dns-txt/-/dns-txt-2.0.2.tgz", + "integrity": "sha1-uR2Ab10nGI5Ks+fRB9iBocxGQrY=", + "dev": true, + "requires": { + "buffer-indexof": "^1.0.0" + } + }, + "dom-serialize": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/dom-serialize/-/dom-serialize-2.2.1.tgz", + "integrity": "sha1-ViromZ9Evl6jB29UGdzVnrQ6yVs=", + "dev": true, + "requires": { + "custom-event": "~1.0.0", + "ent": "~2.2.0", + "extend": "^3.0.0", + "void-elements": "^2.0.0" + } + }, + "dom-serializer": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.3.2.tgz", + "integrity": "sha512-5c54Bk5Dw4qAxNOI1pFEizPSjVsx5+bpJKmL2kPn8JhBUq2q09tTCa3mjijun2NfK78NMouDYNMBkOrPZiS+ig==", + "dev": true, + "requires": { + "domelementtype": "^2.0.1", + "domhandler": "^4.2.0", + "entities": "^2.0.0" + } + }, + "domelementtype": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.2.0.tgz", + "integrity": "sha512-DtBMo82pv1dFtUmHyr48beiuq792Sxohr+8Hm9zoxklYPfa6n0Z3Byjj2IV7bmr2IyqClnqEQhfgHJJ5QF0R5A==", + "dev": true + }, + "domhandler": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.2.2.tgz", + "integrity": "sha512-PzE9aBMsdZO8TK4BnuJwH0QT41wgMbRzuZrHUcpYncEjmQazq8QEaBWgLG7ZyC/DAZKEgglpIA6j4Qn/HmxS3w==", + "dev": true, + "requires": { + "domelementtype": "^2.2.0" + } + }, + "domutils": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", + "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", + "dev": true, + "requires": { + "dom-serializer": "^1.0.1", + "domelementtype": "^2.2.0", + "domhandler": "^4.2.0" + } + }, + "easyqrcodejs": { + "version": "4.4.6", + "resolved": "https://registry.npmjs.org/easyqrcodejs/-/easyqrcodejs-4.4.6.tgz", + "integrity": "sha512-LP24ScT1io86Sv6Cp1rKLCDBmSRBbnqWsF32qfykWV3ojW6iVUN2paaiaUy5tjJ/dAw+YCJ/qkrfy7MrAihY/A==" + }, + "ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=", + "dev": true + }, + "electron-to-chromium": { + "version": "1.3.901", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.901.tgz", + "integrity": "sha512-ToJdV2vzwT2jeAsw8zIggTFllJ4Kxvwghk39AhJEHHlIxor10wsFI3wo69p8nFc0s/ATWBqugPv/k3nW4Y9Mww==", + "dev": true + }, + "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 + }, + "emojis-list": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", + "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", + "dev": true + }, + "encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=", + "dev": true + }, + "encoding": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", + "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", + "dev": true, + "optional": true, + "requires": { + "iconv-lite": "^0.6.2" + }, + "dependencies": { + "iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "dev": true, + "optional": true, + "requires": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + } + } + } + }, + "engine.io": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-6.0.1.tgz", + "integrity": "sha512-Y53UaciUh2Rmx5MiogtMxOQcfh7pnemday+Bb4QDg0Wjmnvo/VTvuEyNGQgYmh8L7VOe8Je1QuiqjLNDelMqLA==", + "dev": true, + "requires": { + "@types/cookie": "^0.4.1", + "@types/cors": "^2.8.12", + "@types/node": ">=10.0.0", + "accepts": "~1.3.4", + "base64id": "2.0.0", + "cookie": "~0.4.1", + "cors": "~2.8.5", + "debug": "~4.3.1", + "engine.io-parser": "~5.0.0", + "ws": "~8.2.3" + } + }, + "engine.io-parser": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-5.0.2.tgz", + "integrity": "sha512-wuiO7qO/OEkPJSFueuATIXtrxF7/6GTbAO9QLv7nnbjwZ5tYhLm9zxvLwxstRs0dcT0KUlWTjtIOs1T86jt12g==", + "dev": true, + "requires": { + "base64-arraybuffer": "~1.0.1" + } + }, + "enhanced-resolve": { + "version": "5.8.3", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.8.3.tgz", + "integrity": "sha512-EGAbGvH7j7Xt2nc0E7D99La1OiEs8LnyimkRgwExpUMScN6O+3x9tIWs7PLQZVNx4YD+00skHXPXi1yQHpAmZA==", + "dev": true, + "requires": { + "graceful-fs": "^4.2.4", + "tapable": "^2.2.0" + } + }, + "ent": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/ent/-/ent-2.2.0.tgz", + "integrity": "sha1-6WQhkyWiHQX0RGai9obtbOX13R0=", + "dev": true + }, + "entities": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", + "dev": true + }, + "env-paths": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", + "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==", + "dev": true + }, + "err-code": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/err-code/-/err-code-2.0.3.tgz", + "integrity": "sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==", + "dev": true + }, + "errno": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.8.tgz", + "integrity": "sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A==", + "dev": true, + "optional": true, + "requires": { + "prr": "~1.0.1" + } + }, + "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, + "requires": { + "is-arrayish": "^0.2.1" + } + }, + "es-module-lexer": { + "version": "0.9.3", + "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.9.3.tgz", + "integrity": "sha512-1HQ2M2sPtxwnvOvT1ZClHyQDiggdNjURWpY2we6aMKCQiUVxTmVs2UYPLIrD84sS+kMdUwfBSylbJPwNnBrnHQ==", + "dev": true + }, + "esbuild": { + "version": "0.13.12", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.13.12.tgz", + "integrity": "sha512-vTKKUt+yoz61U/BbrnmlG9XIjwpdIxmHB8DlPR0AAW6OdS+nBQBci6LUHU2q9WbBobMEIQxxDpKbkmOGYvxsow==", + "dev": true, + "optional": true, + "requires": { + "esbuild-android-arm64": "0.13.12", + "esbuild-darwin-64": "0.13.12", + "esbuild-darwin-arm64": "0.13.12", + "esbuild-freebsd-64": "0.13.12", + "esbuild-freebsd-arm64": "0.13.12", + "esbuild-linux-32": "0.13.12", + "esbuild-linux-64": "0.13.12", + "esbuild-linux-arm": "0.13.12", + "esbuild-linux-arm64": "0.13.12", + "esbuild-linux-mips64le": "0.13.12", + "esbuild-linux-ppc64le": "0.13.12", + "esbuild-netbsd-64": "0.13.12", + "esbuild-openbsd-64": "0.13.12", + "esbuild-sunos-64": "0.13.12", + "esbuild-windows-32": "0.13.12", + "esbuild-windows-64": "0.13.12", + "esbuild-windows-arm64": "0.13.12" + } + }, + "esbuild-android-arm64": { + "version": "0.13.12", + "resolved": "https://registry.npmjs.org/esbuild-android-arm64/-/esbuild-android-arm64-0.13.12.tgz", + "integrity": "sha512-TSVZVrb4EIXz6KaYjXfTzPyyRpXV5zgYIADXtQsIenjZ78myvDGaPi11o4ZSaHIwFHsuwkB6ne5SZRBwAQ7maw==", + "dev": true, + "optional": true + }, + "esbuild-darwin-64": { + "version": "0.13.12", + "resolved": "https://registry.npmjs.org/esbuild-darwin-64/-/esbuild-darwin-64-0.13.12.tgz", + "integrity": "sha512-c51C+N+UHySoV2lgfWSwwmlnLnL0JWj/LzuZt9Ltk9ub1s2Y8cr6SQV5W3mqVH1egUceew6KZ8GyI4nwu+fhsw==", + "dev": true, + "optional": true + }, + "esbuild-darwin-arm64": { + "version": "0.13.12", + "resolved": "https://registry.npmjs.org/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.13.12.tgz", + "integrity": "sha512-JvAMtshP45Hd8A8wOzjkY1xAnTKTYuP/QUaKp5eUQGX+76GIie3fCdUUr2ZEKdvpSImNqxiZSIMziEiGB5oUmQ==", + "dev": true, + "optional": true + }, + "esbuild-freebsd-64": { + "version": "0.13.12", + "resolved": "https://registry.npmjs.org/esbuild-freebsd-64/-/esbuild-freebsd-64-0.13.12.tgz", + "integrity": "sha512-r6On/Skv9f0ZjTu6PW5o7pdXr8aOgtFOEURJZYf1XAJs0IQ+gW+o1DzXjVkIoT+n1cm3N/t1KRJfX71MPg/ZUA==", + "dev": true, + "optional": true + }, + "esbuild-freebsd-arm64": { + "version": "0.13.12", + "resolved": "https://registry.npmjs.org/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.13.12.tgz", + "integrity": "sha512-F6LmI2Q1gii073kmBE3NOTt/6zLL5zvZsxNLF8PMAwdHc+iBhD1vzfI8uQZMJA1IgXa3ocr3L3DJH9fLGXy6Yw==", + "dev": true, + "optional": true + }, + "esbuild-linux-32": { + "version": "0.13.12", + "resolved": "https://registry.npmjs.org/esbuild-linux-32/-/esbuild-linux-32-0.13.12.tgz", + "integrity": "sha512-U1UZwG3UIwF7/V4tCVAo/nkBV9ag5KJiJTt+gaCmLVWH3bPLX7y+fNlhIWZy8raTMnXhMKfaTvWZ9TtmXzvkuQ==", + "dev": true, + "optional": true + }, + "esbuild-linux-64": { + "version": "0.13.12", + "resolved": "https://registry.npmjs.org/esbuild-linux-64/-/esbuild-linux-64-0.13.12.tgz", + "integrity": "sha512-YpXSwtu2NxN3N4ifJxEdsgd6Q5d8LYqskrAwjmoCT6yQnEHJSF5uWcxv783HWN7lnGpJi9KUtDvYsnMdyGw71Q==", + "dev": true, + "optional": true + }, + "esbuild-linux-arm": { + "version": "0.13.12", + "resolved": "https://registry.npmjs.org/esbuild-linux-arm/-/esbuild-linux-arm-0.13.12.tgz", + "integrity": "sha512-SyiT/JKxU6J+DY2qUiSLZJqCAftIt3uoGejZ0HDnUM2MGJqEGSGh7p1ecVL2gna3PxS4P+j6WAehCwgkBPXNIw==", + "dev": true, + "optional": true + }, + "esbuild-linux-arm64": { + "version": "0.13.12", + "resolved": "https://registry.npmjs.org/esbuild-linux-arm64/-/esbuild-linux-arm64-0.13.12.tgz", + "integrity": "sha512-sgDNb8kb3BVodtAlcFGgwk+43KFCYjnFOaOfJibXnnIojNWuJHpL6aQJ4mumzNWw8Rt1xEtDQyuGK9f+Y24jGA==", + "dev": true, + "optional": true + }, + "esbuild-linux-mips64le": { + "version": "0.13.12", + "resolved": "https://registry.npmjs.org/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.13.12.tgz", + "integrity": "sha512-qQJHlZBG+QwVIA8AbTEtbvF084QgDi4DaUsUnA+EolY1bxrG+UyOuGflM2ZritGhfS/k7THFjJbjH2wIeoKA2g==", + "dev": true, + "optional": true + }, + "esbuild-linux-ppc64le": { + "version": "0.13.12", + "resolved": "https://registry.npmjs.org/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.13.12.tgz", + "integrity": "sha512-2dSnm1ldL7Lppwlo04CGQUpwNn5hGqXI38OzaoPOkRsBRWFBozyGxTFSee/zHFS+Pdh3b28JJbRK3owrrRgWNw==", + "dev": true, + "optional": true + }, + "esbuild-netbsd-64": { + "version": "0.13.12", + "resolved": "https://registry.npmjs.org/esbuild-netbsd-64/-/esbuild-netbsd-64-0.13.12.tgz", + "integrity": "sha512-D4raxr02dcRiQNbxOLzpqBzcJNFAdsDNxjUbKkDMZBkL54Z0vZh4LRndycdZAMcIdizC/l/Yp/ZsBdAFxc5nbA==", + "dev": true, + "optional": true + }, + "esbuild-openbsd-64": { + "version": "0.13.12", + "resolved": "https://registry.npmjs.org/esbuild-openbsd-64/-/esbuild-openbsd-64-0.13.12.tgz", + "integrity": "sha512-KuLCmYMb2kh05QuPJ+va60bKIH5wHL8ypDkmpy47lzwmdxNsuySeCMHuTv5o2Af1RUn5KLO5ZxaZeq4GEY7DaQ==", + "dev": true, + "optional": true + }, + "esbuild-sunos-64": { + "version": "0.13.12", + "resolved": "https://registry.npmjs.org/esbuild-sunos-64/-/esbuild-sunos-64-0.13.12.tgz", + "integrity": "sha512-jBsF+e0woK3miKI8ufGWKG3o3rY9DpHvCVRn5eburMIIE+2c+y3IZ1srsthKyKI6kkXLvV4Cf/E7w56kLipMXw==", + "dev": true, + "optional": true + }, + "esbuild-wasm": { + "version": "0.13.12", + "resolved": "https://registry.npmjs.org/esbuild-wasm/-/esbuild-wasm-0.13.12.tgz", + "integrity": "sha512-eGdiSewbnJffEvyA0qQmr+w3HurBMVp4QhOfICzeeoL9naC8qC3PFaw6hZaqSgks5DXnQONtUGUFLsX3eXpq8A==", + "dev": true + }, + "esbuild-windows-32": { + "version": "0.13.12", + "resolved": "https://registry.npmjs.org/esbuild-windows-32/-/esbuild-windows-32-0.13.12.tgz", + "integrity": "sha512-L9m4lLFQrFeR7F+eLZXG82SbXZfUhyfu6CexZEil6vm+lc7GDCE0Q8DiNutkpzjv1+RAbIGVva9muItQ7HVTkQ==", + "dev": true, + "optional": true + }, + "esbuild-windows-64": { + "version": "0.13.12", + "resolved": "https://registry.npmjs.org/esbuild-windows-64/-/esbuild-windows-64-0.13.12.tgz", + "integrity": "sha512-k4tX4uJlSbSkfs78W5d9+I9gpd+7N95W7H2bgOMFPsYREVJs31+Q2gLLHlsnlY95zBoPQMIzHooUIsixQIBjaQ==", + "dev": true, + "optional": true + }, + "esbuild-windows-arm64": { + "version": "0.13.12", + "resolved": "https://registry.npmjs.org/esbuild-windows-arm64/-/esbuild-windows-arm64-0.13.12.tgz", + "integrity": "sha512-2tTv/BpYRIvuwHpp2M960nG7uvL+d78LFW/ikPItO+2GfK51CswIKSetSpDii+cjz8e9iSPgs+BU4o8nWICBwQ==", + "dev": true, + "optional": true + }, + "escalade": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "dev": true + }, + "escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=", + "dev": true + }, + "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 + }, + "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, + "requires": { + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" + } + }, + "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 + }, + "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, + "requires": { + "estraverse": "^5.2.0" + }, + "dependencies": { + "estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true + } + } + }, + "estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "dev": true + }, + "esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true + }, + "etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=", + "dev": true + }, + "eventemitter-asyncresource": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/eventemitter-asyncresource/-/eventemitter-asyncresource-1.0.0.tgz", + "integrity": "sha512-39F7TBIV0G7gTelxwbEqnwhp90eqCPON1k0NwNfwhgKn4Co4ybUbj2pECcXT0B3ztRKZ7Pw1JujUUgmQJHcVAQ==", + "dev": true + }, + "eventemitter3": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", + "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==", + "dev": true + }, + "events": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", + "dev": true + }, + "execa": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", + "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", + "dev": true, + "requires": { + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.0", + "human-signals": "^2.1.0", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.1", + "onetime": "^5.1.2", + "signal-exit": "^3.0.3", + "strip-final-newline": "^2.0.0" + } + }, + "express": { + "version": "4.17.1", + "resolved": "https://registry.npmjs.org/express/-/express-4.17.1.tgz", + "integrity": "sha512-mHJ9O79RqluphRrcw2X/GTh3k9tVv8YcoyY4Kkh4WDMUYKRZUq0h1o0w2rrrxBqM7VoeUVqgb27xlEMXTnYt4g==", + "dev": true, + "requires": { + "accepts": "~1.3.7", + "array-flatten": "1.1.1", + "body-parser": "1.19.0", + "content-disposition": "0.5.3", + "content-type": "~1.0.4", + "cookie": "0.4.0", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "~1.1.2", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "~1.1.2", + "fresh": "0.5.2", + "merge-descriptors": "1.0.1", + "methods": "~1.1.2", + "on-finished": "~2.3.0", + "parseurl": "~1.3.3", + "path-to-regexp": "0.1.7", + "proxy-addr": "~2.0.5", + "qs": "6.7.0", + "range-parser": "~1.2.1", + "safe-buffer": "5.1.2", + "send": "0.17.1", + "serve-static": "1.14.1", + "setprototypeof": "1.1.1", + "statuses": "~1.5.0", + "type-is": "~1.6.18", + "utils-merge": "1.0.1", + "vary": "~1.1.2" + }, + "dependencies": { + "array-flatten": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=", + "dev": true + }, + "cookie": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.0.tgz", + "integrity": "sha512-+Hp8fLp57wnUSt0tY0tHEXh4voZRDnoIrZPqlo3DPiI4y9lwg/jqx+1Om94/W6ZaPDOUbnjOt/99w66zk+l1Xg==", + "dev": true + }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + } + } + }, + "extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", + "dev": true + }, + "external-editor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", + "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", + "dev": true, + "requires": { + "chardet": "^0.7.0", + "iconv-lite": "^0.4.24", + "tmp": "^0.0.33" + } + }, + "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 + }, + "fast-glob": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.7.tgz", + "integrity": "sha512-rYGMRwip6lUMvYD3BTScMwT1HtAs2d71SMv66Vrxs0IekGZEjhM0pcMfjQPnknBt2zeCwQMEupiN02ZP4DiT1Q==", + "dev": true, + "requires": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.4" + } + }, + "fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true + }, + "fastq": { + "version": "1.13.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.13.0.tgz", + "integrity": "sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==", + "dev": true, + "requires": { + "reusify": "^1.0.4" + } + }, + "faye-websocket": { + "version": "0.11.4", + "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.4.tgz", + "integrity": "sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g==", + "dev": true, + "requires": { + "websocket-driver": ">=0.5.1" + } + }, + "figures": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", + "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", + "dev": true, + "requires": { + "escape-string-regexp": "^1.0.5" + } + }, + "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, + "requires": { + "to-regex-range": "^5.0.1" + } + }, + "finalhandler": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz", + "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==", + "dev": true, + "requires": { + "debug": "2.6.9", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "on-finished": "~2.3.0", + "parseurl": "~1.3.3", + "statuses": "~1.5.0", + "unpipe": "~1.0.0" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + } + } + }, + "find-cache-dir": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz", + "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==", + "dev": true, + "requires": { + "commondir": "^1.0.1", + "make-dir": "^3.0.2", + "pkg-dir": "^4.1.0" + } + }, + "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, + "requires": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + } + }, + "flatted": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.2.tgz", + "integrity": "sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA==", + "dev": true + }, + "flatten": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/flatten/-/flatten-1.0.3.tgz", + "integrity": "sha512-dVsPA/UwQ8+2uoFe5GHtiBMu48dWLTdsuEd7CKGlZlD78r1TTWBvDuFaFGKCo/ZfEr95Uk56vZoX86OsHkUeIg==", + "dev": true + }, + "follow-redirects": { + "version": "1.14.5", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.5.tgz", + "integrity": "sha512-wtphSXy7d4/OR+MvIFbCVBDzZ5520qV8XfPklSN5QtxuMUJZ+b0Wnst1e1lCDocfzuCkHqj8k0FpZqO+UIaKNA==" + }, + "forwarded": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", + "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", + "dev": true + }, + "fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=", + "dev": true + }, + "fs-extra": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", + "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", + "dev": true, + "requires": { + "graceful-fs": "^4.2.0", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + } + }, + "fs-minipass": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", + "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", + "dev": true, + "requires": { + "minipass": "^3.0.0" + } + }, + "fs-monkey": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/fs-monkey/-/fs-monkey-1.0.3.tgz", + "integrity": "sha512-cybjIfiiE+pTWicSCLFHSrXZ6EilF30oh91FDP9S2B051prEa7QWfrVTQm10/dDpswBDXZugPa1Ogu8Yh+HV0Q==", + "dev": true + }, + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", + "dev": true + }, + "fsevents": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "dev": true, + "optional": true + }, + "function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", + "dev": true + }, + "gauge": { + "version": "2.7.4", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", + "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", + "dev": true, + "requires": { + "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" + }, + "dependencies": { + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "dev": 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=", + "dev": true, + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "dev": true, + "requires": { + "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=", + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + } + } + } + }, + "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 + }, + "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 + }, + "get-intrinsic": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz", + "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==", + "dev": true, + "requires": { + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.1" + } + }, + "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 + }, + "get-stream": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", + "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", + "dev": true + }, + "glob": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", + "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", + "dev": true, + "requires": { + "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" + } + }, + "glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "requires": { + "is-glob": "^4.0.1" + } + }, + "glob-to-regexp": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", + "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", + "dev": true + }, + "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 + }, + "globby": { + "version": "11.0.4", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.0.4.tgz", + "integrity": "sha512-9O4MVG9ioZJ08ffbcyVYyLOJLk5JQ688pJ4eMGLpdWLHq/Wr1D9BlriLQyL0E+jbkuePVZXYFj47QM/v093wHg==", + "dev": true, + "requires": { + "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" + } + }, + "graceful-fs": { + "version": "4.2.8", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.8.tgz", + "integrity": "sha512-qkIilPUYcNhJpd33n0GBXTB1MMPp14TxEsEs0pTrsSVucApsYzW5V+Q8Qxhik6KU3evy+qkAAowTByymK0avdg==", + "dev": true + }, + "handle-thing": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz", + "integrity": "sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==", + "dev": true + }, + "has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "dev": true, + "requires": { + "function-bind": "^1.1.1" + } + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true + }, + "has-symbols": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz", + "integrity": "sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==", + "dev": true + }, + "has-tostringtag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", + "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", + "dev": true, + "requires": { + "has-symbols": "^1.0.2" + } + }, + "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 + }, + "hdr-histogram-js": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/hdr-histogram-js/-/hdr-histogram-js-2.0.1.tgz", + "integrity": "sha512-uPZxl1dAFnjUFHWLZmt93vUUvtHeaBay9nVNHu38SdOjMSF/4KqJUqa1Seuj08ptU1rEb6AHvB41X8n/zFZ74Q==", + "dev": true, + "requires": { + "@assemblyscript/loader": "^0.10.1", + "base64-js": "^1.2.0", + "pako": "^1.0.3" + } + }, + "hdr-histogram-percentiles-obj": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/hdr-histogram-percentiles-obj/-/hdr-histogram-percentiles-obj-3.0.0.tgz", + "integrity": "sha512-7kIufnBqdsBGcSZLPJwqHT3yhk1QTsSlFsVD3kx5ixH/AlgBs9yM1q6DPhXZ8f8gtdqgh7N7/5btRLpQsS2gHw==", + "dev": true + }, + "hosted-git-info": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.0.2.tgz", + "integrity": "sha512-c9OGXbZ3guC/xOlCg1Ci/VgWlwsqDv1yMQL1CWqXDL0hDjXuNcq0zuR4xqPSuasI3kqFDhqSyTjREz5gzq0fXg==", + "dev": true, + "requires": { + "lru-cache": "^6.0.0" + } + }, + "hpack.js": { + "version": "2.1.6", + "resolved": "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz", + "integrity": "sha1-h3dMCUnlE/QuhFdbPEVoH63ioLI=", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "obuf": "^1.0.0", + "readable-stream": "^2.0.1", + "wbuf": "^1.1.0" + }, + "dependencies": { + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dev": true, + "requires": { + "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" + } + }, + "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, + "requires": { + "safe-buffer": "~5.1.0" + } + } + } + }, + "html-entities": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-2.3.2.tgz", + "integrity": "sha512-c3Ab/url5ksaT0WyleslpBEthOzWhrjQbg75y7XUsfSzi3Dgzt0l8w5e7DylRn15MTlMMD58dTfzddNS2kcAjQ==", + "dev": true + }, + "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 + }, + "http-cache-semantics": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz", + "integrity": "sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==", + "dev": true + }, + "http-deceiver": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz", + "integrity": "sha1-+nFolEq5pRnTN8sL7HKE3D5yPYc=", + "dev": true + }, + "http-errors": { + "version": "1.7.2", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.2.tgz", + "integrity": "sha512-uUQBt3H/cSIVfch6i1EuPNy/YsRSOUBXTVfZ+yR7Zjez3qjBz6i9+i4zjNaoqcoFVI4lQJ5plg63TvGfRSDCRg==", + "dev": true, + "requires": { + "depd": "~1.1.2", + "inherits": "2.0.3", + "setprototypeof": "1.1.1", + "statuses": ">= 1.5.0 < 2", + "toidentifier": "1.0.0" + }, + "dependencies": { + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", + "dev": true + } + } + }, + "http-parser-js": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.3.tgz", + "integrity": "sha512-t7hjvef/5HEK7RWTdUzVUhl8zkEu+LlaE0IYzdMuvbSDipxBRpOn4Uhw8ZyECEa808iVT8XCjzo6xmYt4CiLZg==", + "dev": true + }, + "http-proxy": { + "version": "1.18.1", + "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.1.tgz", + "integrity": "sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==", + "dev": true, + "requires": { + "eventemitter3": "^4.0.0", + "follow-redirects": "^1.0.0", + "requires-port": "^1.0.0" + } + }, + "http-proxy-agent": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz", + "integrity": "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==", + "dev": true, + "requires": { + "@tootallnate/once": "1", + "agent-base": "6", + "debug": "4" + } + }, + "http-proxy-middleware": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-2.0.1.tgz", + "integrity": "sha512-cfaXRVoZxSed/BmkA7SwBVNI9Kj7HFltaE5rqYOub5kWzWZ+gofV2koVN1j2rMW7pEfSSlCHGJ31xmuyFyfLOg==", + "dev": true, + "requires": { + "@types/http-proxy": "^1.17.5", + "http-proxy": "^1.18.1", + "is-glob": "^4.0.1", + "is-plain-obj": "^3.0.0", + "micromatch": "^4.0.2" + } + }, + "https-proxy-agent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.0.tgz", + "integrity": "sha512-EkYm5BcKUGiduxzSt3Eppko+PiNWNEpa4ySk9vTC6wDsQJW9rHSa+UhGNJoRYp7bz6Ht1eaRIa6QaJqO5rCFbA==", + "dev": true, + "requires": { + "agent-base": "6", + "debug": "4" + } + }, + "human-signals": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", + "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", + "dev": true + }, + "humanize-ms": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/humanize-ms/-/humanize-ms-1.2.1.tgz", + "integrity": "sha1-xG4xWaKT9riW2ikxbYtv6Lt5u+0=", + "dev": true, + "requires": { + "ms": "^2.0.0" + } + }, + "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, + "requires": { + "safer-buffer": ">= 2.1.2 < 3" + } + }, + "icss-utils": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-5.1.0.tgz", + "integrity": "sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==", + "dev": true, + "requires": {} + }, + "ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==" + }, + "ignore": { + "version": "5.1.9", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.9.tgz", + "integrity": "sha512-2zeMQpbKz5dhZ9IwL0gbxSW5w0NK/MSAMtNuhgIHEPmaU3vPdKPL0UdvUCXs5SS4JAwsBxysK5sFMW8ocFiVjQ==", + "dev": true + }, + "ignore-walk": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-4.0.1.tgz", + "integrity": "sha512-rzDQLaW4jQbh2YrOFlJdCtX8qgJTehFRYiUB2r1osqTeDzV/3+Jh8fz1oAPzUThf3iku8Ds4IDqawI5d8mUiQw==", + "dev": true, + "requires": { + "minimatch": "^3.0.4" + } + }, + "image-size": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/image-size/-/image-size-0.5.5.tgz", + "integrity": "sha1-Cd/Uq50g4p6xw+gLiZA3jfnjy5w=", + "dev": true, + "optional": true + }, + "import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "dev": true, + "requires": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "dependencies": { + "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 + } + } + }, + "imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", + "dev": true + }, + "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==", + "dev": true + }, + "indexes-of": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/indexes-of/-/indexes-of-1.0.1.tgz", + "integrity": "sha1-8w9xbI4r00bHtn0985FVZqfAVgc=", + "dev": true + }, + "infer-owner": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz", + "integrity": "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==", + "dev": true + }, + "inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "dev": true, + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true + }, + "ini": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ini/-/ini-2.0.0.tgz", + "integrity": "sha512-7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA==", + "dev": true + }, + "inquirer": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-8.2.0.tgz", + "integrity": "sha512-0crLweprevJ02tTuA6ThpoAERAGyVILC4sS74uib58Xf/zSr1/ZWtmm7D5CI+bSQEaA04f0K7idaHpQbSWgiVQ==", + "dev": true, + "requires": { + "ansi-escapes": "^4.2.1", + "chalk": "^4.1.1", + "cli-cursor": "^3.1.0", + "cli-width": "^3.0.0", + "external-editor": "^3.0.3", + "figures": "^3.0.0", + "lodash": "^4.17.21", + "mute-stream": "0.0.8", + "ora": "^5.4.1", + "run-async": "^2.4.0", + "rxjs": "^7.2.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0", + "through": "^2.3.6" + }, + "dependencies": { + "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, + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "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, + "requires": { + "color-name": "~1.1.4" + } + }, + "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 + }, + "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 + }, + "rxjs": { + "version": "7.4.0", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.4.0.tgz", + "integrity": "sha512-7SQDi7xeTMCJpqViXh8gL/lebcwlp3d831F05+9B44A4B0WfsEwUQHR64gsH1kvJ+Ep/J9K2+n1hVl1CsGN23w==", + "dev": true, + "requires": { + "tslib": "~2.1.0" + } + }, + "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, + "requires": { + "has-flag": "^4.0.0" + } + }, + "tslib": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.1.0.tgz", + "integrity": "sha512-hcVC3wYEziELGGmEEXue7D75zbwIIVUMWAVbHItGPx0ziyXxrOMQx4rQEVEV45Ut/1IotuEvwqPopzIOkDMf0A==", + "dev": true + } + } + }, + "internal-ip": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/internal-ip/-/internal-ip-6.2.0.tgz", + "integrity": "sha512-D8WGsR6yDt8uq7vDMu7mjcR+yRMm3dW8yufyChmszWRjcSHuxLBkR3GdS2HZAjodsaGuCvXeEJpueisXJULghg==", + "dev": true, + "requires": { + "default-gateway": "^6.0.0", + "ipaddr.js": "^1.9.1", + "is-ip": "^3.1.0", + "p-event": "^4.2.0" + }, + "dependencies": { + "ipaddr.js": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", + "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", + "dev": true + } + } + }, + "ip": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.5.tgz", + "integrity": "sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo=", + "dev": true + }, + "ip-regex": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ip-regex/-/ip-regex-4.3.0.tgz", + "integrity": "sha512-B9ZWJxHHOHUhUjCPrMpLD4xEq35bUTClHM1S6CBU5ixQnkZmwipwgc96vAd7AAGM9TGHvJR+Uss+/Ak6UphK+Q==", + "dev": true + }, + "ipaddr.js": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.0.1.tgz", + "integrity": "sha512-1qTgH9NG+IIJ4yfKs2e6Pp1bZg8wbDbKHT21HrLIeYBTRLgMYKnMTPAuI3Lcs61nfx5h1xlXnbJtH1kX5/d/ng==", + "dev": true + }, + "is-arguments": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz", + "integrity": "sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + } + }, + "is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", + "dev": true + }, + "is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dev": true, + "requires": { + "binary-extensions": "^2.0.0" + } + }, + "is-core-module": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.8.0.tgz", + "integrity": "sha512-vd15qHsaqrRL7dtH6QNuy0ndJmRDrS9HAM1CAiSifNUFv4x1a0CCVsj18hJ1mShxIG6T2i1sO78MkP56r0nYRw==", + "dev": true, + "requires": { + "has": "^1.0.3" + } + }, + "is-date-object": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", + "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", + "dev": true, + "requires": { + "has-tostringtag": "^1.0.0" + } + }, + "is-docker": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", + "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", + "dev": true + }, + "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 + }, + "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 + }, + "is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dev": true, + "requires": { + "is-extglob": "^2.1.1" + } + }, + "is-interactive": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-1.0.0.tgz", + "integrity": "sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==", + "dev": true + }, + "is-ip": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-ip/-/is-ip-3.1.0.tgz", + "integrity": "sha512-35vd5necO7IitFPjd/YBeqwWnyDWbuLH9ZXQdMfDA8TEo7pv5X8yfrvVO3xbJbLUlERCMvf6X0hTUamQxCYJ9Q==", + "dev": true, + "requires": { + "ip-regex": "^4.0.0" + } + }, + "is-lambda": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-lambda/-/is-lambda-1.0.1.tgz", + "integrity": "sha1-PZh3iZ5qU+/AFgUEzeFfgubwYdU=", + "dev": true + }, + "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 + }, + "is-path-cwd": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-2.2.0.tgz", + "integrity": "sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ==", + "dev": true + }, + "is-path-inside": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", + "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", + "dev": true + }, + "is-plain-obj": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-3.0.0.tgz", + "integrity": "sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==", + "dev": true + }, + "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, + "requires": { + "isobject": "^3.0.1" + } + }, + "is-regex": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", + "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + } + }, + "is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "dev": true + }, + "is-unicode-supported": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", + "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", + "dev": true + }, + "is-what": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/is-what/-/is-what-3.14.1.tgz", + "integrity": "sha512-sNxgpk9793nzSs7bA6JQJGeIuRBQhAaNGG77kzYQgMkrID+lS6SlK07K5LaptscDlSaIgH+GPFzf+d75FVxozA==", + "dev": true + }, + "is-wsl": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", + "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", + "dev": true, + "requires": { + "is-docker": "^2.0.0" + } + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true + }, + "isbinaryfile": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-4.0.8.tgz", + "integrity": "sha512-53h6XFniq77YdW+spoRrebh0mnmTxRPTlcuIArO57lmMdq4uBKFKaeTjnb92oYWrSn/LVL+LT+Hap2tFQj8V+w==", + "dev": true + }, + "isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", + "dev": true + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + }, + "istanbul-lib-coverage": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz", + "integrity": "sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==", + "dev": true + }, + "istanbul-lib-instrument": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.1.0.tgz", + "integrity": "sha512-czwUz525rkOFDJxfKK6mYfIs9zBKILyrZQxjz3ABhjQXhbhFsSbo1HW/BFcsDnfJYJWA6thRR5/TUY2qs5W99Q==", + "dev": true, + "requires": { + "@babel/core": "^7.12.3", + "@babel/parser": "^7.14.7", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^6.3.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, + "istanbul-lib-report": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", + "integrity": "sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==", + "dev": true, + "requires": { + "istanbul-lib-coverage": "^3.0.0", + "make-dir": "^3.0.0", + "supports-color": "^7.1.0" + }, + "dependencies": { + "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 + }, + "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, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "istanbul-lib-source-maps": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", + "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", + "dev": true, + "requires": { + "debug": "^4.1.1", + "istanbul-lib-coverage": "^3.0.0", + "source-map": "^0.6.1" + }, + "dependencies": { + "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 + } + } + }, + "istanbul-reports": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.0.5.tgz", + "integrity": "sha512-5+19PlhnGabNWB7kOFnuxT8H3T/iIyQzIbQMxXsURmmvKg86P2sbkrGOT77VnHw0Qr0gc2XzRaRfMZYYbSQCJQ==", + "dev": true, + "requires": { + "html-escaper": "^2.0.0", + "istanbul-lib-report": "^3.0.0" + } + }, + "jasmine-core": { + "version": "3.8.0", + "resolved": "https://registry.npmjs.org/jasmine-core/-/jasmine-core-3.8.0.tgz", + "integrity": "sha512-zl0nZWDrmbCiKns0NcjkFGYkVTGCPUgoHypTaj+G2AzaWus7QGoXARSlYsSle2VRpSdfJmM+hzmFKzQNhF2kHg==", + "dev": true + }, + "jest-worker": { + "version": "27.3.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.3.1.tgz", + "integrity": "sha512-ks3WCzsiZaOPJl/oMsDjaf0TRiSv7ctNgs0FqRr2nARsovz6AWWy4oLElwcquGSz692DzgZQrCLScPNs5YlC4g==", + "dev": true, + "requires": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "dependencies": { + "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 + }, + "supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "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 + }, + "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, + "requires": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + } + }, + "jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "dev": true + }, + "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 + }, + "json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", + "dev": true + }, + "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 + }, + "json5": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.0.tgz", + "integrity": "sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA==", + "dev": true, + "requires": { + "minimist": "^1.2.5" + } + }, + "jsonc-parser": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.0.0.tgz", + "integrity": "sha512-fQzRfAbIBnR0IQvftw9FJveWiHp72Fg20giDrHz6TdfB12UH/uue0D3hm57UB5KgAVuniLMCaS8P1IMj9NR7cA==", + "dev": true + }, + "jsonfile": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", + "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.6" + } + }, + "jsonparse": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", + "integrity": "sha1-P02uSpH6wxX3EGL4UhzCOfE2YoA=", + "dev": true + }, + "kareem": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/kareem/-/kareem-2.3.2.tgz", + "integrity": "sha512-STHz9P7X2L4Kwn72fA4rGyqyXdmrMSdxqHx9IXon/FXluXieaFA6KJ2upcHAHxQPQ0LeM/OjLrhFxifHewOALQ==" + }, + "karma": { + "version": "6.3.9", + "resolved": "https://registry.npmjs.org/karma/-/karma-6.3.9.tgz", + "integrity": "sha512-E/MqdLM9uVIhfuyVnrhlGBu4miafBdXEAEqCmwdEMh3n17C7UWC/8Kvm3AYKr91gc7scutekZ0xv6rxRaUCtnw==", + "dev": true, + "requires": { + "body-parser": "^1.19.0", + "braces": "^3.0.2", + "chokidar": "^3.5.1", + "colors": "^1.4.0", + "connect": "^3.7.0", + "di": "^0.0.1", + "dom-serialize": "^2.2.1", + "glob": "^7.1.7", + "graceful-fs": "^4.2.6", + "http-proxy": "^1.18.1", + "isbinaryfile": "^4.0.8", + "lodash": "^4.17.21", + "log4js": "^6.3.0", + "mime": "^2.5.2", + "minimatch": "^3.0.4", + "qjobs": "^1.2.0", + "range-parser": "^1.2.1", + "rimraf": "^3.0.2", + "socket.io": "^4.2.0", + "source-map": "^0.6.1", + "tmp": "^0.2.1", + "ua-parser-js": "^0.7.30", + "yargs": "^16.1.1" + }, + "dependencies": { + "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 + }, + "tmp": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz", + "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", + "dev": true, + "requires": { + "rimraf": "^3.0.0" + } + }, + "yargs": { + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "dev": true, + "requires": { + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.0", + "y18n": "^5.0.5", + "yargs-parser": "^20.2.2" + } + } + } + }, + "karma-chrome-launcher": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/karma-chrome-launcher/-/karma-chrome-launcher-3.1.0.tgz", + "integrity": "sha512-3dPs/n7vgz1rxxtynpzZTvb9y/GIaW8xjAwcIGttLbycqoFtI7yo1NGnQi6oFTherRE+GIhCAHZC4vEqWGhNvg==", + "dev": true, + "requires": { + "which": "^1.2.1" + } + }, + "karma-coverage": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/karma-coverage/-/karma-coverage-2.0.3.tgz", + "integrity": "sha512-atDvLQqvPcLxhED0cmXYdsPMCQuh6Asa9FMZW1bhNqlVEhJoB9qyZ2BY1gu7D/rr5GLGb5QzYO4siQskxaWP/g==", + "dev": true, + "requires": { + "istanbul-lib-coverage": "^3.0.0", + "istanbul-lib-instrument": "^4.0.1", + "istanbul-lib-report": "^3.0.0", + "istanbul-lib-source-maps": "^4.0.0", + "istanbul-reports": "^3.0.0", + "minimatch": "^3.0.4" + }, + "dependencies": { + "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, + "requires": { + "@babel/core": "^7.7.5", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.0.0", + "semver": "^6.3.0" + } + }, + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, + "karma-jasmine": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/karma-jasmine/-/karma-jasmine-4.0.1.tgz", + "integrity": "sha512-h8XDAhTiZjJKzfkoO1laMH+zfNlra+dEQHUAjpn5JV1zCPtOIVWGQjLBrqhnzQa/hrU2XrZwSyBa6XjEBzfXzw==", + "dev": true, + "requires": { + "jasmine-core": "^3.6.0" + } + }, + "karma-jasmine-html-reporter": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/karma-jasmine-html-reporter/-/karma-jasmine-html-reporter-1.7.0.tgz", + "integrity": "sha512-pzum1TL7j90DTE86eFt48/s12hqwQuiD+e5aXx2Dc9wDEn2LfGq6RoAxEZZjFiN0RDSCOnosEKRZWxbQ+iMpQQ==", + "dev": true, + "requires": {} + }, + "karma-source-map-support": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/karma-source-map-support/-/karma-source-map-support-1.4.0.tgz", + "integrity": "sha512-RsBECncGO17KAoJCYXjv+ckIz+Ii9NCi+9enk+rq6XC81ezYkb4/RHE6CTXdA7IOJqoF3wcaLfVG0CPmE5ca6A==", + "dev": true, + "requires": { + "source-map-support": "^0.5.5" + } + }, + "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 + }, + "klona": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/klona/-/klona-2.0.5.tgz", + "integrity": "sha512-pJiBpiXMbt7dkzXe8Ghj/u4FfXOOa98fPW+bihOJ4SjnoijweJrNThJfd3ifXpXhREjpoF2mZVH1GfS9LV3kHQ==", + "dev": true + }, + "koa-basic-auth": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/koa-basic-auth/-/koa-basic-auth-4.0.0.tgz", + "integrity": "sha512-eV1sGVAizDuFWNpY43VF3Z1ND4PotQZB/igxHNrcJXzXw+Flmj8Uv+4hP9LyNXyvqLJz/X5bmXeMu84AAGD9Jw==", + "requires": { + "basic-auth": "^2.0.0", + "tsscmp": "^1.0.6" + } + }, + "less": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/less/-/less-4.1.2.tgz", + "integrity": "sha512-EoQp/Et7OSOVu0aJknJOtlXZsnr8XE8KwuzTHOLeVSEx8pVWUICc8Q0VYRHgzyjX78nMEyC/oztWFbgyhtNfDA==", + "dev": true, + "requires": { + "copy-anything": "^2.0.1", + "errno": "^0.1.1", + "graceful-fs": "^4.1.2", + "image-size": "~0.5.0", + "make-dir": "^2.1.0", + "mime": "^1.4.1", + "needle": "^2.5.2", + "parse-node-version": "^1.0.1", + "source-map": "~0.6.0", + "tslib": "^2.3.0" + }, + "dependencies": { + "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, + "optional": true, + "requires": { + "pify": "^4.0.1", + "semver": "^5.6.0" + } + }, + "mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "dev": true, + "optional": true + }, + "pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "dev": true, + "optional": true + }, + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true, + "optional": true + }, + "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 + } + } + }, + "less-loader": { + "version": "10.2.0", + "resolved": "https://registry.npmjs.org/less-loader/-/less-loader-10.2.0.tgz", + "integrity": "sha512-AV5KHWvCezW27GT90WATaDnfXBv99llDbtaj4bshq6DvAihMdNjaPDcUMa6EXKLRF+P2opFenJp89BXg91XLYg==", + "dev": true, + "requires": { + "klona": "^2.0.4" + } + }, + "license-webpack-plugin": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/license-webpack-plugin/-/license-webpack-plugin-3.0.0.tgz", + "integrity": "sha512-Owp0mXaJu/09h9hvZTazMni/Ni7bjh4R4xIfLhWP1O2wrhhKtezAA8U42TTeNDpyDMUD2ljeGC8Jh9xSFnyq4Q==", + "dev": true + }, + "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 + }, + "loader-runner": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.2.0.tgz", + "integrity": "sha512-92+huvxMvYlMzMt0iIOukcwYBFpkYJdpl2xsZ7LrlayO7E8SOv+JJUEK17B/dJIHAOLMfh2dZZ/Y18WgmGtYNw==", + "dev": true + }, + "loader-utils": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-3.0.0.tgz", + "integrity": "sha512-ry4RE7qen73BFLgihlbyllGIW9SVWLUD5Cq9VWtzrqhntOMOJl8yEjA89d5mCUTT0puCnHo4EecO6bz+BOAS8w==", + "dev": true, + "requires": { + "big.js": "^6.1.1" + } + }, + "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, + "requires": { + "p-locate": "^4.1.0" + } + }, + "lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "dev": true + }, + "lodash.debounce": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", + "integrity": "sha1-gteb/zCmfEAF/9XiUVMArZyk168=", + "dev": true + }, + "log-symbols": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", + "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", + "dev": true, + "requires": { + "chalk": "^4.1.0", + "is-unicode-supported": "^0.1.0" + }, + "dependencies": { + "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, + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "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, + "requires": { + "color-name": "~1.1.4" + } + }, + "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 + }, + "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 + }, + "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, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "log4js": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/log4js/-/log4js-6.3.0.tgz", + "integrity": "sha512-Mc8jNuSFImQUIateBFwdOQcmC6Q5maU0VVvdC2R6XMb66/VnT+7WS4D/0EeNMZu1YODmJe5NIn2XftCzEocUgw==", + "dev": true, + "requires": { + "date-format": "^3.0.0", + "debug": "^4.1.1", + "flatted": "^2.0.1", + "rfdc": "^1.1.4", + "streamroller": "^2.2.4" + } + }, + "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, + "requires": { + "yallist": "^4.0.0" + } + }, + "magic-string": { + "version": "0.25.7", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.7.tgz", + "integrity": "sha512-4CrMT5DOHTDk4HYDlzmwu4FVCcIYI8gauveasrdCu2IKIFOJ3f0v/8MDGJCDL9oD2ppz/Av1b0Nj345H9M+XIA==", + "dev": true, + "requires": { + "sourcemap-codec": "^1.4.4" + } + }, + "make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "requires": { + "semver": "^6.0.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, + "make-fetch-happen": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-9.1.0.tgz", + "integrity": "sha512-+zopwDy7DNknmwPQplem5lAZX/eCOzSvSNNcSKm5eVwTkOBzoktEfXsa9L23J/GIRhxRsaxzkPEhrJEpE2F4Gg==", + "dev": true, + "requires": { + "agentkeepalive": "^4.1.3", + "cacache": "^15.2.0", + "http-cache-semantics": "^4.1.0", + "http-proxy-agent": "^4.0.1", + "https-proxy-agent": "^5.0.0", + "is-lambda": "^1.0.1", + "lru-cache": "^6.0.0", + "minipass": "^3.1.3", + "minipass-collect": "^1.0.2", + "minipass-fetch": "^1.3.2", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^0.6.2", + "promise-retry": "^2.0.1", + "socks-proxy-agent": "^6.0.0", + "ssri": "^8.0.0" + } + }, + "material-design-icons": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/material-design-icons/-/material-design-icons-3.0.1.tgz", + "integrity": "sha1-mnHEh0chjrylHlGmbaaCA4zct78=" + }, + "media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=", + "dev": true + }, + "memfs": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/memfs/-/memfs-3.3.0.tgz", + "integrity": "sha512-BEE62uMfKOavX3iG7GYX43QJ+hAeeWnwIAuJ/R6q96jaMtiLzhsxHJC8B1L7fK7Pt/vXDRwb3SG/yBpNGDPqzg==", + "dev": true, + "requires": { + "fs-monkey": "1.0.3" + } + }, + "memory-pager": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/memory-pager/-/memory-pager-1.5.0.tgz", + "integrity": "sha512-ZS4Bp4r/Zoeq6+NLJpP+0Zzm0pR8whtGPf1XExKLJBAczGMnSi3It14OiNCStjQjM6NU1okjQGSxgEZN8eBYKg==", + "optional": true + }, + "merge-descriptors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", + "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=", + "dev": true + }, + "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 + }, + "merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "dev": true + }, + "methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=", + "dev": true + }, + "micromatch": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz", + "integrity": "sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==", + "dev": true, + "requires": { + "braces": "^3.0.1", + "picomatch": "^2.2.3" + } + }, + "mime": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.6.0.tgz", + "integrity": "sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==", + "dev": true + }, + "mime-db": { + "version": "1.51.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.51.0.tgz", + "integrity": "sha512-5y8A56jg7XVQx2mbv1lu49NR4dokRnhZYTtL+KGfaa27uq4pSTXkwQkFJl4pkRMyNFz/EtYDSkiiEHx3F7UN6g==", + "dev": true + }, + "mime-types": { + "version": "2.1.34", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.34.tgz", + "integrity": "sha512-6cP692WwGIs9XXdOO4++N+7qjqv0rqxxVvJ3VHPh/Sc9mVZcQP+ZGhkKiTvWMQRr2tbHkJP/Yn7Y0npb3ZBs4A==", + "dev": true, + "requires": { + "mime-db": "1.51.0" + } + }, + "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 + }, + "mini-css-extract-plugin": { + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-2.4.3.tgz", + "integrity": "sha512-zekavl9mZuGyk7COjsfFY/f655AX61EKE0AthXPrmDk+oZyjZ9WzO4WPjXnnO9xl8obK2kmM6rAQrBEmk+WK1g==", + "dev": true, + "requires": { + "schema-utils": "^3.1.0" + }, + "dependencies": { + "ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "requires": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + } + }, + "ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "dev": true, + "requires": {} + }, + "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 + }, + "schema-utils": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", + "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", + "dev": true, + "requires": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + } + } + } + }, + "minimalistic-assert": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", + "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", + "dev": true + }, + "minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "dev": true, + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "minimist": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", + "dev": true + }, + "minipass": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.1.5.tgz", + "integrity": "sha512-+8NzxD82XQoNKNrl1d/FSi+X8wAEWR+sbYAfIvub4Nz0d22plFG72CEVVaufV8PNf4qSslFTD8VMOxNVhHCjTw==", + "dev": true, + "requires": { + "yallist": "^4.0.0" + } + }, + "minipass-collect": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-1.0.2.tgz", + "integrity": "sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==", + "dev": true, + "requires": { + "minipass": "^3.0.0" + } + }, + "minipass-fetch": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-1.4.1.tgz", + "integrity": "sha512-CGH1eblLq26Y15+Azk7ey4xh0J/XfJfrCox5LDJiKqI2Q2iwOLOKrlmIaODiSQS8d18jalF6y2K2ePUm0CmShw==", + "dev": true, + "requires": { + "encoding": "^0.1.12", + "minipass": "^3.1.0", + "minipass-sized": "^1.0.3", + "minizlib": "^2.0.0" + } + }, + "minipass-flush": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz", + "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==", + "dev": true, + "requires": { + "minipass": "^3.0.0" + } + }, + "minipass-json-stream": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minipass-json-stream/-/minipass-json-stream-1.0.1.tgz", + "integrity": "sha512-ODqY18UZt/I8k+b7rl2AENgbWE8IDYam+undIJONvigAz8KR5GWblsFTEfQs0WODsjbSXWlm+JHEv8Gr6Tfdbg==", + "dev": true, + "requires": { + "jsonparse": "^1.3.1", + "minipass": "^3.0.0" + } + }, + "minipass-pipeline": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", + "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==", + "dev": true, + "requires": { + "minipass": "^3.0.0" + } + }, + "minipass-sized": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/minipass-sized/-/minipass-sized-1.0.3.tgz", + "integrity": "sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g==", + "dev": true, + "requires": { + "minipass": "^3.0.0" + } + }, + "minizlib": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", + "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", + "dev": true, + "requires": { + "minipass": "^3.0.0", + "yallist": "^4.0.0" + } + }, + "mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "dev": true + }, + "mongodb": { + "version": "4.1.4", + "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-4.1.4.tgz", + "integrity": "sha512-Cv/sk8on/tpvvqbEvR1h03mdyNdyvvO+WhtFlL4jrZ+DSsN/oSQHVqmJQI/sBCqqbOArFcYCAYDfyzqFwV4GSQ==", + "requires": { + "bson": "^4.5.4", + "denque": "^2.0.1", + "mongodb-connection-string-url": "^2.1.0", + "saslprep": "^1.0.3" + } + }, + "mongodb-connection-string-url": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/mongodb-connection-string-url/-/mongodb-connection-string-url-2.2.0.tgz", + "integrity": "sha512-U0cDxLUrQrl7DZA828CA+o69EuWPWEJTwdMPozyd7cy/dbtncUZczMw7wRHcwMD7oKOn0NM2tF9jdf5FFVW9CA==", + "requires": { + "@types/whatwg-url": "^8.2.1", + "whatwg-url": "^11.0.0" + } + }, + "mongoose": { + "version": "6.0.13", + "resolved": "https://registry.npmjs.org/mongoose/-/mongoose-6.0.13.tgz", + "integrity": "sha512-/M/YKgx23fCX+j0lwObaHbCibXnMjyWeQrXZf0WaQeS/hL86wQVSmaOxh+kZXfyLOUr+vT2Hl44o50GZHUrKWw==", + "requires": { + "bson": "^4.2.2", + "kareem": "2.3.2", + "mongodb": "4.1.4", + "mpath": "0.8.4", + "mquery": "4.0.0", + "ms": "2.1.2", + "regexp-clone": "1.0.0", + "sift": "13.5.2", + "sliced": "1.0.1" + } + }, + "mpath": { + "version": "0.8.4", + "resolved": "https://registry.npmjs.org/mpath/-/mpath-0.8.4.tgz", + "integrity": "sha512-DTxNZomBcTWlrMW76jy1wvV37X/cNNxPW1y2Jzd4DZkAaC5ZGsm8bfGfNOthcDuRJujXLqiuS6o3Tpy0JEoh7g==" + }, + "mquery": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/mquery/-/mquery-4.0.0.tgz", + "integrity": "sha512-nGjm89lHja+T/b8cybAby6H0YgA4qYC/lx6UlwvHGqvTq8bDaNeCwl1sY8uRELrNbVWJzIihxVd+vphGGn1vBw==", + "requires": { + "debug": "4.x", + "regexp-clone": "^1.0.0", + "sliced": "1.0.1" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + }, + "multicast-dns": { + "version": "6.2.3", + "resolved": "https://registry.npmjs.org/multicast-dns/-/multicast-dns-6.2.3.tgz", + "integrity": "sha512-ji6J5enbMyGRHIAkAOu3WdV8nggqviKCEKtXcOqfphZZtQrmHKycfynJ2V7eVPUA4NhJ6V7Wf4TmGbTwKE9B6g==", + "dev": true, + "requires": { + "dns-packet": "^1.3.1", + "thunky": "^1.0.2" + } + }, + "multicast-dns-service-types": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/multicast-dns-service-types/-/multicast-dns-service-types-1.1.0.tgz", + "integrity": "sha1-iZ8R2WhuXgXLkbNdXw5jt3PPyQE=", + "dev": true + }, + "mute-stream": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", + "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", + "dev": true + }, + "nanoid": { + "version": "3.1.30", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.30.tgz", + "integrity": "sha512-zJpuPDwOv8D2zq2WRoMe1HsfZthVewpel9CAvTfc/2mBD1uUT/agc5f7GHGWXlYkFvi1mVxe4IjvP2HNrop7nQ==", + "dev": true + }, + "needle": { + "version": "2.9.1", + "resolved": "https://registry.npmjs.org/needle/-/needle-2.9.1.tgz", + "integrity": "sha512-6R9fqJ5Zcmf+uYaFgdIHmLwNldn5HbK8L5ybn7Uz+ylX/rnOsSp1AHcvQSrCaFN+qNM1wpymHqD7mVasEOlHGQ==", + "dev": true, + "optional": true, + "requires": { + "debug": "^3.2.6", + "iconv-lite": "^0.4.4", + "sax": "^1.2.4" + }, + "dependencies": { + "debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "optional": true, + "requires": { + "ms": "^2.1.1" + } + } + } + }, + "negotiator": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz", + "integrity": "sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==", + "dev": true + }, + "neo-async": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", + "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", + "dev": true + }, + "nice-napi": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/nice-napi/-/nice-napi-1.0.2.tgz", + "integrity": "sha512-px/KnJAJZf5RuBGcfD+Sp2pAKq0ytz8j+1NehvgIGFkvtvFrDM3T8E4x/JJODXK9WZow8RRGrbA9QQ3hs+pDhA==", + "dev": true, + "optional": true, + "requires": { + "node-addon-api": "^3.0.0", + "node-gyp-build": "^4.2.2" + } + }, + "node-addon-api": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-3.2.1.tgz", + "integrity": "sha512-mmcei9JghVNDYydghQmeDX8KoAm0FAiYyIcUt/N4nhyAipB17pllZQDOJD2fotxABnt4Mdz+dKTO7eftLg4d0A==", + "dev": true, + "optional": true + }, + "node-forge": { + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.10.0.tgz", + "integrity": "sha512-PPmu8eEeG9saEUvI97fm4OYxXVB6bFvyNTyiUOBichBpFG8A1Ljw3bY62+5oOjDEMHRnd0Y7HQ+x7uzxOzC6JA==", + "dev": true + }, + "node-gyp": { + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-8.4.0.tgz", + "integrity": "sha512-Bi/oCm5bH6F+FmzfUxJpPaxMEyIhszULGR3TprmTeku8/dMFcdTcypk120NeZqEt54r1BrgEKtm2jJiuIKE28Q==", + "dev": true, + "requires": { + "env-paths": "^2.2.0", + "glob": "^7.1.4", + "graceful-fs": "^4.2.6", + "make-fetch-happen": "^9.1.0", + "nopt": "^5.0.0", + "npmlog": "^4.1.2", + "rimraf": "^3.0.2", + "semver": "^7.3.5", + "tar": "^6.1.2", + "which": "^2.0.2" + }, + "dependencies": { + "which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "requires": { + "isexe": "^2.0.0" + } + } + } + }, + "node-gyp-build": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.3.0.tgz", + "integrity": "sha512-iWjXZvmboq0ja1pUGULQBexmxq8CV4xBhX7VDOTbL7ZR4FOowwY/VOtRxBN/yKxmdGoIp4j5ysNT4u3S2pDQ3Q==", + "dev": true, + "optional": true + }, + "node-releases": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.1.tgz", + "integrity": "sha512-CqyzN6z7Q6aMeF/ktcMVTzhAHCEpf8SOarwpzpf8pNBY2k5/oM34UHldUwp8VKI7uxct2HxSRdJjBaZeESzcxA==", + "dev": true + }, + "nopt": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz", + "integrity": "sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==", + "dev": true, + "requires": { + "abbrev": "1" + } + }, + "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 + }, + "normalize-range": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", + "integrity": "sha1-LRDAa9/TEuqXd2laTShDlFa3WUI=", + "dev": true + }, + "npm-bundled": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-1.1.2.tgz", + "integrity": "sha512-x5DHup0SuyQcmL3s7Rx/YQ8sbw/Hzg0rj48eN0dV7hf5cmQq5PXIeioroH3raV1QC1yh3uTYuMThvEQF3iKgGQ==", + "dev": true, + "requires": { + "npm-normalize-package-bin": "^1.0.1" + } + }, + "npm-install-checks": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-4.0.0.tgz", + "integrity": "sha512-09OmyDkNLYwqKPOnbI8exiOZU2GVVmQp7tgez2BPi5OZC8M82elDAps7sxC4l//uSUtotWqoEIDwjRvWH4qz8w==", + "dev": true, + "requires": { + "semver": "^7.1.1" + } + }, + "npm-normalize-package-bin": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-1.0.1.tgz", + "integrity": "sha512-EPfafl6JL5/rU+ot6P3gRSCpPDW5VmIzX959Ob1+ySFUuuYHWHekXpwdUZcKP5C+DS4GEtdJluwBjnsNDl+fSA==", + "dev": true + }, + "npm-package-arg": { + "version": "8.1.5", + "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-8.1.5.tgz", + "integrity": "sha512-LhgZrg0n0VgvzVdSm1oiZworPbTxYHUJCgtsJW8mGvlDpxTM1vSJc3m5QZeUkhAHIzbz3VCHd/R4osi1L1Tg/Q==", + "dev": true, + "requires": { + "hosted-git-info": "^4.0.1", + "semver": "^7.3.4", + "validate-npm-package-name": "^3.0.0" + } + }, + "npm-packlist": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-3.0.0.tgz", + "integrity": "sha512-L/cbzmutAwII5glUcf2DBRNY/d0TFd4e/FnaZigJV6JD85RHZXJFGwCndjMWiiViiWSsWt3tiOLpI3ByTnIdFQ==", + "dev": true, + "requires": { + "glob": "^7.1.6", + "ignore-walk": "^4.0.1", + "npm-bundled": "^1.1.1", + "npm-normalize-package-bin": "^1.0.1" + } + }, + "npm-pick-manifest": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-6.1.1.tgz", + "integrity": "sha512-dBsdBtORT84S8V8UTad1WlUyKIY9iMsAmqxHbLdeEeBNMLQDlDWWra3wYUx9EBEIiG/YwAy0XyNHDd2goAsfuA==", + "dev": true, + "requires": { + "npm-install-checks": "^4.0.0", + "npm-normalize-package-bin": "^1.0.1", + "npm-package-arg": "^8.1.2", + "semver": "^7.3.4" + } + }, + "npm-registry-fetch": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-11.0.0.tgz", + "integrity": "sha512-jmlgSxoDNuhAtxUIG6pVwwtz840i994dL14FoNVZisrmZW5kWd63IUTNv1m/hyRSGSqWjCUp/YZlS1BJyNp9XA==", + "dev": true, + "requires": { + "make-fetch-happen": "^9.0.1", + "minipass": "^3.1.3", + "minipass-fetch": "^1.3.0", + "minipass-json-stream": "^1.0.1", + "minizlib": "^2.0.0", + "npm-package-arg": "^8.0.0" + } + }, + "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, + "requires": { + "path-key": "^3.0.0" + } + }, + "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, + "requires": { + "are-we-there-yet": "~1.1.2", + "console-control-strings": "~1.1.0", + "gauge": "~2.7.3", + "set-blocking": "~2.0.0" + } + }, + "nth-check": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.0.1.tgz", + "integrity": "sha512-it1vE95zF6dTT9lBsYbxvqh0Soy4SPowchj0UBGj/V6cTPnXXtQOPUbhZ6CmGzAD/rW22LQK6E96pcdJXk4A4w==", + "dev": true, + "requires": { + "boolbase": "^1.0.0" + } + }, + "num2fraction": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/num2fraction/-/num2fraction-1.2.2.tgz", + "integrity": "sha1-b2gragJ6Tp3fpFZM0lidHU5mnt4=", + "dev": true + }, + "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 + }, + "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 + }, + "object-is": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.5.tgz", + "integrity": "sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3" + } + }, + "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 + }, + "object.assign": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz", + "integrity": "sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==", + "dev": true, + "requires": { + "call-bind": "^1.0.0", + "define-properties": "^1.1.3", + "has-symbols": "^1.0.1", + "object-keys": "^1.1.1" + } + }, + "obuf": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz", + "integrity": "sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==", + "dev": true + }, + "on-finished": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", + "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", + "dev": true, + "requires": { + "ee-first": "1.1.1" + } + }, + "on-headers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", + "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==", + "dev": true + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "dev": true, + "requires": { + "wrappy": "1" + } + }, + "onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "dev": true, + "requires": { + "mimic-fn": "^2.1.0" + } + }, + "open": { + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/open/-/open-8.4.0.tgz", + "integrity": "sha512-XgFPPM+B28FtCCgSb9I+s9szOC1vZRSwgWsRUA5ylIxRTgKozqjOCrVOqGsYABPYK5qnfqClxZTFBa8PKt2v6Q==", + "dev": true, + "requires": { + "define-lazy-prop": "^2.0.0", + "is-docker": "^2.1.1", + "is-wsl": "^2.2.0" + } + }, + "ora": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/ora/-/ora-5.4.1.tgz", + "integrity": "sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==", + "dev": true, + "requires": { + "bl": "^4.1.0", + "chalk": "^4.1.0", + "cli-cursor": "^3.1.0", + "cli-spinners": "^2.5.0", + "is-interactive": "^1.0.0", + "is-unicode-supported": "^0.1.0", + "log-symbols": "^4.1.0", + "strip-ansi": "^6.0.0", + "wcwidth": "^1.0.1" + }, + "dependencies": { + "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, + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "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, + "requires": { + "color-name": "~1.1.4" + } + }, + "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 + }, + "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 + }, + "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, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "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 + }, + "p-event": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/p-event/-/p-event-4.2.0.tgz", + "integrity": "sha512-KXatOjCRXXkSePPb1Nbi0p0m+gQAwdlbhi4wQKJPI1HsMQS9g+Sqp2o+QHziPr7eYJyOZet836KoHEVM1mwOrQ==", + "dev": true, + "requires": { + "p-timeout": "^3.1.0" + } + }, + "p-finally": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", + "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", + "dev": true + }, + "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, + "requires": { + "yocto-queue": "^0.1.0" + } + }, + "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, + "requires": { + "p-limit": "^2.2.0" + }, + "dependencies": { + "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, + "requires": { + "p-try": "^2.0.0" + } + } + } + }, + "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, + "requires": { + "aggregate-error": "^3.0.0" + } + }, + "p-retry": { + "version": "4.6.1", + "resolved": "https://registry.npmjs.org/p-retry/-/p-retry-4.6.1.tgz", + "integrity": "sha512-e2xXGNhZOZ0lfgR9kL34iGlU8N/KO0xZnQxVEwdeOvpqNDQfdnxIYizvWtK8RglUa3bGqI8g0R/BdfzLMxRkiA==", + "dev": true, + "requires": { + "@types/retry": "^0.12.0", + "retry": "^0.13.1" + }, + "dependencies": { + "retry": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz", + "integrity": "sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==", + "dev": true + } + } + }, + "p-timeout": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-3.2.0.tgz", + "integrity": "sha512-rhIwUycgwwKcP9yTOOFK/AKsAopjjCakVqLHePO3CC6Mir1Z99xT+R63jZxAT5lFZLa2inS5h+ZS2GvR99/FBg==", + "dev": true, + "requires": { + "p-finally": "^1.0.0" + } + }, + "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 + }, + "pacote": { + "version": "12.0.2", + "resolved": "https://registry.npmjs.org/pacote/-/pacote-12.0.2.tgz", + "integrity": "sha512-Ar3mhjcxhMzk+OVZ8pbnXdb0l8+pimvlsqBGRNkble2NVgyqOGE3yrCGi/lAYq7E7NRDMz89R1Wx5HIMCGgeYg==", + "dev": true, + "requires": { + "@npmcli/git": "^2.1.0", + "@npmcli/installed-package-contents": "^1.0.6", + "@npmcli/promise-spawn": "^1.2.0", + "@npmcli/run-script": "^2.0.0", + "cacache": "^15.0.5", + "chownr": "^2.0.0", + "fs-minipass": "^2.1.0", + "infer-owner": "^1.0.4", + "minipass": "^3.1.3", + "mkdirp": "^1.0.3", + "npm-package-arg": "^8.0.1", + "npm-packlist": "^3.0.0", + "npm-pick-manifest": "^6.0.0", + "npm-registry-fetch": "^11.0.0", + "promise-retry": "^2.0.1", + "read-package-json-fast": "^2.0.1", + "rimraf": "^3.0.2", + "ssri": "^8.0.1", + "tar": "^6.1.0" + } + }, + "pako": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", + "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==", + "dev": true + }, + "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, + "requires": { + "callsites": "^3.0.0" + } + }, + "parse-json": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "dev": true, + "requires": { + "@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" + } + }, + "parse-node-version": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parse-node-version/-/parse-node-version-1.0.1.tgz", + "integrity": "sha512-3YHlOa/JgH6Mnpr05jP9eDG254US9ek25LyIxZlDItp2iJtwyaXQb57lBYLdT3MowkUFYEV2XXNAYIPlESvJlA==", + "dev": true + }, + "parse5": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-5.1.1.tgz", + "integrity": "sha512-ugq4DFI0Ptb+WWjAdOK16+u/nHfiIrcE+sh8kZMaM0WllQKLI9rOUq6c2b7cwPkXdzfQESqvoqK6ug7U/Yyzug==", + "optional": true + }, + "parse5-html-rewriting-stream": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5-html-rewriting-stream/-/parse5-html-rewriting-stream-6.0.1.tgz", + "integrity": "sha512-vwLQzynJVEfUlURxgnf51yAJDQTtVpNyGD8tKi2Za7m+akukNHxCcUQMAa/mUGLhCeicFdpy7Tlvj8ZNKadprg==", + "dev": true, + "requires": { + "parse5": "^6.0.1", + "parse5-sax-parser": "^6.0.1" + }, + "dependencies": { + "parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", + "dev": true + } + } + }, + "parse5-htmlparser2-tree-adapter": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-6.0.1.tgz", + "integrity": "sha512-qPuWvbLgvDGilKc5BoicRovlT4MtYT6JfJyBOMDsKoiT+GiuP5qyrPCnR9HcPECIJJmZh5jRndyNThnhhb/vlA==", + "dev": true, + "requires": { + "parse5": "^6.0.1" + }, + "dependencies": { + "parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", + "dev": true + } + } + }, + "parse5-sax-parser": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5-sax-parser/-/parse5-sax-parser-6.0.1.tgz", + "integrity": "sha512-kXX+5S81lgESA0LsDuGjAlBybImAChYRMT+/uKCEXFBFOeEhS52qUCydGhU3qLRD8D9DVjaUo821WK7DM4iCeg==", + "dev": true, + "requires": { + "parse5": "^6.0.1" + }, + "dependencies": { + "parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", + "dev": true + } + } + }, + "parseurl": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", + "dev": true + }, + "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 + }, + "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 + }, + "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 + }, + "path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "dev": true + }, + "path-to-regexp": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", + "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=", + "dev": true + }, + "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 + }, + "picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", + "dev": true + }, + "picomatch": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.0.tgz", + "integrity": "sha512-lY1Q/PiJGC2zOv/z391WOTD+Z02bCgsFfvxoXXf6h7kv9o+WmsmzYqrAwY63sNgOxE4xEdq0WyUnXfKeBrSvYw==", + "dev": true + }, + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true + }, + "piscina": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/piscina/-/piscina-3.1.0.tgz", + "integrity": "sha512-KTW4sjsCD34MHrUbx9eAAbuUSpVj407hQSgk/6Epkg0pbRBmv4a3UX7Sr8wxm9xYqQLnsN4mFOjqGDzHAdgKQg==", + "dev": true, + "requires": { + "eventemitter-asyncresource": "^1.0.0", + "hdr-histogram-js": "^2.0.1", + "hdr-histogram-percentiles-obj": "^3.0.0", + "nice-napi": "^1.0.2" + } + }, + "pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "dev": true, + "requires": { + "find-up": "^4.0.0" + } + }, + "portfinder": { + "version": "1.0.28", + "resolved": "https://registry.npmjs.org/portfinder/-/portfinder-1.0.28.tgz", + "integrity": "sha512-Se+2isanIcEqf2XMHjyUKskczxbPH7dQnlMjXX6+dybayyHvAf/TCgyMRlzf/B6QDhAEFOGes0pzRo3by4AbMA==", + "dev": true, + "requires": { + "async": "^2.6.2", + "debug": "^3.1.1", + "mkdirp": "^0.5.5" + }, + "dependencies": { + "async": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.3.tgz", + "integrity": "sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==", + "dev": true, + "requires": { + "lodash": "^4.17.14" + } + }, + "debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "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, + "requires": { + "minimist": "^1.2.5" + } + } + } + }, + "postcss": { + "version": "8.3.11", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.3.11.tgz", + "integrity": "sha512-hCmlUAIlUiav8Xdqw3Io4LcpA1DOt7h3LSTAC4G6JGHFFaWzI6qvFt9oilvl8BmkbBRX1IhM90ZAmpk68zccQA==", + "dev": true, + "requires": { + "nanoid": "^3.1.30", + "picocolors": "^1.0.0", + "source-map-js": "^0.6.2" + } + }, + "postcss-attribute-case-insensitive": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-attribute-case-insensitive/-/postcss-attribute-case-insensitive-4.0.2.tgz", + "integrity": "sha512-clkFxk/9pcdb4Vkn0hAHq3YnxBQ2p0CGD1dy24jN+reBck+EWxMbxSUqN4Yj7t0w8csl87K6p0gxBe1utkJsYA==", + "dev": true, + "requires": { + "postcss": "^7.0.2", + "postcss-selector-parser": "^6.0.2" + }, + "dependencies": { + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + }, + "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 + } + } + }, + "postcss-color-functional-notation": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/postcss-color-functional-notation/-/postcss-color-functional-notation-2.0.1.tgz", + "integrity": "sha512-ZBARCypjEDofW4P6IdPVTLhDNXPRn8T2s1zHbZidW6rPaaZvcnCS2soYFIQJrMZSxiePJ2XIYTlcb2ztr/eT2g==", + "dev": true, + "requires": { + "postcss": "^7.0.2", + "postcss-values-parser": "^2.0.0" + }, + "dependencies": { + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + }, + "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 + } + } + }, + "postcss-color-gray": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/postcss-color-gray/-/postcss-color-gray-5.0.0.tgz", + "integrity": "sha512-q6BuRnAGKM/ZRpfDascZlIZPjvwsRye7UDNalqVz3s7GDxMtqPY6+Q871liNxsonUw8oC61OG+PSaysYpl1bnw==", + "dev": true, + "requires": { + "@csstools/convert-colors": "^1.4.0", + "postcss": "^7.0.5", + "postcss-values-parser": "^2.0.0" + }, + "dependencies": { + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + }, + "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 + } + } + }, + "postcss-color-hex-alpha": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/postcss-color-hex-alpha/-/postcss-color-hex-alpha-5.0.3.tgz", + "integrity": "sha512-PF4GDel8q3kkreVXKLAGNpHKilXsZ6xuu+mOQMHWHLPNyjiUBOr75sp5ZKJfmv1MCus5/DWUGcK9hm6qHEnXYw==", + "dev": true, + "requires": { + "postcss": "^7.0.14", + "postcss-values-parser": "^2.0.1" + }, + "dependencies": { + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + }, + "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 + } + } + }, + "postcss-color-mod-function": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/postcss-color-mod-function/-/postcss-color-mod-function-3.0.3.tgz", + "integrity": "sha512-YP4VG+xufxaVtzV6ZmhEtc+/aTXH3d0JLpnYfxqTvwZPbJhWqp8bSY3nfNzNRFLgB4XSaBA82OE4VjOOKpCdVQ==", + "dev": true, + "requires": { + "@csstools/convert-colors": "^1.4.0", + "postcss": "^7.0.2", + "postcss-values-parser": "^2.0.0" + }, + "dependencies": { + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + }, + "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 + } + } + }, + "postcss-color-rebeccapurple": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-color-rebeccapurple/-/postcss-color-rebeccapurple-4.0.1.tgz", + "integrity": "sha512-aAe3OhkS6qJXBbqzvZth2Au4V3KieR5sRQ4ptb2b2O8wgvB3SJBsdG+jsn2BZbbwekDG8nTfcCNKcSfe/lEy8g==", + "dev": true, + "requires": { + "postcss": "^7.0.2", + "postcss-values-parser": "^2.0.0" + }, + "dependencies": { + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + }, + "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 + } + } + }, + "postcss-custom-media": { + "version": "7.0.8", + "resolved": "https://registry.npmjs.org/postcss-custom-media/-/postcss-custom-media-7.0.8.tgz", + "integrity": "sha512-c9s5iX0Ge15o00HKbuRuTqNndsJUbaXdiNsksnVH8H4gdc+zbLzr/UasOwNG6CTDpLFekVY4672eWdiiWu2GUg==", + "dev": true, + "requires": { + "postcss": "^7.0.14" + }, + "dependencies": { + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + }, + "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 + } + } + }, + "postcss-custom-properties": { + "version": "8.0.11", + "resolved": "https://registry.npmjs.org/postcss-custom-properties/-/postcss-custom-properties-8.0.11.tgz", + "integrity": "sha512-nm+o0eLdYqdnJ5abAJeXp4CEU1c1k+eB2yMCvhgzsds/e0umabFrN6HoTy/8Q4K5ilxERdl/JD1LO5ANoYBeMA==", + "dev": true, + "requires": { + "postcss": "^7.0.17", + "postcss-values-parser": "^2.0.1" + }, + "dependencies": { + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + }, + "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 + } + } + }, + "postcss-custom-selectors": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/postcss-custom-selectors/-/postcss-custom-selectors-5.1.2.tgz", + "integrity": "sha512-DSGDhqinCqXqlS4R7KGxL1OSycd1lydugJ1ky4iRXPHdBRiozyMHrdu0H3o7qNOCiZwySZTUI5MV0T8QhCLu+w==", + "dev": true, + "requires": { + "postcss": "^7.0.2", + "postcss-selector-parser": "^5.0.0-rc.3" + }, + "dependencies": { + "cssesc": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-2.0.0.tgz", + "integrity": "sha512-MsCAG1z9lPdoO/IUMLSBWBSVxVtJ1395VGIQ+Fc2gNdkQ1hNDnQdw3YhA71WJCBW1vdwA0cAnk/DnW6bqoEUYg==", + "dev": true + }, + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + }, + "postcss-selector-parser": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-5.0.0.tgz", + "integrity": "sha512-w+zLE5Jhg6Liz8+rQOWEAwtwkyqpfnmsinXjXg6cY7YIONZZtgvE0v2O0uhQBs0peNomOJwWRKt6JBfTdTd3OQ==", + "dev": true, + "requires": { + "cssesc": "^2.0.0", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + } + }, + "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 + } + } + }, + "postcss-dir-pseudo-class": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/postcss-dir-pseudo-class/-/postcss-dir-pseudo-class-5.0.0.tgz", + "integrity": "sha512-3pm4oq8HYWMZePJY+5ANriPs3P07q+LW6FAdTlkFH2XqDdP4HeeJYMOzn0HYLhRSjBO3fhiqSwwU9xEULSrPgw==", + "dev": true, + "requires": { + "postcss": "^7.0.2", + "postcss-selector-parser": "^5.0.0-rc.3" + }, + "dependencies": { + "cssesc": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-2.0.0.tgz", + "integrity": "sha512-MsCAG1z9lPdoO/IUMLSBWBSVxVtJ1395VGIQ+Fc2gNdkQ1hNDnQdw3YhA71WJCBW1vdwA0cAnk/DnW6bqoEUYg==", + "dev": true + }, + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + }, + "postcss-selector-parser": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-5.0.0.tgz", + "integrity": "sha512-w+zLE5Jhg6Liz8+rQOWEAwtwkyqpfnmsinXjXg6cY7YIONZZtgvE0v2O0uhQBs0peNomOJwWRKt6JBfTdTd3OQ==", + "dev": true, + "requires": { + "cssesc": "^2.0.0", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + } + }, + "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 + } + } + }, + "postcss-double-position-gradients": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/postcss-double-position-gradients/-/postcss-double-position-gradients-1.0.0.tgz", + "integrity": "sha512-G+nV8EnQq25fOI8CH/B6krEohGWnF5+3A6H/+JEpOncu5dCnkS1QQ6+ct3Jkaepw1NGVqqOZH6lqrm244mCftA==", + "dev": true, + "requires": { + "postcss": "^7.0.5", + "postcss-values-parser": "^2.0.0" + }, + "dependencies": { + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + }, + "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 + } + } + }, + "postcss-env-function": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/postcss-env-function/-/postcss-env-function-2.0.2.tgz", + "integrity": "sha512-rwac4BuZlITeUbiBq60h/xbLzXY43qOsIErngWa4l7Mt+RaSkT7QBjXVGTcBHupykkblHMDrBFh30zchYPaOUw==", + "dev": true, + "requires": { + "postcss": "^7.0.2", + "postcss-values-parser": "^2.0.0" + }, + "dependencies": { + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + }, + "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 + } + } + }, + "postcss-focus-visible": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-focus-visible/-/postcss-focus-visible-4.0.0.tgz", + "integrity": "sha512-Z5CkWBw0+idJHSV6+Bgf2peDOFf/x4o+vX/pwcNYrWpXFrSfTkQ3JQ1ojrq9yS+upnAlNRHeg8uEwFTgorjI8g==", + "dev": true, + "requires": { + "postcss": "^7.0.2" + }, + "dependencies": { + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + }, + "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 + } + } + }, + "postcss-focus-within": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-focus-within/-/postcss-focus-within-3.0.0.tgz", + "integrity": "sha512-W0APui8jQeBKbCGZudW37EeMCjDeVxKgiYfIIEo8Bdh5SpB9sxds/Iq8SEuzS0Q4YFOlG7EPFulbbxujpkrV2w==", + "dev": true, + "requires": { + "postcss": "^7.0.2" + }, + "dependencies": { + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + }, + "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 + } + } + }, + "postcss-font-variant": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-font-variant/-/postcss-font-variant-4.0.1.tgz", + "integrity": "sha512-I3ADQSTNtLTTd8uxZhtSOrTCQ9G4qUVKPjHiDk0bV75QSxXjVWiJVJ2VLdspGUi9fbW9BcjKJoRvxAH1pckqmA==", + "dev": true, + "requires": { + "postcss": "^7.0.2" + }, + "dependencies": { + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + }, + "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 + } + } + }, + "postcss-gap-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/postcss-gap-properties/-/postcss-gap-properties-2.0.0.tgz", + "integrity": "sha512-QZSqDaMgXCHuHTEzMsS2KfVDOq7ZFiknSpkrPJY6jmxbugUPTuSzs/vuE5I3zv0WAS+3vhrlqhijiprnuQfzmg==", + "dev": true, + "requires": { + "postcss": "^7.0.2" + }, + "dependencies": { + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + }, + "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 + } + } + }, + "postcss-image-set-function": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/postcss-image-set-function/-/postcss-image-set-function-3.0.1.tgz", + "integrity": "sha512-oPTcFFip5LZy8Y/whto91L9xdRHCWEMs3e1MdJxhgt4jy2WYXfhkng59fH5qLXSCPN8k4n94p1Czrfe5IOkKUw==", + "dev": true, + "requires": { + "postcss": "^7.0.2", + "postcss-values-parser": "^2.0.0" + }, + "dependencies": { + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + }, + "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 + } + } + }, + "postcss-import": { + "version": "14.0.2", + "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-14.0.2.tgz", + "integrity": "sha512-BJ2pVK4KhUyMcqjuKs9RijV5tatNzNa73e/32aBVE/ejYPe37iH+6vAu9WvqUkB5OAYgLHzbSvzHnorybJCm9g==", + "dev": true, + "requires": { + "postcss-value-parser": "^4.0.0", + "read-cache": "^1.0.0", + "resolve": "^1.1.7" + } + }, + "postcss-initial": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/postcss-initial/-/postcss-initial-3.0.4.tgz", + "integrity": "sha512-3RLn6DIpMsK1l5UUy9jxQvoDeUN4gP939tDcKUHD/kM8SGSKbFAnvkpFpj3Bhtz3HGk1jWY5ZNWX6mPta5M9fg==", + "dev": true, + "requires": { + "postcss": "^7.0.2" + }, + "dependencies": { + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + }, + "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 + } + } + }, + "postcss-lab-function": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/postcss-lab-function/-/postcss-lab-function-2.0.1.tgz", + "integrity": "sha512-whLy1IeZKY+3fYdqQFuDBf8Auw+qFuVnChWjmxm/UhHWqNHZx+B99EwxTvGYmUBqe3Fjxs4L1BoZTJmPu6usVg==", + "dev": true, + "requires": { + "@csstools/convert-colors": "^1.4.0", + "postcss": "^7.0.2", + "postcss-values-parser": "^2.0.0" + }, + "dependencies": { + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + }, + "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 + } + } + }, + "postcss-loader": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-6.2.0.tgz", + "integrity": "sha512-H9hv447QjQJVDbHj3OUdciyAXY3v5+UDduzEytAlZCVHCpNAAg/mCSwhYYqZr9BiGYhmYspU8QXxZwiHTLn3yA==", + "dev": true, + "requires": { + "cosmiconfig": "^7.0.0", + "klona": "^2.0.4", + "semver": "^7.3.5" + } + }, + "postcss-logical": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-logical/-/postcss-logical-3.0.0.tgz", + "integrity": "sha512-1SUKdJc2vuMOmeItqGuNaC+N8MzBWFWEkAnRnLpFYj1tGGa7NqyVBujfRtgNa2gXR+6RkGUiB2O5Vmh7E2RmiA==", + "dev": true, + "requires": { + "postcss": "^7.0.2" + }, + "dependencies": { + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + }, + "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 + } + } + }, + "postcss-media-minmax": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-media-minmax/-/postcss-media-minmax-4.0.0.tgz", + "integrity": "sha512-fo9moya6qyxsjbFAYl97qKO9gyre3qvbMnkOZeZwlsW6XYFsvs2DMGDlchVLfAd8LHPZDxivu/+qW2SMQeTHBw==", + "dev": true, + "requires": { + "postcss": "^7.0.2" + }, + "dependencies": { + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + }, + "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 + } + } + }, + "postcss-modules-extract-imports": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.0.0.tgz", + "integrity": "sha512-bdHleFnP3kZ4NYDhuGlVK+CMrQ/pqUm8bx/oGL93K6gVwiclvX5x0n76fYMKuIGKzlABOy13zsvqjb0f92TEXw==", + "dev": true, + "requires": {} + }, + "postcss-modules-local-by-default": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.0.tgz", + "integrity": "sha512-sT7ihtmGSF9yhm6ggikHdV0hlziDTX7oFoXtuVWeDd3hHObNkcHRo9V3yg7vCAY7cONyxJC/XXCmmiHHcvX7bQ==", + "dev": true, + "requires": { + "icss-utils": "^5.0.0", + "postcss-selector-parser": "^6.0.2", + "postcss-value-parser": "^4.1.0" + } + }, + "postcss-modules-scope": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-3.0.0.tgz", + "integrity": "sha512-hncihwFA2yPath8oZ15PZqvWGkWf+XUfQgUGamS4LqoP1anQLOsOJw0vr7J7IwLpoY9fatA2qiGUGmuZL0Iqlg==", + "dev": true, + "requires": { + "postcss-selector-parser": "^6.0.4" + } + }, + "postcss-modules-values": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz", + "integrity": "sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==", + "dev": true, + "requires": { + "icss-utils": "^5.0.0" + } + }, + "postcss-nesting": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/postcss-nesting/-/postcss-nesting-7.0.1.tgz", + "integrity": "sha512-FrorPb0H3nuVq0Sff7W2rnc3SmIcruVC6YwpcS+k687VxyxO33iE1amna7wHuRVzM8vfiYofXSBHNAZ3QhLvYg==", + "dev": true, + "requires": { + "postcss": "^7.0.2" + }, + "dependencies": { + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + }, + "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 + } + } + }, + "postcss-overflow-shorthand": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/postcss-overflow-shorthand/-/postcss-overflow-shorthand-2.0.0.tgz", + "integrity": "sha512-aK0fHc9CBNx8jbzMYhshZcEv8LtYnBIRYQD5i7w/K/wS9c2+0NSR6B3OVMu5y0hBHYLcMGjfU+dmWYNKH0I85g==", + "dev": true, + "requires": { + "postcss": "^7.0.2" + }, + "dependencies": { + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + }, + "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 + } + } + }, + "postcss-page-break": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/postcss-page-break/-/postcss-page-break-2.0.0.tgz", + "integrity": "sha512-tkpTSrLpfLfD9HvgOlJuigLuk39wVTbbd8RKcy8/ugV2bNBUW3xU+AIqyxhDrQr1VUj1RmyJrBn1YWrqUm9zAQ==", + "dev": true, + "requires": { + "postcss": "^7.0.2" + }, + "dependencies": { + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + }, + "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 + } + } + }, + "postcss-place": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-place/-/postcss-place-4.0.1.tgz", + "integrity": "sha512-Zb6byCSLkgRKLODj/5mQugyuj9bvAAw9LqJJjgwz5cYryGeXfFZfSXoP1UfveccFmeq0b/2xxwcTEVScnqGxBg==", + "dev": true, + "requires": { + "postcss": "^7.0.2", + "postcss-values-parser": "^2.0.0" + }, + "dependencies": { + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + }, + "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 + } + } + }, + "postcss-preset-env": { + "version": "6.7.0", + "resolved": "https://registry.npmjs.org/postcss-preset-env/-/postcss-preset-env-6.7.0.tgz", + "integrity": "sha512-eU4/K5xzSFwUFJ8hTdTQzo2RBLbDVt83QZrAvI07TULOkmyQlnYlpwep+2yIK+K+0KlZO4BvFcleOCCcUtwchg==", + "dev": true, + "requires": { + "autoprefixer": "^9.6.1", + "browserslist": "^4.6.4", + "caniuse-lite": "^1.0.30000981", + "css-blank-pseudo": "^0.1.4", + "css-has-pseudo": "^0.10.0", + "css-prefers-color-scheme": "^3.1.1", + "cssdb": "^4.4.0", + "postcss": "^7.0.17", + "postcss-attribute-case-insensitive": "^4.0.1", + "postcss-color-functional-notation": "^2.0.1", + "postcss-color-gray": "^5.0.0", + "postcss-color-hex-alpha": "^5.0.3", + "postcss-color-mod-function": "^3.0.3", + "postcss-color-rebeccapurple": "^4.0.1", + "postcss-custom-media": "^7.0.8", + "postcss-custom-properties": "^8.0.11", + "postcss-custom-selectors": "^5.1.2", + "postcss-dir-pseudo-class": "^5.0.0", + "postcss-double-position-gradients": "^1.0.0", + "postcss-env-function": "^2.0.2", + "postcss-focus-visible": "^4.0.0", + "postcss-focus-within": "^3.0.0", + "postcss-font-variant": "^4.0.0", + "postcss-gap-properties": "^2.0.0", + "postcss-image-set-function": "^3.0.1", + "postcss-initial": "^3.0.0", + "postcss-lab-function": "^2.0.1", + "postcss-logical": "^3.0.0", + "postcss-media-minmax": "^4.0.0", + "postcss-nesting": "^7.0.0", + "postcss-overflow-shorthand": "^2.0.0", + "postcss-page-break": "^2.0.0", + "postcss-place": "^4.0.1", + "postcss-pseudo-class-any-link": "^6.0.0", + "postcss-replace-overflow-wrap": "^3.0.0", + "postcss-selector-matches": "^4.0.0", + "postcss-selector-not": "^4.0.0" + }, + "dependencies": { + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + }, + "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 + } + } + }, + "postcss-pseudo-class-any-link": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/postcss-pseudo-class-any-link/-/postcss-pseudo-class-any-link-6.0.0.tgz", + "integrity": "sha512-lgXW9sYJdLqtmw23otOzrtbDXofUdfYzNm4PIpNE322/swES3VU9XlXHeJS46zT2onFO7V1QFdD4Q9LiZj8mew==", + "dev": true, + "requires": { + "postcss": "^7.0.2", + "postcss-selector-parser": "^5.0.0-rc.3" + }, + "dependencies": { + "cssesc": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-2.0.0.tgz", + "integrity": "sha512-MsCAG1z9lPdoO/IUMLSBWBSVxVtJ1395VGIQ+Fc2gNdkQ1hNDnQdw3YhA71WJCBW1vdwA0cAnk/DnW6bqoEUYg==", + "dev": true + }, + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + }, + "postcss-selector-parser": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-5.0.0.tgz", + "integrity": "sha512-w+zLE5Jhg6Liz8+rQOWEAwtwkyqpfnmsinXjXg6cY7YIONZZtgvE0v2O0uhQBs0peNomOJwWRKt6JBfTdTd3OQ==", + "dev": true, + "requires": { + "cssesc": "^2.0.0", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + } + }, + "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 + } + } + }, + "postcss-replace-overflow-wrap": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-replace-overflow-wrap/-/postcss-replace-overflow-wrap-3.0.0.tgz", + "integrity": "sha512-2T5hcEHArDT6X9+9dVSPQdo7QHzG4XKclFT8rU5TzJPDN7RIRTbO9c4drUISOVemLj03aezStHCR2AIcr8XLpw==", + "dev": true, + "requires": { + "postcss": "^7.0.2" + }, + "dependencies": { + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + }, + "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 + } + } + }, + "postcss-selector-matches": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-selector-matches/-/postcss-selector-matches-4.0.0.tgz", + "integrity": "sha512-LgsHwQR/EsRYSqlwdGzeaPKVT0Ml7LAT6E75T8W8xLJY62CE4S/l03BWIt3jT8Taq22kXP08s2SfTSzaraoPww==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0", + "postcss": "^7.0.2" + }, + "dependencies": { + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + }, + "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 + } + } + }, + "postcss-selector-not": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-selector-not/-/postcss-selector-not-4.0.1.tgz", + "integrity": "sha512-YolvBgInEK5/79C+bdFMyzqTg6pkYqDbzZIST/PDMqa/o3qtXenD05apBG2jLgT0/BQ77d4U2UK12jWpilqMAQ==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0", + "postcss": "^7.0.2" + }, + "dependencies": { + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + }, + "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 + } + } + }, + "postcss-selector-parser": { + "version": "6.0.6", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.6.tgz", + "integrity": "sha512-9LXrvaaX3+mcv5xkg5kFwqSzSH1JIObIx51PrndZwlmznwXRfxMddDvo9gve3gVR8ZTKgoFDdWkbRFmEhT4PMg==", + "dev": true, + "requires": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + } + }, + "postcss-value-parser": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.1.0.tgz", + "integrity": "sha512-97DXOFbQJhk71ne5/Mt6cOu6yxsSfM0QGQyl0L25Gca4yGWEGJaig7l7gbCX623VqTBNGLRLaVUCnNkcedlRSQ==", + "dev": true + }, + "postcss-values-parser": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/postcss-values-parser/-/postcss-values-parser-2.0.1.tgz", + "integrity": "sha512-2tLuBsA6P4rYTNKCXYG/71C7j1pU6pK503suYOmn4xYrQIzW+opD+7FAFNuGSdZC/3Qfy334QbeMu7MEb8gOxg==", + "dev": true, + "requires": { + "flatten": "^1.0.2", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + } + }, + "pretty-bytes": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-5.6.0.tgz", + "integrity": "sha512-FFw039TmrBqFK8ma/7OL3sDz/VytdtJr044/QUJtH0wK9lb9jLq9tJyIxUwtQJHwar2BqtiA4iCWSwo9JLkzFg==", + "dev": true + }, + "process-nextick-args": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", + "dev": true + }, + "promise-inflight": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", + "integrity": "sha1-mEcocL8igTL8vdhoEputEsPAKeM=", + "dev": true + }, + "promise-retry": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/promise-retry/-/promise-retry-2.0.1.tgz", + "integrity": "sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g==", + "dev": true, + "requires": { + "err-code": "^2.0.2", + "retry": "^0.12.0" + } + }, + "proxy-addr": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", + "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", + "dev": true, + "requires": { + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1" + }, + "dependencies": { + "ipaddr.js": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", + "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", + "dev": true + } + } + }, + "prr": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", + "integrity": "sha1-0/wRS6BplaRexok/SEzrHXj19HY=", + "dev": true, + "optional": true + }, + "punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==" + }, + "qjobs": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/qjobs/-/qjobs-1.2.0.tgz", + "integrity": "sha512-8YOJEHtxpySA3fFDyCRxA+UUV+fA+rTWnuWvylOK/NCjhY+b4ocCtmu8TtsWb+mYeU+GCHf/S66KZF/AsteKHg==", + "dev": true + }, + "qs": { + "version": "6.7.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz", + "integrity": "sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==", + "dev": true + }, + "querystring": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", + "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=", + "dev": true + }, + "queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "dev": true + }, + "randombytes": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "dev": true, + "requires": { + "safe-buffer": "^5.1.0" + } + }, + "range-parser": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", + "dev": true + }, + "raw-body": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.0.tgz", + "integrity": "sha512-4Oz8DUIwdvoa5qMJelxipzi/iJIi40O5cGV1wNYp5hvZP8ZN0T+jiNkL0QepXs+EsQ9XJ8ipEDoiH70ySUJP3Q==", + "dev": true, + "requires": { + "bytes": "3.1.0", + "http-errors": "1.7.2", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" + } + }, + "read-cache": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz", + "integrity": "sha1-5mTvMRYRZsl1HNvo28+GtftY93Q=", + "dev": true, + "requires": { + "pify": "^2.3.0" + } + }, + "read-package-json-fast": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/read-package-json-fast/-/read-package-json-fast-2.0.3.tgz", + "integrity": "sha512-W/BKtbL+dUjTuRL2vziuYhp76s5HZ9qQhd/dKfWIZveD0O40453QNyZhC0e63lqZrAQ4jiOapVoeJ7JrszenQQ==", + "dev": true, + "requires": { + "json-parse-even-better-errors": "^2.3.0", + "npm-normalize-package-bin": "^1.0.1" + } + }, + "readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "dev": true, + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + }, + "readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dev": true, + "requires": { + "picomatch": "^2.2.1" + } + }, + "reflect-metadata": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/reflect-metadata/-/reflect-metadata-0.1.13.tgz", + "integrity": "sha512-Ts1Y/anZELhSsjMcU605fU9RE4Oi3p5ORujwbIKXfWa+0Zxs510Qrmrce5/Jowq3cHSZSJqBjypxmHarc+vEWg==", + "dev": true + }, + "regenerate": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", + "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==", + "dev": true + }, + "regenerate-unicode-properties": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-9.0.0.tgz", + "integrity": "sha512-3E12UeNSPfjrgwjkR81m5J7Aw/T55Tu7nUyZVQYCKEOs+2dkxEY+DpPtZzO4YruuiPb7NkYLVcyJC4+zCbk5pA==", + "dev": true, + "requires": { + "regenerate": "^1.4.2" + } + }, + "regenerator-runtime": { + "version": "0.13.9", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz", + "integrity": "sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA==", + "dev": true + }, + "regenerator-transform": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.14.5.tgz", + "integrity": "sha512-eOf6vka5IO151Jfsw2NO9WpGX58W6wWmefK3I1zEGr0lOD0u8rwPaNqQL1aRxUaxLeKO3ArNh3VYg1KbaD+FFw==", + "dev": true, + "requires": { + "@babel/runtime": "^7.8.4" + } + }, + "regex-parser": { + "version": "2.2.11", + "resolved": "https://registry.npmjs.org/regex-parser/-/regex-parser-2.2.11.tgz", + "integrity": "sha512-jbD/FT0+9MBU2XAZluI7w2OBs1RBi6p9M83nkoZayQXXU9e8Robt69FcZc7wU4eJD/YFTjn1JdCk3rbMJajz8Q==", + "dev": true + }, + "regexp-clone": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/regexp-clone/-/regexp-clone-1.0.0.tgz", + "integrity": "sha512-TuAasHQNamyyJ2hb97IuBEif4qBHGjPHBS64sZwytpLEqtBQ1gPJTnOaQ6qmpET16cK14kkjbazl6+p0RRv0yw==" + }, + "regexp.prototype.flags": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.3.1.tgz", + "integrity": "sha512-JiBdRBq91WlY7uRJ0ds7R+dU02i6LKi8r3BuQhNXn+kmeLN+EfHhfjqMRis1zJxnlu88hq/4dx0P2OP3APRTOA==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3" + } + }, + "regexpu-core": { + "version": "4.8.0", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-4.8.0.tgz", + "integrity": "sha512-1F6bYsoYiz6is+oz70NWur2Vlh9KWtswuRuzJOfeYUrfPX2o8n74AnUVaOGDbUqVGO9fNHu48/pjJO4sNVwsOg==", + "dev": true, + "requires": { + "regenerate": "^1.4.2", + "regenerate-unicode-properties": "^9.0.0", + "regjsgen": "^0.5.2", + "regjsparser": "^0.7.0", + "unicode-match-property-ecmascript": "^2.0.0", + "unicode-match-property-value-ecmascript": "^2.0.0" + } + }, + "regjsgen": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.5.2.tgz", + "integrity": "sha512-OFFT3MfrH90xIW8OOSyUrk6QHD5E9JOTeGodiJeBS3J6IwlgzJMNE/1bZklWz5oTg+9dCMyEetclvCVXOPoN3A==", + "dev": true + }, + "regjsparser": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.7.0.tgz", + "integrity": "sha512-A4pcaORqmNMDVwUjWoTzuhwMGpP+NykpfqAsEgI1FSH/EzC7lrN5TMd+kN8YCovX+jMpu8eaqXgXPCa0g8FQNQ==", + "dev": true, + "requires": { + "jsesc": "~0.5.0" + }, + "dependencies": { + "jsesc": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", + "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=", + "dev": true + } + } + }, + "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 + }, + "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 + }, + "requires-port": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", + "integrity": "sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8=", + "dev": true + }, + "resolve": { + "version": "1.20.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.20.0.tgz", + "integrity": "sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==", + "dev": true, + "requires": { + "is-core-module": "^2.2.0", + "path-parse": "^1.0.6" + } + }, + "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 + }, + "resolve-url-loader": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-url-loader/-/resolve-url-loader-4.0.0.tgz", + "integrity": "sha512-05VEMczVREcbtT7Bz+C+96eUO5HDNvdthIiMB34t7FcF8ehcu4wC0sSgPUubs3XW2Q3CNLJk/BJrCU9wVRymiA==", + "dev": true, + "requires": { + "adjust-sourcemap-loader": "^4.0.0", + "convert-source-map": "^1.7.0", + "loader-utils": "^2.0.0", + "postcss": "^7.0.35", + "source-map": "0.6.1" + }, + "dependencies": { + "big.js": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", + "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", + "dev": true + }, + "loader-utils": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.2.tgz", + "integrity": "sha512-TM57VeHptv569d/GKh6TAYdzKblwDNiumOdkFnejjD0XwTH87K90w3O7AiJRqdQoXygvi1VQTJTLGhJl7WqA7A==", + "dev": true, + "requires": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^2.1.2" + } + }, + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + }, + "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 + } + } + }, + "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, + "requires": { + "onetime": "^5.1.0", + "signal-exit": "^3.0.2" + } + }, + "retry": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", + "integrity": "sha1-G0KmJmoh8HQh0bC1S33BZ7AcATs=", + "dev": true + }, + "reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "dev": true + }, + "rfdc": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.3.0.tgz", + "integrity": "sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA==", + "dev": true + }, + "rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + }, + "run-async": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", + "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==", + "dev": true + }, + "run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "dev": true, + "requires": { + "queue-microtask": "^1.2.2" + } + }, + "rxjs": { + "version": "6.6.7", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", + "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", + "requires": { + "tslib": "^1.9.0" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + }, + "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==" + }, + "safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "dev": true + }, + "saslprep": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/saslprep/-/saslprep-1.0.3.tgz", + "integrity": "sha512-/MY/PEMbk2SuY5sScONwhUDsV2p77Znkb/q3nSVstq/yQzYJOH/Azh29p9oJLsl3LnQwSvZDKagDGBsBwSooag==", + "optional": true, + "requires": { + "sparse-bitfield": "^3.0.3" + } + }, + "sass": { + "version": "1.43.4", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.43.4.tgz", + "integrity": "sha512-/ptG7KE9lxpGSYiXn7Ar+lKOv37xfWsZRtFYal2QHNigyVQDx685VFT/h7ejVr+R8w7H4tmUgtulsKl5YpveOg==", + "dev": true, + "requires": { + "chokidar": ">=3.0.0 <4.0.0" + } + }, + "sass-loader": { + "version": "12.3.0", + "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-12.3.0.tgz", + "integrity": "sha512-6l9qwhdOb7qSrtOu96QQ81LVl8v6Dp9j1w3akOm0aWHyrTYtagDt5+kS32N4yq4hHk3M+rdqoRMH+lIdqvW6HA==", + "dev": true, + "requires": { + "klona": "^2.0.4", + "neo-async": "^2.6.2" + } + }, + "sax": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", + "dev": true + }, + "schema-utils": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz", + "integrity": "sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==", + "dev": true, + "requires": { + "@types/json-schema": "^7.0.5", + "ajv": "^6.12.4", + "ajv-keywords": "^3.5.2" + }, + "dependencies": { + "ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "requires": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + } + }, + "ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "dev": true, + "requires": {} + }, + "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 + } + } + }, + "select-hose": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz", + "integrity": "sha1-Yl2GWPhlr0Psliv8N2o3NZpJlMo=", + "dev": true + }, + "selfsigned": { + "version": "1.10.11", + "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-1.10.11.tgz", + "integrity": "sha512-aVmbPOfViZqOZPgRBT0+3u4yZFHpmnIghLMlAcb5/xhp5ZtB/RVnKhz5vl2M32CLXAqR4kha9zfhNg0Lf/sxKA==", + "dev": true, + "requires": { + "node-forge": "^0.10.0" + } + }, + "semver": { + "version": "7.3.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", + "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", + "dev": true, + "requires": { + "lru-cache": "^6.0.0" + } + }, + "send": { + "version": "0.17.1", + "resolved": "https://registry.npmjs.org/send/-/send-0.17.1.tgz", + "integrity": "sha512-BsVKsiGcQMFwT8UxypobUKyv7irCNRHk1T0G680vk88yf6LBByGcZJOTJCrTP2xVN6yI+XjPJcNuE3V4fT9sAg==", + "dev": true, + "requires": { + "debug": "2.6.9", + "depd": "~1.1.2", + "destroy": "~1.0.4", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "fresh": "0.5.2", + "http-errors": "~1.7.2", + "mime": "1.6.0", + "ms": "2.1.1", + "on-finished": "~2.3.0", + "range-parser": "~1.2.1", + "statuses": "~1.5.0" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + }, + "dependencies": { + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + } + } + }, + "mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "dev": true + }, + "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 + } + } + }, + "serialize-javascript": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.0.tgz", + "integrity": "sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag==", + "dev": true, + "requires": { + "randombytes": "^2.1.0" + } + }, + "serve-index": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz", + "integrity": "sha1-03aNabHn2C5c4FD/9bRTvqEqkjk=", + "dev": true, + "requires": { + "accepts": "~1.3.4", + "batch": "0.6.1", + "debug": "2.6.9", + "escape-html": "~1.0.3", + "http-errors": "~1.6.2", + "mime-types": "~2.1.17", + "parseurl": "~1.3.2" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "http-errors": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", + "integrity": "sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0=", + "dev": true, + "requires": { + "depd": "~1.1.2", + "inherits": "2.0.3", + "setprototypeof": "1.1.0", + "statuses": ">= 1.4.0 < 2" + } + }, + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", + "dev": true + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + }, + "setprototypeof": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", + "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==", + "dev": true + } + } + }, + "serve-static": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.14.1.tgz", + "integrity": "sha512-JMrvUwE54emCYWlTI+hGrGv5I8dEwmco/00EvkzIIsR7MqrHonbD9pO2MOfFnpFntl7ecpZs+3mW+XbQZu9QCg==", + "dev": true, + "requires": { + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "parseurl": "~1.3.3", + "send": "0.17.1" + } + }, + "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 + }, + "setprototypeof": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz", + "integrity": "sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==", + "dev": true + }, + "shallow-clone": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz", + "integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==", + "dev": true, + "requires": { + "kind-of": "^6.0.2" + } + }, + "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, + "requires": { + "shebang-regex": "^3.0.0" + } + }, + "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 + }, + "sift": { + "version": "13.5.2", + "resolved": "https://registry.npmjs.org/sift/-/sift-13.5.2.tgz", + "integrity": "sha512-+gxdEOMA2J+AI+fVsCqeNn7Tgx3M9ZN9jdi95939l1IJ8cZsqS8sqpJyOkic2SJk+1+98Uwryt/gL6XDaV+UZA==" + }, + "signal-exit": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.5.tgz", + "integrity": "sha512-KWcOiKeQj6ZyXx7zq4YxSMgHRlod4czeBQZrPb8OKcohcqAXShm7E20kEMle9WBt26hFcAf0qLOcp5zmY7kOqQ==", + "dev": true + }, + "slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true + }, + "sliced": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/sliced/-/sliced-1.0.1.tgz", + "integrity": "sha1-CzpmK10Ewxd7GSa+qCsD+Dei70E=" + }, + "smart-buffer": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", + "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", + "dev": true + }, + "socket.io": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-4.3.2.tgz", + "integrity": "sha512-6S5tV4jcY6dbZ/lLzD6EkvNWI3s81JO6ABP/EpvOlK1NPOcIj3AS4khi6xXw6JlZCASq82HQV4SapfmVMMl2dg==", + "dev": true, + "requires": { + "accepts": "~1.3.4", + "base64id": "~2.0.0", + "debug": "~4.3.2", + "engine.io": "~6.0.0", + "socket.io-adapter": "~2.3.2", + "socket.io-parser": "~4.0.4" + } + }, + "socket.io-adapter": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-2.3.3.tgz", + "integrity": "sha512-Qd/iwn3VskrpNO60BeRyCyr8ZWw9CPZyitW4AQwmRZ8zCiyDiL+znRnWX6tDHXnWn1sJrM1+b6Mn6wEDJJ4aYQ==", + "dev": true + }, + "socket.io-parser": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-4.0.4.tgz", + "integrity": "sha512-t+b0SS+IxG7Rxzda2EVvyBZbvFPBCjJoyHuE0P//7OAsN23GItzDRdWa6ALxZI/8R5ygK7jAR6t028/z+7295g==", + "dev": true, + "requires": { + "@types/component-emitter": "^1.2.10", + "component-emitter": "~1.3.0", + "debug": "~4.3.1" + } + }, + "sockjs": { + "version": "0.3.21", + "resolved": "https://registry.npmjs.org/sockjs/-/sockjs-0.3.21.tgz", + "integrity": "sha512-DhbPFGpxjc6Z3I+uX07Id5ZO2XwYsWOrYjaSeieES78cq+JaJvVe5q/m1uvjIQhXinhIeCFRH6JgXe+mvVMyXw==", + "dev": true, + "requires": { + "faye-websocket": "^0.11.3", + "uuid": "^3.4.0", + "websocket-driver": "^0.7.4" + }, + "dependencies": { + "uuid": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", + "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", + "dev": true + } + } + }, + "socks": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.6.1.tgz", + "integrity": "sha512-kLQ9N5ucj8uIcxrDwjm0Jsqk06xdpBjGNQtpXy4Q8/QY2k+fY7nZH8CARy+hkbG+SGAovmzzuauCpBlb8FrnBA==", + "dev": true, + "requires": { + "ip": "^1.1.5", + "smart-buffer": "^4.1.0" + } + }, + "socks-proxy-agent": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-6.1.0.tgz", + "integrity": "sha512-57e7lwCN4Tzt3mXz25VxOErJKXlPfXmkMLnk310v/jwW20jWRVcgsOit+xNkN3eIEdB47GwnfAEBLacZ/wVIKg==", + "dev": true, + "requires": { + "agent-base": "^6.0.2", + "debug": "^4.3.1", + "socks": "^2.6.1" + } + }, + "source-map": { + "version": "0.7.3", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", + "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", + "dev": true + }, + "source-map-js": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-0.6.2.tgz", + "integrity": "sha512-/3GptzWzu0+0MBQFrDKzw/DvvMTUORvgY6k6jd/VS6iCR4RDTKWH6v6WPwQoUO8667uQEf9Oe38DxAYWY5F/Ug==", + "dev": true + }, + "source-map-loader": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/source-map-loader/-/source-map-loader-3.0.0.tgz", + "integrity": "sha512-GKGWqWvYr04M7tn8dryIWvb0s8YM41z82iQv01yBtIylgxax0CwvSy6gc2Y02iuXwEfGWRlMicH0nvms9UZphw==", + "dev": true, + "requires": { + "abab": "^2.0.5", + "iconv-lite": "^0.6.2", + "source-map-js": "^0.6.2" + }, + "dependencies": { + "iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "dev": true, + "requires": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + } + } + } + }, + "source-map-resolve": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.6.0.tgz", + "integrity": "sha512-KXBr9d/fO/bWo97NXsPIAW1bFSBOuCnjbNTBMO7N59hsv5i9yzRDfcYwwt0l04+VqnKC+EwzvJZIP/qkuMgR/w==", + "dev": true, + "requires": { + "atob": "^2.1.2", + "decode-uri-component": "^0.2.0" + } + }, + "source-map-support": { + "version": "0.5.20", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.20.tgz", + "integrity": "sha512-n1lZZ8Ve4ksRqizaBQgxXDgKwttHDhyfQjA6YZZn8+AroHbsIz+JjwxQDxbp+7y5OYCI8t1Yk7etjD9CRd2hIw==", + "dev": true, + "requires": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + }, + "dependencies": { + "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 + } + } + }, + "sourcemap-codec": { + "version": "1.4.8", + "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", + "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==", + "dev": true + }, + "sparse-bitfield": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/sparse-bitfield/-/sparse-bitfield-3.0.3.tgz", + "integrity": "sha1-/0rm5oZWBWuks+eSqzM004JzyhE=", + "optional": true, + "requires": { + "memory-pager": "^1.0.2" + } + }, + "spdy": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/spdy/-/spdy-4.0.2.tgz", + "integrity": "sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA==", + "dev": true, + "requires": { + "debug": "^4.1.0", + "handle-thing": "^2.0.0", + "http-deceiver": "^1.2.7", + "select-hose": "^2.0.0", + "spdy-transport": "^3.0.0" + } + }, + "spdy-transport": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/spdy-transport/-/spdy-transport-3.0.0.tgz", + "integrity": "sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw==", + "dev": true, + "requires": { + "debug": "^4.1.0", + "detect-node": "^2.0.4", + "hpack.js": "^2.1.6", + "obuf": "^1.1.2", + "readable-stream": "^3.0.6", + "wbuf": "^1.7.3" + } + }, + "sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", + "dev": true + }, + "ssri": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-8.0.1.tgz", + "integrity": "sha512-97qShzy1AiyxvPNIkLWoGua7xoQzzPjQ0HAH4B0rWKo7SZ6USuPcrUiAFrws0UH8RrbWmgq3LMTObhPIHbbBeQ==", + "dev": true, + "requires": { + "minipass": "^3.1.1" + } + }, + "statuses": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", + "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=", + "dev": true + }, + "stdrpc": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/stdrpc/-/stdrpc-1.3.0.tgz", + "integrity": "sha512-0/V7bDh/ipmDAA4kcCZV9YsVoq2B4p+IwtN48x7jHAVyipeObYwFvcEyaxwRke4FPm4DxYGziPluLye0ywOoiw==", + "requires": { + "axios": "^0.21.1", + "koa-basic-auth": "^4.0.0" + } + }, + "streamroller": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/streamroller/-/streamroller-2.2.4.tgz", + "integrity": "sha512-OG79qm3AujAM9ImoqgWEY1xG4HX+Lw+yY6qZj9R1K2mhF5bEmQ849wvrb+4vt4jLMLzwXttJlQbOdPOQVRv7DQ==", + "dev": true, + "requires": { + "date-format": "^2.1.0", + "debug": "^4.1.1", + "fs-extra": "^8.1.0" + }, + "dependencies": { + "date-format": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/date-format/-/date-format-2.1.0.tgz", + "integrity": "sha512-bYQuGLeFxhkxNOF3rcMtiZxvCBAquGzZm6oWA1oZ0g2THUzivaRhv8uOhdr19LmoobSOLoIAxeUK2RdbM8IFTA==", + "dev": true + } + } + }, + "string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dev": true, + "requires": { + "safe-buffer": "~5.2.0" + }, + "dependencies": { + "safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "dev": true + } + } + }, + "string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + }, + "strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "requires": { + "ansi-regex": "^5.0.1" + } + }, + "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 + }, + "stylus": { + "version": "0.55.0", + "resolved": "https://registry.npmjs.org/stylus/-/stylus-0.55.0.tgz", + "integrity": "sha512-MuzIIVRSbc8XxHH7FjkvWqkIcr1BvoMZoR/oFuAJDlh7VSaNJzrB4uJ38GRQa+mWjLXODAMzeDe0xi9GYbGwnw==", + "dev": true, + "requires": { + "css": "^3.0.0", + "debug": "~3.1.0", + "glob": "^7.1.6", + "mkdirp": "~1.0.4", + "safer-buffer": "^2.1.2", + "sax": "~1.2.4", + "semver": "^6.3.0", + "source-map": "^0.7.3" + }, + "dependencies": { + "debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + }, + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, + "stylus-loader": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/stylus-loader/-/stylus-loader-6.2.0.tgz", + "integrity": "sha512-5dsDc7qVQGRoc6pvCL20eYgRUxepZ9FpeK28XhdXaIPP6kXr6nI1zAAKFQgP5OBkOfKaURp4WUpJzspg1f01Gg==", + "dev": true, + "requires": { + "fast-glob": "^3.2.7", + "klona": "^2.0.4", + "normalize-path": "^3.0.0" + } + }, + "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, + "requires": { + "has-flag": "^3.0.0" + } + }, + "symbol-observable": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-4.0.0.tgz", + "integrity": "sha512-b19dMThMV4HVFynSAM1++gBHAbk2Tc/osgLIBZMKsyqh34jb2e8Os7T6ZW/Bt3pJFdBTd2JwAnAAEQV7rSNvcQ==", + "dev": true + }, + "tapable": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", + "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", + "dev": true + }, + "tar": { + "version": "6.1.11", + "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.11.tgz", + "integrity": "sha512-an/KZQzQUkZCkuoAA64hM92X0Urb6VpRhAFllDzz44U2mcD5scmT3zBc4VgVpkugF580+DQn8eAFSyoQt0tznA==", + "dev": true, + "requires": { + "chownr": "^2.0.0", + "fs-minipass": "^2.0.0", + "minipass": "^3.0.0", + "minizlib": "^2.1.1", + "mkdirp": "^1.0.3", + "yallist": "^4.0.0" + } + }, + "terser": { + "version": "5.9.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.9.0.tgz", + "integrity": "sha512-h5hxa23sCdpzcye/7b8YqbE5OwKca/ni0RQz1uRX3tGh8haaGHqcuSqbGRybuAKNdntZ0mDgFNXPJ48xQ2RXKQ==", + "dev": true, + "requires": { + "commander": "^2.20.0", + "source-map": "~0.7.2", + "source-map-support": "~0.5.20" + } + }, + "terser-webpack-plugin": { + "version": "5.2.5", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.2.5.tgz", + "integrity": "sha512-3luOVHku5l0QBeYS8r4CdHYWEGMmIj3H1U64jgkdZzECcSOJAyJ9TjuqcQZvw1Y+4AOBN9SeYJPJmFn2cM4/2g==", + "dev": true, + "requires": { + "jest-worker": "^27.0.6", + "schema-utils": "^3.1.1", + "serialize-javascript": "^6.0.0", + "source-map": "^0.6.1", + "terser": "^5.7.2" + }, + "dependencies": { + "ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "requires": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + } + }, + "ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "dev": true, + "requires": {} + }, + "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 + }, + "schema-utils": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", + "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", + "dev": true, + "requires": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + } + }, + "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 + } + } + }, + "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, + "requires": { + "@istanbuljs/schema": "^0.1.2", + "glob": "^7.1.4", + "minimatch": "^3.0.4" + } + }, + "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 + }, + "through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", + "dev": true + }, + "thunky": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/thunky/-/thunky-1.1.0.tgz", + "integrity": "sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==", + "dev": true + }, + "tmp": { + "version": "0.0.33", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", + "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", + "dev": true, + "requires": { + "os-tmpdir": "~1.0.2" + } + }, + "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 + }, + "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, + "requires": { + "is-number": "^7.0.0" + } + }, + "toidentifier": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.0.tgz", + "integrity": "sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==", + "dev": true + }, + "tr46": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-3.0.0.tgz", + "integrity": "sha512-l7FvfAHlcmulp8kr+flpQZmVwtu7nfRV7NZujtN0OqES8EL4O4e0qqzL0DC5gAvx/ZC/9lk6rhcUwYvkBnBnYA==", + "requires": { + "punycode": "^2.1.1" + } + }, + "tree-kill": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.2.tgz", + "integrity": "sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==", + "dev": true + }, + "tslib": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", + "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" + }, + "tsscmp": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/tsscmp/-/tsscmp-1.0.6.tgz", + "integrity": "sha512-LxhtAkPDTkVCMQjt2h6eBVY28KCjikZqZfMcC15YBeNjkgUpdCfBu5HoiOTDu86v6smE8yOjyEktJ8hlbANHQA==" + }, + "type-fest": { + "version": "0.21.3", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", + "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", + "dev": true + }, + "type-is": { + "version": "1.6.18", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", + "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", + "dev": true, + "requires": { + "media-typer": "0.3.0", + "mime-types": "~2.1.24" + } + }, + "typed-assert": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/typed-assert/-/typed-assert-1.0.8.tgz", + "integrity": "sha512-5NkbXZUlmCE73Fs7gvkp1XXJWHYetPkg60QnQ2NXQmBYNFxbBr2zA8GCtaH4K2s2WhOmSlgiSTmrjrcm5tnM5g==", + "dev": true + }, + "typescript": { + "version": "4.4.4", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.4.4.tgz", + "integrity": "sha512-DqGhF5IKoBl8WNf8C1gu8q0xZSInh9j1kJJMqT3a94w1JzVaBU4EXOSMrz9yDqMT0xt3selp83fuFMQ0uzv6qA==", + "dev": true + }, + "ua-parser-js": { + "version": "0.7.31", + "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.31.tgz", + "integrity": "sha512-qLK/Xe9E2uzmYI3qLeOmI0tEOt+TBBQyUIAh4aAgU05FVYzeZrKUdkAZfBNVGRaHVgV0TDkdEngJSw/SyQchkQ==", + "dev": true + }, + "unicode-canonical-property-names-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz", + "integrity": "sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==", + "dev": true + }, + "unicode-match-property-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz", + "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==", + "dev": true, + "requires": { + "unicode-canonical-property-names-ecmascript": "^2.0.0", + "unicode-property-aliases-ecmascript": "^2.0.0" + } + }, + "unicode-match-property-value-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.0.0.tgz", + "integrity": "sha512-7Yhkc0Ye+t4PNYzOGKedDhXbYIBe1XEQYQxOPyhcXNMJ0WCABqqj6ckydd6pWRZTHV4GuCPKdBAUiMc60tsKVw==", + "dev": true + }, + "unicode-property-aliases-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.0.0.tgz", + "integrity": "sha512-5Zfuy9q/DFr4tfO7ZPeVXb1aPoeQSdeFMLpYuFebehDAhbuevLs5yxSZmIFN1tP5F9Wl4IpJrYojg85/zgyZHQ==", + "dev": true + }, + "uniq": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/uniq/-/uniq-1.0.1.tgz", + "integrity": "sha1-sxxa6CVIRKOoKBVBzisEuGWnNP8=", + "dev": true + }, + "unique-filename": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz", + "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==", + "dev": true, + "requires": { + "unique-slug": "^2.0.0" + } + }, + "unique-slug": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.2.tgz", + "integrity": "sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w==", + "dev": true, + "requires": { + "imurmurhash": "^0.1.4" + } + }, + "universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", + "dev": true + }, + "unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=", + "dev": true + }, + "uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, + "requires": { + "punycode": "^2.1.0" + } + }, + "url": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", + "integrity": "sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE=", + "dev": true, + "requires": { + "punycode": "1.3.2", + "querystring": "0.2.0" + }, + "dependencies": { + "punycode": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", + "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=", + "dev": true + } + } + }, + "urlsafe-base64": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/urlsafe-base64/-/urlsafe-base64-1.0.0.tgz", + "integrity": "sha1-I/iQaabGL0bPOh07ABac77kL4MY=" + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", + "dev": true + }, + "utils-merge": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=", + "dev": true + }, + "uuid": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==" + }, + "validate-npm-package-name": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-3.0.0.tgz", + "integrity": "sha1-X6kS2B630MdK/BQN5zF/DKffQ34=", + "dev": true, + "requires": { + "builtins": "^1.0.3" + } + }, + "vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=", + "dev": true + }, + "void-elements": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/void-elements/-/void-elements-2.0.1.tgz", + "integrity": "sha1-wGavtYK7HLQSjWDqkjkulNXp2+w=", + "dev": true + }, + "watchpack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.2.0.tgz", + "integrity": "sha512-up4YAn/XHgZHIxFBVCdlMiWDj6WaLKpwVeGQk2I5thdYxF/KmF0aaz6TfJZ/hfl1h/XlcDr7k1KH7ThDagpFaA==", + "dev": true, + "requires": { + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.1.2" + } + }, + "wbuf": { + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/wbuf/-/wbuf-1.7.3.tgz", + "integrity": "sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA==", + "dev": true, + "requires": { + "minimalistic-assert": "^1.0.0" + } + }, + "wcwidth": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", + "integrity": "sha1-8LDc+RW8X/FSivrbLA4XtTLaL+g=", + "dev": true, + "requires": { + "defaults": "^1.0.3" + } + }, + "webidl-conversions": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", + "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==" + }, + "webpack": { + "version": "5.60.0", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.60.0.tgz", + "integrity": "sha512-OL5GDYi2dKxnwJPSOg2tODgzDxAffN0osgWkZaBo/l3ikCxDFP+tuJT3uF7GyBE3SDBpKML/+a8EobyWAQO3DQ==", + "dev": true, + "requires": { + "@types/eslint-scope": "^3.7.0", + "@types/estree": "^0.0.50", + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/wasm-edit": "1.11.1", + "@webassemblyjs/wasm-parser": "1.11.1", + "acorn": "^8.4.1", + "acorn-import-assertions": "^1.7.6", + "browserslist": "^4.14.5", + "chrome-trace-event": "^1.0.2", + "enhanced-resolve": "^5.8.3", + "es-module-lexer": "^0.9.0", + "eslint-scope": "5.1.1", + "events": "^3.2.0", + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.2.4", + "json-parse-better-errors": "^1.0.2", + "loader-runner": "^4.2.0", + "mime-types": "^2.1.27", + "neo-async": "^2.6.2", + "schema-utils": "^3.1.0", + "tapable": "^2.1.1", + "terser-webpack-plugin": "^5.1.3", + "watchpack": "^2.2.0", + "webpack-sources": "^3.2.0" + }, + "dependencies": { + "ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "requires": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + } + }, + "ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "dev": true, + "requires": {} + }, + "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 + }, + "schema-utils": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", + "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", + "dev": true, + "requires": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + } + } + } + }, + "webpack-dev-middleware": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-5.2.1.tgz", + "integrity": "sha512-Kx1X+36Rn9JaZcQMrJ7qN3PMAuKmEDD9ZISjUj3Cgq4A6PtwYsC4mpaKotSRYH3iOF6HsUa8viHKS59FlyVifQ==", + "dev": true, + "requires": { + "colorette": "^2.0.10", + "memfs": "^3.2.2", + "mime-types": "^2.1.31", + "range-parser": "^1.2.1", + "schema-utils": "^3.1.0" + }, + "dependencies": { + "ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "requires": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + } + }, + "ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "dev": true, + "requires": {} + }, + "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 + }, + "schema-utils": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", + "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", + "dev": true, + "requires": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + } + } + } + }, + "webpack-dev-server": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.4.0.tgz", + "integrity": "sha512-+S0XRIbsopVjPFjCO8I07FXYBWYqkFmuP56ucGMTs2hA/gV4q2M9xTmNo5Tg4o8ffRR+Nm3AsXnQXxKRyYovrA==", + "dev": true, + "requires": { + "ansi-html-community": "^0.0.8", + "bonjour": "^3.5.0", + "chokidar": "^3.5.2", + "colorette": "^2.0.10", + "compression": "^1.7.4", + "connect-history-api-fallback": "^1.6.0", + "del": "^6.0.0", + "express": "^4.17.1", + "graceful-fs": "^4.2.6", + "html-entities": "^2.3.2", + "http-proxy-middleware": "^2.0.0", + "internal-ip": "^6.2.0", + "ipaddr.js": "^2.0.1", + "open": "^8.0.9", + "p-retry": "^4.5.0", + "portfinder": "^1.0.28", + "schema-utils": "^3.1.0", + "selfsigned": "^1.10.11", + "serve-index": "^1.9.1", + "sockjs": "^0.3.21", + "spdy": "^4.0.2", + "strip-ansi": "^7.0.0", + "url": "^0.11.0", + "webpack-dev-middleware": "^5.2.1", + "ws": "^8.1.0" + }, + "dependencies": { + "ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "requires": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + } + }, + "ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "dev": true, + "requires": {} + }, + "ansi-regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "dev": true + }, + "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 + }, + "schema-utils": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", + "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", + "dev": true, + "requires": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + } + }, + "strip-ansi": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.0.1.tgz", + "integrity": "sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==", + "dev": true, + "requires": { + "ansi-regex": "^6.0.1" + } + } + } + }, + "webpack-merge": { + "version": "5.8.0", + "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.8.0.tgz", + "integrity": "sha512-/SaI7xY0831XwP6kzuwhKWVKDP9t1QY1h65lAFLbZqMPIuYcD9QAW4u9STIbU9kaJbPBB/geU/gLr1wDjOhQ+Q==", + "dev": true, + "requires": { + "clone-deep": "^4.0.1", + "wildcard": "^2.0.0" + } + }, + "webpack-sources": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.2.tgz", + "integrity": "sha512-cp5qdmHnu5T8wRg2G3vZZHoJPN14aqQ89SyQ11NpGH5zEMDCclt49rzo+MaRazk7/UeILhAI+/sEtcM+7Fr0nw==", + "dev": true + }, + "webpack-subresource-integrity": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/webpack-subresource-integrity/-/webpack-subresource-integrity-5.0.0.tgz", + "integrity": "sha512-x9514FpLRydO+UAQ8DY4aLtCjxmdLkuQVcDFN1kGzuusREYJ1B0rzk/iIlWiL6dnvrhEGFj2+UsdxDkP8Z4UKg==", + "dev": true, + "requires": { + "typed-assert": "^1.0.8" + } + }, + "websocket-driver": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.4.tgz", + "integrity": "sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg==", + "dev": true, + "requires": { + "http-parser-js": ">=0.5.1", + "safe-buffer": ">=5.1.0", + "websocket-extensions": ">=0.1.1" + } + }, + "websocket-extensions": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.4.tgz", + "integrity": "sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==", + "dev": true + }, + "whatwg-url": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-11.0.0.tgz", + "integrity": "sha512-RKT8HExMpoYx4igMiVMY83lN6UeITKJlBQ+vR/8ZJ8OCdSiN3RwCq+9gH0+Xzj0+5IrM6i4j/6LuvzbZIQgEcQ==", + "requires": { + "tr46": "^3.0.0", + "webidl-conversions": "^7.0.0" + } + }, + "which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dev": true, + "requires": { + "isexe": "^2.0.0" + } + }, + "wide-align": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", + "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", + "dev": true, + "requires": { + "string-width": "^1.0.2 || 2 || 3 || 4" + } + }, + "wildcard": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-2.0.0.tgz", + "integrity": "sha512-JcKqAHLPxcdb9KM49dufGXn2x3ssnfjbcaQdLlfZsL9rH9wgDQjUtDxbo8NE0F6SFvydeu1VhZe7hZuHsB2/pw==", + "dev": true + }, + "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, + "requires": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "dependencies": { + "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, + "requires": { + "color-convert": "^2.0.1" + } + }, + "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, + "requires": { + "color-name": "~1.1.4" + } + }, + "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 + } + } + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", + "dev": true + }, + "ws": { + "version": "8.2.3", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.2.3.tgz", + "integrity": "sha512-wBuoj1BDpC6ZQ1B7DWQBYVLphPWkm8i9Y0/3YdHjHKHiohOJ1ws+3OccDWtH+PoC9DZD5WOTrJvNbWvjS6JWaA==", + "dev": true, + "requires": {} + }, + "y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "yaml": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", + "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", + "dev": true + }, + "yargs": { + "version": "17.2.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.2.1.tgz", + "integrity": "sha512-XfR8du6ua4K6uLGm5S6fA+FIJom/MdJcFNVY8geLlp2v8GYbOXD4EB1tPNZsRn4vBzKGMgb5DRZMeWuFc2GO8Q==", + "dev": true, + "requires": { + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.0", + "y18n": "^5.0.5", + "yargs-parser": "^20.2.2" + } + }, + "yargs-parser": { + "version": "20.2.9", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", + "dev": true + }, + "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 + }, + "zone.js": { + "version": "0.11.4", + "resolved": "https://registry.npmjs.org/zone.js/-/zone.js-0.11.4.tgz", + "integrity": "sha512-DDh2Ab+A/B+9mJyajPjHFPWfYU1H+pdun4wnnk0OcQTNjem1XQSZ2CDW+rfZEUDjv5M19SBqAkjZi0x5wuB5Qw==", + "requires": { + "tslib": "^2.0.0" + } + } + } +} diff --git a/package.json b/package.json new file mode 100644 index 0000000..630f0fd --- /dev/null +++ b/package.json @@ -0,0 +1,53 @@ +{ + "name": "zgo", + "version": "1.0.3", + "scripts": { + "ng": "ng", + "start": "ng serve", + "build": "ng build", + "watch": "ng build --watch --configuration development", + "test": "ng test" + }, + "private": true, + "dependencies": { + "@angular/animations": "~13.0.2", + "@angular/cdk": "^12.2.8", + "@angular/common": "~13.0.2", + "@angular/compiler": "~13.0.2", + "@angular/core": "~13.0.2", + "@angular/forms": "~13.0.2", + "@angular/material": "^12.2.8", + "@angular/platform-browser": "~13.0.2", + "@angular/platform-browser-dynamic": "~13.0.2", + "@angular/router": "~13.0.2", + "@supercharge/request-ip": "^1.1.2", + "angular-local-storage": "^0.7.1", + "async": "^3.2.2", + "coingecko-api": "^1.0.10", + "easyqrcodejs": "^4.4.6", + "material-design-icons": "^3.0.1", + "mongoose": "^6.0.13", + "rxjs": "~6.6.0", + "stdrpc": "^1.3.0", + "tslib": "^2.3.0", + "urlsafe-base64": "^1.0.0", + "uuid": "^8.3.2", + "zone.js": "~0.11.4" + }, + "devDependencies": { + "@angular-devkit/build-angular": "~13.0.2", + "@angular/cli": "~13.0.2", + "@angular/compiler-cli": "~13.0.2", + "@types/jasmine": "~3.8.0", + "@types/node": "^12.20.33", + "@types/urlsafe-base64": "^1.0.28", + "@types/uuid": "^8.3.1", + "jasmine-core": "~3.8.0", + "karma": "~6.3.0", + "karma-chrome-launcher": "~3.1.0", + "karma-coverage": "~2.0.3", + "karma-jasmine": "~4.0.0", + "karma-jasmine-html-reporter": "~1.7.0", + "typescript": "~4.4.4" + } +} diff --git a/server.js b/server.js new file mode 100644 index 0000000..ab46055 --- /dev/null +++ b/server.js @@ -0,0 +1,19 @@ +var fs = require('fs'); +var http = require('http'); +//var https = require('https'); + +//var certificate = fs.readFileSync('/etc/letsencrypt/live/zgo.cash/fullchain.pem'); +//var privateKey = fs.readFileSync('/etc/letsencrypt/live/zgo.cash/privkey.pem'); + +//var credentials = {key: privateKey, cert: certificate}; + +const app = require('./backend/app'); +const port = 3000; + +app.set('port', port); + +const httpServer = http.createServer(app); +//const httpsServer = https.createServer(credentials, app); + +httpServer.listen(port); +//httpsServer.listen(port); diff --git a/src/app/app-routing.module.ts b/src/app/app-routing.module.ts new file mode 100644 index 0000000..e9b73dd --- /dev/null +++ b/src/app/app-routing.module.ts @@ -0,0 +1,26 @@ +import { NgModule } from '@angular/core'; +import { RouterModule, Routes } from '@angular/router'; +import { ViewerComponent } from './viewer/viewer.component'; +import { ReceiptComponent } from './receipt/receipt.component'; +import { LoginComponent } from './login/login.component'; +import { BusinessComponent } from './business/business.component'; +import { ListOrdersComponent } from './listorders/listorders.component'; +import { AuthGuardService } from './auth-guard.service'; +import { NodeResolverService } from './node-resolver.service'; + +const routes: Routes = [ + { path: '', component: LoginComponent, resolve: { response: NodeResolverService} }, + //{ path: 'create', component: PostCreateComponent, canActivate: [AuthGuardService]}, + { path: 'shop', component: ViewerComponent, canActivate: [AuthGuardService]}, + { path: 'orders', component: ListOrdersComponent, canActivate: [AuthGuardService]}, + { path: 'biz', component: BusinessComponent, canActivate: [AuthGuardService]}, + { path: 'receipt/:orderId', component: ReceiptComponent}, + { path: 'login', component: LoginComponent, resolve: { response: NodeResolverService}} +]; + +@NgModule({ + imports: [RouterModule.forRoot(routes)], + exports: [RouterModule], + providers: [AuthGuardService] +}) +export class AppRoutingModule { } diff --git a/src/app/app.component.css b/src/app/app.component.css new file mode 100644 index 0000000..15b87ac --- /dev/null +++ b/src/app/app.component.css @@ -0,0 +1,12 @@ +main{ + margin: 5px; +} + +.footer{ + font-family: 'Spartan', sans-serif; + font-size: 12px; +} + +.tiny{ + font-size: 10px; +} diff --git a/src/app/app.component.html b/src/app/app.component.html new file mode 100644 index 0000000..dff4aa7 --- /dev/null +++ b/src/app/app.component.html @@ -0,0 +1,8 @@ +
+ +
+ + diff --git a/src/app/app.component.spec.ts b/src/app/app.component.spec.ts new file mode 100644 index 0000000..5734f8b --- /dev/null +++ b/src/app/app.component.spec.ts @@ -0,0 +1,35 @@ +import { TestBed } from '@angular/core/testing'; +import { RouterTestingModule } from '@angular/router/testing'; +import { AppComponent } from './app.component'; + +describe('AppComponent', () => { + beforeEach(async () => { + await TestBed.configureTestingModule({ + imports: [ + RouterTestingModule + ], + declarations: [ + AppComponent + ], + }).compileComponents(); + }); + + it('should create the app', () => { + const fixture = TestBed.createComponent(AppComponent); + const app = fixture.componentInstance; + expect(app).toBeTruthy(); + }); + + it(`should have as title 'sell4zec'`, () => { + const fixture = TestBed.createComponent(AppComponent); + const app = fixture.componentInstance; + expect(app.title).toEqual('sell4zec'); + }); + + it('should render title', () => { + const fixture = TestBed.createComponent(AppComponent); + fixture.detectChanges(); + const compiled = fixture.nativeElement as HTMLElement; + expect(compiled.querySelector('.content span')?.textContent).toContain('sell4zec app is running!'); + }); +}); diff --git a/src/app/app.component.ts b/src/app/app.component.ts new file mode 100644 index 0000000..8dad2f4 --- /dev/null +++ b/src/app/app.component.ts @@ -0,0 +1,16 @@ +import { Component } from '@angular/core'; +//import { Post} from './posts/post.model'; + +@Component({ + selector: 'app-root', + templateUrl: './app.component.html', + styleUrls: ['./app.component.css'] +}) +export class AppComponent { + //StoredPosts: Post[] = []; + title = 'sell4zec'; + + //onPostAdded(post: Post){ + //this.StoredPosts.push(post); + //} +} diff --git a/src/app/app.module.ts b/src/app/app.module.ts new file mode 100644 index 0000000..aa6000d --- /dev/null +++ b/src/app/app.module.ts @@ -0,0 +1,101 @@ +import { NgModule } from '@angular/core'; +import { BrowserModule } from '@angular/platform-browser'; +import { FormsModule, ReactiveFormsModule } from '@angular/forms'; +import { MatInputModule } from '@angular/material/input'; +import { MatAutocompleteModule } from '@angular/material/autocomplete'; +import { MatCardModule } from '@angular/material/card'; +import { MatButtonModule } from '@angular/material/button'; +import { MatToolbarModule } from '@angular/material/toolbar'; +import { MatExpansionModule } from '@angular/material/expansion'; +import { HttpClientModule } from '@angular/common/http'; +import { MatDialogModule } from '@angular/material/dialog'; +import { MatIconModule } from '@angular/material/icon'; +import { MatDividerModule } from '@angular/material/divider'; +import { MatListModule } from '@angular/material/list'; +import { MatSelectModule } from '@angular/material/select'; +import { MatProgressBarModule } from '@angular/material/progress-bar'; +import { MatStepperModule } from '@angular/material/stepper'; +import { MatSlideToggleModule } from '@angular/material/slide-toggle'; + +import { AppRoutingModule } from './app-routing.module'; +import { AppComponent } from './app.component'; +import { HeaderComponent } from './header/header.component'; +import { ViewerComponent } from './viewer/viewer.component'; +import { LoginComponent } from './login/login.component'; +import { ItemListComponent } from './items/item-list/item-list.component'; +import { ItemCreateComponent } from './items/item-create/item-create.component'; +import { ItemDeleteComponent } from './items/item-delete/item-delete.component'; +import { ItemAddComponent} from './items/item-add/item-add.component'; +import { OrderComponent } from './order/order.component'; +import { CancelComponent } from './cancel/cancel.component'; +import { CheckoutComponent } from './checkout/checkout.component'; +import { SettingsComponent } from './settings/settings.component'; +import { ListOrdersComponent } from './listorders/listorders.component'; +import { ScanComponent } from './scan/scan.component'; +import { BrowserAnimationsModule } from '@angular/platform-browser/animations'; +import { BusinessComponent } from './business/business.component'; +import { SearchOptionsPipe } from './searchoptions.pipe'; +import { TermsComponent } from './terms/terms.component'; +import { ReceiptComponent } from './receipt/receipt.component'; +import { ReceiptQRComponent } from './receipt-qr/receipt-qr.component'; + +@NgModule({ + declarations: [ + AppComponent, + HeaderComponent, + ViewerComponent, + ItemListComponent, + LoginComponent, + OrderComponent, + ItemCreateComponent, + ItemDeleteComponent, + ItemAddComponent, + CancelComponent, + CheckoutComponent, + SettingsComponent, + ScanComponent, + ListOrdersComponent, + BusinessComponent, + SearchOptionsPipe, + TermsComponent, + ReceiptComponent, + ReceiptQRComponent + ], + imports: [ + BrowserModule, + AppRoutingModule, + FormsModule, + ReactiveFormsModule, + MatIconModule, + HttpClientModule, + MatInputModule, + MatCardModule, + MatButtonModule, + MatToolbarModule, + MatExpansionModule, + MatDialogModule, + MatDividerModule, + MatListModule, + MatSelectModule, + MatProgressBarModule, + MatStepperModule, + MatAutocompleteModule, + MatSlideToggleModule, + BrowserAnimationsModule + ], + exports: [ + MatIconModule + ], + providers: [], + bootstrap: [AppComponent], + entryComponents: [ + ItemCreateComponent, + ItemDeleteComponent, + ItemAddComponent, + CancelComponent, + CheckoutComponent, + SettingsComponent, + ScanComponent + ] +}) +export class AppModule { } diff --git a/src/app/auth-guard.service.ts b/src/app/auth-guard.service.ts new file mode 100644 index 0000000..c1bf887 --- /dev/null +++ b/src/app/auth-guard.service.ts @@ -0,0 +1,62 @@ +import { Injectable } from '@angular/core'; +import { CanActivate, Router, RouterStateSnapshot, ActivatedRouteSnapshot } from '@angular/router'; +import {HttpClient, HttpParams} from '@angular/common/http'; +import { UserService } from './user.service'; +import { Subscription, Observable } from 'rxjs'; +import { Owner } from './owner.model'; + +@Injectable() + +export class AuthGuardService implements CanActivate { + private UserSub: Subscription = new Subscription(); + private addr = ''; + private paid = false; + private paidUpdate: Observable; + constructor( + private router: Router, + private http: HttpClient, + public userService: UserService + ){ + this.paidUpdate = this.userService.paidUpdate; + this.paidUpdate.subscribe((indicator) => { + this.paid = indicator; + }); + } + + canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): boolean { + const token = localStorage.getItem('s4z_token'); + + var path = route.url[0].path; + + if(token != null){ + this.userService.uZaddrUpdate. + subscribe((addr) => { + if (addr != null) { + console.log(addr); + this.addr = addr; + } else { + console.log("No record for that token"); + } + }); + if (path === 'biz') { + if (this.addr.length > 0) { + return true; + } else { + this.router.navigate(['/login']); + return false; + } + } else { + if (this.addr != null && this.paid) { + return true; + } else { + this.router.navigate(['/login']); + return false; + } + } + } else { + console.log("Not logged in"); + this.router.navigate(['/login']); + return false; + } + } +} diff --git a/src/app/business/business.component.css b/src/app/business/business.component.css new file mode 100644 index 0000000..5d92d07 --- /dev/null +++ b/src/app/business/business.component.css @@ -0,0 +1,18 @@ +* { + font-family: 'Spartan', sans-serif; +} +mat-card.centercard{ + max-width: 650px; + border: 1px solid #CCCCCC; +} + +::ng-deep .mat-step-label{ + font-size: 13px; +} +::ng-deep .mat-slide-toggle-content{ + font-family: 'Spartan', sans-serif; + font-size: 11px; +} +a.link{ + text-decoration: underline; +} diff --git a/src/app/business/business.component.html b/src/app/business/business.component.html new file mode 100644 index 0000000..79e49e7 --- /dev/null +++ b/src/app/business/business.component.html @@ -0,0 +1,90 @@ + +
+ +

Business sign-up

+ + +

We do not have a business associated with this Zcash address, please enter your information below:

+ + + Business Name + + +
+ + Contact First Name + + + + Contact Last Name + + + + Address + + + + City + + + + State/Province + + + + Postal Code + + + + Country + + + + {{ctry.name}} + + + + + E-mail + + + + Website + + + + I accept the Terms of Use + + + + +
+ +
+ +

Please select the length of session that you need:

+ + + Session + + + {{ticket.viewValue}} + + + + + + + +
+ +

{{barMessage}}

+ + +
+ +
+
+
diff --git a/src/app/business/business.component.spec.ts b/src/app/business/business.component.spec.ts new file mode 100644 index 0000000..98bc922 --- /dev/null +++ b/src/app/business/business.component.spec.ts @@ -0,0 +1,25 @@ +import { ComponentFixture, TestBed } from '@angular/core/testing'; + +import { BusinessComponent } from './business.component'; + +describe('BusinessComponent', () => { + let component: BusinessComponent; + let fixture: ComponentFixture; + + beforeEach(async () => { + await TestBed.configureTestingModule({ + declarations: [ BusinessComponent ] + }) + .compileComponents(); + }); + + beforeEach(() => { + fixture = TestBed.createComponent(BusinessComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/src/app/business/business.component.ts b/src/app/business/business.component.ts new file mode 100644 index 0000000..bb345ff --- /dev/null +++ b/src/app/business/business.component.ts @@ -0,0 +1,204 @@ +import { Component, OnInit, ViewChild, AfterViewInit } from '@angular/core'; +import { FormBuilder, Validators, FormGroup, FormControl } from '@angular/forms'; +import { MatDialog, MatDialogConfig} from '@angular/material/dialog'; +import { ProgressBarMode } from '@angular/material/progress-bar'; +import { Router } from '@angular/router'; +import { Observable } from 'rxjs'; +import { filter, startWith, map, switchMap } from 'rxjs/operators'; +import { MatStepper } from '@angular/material/stepper'; +import { MatSlideToggleChange } from '@angular/material/slide-toggle'; +import { Country } from '../country.model'; +import { Owner } from '../owner.model'; +import { User } from '../user.model'; +import { UserService } from '../user.service'; +import { FullnodeService } from '../fullnode.service'; +import { SearchOptionsPipe } from '../searchoptions.pipe'; +import { ScanComponent } from '../scan/scan.component'; +import { TermsComponent } from '../terms/terms.component'; + +@Component({ + selector: 'app-business', + templateUrl: './business.component.html', + styleUrls: ['./business.component.css'] +}) +export class BusinessComponent implements OnInit { + + @ViewChild('stepper', { static: false}) stepper: MatStepper|undefined; + intervalHolder: any; + nodeAddress: string = ''; + tickets = [ + { + value: 0.005, + viewValue: '1 day: 0.005 ZEC' + },{ + value: 0.025, + viewValue: '1 week: 0.025 ZEC' + },{ + value: 0.1, + viewValue: '1 month: 0.1 ZEC' + } + ]; + bizForm: FormGroup; + payForm: FormGroup; + barMessage = 'Awaiting for transaction'; + barMode: ProgressBarMode = 'indeterminate'; + barValue = 0; + countries: Country[] = []; + owner: Owner = { + address: '', + currency: 'usd', + tax: false, + taxValue: 0, + vat: false, + vatValue: 0, + phone: '', + paid: false, + first: '', + last: '', + name: '', + street: '', + city: '', + state: '', + postal: '', + country: '', + email: '', + website: '', + zats: false + } + public countriesUpdate: Observable; + public ownerUpdate: Observable; + public addrUpdate: Observable; + public userUpdate: Observable; + sessionId = ''; + ownerKnown = false; + termsChecked = false; + + constructor( + private fb: FormBuilder, + private userService: UserService, + private fullnodeService: FullnodeService, + private dialog: MatDialog, + private router: Router + ) { + this.countriesUpdate = userService.countriesUpdate; + this.ownerUpdate = userService.ownerUpdate; + this.userUpdate = userService.userUpdate; + this.userUpdate.subscribe(userInfo => { + this.sessionId = userInfo.session; + }); + this.addrUpdate = fullnodeService.addrUpdate; + this.addrUpdate.subscribe(nodeAdd => { + this.nodeAddress = nodeAdd; + }); + this.bizForm = fb.group({ + name: ['', Validators.required], + first: ['', Validators.required], + last: ['', Validators.required], + street: ['', Validators.required], + city: ['', Validators.required], + state: ['', Validators.required], + postal: ['', Validators.required], + country: ['', Validators.required], + email: ['', [Validators.email, Validators.required]], + website: [''], + terms: [false] + }); + this.payForm= fb.group({ + session: ['', Validators.required] + }); + this.userService.getCountries(); + this.countriesUpdate.subscribe((countries) => { + this.countries = countries; + }); + this.ownerUpdate.subscribe((owner) => { + this.owner = owner; + }); + } + + ngOnInit(): void { + this.intervalHolder = setInterval(() => { + this.loginCheck(); + }, 1000 * 60); + } + + ngAfterViewInit(): void { + this.ownerUpdate.subscribe(ownerData => { + if(ownerData.name.length > 0 && this.stepper!.selectedIndex == 0){ + this.stepper!.next(); + } + }); + } + + onChange(ob: MatSlideToggleChange){ + console.log(ob.checked); + this.termsChecked = ob.checked; + } + + showTerms() { + const dialogConfig = new MatDialogConfig(); + dialogConfig.disableClose = true; + dialogConfig.autoFocus = true; + + const dialogRef = this.dialog.open(TermsComponent, dialogConfig); + dialogRef.afterClosed().subscribe(val => { + console.log('Terms read'); + }); + } + + save() { + this.owner = { + address: '', + currency: 'usd', + tax: false, + taxValue: 0, + vat: false, + vatValue: 0, + first: this.bizForm.get('first')!.value, + last: this.bizForm.get('last')!.value, + phone: '', + paid: false, + name: this.bizForm.get('name')!.value, + street: this.bizForm.get('street')!.value, + city: this.bizForm.get('city')!.value, + state: this.bizForm.get('state')!.value, + postal: this.bizForm.get('postal')!.value, + country: this.bizForm.get('country')!.value, + email: this.bizForm.get('email')!.value, + website: this.bizForm.get('website')!.value, + zats: false + }; + this.userService.addOwner(this.owner); + this.stepper!.next(); + } + + pay(){ + const dialogConfig = new MatDialogConfig(); + + dialogConfig.disableClose = true; + dialogConfig.autoFocus = true; + dialogConfig.data = { + totalZec: this.payForm.get('session')!.value, + addr: this.nodeAddress, + session: this.sessionId, + pay: true + }; + + const dialogRef = this.dialog.open(ScanComponent, dialogConfig); + dialogRef.afterClosed().subscribe(val => { + console.log('Awaiting payment'); + if(val){ + this.stepper!.next(); + } + }); + } + + loginCheck(){ + this.userService.findUser(); + this.ownerUpdate.subscribe((owner) => { + if(owner.paid) { + this.router.navigate(['/shop']); + } + }); + } + +} diff --git a/src/app/cancel/cancel.component.css b/src/app/cancel/cancel.component.css new file mode 100644 index 0000000..a81a136 --- /dev/null +++ b/src/app/cancel/cancel.component.css @@ -0,0 +1,7 @@ +.text { + font-family: 'Spartan', sans-serif; +} + +mat-dialog-content { + max-width: 400px; +} diff --git a/src/app/cancel/cancel.component.html b/src/app/cancel/cancel.component.html new file mode 100644 index 0000000..2c68a3b --- /dev/null +++ b/src/app/cancel/cancel.component.html @@ -0,0 +1,24 @@ +

{{title}}

+ + +

{{msg}}

+
+ + + + + + + +
+ + + + + +
+
diff --git a/src/app/cancel/cancel.component.ts b/src/app/cancel/cancel.component.ts new file mode 100644 index 0000000..212ab58 --- /dev/null +++ b/src/app/cancel/cancel.component.ts @@ -0,0 +1,29 @@ +import { Inject, Component, OnInit, ViewEncapsulation} from '@angular/core'; +import { MatDialog, MatDialogRef, MAT_DIALOG_DATA} from '@angular/material/dialog'; + +@Component({ + selector: 'app-cancel', + templateUrl: './cancel.component.html', + styleUrls: ['./cancel.component.css'] +}) + +export class CancelComponent { + title: string; + msg: string; + + constructor( + private dialogRef: MatDialogRef, + @Inject(MAT_DIALOG_DATA) public data: { title: string, msg: string} + ) { + this.title = data.title; + this.msg = data.msg; + } + + confirm() { + this.dialogRef.close(true); + } + + close() { + this.dialogRef.close(false); + } +} diff --git a/src/app/checkout/checkout.component.css b/src/app/checkout/checkout.component.css new file mode 100644 index 0000000..0b79f36 --- /dev/null +++ b/src/app/checkout/checkout.component.css @@ -0,0 +1,3 @@ +.text { + font-family: 'Spartan', sans-serif; +} diff --git a/src/app/checkout/checkout.component.html b/src/app/checkout/checkout.component.html new file mode 100644 index 0000000..3458441 --- /dev/null +++ b/src/app/checkout/checkout.component.html @@ -0,0 +1,25 @@ +
+

Scan to make payment

+
+ + +
+
+ + + + + + +
+ + + + + +
+
diff --git a/src/app/checkout/checkout.component.ts b/src/app/checkout/checkout.component.ts new file mode 100644 index 0000000..79698b6 --- /dev/null +++ b/src/app/checkout/checkout.component.ts @@ -0,0 +1,50 @@ +import { Inject, Component, OnInit, ViewEncapsulation} from '@angular/core'; +import { MatDialog, MatDialogRef, MAT_DIALOG_DATA} from '@angular/material/dialog'; +import { DomSanitizer, SafeUrl } from '@angular/platform-browser'; + +var QRCode = require('easyqrcodejs'); +var URLSafeBase64 = require('urlsafe-base64'); +var Buffer = require('buffer/').Buffer; + +@Component({ + selector: 'app-checkout', + templateUrl: './checkout.component.html', + styleUrls: ['./checkout.component.css'] +}) + +export class CheckoutComponent implements OnInit{ + address: string; + total: number; + orderId: string; + codeString: string = ''; + zcashUrl: SafeUrl; + + constructor( + private dialogRef: MatDialogRef, + private sanitizer: DomSanitizer, + @Inject(MAT_DIALOG_DATA) public data: { totalZec: number, addr: string, orderId: string} + ) { + this.address = data.addr; + this.total = data.totalZec; + this.orderId = data.orderId; + this.codeString = `zcash:${this.address}?amount=${this.total.toFixed(6)}&memo=${URLSafeBase64.encode(Buffer.from('Z-Go Order '.concat(this.orderId)))}`; + this.zcashUrl = this.sanitizer.bypassSecurityTrustUrl(this.codeString); + } + + ngOnInit() { + var qrcode = new QRCode(document.getElementById("checkout-qr"), { + text: this.codeString, + logo: "/assets/zcash.png", + logoWidth: 80, + logoHeight: 80 + }); + } + + confirm() { + this.dialogRef.close(true); + } + + close() { + this.dialogRef.close(false); + } +} diff --git a/src/app/country.model.ts b/src/app/country.model.ts new file mode 100644 index 0000000..5865976 --- /dev/null +++ b/src/app/country.model.ts @@ -0,0 +1,5 @@ +export interface Country { + _id?: string; + name: string; + code: string; +} diff --git a/src/app/fullnode.service.ts b/src/app/fullnode.service.ts new file mode 100644 index 0000000..7dd37b8 --- /dev/null +++ b/src/app/fullnode.service.ts @@ -0,0 +1,96 @@ +import {Injectable} from '@angular/core'; +import {Subject, Subscription, BehaviorSubject, Observable} from 'rxjs'; +import {HttpClient, HttpParams, HttpHeaders} from '@angular/common/http'; +import {UserService} from './user.service'; +import { Owner } from './owner.model'; + +//import {User} from './user.model'; + +@Injectable({providedIn: 'root'}) +export class FullnodeService{ + beUrl = 'http://localhost:3000/'; + private dataStore: { height: number, memoList: string[], addr: string, price: number } = { height: 0, memoList: [], addr: '', price:0 }; + private _heightUpdated: BehaviorSubject = new BehaviorSubject(this.dataStore.height); + private _memoUpdated: BehaviorSubject = new BehaviorSubject(this.dataStore.memoList); + private _addrUpdated: BehaviorSubject = new BehaviorSubject(this.dataStore.addr); + private _priceUpdated: BehaviorSubject = new BehaviorSubject(this.dataStore.price); + public readonly addrUpdate: Observable = this._addrUpdated.asObservable(); + public readonly heightUpdate: Observable = this._heightUpdated.asObservable(); + public readonly memoUpdate: Observable = this._memoUpdated.asObservable(); + public readonly priceUpdate: Observable = this._priceUpdated.asObservable(); + public readonly ownerUpdate: Observable; + private UserSub: Subscription = new Subscription(); + private apiKey = 'YourApiKey'; + private reqHeaders: HttpHeaders; + private owner: Owner = { + _id: '', + name: '', + address: '', + currency: 'usd', + tax: false, + taxValue: 0, + vat: false, + vatValue: 0, + first: '', + last: '', + email: '', + street: '', + city: '', + state: '', + postal: '', + phone: '', + paid: false, + website: '', + country: '', + zats: false + }; + + constructor(private http: HttpClient, public userService: UserService){ + this.reqHeaders = new HttpHeaders().set('Authorization', this.apiKey); + this.ownerUpdate = userService.ownerUpdate; + this.getAddr(); + this.getHeight(); + this.ownerUpdate.subscribe((owner) => { + this.owner = owner; + this.getPrice(this.owner.currency); + }); + } + + getHeight(){ + let obs = this.http.get<{message: string, height: number}>(this.beUrl+'api/blockheight', { headers: this.reqHeaders }); + obs.subscribe((BlockData) => { + this.dataStore.height = BlockData.height; + this._heightUpdated.next(Object.assign({}, this.dataStore).height); + }); + + return obs; + } + + getPrice(currency: string){ + //var currency = 'usd'; + const params = new HttpParams().append('currency', currency); + let obs = this.http.get<{message: string, price: any}>(this.beUrl+'api/price', { headers:this.reqHeaders, params: params, observe: 'response'}); + obs.subscribe((PriceData) => { + if (PriceData.status == 200) { + this.dataStore.price = PriceData.body!.price.price; + console.log("price", this.dataStore.price); + this._priceUpdated.next(Object.assign({},this.dataStore).price); + } else { + console.log('No price found for currency', currency); + } + }); + + return obs; + } + + getAddr() { + let obs = this.http.get<{message: string, addr: string}>(this.beUrl+'api/getaddr', { headers: this.reqHeaders }); + + obs.subscribe((AddrData) => { + this.dataStore.addr = AddrData.addr; + this._addrUpdated.next(Object.assign({}, this.dataStore).addr); + }); + + return obs; + } +} diff --git a/src/app/header/header.component.css b/src/app/header/header.component.css new file mode 100644 index 0000000..c659da2 --- /dev/null +++ b/src/app/header/header.component.css @@ -0,0 +1,29 @@ +.text { + font-family: 'Spartan', sans-serif; +} + +a{ + text-decoration: none; + color: white; +} + +ul{ + list-style: none; + padding: 0; + margin: 0; +} + +.spacer{ + flex: 1 1 auto; +} + +.mini { + font-size: 10px; + line-height: 0.8; +} +.icon { + font-family: "Material Icons"; +} +.logo { + margin-top: 5px; +} diff --git a/src/app/header/header.component.html b/src/app/header/header.component.html new file mode 100644 index 0000000..df9e337 --- /dev/null +++ b/src/app/header/header.component.html @@ -0,0 +1,14 @@ + + + + + + +

Currency: {{ getCurrency() }}

+

Last block:

+

{{heightUpdate | async}}

+
+ + + +
diff --git a/src/app/header/header.component.ts b/src/app/header/header.component.ts new file mode 100644 index 0000000..298b4ff --- /dev/null +++ b/src/app/header/header.component.ts @@ -0,0 +1,91 @@ +import {Component, OnInit, OnDestroy} from '@angular/core'; +import { MatDialog, MatDialogConfig} from '@angular/material/dialog'; +import {FullnodeService} from '../fullnode.service'; +import { Router } from '@angular/router'; +import { UserService } from '../user.service'; +import { CancelComponent } from '../cancel/cancel.component'; +import {Subscription, Observable} from 'rxjs'; + +import {Owner} from '../owner.model'; + +@Component({ + selector: 'app-header', + templateUrl: './header.component.html', + styleUrls: ['./header.component.css'] +}) + +export class HeaderComponent implements OnInit, OnDestroy { + + public height = 0; + private owner: Owner= { + _id:'', + address: 'none', + name:'', + currency: 'usd', + tax: false, + taxValue: 0, + vat: false, + vatValue: 0, + first: '', + last: '', + email: '', + street: '', + city: '', + state: '', + postal: '', + phone: '', + paid: false, + website: '', + country: '', + zats: false + }; + private session: string | null = ''; + public heightUpdate: Observable; + public ownerUpdate: Observable; + public uZaddrUpdate: Observable; + + constructor( + public fullnodeService: FullnodeService, + public userService: UserService, + private dialog: MatDialog, + private router: Router + ){ + this.heightUpdate = fullnodeService.heightUpdate; + this.uZaddrUpdate = userService.uZaddrUpdate; + this.ownerUpdate = userService.ownerUpdate; + this.ownerUpdate.subscribe((owner) => { + this.owner = owner; + }); + } + + + ngOnInit(){ + } + + ngOnDestroy(){ + } + + getCurrency(){ + return this.owner.currency.toUpperCase(); + } + + logout(){ + const dialogConfig = new MatDialogConfig(); + + dialogConfig.disableClose = true; + dialogConfig.autoFocus = true; + dialogConfig.data = {title: 'Logout?', msg: 'Are you sure you want to disconnect from ZGo? You will have to re-link your wallet via shielded memo.'}; + + const dialogRef = this.dialog.open(CancelComponent, dialogConfig); + dialogRef.afterClosed().subscribe(val => { + if(val){ + console.log('Logout!'); + this.userService.deleteUser().subscribe(UserResponse => { + console.log('Rerouting'); + this.userService.findUser(); + this.router.navigate(['/login']); + }); + } + }); + } +} diff --git a/src/app/item.model.ts b/src/app/item.model.ts new file mode 100644 index 0000000..e94757f --- /dev/null +++ b/src/app/item.model.ts @@ -0,0 +1,7 @@ +export interface Item { + _id?: any; + name: string; + description: string; + user: string; + cost: number; +} diff --git a/src/app/items/item-add/item-add.component.css b/src/app/items/item-add/item-add.component.css new file mode 100644 index 0000000..58d315b --- /dev/null +++ b/src/app/items/item-add/item-add.component.css @@ -0,0 +1,7 @@ +.text { + font-family: 'Spartan', sans-serif; +} + +input[type=number]{ + text-align: right; +} diff --git a/src/app/items/item-add/item-add.component.html b/src/app/items/item-add/item-add.component.html new file mode 100644 index 0000000..dc706e4 --- /dev/null +++ b/src/app/items/item-add/item-add.component.html @@ -0,0 +1,13 @@ +

Add to Order

+ + +

{{lineItem.name}}

+ + + +
+ + + + + diff --git a/src/app/items/item-add/item-add.component.ts b/src/app/items/item-add/item-add.component.ts new file mode 100644 index 0000000..d316557 --- /dev/null +++ b/src/app/items/item-add/item-add.component.ts @@ -0,0 +1,45 @@ +import { Inject, Component, OnInit, OnDestroy, ViewEncapsulation } from '@angular/core'; +import { MatDialog, MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog'; +import { FormBuilder, Validators, FormGroup, FormControl } from '@angular/forms'; +import { LineItem } from '../lineitem.model'; +import { Order } from '../../order/order.model'; + +@Component({ + selector: 'app-item-add', + templateUrl: './item-add.component.html', + styleUrls: ['./item-add.component.css'] +}) + +export class ItemAddComponent implements OnInit { + + orderForm: FormGroup; + lineItem: LineItem; + //order: Order; + + constructor( + private fb: FormBuilder, + private dialogRef: MatDialogRef, + @Inject(MAT_DIALOG_DATA) public data: LineItem + ) { + this.orderForm = fb.group({ + qty: [data.qty, Validators.required] + }); + this.lineItem = { + qty : data.qty, + name : data.name, + cost : data.cost + } + } + + ngOnInit() { + } + + close() { + this.dialogRef.close(); + } + + save() { + this.lineItem.qty = this.orderForm.value.qty; + this.dialogRef.close(this.lineItem); + } +} diff --git a/src/app/items/item-create/item-create.component.css b/src/app/items/item-create/item-create.component.css new file mode 100644 index 0000000..58d315b --- /dev/null +++ b/src/app/items/item-create/item-create.component.css @@ -0,0 +1,7 @@ +.text { + font-family: 'Spartan', sans-serif; +} + +input[type=number]{ + text-align: right; +} diff --git a/src/app/items/item-create/item-create.component.html b/src/app/items/item-create/item-create.component.html new file mode 100644 index 0000000..d6dc06a --- /dev/null +++ b/src/app/items/item-create/item-create.component.html @@ -0,0 +1,25 @@ +

Add item

+ + + + Item + + + + + Description + + + + Price + +
+
Use only numbers
+
+
+
+ + + + + diff --git a/src/app/items/item-create/item-create.component.ts b/src/app/items/item-create/item-create.component.ts new file mode 100644 index 0000000..ed5790a --- /dev/null +++ b/src/app/items/item-create/item-create.component.ts @@ -0,0 +1,58 @@ +import { Inject, Component, OnInit, OnDestroy, ViewEncapsulation } from '@angular/core'; +import { MatDialog, MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog'; +import { FormBuilder, Validators, FormGroup, FormControl } from '@angular/forms'; +import { Item } from '../item.model'; + + +@Component({ + selector: 'app-item-create', + templateUrl: './item-create.component.html', + styleUrls: ['./item-create.component.css'] +}) + +export class ItemCreateComponent implements OnInit { + + form: FormGroup; + id: string | undefined = ''; + numberRegEx = /\d*\.?\d{1,2}/; + + constructor( + private fb: FormBuilder, + private dialogRef: MatDialogRef, + @Inject(MAT_DIALOG_DATA) public data: Item + ){ + if (data._id === '') { + this.form = fb.group({ + id: [null], + name: [null, Validators.required], + description: [null, Validators.required], + cost: new FormControl('', { + validators: [Validators.required, Validators.pattern(this.numberRegEx)], + updateOn: "blur" + }) + }); + } else { + this.id = data._id; + this.form = fb.group({ + id: [data._id], + name: [data.name, Validators.required], + description: [data.description, Validators.required], + cost: new FormControl(data.cost, { + validators: [Validators.required, Validators.pattern(this.numberRegEx)], + updateOn: "blur" + }) + }); + } + } + + ngOnInit () { + } + + save() { + this.dialogRef.close(this.form.value); + } + + close () { + this.dialogRef.close(); + } +} diff --git a/src/app/items/item-delete/item-delete.component.css b/src/app/items/item-delete/item-delete.component.css new file mode 100644 index 0000000..0b79f36 --- /dev/null +++ b/src/app/items/item-delete/item-delete.component.css @@ -0,0 +1,3 @@ +.text { + font-family: 'Spartan', sans-serif; +} diff --git a/src/app/items/item-delete/item-delete.component.html b/src/app/items/item-delete/item-delete.component.html new file mode 100644 index 0000000..7002979 --- /dev/null +++ b/src/app/items/item-delete/item-delete.component.html @@ -0,0 +1,10 @@ +

Delete item

+ + +

Are you sure you want to delete "{{item.name}}"?

+
+ + + + + diff --git a/src/app/items/item-delete/item-delete.component.ts b/src/app/items/item-delete/item-delete.component.ts new file mode 100644 index 0000000..aa58f21 --- /dev/null +++ b/src/app/items/item-delete/item-delete.component.ts @@ -0,0 +1,32 @@ +import { Inject, Component, OnInit, OnDestroy, ViewEncapsulation } from '@angular/core'; +import { MatDialog, MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog'; +import { Item } from '../item.model'; + + +@Component({ + selector: 'app-item-delete', + templateUrl: './item-delete.component.html', + styleUrls: ['./item-delete.component.css'] +}) + +export class ItemDeleteComponent implements OnInit{ + item: Item; + + constructor( + private dialogRef: MatDialogRef, + @Inject(MAT_DIALOG_DATA) public data: Item + ) { + this.item = data; + } + + ngOnInit() { + } + + save() { + this.dialogRef.close(this.item._id); + } + + close() { + this.dialogRef.close(); + } +} diff --git a/src/app/items/item-list/item-list.component.css b/src/app/items/item-list/item-list.component.css new file mode 100644 index 0000000..7aa4f8f --- /dev/null +++ b/src/app/items/item-list/item-list.component.css @@ -0,0 +1,30 @@ +.card { + font-family: 'Spartan', sans-serif; +} + +.text { + font-family: 'Spartan', sans-serif; +} +.small { + font-size: 75%; +} +.icons { + font-family: 'Material Icons'; +} + +.spacer{ + flex: 1 1 auto; +} + +img.icon{ + margin-bottom: -3px; +} + +div.card{ + margin-top: 3px; +} + +p.price{ + font-family: 'Roboto-Mono', monospace; + margin: 0px; +} diff --git a/src/app/items/item-list/item-list.component.html b/src/app/items/item-list/item-list.component.html new file mode 100644 index 0000000..cb1cd22 --- /dev/null +++ b/src/app/items/item-list/item-list.component.html @@ -0,0 +1,42 @@ +
+
+ + + + + + +
{{item.name}} +

{{item.cost | currency: getCurrency() }}

+

{{(item.cost/price) | number: '1.0-6'}}

+

ⓩ {{(item.cost/price)*100000000 | number: '1.0-0'}}

+
+
+

{{item.description}}

+
+ + + + + + +
+ + + + +
+
+
+
+
+

No items yet!

+
+ diff --git a/src/app/items/item-list/item-list.component.ts b/src/app/items/item-list/item-list.component.ts new file mode 100644 index 0000000..80eec30 --- /dev/null +++ b/src/app/items/item-list/item-list.component.ts @@ -0,0 +1,180 @@ +import { Component, OnInit } from '@angular/core'; +import { MatDialog, MatDialogConfig} from '@angular/material/dialog'; +import { Observable } from 'rxjs'; +import { Item } from '../item.model'; +import { Owner } from '../../owner.model'; +import { FullnodeService } from '../../fullnode.service'; +import { UserService } from '../../user.service'; +import { ItemService } from '../items.service'; +import { OrderService} from '../../order/order.service'; +import { ItemCreateComponent } from '../item-create/item-create.component'; +import { ItemDeleteComponent } from '../item-delete/item-delete.component'; +import { ItemAddComponent } from '../item-add/item-add.component'; + + +@Component({ + selector: 'app-item-list', + templateUrl: './item-list.component.html', + styleUrls: ['./item-list.component.css'] +}) + +export class ItemListComponent implements OnInit{ + public items: Item[] = []; + owner: Owner = { + _id: '', + name: '', + address: '', + currency: 'usd', + tax: false, + taxValue: 0, + vat: false, + vatValue: 0, + first: '', + last: '', + email: '', + street: '', + city: '', + state: '', + postal: '', + phone: '', + paid: false, + website: '', + country: '', + zats: false + }; + public price: number = 1; + public ownerUpdate: Observable; + public itemsUpdate: Observable; + public priceUpdate: Observable; + + constructor( + public itemService: ItemService, + userService: UserService, + public orderService: OrderService, + public fullnodeService: FullnodeService, + private dialog: MatDialog + ) { + this.ownerUpdate = userService.ownerUpdate; + this.itemsUpdate = itemService.itemsUpdated; + this.priceUpdate = fullnodeService.priceUpdate; + this.ownerUpdate.subscribe((owner) => { + this.owner = owner; + fullnodeService.getPrice(this.owner.currency); + itemService.getItems(this.owner.address); + this.itemsUpdate.subscribe((items) => { + this.items = items; + }); + }); + this.priceUpdate.subscribe((price) => { + this.price = price; + }); + } + + ngOnInit(){ + this.itemsUpdate.subscribe((items) => { + this.items = items; + }); + } + + openDialog(){ + const dialogConfig = new MatDialogConfig(); + + dialogConfig.disableClose = true; + dialogConfig.autoFocus = true; + dialogConfig.data = {_id: '', name: '' , user: '', description: '', cost: 0} + + const dialogRef = this.dialog.open(ItemCreateComponent, dialogConfig); + + dialogRef.afterClosed().subscribe((val) => { + if(val != null) { + var item:Item = {name: val.name, description: val.description, cost: val.cost, user: this.owner.address}; + this.itemService.addItem(item); + } + this.itemService.getItems(this.owner.address); + this.itemsUpdate.subscribe((items) => { + this.items = items; + }); + }); + } + + edit(id: string) { + //console.log('Edit:', id); + const item = this.items.find(element => element._id == id); + //console.log(item); + const dialogConfig = new MatDialogConfig(); + + dialogConfig.disableClose = true; + dialogConfig.autoFocus = true; + dialogConfig.data = item; + + const dialogRef = this.dialog.open(ItemCreateComponent, dialogConfig); + dialogRef.afterClosed().subscribe((val) => { + if (val != null) { + var editItem: Item = { + _id: val.id, + name: val.name, + description: val.description, + cost: val.cost, + user: this.owner.address + }; + //console.log('Edit:', editItem); + this.itemService.addItem(editItem).subscribe((response) => { + this.itemService.getItems(this.owner.address); + });; + } + this.itemService.getItems(this.owner.address); + }); + } + + delete(id: string) { + //console.log('Edit:', id); + const item = this.items.find(element => element._id == id); + //console.log(item); + const dialogConfig = new MatDialogConfig(); + + dialogConfig.disableClose = true; + dialogConfig.autoFocus = true; + dialogConfig.data = item; + + const dialogRef = this.dialog.open(ItemDeleteComponent, dialogConfig); + dialogRef.afterClosed().subscribe((val) => { + if (val != null) { + console.log('Deleting', val); + this.itemService.deleteItem(val); + this.items = []; + } + this.itemService.getItems(this.owner.address); + this.itemsUpdate.subscribe((items) => { + this.items = items; + }); + }); + } + + addToOrder(id: string) { + const item = this.items.find(element => element._id == id); + //console.log(item); + const dialogConfig = new MatDialogConfig(); + + dialogConfig.disableClose = true; + dialogConfig.autoFocus = true; + dialogConfig.data = { + qty: 1, + name: item!.name, + cost: item!.cost + }; + + const dialogRef = this.dialog.open(ItemAddComponent, dialogConfig); + dialogRef.afterClosed().subscribe((val) => { + if (val != null) { + console.log('Adding to order', val); + this.orderService.addToOrder(val); + } + this.itemService.getItems(this.owner.address); + }); + } + + getCurrency(){ + return this.owner.currency.toUpperCase(); + } +} + diff --git a/src/app/items/item.model.ts b/src/app/items/item.model.ts new file mode 100644 index 0000000..3e239f5 --- /dev/null +++ b/src/app/items/item.model.ts @@ -0,0 +1,7 @@ +export interface Item { + _id?: string; + name: string; + description: string; + cost: number; + user: string; +} diff --git a/src/app/items/items.service.ts b/src/app/items/items.service.ts new file mode 100644 index 0000000..fc3a8c7 --- /dev/null +++ b/src/app/items/items.service.ts @@ -0,0 +1,62 @@ +import { Item } from './item.model'; +import { Injectable } from '@angular/core'; +import { Subject, BehaviorSubject, Observable } from 'rxjs'; +import { HttpClient, HttpParams, HttpHeaders } from '@angular/common/http'; + +@Injectable({providedIn: 'root'}) + +export class ItemService{ + beUrl = 'http://localhost:3000/'; + private dataStore: { items: Item[] } = { items: [] } ; + private _itemsUpdated: BehaviorSubject = new BehaviorSubject(this.dataStore.items); + public readonly itemsUpdated: Observable = this._itemsUpdated.asObservable(); + private address:string = ''; + private apiKey = 'YourApiKey'; + private reqHeaders: HttpHeaders; + + constructor(private http: HttpClient){ + this.reqHeaders = new HttpHeaders().set('Authorization', this.apiKey); + } + + getItems(addr: string){ + this.address = addr; + const params = new HttpParams().append('address', addr); + let obs = this.http.get<{message: string, items: any}>(this.beUrl+'api/getitems', { headers:this.reqHeaders, params: params, observe: 'response'}); + + obs.subscribe((ItemDataResponse) => { + if (ItemDataResponse.status == 200 ) { + this.dataStore.items = ItemDataResponse.body!.items; + this._itemsUpdated.next(Object.assign({},this.dataStore).items); + } else { + this.dataStore.items = []; + this._itemsUpdated.next(Object.assign({},this.dataStore).items); + console.log('No items found'); + } + }); + + return obs; + } + + addItem(item: Item) { + //const params = new HttpParams().append('item', JSON.stringify(item)); + let obs = this.http.post<{message: string}>(this.beUrl+'api/item', { item: item }, { headers: this.reqHeaders }); + + obs.subscribe((ItemResponse) => { + console.log('Item added'); + this.getItems(this.address); + }); + + return obs; + } + + deleteItem(id: string) { + let obs = this.http.delete<{message: string}>(this.beUrl+'api/item/'+id, { headers: this.reqHeaders }); + + obs.subscribe((ItemResponse) => { + console.log('Item deleted'); + this.getItems(this.address); + }); + + return obs; + } +} diff --git a/src/app/items/lineitem.model.ts b/src/app/items/lineitem.model.ts new file mode 100644 index 0000000..bc45e3e --- /dev/null +++ b/src/app/items/lineitem.model.ts @@ -0,0 +1,5 @@ +export interface LineItem { + qty: number; + name: string; + cost: number; +} diff --git a/src/app/listorders/listorders.component.css b/src/app/listorders/listorders.component.css new file mode 100644 index 0000000..024432a --- /dev/null +++ b/src/app/listorders/listorders.component.css @@ -0,0 +1,32 @@ +.text{ + font-family: 'Spartan', sans-serif; +} +.number{ + font-family: 'Roboto Mono', monospace; +} +img.icon{ + margin-bottom: -2px; +} +.price{ + display: flex; + align-items: center; +} +.mini{ + font-size: x-small; + align-items: center; + display: flex; + padding: 3px; +} +.small{ + font-size: small; +} +.total{ + font-size: large; + font-family: 'Roboto Mono', monospace; +} +img.total{ + margin-bottom:-2px; +} +.central{ + max-width: 450px; +} diff --git a/src/app/listorders/listorders.component.html b/src/app/listorders/listorders.component.html new file mode 100644 index 0000000..e1d2cb9 --- /dev/null +++ b/src/app/listorders/listorders.component.html @@ -0,0 +1,47 @@ + +
+

{{(ownerUpdate | async)!.name}}

+ +
+ +
+
+ + + + + +
+

Today's Total:

+

{{todayTotal | number: '1.0-6'}}

+
+

Overall Total:

+

{{total | number: '1.0-6'}}

+
+
+
+ +
+
+ + + + + {{order.totalZec}} + + + {{order.timestamp | date: 'short'}} + + +

Order: {{order._id}}

+

Zcash price: {{order.price | currency: order.currency.toUpperCase()}}

+ + {{item.qty}} x {{item.name}} + +
+
+

No orders

+
+
diff --git a/src/app/listorders/listorders.component.ts b/src/app/listorders/listorders.component.ts new file mode 100644 index 0000000..c9d5302 --- /dev/null +++ b/src/app/listorders/listorders.component.ts @@ -0,0 +1,53 @@ +import { Component, OnInit, OnDestroy } from '@angular/core'; +import { Observable } from 'rxjs'; +import { Order } from '../order/order.model'; +import { FullnodeService } from '../fullnode.service'; +import { UserService } from '../user.service'; +import {Owner} from '../owner.model'; +import { OrderService } from '../order/order.service'; + +@Component({ + selector: 'app-list-orders', + templateUrl: './listorders.component.html', + styleUrls: ['./listorders.component.css'] +}) + +export class ListOrdersComponent implements OnInit, OnDestroy{ + public todayTotal: number = 0; + public total: number = 0; + public orders: Order[] = []; + public ownerUpdate: Observable; + public ordersUpdate: Observable; + + constructor( + public orderService: OrderService, + public userService: UserService + ){ + this.ownerUpdate = userService.ownerUpdate; + this.orderService.getAllOrders(); + this.ordersUpdate = orderService.allOrdersUpdate; + } + + ngOnInit(){ + this.ordersUpdate.subscribe((orders) => { + this.total = 0; + this.todayTotal = 0; + var today = new Date(); + this.orders = orders; + console.log('lisord', this.orders.length); + for (let i=0; i < this.orders.length; i++){ + this.total += this.orders[i].totalZec; + var date = new Date(this.orders[i]!.timestamp!); + var diff = (today.getTime() / 1000) - (date.getTime()/1000); + if (diff < (24*3600)){ + this.todayTotal += this.orders[i].totalZec; + } + } + }); + } + + ngOnDestroy(){ + this.total = 0; + this.todayTotal = 0; + } +} diff --git a/src/app/login/login.component.css b/src/app/login/login.component.css new file mode 100644 index 0000000..6f6b63a --- /dev/null +++ b/src/app/login/login.component.css @@ -0,0 +1,31 @@ +* { + font-family: 'Spartan', sans-serif; +} +mat-card.coolcard{ + background-color: #FF5722; + color: #FFFFFF; + margin: 5px; +} +mat-card.centercard{ + max-width: 450px; + border: 1px solid #CCCCCC; +} +.icon{ + font-family: 'Material Icons'; +} +.bigbutton{ + display: inline-flex; + vertical-align: middle; + font-size: 120%; + padding: 3px; +} +.alert-success{ + margin: 5px; + background-color: #BBFFBB +} +.numbers{ + font-family: 'Roboto Mono', monospace; +} +::ng-deep .mat-step-label{ + font-size: 13px; +} diff --git a/src/app/login/login.component.html b/src/app/login/login.component.html new file mode 100644 index 0000000..32a08d4 --- /dev/null +++ b/src/app/login/login.component.html @@ -0,0 +1,48 @@ +
+ + +

Last block seen: {{ heightUpdate | async }}

+
+
+
+ +

The Zcash Register

+ + + +
+ + + +
+
+
+ +

{{barMessage}}

+ + +
+ + +

+ Check your wallet +

+ + PIN + + +

Wrong pin!

+ + + +
+
+
+
+
diff --git a/src/app/login/login.component.ts b/src/app/login/login.component.ts new file mode 100644 index 0000000..315379f --- /dev/null +++ b/src/app/login/login.component.ts @@ -0,0 +1,220 @@ +import { Component, OnInit, OnDestroy, Injectable, ChangeDetectorRef, ViewChild, AfterViewInit } from '@angular/core'; +import { CanActivate, Router, RouterStateSnapshot, ActivatedRouteSnapshot, ActivatedRoute } from '@angular/router'; +import { MatDialog, MatDialogConfig} from '@angular/material/dialog'; +import { FormBuilder, Validators, FormGroup, FormControl } from '@angular/forms'; +import { ProgressBarMode } from '@angular/material/progress-bar'; +import { MatStepper } from '@angular/material/stepper'; +import { UserService } from '../user.service'; +import { FullnodeService } from '../fullnode.service'; +import { ScanComponent} from '../scan/scan.component'; +import { Tx } from '../tx.model'; +import {User} from '../user.model'; +import { Owner } from '../owner.model'; +import { Subscription, Observable } from 'rxjs'; +import { take } from 'rxjs/operators'; +import { v4 as uuidv4 } from 'uuid'; +var QRCode = require('easyqrcodejs'); +var URLSafeBase64 = require('urlsafe-base64'); +var Buffer = require('buffer/').Buffer; + + +@Component({ + selector: 'app-login', + templateUrl: './login.component.html', + styleUrls: ['./login.component.css'] +}) + +export class LoginComponent implements OnInit, AfterViewInit { + txs: Tx[] = []; + intervalHolder: any; + nodeAddress: string = ''; + localToken: string | null = ''; + selectedValue: number = 0.001; + pinError: boolean = false; + public user:User = { + address: '', + session: '', + blocktime: 0, + expired: false, + pin: '', + validated: false + }; + public owner:Owner = { + address: '', + name: '', + currency: '', + tax: false, + taxValue:0, + vat: false, + vatValue: 0, + first: '', + last: '', + email: '', + street: '', + city: '', + state: '', + postal: '', + phone: '', + paid: false, + website: '', + country: '', + zats: false + }; + private FullnodeSub: Subscription = new Subscription(); + private UserSub: Subscription = new Subscription(); + public heightUpdate: Observable; + public uZaddrUpdate: Observable; + public userUpdate:Observable; + public ownerUpdate:Observable; + public txsUpdate: Observable; + tickets = [ + { + value: 0.001, + viewValue: '1 hour: 0.001 ZEC' + },{ + value: 0.005, + viewValue: '1 day: 0.005 ZEC' + },{ + value: 0.025, + viewValue: '1 week: 0.025 ZEC' + } + ]; + prompt: boolean = false; + confirmedMemo: boolean = false; + targetBlock: number = 0; + barMode: ProgressBarMode = 'indeterminate'; + barValue = 0; + barMessage = 'Scanning blockchain for login memo, please wait.'; + @ViewChild('stepper') private myStepper?: MatStepper; + + entryForm: FormGroup; + pinForm: FormGroup; + + + constructor( + private fb: FormBuilder, + private activatedRoute: ActivatedRoute, + public fullnodeService: FullnodeService, + private router: Router, + public userService: UserService, + private dialog: MatDialog, + private _changeDetectorRef: ChangeDetectorRef + ){ + //this.fullnodeService.getAddr(); + this.entryForm = fb.group({ + selectedSession: [0.001, Validators.required] + }); + this.pinForm = fb.group({ + pinValue: [null, Validators.required] + }); + this.heightUpdate = fullnodeService.heightUpdate; + this.uZaddrUpdate = userService.uZaddrUpdate; + this.userUpdate = userService.userUpdate; + this.ownerUpdate = userService.ownerUpdate; + this.userUpdate.subscribe((user) => { + this.user = user; + }); + this.ownerUpdate.subscribe((owner) => { + this.owner = owner; + }); + this.txsUpdate = userService.txUpdate; + this.txsUpdate.subscribe((txs) => { + this.txs = txs; + }); + } + + ngAfterViewInit(){ + //console.log('Step', this.myStepper); + this.pinError = false; + //console.log('Activated route data in Component:::', this.activatedRoute.data); + this.activatedRoute.data.subscribe((addrData) => { + //console.log('FETCH ADDRESS', addrData); + this.nodeAddress = addrData.response.addr; + //console.log('Node addres ', this.nodeAddress); + this.localToken = localStorage.getItem('s4z_token'); + //console.log(localToken); + if(this.localToken == null){ + var token = uuidv4(); + localStorage.setItem('s4z_token', token); + this.localToken = token; + } + this.loginCheck(); + }); + } + + ngOnInit(){ + this.intervalHolder = setInterval(() => { + this.fullnodeService.getHeight(); + //this.userService.findUser(); + this.loginCheck(); + this._changeDetectorRef.markForCheck(); + }, 1000 * 60); + } + + loginCheck(){ + var today = new Date().getTime() / 1000; + this.userService.findUser(); + this.userService.findPending(); + this.txsUpdate.subscribe((txs) => { + this.txs = txs; + }); + this.userUpdate.subscribe((user) => { + if (user.blocktime > 0) { + if(this.myStepper!.selectedIndex === 1){ + this.myStepper!.next(); + } + //console.log('Log in found in blockchain!'); + if (user.validated) { + if (this.owner.paid) { + this.router.navigate(['/shop']); + } else { + this.router.navigate(['/biz']); + } + } + } + }); + if (this.txs.length > 0) { + this.barMode = 'determinate'; + this.barValue = (this.txs[0].confirmations / 2) * 100; + this.confirmedMemo = true; + this.barMessage = 'Login memo found, awaiting confirmations'; + } + } + + login(stepper: MatStepper) { + //console.log('Dropdown:', this.entryForm.value.selectedSession); + const dialogConfig = new MatDialogConfig(); + + dialogConfig.disableClose = true; + dialogConfig.autoFocus = true; + dialogConfig.data = { + totalZec: 1e-8, + addr: this.nodeAddress, + session: this.localToken, + pay: false + }; + + const dialogRef = this.dialog.open(ScanComponent, dialogConfig); + dialogRef.afterClosed().subscribe((val) => { + console.log('Awaiting confirmation'); + if(val){ + stepper.next(); + } + }); + } + + confirmPin(){ + if (this.user.pin === this.pinForm.value.pinValue) { + this.userService.validateUser(); + this.router.navigate(['/shop']); + } else { + this.pinError = true; + } + } + + ngOnDestroy(){ + this.FullnodeSub.unsubscribe(); + this.UserSub.unsubscribe(); + clearInterval(this.intervalHolder); + } +} diff --git a/src/app/node-resolver.service.ts b/src/app/node-resolver.service.ts new file mode 100644 index 0000000..c5d1e40 --- /dev/null +++ b/src/app/node-resolver.service.ts @@ -0,0 +1,23 @@ +import { Injectable } from '@angular/core'; +import { ActivatedRouteSnapshot, Resolve } from '@angular/router'; +import { Observable, of } from 'rxjs'; +import { catchError } from 'rxjs/operators'; + +import { FullnodeService} from './fullnode.service'; + +@Injectable({ + providedIn: 'root' +}) + +export class NodeResolverService implements Resolve { + constructor(private fullnode: FullnodeService) {} + + resolve(route: ActivatedRouteSnapshot): Observable { + console.log('Called getAddr in resolver...', route); + return this.fullnode.getAddr().pipe( + catchError(error => { + return of('No data'); + }) + ); + } +} diff --git a/src/app/order/order.component.css b/src/app/order/order.component.css new file mode 100644 index 0000000..4d49202 --- /dev/null +++ b/src/app/order/order.component.css @@ -0,0 +1,10 @@ +.text { + font-family: 'Spartan', sans-serif; +} + +.number{ + font-family: 'Roboto Mono', monospace; +} +img.icon{ + margin-bottom: -3px; +} diff --git a/src/app/order/order.component.html b/src/app/order/order.component.html new file mode 100644 index 0000000..8bb1a87 --- /dev/null +++ b/src/app/order/order.component.html @@ -0,0 +1,41 @@ +
+

No open order!

+
+ +
+ + + + + + +
Order Total: +

{{total | currency: getCurrency()}}

+

{{(total/price) | number: '1.0-6'}}

+
+
+ + + + + + + + + +
Qty.Items
{{item.qty}}{{item.name}}
+
+ + + + + + +
+ + + +
+
+
+ diff --git a/src/app/order/order.component.ts b/src/app/order/order.component.ts new file mode 100644 index 0000000..69ce473 --- /dev/null +++ b/src/app/order/order.component.ts @@ -0,0 +1,124 @@ +import { Component, OnInit } from '@angular/core'; +import { MatDialog, MatDialogConfig} from '@angular/material/dialog'; +import { Observable } from 'rxjs'; +import { Order } from './order.model'; +import { FullnodeService } from '../fullnode.service'; +import { UserService } from '../user.service'; +import { OrderService } from './order.service'; +import { CancelComponent } from '../cancel/cancel.component'; +import { CheckoutComponent} from '../checkout/checkout.component'; +import { ReceiptQRComponent} from '../receipt-qr/receipt-qr.component'; + +@Component({ + selector: 'app-order', + templateUrl: './order.component.html', + styleUrls: ['./order.component.css'] +}) + +export class OrderComponent implements OnInit{ + public order: Order = { + address: '', + session: '', + timestamp: '', + closed: false, + currency: '', + price:0, + total:0, + totalZec: 0, + lines: [ + { + qty: 1, + name: '', + cost: 0 + } + ] + }; + public price: number = 1; + public total: number = 0; + public orderUpdate: Observable; + public priceUpdate: Observable; + public totalUpdate: Observable; + + constructor( + public fullnodeService: FullnodeService, + public orderService: OrderService, + private dialog: MatDialog + ) { + this.priceUpdate = fullnodeService.priceUpdate; + this.priceUpdate.subscribe((price) => { + this.price = price; + }); + this.orderUpdate = orderService.orderUpdate; + this.orderUpdate.subscribe((order) => { + this.order = order; + }); + this.totalUpdate = orderService.totalUpdate; + this.totalUpdate.subscribe((total) => { + this.total = total; + }); + } + + ngOnInit() { + } + + cancelOrder() { + const dialogConfig = new MatDialogConfig(); + + dialogConfig.disableClose = true; + dialogConfig.autoFocus = true; + dialogConfig.data = {title: 'Cancel Order?', msg: 'Are you sure you want to cancel the order?'}; + + const dialogRef = this.dialog.open(CancelComponent, dialogConfig); + dialogRef.afterClosed().subscribe((val) => { + if (val) { + console.log('Canceling'); + this.orderService.cancelOrder(this.order._id!).subscribe((response) => { + this.orderService.getOrder(); + });; + } else { + console.log('Returning to page'); + } + this.orderService.getOrder(); + }); + } + + checkout() { + var zec = this.total/this.price; + this.order.totalZec = parseFloat(zec.toFixed(6)); + const dialogConfig = new MatDialogConfig(); + + dialogConfig.disableClose = true; + dialogConfig.autoFocus = true; + dialogConfig.data = { + totalZec: this.order.totalZec, + addr: this.order.address, + orderId: this.order._id + }; + + const dialogRef = this.dialog.open(CheckoutComponent, dialogConfig); + dialogRef.afterClosed().subscribe((val) => { + if (val) { + const dialogConfig2 = new MatDialogConfig(); + dialogConfig2.disableClose = true; + dialogConfig2.autoFocus = true; + dialogConfig2.data = { + order: this.order._id + }; + console.log('Payment confirmed!'); + this.orderService.closeOrder(); + const dialogRef2 = this.dialog.open(ReceiptQRComponent, dialogConfig2); + dialogRef2.afterClosed().subscribe( val => { + if (val) { + console.log('Receipt closed.'); + } + }); + } else { + console.log('Returning to order'); + } + }); + } + + getCurrency(){ + return this.order.currency.toUpperCase(); + } +} diff --git a/src/app/order/order.model.ts b/src/app/order/order.model.ts new file mode 100644 index 0000000..435f480 --- /dev/null +++ b/src/app/order/order.model.ts @@ -0,0 +1,14 @@ +import { LineItem } from '../items/lineitem.model'; + +export interface Order { + _id?: string, + address: string, + session: string, + timestamp?: string, + closed: boolean, + currency: string, + price?: number, + total: number, + totalZec: number, + lines: LineItem[] +} diff --git a/src/app/order/order.service.ts b/src/app/order/order.service.ts new file mode 100644 index 0000000..7dec8a0 --- /dev/null +++ b/src/app/order/order.service.ts @@ -0,0 +1,225 @@ +import { Injectable } from '@angular/core'; +import { Subject, BehaviorSubject, Observable } from 'rxjs'; +import { HttpClient, HttpParams, HttpHeaders } from '@angular/common/http'; +import { Order } from './order.model'; +import { UserService } from '../user.service'; +import { FullnodeService } from '../fullnode.service'; +import { User } from '../user.model'; +import { Owner } from '../owner.model'; +import { LineItem} from '../items/lineitem.model'; + +@Injectable({providedIn: 'root'}) + +export class OrderService { + beUrl = 'http://localhost:3000/'; + private dataStore: {allOrders: Order[], user: User, order: Order, owner: Owner } = { + allOrders: [], + user:{ + address: '', + session: '', + blocktime: 0, + expired: false, + pin: '', + validated: false + }, + owner: { + _id: '', + name: '', + address: '', + currency: 'usd', + tax: false, + taxValue: 0, + vat: false, + vatValue: 0, + first: '', + last: '', + email: '', + street: '', + city: '', + state: '', + postal: '', + phone: '', + paid: false, + website: '', + country: '', + zats: false + }, + order: { + address: '', + session: '', + timestamp: '', + closed: false, + currency: '', + price: 0, + total: 0, + totalZec: 0, + lines: [ + { + qty: 1, + name: '', + cost:0 + } + ] + } + }; + private _orderUpdated: BehaviorSubject = new BehaviorSubject(this.dataStore.order); + public readonly orderUpdate: Observable = this._orderUpdated.asObservable(); + private _totalUpdated: BehaviorSubject = new BehaviorSubject(this.dataStore.order.total); + public readonly totalUpdate: Observable = this._totalUpdated.asObservable(); + private _allOrdersUpdated: BehaviorSubject = new BehaviorSubject(this.dataStore.allOrders); + public readonly allOrdersUpdate: Observable = this._allOrdersUpdated.asObservable(); + public userUpdate: Observable; + public ownerUpdate: Observable; + private apiKey = 'YourApiKey'; + private reqHeaders: HttpHeaders; + + constructor( + private http: HttpClient, + public fullnodeService: FullnodeService, + public userService: UserService + ) { + this.reqHeaders = new HttpHeaders().set('Authorization', this.apiKey); + this.userUpdate = userService.userUpdate; + this.ownerUpdate = userService.ownerUpdate; + this.userUpdate.subscribe((user) => { + this.dataStore.user = user; + //console.log('OS: const', user); + this.getOrder(); + }); + this.ownerUpdate.subscribe((owner) => { + this.dataStore.owner = owner; + }); + } + + getOrder() { + var session = this.dataStore.user.session; + const params = new HttpParams().append('session', session); + let obs = this.http.get<{message: string, order: any}>(this.beUrl+'api/order', { headers:this.reqHeaders, params:params, observe: 'response'}); + + obs.subscribe((OrderDataResponse) => { + if (OrderDataResponse.status == 200) { + this.dataStore.order = OrderDataResponse.body!.order; + this._orderUpdated.next(Object.assign({}, this.dataStore).order); + this.dataStore.order.total = 0; + for(var line of this.dataStore.order.lines) { + this.dataStore.order.total += line.qty * line.cost; + } + this._totalUpdated.next(Object.assign({}, this.dataStore).order.total); + } else { + console.log('No order found'); + } + }); + + return obs; + } + + getAllOrders(){ + var address = this.dataStore.user.address; + const params = new HttpParams().append('address', address); + let obs = this.http.get<{message: string, orders: any}>(this.beUrl+'api/allorders', { headers:this.reqHeaders, params:params, observe: 'response'}); + obs.subscribe((OrdersData) => { + if (OrdersData.status == 200 ){ + console.log('getAllOrder:', OrdersData.body); + this.dataStore.allOrders = OrdersData.body!.orders; + this._allOrdersUpdated.next(Object.assign({}, this.dataStore).allOrders); + } else { + console.log('No orders'); + } + }); + + return obs; + } + + addToOrder(lineItem: LineItem) { + if(this.dataStore.order._id != null) { + let obs = this.http.post<{message: string}>(this.beUrl+'api/lineitem', { order_id: this.dataStore.order._id, line: lineItem }, { headers: this.reqHeaders }); + obs.subscribe((orderData) => { + this.getOrder(); + }); + } else { + this.createOrder(lineItem); + } + } + + createOrder(lineItem: LineItem) { + var order:Order = { + address: this.dataStore.user.address, + session: this.dataStore.user.session, + currency: this.dataStore.owner.currency, + closed: false, + totalZec: 0, + price: 0, + total: 0, + lines: [] + }; + let obs = this.http.post<{message: string, order: Order}>(this.beUrl+'api/order', {order: order}, { headers: this.reqHeaders }); + obs.subscribe((orderData) => { + console.log('Create order', orderData); + this.dataStore.order = orderData.order; + this._orderUpdated.next(Object.assign({}, this.dataStore).order); + this.addToOrder(lineItem); + }); + + return obs; + } + + cancelOrder(id: string) { + let obs = this.http.delete<{message: string}>(this.beUrl+'api/order/'+id, { headers: this.reqHeaders }); + + obs.subscribe((OrderResponse) => { + console.log('Order deleted'); + //this.getOrder(); + this.dataStore.order = { + address: '', + session: '', + timestamp: '', + closed: false, + currency: '', + total: 0, + totalZec: 0, + price: 0, + lines: [ + { + qty: 1, + name: '', + cost:0 + } + ] + }; + this._orderUpdated.next(Object.assign({}, this.dataStore).order); + }); + + return obs; + } + + closeOrder(){ + this.fullnodeService.priceUpdate.subscribe((price) => { + this.dataStore.order.price = price; + }); + this.dataStore.order.closed = true; + let obs = this.http.post<{message: string, order: Order}>(this.beUrl+'api/order', {order: this.dataStore.order}, { headers: this.reqHeaders }); + obs.subscribe((orderData) => { + console.log('Closed order', orderData); + this.dataStore.order = { + address: '', + session: '', + timestamp: '', + closed: false, + currency: '', + price: 0, + total: 0, + totalZec: 0, + lines: [ + { + qty: 1, + name: '', + cost:0 + } + ] + }; + this._orderUpdated.next(Object.assign({}, this.dataStore).order); + }); + return obs; + } + +} diff --git a/src/app/owner.model.ts b/src/app/owner.model.ts new file mode 100644 index 0000000..b80dc95 --- /dev/null +++ b/src/app/owner.model.ts @@ -0,0 +1,22 @@ +export interface Owner { + _id?: string; + address: string; + name: string; + currency: string; + tax: boolean; + taxValue: number; + vat: boolean; + vatValue: number; + first: string; + last: string; + email: string; + street: string; + city: string; + state: string; + postal: string; + phone: string; + paid: boolean; + website: string; + country: string; + zats: boolean; +} diff --git a/src/app/payment.model.ts b/src/app/payment.model.ts new file mode 100644 index 0000000..7a7e09c --- /dev/null +++ b/src/app/payment.model.ts @@ -0,0 +1,7 @@ +export interface Payment { + _id?: string; + address: string; + blocktime: number; + expiration: string; + amount: number; +} diff --git a/src/app/receipt-qr/receipt-qr.component.css b/src/app/receipt-qr/receipt-qr.component.css new file mode 100644 index 0000000..ef8f0ab --- /dev/null +++ b/src/app/receipt-qr/receipt-qr.component.css @@ -0,0 +1,4 @@ + +.text { + font-family: 'Spartan', sans-serif; +} diff --git a/src/app/receipt-qr/receipt-qr.component.html b/src/app/receipt-qr/receipt-qr.component.html new file mode 100644 index 0000000..0533f99 --- /dev/null +++ b/src/app/receipt-qr/receipt-qr.component.html @@ -0,0 +1,13 @@ +
+

Scan for your Receipt

+
+ + +
+
+ + + + diff --git a/src/app/receipt-qr/receipt-qr.component.spec.ts b/src/app/receipt-qr/receipt-qr.component.spec.ts new file mode 100644 index 0000000..3f54f57 --- /dev/null +++ b/src/app/receipt-qr/receipt-qr.component.spec.ts @@ -0,0 +1,25 @@ +import { ComponentFixture, TestBed } from '@angular/core/testing'; + +import { ReceiptQRComponent } from './receipt-qr.component'; + +describe('ReceiptQRComponent', () => { + let component: ReceiptQRComponent; + let fixture: ComponentFixture; + + beforeEach(async () => { + await TestBed.configureTestingModule({ + declarations: [ ReceiptQRComponent ] + }) + .compileComponents(); + }); + + beforeEach(() => { + fixture = TestBed.createComponent(ReceiptQRComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/src/app/receipt-qr/receipt-qr.component.ts b/src/app/receipt-qr/receipt-qr.component.ts new file mode 100644 index 0000000..bf3f3aa --- /dev/null +++ b/src/app/receipt-qr/receipt-qr.component.ts @@ -0,0 +1,38 @@ +import { Inject, Component, OnInit, ViewEncapsulation} from '@angular/core'; +import { MatDialog, MatDialogRef, MAT_DIALOG_DATA} from '@angular/material/dialog'; +import { DomSanitizer, SafeUrl } from '@angular/platform-browser'; + +var QRCode = require('easyqrcodejs'); + +@Component({ + selector: 'app-receipt-qr', + templateUrl: './receipt-qr.component.html', + styleUrls: ['./receipt-qr.component.css'] +}) +export class ReceiptQRComponent implements OnInit { + receiptUrl: SafeUrl; + codeString: string = ''; + + constructor( + private dialogRef: MatDialogRef, + private sanitizer: DomSanitizer, + @Inject(MAT_DIALOG_DATA) public data: { order: string} + ) { + this.codeString = `https://zgo.cash/receipt/${data.order}`; + this.receiptUrl = this.sanitizer.bypassSecurityTrustUrl(this.codeString); + } + + ngOnInit(): void { + var qrcode = new QRCode(document.getElementById("receipt-qr"), { + text: this.codeString, + logo: "/assets/zgo-prp.png", + logoWidth: 80, + logoHeight: 80 + }); + + } + + close() { + this.dialogRef.close(true); + } +} diff --git a/src/app/receipt.service.spec.ts b/src/app/receipt.service.spec.ts new file mode 100644 index 0000000..88f1f9d --- /dev/null +++ b/src/app/receipt.service.spec.ts @@ -0,0 +1,16 @@ +import { TestBed } from '@angular/core/testing'; + +import { ReceiptService } from './receipt.service'; + +describe('ReceiptService', () => { + let service: ReceiptService; + + beforeEach(() => { + TestBed.configureTestingModule({}); + service = TestBed.inject(ReceiptService); + }); + + it('should be created', () => { + expect(service).toBeTruthy(); + }); +}); diff --git a/src/app/receipt.service.ts b/src/app/receipt.service.ts new file mode 100644 index 0000000..749f019 --- /dev/null +++ b/src/app/receipt.service.ts @@ -0,0 +1,91 @@ +import { Injectable } from '@angular/core'; +import { Subject, BehaviorSubject, Observable } from 'rxjs'; +import { HttpClient, HttpParams, HttpHeaders } from '@angular/common/http'; +import { Order } from './order/order.model'; +import { Owner } from './owner.model'; +import { UserService } from './user.service'; + +@Injectable({ + providedIn: 'root' +}) +export class ReceiptService { + beUrl = 'http://localhost:3000/'; + private dataStore: {order: Order, owner: Owner } = { + owner: { + _id: '', + name: '', + address: '', + currency: 'usd', + tax: false, + taxValue: 0, + vat: false, + vatValue: 0, + first: '', + last: '', + email: '', + street: '', + city: '', + state: '', + postal: '', + phone: '', + paid: false, + website: '', + country: '', + zats: false + }, + order: { + address: '', + session: '', + timestamp: '', + closed: false, + currency: '', + price: 0, + total: 0, + totalZec: 0, + lines: [ + { + qty: 1, + name: '', + cost:0 + } + ] + } + }; + private _orderUpdated: BehaviorSubject = new BehaviorSubject(this.dataStore.order); + public readonly orderUpdate: Observable = this._orderUpdated.asObservable(); + public _nameUpdated: BehaviorSubject = new BehaviorSubject(this.dataStore.owner.name); + public readonly nameUpdate: Observable= this._nameUpdated.asObservable(); + public readonly ownerUpdate; + private apiKey = 'YourApiKey'; + private reqHeaders: HttpHeaders; + + constructor( + private http: HttpClient, + public userService: UserService + ) { + this.reqHeaders = new HttpHeaders().set('Authorization', this.apiKey); + this.ownerUpdate = userService.ownerUpdate; + } + + getOrderById(id:string) { + const params = new HttpParams().append('id', id); + let obs = this.http.get<{message: string, order: any}>(this.beUrl+'api/receipt', { headers:this.reqHeaders, params:params, observe: 'response'}); + + obs.subscribe((OrderDataResponse) => { + if (OrderDataResponse.status == 200) { + this.dataStore.order = OrderDataResponse.body!.order; + this._orderUpdated.next(Object.assign({}, this.dataStore).order); + this.userService.getOwner(this.dataStore.order.address); + this.ownerUpdate.subscribe((owner) => { + this.dataStore.owner = owner; + this._nameUpdated.next(Object.assign({}, this.dataStore).owner.name); + }); + } else { + console.log('No order found'); + } + }); + + return obs; + } + +} diff --git a/src/app/receipt/receipt.component.css b/src/app/receipt/receipt.component.css new file mode 100644 index 0000000..150ba86 --- /dev/null +++ b/src/app/receipt/receipt.component.css @@ -0,0 +1,36 @@ +* { + font-family: 'Spartan', sans-serif; +} + +.spacer{ + flex: 1 1 auto; +} +.mat-card{ + font-family: 'Spartan', sans-serif; + border: 1px solid #FF7522; + width: 80%; + text-align: left; + margin: 5px; + max-width: 500px; +} +.mat-card-title{ + font-size: 16px; + font-weight: 700; +} +.mat-card-subtitle{ + font-size: 12px; + font-weight: 200; +} +.mat-card-content{ + font-size: 14px; + text-align: justify; +} +span.tt{ + font-family: 'Roboto-Mono', monospace; +} +img.total{ + margin-bottom:-2px; +} +.small{ + font-size: 10px; +} diff --git a/src/app/receipt/receipt.component.html b/src/app/receipt/receipt.component.html new file mode 100644 index 0000000..bf950f6 --- /dev/null +++ b/src/app/receipt/receipt.component.html @@ -0,0 +1,44 @@ + + + + + + +

{{name}}

+
+
+
+ + + Total: {{order.totalZec | number: '1.0-6'}} + + + {{order.timestamp | date}} + + +

Order ID: {{orderId}}

+

Zcash Price: {{order.price | currency: order.currency.toUpperCase()}}

+
+ + + + + + + + + + + +
+ Item + + Qty. + + Price ({{order.currency.toUpperCase()}}) +
{{item.name}}{{item.qty}}{{(item.qty * item.cost) | currency: order.currency.toUpperCase()}}
+
+ +
+
+
diff --git a/src/app/receipt/receipt.component.spec.ts b/src/app/receipt/receipt.component.spec.ts new file mode 100644 index 0000000..646d211 --- /dev/null +++ b/src/app/receipt/receipt.component.spec.ts @@ -0,0 +1,25 @@ +import { ComponentFixture, TestBed } from '@angular/core/testing'; + +import { ReceiptComponent } from './receipt.component'; + +describe('ReceiptComponent', () => { + let component: ReceiptComponent; + let fixture: ComponentFixture; + + beforeEach(async () => { + await TestBed.configureTestingModule({ + declarations: [ ReceiptComponent ] + }) + .compileComponents(); + }); + + beforeEach(() => { + fixture = TestBed.createComponent(ReceiptComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/src/app/receipt/receipt.component.ts b/src/app/receipt/receipt.component.ts new file mode 100644 index 0000000..67e9038 --- /dev/null +++ b/src/app/receipt/receipt.component.ts @@ -0,0 +1,55 @@ +import { Component, OnInit } from '@angular/core'; +import { ActivatedRoute } from '@angular/router'; +import { Order} from '../order/order.model'; +import { ReceiptService } from '../receipt.service'; +import { Observable } from 'rxjs'; + +@Component({ + selector: 'app-receipt', + templateUrl: './receipt.component.html', + styleUrls: ['./receipt.component.css'] +}) +export class ReceiptComponent implements OnInit { + orderId; + public orderUpdate: Observable; + public nameUpdate: Observable; + name: string = ''; + order:Order = { + address: '', + session: '', + timestamp: '', + closed: false, + currency: '', + price: 0, + total: 0, + totalZec: 0, + lines: [ + { + qty: 1, + name: '', + cost:0 + } + ] + }; + + constructor( + private _ActiveRoute:ActivatedRoute, + public receiptService: ReceiptService + ) { + this.orderId = this._ActiveRoute.snapshot.paramMap.get("orderId"); + this.orderUpdate = receiptService.orderUpdate; + this.nameUpdate = receiptService.nameUpdate; + receiptService.getOrderById(this.orderId!); + this.orderUpdate.subscribe(order => { + this.order = order; + }); + + this.nameUpdate.subscribe(name => { + this.name = name; + }); + } + + ngOnInit(): void { + } + +} diff --git a/src/app/scan/scan.component.css b/src/app/scan/scan.component.css new file mode 100644 index 0000000..9bc9dd3 --- /dev/null +++ b/src/app/scan/scan.component.css @@ -0,0 +1,12 @@ +.text { + font-family: 'Spartan', sans-serif; +} +.mat-dialog-title{ + line-height: 20px; +} +h4.text{ + margin: 0px; +} +.small { + font-size: small; +} diff --git a/src/app/scan/scan.component.html b/src/app/scan/scan.component.html new file mode 100644 index 0000000..864d305 --- /dev/null +++ b/src/app/scan/scan.component.html @@ -0,0 +1,27 @@ +
+

Scan the QR code

+
+ + +
+

Ensure to check the "Include Reply-To" box in your wallet before sending your memo.

+
+
+
+ + + + + + +
+ + + +
+

Can't scan? Use this wallet link. + diff --git a/src/app/scan/scan.component.ts b/src/app/scan/scan.component.ts new file mode 100644 index 0000000..c4742a9 --- /dev/null +++ b/src/app/scan/scan.component.ts @@ -0,0 +1,56 @@ +import { Inject, Component, OnInit, ViewEncapsulation} from '@angular/core'; +import { MatDialog, MatDialogRef, MAT_DIALOG_DATA} from '@angular/material/dialog'; +import { DomSanitizer, SafeUrl } from '@angular/platform-browser'; + +var QRCode = require('easyqrcodejs'); +var URLSafeBase64 = require('urlsafe-base64'); +var Buffer = require('buffer/').Buffer; + +@Component({ + selector: 'app-scan', + templateUrl: './scan.component.html', + styleUrls: ['./scan.component.css'] +}) + +export class ScanComponent implements OnInit{ + address: string; + total: number; + session: string; + codeString: string = ''; + pay: boolean = false; + zcashUrl: SafeUrl; + + constructor( + private dialogRef: MatDialogRef, + private sanitizer: DomSanitizer, + @Inject(MAT_DIALOG_DATA) public data: { totalZec: number, addr: string, session: string, pay: boolean} + ) { + this.address = data.addr; + this.total = data.totalZec; + this.session = data.session; + this.pay = data.pay; + if (this.pay) { + this.codeString = `zcash:${this.address}?amount=${this.total.toFixed(8)}&memo=${URLSafeBase64.encode(Buffer.from('ZGOp::'.concat(this.session)))}`; + } else { + this.codeString = `zcash:${this.address}?amount=${this.total.toFixed(8)}&memo=${URLSafeBase64.encode(Buffer.from('ZGO::'.concat(this.session)))}`; + } + this.zcashUrl = this.sanitizer.bypassSecurityTrustUrl(this.codeString); + } + + ngOnInit() { + var qrcode = new QRCode(document.getElementById("checkout-qr"), { + text: this.codeString, + logo: "/assets/zcash.png", + logoWidth: 80, + logoHeight: 80 + }); + } + + confirm() { + this.dialogRef.close(true); + } + + close() { + this.dialogRef.close(false); + } +} diff --git a/src/app/searchoptions.pipe.ts b/src/app/searchoptions.pipe.ts new file mode 100644 index 0000000..7cd4cf6 --- /dev/null +++ b/src/app/searchoptions.pipe.ts @@ -0,0 +1,15 @@ +import { Pipe, PipeTransform } from '@angular/core'; + +@Pipe({ + name: 'searchOptions' +}) +export class SearchOptionsPipe implements PipeTransform { + transform(items: any[], filter: string): any { + if (!items || !filter) { + return items; + } + + // This will search and match any option.value that contains the search term + return items.filter(item => item.name.toLowerCase().indexOf(filter.toLowerCase()) !== -1); + } +} diff --git a/src/app/settings/settings.component.css b/src/app/settings/settings.component.css new file mode 100644 index 0000000..72174fa --- /dev/null +++ b/src/app/settings/settings.component.css @@ -0,0 +1,7 @@ +* { + font-family: 'Spartan', sans-serif; +} + +.mat-dialog-content { + max-width: 300px; +} diff --git a/src/app/settings/settings.component.html b/src/app/settings/settings.component.html new file mode 100644 index 0000000..319360c --- /dev/null +++ b/src/app/settings/settings.component.html @@ -0,0 +1,24 @@ +

Settings

+ + + + Name + + + + Currency + + + {{coin.label}} + + + + + Display Zcash amount in zatoshis? + + + + + + + diff --git a/src/app/settings/settings.component.ts b/src/app/settings/settings.component.ts new file mode 100644 index 0000000..3f7b63e --- /dev/null +++ b/src/app/settings/settings.component.ts @@ -0,0 +1,69 @@ +import { Inject, Component, OnInit, OnDestroy, ViewEncapsulation } from '@angular/core'; +import { MatDialog, MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog'; +import { MatSlideToggleChange } from '@angular/material/slide-toggle'; +import { FormBuilder, Validators, FormGroup, FormControl } from '@angular/forms'; +import {User} from '../user.model'; +import {Owner} from '../owner.model'; + +@Component({ + selector: 'app-settings', + templateUrl: './settings.component.html', + styleUrls: ['/settings.component.css'] +}) + +export class SettingsComponent implements OnInit { + + settingsForm: FormGroup; + owner: Owner; + useZats: boolean; + coins = [ + { + label: 'US Dollar', + symbol: 'usd' + },{ + label: 'Euro', + symbol: 'eur' + },{ + label: 'British Pound', + symbol: 'gbp' + },{ + label: 'Canadian Dollar', + symbol: 'cad' + },{ + label: 'Australian Dollar', + symbol: 'aud' + } + ]; + + constructor( + private fb: FormBuilder, + private dialogRef: MatDialogRef, + @Inject(MAT_DIALOG_DATA) public data: Owner + ) { + this.useZats = data.zats; + this.settingsForm = fb.group({ + name: [data.name, Validators.required], + currency: [data.currency, Validators.required], + useZats: [data.zats, Validators.required] + }); + this.owner = data; + } + + ngOnInit() { + } + + close() { + this.dialogRef.close(); + } + + save() { + this.owner.name = this.settingsForm.value.name; + this.owner.currency = this.settingsForm.value.currency; + this.owner.zats = this.useZats; + this.dialogRef.close(this.owner); + } + + onChange(ob: MatSlideToggleChange) { + this.useZats = ob.checked; + } +} diff --git a/src/app/terms/terms.component.css b/src/app/terms/terms.component.css new file mode 100644 index 0000000..9091bba --- /dev/null +++ b/src/app/terms/terms.component.css @@ -0,0 +1,8 @@ +* { + font-family: 'Spartan', sans-serif; +} + +mat-card.centercard{ + max-width: 500px; + border: 1px solid #CCCCCC; +} diff --git a/src/app/terms/terms.component.html b/src/app/terms/terms.component.html new file mode 100644 index 0000000..e68ad21 --- /dev/null +++ b/src/app/terms/terms.component.html @@ -0,0 +1,106 @@ +

Terms of Use

+ +

THIS TERMS OF USE AGREEMENT ("Agreement") is made between Vergara Technologies LLC ("Company") as operator of ZGo.cash and any person or entity ("User") who completes the process to utilize, or operate the software known as the ZGo application, and data processing service, communication service or other content or offered or provided with the software by the Company ("Software"). The Company and User are collectively referred to as the "Parties." BY CLICKING THE ACCEPTANCE BUTTON OR ACCESSING, USING ANY PART OF THE SOFTWARE, USER EXPRESSLY AGREES TO AND CONSENTS TO BE LEGALLY BOUND BY ALL OF THE TERMS OF THIS AGREEMENT. IF USER DOES NOT AGREE TO ALL OF THE TERMS OF THIS AGREEMENT, THE USER SHALL NOT BE AUTHORIZED TO ACCESS OR USE ANY PART OF THE SOFTWARE. +

+

1. Rights and Obligations

+
    +
  1. Description. The Software functions as an open source, digital point-of-sale application. The Software does not constitute an account by which the Company or any other third parties serve as financial intermediaries or custodians of User's Zcash or any other cryptocurrency. While the Software has undergone beta testing and continues to be improved by feedback from the developers community, open-source contributors and beta-testers, the Company cannot guarantee that there will be no bugs in the Software. User acknowledges that User's use of the Software is at User's risk, discretion and in compliance with all applicable laws. User is responsible for safekeeping User's passwords, PINs, private keys, viewing keys, backup recovery mnemonic passphrases and any other codes User uses to access the Software or any information, Zcash, or other cryptocurrency unit. IF USER LOSES ACCESS TO USER'S CRYPTOCURRENCY WALLET OR PRIVATE KEYS AND HAS NOT SEPARATELY STORED A BACKUP OF USER'S CRYPTOCURRENCY WALLET OR BACKUP RECOVERY MNEMONIC PHRASE(S) AND CORRESPONDING PASSWORD(S), USER ACKNOWLEDGES AND AGREES THAT ANY ORDERS OR ANY OTHER DATA USER HAS ASSOCIATED WITH THAT CRYPTOCURRENCY WALLET WILL BECOME INACCESSIBLE. All transaction requests are irreversible. The Company and its shareholders, directors, officers, employees, affiliates and agents cannot guarantee transaction confirmation or retrieve User's private keys or passwords if User loses or forgets them.
  2. +
  3. Accessibility. User agrees that from time to time the Software may be inaccessible or inoperable for any reason, including, without limitation: (i) equipment malfunctions; (ii) periodic maintenance procedures or repairs which the Company may undertake from time to time; or (iii) causes beyond the control of the Company or which are not reasonably foreseeable by the Company.
  4. +
  5. Equipment. User shall be solely responsible for providing, maintaining and ensuring compatibility with the Software, all hardware, software, electrical and other physical requirements for User's use of the Software, including, without limitation, telecommunications and internet access connections and links, web browsers or other equipment, compatible Zcash wallets, programs and services required to access and use the Software.
  6. +
  7. Security. User shall be solely responsible for the security, confidentiality and integrity of all information and content that User receives, transmits through or stores on the Software. User shall be solely responsible for any authorized or unauthorized access to any account of User by any person. User agrees to bear all responsibility for the confidentiality of User's security devices, information, keys, and passwords.
  8. +
  9. Privacy. When reasonably practicable, the Company will attempt to respect User's privacy. The Company will not monitor, edit, or disclose any personal information about User or User's account, including its contents or User's use of the Software, without User's prior consent unless the Company believes in good faith that such action is necessary to: (i) comply with legal process or other legal requirements of any governmental authority; (ii) protect and defend the rights or property of the Company; (iii) enforce this Agreement; (iv) protect the interests of users of the Software other than User or any other person; or (v) operate or conduct maintenance and repair of the Company's services or equipment, including the Software as authorized by law. User has no expectation of privacy with respect to the Internet generally.
  10. +
+

2. Taxes and Fees

+

All currency conversion charges, third party fees, sales, use, value-added, personal property or other tax, duty or levy of any kind, including interest and penalties thereon, whether imposed now or hereinafter by any governmental entity, and fees incurred by User by reason of User's access or use of the Software shall be the sole responsibility of User.

+

3. User Representations

+

User represents and warrants to the Company that:

+
    +
  1. If User is a natural person, User is over the age of eighteen (18).
  2. +
  3. User has the power and authority to enter into and perform User's obligations under this Agreement.
  4. +
  5. All information provided by User to the Company is truthful, accurate and complete
  6. +
  7. User will comply with all laws and regulations of any applicable jurisdiction with regard to User's access or use of the Software
  8. +
  9. User shall comply with all terms and conditions of this Agreement, including, without limitation, the provisions set forth at Section
  10. +
  11. User has provided and will provide accurate and complete information as required for access, use or installation of the Software.
  12. +
  13. User is not a citizen, national, or resident of Cuba, North Korea, Iran or Syria.
  14. +
+

4. Prohibited uses

+

User is solely responsible for any and all acts and omissions that occur under User's account, security information, keys or password, and User agrees not to engage in unacceptable use of the Software, which includes, without limitation, use of the Software for activities that:

+
    +
  1. Violate any law, statute, ordinance or regulation.
  2. +
  3. Create a false identity or to otherwise attempt to mislead any person as to the identity of the merchant.
  4. +
  5. Interfere, disrupt or attempt to gain unauthorized access to other accounts on the Software or any other computer network
  6. +
  7. Relate to transactions involving:
  8. +
      +
    1. Narcotics, certain controlled substances or other products that present a risk to consumer safety.
    2. +
    3. Items that encourage, promote, facilitate or instruct others to engage in illegal activity.
    4. +
    5. Stolen goods including digital and virtual goods.
    6. +
    7. The promotion of hate, violence, racial or other forms of intolerance that is discriminatory.
    8. +
    9. Items that infringe or violate any copyright, trademark, right of publicity or privacy or any other proprietary right under the laws of any jurisdiction.
    10. +
    11. Certain weapons or knives regulated under applicable law.
    12. +
    13. Showing the personal information of third parties in violation of applicable law.
    14. +
    15. Pyramid or ponzi schemes, matrix programs, other "get rich quick" schemes or certain multi-level marketing programs.
    16. +
    17. Purchases of annuities or lottery contracts, lay-away systems, off-shore banking or transactions to finance or refinance debts funded by a credit card.
    18. +
    19. Sale of certain items before the seller has control or possession of the item.
    20. +
    21. Sale of traveler's checks or money orders.
    22. +
    23. Certain credit repair, debt settlement services, credit transactions or insurance activities.
    24. +
    25. Offering or receiving payments for the purpose of bribery or corruption.
    26. +
    27. Sales of products or services identified by government agencies to have a high likelihood of being fraudulent.
    28. +
    29. Any activity that requires pre-approval without having obtained said approval.
    30. +
    +
+

5. Activities requiring approval

+

ZGo.cash requires pre-approval to provide access to the application for certain services, including but not limited to:

+
    +
  1. Payment Facilitator. Providing payment services which would fall under the definition of a money service business or an electronic money institution. Services would also include the sale of stored value cards and escrow services.
  2. +
  3. Investments. Buying, selling, or brokering stocks, bonds, securities, options, figures, commodities, contracts for difference/forex, mutual funds or an investment interest in any entity or property.
  4. +
  5. Gambling, Gaming, Prize Draws and Contests. Activities involving gambling, gaming and/or any other activity with an entry fee and a prize, including, but not limited to property/real estate prizes, casino games, sports betting, horse or greyhound racing, fantasy sports, lottery tickets, other ventures that facilitate gambling, games of skill (whether or not legally defined as gambling) and sweepstakes, if the operator and customers are located exclusively in jurisdictions where such activities are permitted by law.
  6. +
  7. Prescription Items. The sale of any product(s) requiring a prescription or prescription dispensing services.
  8. +
  9. Mature Audience Content. Any adult content delivered digitally including video on demand (VOD) and web-cam activities.
  10. +
  11. Alcohol.
  12. +
  13. Tobacco.
  14. +
  15. Medical Items or Services. All items classified as medical devices, and all services or treatment provided by a person or organization holding itself out as a provider of health-care services, including, but not limited to, all health-care services for which government licensure is required in the provider’s jurisdiction or in the jurisdiction where services are being provided. This category includes “Medical Tourism” involving medical services to be provided to a patient outside of that patient’s home country.
  16. +
+

6. Termination

+

This Agreement is effective upon User's acceptance as set forth herein and shall continue in full force so long as User engages in any access, use or installation of the Software. The Company reserves the right, in its sole discretion and without notice, at any time and for any reason, to:

+
    +
  1. Remove or disable access to all or any portion of the Software
  2. +
  3. Suspend User's access to or use of all or any portion of the Software
  4. +
  5. Terminate this Agreement.
  6. +
+

7. Disclaimer of Warranties

+

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED. USE OF THE SOFTWARE IS AT USER'S SOLE RISK. THE COMPANY DOES NOT WARRANT THAT THE SOFTWARE WILL BE UNINTERRUPTED OR ERROR FREE, NOR DOES THE COMPANY MAKE ANY WARRANTY AS TO ANY RESULTS THAT MAY BE OBTAINED BY USE OF THE SOFTWARE. THE COMPANY MAKES NO OTHER WARRANTIES, EXPRESS OR IMPLIED. THE COMPANY EXPRESSLY DISCLAIMS ANY WARRANTY OF MERCHANTABILITY, WARRANTY OF SUITABILITY FOR A PARTICULAR PURPOSE, WARRANTY OF TITLE OR INTEREST, OR WARRANTY OF NONINFRINGEMENT.

+

8. Limitation of Liability

+

IN NO EVENT SHALL THE COMPANY OR ITS SHAREHOLDERS, DIRECTORS, OFFICERS, EMPLOYEES, AFFILIATES OR AGENTS, OR ANY OF ITS OR THEIR RESPECTIVE SERVICE PROVIDERS, BE LIABLE TO USER OR ANY THIRD PARTY FOR ANY USE, INTERRUPTION, DELAY OR INABILITY TO USE THE SOFTWARE, LOST REVENUES OR PROFITS, DELAYS, INTERRUPTION OR LOSS OF SERVICES, BUSINESS OR GOODWILL, LOSS OR CORRUPTION OF DATA, LOSS RESULTING FROM SYSTEM OR SYSTEM SERVICE FAILURE, MALFUNCTION OR SHUTDOWN, FAILURE TO ACCURATELY TRANSFER, READ OR TRANSMIT INFORMATION, FAILURE TO UPDATE OR PROVIDE CORRECT INFORMATION, SYSTEM INCOMPATIBILITY OR PROVISION OF INCORRECT COMPATIBILITY INFORMATION OR BREACHES IN SYSTEM SECURITY, OR FOR ANY CONSEQUENTIAL, INCIDENTAL, INDIRECT, EXEMPLARY, SPECIAL OR PUNITIVE DAMAGES, WHETHER ARISING OUT OF OR IN CONNECTION WITH THIS AGREEMENT, BREACH OF CONTRACT, TORT (INCLUDING NEGLIGENCE) OR OTHERWISE, REGARDLESS OF WHETHER SUCH DAMAGES WERE FORESEEABLE AND WHETHER OR NOT WE WERE ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. IN NO EVENT SHALL THE COMPANY OR ITS SHAREHOLDERS, DIRECTORS, OFFICERS, EMPLOYEES, AFFILIATES OR AGENTS, OR ANY OF ITS OR THEIR RESPECTIVE SERVICE PROVIDERS, BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM OR IN ANY WAY RELATED TO USER'S ACCESS, USE OR INSTALLATION OF THE SOFTWARE. SOME JURISDICTIONS PROHIBIT THE EXCLUSION OR LIMITATION OF INCIDENTAL OR CONSEQUENTIAL DAMAGES, THUS THIS LIMITATION OF LIABILITY MAY NOT APPLY TO USER. IF USER IS DISSATISFIED WITH THE SOFTWARE, USER'S SOLE AND EXCLUSIVE REMEDY SHALL BE FOR USER TO DISCONTINUE USE OF THE SOFTWARE.

+

8. Indemnification

+

User agrees to indemnify, hold harmless and defend the Company, its shareholders, directors, officers, employees, affiliates and agents ("Indemnified Parties") from and against any action, cause, claim, damage, debt, demand or liability, including reasonable costs and attorney's fees, asserted by any person, arising out of or relating to:

+
    +
  1. This Agreement
  2. +
  3. User's access, use or installation of the Software, including any data or work transmitted or received by User
  4. +
  5. Any unacceptable use of the Software by any person, including, without limitation, any statement, data or content made, transmitted or republished by User or any person which is prohibited as unacceptable under Section 4.
  6. +
+

THIS INDEMNIFICATION INCLUDES THE EXPRESS INDEMNIFICATION OF THE COMPANY AND ALL INDEMNIFIED PARTIES FOR ANY ALLEGED NEGLIGENCE (INCLUDING ANY ALLEGED GROSS NEGLIGENCE). OR OTHER ALLEGED MISCONDUCT OF THE COMPANY OR ANY INDEMNIFIED PARTIES.

+

9. Intellectual Property

+

The Company retains all right, title, and interest in and to all of the Company's brands, logos, and trademarks, including, but not limited to, Vergara Technologies LLC, ZGo, ZGo.cash, ZGo Cash App, and variations of the wording of the aforementioned brands, logos, and trademarks.

+

10. Warnings

+

User acknowledges that the Company shall not be responsible for transferring, safeguarding, or maintaining private keys and/or User's Zcash or any other cryptocurrency. If User and/or any co-signing authorities lose, mishandle, or have stolen associated private keys, or if User's cosigners refuse to provide requisite authority, User acknowledges that User may not be able to recover User's Zcash or any other cryptocurrency, and that the Company shall not be responsible for such loss.

+

User acknowledges and agrees that Zcash or any other cryptocurrency transactions facilitated by the Software and/or the Company may be delayed, and that the Company shall not be responsible for any associated loss. User acknowledges and agrees that the Company shall not be responsible for any aspect of the information, content, or services contained in any third-party materials or on any third party sites accessible or linked to the Software and/or the Company.

+

By using the Software, User acknowledges and agrees: (i) that the Company is not responsible for the operation of the underlying protocols and that the Company makes no guarantee of their functionality, security, or availability; and (ii) that the underlying protocols are subject to sudden main-chain changes in operating rules ("forks"), and that such forks may materially affect the value, and/or function of Zcash or any other cryptocurrency that may be supported on the Software. In the event of a fork, User agrees that the Company may temporarily suspend the Software operations (with or without notice to User) and that the Company may, in its sole discretion,

+
    +
  1. Configure or reconfigure its systems, or
  2. +
  3. decide not to support (or cease supporting) the forked protocol entirely.
  4. +
+

User acknowledges and agrees that the Company assumes absolutely no responsibility whatsoever in respect of an unsupported branch of a forked protocol.

+

11. Miscellaneous

+
    +
  1. Amendment. The Company shall have the right, at any time and without notice, to add to or modify the terms of this Agreement, simply by delivering such amended terms to User by electronic message through any medium to any address provided to the Company by User. User's access to or use of the Software after the date such amended terms are delivered to User shall be deemed to constitute acceptance of such amended terms.
  2. +
  3. Severance. If any provision or part-provision of this Agreement is, or becomes invalid, illegal or unenforceable, it shall be deemed modified to the minimum extent necessary to make it valid, legal and enforceable. If such modification is not possible, the relevant provision or part-provision shall be deemed deleted. Any modification to or deletion of a provision or part-provision under this Article shall not affect the validity and enforceability of the rest of this Agreement.
  4. +
  5. Entire Agreement – Disclaimer of Reliance. This Agreement constitutes the entire agreement between the Parties with respect to the subject matter hereof and supersedes all prior agreements or understandings between the Parties. User expressly represents and warrants that it is not relying upon any statements, understandings, representations, expectations or agreements other than those expressly set forth in this Agreement.
  6. +
  7. THIS AGREEMENT IS SUBJECT TO BINDING ARBITRATION. User agrees that any and all disputes or claims against any person arising out of or in any way related to this Agreement or the access, use or installation of the Software by User or any other person shall be subject to binding arbitration under the Rules of Arbitration of the International Chamber of Commerce by one or more arbitrators appointed in accordance with the said Rules. The location of the arbitration shall be the state of Minnesota in the United States. The language of the arbitration shall be English.
  8. +
  9. LANGUAGE. Any translation of this Agreement is made for purposes of local reference only and in the event of any inconsistency between the English and any non-English versions, the English version of this Agreement shall prevail and govern in all respects.
  10. +
+
+ +
+ +
+
diff --git a/src/app/terms/terms.component.spec.ts b/src/app/terms/terms.component.spec.ts new file mode 100644 index 0000000..d0089d2 --- /dev/null +++ b/src/app/terms/terms.component.spec.ts @@ -0,0 +1,25 @@ +import { ComponentFixture, TestBed } from '@angular/core/testing'; + +import { TermsComponent } from './terms.component'; + +describe('TermsComponent', () => { + let component: TermsComponent; + let fixture: ComponentFixture; + + beforeEach(async () => { + await TestBed.configureTestingModule({ + declarations: [ TermsComponent ] + }) + .compileComponents(); + }); + + beforeEach(() => { + fixture = TestBed.createComponent(TermsComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/src/app/terms/terms.component.ts b/src/app/terms/terms.component.ts new file mode 100644 index 0000000..8587717 --- /dev/null +++ b/src/app/terms/terms.component.ts @@ -0,0 +1,22 @@ +import { Component, OnInit } from '@angular/core'; +import { MatDialog, MatDialogRef, MAT_DIALOG_DATA} from '@angular/material/dialog'; + +@Component({ + selector: 'app-terms', + templateUrl: './terms.component.html', + styleUrls: ['./terms.component.css'] +}) +export class TermsComponent implements OnInit { + + constructor( + private dialogRef: MatDialogRef + ) { } + + ngOnInit(): void { + } + + close() { + this.dialogRef.close(false); + } + +} diff --git a/src/app/tx.model.ts b/src/app/tx.model.ts new file mode 100644 index 0000000..69b43f5 --- /dev/null +++ b/src/app/tx.model.ts @@ -0,0 +1,7 @@ +export interface Tx { + _id?: string; + address: string; + session: string; + confirmations: number; + amount: number; +} diff --git a/src/app/user.model.ts b/src/app/user.model.ts new file mode 100644 index 0000000..d555e82 --- /dev/null +++ b/src/app/user.model.ts @@ -0,0 +1,9 @@ +export interface User { + _id?: string; + address: string; + session: string; + blocktime: number; + expired: boolean; + pin: string; + validated: boolean; +} diff --git a/src/app/user.service.ts b/src/app/user.service.ts new file mode 100644 index 0000000..b0a9029 --- /dev/null +++ b/src/app/user.service.ts @@ -0,0 +1,208 @@ +import {Injectable} from '@angular/core'; +import {Subject, BehaviorSubject, Observable} from 'rxjs'; +import {HttpClient, HttpParams, HttpHeaders} from '@angular/common/http'; +import {User} from './user.model'; +import {Owner} from './owner.model'; +import { Country } from './country.model'; +import {Tx} from './tx.model'; + +@Injectable({providedIn: 'root'}) + +export class UserService{ + beUrl = 'http://localhost:3000/'; + private dataStore: { user: User, owner: Owner, txs: Tx[], countries: Country[]} = { + user: { + address: '', + session: '', + blocktime: 0, + expired: false, + pin: '', + validated: false + }, + owner: { + address: '', + name: '', + currency: 'usd', + tax: false, + taxValue: 0, + vat: false, + vatValue: 0, + first: '', + last: '', + email: '', + street: '', + city: '', + state: '', + postal: '', + phone: '', + paid: false, + website: '', + country: '', + zats: false + }, + txs : [], + countries: [] + }; + private uZaddr = ''; + private oZaddr = ''; + private uName = ''; + private session: string | null = ''; + private _uZaddrUpdated: BehaviorSubject = new BehaviorSubject(this.uZaddr); + private _userUpdated: BehaviorSubject = new BehaviorSubject(this.dataStore.user); + private uNameUpdated = new Subject(); + private _ownerUpdated: BehaviorSubject = new BehaviorSubject(this.dataStore.owner); + private _txsUpdated: BehaviorSubject = new BehaviorSubject(this.dataStore.txs); + private _paidUpdated: BehaviorSubject = new BehaviorSubject(this.dataStore.owner.paid); + private _countriesUpdated: BehaviorSubject = new BehaviorSubject(this.dataStore.countries); + public readonly uZaddrUpdate: Observable = this._uZaddrUpdated.asObservable(); + public readonly ownerUpdate: Observable = this._ownerUpdated.asObservable(); + public readonly userUpdate: Observable = this._userUpdated.asObservable(); + public readonly txUpdate: Observable = this._txsUpdated.asObservable(); + public readonly paidUpdate: Observable = this._paidUpdated.asObservable(); + public readonly countriesUpdate: Observable = this._countriesUpdated.asObservable(); + private reqHeaders: HttpHeaders; + private apiKey = 'YourApiKey'; + + constructor(private http: HttpClient){ + this.reqHeaders = new HttpHeaders().set('Authorization', this.apiKey); + //console.log('US:', this.reqHeaders); + this.session = localStorage.getItem('s4z_token'); + if (this.session != null) { + this.findUser(); + this.findPending(); + } + } + + getCountries() { + let obs = this.http.get<{message: string, countries: any}>(this.beUrl+'api/countries', { headers: this.reqHeaders, observe: 'response'}); + + obs.subscribe((CountryResponse) => { + if (CountryResponse.status == 200) { + this.dataStore.countries = CountryResponse.body!.countries; + this._countriesUpdated.next(Object.assign({}, this.dataStore).countries); + } + }); + } + + findUser() { + this.session = localStorage.getItem('s4z_token'); + if (this.session != null) { + const params = new HttpParams().append('session', this.session!); + let obs = this.http.get<{message: string, user: any}>(this.beUrl+'api/getuser', { headers: this.reqHeaders, params: params, observe: 'response'}); + + obs.subscribe((UserDataResponse) => { + console.log(UserDataResponse.status); + if (UserDataResponse.status == 200){ + this.dataStore.user = UserDataResponse.body!.user[0]; + console.log(`US: Found user, returning it`); + this._uZaddrUpdated.next(Object.assign({},this.dataStore).user.address); + this._userUpdated.next(Object.assign({}, this.dataStore).user); + this.getOwner(Object.assign({},this.dataStore.user).address); + } else { + this.dataStore.user = { + address: '', + session: '', + blocktime: 0, + expired: false, + pin: '', + validated: false + }; + this._uZaddrUpdated.next(Object.assign({},this.dataStore).user.address); + this._userUpdated.next(Object.assign({}, this.dataStore).user); + console.log('US: Did not find user'); + } + }); + + return obs; + } else { + console.log('No session loaded'); + return null; + } + } + + findPending() { + this.session = localStorage.getItem('s4z_token'); + if (this.session != null) { + const params = new HttpParams().append('session', this.session!); + let obs = this.http.get<{message: string, txs: any}>(this.beUrl+'api/pending', { headers: this.reqHeaders, params: params, observe: 'response'}); + + obs.subscribe((TxDataResponse) => { + //console.log('US Tx', TxDataResponse); + if (TxDataResponse.status == 200){ + this.dataStore.txs = TxDataResponse.body!.txs; + console.log(`US: Pending logins found`); + this._txsUpdated.next(Object.assign({},this.dataStore).txs); + } else { + console.log('US: Did not find pending txs'); + this.dataStore.txs = []; + this._txsUpdated.next(Object.assign({},this.dataStore).txs); + } + }); + + return obs; + } else { + console.log('No session loaded'); + return null; + } + } + + validateUser(){ + var validatedUser: User = this.dataStore.user; + validatedUser.validated = true; + this.http.post<{message: string, user: User}>(this.beUrl+'api/validateuser', {user: validatedUser}, {headers: this.reqHeaders}). + subscribe((responseData) => { + console.log(responseData.message); + }); + } + + addOwner(owner: Owner) { + owner.address = this.dataStore.user.address; + let obs = this.http.post<{message: string}>(this.beUrl+'api/addowner', {owner: owner}, {headers: this.reqHeaders}); + + obs.subscribe((responseData) => { + console.log(responseData.message); + this.getOwner(this.dataStore.user.address); + }); + + return obs; + } + + updateOwner(owner: Owner) { + this.http.post<{message: string, owner: Owner}>(this.beUrl+'api/updateowner', {owner: owner}, {headers: this.reqHeaders}). + subscribe((responseData) => { + console.log(responseData.message); + this.dataStore.owner = responseData.owner; + this._ownerUpdated.next(Object.assign({},this.dataStore).owner); + }); + } + + + getOwner(address: string) { + console.log('getOwner', address); + const ownParams = new HttpParams().append('address', address); + let obs = this.http.get<{message:string, owner: any}>(this.beUrl+'api/getowner', { headers: this.reqHeaders, params: ownParams, observe: 'response'}); + + obs.subscribe((OwnerDataResponse) => { + console.log('api/getowner', OwnerDataResponse.status); + if (OwnerDataResponse.status == 200) { + this.dataStore.owner = OwnerDataResponse.body!.owner[0]; + //console.log('getOwner object', this.dataStore.owner); + this._ownerUpdated.next(Object.assign({},this.dataStore).owner); + this._paidUpdated.next(Object.assign({}, this.dataStore).owner.paid); + } + }); + + return obs; + } + + deleteUser() { + let obs = this.http.delete<{message: string}>(this.beUrl+'api/user/'+this.dataStore.user._id, {headers: this.reqHeaders }); + + obs.subscribe(UserResponse => { + console.log('User delete request sent.'); + this.findUser(); + }); + + return obs; + } +} diff --git a/src/app/viewer/viewer.component.css b/src/app/viewer/viewer.component.css new file mode 100644 index 0000000..1e43079 --- /dev/null +++ b/src/app/viewer/viewer.component.css @@ -0,0 +1,13 @@ +* { + font-family: 'Spartan', sans-serif; +} +.icon{ + font-family: 'Material Icons'; +} +.small{ + font-size: x-small; + margin-top: 0px; +} +h3{ + margin-bottom: 0px; +} diff --git a/src/app/viewer/viewer.component.html b/src/app/viewer/viewer.component.html new file mode 100644 index 0000000..aa272e5 --- /dev/null +++ b/src/app/viewer/viewer.component.html @@ -0,0 +1,30 @@ + +
+

{{(ownerUpdate | async)!.name}}

+

{{ shortenZaddr((ownerUpdate | async)!.address) }}

+ + + + + help + + +
+
+ + +
+
+ + + + + +
+ + + +
+
diff --git a/src/app/viewer/viewer.component.ts b/src/app/viewer/viewer.component.ts new file mode 100644 index 0000000..39f2286 --- /dev/null +++ b/src/app/viewer/viewer.component.ts @@ -0,0 +1,133 @@ +import { Component, OnInit, OnDestroy } from '@angular/core'; +import { CanActivate, Router, RouterStateSnapshot, ActivatedRouteSnapshot } from '@angular/router'; +import { MatDialog, MatDialogConfig } from '@angular/material/dialog'; +import { UserService } from '../user.service'; +import { FullnodeService } from '../fullnode.service'; +import { ItemService } from '../items/items.service'; +import { Subscription, Observable } from 'rxjs'; +import { SettingsComponent } from '../settings/settings.component'; + +import {Owner} from '../owner.model'; +import {User} from '../user.model'; + + +@Component({ + selector: 'app-viewer', + templateUrl: './viewer.component.html', + styleUrls: ['./viewer.component.css'] +}) + +export class ViewerComponent implements OnInit { + intervalHolder: any; + public message: string = "Welcome to the inside!"; + public user: User = { + address: '', + session: '', + blocktime: 0, + expired: false, + pin: '', + validated: false + }; + private owner: Owner= { + _id:'', + address: 'none', + name:'', + currency: 'usd', + tax: false, + taxValue: 0, + vat: false, + vatValue: 0, + first: '', + last: '', + email: '', + street: '', + city: '', + state: '', + postal: '', + phone: '', + paid: false, + website: '', + country: '', + zats: false + }; + public addrUpdate: Observable; + public ownerUpdate: Observable; + public userUpdate: Observable; + orientation: boolean = false; + + constructor( + public fullnodeService: FullnodeService, + private router: Router, + public userService: UserService, + private dialog: MatDialog + ){ + this.addrUpdate = fullnodeService.addrUpdate; + this.ownerUpdate = userService.ownerUpdate; + this.ownerUpdate.subscribe((owner) => { + this.owner = owner; + }); + this.userUpdate = userService.userUpdate; + this.userUpdate.subscribe((user) => { + this.user = user; + }); + } + + ngOnInit(){ + this.orientation = (window.innerWidth <= 500); + this.ownerUpdate.subscribe((owner) => { + this.message = owner.name; + }); + this.loginCheck(); + this.intervalHolder = setInterval(() => { + this.loginCheck(); + }, 60000); + } + + ngOnDestroy(){ + } + + onResize(event: any){ + this.orientation = (event.target.innerWidth <= 500); + } + + shortenZaddr(address:string) { + var addr = address; + var end = addr.length; + var last = end - 5; + return addr.substring(0,5).concat('...').concat(addr.substring(last, end)); + } + + openSettings() { + + const dialogConfig = new MatDialogConfig(); + + dialogConfig.disableClose = true; + dialogConfig.autoFocus = true; + dialogConfig.data = this.owner; + + const dialogRef = this.dialog.open(SettingsComponent, dialogConfig); + dialogRef.afterClosed().subscribe((val) => { + if (val != null) { + //console.log('Saving settings', val); + this.userService.updateOwner(val); + this.fullnodeService.getPrice(val.currency); + this.loginCheck(); + } + }); + } + + loginCheck(){ + this.userService.findUser(); + this.ownerUpdate.subscribe((owner) => { + this.owner = owner; + this.userUpdate.subscribe((user) => { + this.user = user; + //console.log('Viewer loginCheck', this.user); + if (!this.owner.paid || !this.user.validated || this.user.expired) { + console.log('Log in expired!'); + this.router.navigate(['/login']); + } + }); + }); + } +} diff --git a/src/assets/.gitkeep b/src/assets/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/src/assets/logo-new-white.png b/src/assets/logo-new-white.png new file mode 100644 index 0000000000000000000000000000000000000000..0f17d0691ea7808044454d2af42202ce5053d804 GIT binary patch literal 70785 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 Hu0mjfNLja4 literal 0 HcmV?d00001 diff --git a/src/assets/zcash.jpg b/src/assets/zcash.jpg new file mode 100644 index 0000000000000000000000000000000000000000..f0c8d2a808afc699e15f2aebdda7f1609bc3ad1f GIT binary patch literal 10164 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 literal 0 HcmV?d00001 diff --git a/src/assets/zcash.png b/src/assets/zcash.png new file mode 100644 index 0000000000000000000000000000000000000000..221d65ac4cee144d51208f0b27cf977f507e8ab1 GIT binary patch literal 83846 zcmXt9Wl$Vl)5YB(KnU*c?y|Tq3GVI=!QFjvCqcu5yK8Wl-~oa=1h)X+@K$}bwLf;M zcIHmszTKz$oQ_sgkwr%#LV<#ULYJ2VfuW$FA@5%#1mH?BMS>RaBiu$xN=;r$irm@N z$r}g7D@w>8%&454l)~852LrG*_72IgNauYQ+t*F#SIe|=%W1f8w&@Ug znsEJqFG$^#VbIyw)YO*8ZiSf<2M_I$i5Fj8^7jnx4-U0ZXkquip4 z@1u(SS>B2X!2|q1&!%f+MdHo`);#vl&&$nvbmD(Lw$2H@>f&ZTQg_YH zn#%V6;dORdpWPMtyd>-M}TI(!71RAN}-6cj3D zTnSn^A-y<1IbZAHIeUG93SM)qavx-L0`>*LR8bZL_4fYx)>W1QTtRl0({Y1>Vx@Zj zLVJ~nc>)&^-Q|^~5%*9qFg_sM_)yRTmp-~nYr9K1IXGB2xjwx~_$S^c%9+@#Z{qCxVZAdtK#bpf5QWH|Z5J^YgoXOii~7%gY&btMK_Y z{kY_lvEZPqG@0H|LxT7dRyw_}Oo50ASS{Se({{DP!cLimtdAmErArg!w>%hPcul)V{sHjTO?4Ma#vXT{hP62_@i~ z=)x$?itxp3YWb+b5z2X|S>a7t1$q2(ul&f9_D9oh&of=dG?bq|e=_UThm|O1)SHju zL_|iGe`d^e9b=GW@K$4YXwgj_-`fT;RRShSFr3$&cWmJp+RcCN6CWVV%+3}Kw6#4> zw`>?~>Aq#jo}}H`*?C{tddJrT@ma?fn-<;3f2Xb`rmC(KSd!!=6Hc&b7#O6U#Z8;= z3r*V>Yb}^&Xfh`R{%lLv^l1vf+Y?()312HcJwJaWA+cEa?@OglL&TQ~O%6dpMtv;` z!~Xje@OJyTL{VQq3X^zot$>|;GO_z*c5bfzhry@g%gf6p(dW~Kf5%!q+oN;^yBR(I zXx5q?%$yEoTdXuOHxKhTS&XKHVR+xY z{U(vSWwZU#9LMcpu~!bgW_uIBD*Op&k_;r<{8I#h<)6n~U9Y4YebpCqafdlvh(kF( z+wpAk)1v+SCz9JZa>kD#pS+tNaDG%yo%Y+2=v^**GK!`t?HjE7PiBf-`8W<^-H5!t_zI%GpXS1 z-@!he*dubH$Q>cyhSv^7ffIeEWTeNX>!EHeIEEc#(BTUoSQgZJSnyLOFtxskh3@@;UD} zeA({Tzmfqj|Gpt6OVtK&5>mh=&3F&+RfuY=mEK<}FVatKQxH!tX%nbhRngVXc{iiz`KJ+J#u5B)Mb( zpWJmooLX>hyEpTyR)FV7-*(jkxAwKMj1!Z}=; z{sjm5zSRd0=$M!XN;SaRuQu+xGxo+a+~(xzJ_Lc^9rDbHi;D|5&ak|&GU@|MJ+B@O zZU-v)Ufam|epm9%PMcG^yXLRCeSLkTLmK;Mmf;(ec^>8x)CoJeuYTX;%)Pua`4a%I z6Ty(cFJU%lPhF_cx_(;f$>;0bLa#LH$xma_iaB?qrjqzy)C!-q=5BpH@0fIGSszMg z(Od5H=DPLiLgWwno#MbvB(TH4wdBE&G2U9O*k#BjzKawhw^){PJ7ewvfvxM}+}BIK z`wxl2)vDKpIGtIiA2`kvD^>-QdK*{xDgt|W_-uyE7zlC|C@qgtfrwPy7e0 zr<)lz{`sP(Ad=LFzHG}A7S!@OXMe$^XyQ?zDoyQbE&*alLp2(5iCZKB7Lcakm7j6H zV%~Us+G_d2sPlP+q$G9RLbJwj^6-$p;9-DHyVHxKLaPS9N!LM)Tp;tevI%??o@eUv zf|ij3uhYgvV!#a*sn6l}{J}tDE6MBl+iT{q z_}w{#V0cADlmi3bB*+p?C;Q-@bgP0a8@z94W@ZN0nJ1pleS7uYCV75)EExzt{0SXY zVLknzx2Q)Q_D!F)!FGX>we=6o#@p+?+tA0d9{Nm>Nz{S&U;;A`M77r9INA`i3>t?B zb5nbaYWU=n&A%8KZ8pQs-UZ%Plqn5W`s_kvm+LK1JHDRv`$F6`Ou|WU;0i}%_zkj+ zLZzhMqqN0%`en4LU&wnRaovk~fwJ)PyDEqvKr=*1kNIuelmy2AZvZgdoh_6cVFZ6d zLqX>EJ`B;ALi#+D+2>Ujy?k~|v489>zg!*5o{q|V!_ZKHopolO=NOOqd*->O z&|Tcr0C=6-s!iGDVoP_L+q6gqkDcaikbG{4+T!^C+`LPH0rpRjZR@0_c-wDOxJk>L zj*IR!;m6$+{eZ_kB_*X=t7+2h#>;8tXE^<(GaD@C%33W~$04B`au>9}U5zOWe!X8QUrXZZ54NN)l&@Ik7&<6Mx` z?{D8!Cpv{|d8~c6EY7erHF()1E4BXT*toWz!L=@s|0S??Q3hUMVeOY|gZX+MCv$y{ z%R7DNI|llwzy2?@Y}Q(&uASFz8lO$o}@PJnp<4@;0f^Js^0@l z(;U2x+@`;t-DI=F+Jwmc#`I32*pzDElLp|(N=$i9kdjJHM#uCq9PmC@o57NWt?hry zqv2hq;}JgPjl6Rt-|0)P+|zRs;HPrG)5pw>NME-vbtNe0@VabxAGnM$lvR=v6aUsc zT>+lWZTf?j^y(?aM81O3X zh&C2(%Jmx*)7NSWd+4!Qo?45)kp2iJA0631$;isK?ItTe{6Q4cw)Xfy4qhH_s+{5w z5}9#qIZEFTc-V@Z+{-YULg)M4n?NG;_g@Hx&hkH==`RAn&E$(_jjgSt?z`{1{Qkg_ z{mFHk5}?jBpG*z+)B@5*B@aGQazQqh8946q4(*03-wl zu6K{tGVE0pMe;g6wID8aGHbwSAC zb=VfU@W!Oe_bSXJDSz%Z0#O2IXI8Fb{k3dsYfG`=IY02#+wG$3{%Vjd00KOy&j0!D z-{YRE0Kr5~IbSS^_Hri=LnVxqru{T=d7NNwIZ|R=T&>B^2*1XQ)h0XmWx=iB0dZ6& z@!ib#zZ!_Jvpc(d4Sr4#I%n6?cY)_ych|^o1}n@iEk#~D!%6hs+;HojQ09GE?rdha zR%cB6>%Uo#G%sP9wf*<+U-p!g6z`vB+k>%fe?m~b?mIRoPYmw`fv`{8o>wR7(+veN zTWz*qF?~Jhd5yKJ=}NECYe}X?u0Gj6%~*NT0gp+-x70p%J$&<}jIN~MjiJ=7(hLZc z`GP2fbQXrIV(jjo3b^S!fFbITqyP&yJ3QZ={SVC?SJdp^tvSis#e-vJXVpC~HuA=6 zthh*0!M|*I#`ZXOaHR`mO|F*^p6s}Z(6c8u8tr*OOicAw*fJFhV;cHkh4+)baa;ZM zvJW#L2?Bw@C;<<+I|ZN;=Oz#_AMaXvl)DT8(8s~a*$?E%4J7UI&wu^Jrm?M3;8Lg= z=5+dbD_v@%CPseki1bQ5o?!lr6AsIG!7&VoD|l01o;v96sLr`h1u|Wg=6K&A;e5*Z zl`!V?H2?*@@`vByjOgoS;&pmUX9-j?3}`>&wh`#8Nw9YLS6LSsh=o>@l;zjIK^^hlCJWI|lpH=av^qEw7fb%U_slZX=p z5~MoTW$2J&Gnh^0OO^c|ev(=KjNmfFQ%WBA^8>~W1uF}dJedu1)koLZ|Ifs%sb_j!ir-j{CI%+%oK$E9I#H#iJBDl z{r<&D#F743H`3$f<2-h79OV-t0zZJpAA1o+d&3C~TYZebT_oW!!iV9JbC!wkis!2! z(94^)zP&zA-YywU$MbEBP+^MM|GbivzOPk6jmLiK6^Hoz>ndmEIN24;h1Xx>5K|G%Xp9^DOEA%=@~LHQvxs-u=ZS5|$Dtg%zQpg)QJO z+}y}dZ8<^m5D5N6yEq87gQx!nM6PT82SKt!&LC)niD&v6=_eKiT=fZ%%ULB+oL}`e z$JRFPcwcW+-%=qE>B1-wU|qL#cj$;k&GE9&$L@KX-UkNz&1;T39h)z#iB2oYo10?n z;^m)B>lOLyYBTI`6mgnbd|GG?2C_bU+lGpzp`m? zD4EQ0XNc1zR8`^K#n=O}O{NG^0k8Gn7uzPHTc143BIw@B@r(wWd0GGo-d_&!<^jc1h`CB za~y+gg-EnsYpP*1HzM3*9v1#BRGO2mc~I^%3N`T`J;GUZYIkTw1j%Mg%GmLX4|?fS zIFh@eHMai#fX{cVPZcHW8j)G$dEgTmxMKssEnB^ikg!m6Mn}oz3!1I{WfQ!*p>fi7E{>#_59*BA;+;3JIJ;wUGWQFj`H2vI_ffo zD1dXGd2~M9)tmLXbDXRBSq+jIY=9%{EI?(y9jRcVK|PfYi$$izqFy~w5Tu5{G?~oQ zESltPEYb)PKF)q1d;+-xG2XL68fTbr$->n%M4<_#TeV^KPxLUE6;O+1WqtHKZS8%B z11Q7{ln|}W5b|%c)_&%FA@CUoc2bNY$!Bf+i+)?EM(l5wWN&@VReIRvjUJ1{UzRIe z_HAd7GmBv#DaJT6?yqdmA3n8N&$PU*Dd!-r=War8Xo~zG8tgC2zX=8c1y3djXDu z@hlCV9r0ks0wn7oSyJx_eeb=r-_AeLg@LnFsV z$a_7O){VPg&YS==yp%M+k$-WZ(BVRSuw#$v%Y&nnOo%?075^{&()gPozd6BQJbj-a zaYEg*T3nRk-}c`6qja zg9S@!wU+)@J^7vsyjM@v1|1X91O~rgsT&TSldMR$Lq*@=qKGDAnst+It)O!_fzvLkcW{36tg4Q%>BY8#8cn? z)=`+cB91MMjo2Xyr>5TDU64#)Qu$PA295sR8o^;L${HbZdE)mespwH z-!fotEUoi-{bE0q>>qhqL4Xh2QVmo1m*NJ%(MA^y%wb!vr-UY#y6<@2Ujj(%@t;{s zz{qB3Rhp=A-%}T*>Qz?z4MngZV>Ers-=*cv`(WdtifbhlWMHRY;LQ#}nB}9~5r3(X z5PyHhQ7kD)SzN>>!V!dbCt16nCo&ZbTR(U3)I&;A`<8fWnx*Zg|tpWL?f$H@oqw?3WXoITIreyIiq*pX=VkyEr%LoWz{5 zm9e5Bs+F$4iTaC|=w=-!E^ox1E@+N`%E}p-jOpVds%d*po0ZlBO~eJ%Sfm2cpX_2> zN4F-pREl=xZ5MDtUp^opK7TyCDAHxoxJ29frJ`?Id|F&|)tHL)2vvNJrxlu;8Fy2>@xU589tn$x(-F1qk#>0&jI)**iB=%Bdn z%YP3{^9Q3klW7fi)khyfun}7)d~drg$qopFoc04#%<-Dth@1dJD7^P-)$zWknoef( z_-*4B{CT+u?D?Tt0l(J*1$n8Owbv+jC)Aps_t@rtErUlzV4FPexS8wWFnS!*vgRhT zcDPsqhpd%MXIzr+s*wDKWxZoO=ML2gr@kaw37|d0CLQLo$<~ES06V|8 z9m}@QRq%+Wn0}+8nwynh+S9X1I?cTRpH6g6CZ!W)Mg+2_B7&2sao*nDy?N~LJZs;p zFnVFsGVu5?eYPB|B=V~W5rlyieIu9kRk3osnnJaI13#PHdOx-S%nDX;CxV!uEd&R| zVS`-ki|Y9iY|0zKK4_Xxa)p`v_Sj*{sQBXYk}EAXKj2|&?FTF#FR3cEn=^MZ5^BB7 zu~F?po~mWbe~=frXBZ58TqYB|O|sF=(n6qICs3C`Rwqej`x|C<-0g+s(wG591c6V0ojrV(8mck_OT@j z?sdtXa++lb7AFiV!o*S^sg5$&{3TFvy%ANU*IWYB2O>O!$+POOhl#IIKvUpnrGanZ zVZ_`-ef6UwjtWp`B1JXoLf`uM3*%Ze995kB5B9zzPSG%Nmc!9W>*UGf-NftU z+x#lk2>RukD~&d|ftLhG-+yh(cKx8%Wj3(LFb;65a@@%fnj-3c ziBCv{VU|M1rL%>z)^kY20e8JzajJHA=UL`U`SN#hgGx&7V3V{MRa5FZb_NJy^WNp{049d{Qad4AnJCtH0Qii=V|lT%Som&PGrD#XmJ(KKk*o=V@-`f(*Y&>Uv)c5oX8tfDp+oK@KQfQKVv7t|CbA_^_TtPy`K}@ z+|RVfowat!XVZxd4$p?oVtjoYqhVHG;k}jN5mPI$#wa+6Qmoly90yI}hrV$}P3|OB zzR8$lL>|%8l1;MyNYae|mJ1{AZy757`L!_LcVx$)K=J76z6=R%xJeFT{Xz;lr> z4z!+H&+F64q*nLUhx67K&l46Q49Te9<0F}xIvZRGW@{_Li4ve9dkMnv{kp4TLI1{- z|7HwakMZTeo=G<@`k1l|N`$yAYneZ!QJCnBO~fh*0Y0iODvgfWeDG?AkmRGeL_sV{ zsf$wBB8NO4R)m8)&f1W;384;u9EHp8)f@GMAeZuB#RAX#XwSo2g4+>c9s@vG0 z5$ps|7_BuAq+do2tWYdxM=;l|iU*&k;sd83S6t+r7OI9ZR+0S2)ETL%cmw}54`rEe z(X`W~_4**k+r%ivL5Qf6eUV{CNR++>gcH^Hmu-gAEOavc7ax5}9+~Eo;m7Ar&`1#x zNJd6xxz67=e<~f!DZmk&lnf9Wf3pJrA-+B&zCC1?*^yk6U!52^@w~lkzD>Rt#8Q|d zAiM~Ah*1$ueqc_m*2WE@j#ml?V2`Jx)qk5FcH^O}Q>uL0<*)wM5T)R3kdb_` z-9gHBx*APIt$OOH>2Rf}q^ooe2t z{G>b7T)4I_N?l(cxqKK1byn*3%aDvRK8SnlkQGb7#}3Nh-#;!f(X4Uk+TXS*`^#tl;n3&?pn|c7HbbOwn}ooIPehSH^?kc=z_A!s=mNewC8If#jn!Vb1ui zx3EwNhRFu_dBTW_NuEzv=K)?aaI))Ov_IYGVyg`q$$~B?3o2TTkeFK~f0Z&`%|eSz zwZ+Y)QI`-7jYaz%QFeU2ptWwf^eeD!QXq`rKAx}Ct_$gTS?k%8BD)Fp+Wmhmz*Eu) zafn$}#_kV9h)j_L7M#enIOnqw*;DN!5ZU@0riDWfo_YJ_a6aqiie%r%LnVI;4+SYg zUK!$2#!8vwveBIlQm@p(lBwUQIuiXzG+<>aoS$r7Dvbgu>8eE&!lg)Q*d&i==Nes< z>_v3Y6@-rLUDvoEt)*qE!7unFI&TL*EQ{!5UH%M>WYkAZhs%LzZ`8`UNZ25gr0NFP z!L>G}H-RNI0fH@X*k+*Qke(_N8){tzG*V>Ip$FSy9EF04*8|@C6@j6Yp5?(s zD{?stgU*=V8Z>OXNJ}9~>t+qpbOiW*kH4u>Gq!&O7PH2N=1~|f{mB^i)WuZk>@U2W$}x*st7xD^yNq?L4-sr@PLGvOW<6}vi;E|+k7re=|f zn=28T7m*))EI}F}iL>{bP6c7LZGs+m?_cMv*Z)A}NVwBU11yXQa`R*iCrmEbLlU;q zlst7-Go1MgH0$5fR;4v=HVQM1FD!Q7BR29{K!m z{m}DykX{}uyphNQ30A)+Y%MK$JRp#G_&Oiv4P3d~0T*1QSEbt&bKiL&qVGCNlj}Yw zk0|o@I&Z;yB6wtXclSSll5|+7^Cpb&J9jJKdbj6Q_$XT%&}smf^nUgU%qw*fOpvvo z5jGsONha82opa31q1+%63lYoC9OesRI@-_Gg_q9#fe)4XbHfo$!&~F{;2=EY2&@#i zLuydwK&e>VL=mPEel&gD47H=VFCplHz5J!uT&xX*3X`AP1BvQg1PS((@-5es8^2{u zhShh8;Mgdno6xj(fWS0n-?2k>n`V@t0-QvKORNFwP%rYIFyVcL?ftTcIQDFeXRyr2gDQ;FqOTfD(0HM({2*vc8 z-re^rU>Er=gLMiLNZj^jt7wyW;8yW6ELumEjI_hjg(*zKXkO;*;aUyRTeyRE(6O>m zG|-p1Anc3m`Y$hfD|IzfH7!dkT(BGUFbp9n<;N!T|+ZEeeKhWR<1UA1uvHWXv zVMl{01_Nw&=i1}Ur0q2ch#UhZtn83Us}~e@OG}-euLt@2bjy>@cE0l~1>bFZES&k{ z-Q_w|3iqr@Q1n@+i_n?sc}pz{gym}eDkM+Nx<|VGK*VQWJEC%sh3P!hbwE+~_kp<} zs#^bKXw=K6`#5+AF}L6|%k!d)=NVN|(vbZ9_hY|;xMe2JyxIYn*jf)pGiEMD0nz?) zQ}ZlsEo-~P%LvO8w;kb!WlhrM`n0lqhgvJ5kmb^L+a^xk4gs&mHHUt84i+s&+1p!K zECd$f;n86U^Xt&XD!pM~>vdT>PB~{q6o4-C{*GkUoO3AopZ5;WL`L@wO=($~TUCiq zSM*MMGn6&jf-ZUq-kIlf=Am#J3LJ-E9C`E2@4?X8yD(0s3^do*96omKh`#J^$8<>Z ztzf2I>?#J$9K^QNSM&Ndr>d>fE z#HZK&Z#7E|g{&0whNLOc!%{?VBb;RM~FA@GnPmD|MAx_*R zPq{{zseFw)RH{$S=#a$K6>n=pom^&Y$+8M=waGp)-n^XQEsy}A#yfNCW~#J1X>wZ* zzj(f8G*I$b+y%a!@>%et5qpK5LyngCtD|0`SGux)ZZewsCw?K&OR>UsJi`f{WS%g)aqwU}L3$5B!9tHg1YC4-_k zji4Ym_n*TP&ohhby7v_<8+F52y`)~hwW^53E@}1NgI>)q4rEIr1b_ZZIIowF6<+H{ zboH(_V%$vSft7q!66g;A!!t9hL{dXA}z_5;580nXP^pY&o`S4r@ zMG0QHn~M8@Dwn>SCKDjJe4N6sHm0`yM6)fI0*V0Xxu_SRGv>+Gut#Z=!>9g^+96mV z{HQ;bMaO1A$*7_8KrR+|sslhW($()nG&1}+4!Mo;ODYi(nK!Rd3 zdf3qu&})3WF1LUG&J3=+OP=YR=p z^!Ht$cc*0Kbc*Rkq-L`_TUFxDuDU^N%#jY>Z%W7r+?HIq#(!MLX11xgOFpzmr4(97I8cYMEkdltK__Ik|D1L~x*N;BzfG)E*-*eww zy}cwF!}Qe~(E-|hp&Am!nR5@9FABokHM=#=Z%;(nXsBt2#MtCsI# z8bAg%DzJu_e5C3jte6%1JL^{kcLM^*g1ivS#;sB*#71pR*_d$pg^nckFX1U!sQ{Pq za<&9ERq!CH$sRJQcH79`d_HCi7oI|(b--7JZZZGQFed1C?7=_GGj&uCemd4exiuM~ zk9zVxdnRF_y|P5gqgqI4U?$FukCc5Q_%haE{5M{!1Uwj! zvi|N}Y^s>Nq;(l0UB@IAV3R9i#LLw>fv<0-coT&MhPo2Z{{#=0W??`LO9;@!;Zd82 z<3u8T+ZAsEm&`W*>@2REV_a95t!wl~E6K z_|aN?{%JONqdMgbicM#C-au_m%8zwtvZg{pgM&s&BUcJzPx_`VD6~Yw zsg6XPDi=u?%Sv-pxoMG5(+?zpXHkic$)7oVDJpVZhslbp-o{(~@ShUX-4{C%v8S&A zN)eJY_uu6PKt=7pivqSLb1waQ$}p*m$Skkv_9f|U!VDCDRiZibCAqWd^t(SXgG!fJ zE1Q$S>1XCR@d}cq0Ovm){$c#jF7A_dk0mx;9((^4L=?d;#$Tv_HhNXSsw*|b0l#k2 zBUpaPLxS3R?_0Rcr+5xz1gSz?eLjb=c}kMbG*YK6h#We9WaVh*!$rXtxC;e~;PVM{ z0zoT99mFB_HxYH^wp|D{w1gR1K;g$~G}pVQk~r4m9ft$n*5hZf?eYU%dtXvYZ1tnB z&SO%)K5?k~6RE>6n1Z*gakBEKRwc5y{nPJ|EYQno7rcFKnu@5-{^;7Iu%mJ4UeAPL zZnv{iQBl>r%!|G36v0dFe-*6omGQx&(f7Yy*azguVr?&XYkh>pV7F#W5UM=012v^m zX{zl{cZtZ^Uj~fW29!}U)-WH6FIC!6dPD!wZhIx{5*W_!0AmG9D_r#v?HXj{c^{fFc(S9qf`1b6&=Cn^c9| z7u6UHln<_yb?4ogryfJp4U}o;hf^}(Yo5IDsE?;?fV$YG38r70JeRY2GtvDy>Pt9X z{_3cIqUa>%gLPybK+n*dR`1Y{g}?=^Vtj3SVL zf7gka>}{m&)FO4>x`T0jTN9XfQqz+!)0L2v43CP>4ruAEp2gjHNw7YJM{(0Jw;%pT zOF(g&j#{UL&r-~irWhJW1tL_#t~JHZ?Y5+#V$}oMfOCWsTfeZcK;;xHPle+fmv-)FNX?_0+|Zm0 zB5fSDX4Ouooyz5`^4N&eIXT(+w<(nI-qhFk+6uoWlH2#Et_O(R{~?Bpfcp+=n}JzC z){h0}3A2%V1S^olS2eGepQ~#lm;qL(I9*6Mz8fGxtLE_H>~}L!M_;U|cJ0%#TlP9e zQQ&4b!6o70kPl+|Fm}y+t7b<$O(m}+I>jZl#kKLQUrJ`_zZ8wnO(`KVr__RLx$2Nz zCrkKAXj5b|549+1RUWlIc(Q`2Oe@81QPbLOWVoY621U^uA+?r7AU}nK&x}lU@3+Hf z>*&XdNOkT52WrmFKm3K%v}mx~>;oT&XwYev`ZS10_-qndX3p^{WYTMI96o9L|6^Zz zoj&`wYqfJ~2ZBSOJo*NqmNZtQ_Qs4y`0!O<2BKm*AaS_z;b)tbVmkA?m|U|#e#UWL zj6KOpE{@|LpwlxxnkxZ-I_m|+yPTn~w6qjU5}17`2$jfpLlAu&Ra74H8R@dwyg!gO z;b+3qwXHdisih{0lB+*H)9q zI%9BGliib2=hEdkf?~80n#3GW5pjhe1u-d3aOeEOPvG3Z)4zQwa6OyERSNqCzN^en zgE<+)*k_59sV><}$A!Xe^2p&7 zjwD&Db;r6_AW_JNkb4a5mkp{1EoO^7rig8A0^L^W<{^)1qN6FS33SaP;aJe>nWyM7 zyw3;kPw@zWZ%1!S`W_2klvI?y5z~by6wwE7&ZegE>CF=o4k3n3r;?&FxDEi$}vzpea}r1N2B(^uxg03oGf<0_l0@ zfeYy}=ito)Y4WB2pLB*>^yExWK_7uW2)4qSVZjd)Q-JQe=O?ni-k;QW8T_z6{dzi0 zs^4fmJ9KXH<=O=9J{JLUK57jJXEwi|dFH%R*M56UMkcPNFysZ%q|)l5tR9YELsvh3 zYR+U8YL}5Q4U?pD`Hj=3go~C+EP<@t!4sYVGtzdV@NcSoeB~kH3$qTmbbVu7$)8PO z@H0ZiKy-;>@>r)8Lx>Uz@xDt-u|99-xCVKONTTWvjC6*mm?OT=C9 zX|m8!0zFHf7HT{`N-!lpI*dBaQ2j_|8I64O&}dU#WlSweHqEt!u8b~Gdyc~#K@#7{{ z;Y+xJ=idiO;O@H}vbP6CpELdBE{T8S>~KQLv?!M7E%4-G9{38FR8 zWu-Q8UE=21Uf`V!#Z-k4MDx&c(Z3e$2&l^oGFdu(He@J0O-)0nC9}|!%(ErIgj>rY zX8~+*VOAbJVg4c9>5@-Z%?3OW_e9TERSVgNn_u_#Ife`SBJJ=aSrmDl1mivU9VR2{++&73198vRh9dD%9c_V zAQ8msAS}t}Jm^k7cEXlxRtPY;9!%xEN0vWvTvP1tBM&1%l!`Xc0_Z(aAj48+B_+QB zkM(gbgV*=O{y$+7AiJd>mST`5jKCK!L;_DzGVBRwS|uTmLf9B-3q;E(Fq}y+KOh{E zm!eb}!S_5zXb8Lv>}a?BqHt_1kDL!G)%Ao_%Q8hR3-QRb31_kyCp*?~%qt~d-=p9m zNC!!M8V0q}_Hsz9=HmxPt3_l0dnZdbin2{$D-i-hDoa7t5Xz68ELYa{*r_{jk;`5F?qB+17&lXCQ2_g5*!A0RaRH)9?>vne69N| ziY5z*g}cNDi}U@yVcam-?@&i+&Rr-j#em>3UBMn_-^b)dx+Z|Z_vRVUpi8_y7QB5l zixar$yaw%aD>Aq>#mA`&X7rj*g~~PQcKueh!nI$iAM|^@E;s;sj1U9A`Gh~61Rx~g z>7q}A2lZKwgJ4Lp-c{_}H3jmg0c12eeygr&p$%8svb@I3Y!qugBk>&CvAR>nSfT9V zJYyKO?vc&$(#iVbkb=^t-Og?#c)<@Caq|vyUuux9^FuL$mT5uJDrpu%4D=?3qncAs z1@4yZ4n&hs(m9`v*}pV2DKsN+OwV)ZM7Aj}t!T5$(;QS)#;IsDe>_p63=5U}5@qKY z&Tc)6@pW5EN|Ti+q#<2{)n+m83TCsz=92{KstKw_3jcrRc|Z9J7v}h{JAW1~*kVUe zEZC+gl=N?O`L-RE<^c5pc3G}#j846I^a#|?>(2a}SA9y*q&LG@8*k~e2hs=$Y%Ia2*DW>jl<|aQ58+tTx*TsQqh;| znJ->nmK8Tn6KRdewdQC|Kl0l7=xq|US;-;YV zh-iqUsVg#W=nO;FK9HyL$G4$hz+k zD)+v9$NL`s)3Wmw5+|{l>-{|3BtxT0R6N3WX9Kd$dxkVd{xK;E@R&t9SkC*N*c$Ha zAGh9f(oui-ZG^?D7^Rgovku9K%AA7H{LxQu8odrHX+W4Pmf#?5&4SemkfU?e*Qf6kKFR zm=3Z#{+t_@Y)9~G!%nq(VDB7iX$RsOGH0UcLab4<&9 zM`5DGw$FS6L*16<1Xy?f4eTC3WjifhVpWT8)=?0m3!QVxrYBx8Uk=G?r z7+KXL64cm9BPaG%YJwx7$SO4w@N=F&5%8Y`cl*Amw%uBFWM%#+Qi%D_sOY1$kdB5z zaqTmYJf*wo$Lxd@l;qM))#<{ zqzd?PjMV$v=0zIfYA;IzEj}lmy3pD|06@W&fh-X1Jo*XHvke=-unNIAz9sY#Ms^N!? zI3c!q{norpEBClEZg8VqNG2z{Ae@u1Sr}h_UBvt%b0MW(qopO1o(b<`R1_gz-s4L6 z2VT{6s1u_>1Lm3pE-V>k;tyP$-2IPEg7HATHn;f|Q|#r@O}Gm+d(x&;L5yaYA{t&$ z9tn4R0#w3%db&C>d~8d+ZUUOJ0H!f>9NVLTsQKTQiiyL+ZGp%5MEa=KYRUu_V{`Ik zYJ}msw|Cj&{?kd#u(fiDt~8QF#{!IfUsq0*v-x(Cih`s$PvmDvYAST}ol=Dv z-Gx8|wc|IcLpS3=Bzs|xD7Qc>7OP4F8UM}eU!fmUqc26mceLb`l#;{J<$@R&zxVH# zMCa2>oDqyFqE#zJ>Ego4aIrVW@j2>C2M(G^Y)-d5e=lqEMGdR6`AafZtr$gZ+ake8 zJpD6i*R97qn4xvOdpnun z(ebZwIp>+a=WWyP(_x;1-?0GBNS|GOGWhW@EBQR&yH7svn2dii{+EVf3*DbV)VAbi z^r+e$#8bXM>8+}aCa-oFTenD`a*@oa!RgM5taS-C%~IUhG{eKxPc+3UC`|U}*%KP| z>$fzpltUh93by@s{PVuBPXx?nJMGdpZJ+o9+{1e9_bWv{>rAYJRXeZHPiV1#JmdE+Z&g!r$(wMe2hyWI%%K;~4!N|$fV zw!V8ERoz*PyT)dbI25-K%QTXvONtw?srq6XR{Z1 z=kt>c*YhD<0gpYb4_HMeBW}ZeO2cQsDo1ItRbXzBk^d zsgv!RtjU@tyH2)kH{WdAuBj$_vW>~+WLuN%yXSXb_x=TEpSAZ|>%r&qe(HG3Fg;8; zH%P-DuhY86C%86|mV}iZh%iIQiX6F1`d!MkKi9^u4WsBaBMRBx=3U>aNgOtqmVp8W zDGXa+3FXTiCqpqkCVr7gJPR#8U`$1mCE*C$5X6xGiBzr2yv_YK9|ZE*4|Z zl$cv6v+XfR3MUF-AnNWbRwjq<1RsnGcvp|+cll2G?Mfw&GC}X>IDLqEE%RGVH#n%p zkk00sPA=5zeIbaE2$!#Ptdb;`N+d1px18XASnKm=n5|vQ~tvwy4F3!72lJJ-rp5!I+Dtu(=M)5ZYPyME1fJBq4WL1HT72p$*)Nd1uh*q zCAr#7oK3iIv~`>M8xKE!S@?Asz`%pT18iJ-^tk@++=QXB;FpZ&a1Smo;7b_)KDaw& zW$PJ5YY@VdL4zp;C(!U8m>=TV#UgXgC@$C%jLFr@pw-23OOW)>Soghpr_m}#a|{7x zfb;vKhRKBTVC2(G@4Iswyf`YY7vayob)sA|OSwTc=pvr+GDH|+kPQ_@_{pZ@bwK6= zsOXt)6sw(1{?Pf}7LYjX#&FfSU7QhV&!fdBMqvBj-?0 z9^bQ(?8~U?ih^X=9&qm50sCM>R>BIGrr;ftpzo2(q$@kYUA%p^aUdEU_DY*~KnfbI zI4Px8F}1|3le-^%^se|%@XVTbM;3?`+3{gdAIpy;uq2}wu;8I${?5diT{j* z1Rl2|Ib|Z`{kmY3#S5G z_ou+Hk&+lQ>}EbKB}WDWzf8E96XtoF34czf6UpM=pOokFn9Eq(r&OsBXRUM%@&5N` zy(pRmmP*M@hOSr@E|hb5x_LVZIJEwf{P*~u1~X|j$;ESW#BNoFpkzvswAiAsQ)5n> zZU)*>>Wto~O-UcW3%(&+tm>r=VnC6ln6z=MOcf!$GyY=3Kk(33R-c+2zjX6^aPvNn zGN{>n9OUY^o*G9EF7`cdJ^b7KI@W!;gUAel_M*F`9WJKZIvGT;Vr(c)&hke@l+7;` zZLFBb`@IQy?Izu3sk2jReVjsWG02o&L3aN?f9dbCSd_|d)7`YQys42!v~0t;dlSK+`Aj?Xr-j2$9IqCZrx)C6Pag+0uQZfoDt>rVh4w-Yd|i{ z2S6YoI3y*)^TUsw4oBOD{RNCm#-k<-(ii^=xs6`%jsh*MIm7O4t~+qPG;x9^h>E$w z5%o3ezrULPA~+`q3j9Nx z|BUx_uEC4FkfcN6&)V?aqHLYnP1gA2&jVZqlEX)-;Wqs3@Gpo=BBcRwJ3*wtC*HQs z1V~t2wj*p_I78t+yZh_dw}t?9XWyy*{{GsNDRV7XEg?(#V!yk+0JzUJ|KJFABp%VR zu_##T@7LL?vDkz3P9bE4Kf2T?!G>81M(a+C04rsNa{Lf&9si^^7fB!z{hV}!h|#HH zn2zk7PdBKhu9v=RLF+1%4GZVbH(Oy=2H6~GTwDj*O*JYXt~53jV(ux5LhD&P{5%}G zwsrRLNg|3wi{(!K1BH*di_1G^BGX^T2M9O%aV)VyFnedef$Sw(X!g`7+Q`%y3me9= z^7t|QBrojqKjg+0VblyS6HUg@FM@=y&(E!Zwb;w!ei+?CXmIeznWw7KZrX-?zb7#c z>@8CbUF0O>N8!?Pc8T|I542ZXV?=t03CL8iliT_CI0PX^q{1>Ht6N4pzmm@qxP>E8 zA?83vH{e;xcvs~inN>y*LO3g4e=6+O`;y}}34ZW> z0J_m(lQ@2L&kd`9${#ChbZU$PKo+ABIW4-X?T>9UrbGkJ>wUpNG=BD zSu2+xS?O?;yStdtF)Mnm!h1Ni$9E3}Zt4B$k;rol>mr2zj7DuCeG^!^{;QU;e6hBkKnQ3umSU@lvxQMF z9Db{>U7%-i>w!LHNer3MOgAyruL}obx{L20q`ipdlc;=JEsB=RsV_8qbh=PbwKRE| zjBM;Jandx#Cb_=b8POX~^bTGWH`}n9u}#_mD@j$nC;s~Fl&Uon z^hmyVV!`HU)UfD=(eHttenlKp)F;u6QsoOgJTbCP4do8S?#$ZI}$-W-kPm zmwZJ>z@TSf`L&y;Bv@05cD=B9lIoOt@M(6vSicG}W{5LGj zuh3+9RNC(x!7k`&Wv^M}`MMKKFMLyD3<@Q4+y78b88%hh3h#Rgr4ke}5ev_W_{j>l zc-Z5fMtI5%x%?lmH}_$JuiIu*tBf9E6_+8r8XfAe$&E~h2DaI3#M?}V$lUw*^W=py zKkTJdeh29NwwRURkoB&RG z(3NZyBv*q_jyi#u+Ci>O-|0iLi61B(tmgbyfsC~%jB6%Lu&pj5xUN&nA;ECqz%X5< zp|8S{lA+uRhtOz_eOD^XSV7?&E43oavDGBH`n2waa&;jv2ZQXv6NZ%mma3yPF*na< z7)g+R>MTwm7flQru7z@>n>J?2UE2M|ggiLL+&vEXqM#(@&jWMV{KKwRQTFrwaf#eLbU7zN3{f9GkBGE2Xf>aCGrI9E_-Ihi^QhzhmL?M zXS7t+{`q<}kB3+R?TW{Doya`#I07+0}!?N&UkjWYp-;@Ixk%aS{3~&LZ9n!OvVEo#sDd* zj6HxlsS}lvmdYsJ^U!ZXj*L_v_RMv;&E-^RDWO*qy9-SJ1s%+3 zdxp#D!xcX~Gs3`Hxg6&+Un z*Im>IH{k_Bd&x|gbU%b|ImOvEA+O_iT3451VH<*1~_^Wkeuw%s$%qnN+9V1mW zQupm)zM+W?Lg^KTWJEp{Y_>z27}?)@Y;YqVF*VjmDG22=<~f(?gjD_X({eCYUqmmP zw{~vV3q}KiiiAUMpm}ML?Ezqqo&YqRHJ9BAWwNsT1NbSSU^;+}JmeoHj_>ud&p%UI z(C3*$N!MUrRJWl7XPvJpf64CHP9x&`3!EUtAXJNI=H5BsgX0b7s^T%7e79R*4>jmAMDd2PeV=`r0op_F}m7 zEquEMTI~bFsf1ZX>=_2FDIp1VPx$kn-RQl~$|)zzlk}^@8dJ3^C9uQ+z4O7rfjf|7 zxdW*^#9ttWoLaq93#$7iQOE;bx8+W#f-`B;NbtSmD)jB&g&u)P1N1(jh3#~(Ors_# zq)66kz=?Z<0m8*Rzs)l|`9+SB3)Au#blo^#XBO=bw>B7Wiv@G3y(&m@^5?Si=A;xI zkfVe&n_Cgh4!7hxC>pI{`)4cgJv&iarIgT1ryUk`&b)SzX$#(L!8!VWitZSc)sQcg z{Y*T}h{IE!ShQec1}S5nY3nTDp~biER7rbQeD%BBixYe3MMxZc1B=Q?|9eOhf6)Ui z@+X&MtXUQ|`raFD6M&Q^#TXiY(J~z30sq|9O6uWd(x6Z1$%{NqHw3*aVCQunJfO=} zlxaCQNKMqF(kxeiKNoExpTj)@E?ADklfFHcRwY;eHEhb=U1+96!yZeQ;Q!|UM3pd# z54B6ojV;Cz=>HHWIFxqL6&gdhsPeH&a@7|mpLE2e)G53&gGUB3-O|bA3~*+wU8*6FZjX^=*i#n7>JQfjXGIK2l1j=&GhA;kDdM_ zh61QghUtS}dQ0a+na?FDifKn$Qzc|b#)d=^_v5XCv3?YaZp{6``nwKg(CS3u)w~cf z&L{O9g&dBXI2bwq8)db-`K;Gq$RV9ij9DWFeIijpQ+S0$E~|FDD`&dHIuZ5QGRxPH zBgGgoto!jAcdrB{;D$WzuJl2+g2S;QqG*5FLqrUjsKwIOSNu6`=9inXN{Qb7 zHitm{IM2$6nhb^+OG=40Wc!dZq-30+wysB?5k7aVh{tPR9_ajbxcZtQEUa1KYcMS)tdxIsf6$9ZvY0+TFbM?y;GHr7m8aBNy z_+yE zE`2$b>0pzn|Ln$l@`+GmeJv#`;1Pi}gsH5bv$WykRP6Se(DZI+FUr@nZY1x;$?=F# z`xJ1P5|7(SAmaLWRaAjqR+nP(FkE6`2G0j|zCh6IV(!1*AEq(k$+K=V znrR|6@*d4zsa#Wg90KM7bD(e=iZNdWo=knxl8x7;961>lemQ1Nj$Wc9*JIZ<+vRV) z!(v%8S5mSojB}Ao)^8UWSPNR;7F9WEnfCwYf2&|1&h(HULT@3 z*b8iDB}sBSz)~`T7|>e5(u56@BWy7UqzF*gkQW#^Sy}sCFXy{G0nqmV(&DL~VYiM8Q7xXHj}e zKixa!xW;Ppb~@8>Xr`K^8ic?BO#`OQHdE)Q$)44ZY>%@W0 z;-g`Vd2OYc#IDEmhf{8GYz_oUt8BCgCf;V*%K={0%So>br%j5BtI5{ScQf%s0i+_D z(^8RAUZz^HXc>(?ws-xQ3N?Noz9=LDvh~XhIWI!k3+05YQ%;4+MUWn^S3_q7aRSmM zbHa3Lu9(ST(pC1Ex|@h8`we!GLgb7`g_648^XLBjZj=0P?EOc3_3B{2naOy^2Tp`6 znlgqMdh3W(;^#rjhnHx+k1hBJCK^|bi+UUM_z+}Iyuv@`6W7(94<4?nL!qx(BTqtyP?5tU5gfQ%JU4gV1ueL)ziaucsf2)) z=pR>$O~tXWO3^;YO?dW*(I>p$`BL{J3`q&Wa*8CxyXt_QBB9%99xvW6?N_pLu7Yx8 zP3EH4%)d!nWxSqXs6$BQkSgDk6cG02Hn;v)Myytl7L$Vf;B{^wsGe?Q4o;fz7WR}Pe$F6S87r!26zEx5EVI|*5WJCzVr z8@3kHwtV%=ejr@#(R57}_Pg6L2Mf^&S23=u7MyI?AzR}{V&%I(WekNVlI>u}cWIH1 zsMOehr?dkS2gRi5XgkAo)$!N#=CRU(aDkWAsoPUZ65gUzm3u{PH1#JQjV%J`ildum z#8bo<5BLXTB`|hUWBZZ*=rd!1_d#eDk>889KJWcEW@0DVwy!ox+TwWN!$+K~0cd$I z4grD5zkeC3yPm(G@?Amz+}HxqPoMiUz)xe|FvgYpK<(xJAL$mT0Z>JfCo7MSkCPUe zdVBwLZSOppF>IXf{3gQMvTOP**)LaqZZMuJ+N_dX+jY{*S)f=Wc6$%)ALQ^ z`3GU;$Se_+^@dGXO;A&E!$B$+hEjt!;@g^RUEnHnp1?U9s?Z>vIpz;LeDgz<1M{f- zHa)f!TlF7Ej+|VJW(VYm3TqPnEJg-XV*i^L13C%+etKY$jVIlUW26O1(hf;Pq9Cp%NO+fy%negi}S{cN-0Qiq-# z{?M7C_S`iw>zPAGlRtNLy$Bd9U-Zq;dmGugtU1Mstr`!kB#_fmaD8$`>7S3WYa_Fx z8{*ATR%PG=0B&`VeQHuTij^^%gCaMDutDw9k&HWKAL?m-BEx29k<-mpdwsBJaZ+Lv zrlN;1ZA3Ussr2YC?U&0-JOFK)Muvf&kN1esW8Kj8pT4%VLjXA6_jks)w6E{-rkv2i z7^?#@<~LPq(O4YhP1__4_4CfF+|U7zCu!oR5VzvMUo~Q})jzIEi?@+N$F(bJ`yFKY zkw!d;wb`9)vwv<0zD{PXJ#6jbW!@~n(a^Y1-Qj{KuH3?W`5^erZ-q64m)2 zCD{vjc!yZEQm+7n$~C~!yP5dzi|H?4;#9b7`&r+GVpfK2XQ>E9K1aaIzAv=Q1ww)U z4e4Y5<3*lZ*4^H7A#C&Qquj7j$D4{Lt-le?PM4UX6s}Mr$pU{u5j~R$@^YE~Qt*8n zce#^$@9)TB?H4oWT`V4#HEeq)JXzSvio>=*YtF=c%y0pR#F|tgjTT{bsc3)gPO0+6 zg0Ejk#=XN>pfW{Bk<;10na`=RdLtskz6Jhp_)b|YG8GFum$Cb^mAI`-y^4UXD$N4Gr)}(*dNx~=;c7AiHJu8oamEmbRJiuUeDED6d@uu)}dcij= z_;&eiolkg$I?pz7g^3%D40l3=k&=%-q8vd~xwsMfLw{n_+8EcpN1HJJTj2~*(VYE_ zLHCWGJ->JR8&J5=16paJed4>Jm-2-&%{)Wz#@|*n3Ws*S-L@|N1h~E~5S8j-X$HQn z(IT)~$&R9mtqX0q1Iysq))i zy9y#fEMTJ^A9sfp(~}rcZe#jG3c_)|(Hj?gi4+tsnWK7DKjFnGUCyZ^^j=idzB z93~fyLdS3YRMCqUA%|=Vn^M9-{`gm~z2)sbs8ny&KU0ha{&_bkoKih zMBul1rxy~FUuo3TEK{N|Dj@R878!vuK^n8q6;IU)9_dl;+}DJPf{HlmkikeIdZ&u< z8uC7z&_)PW#sW;OIzj!|ViYnMpwk{qS~Y*<%JaX**7H#T$@5}8gN~s)Qxy8KYx^d1 zZ#Lz~cnM*15Rw>yeG9C8t1nz;Ge=E+kQxC#42VLP zW>_%}X&)gq-^YUv{H%aryqnnNhdAnv^i8trZ;~C;dNMUT5noM0wf8ZPeVY-ci%^2$ zEK=4JN_CPx!HMXO4aSJO`86h5SB&Z(cM{C%E7DibXTE7K7va6Be};k`E4j z5IDjDJF3LoG+DHDf9Jozh}%pIAJHn83G7s({Sz6FCh;`Bi z!h!zO1>`q?P6@C+-gG9j_{WwWAE~JLo+!DLHpZ+LB=GITXq5*=9!J+-9{<|Cj2y_L z8{<`S4SR;_(-&+I(L|o!^5|8}Afk*bFDiyQiiazk?Oolkvcm|okgB4RsJ&S! zR`35;``rmAEdYi*k{qzT*DhcTI7k%{4zMZ_-5mP8AA;%PS|uN^R=hN9#Ri8Y;~WH?f!>F} zQ-?@5^2&h1z-ql^l>w=nP-yewFmFw3BAn9r#?JmDpGJi!*)ke~-`XWw->6X&;~z?g zI17=6+hEu0NhzYM{+kr#{!dfUfw^#4pBP|({44q`9QVcvx^)@L`TbpT@cMXr_$O`w zvK1t)R6W(4E9;RXa1e)8UWNJQfDnwjRwDz(*rA7k&CeRTM#a zz;gW%?L_p;T^JEu9(~EYwF5wucHHTYz%G(gw-w9weYWxiEcNjg_yD=z_KNTpEN0kq zK&vac@Sc^V+x;CnbC7EEmaiq_0nArvL2@cx!6W#r7|KSQ5Uv^IM84ngpExp3IGlK; zi2E(PjK4COw58aF(Wz?8)TW1j`*%VL6f!vsD5G#y5Eu(8^ArKb2i*f{gWqE-0M7k- zght~)w&GUqA6JyfDfm)Mslgw^xn^M6E=L^F>uc}tEEU^K5WE~*QX_h=r!+;F9~DA4 za$JCk(*HIwgMiv#QNyB$oFXDz#16u-FnrFAwyzThY#tW*e`_aD!)=VJ8^&*%!xuhp zuCBH&Dx}nQtjbXlP@An<&filNnGqw7VYkow9mWAK!PuOFV5g_V-f%*}ed}Si)Av&K zK0MLvL*V;;WbDFYvs?ZK&!yL#(8)_(R*sd~#6soP2zQCuY6E?nS0(HTzWt~4$irHO z(_tkK@_Ua`UqgVpgmSTDAs2;xi|~#h`~>E?`Qe<}ZZ9}|)@)z&IdFn=)Vf!Q$D46m zskK5&RWK#0YCZ|dYVY455nw>X`;x1jc+Sp00Qp$chI#!lxTFJpz{l3M2s8|15lO#(Dw%G^svrUWn-p3Y7Fe)Y2%imd8TAUnX7rk z4{i9NShBiM_)lIXh7ZNCyU2>lm@tW?kuz9ZR)gPzjkp#RL+hr)EpwV`Epu{fVH>bx zg>yw7so~h#)w1Sk*$^EA60o|oN^{?1dox5k8gWu498VipTaMf8{y^32S}i!FZ)sn~j89Bl{jHzMw$NotN9P6xYJ6zDwgVOcgAag^Y(e7pdR2Gm?&;a~ z>XuO~MxVR!S_)g3+uguMgUZ$b6D0B@TqrF5KrD|uR`j|-CfhWZ(t#2keys`G_ptcx zZ+hTDtDB|EfmDEe2DzG|eB+K(e8nc3z0Dr9Crc<>@)!j|KqCQuC10hNgb01e6`;GP^q@8&lv;@3*MbYv;4M*-c@Q}^9F0|R=+|3aRyn}2T)F|aNR^C zNca}}(Y&)c0HFkQFrN-{NQnIMLHJRqW+A)yXi(1bTyjFvAgJK^9~EQnFwOeNnS=!C z<3bzabOG_dY}NFST-AgM5I-ZcHjs<91{NirHs?PUi$P&r zS)^W`^1&26TwdK}?RQ_FQ~3_d6r~~Hd>%%Z4I>$^HJn70CnAyI;=Ceiz2t?x<~S!j zI5ad;hh)PjUB<~~CzuS#T^a`vgi~F$xMsHM-8M#vo2w{lrqeHGDhA#_VZNiCmXocz zpsq2gN_7+9^;Q@O0-YA%4!F%fd#xj2AFE?)DDymE?zn`Kj3v@qhXZMT2R{SSV8c;S{o+%6s+)f9l)9hyBQSw3S*K6!n8{Y4m0 zjzI@9D#Z5rC5r%UtV`0OiZ&k)s+;6PuW^goSrBcnrKZKF86+ z%B0o`{CCMdCuJqDd#v{)!EEypjxnh?1u*HHVoK2>{-MYe|Lwk?={8ygSFDncu@xql zB82Or!H7Z(0833vk`0eu^&(9toH(B7GF9hwiud4sfTnQ)VRdQQ`S`^*Vd2Z|!UNr$!PQ(&?g=ShD`V>jb7xhpBcRF;Ql+$IS69rxyX94=f|W}gbaOx6DbP&&GAJ* z$<=i4l?5{Z=&k#HiUyOX`Cfhum{s?ifI!y?Yj`E8z49^a z@59d_iMgD!dt!UhpruZapIMm_(^*>9dCq+O+DXN9gLuH~BT!%-IzI5Tj=~feG0}=q z*j5&?n#H=EPW&1dOT(JTP~|W27uf`hOx(oX+7||C68(66z{6Q(INl!3$k>Q&c%D|W zH9Tc@KM{J}9x3g7J9vB8B#E!N_P#Op?wWDtk+oe3mgh0mo4A8B7I4}XAP|_v*T zrzPdB^e&~iGA9zFANEF)#;2xGkqpAoWd>-96{PURP1jLG4x=S&oaR8gE^?MUv{MOu zz@FRRl?m9=`GZ!};h3Qej4QK|$t6EA5~D>@GHvyIpzgZgUyXn?!XQ6(R?4=PwTJJ+ z<~2cWWyv5Fu^I*@;*o6$fDRhzKX(p?T>wor2ioP6% zmxglmAw=em9^fR>w*M*If{xPL`Xh0m`R!gsS6aF-v@ICA{cFwlL#%?@5We3hfCxT0 zPxlw__(4Kwp}P2GhDPBgTsr14pMGLw=kUTc4cu4Cowxb$#-Pa>hr`g86FFd$!ft)W zZtI*rw8}^|@Os)$^EfU_6G$v!WX3wj8U%t1iVgtI;J->)E*O1?s3zj688FJCV5G|? z2VtuP=jA3_V?|Di#V?y}6b4-2qFS|(3Ce+osE(sxJyynRB`ngyqO=1`=r5pQmo$4v z*xw8W@3RxO%ZisV&Jk)5trDlvv?%I6>V-U*xG=)$lfM>E0Ug?u-}_CS)2Rtzf(S4+ z#XJt^PyPLCYb6E?b+SH+fKhz4cG$$h;=!Evxu+{j&eb-X6ak~b-b;IGTMP*G9O*i= zYJ0+iHNYy7zn6$?IJI>uuz}qN6itPwXyRp|G0>IkPE z*k)MQ_)WQfmE$DZR$aNt(!Ba5%8F`6n-gkTs34vF8z}Y%fd7WmqI69S~0^ zT~v`1&Fy^yd2f%4XEGxtjRmL4A(c_(NvSMGDjxOyx2z6cWJ$JXeaE=k~f%12~XQP~2PkPKXA`p$9 z*mKaDw^kS}S*yr+{5PIx^J)>Wv3YsNj^|2b_RP9Z0!LwfqP)4|miTJ~T$PZH zCX5Pp6m3vNvgK4YDL+$sLu`vAqT5~bw6z{R7pXXwS1mm_85>3-Ii45l%g>ch79kb7 zhkjEl$iheyp1_;~QFbK7);wxPgOA<`%6eiE9cUzNbIY=klw++%Dp@!dv=bd1?$i~-tHFdST!vx_57I|PqKwl3(!E@$J{~jq~YQI z)0SU34Sm>YieuR5Mgu7!@`l4wTqwDrV(REdnGV!x&*L71_!KgsX`Rw+j5P;jDlWCR zH@Q?}qJmcFE+U4}7v6N3uG<8$IXKkw-_+yrDnh{`>-;&Mz0sHA=HzIhXjVWn>T*SFikfQi7P zisw7NDJ4kVMiWdfz|>%n;~v(!>=d3r{k4J{wp@5p)pCOOqN6W?Lb7E$^fa{-acs2O z_m2MH@DLYk4A#VW-Ow&pnMuK-5r%@bbsZRLOCi5R`j?k7;>1tFUK&qlD8hxPObah$xD!b>XO5uz)Z* zWjbjHS*-GT9(0dXxR6C-QvQ*~iKgekQAaLrPPO2*rMWASG}aL6VxYrjrY-EE*S8)3 z8}XIQsC3#K#lP&1g?m|On8?V7N1;VtN+}Tao;Zz@I00+-6JqWXvAlHFWs! zmtNWWcBEEv$~*5mBsyLW&iHR>)!&@muya}xEl}0iKB!N|3jzaHkgdDuSTJ2U`5hvx z8ynb8kj43Yi;ixYFzBSgQSVeWW^*t}yPUytX!(Kq^tvjcTBaR~@5h+fqROr8>d83@ znnA3LO?IDm+fLnX{>U)LyE+Abg*G5eoOQ`2=5>uW_;_CYyIg;|Ly-_h;`;+|0_2c_ zq+4!lYikpeyj|P^=&uiWgin8b`-O=po=EUjwr67Tf-Di9`qa=_Iv2|_0Ukr!r!M zaGtn7I(8gk0D6>)4u$}y6=O&vY&qr$tL+Ade0|w;afqr9%>+IgR8kU* zD9pBE`ku#BiIl)3&q5+0e5}hFk%q69CLlE-N;0^Gn4bCeg#u@|q$XBnax?$heA$r^ zdLln1O`$zNW1lN$nFq_^pTWqp{QP9AMXNXSK$$|v=lIar*tBA;{g+(BjO=z@s+Fa1 z78rR2O%Q^^)W&YMNB%N;pu)Omt=Q{u2QsnxYG}+s8i}M{0@hli-;8N|?21wlrL0?` zWpb7kEm9Ooq^jqTC~mQS`9?@B`hMmfO714V46zx^HwKcBnD&^={N6S4_wQ@=)zys2 zKQVUWYLh)q5&B47G${y8B;JF%hi|I&qU%MP?SWi!!MZVg*Zp^^Hlq|f9)85ICsSpL zvo=i6dnaK!K?2NIvS?_FyGGs)6qi33Fej0)foXd%dw5ywUsT@XKAvnS^QEXoqG2eI zr163|1uFMdFvER$L_oM@kH6~%Y)Jnk8hn&i8(1P2^**AM7O4+hSGSu7pkDM@H@5={ zy3Z!Lb5`i$_V;9C92AZ5ngqob=CzGdCzu*nqY+kJ51XI2OS;{&kDr*7h}u??;sthY z7<0|E$50w9Hf+D9r>9?ux)^a=QU?oZ$}!d*6^5|4(bYpbO}Q7CDsEVBB55}7(q zwiL1YH;^dg%5s=HFj(i366)pgF4SDmUD zG?0qwGfcH}E~;qm5;Cke)Xj;P0Er)P816cEGV0S!Qe4-Iy)wb(5`j1`qpq!>ggg8x zd|y@7NH+B;l~h5h9p9rwloAGcxnEm`$?>FjcGB~YWXX?od#Bs6aIjqS}1$jV%O zL~vz!3Rc3TPaIpy<%{rr@qAM<8}KDG?6wPJK#!?ukl*dIv7@TP{d!Wa%E=v1 zeJ2s!Yhjm5r~mUDOXZaEXE6Fe#`Q8mOi%ni_FDRbgjRZHoKi24P((c*PAl`^-p7eqk_ySLtRe`llpgOfig&#XMuU#2mNY5lowh9PC!p)rKqkX!!seQ6A(pc-qJ)Sr8tR)9{F4?|0DmjtX@rP3aOja)^@3u@%XKauc7y6M^ zpkAt)sa_(#F{bdZ<+*$@>yHni*L8xzpQ{7PT zRTMJA@Xk2U{FGfOb8axwh=ZF#+*{MUTB!+?5u$&aQfVU2Bz0YHz|E_%%Vf*;(F>7qS z4uT;&whhZ=VgchWM+(ILxU9#v+06byb&tKzl&Btn4u*oFJ9gDBT>-tgem8$$a)0VK z^lNMRzxBMZEIyA!V8Uj~+e`KPCAcsi2;)*YW7O7Qn64QJ}xS6*^g{wSIQlCw_Xf{H9Wx>W|&3dmEVh9-tnR@T!!^pZD;J!{Z%&Q z>&NJe1p9L?L0PZ?cRELNECpuXi+Z1)dZjlRwtuRcAW6$Wp$n6y+qsnv!MD48-(Cq? z1(u>6`VBsFg8FbW+l8)DJ4U^H;Gb=B;~~pJ46s7oyaCcElNde;VIna33>8+52cNl~ zO6!IJ6|1&-v_v-=y=>lV)f%;dRSY{4w&6f;H?w&;?j)Dcew0k`ZTT+Pdu?%SN}ZOo zw#G!p(CQCG11p$LszE%8z)7lKraF6TBd23{j#)?{(7L~WhPE}e&?+=Ol_lP=jdWfWXXH{uk$xx1t zlb=05uq0$zAS&S9B(G_bCBS)D2f0n{X9#+sr1wPnYNXQcn(Tk`AeZ`#r<^$>(_TSH z7-0H&)i+G=?V?)*1Y=n-!m4d3?jMg3L(L8^@vVY~QFu(6yr%?4(2CIey7Qs*g~tO8 z#+jG+v-=igFH3G@H({{RWBsrB^sFpmr1#r6TAs1+0Aval90Jn?(L(~lP_vgZX#X2g z>*3iGgJVYl%AsD-YpcnJoy$$199$GL&-k z(KDjsKh>|{2r78_J=npGu+d?aX;4siAN3FB!ij2!U7O#Ly)MQpYArJC%~?5v;?aoW z(Fpzz00lw%z7Ue`k#vR|$M@=n9S%SE!G5sAe)YTKI>IjwI~>=3I^nP#aj(bYxJdUL zNgyF1Br!-x2pR!upeN{|y1S~fGWW37`uwo=-kDk54M#$BWzo5a9o5vBx%XP%`2YTY z#Arfl*;renUkvCfICLX?^^qI+)XhDX?KwiVQ6u>#GuDxMVc2wMCMocn3HI&mNSb>& z;at>sdKV_Ly*T3RuxxO{weY)lA+J0(GgJW(kF|;r8X%Ca`;zf@1r@L%+AseR-#arl z8`L0o*VfiJapI&LJb3Mh0j`m|wKm?66DLlP=Xu>Uo$?f13Et-<8usr^Sm@0WDu;LO zV)G~CiFLTDOIfqkIMJxk7#f~(;)H(G-7*x;kal;XvfaFX^gQ4F;d4Cs>}wo7QxcM_ zjzYKZvL@=q_{!nEN3_D&v@KQaSnMF>fE4(|b(X*U+CzNn@kjW?_1B=>5Iw`nf2c6# zu0y*qbwxEzOr4QzW(~_3U-Fo_XO7p8olJymKl-dCOWuWIHb<(z0o4WzhB9kaH!~aD#mH6deUOUkhJ*^pkw? zp+nqqa3@_|Qf>4nGL6~#19KRG`#yPyg>H?7GrXw@&6f`Rrky`uQo2ycZkkbb2^ZEnDw)U5#NdiNz#Q z=*u}rl@~|_J$5ZGV03JVW;WR*e>+*X{#c0O%+{a6g`h=Zzif;L$*Y7)b$R=}0nhyMEuQ+> zaents%s}j12RpZT8NsRTwY&%@gRv>f=qQum3#@{kfgN3V@SYuf`Qh8R>*i&8dV^}? z4B`sr(#~xAe5foiaNU8u9NfPX19&&Y)NrS&s#@jP2trWxe9aZ!AKu5Apd=yBbGqFw zz(s@T6Ha7fW1|(Jn)XZt0xFbrfSpS{7UxowFEI+T)JFN+@g~>IY0TE9{bQs;sd6l$ zwgeI!T}n02cYgRwo_zLIes?rF5N{Re?pXG+je7#3@mR#9pbahrT$Q86v7-kEcf)`5 zH@EZ6FMX2R4|GYY(^P}gB+AoCEkVr=(}(jSjvY%K4({JcHvw0c*aXm;vZydR;c~My zSIUk_JriWD#n)=KBEp+*zR86PYhR%~HDjwN3eGjmoqD?Ky^4SifyBUkX2^^}yu+vn z5)dEaFttq1gG7zza8Y_VTUXf`uAM;S{)!OPAkl#oYMxvz^5nCx@$28i5J>0e5oM_= z4^q^Kob78!BbXpTjE!f)6(}i5G%U}-fnD$){>|eocXQHkf&S_W+LiQrJv5eKUSX0M z%JGlie?rd&b}glJQs{3$8ktbRdz3OG(oQbkYI21_7-LM^ACIiq!r3!tIDh{9_jfEW zs*5s_zx~_4MMTiXu(q}~)ek{SKzW!;;GqXT$wD_}{lW@!-HhSJfChEeIF5_^BC~aM zmlL2IuG394RwoptChhGZT|B@uzkGxL{J;92IQ&i=lTm4xyt25eKDjPOX}`_M1T{%_ zj%tuomIXU^&c#U<4-ek8m;dfx{ugxB8sw*t@*JJSk##gKROCT{O)naRo2@^@emRC4 z=XmVV&#-q_^byu5@D<&K1qQACRa|XLo!($a1`mC*$5%do56hhj zU94f*z%Z<{HH#-{XBQ&N^K2{qv6-;dIi1w8G#`s5&KIB*A`K^<8gn|M|GiQ=ETLv= zXncW)V2r_g&&iV~M+mZ!*MXIl6^f!jYd!ttED2Z*`*uTW0{D{D2vm`$NClZl-2;<| z22rz8)>XYkp>0CtG-4JhSmf0sEBxI*JkO7w+o12E&>E)_q}9*>8w49X8o&JwsH>Pu zG^v!Nz@b~<+kg2ek3DjTOxCb6#883qh?01Y6p{H^=~-(3;Wi+N@+@>Td-rr>bG@uU z>u9W#ERv&&zT`f;61To_BIB7!k|b1B#cQvC>m96y})H;WV#A!NL7| z$P9?j$r6osWt5Dl=S0G0?k8q)BC{1KQ`QF+NpB~ryPG$Tt?|SUU*ZQp-{5=!$)c(q zh;AdtNFq4Wp5NZ(lz`Czzj1*MaQ7|nPri7FKfCXGcFhIK!I_#oGEVbH=b>kQ<4<+} zi3F$%J;ROHT|<^e%0Fv0-U-$uqiPCzYXTOLi=2ot1_^<~hYydvmwKH#b?W|8r%uHh zm$jQ9veWnwATe;m!F?o&pu8is2ItC1Um<>CqB#D$E@i1Lz{}0nl*NG>Z|9-6hvVlw z-+Sg2zW39!tX1F>Fr7ubj#})BI`gQh%n=h63%9iqbM%zQmau;w{`&E|_^Ze7XLqk; z^~~Fd+W>scDP|B1q1MY#xOzBqc7{GgoR5}*`FYDtHymKD7fn-=B)F#yBMW;DTrt zBf*gxgZEXNdR<(?U`)?owyyFxkYi^q@co~>$akK4m1Ae2RA9P0DZC-F;nh($zRpG> zSF4cJijdp8oU(TTzWL>w`DfqyA~#+$$MF1dq*|euf!1*-*DFI%rqx1GB3LQWQq3mT zKV&W(T!l^z`>)x}d?d?l=kr9Q&iXE~ch!}dSZ}zq+}MnWbFOtRZ@&2^&bg5j84Ly# zMG-gH6>6#n6~=gA#^||QPZ4#Do0~R%l|87u4c%r zkA)j(jC;%BBzg>W7l?}I%@t|cJ%Xj#eu_*xUn9_Zcua%3MD4ewo5%ssN?s!P~k!a zTA{2#Cz{m27d{R7so%1c#ePVCqax`ovr!4Q(}|kaxV9XjMYS{nYStm#=H&pvNJ%1P zRCbUteUT>8lN{&zph~=W1`c#@FB`JV^M_aYum6W%^4qt;XP~o$!Jv=D@ZbNp{|Sda zp?UZ1=h;|4%i@lmK#zXkAu5g1u3lm4O9h1&-MH@AoXCgV!CALQe(oGuQt-9M?k5G# zoIJzcz5B@5`vhI#b%7{fD||}! zvMlLzI#;f#-fEre$qb>^q>gy$fKnRKs*VXg1P=~&&O^@>sE|W&2q{V@C>3>oLonFh5~(b6WisX7B0%d*=$J{_%wmffWJ#M!fFTX^pk zqk;c`vQp#BwAR=fX%(A06+Xb8J$p!!1n>RC_iC+M%GInliN#3kGj|&xR8!H&#)`Rfa!*}p! zckbcf5@=>lWJ~vOO|_m`!}9VX3yU!j@|COY@MhJ_>9T1@j~*R4k+roxD=RB)B=5c7 z!ePTPs`eUT)xMS>sNf^XVggG`3vu{Gq;@hRM>2CFAOGdCIMtw}Lf!kS;kcsF=^WkV zYjAdn*N(38{bvvJgP$Me*agsOM%czO$#M8muo7A!W7Pr+B9tV_EP1hx0`~2IuYLY@ zzV+pMxpl8%?c}Q@Qp`5dR%Vm6tu@B5V|kI~rFvicY7E?@-zU)C+V$Rh@3FD55nti? z^XFxKeZBo+Lw)j*-oR$#bLr_{QPFuQ3`&_ghjX=*B+PZ7)9JL1rg0`Agl#cxKU*I* z)X+5@Nli)8!f<05(i$K9 z9XInFo}yUA5}3E}XP?~5mmWUEy|?aWF&mJtokTI4_1Lm!Cy<&1@g5|wI6u$w@&XzV z?@>W6o{65ap4|HSI%{id5ihp7y4u2fLkQ4}w~JgclQ4qhj{c@nwM=A)83sYn2D*u5 zuH!JZ_OCG}a^8C%hhfG@!)EJa8pR2On&#isSRqtwDtl#dDg(8^@lzE){KfBi@+U`m z`#p%vY90FhvgO3u_GOWJW~J4OM=+FxVa0)+@W_1!`No&;=GN;Msq!<(;55BCJ$CM9 zYfBu7vG{5Tp=7R`u)Nqqt93$f1novPv2h@xr^=Cd?^$18k2@&O^R^LvQ3>e^dS+45 zmL_60qGA?;j)aOL7$CLKO+X~Hna6l0(v-Jm>*Kvlh}e210gXqr$LoMo35D)*ZkY1g z(RH4E;T?_~kMn~&ckid$o2S3A_OZAJ(P^qU6iCzt(KxJBWWb#_^!VB%hj`@Ex6n&V z-aGLo=hs$PSYDh_|7>j-1jc}P5RXlStfNV6JF~r8Ps9T1I7D`wJN~21!S&=!zZ$6xN?n#f zMQpSdRZBGrDnu2BEHP7z+n=o~k-1iboTc78L1hffAs&P3?O=6H^ZR3`c;cxS_}vl5 zP+-n1Vr+$Y7s(Vu0XEy#_n_15aej3brxZF%2~$O*_vU!aIs!N zgAxmZQG$e+pe!!TGvn^Lx>u*uVIwc-4+A>cMX7f1`rCbe^o!Sd>Zj)^i8_R7I!9iV zc!~NL$|#K4{te~aIZT$&=~*b(u%+YRGCX?!jr`SD9$>js;mZ~B`~t>;O%s$dR8B{! z-`SdyOvIBWn)zNvl0XPx^kxl_5q}#@haOl6fquV_uBwW`V9*MXG*0A7%voGo)?@T{ zB`CDEHGHvdmV2-YmKWz|eZi}JC5A!a@phhc@j8y5QGDlzzvbzlon|eEtkTn&3rKxb3}pf`ZCBIvtCWoNB#dX9iz+Xg6Q~?48_tZ~@8Bk`FHsltZVMDhO2> zNR*~ylNl~+TBsaR;d7ig#sCn^MepqizuVIYT zs(C%Sb~-^~Icsro9$264!mD(Nf{h|aWnD~f7pK>RXJ0(R_n$t-yBDCh*rh*oP{Ure z5p0&Ctfi>{xJu}x zJ$h-zaFEY7($>2XRB$8~=6YR{G)k3U9CX-HK^ELi`@q0&2MXxnOJ5N7Z;?<+)_|A`B=J4Bs zHj1UiJ*=+v$vPc6X^JrljZl^)F3$mBeqm_}?!ZVtXW|-TYz-<9bXi~ZIh6zxG^Sc3 z18%qm9{c<~eD*V+V6Ib94$sr;So&*g6nP1vF(##xq;$Jov{4L(>oauY)+ZsL;#`OY zG6PL=tTxx`$JxhaIy8}#Qn8mFM9|7ex7Q=j^On%?iZS^zx*@*3FD~+s3TTs&R~n@~ zHVjBA;Y;@@{?l)Ng+2BHnQZ*gK>)lz75oRyntV_o`$6~c1AqSq;rI<7>F@urU;iNL zoaUf3tfZrJ5}S%9fU7EcS&FfWjeLNpK-x*@)1!O+{rsCJe!>6qcR%N?x45#F|N+Lzp)@F0#9QlAmfgRmC>Ii9zN^-i*ToMtIR`+_gw(HVucEN-*p@BWx2zf+2 z&N&1{+M6exUxv;SfB(#HdH(Q8j<3MLgA;HL%CcOdH z21K@ed4xbs8XJ7HaH^41^JCfiWW}ZlHm2nfZY!X8F$u;CQWj*YU`G$W^^JSD=e9+zzit}+SWTMDQF(5F2;LyzrJoLbA9M}yz<}Kc@R2ZX4j6&SztS7W3 zkf4|~)~6sSZutKiC$b&wn%#akexzPF>#J|`C~PbY9~rcOA%OCTsz7;6mSB5Jy@+F@*;|xsS&my`5|KXy!X5!CjyltWlPIQY~23!6=QFe?%E=wze)4)jHyN z>(#K4w+?3JME>+%TcO%gmQrfwM7H-4Y8{A@k+!+Qqm=^*=p><129+*QsxC)Q4|(o4 zM|tkoCpf(hVj>%BpN@%t3q9vdR3 zGrsij&3xhETX5?qp)9FFi7ST~aU>?gXw9V%`b`r%%urcV<3wbPv#@a@)`Dowc2W4A zdM7dtHIB|>teiDF3)?&uv7?MYIgI#PD9Ix#fXWC;QTPsLR!g3J@d!Wo>0#bH3I$+7 z3f2;W!39A=t;nf7A(R-aM!#QFgwx45m}84KP+d|J8c=~EiXGIwAu)t%NT}9W(D1-L zi+uB|hq(Xl{dCkSc^E`zD~?nv65At7Q-ar2WrfjM{l4q>s=}zO7h~Vq9^ArZjKNFY zK-ao;BE~?_nr-4kraP~_+^ov1ss3>&W$7AfTf=Ro=~?*Nyjx0d$z6x_JmuJ_g6Cg; zhnL@k3l%Ib?ZjaSqL8`=qI5u~3T36<*2%^0c$%hdZEma6J?9+M+Ud?Y(iGZypIoCELbiDhd^ZGzDWDp+&{nf9c>!M*VB|Fe7fi?83y zLVAH>?L7|c-i7vpI0zMlN>dCxgY}%M6wXJJaY^4*i=*H9;Xc(m1Ta%L7si- z7~g&JC0>4GNTtB07N@(2kGeC|L#dN|LiK#nM6%sDj%nFPkyNzT?V*ffJ?|r>2b0pt zdUTAT+$gzr2R!!hF7CT~7dsb*P@bn6t}`qw)^tJa#qUTIqI7+B8bn%zQmfcCnxgwK z%S6U)+jg>ZO{;ZbFtB)`xxa0!(Ko z&g|gCy9H1G;&q;U_5y1HHnaGohxd`rJu1MBJB-U4Y{nqHlS6%5xxY;<{~QqS0KqDc zsRoD}up@&nJh+E%Jbn*%-n>XEYvjdh)R*@Pw56WA-<;%)?#Gw|8F%2Lug%t0R$3ZE zyj^ERS|_sk4NQw5mDZXd7vEfw87yo2ugHt0O(0FXR6cOwLW$`tV$*%BY*_w}Cw|Ne zzdcD`zyl_kBXTB64s$R=^0DS-BAW9V;eptPf#B^V8%%%O;{ z_N$-2mNRtQoB#kI07*naRIh&iHtzbwZc=}a{_1;V#?YN#fRN#;*jrK(nO#R2S(tpE zYI7N@;ry9FeWxK4*=`xg_%g;|H@|kN`wvrTc0}Sday{iaTif{r1&|?{io7)Vps?u< zdW+X`YEARw7hdPz{pbXJ4=Ph=Ge;>3L7|Kxgn&_cjC*NpKh!8JEtl$j2vgG+P=OFC z6hfLLgmOSAU`GdTJph04_@}t@<^_5xXKiJLsw`RBxr1JJo+1xa&PPWY>fu3Z7;i&+ zq9!vCEn|)qrixPhYIP!vDakfh2;=foQyd1?8dP?(7n~+1GG1B>K~VJ#_TES3#n~a) z#w*}Mjt?cph9~XpU}@)mHhhogfBiE5?-MVwGK65EG$}<_8gBx}}kLzzL|t&`B(=ET{%T2HbZj#+S%yL@d2YqZ%bUI6Pk_EgM z2KlfqXK8{CElhZPI$x>H4zp$ruIXizky)F4tL@u_^9c17oyfH3iA^9sk%^2uk7;PG ziwGey&mq(|xqk5>gc;0zn>&#pIW|$CEZSxabIWtTd4umg^&&@3fimEegfi5bhQw!Y zX&74dSU(_)RkR|EH?;E>j7mBx5EVys%{j7lM>Y6@Zm)+HP2R6afxGWa`0^L-<@0~` z33_IL%U7|^vyd%gt)(nHr5jTElGJFT8_+e4iLM6;Yruhui~#YzsMdifF%gs?Y6kP& zV*9q)fy4kAJibxBn0_a6se0TMcOdmf)=jWjYb*o=FEurWM16GxoCq!eW>(YPvI8(y z4p9wlKbM%vV3Gi^VP4jN573=k#K|IsTH?*)YyACBU*fsfU4-%`mOzTp3YQ2tPqnc@ z(1ye&_-5k0{d?hk_Lppm$UppQs9K~}n`<%w)t1-7VQE8D(z5I(JE^ZQb1`_ z3zNlz7JC5U5=4T{Ve^|lS34WUhc0I+APMnzR9fLxR0R<|%6N3Ba8*Dn=yns7vE+rv zRRK_Bi_2{E&yhOerakc2U%rXIc=S$g-rd2kuaF>+MQ5>I3;>1gq*&>I5A|DVoU*PR z`3Pg6Hi>lvbWJrLovNrAKxHe}d~boO%t?$TNi%Ytapa9RNfd~kN3d}RtEw(nhFVJ` z$_8vToqr^d6s$4k2Uk*n>Z0SWz(^Cd)d&+bUa305t6?W9dh8IB62c5wGBwWRav@Qk z=Xea5q}^~3u-2kYM%vrQ+A!gFZ@tSeUVfWbjtzJ(j|1C@PVvg4Wh~Q?CYm4p?aMRK zzE7FvPq23;?eC^WbtB`f6)K5|P*GHPsUoe3$xy~n4*Do3T(be%_A+t`&6#TGLAJ0h zEQ&~&s8l`l2u6JUid=*qi;(DqpaNwPvm%{l*fhi9C-=?Q%1&JJJy!hPI-*Y)&FpY^lvp?%K$LYK<9vHnE> zOs(=c(*pT;I1yKy+(_GBI!{@Kkzou`$~d$=$LU&H>qwEM6l7V3u1i`?igG2Kh`z*U zE|jdU%#mM%79*?|WYFh--as~d=cBulaB97=WA@EPCx z>8m_{_!NiVfkJ^wpgX@C9~4DiphTk>^;+6tI`zR>>ql+?R09|YwT!c)nY zU=UFl4T*+Ovj+}yi z2~I(`vxEdqkrz;u=roy#xTS@o>dC})s~kz45t&*KMYYZQ1i@lWhsb6kSgnw19WS1a zf}K71_BS8pwu2oOvx4FJd9?2{zmQ>#AumeA*o*R?%}A`-+TP_XWegZg5JORUifSDB zIAR)Tg0*QO4~0k?+Uazn6G_u_BKz2qo=9zg#$`KI@Q9X)nNUbK-1!WakdGEQk%cJ+-#Qk?2q!U(f`B`kpNo=Hn@j=y-=MCJX39mw& z#>d4n@NBbf?~@`9gNZ;QQ50S%e0%DS5Hcn-|E{Ow#ULaEELG_U-eI(m8BYf6Na4@! zzLtOSS6^T*De!I$aRZVx!p~OMH(1XHB%N+76Sl~#hOs!HMP|{{$Km|6L3=C*`=F`n z;JB&1G(prfqOrBs5ornV*kh03oMU}$jm5=9y!ThcscgP6GI3}?D?uX@URi*`!>P09 zr@|XwwNaFU&ioufD~hV1s)l%9;CzAdB?h6Jb|~_I(sOj@5Af!(4gU4t{e;M;$73;+DjALOQemQbvcB$~97;t?DQ+v{PnE_vx{XIaBKYlEV3n;_4# zwOv=Im&JK2FLdYTdE?EuC|wgS$cO`t5cvjbJ~&a+p$k)%B@aLRa4csfNfMc~^=cG9n$VRoa}uMo|LkY$tBv>K8*i0hMSHYcWLq7ppbKDEj>Yy@h>L zW{KC|zQ9kOJHl^|oZ~`44T?xcWg&_B>f@0EVZG|euC0lZa@`*;2p{bGzO(D z7z5g(Fz5ir23)arpFr7e{c*476UWi*G8 z(nltPswrFEdzP1%C7&uG1aDX#wnipR^$#cJchqq2a1*mimophq%9Gins(p)1~ zA$1>QoYPdxG$4}#h>w~mTBDR9geYt3U5;`Cq|Dhl2lwCA<13#%#C?YjvSU%9!Vn!? z3tQH8wnf`l86j{+{T42AspsZw^~hMP&`8FY40es7bEJs69fPvg@(zV{AW+%%stn!Z>PoOD-71oL3it~hOK&O+Dn2cfJ$ZF`WBGk#1MztfgdQ`qpqY3#ybh-^K&LXA!z$%mkPbNa#?HHy?b|bBDSV}AJ0Utgd>rOECf_r>kc)~o@P8T zYF<+ShB;I!#gk$vQS~%$j9$km1BCi(ttlES4_wV#IE+YUr0GpuOgr;_w?Nd3g{C(<3F4O z32KA}Y)eSve^-U~G0_?a2!fSp-n-(NOFX+W&)zxs(!+PKXR)NiI>Y{X5~Z16TEaWH zaQ-~WTyK0lv1Vp4^?PKjo2oaRlbHejI4mt8YKbUK=?%joK6i_aa77)5PL=4ogju8Y zT7fmTw4`N>VSau-hJN?of4{ormRnjwog_({nSA8Y9E_n)1dT_O#343OXp>Quo-|Fc zT9M~DX_gT*JoCa~?A$J_wYYqpUaAoaDhX8Mu4AlWt3=lyuksB{z)FRc0z*~b_Yqf9 zdtJg%OWn8X$dEbhu%dB(4sQ<7mjnFll?(i<|NS=%HTcvZNk+iOCZe{H3Y{dDa6~Y5 zM6YG+LQw5hYletMun0+g{qYAVC~zj=bq%`q{#@NsytRF?CN#N z$g!p8%b(oGzxtQ|F}t%hOnC}lu9GGPWfJ;%&d`-~=I3x4Dy?xkmi6MCRNVWbUHv?y z)r(i6F#=WsRzkbOXKOoV@`4mOnKIbUGQWN8ZH~VSRzo!`!8NiN;IzeKTPhTVn}EY_ z)w=%r>see}jG2frhF-514_63RjDT^{D>vn&fx!#oa$tB;n-jt?^nw4|6 zZx#YN1dP_W(z8AcxVoxoCQ|ZxzboE9P2YmGxVRY0S`fLjcJAB>M2MobcFRy&f5=*0 z?^9G29dun!*C-W6LyDUY;YC*TD(m-Kx-IXt}2BgJ??WP@N8aWio_e0&z7zSd%%#8*Q!?+MWQ6jHk)3X$j+(bhTBLrX=h4E9>q#%G5>o96 zuEYX|?p)-X-+Y({@7)Ki*GRJZ9<=0?GxEgQY6265HVOS<&iQi}@IE5)y!V&U%$cst z^T2@vBPU|5j$QU7!BtfY+iaM9r}6 zHIZ(sx`{nLHQNZ|iPCu8qr!4-BXH#1qdfbu+Q7j#v!kiwyxERQ~NJNMju4GVLQ)s+=GiA3ilQK569L8@l7 zC0DxxQKC>b<-*#4Q>V{SRMBsE@9W|3%{?*dvg&jMzfB9IeRT&99;Dmt#!qfRIqMHM zfN=U;Nk1>~%EZDo+u{7`fD@DxPZ+;PXG6FG3;K-(ADO3n2@WSu<^{ao-QprWXKizwTqJrP>! zjM<1*lYIy#O4_Q)vQtC!ryEehCYljZ8c)K2d5*0Fo_qB;KmSe6xd8+XrrTjyg$XoV z3!IQiN|UW~AkE>FP5rpgLTaPKm{7rLf6h>m0oN_TgZEy~XYap>8?NmTs?+%VJl)jP z@J!V@&&F}h)@+H=c+qIv<-*#K_fD-+`kF7$drWFZJ5FsnGcCKp)~?%byKPj?0@$-> zPb-tV9h`^&t9=+aaFSq@t#R`KqZCz;P5gAzBjz$Sj-(Nil6nGGg=kdcC|jG6j636I z*v+YoH;%3G^owus<6j)(^g0y8wn|ZWf+&=+Es^3xDN9Dra7!JDjB3skGZ{@eOR2Fv z(|n(g#Xl*y^%}#YpSgj@9=V-scN)s|cadt1ZmLPGMx3gN73-g`5ed41@Xj*itJsTZ zJO*r+^?_&QTzwwu7Q!WMa7%+S>Pv3ry6(E`>T^_|VG;={M`zf-x#wwOcI^+zzaclv2(k)P{2#SJI??7zdXTSv^+Tkn=o0w!Jv;d?|FeIO zPu$pL?d%akxyr7E1yYq!<_;t2Xs;gr_v4}EEFwnk_1KIM&FqVBZgmz(E!XpIG3acDd{~S~> zZ{V}{ALQ{z4v}!4L|wpAV8qox4g(UE4OI=%Y+0$*_-34GJ73+WP9aXSHt2JHZAe~# zBmzpK3}YEmNN_+AuvRW8O!!_4jgRwT^l&3z5 zR+IwkdEo4YK9z?w?GWLlo7jj&U8ICJJHEAnuZ{c&p;SjZD$bGQ4oW)c&JH$wkJpc_ z@$`#t@$`#OD)1PBibgZK?QuAwYs)yJxs1@V&~9}kC`z?gdoV@SB`!#|vD+vX3 zfluCM_}b?V@#kNFp$kc7DZRZBN-7fdud+(*4$W1rh#O~d@+tg*cGm#kSUD$w=@1ACmSC}-5Z&>RI zGu0w)V9Quvr!y9+uL-^GMqw|(NlMb&3E57Lof+`-^RM&t^CvjD8Ut=mGWsn_#*_(t z-Gp|vGjVk^9?i6`C2psnkXJ)_Av9rM{XUckuGqj8Q5WPB2jKC~-NxgeyMu!}D^^ba z7Ar-~>1E;#srzn?0}0yWwbXYdC6JDe+^oTV)t^3X5{@2!m(}%H2?`CUBQ)~Ibyj@Y z(|d)^N!=T1oXFDB5_jKy_oZLSb=O_j(w|K8w0aXkDwEP5z=`+HGR#Y~vh5q5gvia{ zz5mz(S1jom1WTv8L`BMpQ)@i;>)-R!7mx7HSr`E6{JvQCZ^$!+Ny5YlqPP)dxs0&| zPsb2wxI~vbzK6kJgA}-aAAI&RH}c2>w{yo0OU#>9inXJW!A%+|TT}N`0zp@Zt_a$- z$TlGXN#gg_e^6A-Mud-vY5xVZTH?chX$0%KFEqGV+ShD8Zvgb*>-W*hW%rowHEQGQ5^CepDv ztWu7jSmBvpy~UG1JI>qhLJ8<>7wbcX!l0JQ<@J ziw*LOQq8em_W0e=b)J6iIB%SceURl{*U(#Bq#X7qdQ0k(##prlu4$XBi&>DX_e5x; zyGY66NJGWEg+n(j^M!|Q<N8g>U635Q|90%9`f*8K~+Y zOGF?M?$_;h0hiV@&G{lv1Q=+R|gSPqk%D4*_cw-}>gC1A*YH z5qjq`*H*7;=*hZ0`oOagPa&U|Q!?K{P zXF_r}WKiT(0mycsdk6S8-+i9{?TMFo=@?X*p|@ifE9@MVE73%cDNz3u|8D3PKf@$mRV3;c_3-p$=Nz{Z*1 zqKXyv?AS?`?W3%gAY?7AeItk#d9pH;@1R45@g{1f)S4|3r50hpVCq?wKm2M8STq0h zM}6F^9rH(DHRAyuR247$ChDQ)Z;nVgx4Q#r-aoBIQGEVE51ng_|8*rv6A;F0Bub)#;&4RFR?0Z^<<=$D~Nl>)>9(YN1o00dOeCf#~8!jefv0n z?i|)yzWwcQPkf)9sDA;=%gbb0HuVIIO|(}z#rhD=Zg|#9Sj;SFjjIZ@q-~>9YUxqN zXgst8{8gNg%*}TQAy5_-K{WGAJJ8uK-gBlSmoY>q%wg$$ScXb2zh^$0<3 z7@9Bo$Ynk+HLI~Gf*Qr!lQ8DXRP;rCEG8{QaaovWJ5EqPAEN{bfgld0x+H1FFl4;( z&MFr+OihiWunH;xgP|;3ZIkP<-7R1uA0PE_&b9tw*REZcb|TH%zkfeB-E9N2tpRQFKXPVz*zVy$}MKRTPCII6>Pky0e?L zGT~RRy~z_#9p=@yUyB%g>v#t17jROMWpgN{Q3^~~Q{@exRxM+SLbMvA%~zK6`W&9B zdf#V%{(riiPPiq-e$r7?&11w#vZ9w)8V;ZuGTgRp8<$>s>C#4I>(;Hj?|tuM*REY8 zD|`{lJwPSP=219)qQg7K+vJyQqF!r~woq%sKMiu6>GJ1&m0P?&1y=jGq$ABFJCoIm;d zWub(9>6LmG9Ov-rEPCD-prvBbqZFL1UlA%o_duRm^1@#smC$OTY8y6#H;u6m4{}% zNjlp`c^Cuk{*8nOe)D?nymo?%Ykg*?rqC`$0Fl;^W%N5ejB!{Y&_#FfaN%)S0W7Bs zma7UZ{r&*SvXmpV^!tke$qGhe;cLs>0X84!UjQep3f z;mcu^2MVJuivJx-fb||FCAkHSBF`l|cJ3iH5XCWCYw|qD7(-MFwJQ7%Q;sN4IkJ3z$L)HT7St+PFD+g{77&V{$dcKCEWHf~EwflHLuw zqm$)5LTD3yl?iDaU;pKD5`E5!|97kkLdaUylNb+`Ac~}E8mW!fKi=xLGv58@kC8sJ zfLA+Ry+R@fLURgj>MpBdh>g8xfjyE5zQpEJ zrRBvyw~Wu*oM4XE7Stf0VPRSl@xX2OJ|(}l3^nus2uy%PG)a}M?ZOKsRr7gN^Mh@x z`G?$xagvtPKckwR3R9D%_8;N76d1rtZkXzB1t}jRaJ|ntIM)VeW5iP~L5hqxJg4^r zkkPw+i5Qgwx(O1lKcpo6YMEkiR6_j-?gUa`?IU;p1W+OOnTZ8@a1QJYd-c_o zCm9HR#XHM#Qacr~(Nj*06_p(&{9IZDMEG_$0THRz)lNL|Gm;nVZPWaDKs4aP~~Ss3^a}B0bo{Fkvu9ple;su!;6}70u6k<-Z|O z)EVQvCMNPg*zq`ed7WmB26tsg-*&W#(+Ar&D`twnr?RYVMKKM72QC}kvr>}zSWE>- z&QUSOjWIH_NinTD=TkOSyM1X5|54<_rxbw2tVD(^_Fx%CtZDf=Ns^}jiT~bPYY17 zT75b(2QIg4wh~?SdZh%Nc}R}w(*%67G7eN~QV)YA{g@q;54f%nR-46le`pcVnA+u2 zeA!K6Do;@s9u;Sj+m38C%S20!b>8KCmiuHCGRw02p3LB*0RrD!ehMoL;u^1z44g64 zw^x%=f?~qmy#@_RErb#F&dq)2HapHLoVA6uzf1{JTyuhTU9Zg zVz=9Mw!wXo2%_R3qsw*bc4#|xE6H`m@Ez^>H@-11j>_(>UM-Gkm@(I&Ljd^NhoD9| zDa=Z&!VaS*R`;~&*63(O0)gRr%&>}n68-OTS4)_H9jW=bKdCB|Q%vKV5|j98SBZRP z3lM!m@G2ls`6DEfXSLamKM& z?KPDdSg2TK*T{vobG}!pqrTq5*TtwrfMf_sND4VRav=K4lO)3|>m(kpT2b=hCeaZ% z!c-EvN_!&(=S*&^Fgm+8{Ryd^y1c`mdRH5qdCN85dvduF;^ZWWjfWV5R<>RWaXhAT zBVj0h=gL_(5$cj$X|b-ZY=2#Ej&_O0pD=~qF7{h+#f=#xjX1g&{gTI?sE-?%yryrNEzfuD)N}Luai9%`#L5!JUEIvWI-*FuVxd_j zf=eD45q?!2j5S;do$fIa*kvusbw-m7#!yeh!@3XNPZlH6b(Ou(HH#W@JY3n^=yWcs zyLsG;k!z>uDyj8BYxFA#@H`76GH8z3pU=FMRh=*m7SHQ{HYN+dkD(!$g2gYXAE|EN z^h2}`{<^_CR;_Vw0>_|+DU*PWU*(ckMi2nxi{${p5$ah$h{-n~IzW)zeHXi)g+zu% zWxu@~5iJ+Iw3|3f)OL4bar~16@ddpgO#G$%x8FQlF*IYYj@9=l4(F?+)H_o8Caihf ze?BM^+eO_={6(NhXEUTW?`M&aNcCQ!YmIslY+JSv1_pJY0Lqd~1xB76 zPHF$HYVH&6`dbBX^S}`GPY2_hWccpNrGkj_Xg>=TSl%*9Oa9e2!X;5@TtBw`IaV5HMJqP@*<9Kz z;12um0Sx1`T>BzC=f{eS66Y3no`Y7lXP+)Se*767XJ}EQtRg$=zpW^+!%W=(`az_k zDF#4+kEbt+!j33*{8~GOr zN-kWoZ$mYkeYLHa&j?)0EIGX6Ijr2OyX(ij0YZBzE-ZZSEJ%4AgMbnNm`?+d1lm;t zvaqdp@(~I+9;aDDgIE%~6V%kh$dHHb9mUJ8e;OPMgf!VdW`EN?tbLvx*J}2Gu`$>9 z$wkdCR@GczcGF@E^@-&NBi;lNvGz=qNlb1U74gP5u8v@e*U>^MIvdmj_^lxiB9!0= zyoLQ>3p0X{6Ekna;!yO|$NQZYg%pee#hn1oNg*soO@`5vza(N zG?x_ToF1*>I@r@E#)7zfT#>mwv#^WT|8NXT&R>1%=OjDFy7B%2-?yk(SOlr>O;_ql zH(1nbYI=z*cRJ8QCK7qy)pr>dStwa*r+5(2i+{ zdy(Dx=O{BQ;T4*1rt@VN`m&be<1j78=Yyxlg4ABRzv>TH`SeC+VX!Yr!@ z^6pquhICX|J6{~DTec%OqZnDf^B0hwz;Y>Lp7=D4>LA7@W*`-35~5BlDP8QePdI(5 z$XBxY86WVSfygM!q-54ie!*0JVnE><9@`nTO@|R2rS0t0ea&{ZU!47{M4Y4!fEeSr ztZ97pv{D>KKQ-F}q4v4y*sV`T6|I*8BvxF+yAqx43m*OHm}U|(MEw53GpaZc=}N!e zL74jUAB$ACgcHnJPU1bAKkR53d?w!l$i?Z4OHI6?cc@?|G;_2{O0KzWtGTrjXQPcJ zcx1KWlpdk?oYE*Fl$#tru7+6rIx)XL&Px!!SUA6z%&f4I{sS-q<~0mnF)d8Rfj5nE z>5u8#sjQSJfFxrqa2;Ww#{g-`7GTPlvIU*@+5lMmM9^ zbT}lXcl3=Ai&_UcYbIXhe6zr7Kk6Yk{Vn?amf41^^|~lMzb$24JCU1b$Fj(N@i%YW z1&&-0Hgck#+g))x_%fvzs#SxKgmh7PDtB}kh=HFVb6w-O&mb5U&Q>wn0XhsBEbcC$ z5Ohg8@6Qw;Mp6A~K3WZcz0rQ1@bpbvMaFYaamb?5n$Hv5j|{*F#Wv^TnxKig6)`>x~`W*gO4AGd;{#fb>+PvU;c?l-~t^X-o0iEhcC|D<-*JkvOhgU%K6@ddh0uMtj2U3~21;YINxh27jAvAIbUehpc(s8Appw2_vAthWtek$CXoY|B!Qgx-e+vYv)$%+)K7gAe zMN<$VZi*egWfHrclh#Wg2~b# zK?k=i0!>Jr(GS!A?bAO0W7qO|>pANtsH!64f&mY6m2Mk5vYjrY!EhoJ(l5cT{%yni zJXSeXZXYS-Rl)bpZU07;8c{p4b?n-cK{1`0D!wfC8=*eGMzn7dOn)m%byp)Bq@GiXaDkv|v>^@Hl<0=}4mUgyEKOsT@|4nvAn2SP^6={dsHX}W8*|C|D>0F=?=t5LQZ z6|IFFZP+fxL+s-35-S}JI|IJ=gT60=c$_~HXfPu|y;4FVdpOz1I>-QHtb#^$BsoiN(+*ljzpx z3;opr<*WPX5pe;}m|!1d>rA4FD6#o-N|`J%aFhxkn>bd6ujP#8Z^ROCuCWR~i$Gbs zh~gs{Z;D4yRc9H2=-6O->GY{DXgLeDG@<}i_L~^v`%Sxr`_Uts4b{vJ12(!cHz=y% zrUBQ6GfCSWv2hu#*Z6p`1_E%g00 zzY}3riTPVCS!c&)gd1ECZ+lysCk@eA_~?2{zmsmQ*{=o~*AT*ugA)u$U2ro8!GW)`=K zTUAvRYR&6<98Yrl@F1T~RqL9s?!UI}W$UCj#<{?&4@EJq_AyFU9hV^U*-td@P$SA7 z+tS{A8nRy}YlEgbaa>=ib`XG8zXh5MwKT3;sz%d+xPJo8{sN8q84NsZ$3rkDX$&s` z0_G_1FtGCB?Iii74gT~+`a_pz4ffy5O#cZ;l?M|;E~d3|yq+X-JTF~57^OcALl*h* z(GY50$WMN?(aMN63!AjRzdg5Zg^;W_*|eS{mjz^cXj(TB=f0j;EY}*ruD7B@aX`I= z$18uAEsyxn5mc)oL0-EUT57;Q)X^&t^@D21p%NB?UI%xsN*e-g;f{TRBAFU$LJn2v zVnl_?b8xAD;$97`drN9Be-Gu~A~pGjhBu;U!H4z6^_99`Fx}*3uX$!Q$KDT{kr5Gm@?`Bb(+e8H29XA4 zMB>3`wi3R2h!PQ{poNNhG^&foYuii#HIkT0alQB!13uSk$G7mv`~ws6&GN7?VuI^C zJ|4yMrNQb&O2i}d=oyahO(R#_1Q#yf%N$0bHpM8Ouqd9ULKQ{@1b?dG408PU2-BBZ zu!X+AGuSW`LQjDfn;CqBg1IlI`xRryQ>WDeu@WzBL1glq{9vmwr72|&p||!}eln5mZ0Eu>L`|L_dw|cl3d@a_)!6~7AZ|*K zpQ&E+Or4dzz)V{a$$x>DFuo~jAwzeQx}78f$%~tHlgVBcu}6JcT-q$uIkk8q$6NK~ zXtCz&WBNUzt@p z&0&$Of5R9e7^cak^790Lh|8Y0?FO?U2F=Xj#M+f0o-7NEPira4W_QF!bey+#nfU0# zQ8Pu1Dqof33o1|vh`I%#eGZXDPD-#jtmM{;6b%@az2JiD{p&2CQ{$JR!gB_xok$m$)-#!Cf8tDUNeB%cJ)v6C~Mm{sCnAgw&|Tx z-4E%xIo3_uP%nqMZ;U_?KeuXPBCU*ycbzifv4*Ts6qUScmQ%7ub(17Lx4CCbOP&9# z)Ykjcvq9bS_)g;&eg9(=pTh)re zC2ptz?$*3d(mX|cVO+AtZ8LsRRV0OrsDUHOx+cH>4gOABc#2Fv>G6FRdLgUn;1R1T z4m(Evmm^YMwv7e=$6E`Ae0(w;>$$3&9hcL!Y8HX36ro94R@N>6=V;y0Hi#J0Vx(A#|)=Wv>Wr4(SA?Y6mt>%uzm3w}a#!k6x z516m>uIxb+!O|$E3W;q<5bCUCH@2?Fd{MAYo$Z8&2)kOz?JSqsuU{!Xod(Gy|7jHe z*#3LMEZzcT{~aPCi3jMK()&t82aYtw1pV^k#YxY*KJcyY7B9w5 z7YA3`v3%UH#3)7qg#bkhsvt2DCqpm?HV7`K zy!?ZahmQD-d>Z}d`u@*s=MX+2ucVH^Ihm+gP5OZ5b1&fldvgrsbwjKte&TqK?8XiH z$?GX29WH_7s<;2XxB#>wDD%tDC+e|1Mc=Og07&A4&&v))O+h^WD3<6La>H)1Lk_ZMjgw)Mk0E_nnqC90(1wtd;4 zcO7-MlaW!XbcdPV!S|(+|B3>%@~%Lp(puWTt6&GzSA|&HjTzF;Fa`YUrJDPTiqiXO zmpGc*91*wxSUXfQ4oma_#70z&e7&sP73mZ+;k0FDMASsu{EhRS$~{zr2blk`4)A|K zS>2$T!%CI2_Iv%amK_XJm;=tD6lgS9T}aUH3x^wf>rDbej@fPG>-^{t$z~ER4fh(?> z4rF!zYa9*SF^Oqr7Kwv^q*2>ir(8u=8f>8O?=D?GzU}f{cYVF}x=PHg^l66EV~L)K zAdJWK+I-yxWPxVa`{PcV5|Rrcn+Gn>b2k2FEX^od8^V*lqc!7KbJuMF*mW3?ACxVQ z_~$=@bC_QbY-6^hnCaB061T9drQi{E%CB#T6k;yA@g)*D=o)&HXhO@^z>!m1F*x~k3! z7BXWCe+p0Ici6^+znBW_q_b75c%Kjsc1cDvp4 zXqquGi&5iI*sr8zOe8S;Fw{ubKs2#$X(Zi9H$$XfQY4%3?Z*zmWPAUAQHy?hc7C^% z;aCItx-EjAdM>J!sB+D)G^PA)m1or3@-?szvrHJH5&oN_fgD~yw~~Q&UOOZ|R`Cn4 z7|rm4#g)JFyhpoE8&yos&CtmNEIiqbn+U5(Py_ffW@o;6RoA;|Zw6i7bgeM=-eEnz(U2-Yy=xs?A76iA z)3pdwg8Q&rJ?p^2WV`0(z|@SC5nD>{!HW)8l8OKK1wYyZZcd?Qc6$d5%C4I5(x&{= zCbBHTbZ(!&D~MWFeBqkgf+z2Ti;<6C{l67_h*@&zy=eP!Axgzpw}D7fF%(t&uQpp8 z2X*zyPFoz6$&Togd>;Pau^%?|AXa&rX*oF|ZYZhpKo7-BUv^Lpfs_J^QvGkQvIH@_ zvb* zYL-|S!HiJM0aQkW(y>mlMZ8_H*G@AC>!EgdjPlD62>khxo2-pjI6fttEX^O?zc;23 zT;(}o6vY&ULK}R&ig>Ogt_-4j;c~uusEo4+i^?laSC%I@NO(Pye_&RP@aNV4P0QQA5KB zDkBP2|IrfrBp&LmA&pgQ#z>f%-1KK}YjA(8{MDDJ8 zGL47)!bHPU&BgF@83}d|nc;s)dX`-{hZMw#NQjTO4i<1xPka!?(($I7v<|*j6aGHO zC2!Vs$ysKmEPmBPVEE><$(4n-<83WT3sUyM@DN^}iz|7wf(-P7i!yX}%Lv6gBgs;a zt2I%?=V=bozQiZFv1lP!gW)v1f2->+aSGR@ zC3+auS{Elbmsb*e_{#8v=Xq+DhUQ2ZsO#nl39qEK7)D&V!6AR2TH=wVOeK8FTs$!B zNAOHJjC2rn&yH@HR(Vm3ZDnb8i~~6P;@$fmImc_?QqxHL!=kqHllPBs6~S%kCGF#` zLeo#Y5iNi||8aZ+{9LKi;j|s{B~xDTzIF0)(f4)nWW7BT7{A>E{z{-MB1xB~bu+8h z+!PBh-Torg#Ie#qW}dy(njO0Qr(B}wi^H&6fC}TxfxiZ%9Btr2)&-9DTdWw`qO`qR z%|y?XayMR2T^boD(3ajPN=)ZN3YR3mrV9Q;@(RAZiBR&0A z`&!+;;snf7k6`}>Upf;!Zof|=eH1}XU?OT)>&g20HYTuE3VvIajm_M3}(hOb~dM;lYp@7CSl z6`!q)XZ-8J8-Fm38F7Va+IJ>)Imr?1*4ar*jGEHfFVv%zoqJJXO6=;0i-ET;mJIgp zu|BRL9X~&-+k7JKeZaQdXW+Z9#Xn{_AS`gnN}J}tU9)+a#mt2)eKTZ^I{NhFF4?>) z#vt*@YU=ctR8FE4l0SDy6@kGREGB;!z0l*OQ-S@YmFUZ;!5ins+gtil3i65 z%4wy&(TIA^Z%KD$w=42JQfaA`^O>xrAX~090f)HM4QE~OEun^fUHa{@j&uojhfrg= znA_QiF(Y+R98xXf*0mgURzq>O=udH#Kb81vhyhdGtfGIrJuxS!o9LBe)Y0S>H?8?) zCcKhj!)o31;-@&tIiUkckLh}Bz)2D`@uWuseD92vTk?9u3E~j1y9Nr%5cKrCtFL5CC!_8P z6P9l0t%o~Vg%C1*@fPqvyv%3=ALixKY+{*q&=s| zT6EVFHCKGfF5H(!!rVj!O2@(@QP#DMgL`liM}xB9m~AxkBkxQ)H_PH8-(J2?+T>3h zyv#_2nT>t>THIvySygX%!yA(7bssv(K95NBwfCD?GC%I-j&TSLy6jby=WS^6&P5;z z)CN4b9?C717FjE0`p3ef9r+98``z`|*$XK#CbbrLsbK9J$esfujRTXUIBu@5wxl>O z7{z%yUd=N1!y`t#C5;5%nAi}K*F(0w*tbg`Z`or{o?ml&>l6~o^XSA&{D`xw+QNEr zB^DM+(YJG7^}Daz6fbh$&V9E$g?RcdS;Iix$kE9qvP3)FGk6|yrdgdKm;KpEI4pIh zY|#Y_gaft*UO)e6dmZa+Y;U|j`_kiAphkPq!sN5L10TlAMW|3^36)LL3KH%Dtdf5+ zj#*&pQ6v{Kd6JX3L{4*N>Fxq0T^ic2j_Ex_Ay5BF-v_1vobY>|_BR${xr+Hdp57nL zfnAi-OZ6}sb9!X7?T>fRaqYkW-;ArhxiTdkuPZbAyZ36Tcj2=S%;sfox5EW|RN z&doh?XWS#oHaI$frn4q|;_}N;l-4EDTf^JylGWmp4Qp*2P-9ZfnMI&tG*f$K&VPum z>kiLIFWM?0yp~dYetR-YI#7}Q!a`AJDhy7FZ^Foe36+e`6JStDnuI`MVlbe1Vc)t1 zv8~okdJ9?#BUb&k*v#tPOg|+lSb(el6aE#$`Jw-Vr`uVvSmU#j&6k7pf*qB#tB}cd zf9AC;HDU~iE+sUnY&Ny1=k|XS6)B;oX(!Lv$=l#{;5xhAko#Kcd)lJ zBL4})84SI?MOv)vwHz$u=b1a}c@D4t(4)|5j5Llrd&7h64flxSzGId&#|cTjzL{je zxxm=tCSnY?OHdMbq4KMFIt2 zYyRdi8HVgIB2X%xKU)4s18@yquzPePs|C~fbInvJrKIeApXYQYh8eOawg3JWuKpy2 zEsKP8?wxj?fIL26{*ezmR^XL$<9%B7WCfM6*5L;YU`jAjbT??4i6z$8U-swDUClqq zdd=Q=Bs*)hn2O)i?V7o^s1tk4B8jJ!aRaJ|hsQ}@eWG~nst^^Fwwdzj{Bjoq!i0LM zQCN3tY;8)j3-EW`{DQE%Z>fQ*7l8(Xv5yzeEs&UvyjCA(tp&)^F0Bc=giWQ$#!`N? zE=!M-5n6lYN}|zJkG2avx&#wOEOihBg|Dyc7i$!fg|pA0?^?m|w4lT@?jGJqCQQk@ zDdX66u5Imt`aex7SVkc90z^g9wBTOYojq} zFvx20jO89*1jGm&G01vd6BF1h$-(zXjKK60iRw4YBv5Y;0zY5F$g8Bv>!$~3CUN}M z-P5_+9=0R<1@6~&C_GO%*1fLffj}B0aq7G*V(n!f_25rrUt;@+FBEVjP#ooK(XEWe7MA4+Qr$f$ z_RdlwB*M$~u`{#U0JENWazx)Y#A4>yu6+5l%6|Iksx%_rLuF zc$y>J(xm7ooxt~i+@OGg`r0LGWyr}>AJQh|kzw%q1m~T%ZfRsTwhK&U!daod!yDB$ znbJE4_qNs>4I8G-V*|(Ej7>Cf^~tL7KDE&W%$&w?Z#Yh*Sq;gte0Dn{6z>m%?pwhG z55Sa4Du#?tJt&RYV%!Y*Ro9Qu!-z?$_mNN}P1{xQ=2pk%@SYQkNcJN`m6b(^h5lrj zP+g*jz}5ouAknHbGJu)$ctz8jb<(SaL96}lk~6z#;Z%rLC#@I6!~KC?^l5+qUerKg zg)Kc*-!{G~3)^9j?8Y3*H-KEYM0${WuT-lr4CLvV!BEbvrW<5xi&V9i{%PB=XAERtNj8RZ;lBb6E4G z)+me}5bIg91keZ106N)N0Sbz>PK(e!PX`L*kBiMb)BX%HmQ|~LKT7qgY_~+7TK>AK z2QfT&@zRVE#a~Uj=a@w20~eSrOy4v_ayQ|mcI0+_+4dZ?dDV%WGXXovU7$6N1w=R1 z`rgiKxbMbGp)lMgdqVXDI&Mj7?_JDbh}t2#1xIiX@N%(k9)oo3VL)NVrmBu**_SnJ z*CP2{t=EKx~Fm!fK&_G;4Slil2p?(7W3mxR^nLojV}EZ680TsT^9 z*OR*#pbL206h(W%?q@jW2<$B`xyLP8Jfy8?M z=9p4c`HhADDKYmRM=?r*N;-~#l$@>JPl#TZyHurGUMoYOq9P>JY57cN;vlKtyh==b z>ChSU60?`v@r)D8@8UO)dxdi-ife3E#^_;%U@zvgN4i!2 zxgyGOlxqP{$2{(T?UYFn?>}$lLFmgh>q~L+LA>(9y7Jkjp}+<%&7T}dcccP#SMjU@ zTdCX+$&wfT5r#%kCx}y-U3@gd-6`Nz@7f}AyV`SgJ4$Zm0l~87Q2tij3|E?`4v#nD!?=z{yN(_69e-VbkCK7rISVonZYAO`Yo%(Yc*?AVLe@C0h$=zoU&g8b z821*|s$b3EZm{Og9D@-R#&SfHPdB@p^UE_|gb*x#X{?XChtG}OdkpzUI{DDf$`qHh zN3Ebd{eAOw%2O7}*#TdL5hGkA1*$-Q8(Dgut~*KQ^ACJ&uPRt6(TzUv=hJ1^qRCj_ zx?H^)KC~&zs$LIE*VQzBi=7hmd18`}@mDl(smXY!qrLWLDvW{;-I$IW-nlr%-BTWU z`_Hcp8+e`yH1Uoq0u07tfKf*AZC4RwzX>G-{9%}}M7w_J>M3=x>Fd)iAjFzFzqRDb zgd~}NwWmf4T~StcOHu1$15?G&bj9ys_)AI=pHoe$exs)+q7XADyCZdOk-DcU#Lw;6 z(Pjmr$XuP-aKwsO6p)`LW(YW{zewWrhn=CVq_%o;D7HR|tW-cbR<5W;vU1XWvpoKQ z(dGwL>UVip4b$$l{Z9fX>(afolHTj1EG-tP7M#1AbokZi$JoN1tl=apqF2?<_Bb4}?tUJbT{ ze7B52RU&6Qj~6ce2c8T5QpoFHDmd$K z0u+Pd?4DK-$^n%7SDLR0>etkq90QX%E5q+EzWn2>vy?dD)YRjj`9nbQ!ef^o=&@ib z849)dG#kuhS89GZc>nv$QBqo3zNmeJvU6Xq=pFHXcmFQm^cf;WdaLbqmtE}S9#1zH zj#aRI(GG-3^x3^G*!?HfZ~9~1Iy#e7Ud~v+P_S+ZwyA%Z<)$^F{Iu(G`Ij;({k&Wi zZ+@SJlo6Ioe6G*Z?V90bJ6*#aSj*`rQU@!N-}&+JTkE9h!V-~o&_ACZ<|AK=99dNt zxc2Wew+)D9no4V-YkwTQ=b=K3zySjBw+|xNhO%i(lo+b5x5(`O_&I<7Il+w3x`p^@ zZx5_gx>%fR4lBt+Qi}mI9G|tL#6G6OLvf&*wSM`dNKu00ME2G(QheT40dA*n*%!lS z;tko8CW5+tjk*wF{FdN)A__7Xd$vm-dv3Nd4FxdUL#S^a<87CdxG8sxC(y=5Movyx zc6N5uGS3&PbRNen1bcz9%~ikom8bKARfc-&kP5la!~dyyU*pbXt&zP^`R}Tr-l>d~ZC1F?JoDpK5~p!bK%=-eDG&=$zF{Tn{%`*yAC z<&f7dKYMd@AB9cyv6?tW5|Bu;`n=!!=E`S&H33x18r^*s5;vSP%3*AdBfO2ucMYWU z#?Go7$=yz#Tb*x?h>E8I14%aVm2E*S9pn})Os6w(X3G3UdEmHY>`PJn5DA2nDylPV znS(z#>joF=2i62TBIRMA-)dO+`XLXFw!E%WL3JO4(XnC9O-MQD+AP>9dBWJkv`98Y znFieVlY3wO`T8VLydQxW4QaxaP5hyq@Z{R{2esu2r#HJ1DRw)a&niS0BnvN}JO=<_ zE3MbtG@8s_}wF9j;bcEBXsL%1Xk{w74Ij>twf{`K%phjPovm5 z5VIJ|VMcr~V4h@c%o%xDiue5`;Gilf3JZsVI4bh09EL4og1N3lM%|m%*g>D#B`6g~ zic$(Ep+N6f_}9oLOH)v5zfyZo{*Xj=7RRqMfeGKo>Cay87E);nRMvB4u|JFX{$Xb8 zR%pt8tBv*ArSW>Z&MlosnR;$$Xy|kBTJIR-`P#2Ca2L1-~>ng!X223r(^ zQG0#q{<25tat#wf4lVS7&E3(X=+hdT&NUXmFyCX^tMs`-gNsUwWRm-yi3`-ISJpB`$);^yD$)y^`$noUx4sz&iN!b2^^@Z=M{w z6~)oq@>PHYI+GVC9J*S^|} zn5vbU_$hoXOhqs?FcDbb3%Zcz{(9?q6}H@398oa^ZsHhj|UdI;! zUmP%gT;I$dA7ckl>nSA_)LBslNL9G&M7k*f+y~Ny3B;$rVydk;p@rOEK=0?6@5$MS zE6&@Wocnkk37`|Cr5h8dtoEFO#vKO64m+;k4Vu{Elot!)=Gj8mc}5203AVt({n)%Q z=~+1_n?>SHQl=`mO7E%DpXT@PyOsvk40YaJb|4WmF6cA?SGC7iOr{t`f9c*rEZI`I#JF zLda_FAK8R_Q|Nz@QAIZk*JD8NUb%pwe3G9eX}mbhCsZWsZz809(o+%D!^?^MPHqNh zvAoJnx4iuNe+y{rsB}Hx|2aa#QES^I(B=ciMrA)3bqX7%SRHYfqpI=7S%7RLIE3l* zMh!?SeN-q3kVAN5%JRCtSmqXbeYtWeUS3|#BS;dpkq0t=Ru3tQ0HadPF3HA&B=-lE zFYIPo>f`I#%@$lZ5t?29?G=aJA?!|zNpg>WtN`>Y3*=yo$8xPSN8-j!$DRqtI2Ho(&UyT!)}<~KWA+rJ!K!kZFSm;7#?8(e5Nl2?NW?c8j~+9{?)15Y z+IZYjec4S#1bVjOl-+)C@D=PxcJVY?0%rfO1)vt@&|;I~%{Pk{5yy5QMVuNc5IL+L zW!?GjEOYg}cO{_ZZNGQoHD*hbhJ%Tp{qMF4m>=Q0c6WDwYaTdV&Es_`F?h)_I%rAO zWEx4=V&C{#+=F{veXeLdF`LsTxawQ|%j*2c7t*9u#nF$@WT-xhW%PFlNwLXF`QYI3;pc&dwwQ}| zFNnrV?>&a2DS}rKJ1w-{62Xlo{8g{DRdP&X5JSYp`t13Apmlu0f1=YGuRUfbG$}?% z8#$+nB-|z-OT{*LJ<@oL&b0gZ$#zA0kTN*nzTbZH1*J?hNQ4t2?G&hx(N`5Tj7z@i z5ODtTz?idqjY0Mme_xuIghTM-SMp;5*m5VE2C8$s%c(r zFhveGtDYp$2--HlqFD%H=|64Wn6MDMCIX}fzmz3y%;tE}et8PgFG$(0>_-~B6fCv5 z)(8P^RN%xed=8R>)04%ipdy54>)p_U%H|q~yMMl^DqgS@E|O`$*m&OK`$nGo^1kYM zZP_;R^!9$s?+KdCPRPtm?+e1}#lkYf!WOshF~)}X#b>N&QEyVy(Ysq@!#}mw(|i5% zr>S$H`ftbUg0;@6D^Fe(Yy^z)Z6p?qku(gP^w7|_+u-NZE%%%aipllo6DOxctb+Y@ zQ{TjmeNbzz$?pD3fM_EmJ*D7{uOEP3s8X7xIg6#{;Ky7pKwq3qMKz z9D*bU>Fzdnq~@2-5H_-c+I6b8NteAa)1}%p?yT1ZTb&NAiVllO7j;kxsQXYfeWc4H z$HE3S8sT{m9h1K`nnLh`RLFA)ChU%EZ3V097o0MjAkqga3Da{TQdG(TxwBkLNm!Y7 z{mHJpn$Fy>?T7OJ%b|F@`dpu)Z-S;W^271fbSbKGEXQ@7XZt^wBundAfAvz~^aH_E>kogTQkmKl$K2Woa z#^3^enOTAs9qcPBlOX*Pz75J0 z&HYYyr+}irL~+^K0nYIxCoD9}n>kiJ&K%rbf^%q((P5@{qWpWDR;+T!D@Dg;@;L|D zP2Gk&g;j3^FyfCy;Elp}U0etz{`x8MwS6vMEcETF5gOYeX%HTgOW*Nw{yqZyB1PDU z6o~Hxx!K_jV7JWQzM#!DN}n2VB@gxPq@BZEF*FXI{&m-jm-6{=Ghe3BKr&hP&q*ko zj|I*9@kDN&gKOp^vw;K+C*l9qbe2(3ysn_mKLBUuoG13P_r0&Xm_;<^JIPiIUMgswfT3MQy;nlB zWmPM8aFnV->-$q~UXE`Qax_F_D{c?(BWAb22I;FlW+t#=TBG91T%Qu3{^>NCz}=aX zDAvrGV_I;))_Yu8)O%lN_b|uCZ$Bkii6Q&6@euI%d5@{-00KlFCwq*u)T>4XacZxZ zDjA$j9-W-sgkd9(C{4OdRte^sCc*EF;uet--oPD`{YX-`-=7(DU-SC$&-(94H#8bo zsrzIa{su-S=aQbYkZY6YC$TVNoDP^NzDmaCNPIE2G;b>daa$r7xw{nKCygKxuuujk#6(0Hdoc-I>ZR4pVKhYx~vvBnzoNl_CMh5X6PWNRLAPex2H zzxOkCA}xKVT1UM+oV(qe4cjtXNtKU_3H9ER!-ADwXdF*u+S5rhRj};SffKu8q}C8qBRtKc1kjl@s{bRW{XMaq!@R$ZjK`t&{MAI^ zlpT?PwoNn4C%}VXX>-C0(rqC66H;P^ClkUG#tN>8`h)>2J8C`>Tk)8;7(nlF8@2siWIV1)~au9&tRFgI7E<1Z0b%sFVM`1U(HT+}*utBgL|dT1HC! zrs)(8c99zPa>0gd(Zqpmg)*X>uqx9rIq2|AK=?U27CEb-G3h@wcZla3u2W><&<2`e zx$>ao$l^Cril{QGsGWl?sb&~JdSQxk=M$h>ms@yxNDDueOUO8i(+uW)*|a%1za)rs%LWq0!S zmw4|Hb;yvE`iT^yynsGOsk7pKN*G?4iNgN*_sZ(c*28ME@oWLIU~3r1@hCRIaSoBy zAIcN&NcaW}cuM1{OFr?#v=4P8((Xos@o2F}u6JoDaVI(ckcMbG=&^2CsYk@kH_vE( ziJjCPA-iDx4|QkjJF1>s3F|(Ky*s_}u%=+-9X4aZHNn_HYm^KAa(y1tL6cE4bpU4p`* zKHX5PcX=Vd&5wqW7j9`*U%s)4CZ3Ml?GicI&Y=)Z8pCK@Ikr~{T5I?5zwM>odF|xg zn=`x6tjBSGf8V;MA3Vgvj@=tKe`|Q+yI|#cyzKGN^|aFU!);gX;7TO0qQ_ovu#qG| z18`p7`Wn{#UK%}mw|Vgri9+~R%+Kies6LluMq?%MMk{B^*26cS8O}tE${H1PjW8a; z-5R+Cmh`d@T)%QLKcKCSBi`MO@tZ_{|?N_RW`ogb_cfCk&m| zS&8WP2m<0q`NQPUH~25lS1&tf}sx&?~ZR;E}%T8^p|BAc|6xA-{P?H{|-%?OK_BjCO(}%r1X0J6LCcm41 zc~{C`W855a2EMAs@u(%&rKH+kScjo4@gcr+6sn2-?tY#os?wE6DD0Gw(HNvfDz5Uf zL&3>QH!}H+^IqkT?^Mr3?bxP&y6SW^0(ev&tuF2FIvpOq$n>`b-41ZbG^r_`B3qB5 zt2rgRTG$U6o6}N5%e3j+!EYZ+5!^M|^cZ!}@R8y?%3BxeujhKN{}AI!cBYI^{@Z=HIWC)Sdb9VF3Nzzufb{rlJS=AHUp7R9ojGjiQ%(l3 zLjx(aL0I$J@|+ld%Ipmv)yPHhBb#;=9?;Ue}UJ3NmfvZpgN`JJe;Ct-hP}daH(bSIunB z*cZZU_Hl2_h`xZ!W)ET~GP8#hOuyd(Q3m-VX%t)d3JdFQ4s+1?-{dphNxocBL}q_g zmT)8CEHpSQU(5XZ?j3X*(T!v*?@Gr>WH*U;PJGe~=n!o`i+373pn+*uvU$we3nqLc z)CYqUE*4YXj(Zrc-A#C5PF{=wq7TJ4Cw*oxiRq+^a-;z3Ru~LbY)^C4=8fNcSSu zaYtuRhq|ZW3z-E3nN^)rD&C~bPej|fqvv^VMLNBjz`uFRqc%5ZAMi}ZDdNWQgq-}1 zY=hxHCa5#*u>|2N>_?BvexQhMxm1Z%hV!6BQe^!74h}ZAgrJO>E7GLP{^4=?-!z*! z{Wz#lqPY0wn4wCQo!Da^PUlreS^$;f_@_NM6=4S#;@|9slI(7`EM|6yNQZC>lX3N=Yf zmd42`@FJ(buP^K_6i5nk^YY423|?Me6*gKvU~wT#NphdEG0=)W`@1^oEq(H6az}X2 zq!iHuX=t#G0G8FTZw)#+ywFk(S29i09_{6Xyx7~>|a zucLKeF_+GMyFou%ikTTp)v3R{YiBk}xz8jx#^JjLJx(~Wip^(%RejhEPN_x8(H-|K;_1OLCNIS=8vp&AS)XneIn5uZ>K-%2sC(-{CE6dY(Pgfs zV|fqzGxT7%@!QR0_&rxOPP8888TTJBeV(rGtvqt;XN# zZP(IB-(uBb%8iWsZ)1jFQa}3@$%)vU=F`%e=g&>;+!GVXO%F;#tQ`Sv*8Q~7W=Q3^ zmv1psa&DV7TE)}(9+0T0sV6VRzj)@*pm&o}ER^cOcqIgTdcv_<0Cx%RUD5Td(&{2+ z5tddOt`}Zzz6DBEG^~qb`#VqxVt!Cy&fR6X zbAMYX6Nkei(nD$?u1m{)Jfa+j^m*dh%;&>qSSz6blr9@Xu0m$I^@`=7W?iW7CzMoNp1!=doA=s<#_M z&~cSUZuGsw69pEzVxw{`&aH<);D*C_bWq) zR%UXnZ5uP?#iN9^99`U8^Xc#F4uim9+Z`Md%Q zuAV=ejWtrt;nv4YnAzxmHtwk~742vAAQC5;u0czFGA3$zYBM6zl=BEHA+PeH@o+g% zw)5|-y@IX0R8PC_cYmIgzxDomCXzC4J|m}fT1nJE$iMPhhKNo)nogNAl1Wjv>_S`* zh19%Gev8WZpCmF{w38fK#~ zG&Ex@$-sTOvVTzGng{uG^&~KZ8$FZH3pm)B$(Ngfd25WtKSUD{Fc_d9jb@OpIC3E3 zpt6{1jVvEB_k6?1Px!!Aj4UULy(my*<3PT3M`;$ffUKRT@u$5$LfFg*m#8ajet`Hq zoF?~b_JASk>#DU`Htp3gaW>P$3R^~rwUm5YGyJ{}1#~wdPs-0TfH4iqiq%}h za4mRp9lvOg!%~K1d04mP4_1DDvVGpbeGb;?JWtDdo8gsdg%v!;il><6XSgtq>UQqA zomNBA+uOS{%v4~$G7r1$l%GC#x~ZLP@8SN+`whkbaC1OLG;EcxM63ToD=u zcTT2)rs?c|-~gOgs)D(9=e9_HrFint@T0AsGfr{XM=F)dl!C11yh5U! ze+ND;%Y;cLOh*ht#Z^83;ojCy`lpqBkw=Fu&aAP~51irm4BJxL%=Z2X=KctYuL{f* z5oLMESm2XCO-Wj+Ymy8^}@hQ@@;1y8*(b0^XT4&hpGWpPj7D zW2c}tz^4S^t)P7^N&fuh^|dBv2F4efHd-~$t^l2yw*Bkfa@`w|0wISp{)*>d8H~I{ z%;g--EZ(&2*y!bk-e6VzKO2jJ`718Lv0MiIOKiJ!_Qv?U`7}_|p4#|m2el?G&$9r@ ztT=&aqjp9dvj($b>GhkV?}-WA1UANT6MNmT^5h$uaG31k$9ohF;bvpC`b<(<+#BOI z=oyz(vwtgd7~Ny;ijpj&U|Jor*XD<`Q{`xz8jTduuSJKx(@Q5q7f~MJoh?JMQMt3G z>?~H~`{>vYHyw})t)k@*#d>TShZRMp@$*x*Xx8OnItS9eZdp+Qp2t)cy*ng6dp`^T z4=3g=OeDiH2l^01IbTD1Un!sGCYxWz_sl+JU}_dDr)*Po8HWCO3OSCon2aE?92_@L7AV z=sOSpcysD0eqm=X9|18*K}ipP!YuQ?`BC;lpUgq zyNuQ9Gz7y>d8ugorB6>8QyrdF|GpPT#q8Ovt<&bK6v_XwRHZ)2V z$CTtv&}v3N6z_Mq%7{dcsBO+4uaN=uh8k7i(W`uKa&n$jKMK$>K1(FT=CDH46Z9D~ zbgJI(*oD$1vsQ}=Ow4I8lrQdw@Ttv{qwB`6YY>1!xbJj#cQ-9*2}^QFqZ}D;u0M{i zXP)@)idN}2bLzX#Ox3SCZuyq#`ft)hoAwDf2<7{jvmpJ9Rh?y}_)z7gtJ5&Vx$bYI zh23bJ;-Bkm_bKM{-2g!ahvm1LFf9+glm`s*;#9HdlP@P}XYB;!Xhc{&!t(tQb%()_ zx*OeCSI0VGlYF8@7PFNZcISpP`S?d9uo?>ZZ>ls{Q-ha%#YrMBU1B{NOpi{j{9Cc7 znV2q4kz9h%ZTE^#m)fdILXniMM5j>mxS!+Z>u-tcggdb=x3H_Xg7wcob{Fej3w!Gt{I8LmON z8p_j{0vyPl3!z&f=?*XC+)nM!GmoI8}~$3G0_OOv6H;+Kjjk20sWXC>3=HM0~0w`2E5NJ zOmN~EKw7~cl2esB`1NTGvjsHi>b_@nqw^GFZ4HV&Vi-eM&ctw8ECiGCk@|o-_b8g= ztu)Y0K7cI+9hA;`y#sIE-)Hf1vVlbxp%1!{l9S)h0(k%&3gPa(J?nWY`?w!>4@>0H zG9Zyou8||XYte%uIY{#dI|o?v^N*Fsi#u8pIszYkvOjnr4M<^CcPe*qC_Yt4a;k5{ zw{iU#eZ%e$#o>r@&x=rM$&uz0pWL>8OQU>T|7F?hn_k;G#Vf%I7KIz$awIzL{)FV= z#ggYB35X~rjIUYuC4rEW>`_ZrC-`M{#&ZV!)*p-lADV+6re9$Zvm*lHq}sJMzk}P8 zasv@%yVX*C>{^Ev!HdS4fOvTA7U&meXj=-;9cP-6-V2k`==1c|3DceaNEfw&S(2c$ z|I35J&6-pJFY+r97V0j(AfvS)qf2tFyNhIQi+?bKEYaF!L@e1J5BBxD)DHAw#^_>^ zFL<9Ze=o|CW~i;JuWiktvxt(Pkcs~s3F*f0w8|UUXXiixW%=#57k)5aFg;l{J6eBXO``d4f(|Y;snAIZnlNB`N8rWAxgZ zky09_2?d{q6J8@ZWF76O+g|Wfr9cm9D&l^s<*TI4Bp(UCX)Ao^I>ExzUgD^r;7)^|HTdF~V(r_<65@qwWG;*G^C`=EVq}s4&JEO{E zj%`Q7^I%x~Lg)Xr0DI2ZI$@~+Utzox^jXPdOf$V?+eqg6U2b!@{<&NJS++lYIFQh>6ke?usW*XFc97 z-Ks!D>uf4*op9yv`jqenc}ytWp`{J8%QN`sCRYsMikcQm#qmucQ9^CfD8*4l=qwCC zK!rnu`74=0`BRH417I4{EIcESoy<*4!#ipZl%&*y?q}h}a1fxfxV)MiR!E+e zGkJ3+#zp6!oAi~X#%i z?YVeJe5Nq}^zZozaDJRbo z5nUZtBw8F@l2D4K$?||A9enaYYG%z({X*zPsuD+_K-V^Kf=BwnF#c zS7+w7SD48d;DbD(-pDHUv>ScupqMc1h$FJXcK(BENN9Lh)s!niB@G<)njp91(g9Lb0@b{G z^As9%ykUfjlLz5^_4N(B5Etu6oCgKj{B@p@h;dPG`&q%JW1DHHNju`3*YEWEd^2v0B(kEytxCgn%``qz%COS_Ft8Z5uyz`oDuW z1hm}kxKDRs_H_Bxg_iHO1V z@<;6Pvrl!-iEiinG%v^hqi9{|Hm{u+dWB(i)beHmn>M&-hT=;Y)N# z)5{;0Jy8uL5-)~3C(iVvE0PW{zaBs@In?0HsL-+^y+(xZBB?b zOuJ&?uulVAVPAaMP8HQnJXOqWI-Jbl5ATf!ko$cs3q3#qN8`xprK?K_UZ%i(e%wX4 zyt>iPe>ro}8{dhuM4n$VKuyFZQ5p?TLWmw?XuRZSiO`zYVoE~Ch;pAX2IJ4TRs7`a zM8J>elSUY6vbpx=4x-9!smhpRBdImrH%Om2F?kMFb|U*SfDXlgU5E2{>aCtR8&VIt zB#Yhu!8%iJoFxOJ@B{>KDn$Yt#yn~%!w3Y0N=dk3nYPpwH%*UvTZ!ujah&@6yV@5# zG)BT3m|sZVgTB~Hk5SV}6NTLmgqowxG`~!Wf?9-4AK{)Kuw~2=rEHJf7FM z(R%sf<62*F{m}LDP*hVh83%=)kIky{@kprQq5Q0lbS+Cx>{=w1m(zkwz8d;V zF$_dNww60qp_1w~TaZ^5i)l(eo>-Qc`otSp@db*_ibEQ&r-BU>S`-B(B!|gjzgK+{ z$w*U1%amN$`nU@#IkHiL%I^h#`&hneOQ5P^s-^NdXtE*JqKw3iTvV8=KRX^Tw8uK6 z2VfwRl34f?N?c@A)Bcz2yHb16&nSA0eKA(Q0>lb#N58GS9fedPrfjW>V$c^9qIvZ& zPDg~RL)qvVD;h~l&q~aq->V8)>E^ewTW~4Q7V{Pw?C5Z2-3Mer#4oG0Pj2{g9C&= z{`WRBFO_rQbX4HfmRTumfR5L~6NlP#9TH38No~FYC0Xj+Mew_BBqa-vW{kq@8&K_= zq=-A!AlIS@fwEl9A%qI@h{R}U*tZ=R2yMlgl1qQDDwK6!x4R}El^fzSz@=9^@Ex~I zu`HHu)Rwi&+Yd4DKeM~N9h95^f|<46ODVO|f0amJC?e=O%ns1lb6!loJWj$XgVv>% zAym;vpgq11-Mwn5Oa>6fS1IP`-1|c_f7{xIj50h`N>^EohS6xz-BrGsa%)$+8?7TS z#@V0(97MKq+HYqBj=itkjQf)b*obj!O*N=Ti6{TW^@om8pBA>@COGTi;mc6eGkW;W z=A(=04!9_9q(`}A+1ubi(T?6?k=c=TK7_vPOqH14JQJf0u;)~}cDoo-EGYPLYJ7_V zSx}`1n=z1A(dA*r|FsD(TJonVGAF8o7MW%T+tL4kgu1X!|sGLxl_b_dM z?X-02YJ~eY==rX|1vq%eUWy6ir~+GzG0UoYhV|cuS4qAdYOwP1!UfSeH5o&a5&55h?2js)6au0megbR6ZG<#c46K2f{bZB|SECpz;S#|x$>eDuM? zzyH=7I5pkcT)g|0Q&DVc^ z)OKV;Z^&a7f;c~cUCE;KuiX@F^aI2vF+FS?N_{<4%22i-27`m>Au+GPJe_o{MHufK zv}UFYr$Ljv>;$mOEG&=--g_l?@tJ4i#s+@%_3GPJn3IP`dTv0FCn zMjBDCgj<4;^d=fyR*_-<`{%U(4qw3^$>%M}I@%&2+0v0H%m|d<-N#*?QgG;JeHLd+ z%W(WG7{wUc4p?Swp0;ZeA5V@O?8~se4n2vdh!ww~c`sZ>_upUgZ^GO`c-pW%tMTtT z&hsM{?7G5{EgcNs^G!CVxGk8<=*=_}Gj;Dt4=iYiBe;~pWZ`%G9e-ZhOL~YKlSKP&Az5b#o1%cftziIHN zkjp)AZVAWl)j=t$t!v3#x*wvH9!G*v`yaF!)l-7%W#x(xcbpXDP|YKe*$oUhCuQPpj)oQGGXUGi;qF`p18@-y2AC z-Sp5g;(#dZ<4bB#-Fz8BpDcE+yf0Hv2?L-cmf+P}C%lc#a}{hl#aEN+gE7~?CcS?v12 z*A$0)<_97aDj5;dL9_*hDBb~{%^=d^L-Uw3s#h^tczSw& zeq83^*GGJFMf~O}G1^zEgXj%7xj^C+Jq4CIJxz=@Xeux7@RoD&QY*3KTgjGr%G^Mv zIY@ld-Cjt%TG+_F;HE+i-0B2GGjLR+|DG(h>2#4CQtKi0t0*Ae`zvK&_q_f2x&QI% z^NRpLrl3Fw4Gl$zOGu#0>zNfz(#mzWjixCY*uxvNM#1MCk!MYs6K83ew{s_8T6gJo z+gMohMV+fFYt}2Q>5A;kCl_zzO-l~l#k}`pgWzw8AgvSqtnPFB0E|;-dZDj-5@SA4Lr%=rZ=6Mts6+-=~sK&qj z0g>o3{ocjndyDjRTW{jx)wq|?F_0D|BVJ{Zejx>=0eHuaz5Oc<`DNOkIEewI+U>p= zXM!dpn1CM8iY@skP}xEkOO!XNgr8f_?hDNjLf?fLoRIF=aitAh^Hs=|Ml~NQw4h65 zpMr;MOcf5c)n>`=FV>DN`amjlYyJK`v9cGw@KP&x(~C4)g}5gcd(A;=9C zb!y;i8c3-uy;xYDEqo?>cv#WYtT>kYizkYSIYu(w>y+1(=L=98^kcVuA%WmsPjmZl zcW&N_di1wT{N%5zu)pS5N0PoD`Hn(B%JA#9UNoy^bqf6NA zzOPBlq1OkWvCcq>Eh@hxmXASSCE;pc#?F=9O?{WEAm)Rr5Rdp(i%{oTyo{0!{KtVd zkx`&&HMVj$3^-5Pm`-JXs-)-2qX}`gr{C~xB88!dKw*g*F~m?=k2U`XiBb(#)KU!* z`M2S`*)$G9+Fx^4jp>4|uK5Xsb69!p7WST(B{u2VqxkoR=0WH7h(2q}{M+W`&!UqU zXus=Xchj6ZQm^}qd9)Sw)YOdnZ89=A1~ORF=!2N>L8>jo*z95k6uH$HL8V#)n|`g> zZ5{SPjEIOU6ZQ;_fVJMJ=-L^M5dctf1E8xEWyr}?cBNW~AUS#&9lg!ci1I7nJjs^} zNuih9gck_jKtIu?E0-9*2I+?IMk@|<7Zlcz-=(IhGc!O0Xf*_x9cBffTU)ou&aS*y zsCfBSyCQLORonv`Osk4ZeSx0SOjs|e(YF;)+2#0*lcNJ+(rifh(sR`}PJ2V3KmqA* z%B>L?p??(sd&BT2%q#-zCZ<^WXVEt{X@Ed$nF}ymomFhZ2$}lAto03CC$)3_AQMH# zVZog;qswy3saqH3)p2O}JMiHckPv*Luz_V(Q~pFq>Vewar4P$S;yi6*akV=?)O-#? z1`-tw*{WbylTs>Gn09?iwMkTBvTb9`VJnKXF$tQPC(vHf>lI_1QF!(!Milj&R0A_F3Hvn^zF zZJnWcvcsyKIgg*mpY@7NbqRN%=G(6C?1JRcN49wfNPD>ZtW}+y;)nb2eE<;12)qWm zcHPt*%`d_NYRSl)en%uQAEc44?oqmYgfM4&wWe92rQ30zR>PI1bOboyYS%~eMA*V2 z@V>|wn}mNcQ1+vWpgq>c0yx6~0b@BrPV$FokAUPZ>sswQDXLB6BLNk6lFDB%_Z2q* zT)ISS1Bdbwi|h6yNO|mE@#qndjJr60y6*fzys~IZpqPG~Dh~z$!Kh;}{fp0=K!ib3 z^MBHUt3cjc@h=n#fhLIK4D%>H*T3Xc0F+zRH;N+FIYhnjJl^@G{Wa=pwZI$-+!6{5 zz3F;+f@jq5Sez-;Jpr?v7|36S5C~}m83(wD+IurPeh0|U7W@QQ?Mp3gz_7E2(wRM> zh(3`st@46~OY{Hr8iRH%tf;&*nmNk6H&>}z_*YLR6_DlK_l5;lYxW(;}z;!pb zO%>fbyOzl<%%!2YuGvvN#vTSD1&S1Ja9eHkRTgg8?OWYH2Jb#-RelV^Q&Cg1tmx8g z8LQ(OCmft*MEv@mQ|ca@}YjNVUlrC4-{a;?@e{!FZ~LybgFY7`n*3Hf%B z_s02eJcQp6C$wFQo*fN@@zY(oSC6)~8hzmJ>YFlj&;9BJvR_B@OfN*AC6w1k@@e_UKA4q@`qHbptTS`6hi!z!>V6(TG;rfc({iAL$SdH=<=lc^ee*8%4WKyV|+ zmLX{5cD)2Nku@3w-fg!(7@i!7_`$SCXQop}<#sqzy)7Riz4*UU5ob<1CR)6dqqImPgX<*s5JPi0mbUKJ)>AW0OyD%V z!``BVSw;Af;xl4mNyWE@wq8_%&CLA0Yk1;L^2Mj~G@OfDP$VXYaHp7A23>=2UN!J> zlHLKv_@FzBe^T2@4Ps$tx~G(Oc+<$mQd6rP&zT5Lj{O%K#0zc2|;5$}_sskvw zh>VKQ6ZYzpWeVEsq*yHx{D}P-hRF(TkQ6gLPdZI$EnUdaxla2Rudatx{|#hn=>koAc^ddHQ->6&c?b>z z3&nZ@UBZODi4{PDd+a$%Tgfo(CYL zK5Al)@dhXvV*r|^7ryNRUJI$Oxmv4ZcYU%fJ=#`*vsm@p&HvDndekQ8b{7#ck>s;6 zhWLmhkApiqC0Nri-@JL#pvM9Hhs4kwpTxi!k@{hAQ21huPYx5p!p28m8QUzRUJRj6N$0Q};%PT0<2LM91Vu<3$ zIZQm3BX^V}ei3!1$*ZGQ~A&M)W~F=l32-o zIi+8;GrAx@%U)&FoNrJNuTmSyMn64HeD2B@>be{M?LMnoKnCcp!L2n$HE#ybMnXbD z9PUCsGuzU>ipn)L(mpT=HyMIIiNO2W0)VLd7HlddrIpyGN;flo zWM$hAKGtl)d&xq(o)7^kCC53X4q(`KKdM=A8Lb7eZH2O%VFT1GJ}eSW_S-s4ymyW8 z!USBTx^wvXMFgNVmmAfP&}c5&V1YCU|Fm)rkZuZFT3bgo1Izm3zmsRqjE?I%PPqiS z#*>}AMt)Y7m?PkWCJW{n4J$~TdxqB|<{JIiTDkZ2sEJ_8; zItw>{(s;8Um1L*#rsQ6U;R2*+Js|(h-s?C#&pw0X8>l@3=zHo)%9{Z&WE&K|Ap+hL z0x~r3_5O@}`QCw$H2eG99O{Fo7y|b`ZgyI%4T0;);PC6C)i#n~z?ko%uh1b#Mb5K( zC#G_awN#Vk&2N^f+7y%gU3@uw6Fm1&Wh4UWslF>QUteEmz~;IQ5TgxMZ+AWi{x4*2 z-Dh089T2KBA10ucV~SyR)%f4(47(%wKlpIGfGe+nUhNFP_{a*@)e(TagyKXosQX~b zSg03v9G(ZB)w4>H7YWFh2b99a?qG^R6ltkcoW=A}Y#f}K_4Ua}$ww3To#ykK1>0Ek zj)|dL8-9U^AmBFX&HI;1WowDJ61QLBW9b$!_M8Mf*c6wjl(u;RHN)fudM}{Njt1p@ zT#Q3VaxX)+UzK4=!)WF(YK@wno{sz8p~ZP|zwkd_zH}gvOB6D?8mN9ttNr66qk9L4 zfJLf=Te!(6`mi+;Q3(&_x7(z+C4e~bzhire3`N7`eK$?k`u*y1<3VB|b5<{~xi$;m zW>>mbaYs<|y-lP2)=-aJ?5BFm*MR>t3tTl1aNa$1mTmn_{Y!Z)x20aXJC-^K6mA`- ztAQ-NjpN`9+wgkahhOwivws~YffuK}xECEK0SQ;QlDWsqhaeU-9h2}p6($ysh?z|v zRt+}8UjUJL3_g9~TK#uc1+y?5Gk2>_Gfd+!4ahLtr8hA39qWn@(*8=*L$`WSOR@3f zVgOK3_wS&WC-^WBd%B#(#>Fj8W1Z0r&$~QqGvM43#(`vbh1k zb_{IAMdkCeS8LNhrg1NCZeC9O!9@)tdOnoV}(B69q@ z!%RY1aH12SpIA4!C{qRAnx`w>F^v?XoJZWRi>El6GY2QXx60}4zKX)e+`9anu2UMp z5JXV;6A}k>s|w3|vN;$;OQHXy194P$;L#ng)yj8uU6ju@1G8R2BNhpRO$`fS~$9EL9V*$6Y@5 z+`$8eW&%LeXoTBsv~N+K-~lc};jYHOXBbBrT~IogyXVFRu#N@$CnqG5FL#sUz{%`& zAW&i978Cp3C^c3fSpc+~-rjnr`>EZO^8dD3__U^JD(Zmw`BV!vi8-c~0-F}agwzr< zcr=5ne94|yLSpS>kegwKWe8DcIY0|Rd0DG7d%{%if+0q80b zfJa=w6EFh?p4i>r6hm-=O#`slXb@WXGP>=I4HqT5UxV#bNh5%=4$G8pPP4ovc@Qlf#QfbfB6rNQea_b96bp~Vo>7-HLbngW{pkUG1OQ0*Bp;S0Z`W=*Gvt_TFpE|l zNoZVSLLqo42HtD%7*R3IRrY%7ALwcu|% zZ}a+gDe-=_k_AmU_nirct>t2K0VBRSL4P?M+%rcub43XDe|U)}xVGd{?#8i5 zlYXJ0QL~01z=z-6Zoy;>5gVN6(Fv47*FV6tarJ>O2~XknKvw`yGC+Q6x!xH7oJCG0 z9bf1M1_3(l20}bI{Kx!kZ+ACvTulSU1vW~4ZH;jK8WF~ZSlqKWI@i$16LYN12BeTir+7e z);*>br<$xZIamU@Uifqo_q#qVrhbY7l2t&JyKWDpY6pn3ez&;QU;p98hG80!dK$5T z7alab6-k;tJS~qCBBs2{}v zr&?pgnvTm&o0WT@%TF5baeHH9gQ<1G3%UTS?STiBB$%MtrJZs09N<&b+RQTM`=2W| z*)R1}8@7>>krl4msy^h~!sJ^FCjM$(aP-^gF?Bv7+mnj0}#VUiAWS~2>-gSFqy0GvU`*J1@W~!z_E*~rKF5okoQ&jux z(z`mBJ8tQRS>#fy2OD6yyu0x$^fwU4l6mP=&W+3%xKL1QC#uJu?e8kt(U;dzDi-Hb zgh~YkNdg@?mi;kA@Wn&GZr*t(%ZituzpqFx7OXy*v|=NNLs7&$l8FIDwFQHI4(^MJoZsycOK zF$aqcJ|hC(?Wcd9IdN!~1^mg!0OE8IkC@mP;PGz%EAYngK#?SKOBk%^u%Xqc%-IqK zRFvv{uWTnIU;Kfx$f&MW9)th7_`mhiRE~k&Uq-vjA?07>vPE*$idz2n3hlLlgn;4q z1Q&{n%~-B%z%Qo`0Gj}o@soh18dv8n2nf{SbJ4KjI!$T2He2c0S8^I+X)D69Zh|@m zX`MU|;@VDhrGO9Nh=>TdEQ3v_+I)K?E!SgS7k&Z4r`k^~SpSyT_&}lc`T4ne z_u%S2CwqKH9Ht#B428#TyfNv(CJLOZuY6aP8s+hE#ZJ310-$SaYuFS(Qmauf9>}Df zJV01l_KISe)0BYtgAWK!fGQdpIl1XX?mI13B4YMW?-Aro>errw^!{OpWmKaFAprjr M<EX>4Tx04R}tkv&MmKpe$iQ>9WW9qb_LkfA!YAS&XhRVYG*P%E_RU~>J0CJjl7 zi=*ILaPVWX>fqw6tAnc`2!4RLxj8AiNQwVT3N2zhIPS;0dyl(!fY7Wm)$ADuRLwHd z$%L5At%`wH1Tl;-V(`n%)aN8A1<&zy4aWt=LlrLmm z&U4=4tXAu+eNXeSad^gZEa<4bO1wgWnpw> zWFU8GbZ8()Nlj2!fese{007rXL_t(Y$K91Z3IZ_@MjwI*HXcB>wz9C%%0mbqVr^~2 z3wQ$U?YxI4(8|VQ4`3mP7V2(nMi|84W>oz7U`PnbOC~d!z%R*(c~yADE*dgZySh6k zxE((M&9|JyqO;{ zaB^>EX>4U6ba`-PAZ2)IW&i+q+U=HYk|QS!hW~Sl905rPiQ~|GROJRaeqLzowWnq` zv)RAXR0AzQ5>6(bUfZq-8IFu>-%G#F?yE=Ii1K5 z30k>7JsQY2kKG8ehfSe9z#O6f!L3tdK3vC%jy2Uj^$k3 zUbk@8t?kok_ZwD~#5ijvOQ;h^vs}=3j>&LteK|TCm$go>ThGVu@R-W*iHDHHUHk2& zte2!NIcmlnY)TaUB#v6-KHnIC3@*U)a?WA@ds#*?yo$clatgGJ#c z3wm0GCYu!LfX~tpDgr6b8ICWs?Urq?k;8H)Ol5*HTJiH=C46PlugaV&mx#h6XX;`_ zywVVEEOM*HwDi0>R#MYTc@M|~R)A3VF*`O`<8`aJlzzmPY|x9YqP>%wtl#UGq6FIt zXGnk`W~35jipFe2I7kN|`0Ff*FAyMA?r@TmNCq1u0Za$1G1_xk`Ih6B1PPTa1~x@1 zV5OvpA4`rHsw$dPHLIy>(V8WvfDFso^15!Ti6v9ZX69C`x_EN+?B?#pYvCfejkO>h zidoR5X8VIG4 zhK7-c4IgFHiCCL5)6|)#O`m1fCp9{0`?356H9FLIlUnoaNexo7yA3;Dpky%vF-`>H zwg@1gc`=JlDe)q=n8m`#3S~H{i%lnlVCEDg4Pu@2WcP#IZ*dDb{gNAhm0Vcp{*c_} z7KXlX`-ECwKih2+yR&eeX%u81#)nt-x_(7#cy#`>{Z{m?=v&dZqHjh2PtnAkjX(0? zUm39<0fpAhbN~PWglR)VP)S2WAaHVTW@&6?004NLeUUv#!$2IxUsI)8Dh>t_amY}e zEQ*RaY88r5A=C=3I+%}sL6e3g#l=x@EjakGSaoo5*44pP5ClI!+}xZLU8KbSC509- z9vt`M-Mz=%JAkW~70v1x2Q=L_Q;E2c$*u~aSA@|I9%Ja16w8J%U`JjGoPf_T3Yl7=-mb`u3MVC2VCv|15buzO0E>7$>sCF`x$*x z7U;VL!fRe{&3&9c0BPzfc>^3A0wV>=UiW!-S9@>&o@w^?1A63gs#e@mkpKVy24YJ` zL;(K){{a7>y{D4^000SaNLh0L04^f{04^f|c%?sf00007bV*G`2jvPD6fhtB{s7qk z000?uMObu0Z*6U5Zgc=ca%Ew3Wn>_CX>@2HM@dakSAh-}0005DNkl+L_x&DMzOLHv{h_;1B(=S0^dLp!OGG`A=pbQwNWe;5jBW~s0iZS z+-y!HESs5_owKpX52r|A=bJtM%$Ye0!4wbja4f*HN#Fo@08R-}N#G1919@OBO!$$2 z%T*H?{p%pn2I1X4-p9j&`{_0;c){oQU67flJw9qhS|jZ=)AJVmU&D*dg6{*Ht_Pi$ z5^LIGCqS2L@EGuH0bc=quED*)wFUeLjJO6TfUE`l2~4{NM}SqJWB?a|C5=_PD1+Am zmw+{yq*Dz6PnL9N#TKV(1CA}=oGe7=KCfGRegnoed|r@CgK2@KG{6J0Urp)W(J0pm z;LrlT@VQhv(Xz$ocP*bMq)M55PHTYMr42HrI}@VkHC#i hAarm=!_5K*)(@|7Dy(_|6~O=i002ovPDHLkV1h?ZF(&{3 literal 0 HcmV?d00001 diff --git a/src/assets/zgo-prp.png b/src/assets/zgo-prp.png new file mode 100644 index 0000000000000000000000000000000000000000..75944c978bd898c6a5e919cccf1a65142688132b GIT binary patch literal 541936 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�V8Zd$tk;hkX; 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�)6m2C~}t%JYI~xOJtcVRhTrez#uw-oE?F_ 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

FnxojTNaz0E+0^P<>a7d∾bheoswL`nK9nEN_@$H)pT2Gs00FW(;cu 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 XcuBEa{>slAAdh&u`njxgN@xNArgKPn literal 0 HcmV?d00001 diff --git a/src/custom-theme.scss b/src/custom-theme.scss new file mode 100644 index 0000000..b7b94eb --- /dev/null +++ b/src/custom-theme.scss @@ -0,0 +1,11 @@ +@import "~@angular/material/_theming.scss"; + +@include mat-core(); + +$custom-theme-primary: mat-palette($mat-deep-orange); +$custom-theme-accent: mat-palette($mat-light-blue, A200, A100, A400); +$custom-theme-warn: mat-palette($mat-red); + +$custom-theme: mat-light-theme($custom-theme-primary, $custom-theme-accent, $custom-theme-warn); + +@include angular-material-theme($custom-theme); diff --git a/src/environments/environment.prod.ts b/src/environments/environment.prod.ts new file mode 100644 index 0000000..3612073 --- /dev/null +++ b/src/environments/environment.prod.ts @@ -0,0 +1,3 @@ +export const environment = { + production: true +}; diff --git a/src/environments/environment.ts b/src/environments/environment.ts new file mode 100644 index 0000000..f56ff47 --- /dev/null +++ b/src/environments/environment.ts @@ -0,0 +1,16 @@ +// This file can be replaced during build by using the `fileReplacements` array. +// `ng build` replaces `environment.ts` with `environment.prod.ts`. +// The list of file replacements can be found in `angular.json`. + +export const environment = { + production: false +}; + +/* + * For easier debugging in development mode, you can import the following file + * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`. + * + * This import should be commented out in production mode because it will have a negative impact + * on performance if an error is thrown. + */ +// import 'zone.js/plugins/zone-error'; // Included with Angular CLI. diff --git a/src/favicon.ico b/src/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..481a66ec3dba4bfa68d140a2c2f32960ab4b2175 GIT binary patch literal 1218 zcmZQzU<5(|K?WeHz_5mefkBLcfk6X^1%Oxyh(Y4GfKvGXn?U@ZOnjG2eJJ)#n*aa* z%1wmvs?GoZ`{!Z0b;;WQM1$jJG4(3~{r~12aYp?9{r`V#`9Bo*gTi3RI^y($RGqqj zsb4Yd|Npl{y5aBN|Nk@VG5s-TIq_~de+5%Nxp8^&+&`i%2DuU4p6IfF|3TqO3;@NG zJeKr&>VyEX`C25bs?r7 X(EUUt|1y#4Fv1L|? + + + + Z-Go! + + + + + + + + + + + + diff --git a/src/main.ts b/src/main.ts new file mode 100644 index 0000000..c7b673c --- /dev/null +++ b/src/main.ts @@ -0,0 +1,12 @@ +import { enableProdMode } from '@angular/core'; +import { platformBrowserDynamic } from '@angular/platform-browser-dynamic'; + +import { AppModule } from './app/app.module'; +import { environment } from './environments/environment'; + +if (environment.production) { + enableProdMode(); +} + +platformBrowserDynamic().bootstrapModule(AppModule) + .catch(err => console.error(err)); diff --git a/src/polyfills.ts b/src/polyfills.ts new file mode 100644 index 0000000..373f538 --- /dev/null +++ b/src/polyfills.ts @@ -0,0 +1,65 @@ +/** + * This file includes polyfills needed by Angular and is loaded before the app. + * You can add your own extra polyfills to this file. + * + * This file is divided into 2 sections: + * 1. Browser polyfills. These are applied before loading ZoneJS and are sorted by browsers. + * 2. Application imports. Files imported after ZoneJS that should be loaded before your main + * file. + * + * The current setup is for so-called "evergreen" browsers; the last versions of browsers that + * automatically update themselves. This includes Safari >= 10, Chrome >= 55 (including Opera), + * Edge >= 13 on the desktop, and iOS 10 and Chrome on mobile. + * + * Learn more in https://angular.io/guide/browser-support + */ + +/*************************************************************************************************** + * BROWSER POLYFILLS + */ + +/** + * IE11 requires the following for NgClass support on SVG elements + */ +// import 'classlist.js'; // Run `npm install --save classlist.js`. + +/** + * Web Animations `@angular/platform-browser/animations` + * Only required if AnimationBuilder is used within the application and using IE/Edge or Safari. + * Standard animation support in Angular DOES NOT require any polyfills (as of Angular 6.0). + */ +// import 'web-animations-js'; // Run `npm install --save web-animations-js`. + +/** + * By default, zone.js will patch all possible macroTask and DomEvents + * user can disable parts of macroTask/DomEvents patch by setting following flags + * because those flags need to be set before `zone.js` being loaded, and webpack + * will put import in the top of bundle, so user need to create a separate file + * in this directory (for example: zone-flags.ts), and put the following flags + * into that file, and then add the following code before importing zone.js. + * import './zone-flags'; + * + * The flags allowed in zone-flags.ts are listed here. + * + * The following flags will work for all browsers. + * + * (window as any).__Zone_disable_requestAnimationFrame = true; // disable patch requestAnimationFrame + * (window as any).__Zone_disable_on_property = true; // disable patch onProperty such as onclick + * (window as any).__zone_symbol__UNPATCHED_EVENTS = ['scroll', 'mousemove']; // disable patch specified eventNames + * + * in IE/Edge developer tools, the addEventListener will also be wrapped by zone.js + * with the following flag, it will bypass `zone.js` patch for IE/Edge + * + * (window as any).__Zone_enable_cross_context_check = true; + * + */ + +/*************************************************************************************************** + * Zone JS is required by default for Angular itself. + */ +import 'zone.js'; // Included with Angular CLI. + + +/*************************************************************************************************** + * APPLICATION IMPORTS + */ diff --git a/src/styles.css b/src/styles.css new file mode 100644 index 0000000..4108399 --- /dev/null +++ b/src/styles.css @@ -0,0 +1,27 @@ +/* You can add global styles to this file, and also import other style files */ + +/*@import '@angular/material/prebuilt-themes/indigo-pink.css';*/ + +/*@use '~@angular/material' as mat;*/ + +/*@include mat.core();*/ + +/*$my-primary: mat.define-palette(mat.$deep-orange-palette, 600);*/ +/*$my-accent: mat.define-palette(mat.$pink-palette, A200, A100, A400);*/ + +/*$my-theme: mat.define-light-theme((*/ + /*color: (*/ + /*primary: $my-primary,*/ + /*accent: $my-accent*/ + /*)*/ + /*)*/ + /*);*/ + +/*@include mat.all-component-themes($my-theme);*/ +@import './custom-theme.scss'; + +html, body { height: 100%; } +body { + margin: 0; + font-family: 'Spartan', sans-serif; +} diff --git a/src/styles.scss b/src/styles.scss new file mode 100644 index 0000000..4619905 --- /dev/null +++ b/src/styles.scss @@ -0,0 +1 @@ +@import './custom-theme' diff --git a/src/test.ts b/src/test.ts new file mode 100644 index 0000000..b4dd603 --- /dev/null +++ b/src/test.ts @@ -0,0 +1,27 @@ +// This file is required by karma.conf.js and loads recursively all the .spec and framework files + +import 'zone.js/testing'; +import { getTestBed } from '@angular/core/testing'; +import { + BrowserDynamicTestingModule, + platformBrowserDynamicTesting +} from '@angular/platform-browser-dynamic/testing'; + +declare const require: { + context(path: string, deep?: boolean, filter?: RegExp): { + keys(): string[]; + (id: string): T; + }; +}; + +// First, initialize the Angular testing environment. +getTestBed().initTestEnvironment( + BrowserDynamicTestingModule, + platformBrowserDynamicTesting(), + { teardown: { destroyAfterEach: true }}, +); + +// Then we find all the tests. +const context = require.context('./', true, /\.spec\.ts$/); +// And load the modules. +context.keys().map(context); diff --git a/tsconfig.app.json b/tsconfig.app.json new file mode 100644 index 0000000..b120c1d --- /dev/null +++ b/tsconfig.app.json @@ -0,0 +1,15 @@ +/* To learn more about this file see: https://angular.io/config/tsconfig. */ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "outDir": "./out-tsc/app", + "types": ["node"] + }, + "files": [ + "src/main.ts", + "src/polyfills.ts" + ], + "include": [ + "src/**/*.d.ts" + ] +} diff --git a/tsconfig.json b/tsconfig.json new file mode 100644 index 0000000..6df8283 --- /dev/null +++ b/tsconfig.json @@ -0,0 +1,30 @@ +/* To learn more about this file see: https://angular.io/config/tsconfig. */ +{ + "compileOnSave": false, + "compilerOptions": { + "baseUrl": "./", + "outDir": "./dist/out-tsc", + "forceConsistentCasingInFileNames": true, + "strict": true, + "noImplicitReturns": true, + "noFallthroughCasesInSwitch": true, + "sourceMap": true, + "declaration": false, + "downlevelIteration": true, + "experimentalDecorators": true, + "moduleResolution": "node", + "importHelpers": true, + "target": "es2017", + "module": "es2020", + "lib": [ + "es2018", + "dom" + ] + }, + "angularCompilerOptions": { + "enableI18nLegacyMessageIdFormat": false, + "strictInjectionParameters": true, + "strictInputAccessModifiers": true, + "strictTemplates": true + } +} diff --git a/tsconfig.spec.json b/tsconfig.spec.json new file mode 100644 index 0000000..092345b --- /dev/null +++ b/tsconfig.spec.json @@ -0,0 +1,18 @@ +/* To learn more about this file see: https://angular.io/config/tsconfig. */ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "outDir": "./out-tsc/spec", + "types": [ + "jasmine" + ] + }, + "files": [ + "src/test.ts", + "src/polyfills.ts" + ], + "include": [ + "src/**/*.spec.ts", + "src/**/*.d.ts" + ] +}